@snf/access-qa-bot 3.3.11 → 3.3.13
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/access-qa-bot.js +3606 -3325
- package/dist/access-qa-bot.js.map +1 -1
- package/dist/access-qa-bot.standalone.js +280 -0
- package/dist/access-qa-bot.standalone.js.map +1 -0
- package/dist/access-qa-bot.umd.cjs +77 -61
- package/dist/access-qa-bot.umd.cjs.map +1 -1
- package/dist/index.d.ts +9 -4
- package/package.json +2 -2
|
@@ -1,48 +1,64 @@
|
|
|
1
|
-
(function(Pe,k){typeof exports=="object"&&typeof module<"u"?k(exports,require("react/jsx-runtime"),require("react"),require("react-dom/client"),require("react-dom/server")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom/client","react-dom/server"],k):(Pe=typeof globalThis<"u"?globalThis:Pe||self,k(Pe.AccessQABot={},Pe.jsxRuntime,Pe.React,Pe.ReactDOMClient,Pe.ReactDOMServer))})(this,function(Pe,k,h,wc,Fa){"use strict";function za(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const ce=za(h);function br(e,t){t===void 0&&(t={});var r=t.insertAt;if(e&&typeof document<"u"){var n=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}br('.rcb-chat-header-container{border-bottom:1px solid #ccc;color:#fff;display:flex;justify-content:space-between;max-height:55px;padding:12px}.rcb-chat-header{display:flex;flex-direction:row}.rcb-bot-avatar{background-size:cover;border-radius:50%;height:30px;margin-right:12px;width:30px}.rcb-message-prompt-container.visible{align-items:center;animation:rcb-animation-pop-in .3s ease-in-out;bottom:0;display:flex;justify-content:center;margin:auto;opacity:1;pointer-events:auto;position:sticky}.rcb-message-prompt-container.hidden{height:0;opacity:0;pointer-events:none;visibility:hidden}.rcb-message-prompt-text{background-color:#fff;border:.5px solid #adadad;border-radius:20px;color:#adadad;cursor:pointer;font-size:12px;padding:6px 12px;transition:color .3s ease,border-color .3s ease;z-index:9999}.rcb-message-prompt-container.hidden .rcb-message-prompt-text{padding:0}.rcb-user-message-container{display:flex;flex-direction:row;justify-content:right}.rcb-user-message{border-radius:22px;font-size:15px;height:fit-content;margin-right:16px;margin-top:8px;min-height:20px;overflow:auto;overflow-wrap:anywhere;padding:12px 16px;text-align:right;white-space:pre-wrap;width:fit-content}.rcb-user-message-offset{margin-right:50px}.rcb-user-message-entry{animation:rcb-animation-user-message-entry .3s ease-in backwards}.rcb-message-user-avatar{background-size:cover;border-radius:50%;height:40px;margin-left:-10px;margin-right:6px;margin-top:9px;width:40px}.rcb-bot-message-container{display:flex;flex-direction:row}.rcb-bot-message{border-radius:22px;font-size:15px;height:fit-content;margin-left:16px;margin-top:8px;min-height:20px;overflow:auto;overflow-wrap:anywhere;padding:12px 16px;text-align:left;white-space:pre-wrap;width:fit-content}.rcb-bot-message-offset{margin-left:50px}.rcb-bot-message-entry{animation:rcb-animation-bot-message-entry .3s ease-in backwards}.rcb-message-bot-avatar{background-size:cover;border-radius:50%;height:40px;margin-left:6px;margin-right:-10px;margin-top:9px;width:40px}.rcb-typing-indicator{align-items:center;display:flex}.rcb-dot{animation:rcb-animation-bot-typing 1s infinite;background-color:#ccc;border-radius:50%;height:8px;margin-right:4px;width:8px}.rcb-dot:nth-child(2){animation-delay:.2s}.rcb-dot:nth-child(3){animation-delay:.4s}.rcb-chat-body-container{height:100%;overflow-x:hidden;overflow-y:scroll;padding-bottom:16px;position:relative;touch-action:pan-y;width:100%}.rcb-chat-body-container::-webkit-scrollbar-track{background-color:#f1f1f1}.rcb-chat-body-container::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:4px}.rcb-chat-body-container::-webkit-scrollbar-thumb:hover{background-color:#cfcfcf}.rcb-chat-body-container::-webkit-scrollbar-corner{background-color:#f1f1f1}.rcb-checkbox-container{display:flex;flex-wrap:wrap;gap:10px;margin-left:16px;padding-top:12px}.rcb-checkbox-offset{margin-left:50px!important}.rcb-checkbox-row-container{align-items:center;animation:rcb-animations-checkboxes-entry .5s ease-out;background-color:#fff;border-radius:10px;border-style:solid;border-width:.5px;cursor:pointer;display:flex;gap:5px;max-height:32px;min-height:30px;overflow:hidden;width:80%}.rcb-checkbox-row-container:hover{box-shadow:0 0 5px #0003}.rcb-checkbox-row{align-items:center;cursor:pointer;display:inline-flex;margin-left:10px}.rcb-checkbox-mark{align-items:center;background-color:#f2f2f2;border:none;border-radius:50%;cursor:pointer;display:flex;height:20px;justify-content:center;margin-right:10px;transition:all .3s ease;width:20px}.rcb-checkbox-mark:hover{background-color:#c2c2c2}.rcb-checkbox-mark:before{content:"✓";transition:all .3s ease}.rcb-checkbox-label{font-size:14px}.rcb-checkbox-next-button{align-items:center;animation:rcb-animations-checkboxes-entry .5s ease-out;background-color:#fff;border-radius:10px;border-style:solid;border-width:.5px;cursor:pointer;display:inline-block;font-size:24px;max-height:32px;min-height:30px;text-align:center;width:80%}.rcb-checkbox-next-button:before{content:"→"}.rcb-checkbox-next-button:hover{box-shadow:0 0 5px #0003}.rcb-options-container{display:flex;flex-wrap:wrap;gap:10px;margin-left:16px;max-width:70%;padding-top:12px}.rcb-options-offset{margin-left:50px!important}.rcb-options{align-items:center;animation:rcb-animation-options-entry .5s ease-out;border-radius:20px;border-style:solid;border-width:.5px;cursor:pointer;display:inline-flex;font-size:14px;justify-content:center;overflow:hidden;padding:10px 20px;transition:background-color .3s ease}.rcb-options:hover{box-shadow:0 0 5px #0003}.rcb-line-break-container{align-items:center;display:flex;justify-content:center;max-height:45px;padding-bottom:5px;padding-top:10px}.rcb-line-break-text{color:#adadad;font-size:12px;padding:6px 12px}.rcb-spinner-container{align-items:center;display:flex;justify-content:center;max-height:45px;min-height:35px;padding-bottom:5px;padding-top:10px}.rcb-spinner{animation:rcb-animation-spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;height:22px;width:22px}.rcb-chat-input{align-items:center;background-color:#fff;border-top:1px solid #ccc;display:flex;padding:8px 16px}.rcb-chat-input::placeholder{color:#999}.rcb-chat-input-textarea{background-color:#fff;border:none;border-radius:4px;color:#000;flex:1;font-family:inherit;font-size:16px;height:auto;min-height:38px;outline:none;overflow-y:scroll;padding:8px;resize:none;touch-action:none}.rcb-chat-input-textarea::-webkit-scrollbar,.rcb-chat-input-textarea::-webkit-scrollbar-thumb{background-color:initial}.rcb-chat-input-textarea::-webkit-scrollbar-thumb:hover{background-color:initial}.rcb-chat-input-char-counter{font-size:14px;margin-left:8px;margin-top:3px}.rcb-chat-footer-container{align-items:flex-end;background-color:#f2f2f2;border-top:1px solid #ccc;color:#000;display:flex;font-size:12px;justify-content:space-between;max-height:55px;padding:12px 16px 8px 10px}.rcb-chat-footer,.rcb-toggle-button{display:flex;flex-direction:row}.rcb-toggle-button{border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 4px #0003;cursor:pointer;height:75px;position:fixed;right:20px;width:75px;z-index:9999}.rcb-toggle-button.rcb-button-hide{animation:rcb-animation-collapse .3s ease-in-out forwards;opacity:0;visibility:hidden}.rcb-toggle-button.rcb-button-show{animation:rcb-animation-expand .3s ease-in-out forwards;opacity:1;visibility:visible}.rcb-toggle-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:inherit;height:100%;margin:auto;width:100%}.rcb-badge,.rcb-toggle-icon{align-items:center;display:flex;justify-content:center}.rcb-badge{background-color:red;border-radius:50%;color:#fff;height:25px;position:absolute;right:-6px;top:-6px;width:25px}.rcb-chat-tooltip{border-radius:20px;box-shadow:0 2px 6px #0003;cursor:pointer;font-size:20px;padding:16px;position:fixed;transition:transform .3s ease;white-space:nowrap;z-index:9999}.rcb-chat-tooltip-tail{border-style:solid;border-width:10px 0 10px 10px;content:"";margin-top:-10px;position:absolute;right:-10px;top:50%}.rcb-chat-tooltip.rcb-tooltip-hide{animation:rcb-animation-tooltip-out .5s ease-in-out;opacity:0;visibility:hidden}.rcb-chat-tooltip.rcb-tooltip-show{animation:rcb-animation-tooltip-in .5s ease-in-out;opacity:1;visibility:visible}.rcb-toast-prompt{animation:rcb-animation-pop-in .3s ease-in-out;background-color:#fff;border:.5px solid #7a7a7a;border-radius:5px;color:#7a7a7a;cursor:pointer;font-size:12px;margin-top:6px;padding:6px 12px;text-align:center;transition:color .3s ease,border-color .3s ease;width:100%;z-index:9999}.rcb-toast-prompt-container{align-items:center;animation:popIn .3s ease-in-out;bottom:0;display:flex;flex-direction:column;justify-content:flex-end;left:50%;margin:200 auto auto;opacity:1;pointer-events:auto;position:absolute;transform:translate(-50%)}.rcb-media-display-image-container,.rcb-media-display-video-container{border-radius:22px;margin-right:16px;margin-top:8px;padding:16px;width:fit-content}.rcb-media-display-offset{margin-right:50px!important}.rcb-media-display-image{border-radius:22px;height:auto;object-fit:cover;width:100%}.rcb-media-display-video{background-color:#000;border-radius:22px;height:auto;width:100%}.rcb-media-display-audio{border-radius:22px;height:auto;margin-right:16px;margin-top:8px;width:100%}.rcb-media-entry{animation:rcb-animation-user-message-entry .3s ease-in backwards}.rcb-attach-button-disabled,.rcb-attach-button-enabled{background-size:cover;border-radius:6px;display:inline-block;height:30px;position:relative;text-align:center;width:30px}.rcb-attach-button-disabled input[type=file],.rcb-attach-button-enabled input[type=file]{display:none;height:100%;position:absolute;width:100%}.rcb-attach-button-enabled{cursor:pointer}.rcb-attach-button-disabled{opacity:.5}.rcb-attach-button-enabled:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-attach-button-enabled:hover:after{height:130%;opacity:1;width:130%}.rcb-attach-icon-disabled,.rcb-attach-icon-enabled{background-repeat:no-repeat;background-size:cover;display:inline-block;height:24px;margin-top:2px;transition:background-image .3s ease;width:24px}.rcb-attach-icon-enabled{cursor:pointer}.rcb-emoji-button-disabled,.rcb-emoji-button-enabled{background-size:cover;border-radius:6px;cursor:pointer;display:inline-block;height:30px;position:relative;text-align:center;width:30px}.rcb-emoji-icon-disabled,.rcb-emoji-icon-enabled{background-repeat:no-repeat;background-size:cover;display:inline-block;font-size:20px;height:24px;margin-top:2px;position:relative;width:24px}.rcb-emoji-icon-enabled{cursor:pointer}.rcb-emoji-icon-disabled{opacity:.5}.rcb-emoji-button-enabled:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-emoji-button-enabled:hover:after{height:130%;opacity:1;width:130%}.rcb-emoji-button-popup{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 4px #0003;max-height:200px;overflow-y:auto;padding:8px;position:absolute;transform:translateY(calc(-100% - 30px));width:158px}.rcb-emoji{cursor:pointer;font-size:24px;padding:3px;transition:transform .2s ease-in-out}.rcb-emoji:hover{transform:scale(1.2)}.rcb-audio-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-audio-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-audio-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-close-chat-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-close-chat-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-close-chat-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-notification-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-notification-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-notification-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-voice-button-disabled,.rcb-voice-button-enabled{align-items:center;background-color:#fff;border-radius:4px;box-shadow:0 0 3px #0000004d;cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin-left:8px;text-transform:uppercase;transition:all .3s ease;width:32px}.rcb-voice-button-enabled{border:1px solid red;box-shadow:0 0 3px #ff000080}.rcb-voice-button-enabled:hover{border:1px solid #3d0000}.rcb-voice-button-disabled{border:1px;border-color:#0003;border-style:solid}.rcb-voice-button-disabled:hover{box-shadow:0 0 3px #8a0000}.rcb-voice-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;background-size:contain;height:60%;object-fit:cover;width:60%}.rcb-voice-icon.on{animation:rcb-animation-ping 1s infinite}.rcb-send-button{border:none;border-radius:4px;box-shadow:0 0 3px #0000004d;cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin-left:8px;text-transform:uppercase;transition:background-color .3s ease;width:51px}.rcb-send-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;background-size:contain;height:50%;object-fit:cover;transform:translateY(20%);width:50%}.rcb-view-history-container{align-items:center;display:flex;justify-content:center;max-height:45px;min-height:35px;padding-bottom:5px;padding-top:10px}.rcb-view-history-button{align-items:center;background-color:#fff;border:.5px solid #adadad;border-radius:20px;color:#adadad;cursor:pointer;display:inline-flex;font-size:12px;justify-content:center;max-width:60%;padding:6px 12px;transition:color .3s ease,border-color .3s ease}.rcb-view-history-button>p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rcb-chatbot-global{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;z-index:9999}.rcb-chat-window{background-color:#fff;border-radius:10px;bottom:20px;box-shadow:0 2px 4px #0003;display:flex;flex-direction:column;height:550px;overflow:hidden;position:fixed;right:20px;transition:all .3s ease;width:375px}.rcb-window-embedded .rcb-chat-window{bottom:auto;opacity:1;position:relative;right:auto;visibility:visible}.rcb-window-open .rcb-chat-window{animation:rcb-animation-expand .3s ease-in-out forwards;opacity:1;visibility:visible}.rcb-window-close .rcb-chat-window{animation:rcb-animation-collapse .3s ease-in-out forwards;opacity:0;visibility:hidden}@keyframes rcb-animation-expand{0%{opacity:0;transform:translate(100%,100%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-collapse{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%,100%) scale(0)}}@keyframes rcb-animation-ping{0%{filter:brightness(100%);opacity:1}50%{filter:brightness(50%);opacity:.8}}@keyframes rcb-animation-bot-message-entry{0%{opacity:0;transform:translate(-100%,50%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-user-message-entry{0%{opacity:0;transform:translate(100%,50%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-bot-typing{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}@keyframes rcb-animation-pop-in{0%{opacity:0;transform:scale(.8)}70%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}@keyframes rcb-animations-checkboxes-entry{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes rcb-animation-options-entry{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes rcb-animation-tooltip-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes rcb-animation-tooltip-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}@keyframes rcb-animation-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}',{insertAt:"top"});const ue={AUDIO_BUTTON:"audio-button",NOTIFICATION_BUTTON:"notification-button",CLOSE_CHAT_BUTTON:"close-chat-button",SEND_MESSAGE_BUTTON:"send-button",VOICE_MESSAGE_BUTTON:"voice-button",FILE_ATTACHMENT_BUTTON:"file-attachment-button",EMOJI_PICKER_BUTTON:"emoji-button"},vr="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xml:space='preserve'%20viewBox='0%200%201000%201000'%3e%3crect%20width='100%25'%20height='100%25'%20fill='%23fff'/%3e%3cg%3e%3crect%20width='45'%20height='30'%20x='-22.5'%20y='-15'%20rx='1.5'%20ry='1.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-99%20362)%20scale(3.4003)'/%3e%3cpath%20d='M0%2075q14%200%2014%2017%200%2016-14%2016Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(180%20106%20386)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='4'%20x='-12.5'%20y='-2'%20rx='.2'%20ry='.2'%20style='stroke:%2346648c;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-46%20282)%20scale(3.4003)'/%3e%3cpath%20d='M19%2065h4l5%204v1H14v-1Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='2'%20x='-12.5'%20y='-1'%20rx='.1'%20ry='.1'%20style='stroke:%2398b0ca;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-3%20240)%20scale(3.4003)'/%3e%3ccircle%20r='7.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(236%20175)%20scale(3.4003)'/%3e%3crect%20width='45'%20height='30'%20x='-22.5'%20y='-15'%20rx='1.5'%20ry='1.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20139%20600)%20scale(3.4003)'/%3e%3cpath%20d='M184%2075q14%200%2014%2017%200%2016-14%2016Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='4'%20x='-12.5'%20y='-2'%20rx='.2'%20ry='.2'%20style='stroke:%2346648c;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20219%20548)%20scale(3.4003)'/%3e%3cpath%20d='M175%2065h4l5%204v1h-14v-1Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='2'%20x='-12.5'%20y='-1'%20rx='.1'%20ry='.1'%20style='stroke:%2398b0ca;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20262%20505)%20scale(3.4003)'/%3e%3ccircle%20r='7.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(767%20175)%20scale(3.4003)'/%3e%3crect%20width='116.7'%20height='70'%20x='-58.4'%20y='-35'%20rx='31.5'%20ry='31.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2371c9fc;fill-rule:nonzero;opacity:1'%20transform='translate(502%20877)%20scale(3.4003)'/%3e%3crect%20width='60'%20height='20'%20x='-30'%20y='-10'%20rx='3'%20ry='3'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='translate(502%20728)%20scale(3.4003)'/%3e%3ccircle%20r='75'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2371c9fc;fill-rule:nonzero;opacity:1'%20transform='translate(502%20473)%20scale(3.4003)'/%3e%3crect%20width='129.4'%20height='82.3'%20x='-64.7'%20y='-41.1'%20rx='37'%20ry='37'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23fff;fill-rule:nonzero;opacity:1'%20transform='translate(502%20464)%20scale(3.4003)'/%3e%3crect%20width='108'%20height='68.6'%20x='-54'%20y='-34.3'%20rx='30.9'%20ry='30.9'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23162334;fill-rule:nonzero;opacity:1'%20transform='translate(502%20464)%20scale(3.4003)'/%3e%3ccircle%20r='19.4'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(415%20464)%20scale(3.4003)'/%3e%3ccircle%20r='19.4'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(591%20464)%20scale(3.4003)'/%3e%3crect%20width='96'%20height='53.2'%20x='-48'%20y='-26.6'%20rx='23.9'%20ry='23.9'%20style='stroke:%23162334;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23162334;fill-rule:nonzero;opacity:1'%20transform='translate(503%20875)%20scale(3.4003)'/%3e%3cpath%20stroke-linecap='round'%20d='m68%20215%207-15M81%20222l-7-22M81%20222l7-14M101%20208H87M114%20219l-7-24M113%20219l13-22M131%20214l-5-17M148%20214h-18M69%20214H51M100%20209l7-15'%20style='stroke:%23a478fc;stroke-width:3;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:10;is-custom-font:none;font-file-url:none;fill:none;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3c/g%3e%3c/svg%3e",wr=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 0 637 637",ref:t,...e},ce.createElement("path",{d:"m478 113-13 2-4 1h4l14-2c10-2 35-2 42-1l6 3 3 1c3 0-4-3-8-5-7-1-34-1-44 1m56 6 8 6c7 5 20 17 20 19s7 12 8 12l-3-6-4-6c0-3-15-17-25-24-5-3-8-4-4-1m-198 16-9 1a512 512 0 0 1 9-1m-180 30a412 412 0 0 0-23 4 167 167 0 0 0-32 8 439 439 0 0 1 46-9 304 304 0 0 1 11-2l6-1h-8m369 8 4 3-7-6c-1 0 0 2 3 3m-439 9c-7 3-18 13-18 15l6-5c5-5 9-8 14-10l6-4-8 4m442 12-10 11-7 6 7-6c7-5 14-14 13-16l-3 5M65 205l-1 11c0 9 0 10 4 17 5 10 7 12 22 11 10 0 15 0 38-5l5-1-6 1-16 2-21 2c-13 1-16-1-21-10-3-5-4-6-4-15l1-12c1-4 1-5-1-1m335 1c3 0 3 1 3 3l-2 6c-2 5-35 39-76 80-53 51-120 117-138 137-21 24-22 25-22 27 0 3 6 9 9 9 4 0 14-8 38-27a5073 5073 0 0 1 15-16 1421 1421 0 0 0-17 15l-31 25-6 2-4-3c-3-3-3-4-2-6 3-8 79-85 160-163 57-57 79-80 79-86 0-2-3-4-7-4-2 0-2 0 1 1m165 18c-9 17-25 32-57 53l-10 8 16-11 12-8c15-10 27-22 39-39 5-7 6-8 4-8l-4 5m-221 2a199 199 0 0 0-19 10 183 183 0 0 1 27-12c0-1-1-1-8 2m-34 16c-3 3-2 3 2 0l1-2-3 2m151 3-1 2 2-2c3-3 2-3-1 0m-16 12-11 10a281 281 0 0 0 11-10m-24 18-7 5-7 5-42 31c-10 7-24 19-22 19l7-6 16-12a343 343 0 0 0 35-25 573 573 0 0 0 20-17m-187 0-2 2 4-2 3-2-5 2m-14 6-3 2 4-1 4-3-5 2m-7 3-8 4-18 8 18-7 7-3 3-1c1-2 0-2-2-1m254 24a2672 2672 0 0 1-71 54 601 601 0 0 0 39-29 1352 1352 0 0 1 32-25m-291-8-2 2 4-2 3-2-5 2m-13 5-2 2h3c5-3 4-4-1-2m-19 9-7 3-13 6c-10 5-13 7-14 10-3 4-2 5 1 0 2-3 5-5 14-9l13-6 12-6-6 2m178 36c-17 12-21 16-21 17a390 390 0 0 1 20-17m-206 34 1 4 1 3 1 5 2 8 1 5v-6l-1-8-2-5-1-4-1-2c-1-2-1-2-1 0m222 23-9 7a683 683 0 0 0-56 44 261 261 0 0 0-26 20 1345 1345 0 0 0-46 34c-6 3-7 3-19 3-11 0-12 0-18-3-8-4-10-8-17-20l-5-10 4 10c5 10 12 18 19 22 4 2 6 2 17 2 13 0 14 0 21-3l26-19 42-33a2183 2183 0 0 0 43-34 643 643 0 0 1 24-20",fill:"#fff",fillRule:"evenodd"}),ce.createElement("path",{d:"M478 114a620 620 0 0 1-39 6l-21 3a5481 5481 0 0 0-19 3 870 870 0 0 1-54 8l-1 1-6 1-12 2-13 2a992 992 0 0 0-76 12 400 400 0 0 1-45 8l-6 1-5 1h-3l-3 1-2 1-26 4-13 2-17 3c-23 5-33 9-43 19-7 8-9 13-9 27 0 8 1 9 4 14 5 9 8 11 21 10l21-2a1133 1133 0 0 1 23-4 659 659 0 0 0 74-14l3-1h3l3-1h3l2-1 2-1h3l2-1h2l24-5 38-7a2100 2100 0 0 1 93-18l3-1 10-1a2082 2082 0 0 1 120-17l2 1c2 0 8 5 8 7l1 2 1 6c0 4 0 6-3 10-2 4-16 16-18 16l-7 5-10 8a1070 1070 0 0 0-11 7 113 113 0 0 1-20 14l-2 2-3 2-2 2h-1a154 154 0 0 1-28 21l-5 4-5 4a573 573 0 0 1-50 37 175 175 0 0 0-24 18l-1 2-2 1-2 1-2 1-1 1-12 10a396 396 0 0 0-32 25l-8 6-6 5-9 7a326 326 0 0 1-25 20l-13 12a5073 5073 0 0 0-17 15c-24 20-34 27-39 27-2 0-8-6-8-9 0-2 1-3 22-27 18-20 85-86 138-137 41-41 74-75 76-80l2-6c0-2 0-3-2-3l-7 1a233 233 0 0 1-26 9l-1 1-1 1h-1l-1 1h-2l-3 2-1 1h-2l-3 2h-1l-5 2-22 10-9 4-4 2-5 2-10 4-2 1-2 1-2 1-13 6a334 334 0 0 1-38 17 75 75 0 0 0-14 6l-5 2-4 1-2 1-3 2-7 3-16 6a247 247 0 0 0-32 14l-1 1h-2l-1 1h-2l-1 1-12 6a103 103 0 0 0-27 15l-2 5-1 1v11l1 5 1 5 1 4c0 3 0 4 2 4v3l1 3 1 2 2 10 1 4 1 5 2 10 2 8 1 4 1 4c3 3 9 25 11 38l1 7v2l1 4v1l1 1v2l1 2 1 3v1l5 10c7 13 9 16 17 20 6 3 7 3 18 3 12 0 13 0 19-3 8-4 11-6 26-18a1345 1345 0 0 1 85-67 683 683 0 0 1 50-39l12-9a513 513 0 0 1 44-33 201 201 0 0 0 22-17 2270 2270 0 0 0 73-54 158 158 0 0 0 58-59c2 0 3-9 4-27l-1-19-1-4-1-6-1-3-4-6-4-6c0-2-6-8-13-14a77 77 0 0 0-28-18c-6-1-34-1-43 1"}))),xr=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M765-321q0 117-84 196-83 80-200 80-118 0-200-80t-83-196v-392q0-85 61-144 61-58 146-58 86 0 147 58 61 59 61 144v374q0 54-39 92-39 37-93 37-55 0-93-37-38-38-38-92v-372h110v372q0 9 6 14t15 5q8 0 15-5t7-14v-374q0-39-29-66t-68-27q-40 0-69 27t-29 66v392q0 71 51 119t122 48q71 0 122-48t51-119v-426h111v426Z"}))),Ra=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M125-165v-113h77v-273q0-93 55-167 56-75 146-100v-19q0-32 22-55 23-23 55-23t55 23q22 23 22 55v19q90 25 146 99 56 73 56 168v273h77v113H125ZM480-32q-38 0-66-27-27-27-27-66h186q0 39-27 66t-66 27Z"}))),ja=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M137-190v-113h78v-253q0-41 11-79 11-39 35-71l-9 150h10L17-802l74-74L873-92l-74 74-175-172H137Zm609-149L319-769q20-15 41-25t44-16v-28q0-32 22-54t54-22q32 0 55 22t22 54v28q85 23 137 94t52 160v217ZM481-47q-38 0-65-27t-27-65h184q0 38-27 65t-65 27Z"}))),qa=h.forwardRef((e,t)=>ce.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",ref:t,...e},ce.createElement("g",{strokeLinecap:"round",strokeWidth:10},ce.createElement("path",{d:"m19 19 61 61M80 19 19 80"})))),Ga=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M94-136v-255l351-93-351-92v-253l816 346L94-136Z"}))),Ya=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M480-372q-61 0-105-43-43-43-43-105v-240q0-61 43-105 43-43 105-43 61 0 105 43 43 44 43 105v240q0 62-43 105t-105 43ZM425-76v-122q-121-16-197-108t-76-214h109q0 91 64 154t155 63q91 0 155-63t64-154h109q0 122-77 214T534-198v122H425Z"}))),Wa=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"m763-343-80-79q8-20 13-44 5-23 5-54h109q0 49-11 95t-36 82ZM625-482 336-770v-2q3-56 45-96t101-40q62 0 105 43t43 105v249l-1 17q-1 7-4 12ZM427-76v-122q-120-16-196-108-77-92-77-214h109q0 91 64 154t155 63q43 0 80-14 37-15 67-41l78 79q-35 32-78 53t-93 28v122H427Zm362 27L41-796l75-75 748 748-75 74Z"}))),Er=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M625-511q29 0 50-21t20-50q0-29-20-50-21-20-50-20t-50 20-20 50q0 29 20 50 21 21 50 21Zm-290 0q29 0 50-21t20-49q0-30-20-50t-50-21q-29 0-50 20-20 21-20 50 0 30 20 50 21 21 50 21Zm145 268q75 0 137-43t85-115H258q24 72 85 115 62 43 137 43Zm0 198q-90 0-170-34-79-34-138-93T79-310q-34-80-34-170t34-170q34-79 93-138t138-93q80-34 170-34t170 34q79 34 138 93t93 138q34 80 34 170t-34 170q-34 79-93 138T650-79q-80 34-170 34Zm0-435Zm0 322q134 0 228-94t94-228q0-134-94-228t-228-94q-134 0-228 94t-94 228q0 134 94 228t228 94Z"}))),Va=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M553-64v-108q107-27 173-113 67-87 67-197 0-109-67-195T553-789v-108q152 26 249 144 97 117 97 271 0 155-97 273T553-64ZM61-335v-290h176l236-237v764L237-335H61Zm492 28v-346q51 23 82 70t31 103-31 103q-31 47-82 70Z"}))),Xa=h.forwardRef((e,t)=>ce.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},ce.createElement("path",{d:"M807-15 700-123q-33 21-71 37-38 15-80 22v-108q20-4 38-12l35-17-153-154v257L234-335H57v-290h144L10-818l74-75L882-90l-75 75Zm37-264-80-79q13-30 19-60 7-31 7-64 0-109-68-195-67-86-173-112v-108q152 26 249 144 98 117 98 271 0 55-14 107-13 51-38 96ZM661-462 549-575v-78q51 23 83 70 31 47 31 103l-1 9-1 9ZM469-655 366-759l103-103v207Z"}))),kr={general:{primaryColor:"#42b0c5",secondaryColor:"#491d8d",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif",showHeader:!0,showFooter:!0,showInputRow:!0,actionDisabledIcon:"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='32'%20viewBox='0%200%2042%2042'%3e%3cpath%20style='fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:%23b00000;stroke-opacity:1;stroke-miterlimit:4'%20d='M17%209a8%208%200%200%201-8%208%208%208%200%200%201-8-8%208%208%200%200%201%208-8%208%208%200%200%201%208%208Zm0%200'%20transform='rotate(.086)%20scale(1.77778)'/%3e%3cpath%20style='fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:%23b00000;stroke-opacity:1;stroke-miterlimit:10'%20d='M14.66%2014.66%203.34%203.34'%20transform='rotate(.086)%20scale(1.77778)'/%3e%3c/svg%3e",embedded:!1,flowStartTrigger:"ON_LOAD"},tooltip:{mode:"CLOSE",text:"Talk to me! 😊"},chatButton:{icon:wr},header:{title:k.jsx("div",{style:{cursor:"pointer",margin:0,fontSize:20,fontWeight:"bold"},onClick:()=>window.open("https://github.com/tjtanjin/","_blank","noopener,noreferrer"),children:"Tan Jin"}),showAvatar:!0,avatar:vr,buttons:[ue.NOTIFICATION_BUTTON,ue.AUDIO_BUTTON,ue.CLOSE_CHAT_BUTTON],closeChatIcon:qa},notification:{disabled:!1,defaultToggledOn:!0,volume:.2,icon:Ra,iconDisabled:ja,sound:"data:audio/wav;base64,UklGRmaIAABXQVZFZm10IBAAAAABAAIAQB8AAAB9AAAEABAATElTVBoAAABJTkZPSVNGVA4AAABMYXZmNjAuMTYuMTAwAGRhdGEgiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////AAAAAAAA//////7/////////AAABAAAAAgABAAEAAQAAAAIAAQABAP//AAD+////AAD+//7////+////AAD//wAA/v8AAAAA/v8AAP//AAAAAAAAAgD////////+////AAABAAEAAgD/////AQABAAAA//8CAP//AAAAAAAA/v8AAAAA//8AAAEA//8EAAAAAAAAAAAA//8BAP//AQABAAEA/////wEA/v///wAAAAACAAAAAAABAAAA//8AAP//AAACAP//////////AAAAAAEAAAAAAAEA//8AAAEAAQADAAIAAgAAAAAA/v///wEAAAAAAAEAAAAAAAEA//8AAAEAAQD//wAA//8AAAEAAAABAAEAAAABAP//AAD//wAAAgAAAP//AQD/////AAAAAP7/AgAAAAIAAAAAAAAAAAABAAAAAQABAP//AAABAP///v8AAP////8AAP//AAD//wAA//8BAP//AAD///7///8BAP7///8AAAIAAgABAAEA/v8AAP//AQADAAEAAAACAAEA/////////v///wEA/v////7/AAD+////AAAAAAAAAgAAAAAAAAD//wEAAAAAAAAAAQABAAIA/v8AAAAA//8AAAEAAAAAAP//AgD//wEA/////wAAAQACAAAAAAAAAP//AQD/////AQAAAAEA/v8AAAEAAQABAAEA///+////AQD//wEAAgD+//7/AAAAAAAAAQAAAAAAAQAAAAAAAAAAAP//AAD//wEAAQD//wAAAQABAP7///8AAP7/AAABAP7/AQABAAEAAAABAAEAAAD+/wIAAAABAAAAAQD/////AQACAP////8AAP//AQD//wEA/v8CAAEAAAAAAAAAAQAAAAIAAQAAAAEAAgD//wEAAAAAAP7///8BAP//AgAAAP///v8CAAAAAgD///////////7/AAACAAEAAgD//wAAAAABAP//AwAAAAMA//8AAAAAAQD+/wAAAAD//wAAAQD//wEA//8BAP7/AAABAAAA//8BAAAA//8AAP//AQADAP3////+////AgD+/////v8BAAEAAQACAAAAAAAAAAAA//8AAP//AAD+/wEA/v8AAP7/AAD//wAAAQACAAAAAQAAAP//AQAAAAAAAAABAAAAAAD+//////8AAAAAAAD//wAAAAABAAEA//8AAAEA//8AAP//AgD+/wAA///+/wAA/v///wAAAQABAAAAAQD//wAA//8AAAEA//8BAAAAAgABAP//AAACAAIAAQABAP//AAAAAAAA//8BAAIAAAABAAAA//8CAAEA/v//////AAAAAAEA////////AQAAAP//AAD//wAAAAAAAP3/AAAAAAEAAAACAAAAAAAAAP//AAD//wAAAAAAAAAAAAAAAP///v///wAAAAABAAAAAAD//wEAAAABAAEAAQD//wAAAAACAAAAAQD+/wAA//8BAAEAAAD+/wAA/////wAAAAABAAAAAAD//////v8AAAAA//8AAAAAAAAAAAIAAAABAAEAAAABAP7/AAD9//////////7///8BAP//AAD///3/AQABAP//AAD//wAAAAABAAAA//8AAP//AAD/////AQABAAEA//8AAAAA//8BAAMA//8AAAAA//8AAP7/AAD//wAAAAAAAP7/AQAAAAAA/v8CAP//AAABAAIAAQABAAAA//8BAAEAAQD///7/AQD//wAAAQABAP//AAD//wEAAAAAAAAAAQAAAAIA//8AAP////8AAP//AQD//////v///wEA/v8AAAIAAgACAAEAAAAAAAEAAAAAAAAAAAAAAAAAAQD//wAA/////wAAAQACAP////8AAAAAAAD//wAAAQD+/wEA//8AAAEAAwD//wEAAQAAAAAAAAABAP////8AAAAAAQAAAAAAAAAAAAEAAQAAAP////////7/AQABAAEAAQD///////8BAAAA//8AAAAAAgABAAEA/v8BAP7///8BAP3/AQABAAIAAAD//wEAAAAAAP//AAABAAIA//8CAAAAAQAAAAEA//8BAAAA/////wAAAAD//wEAAQD//wAAAAAAAP//AAAAAAAAAQABAAAAAQAAAP//AQD//////v8AAAEAAAAAAAAA//8AAAAAAAACAAEAAQAAAP//AAABAAEA/////wAAAgABAAAAAAAAAAEAAAABAP//AQABAP7////+/wEAAAAAAP//AAABAAAAAAABAAEAAAAAAAAA//8BAP///f/+/wEAAQD///7///8AAAAAAQAAAP////8AAAAAAAABAAAAAQD/////AAD//wEA//8AAAIA//8CAAAA//8AAAAAAAD+/wEAAAD+/wAA/////wAA////////AAAAAAAA//8BAAAAAAD//wAAAAD//wEA//8AAP//AQD+/wAAAAAAAP7/AAD+/wEAAQABAP//AAABAAEAAQD//wAA/////wEA//8AAAAAAgAAAAAA//8BAAAAAgAAAAAAAAAAAP7/AQD//wAAAAD+/wAAAAADAAIA/////wAAAQD//wIA//8BAAEA/v8AAAIAAAAAAP3///8AAAAAAAAAAAAAAAABAP///////wAA//8AAAEAAQABAAEAAQABAAAAAQAAAAAAAQABAP7/AQD//wAAAQABAAEA//8BAAAAAgAAAAEAAAABAP//AAD/////AAD//wIA/////wIAAAD///7/AAAAAAAAAAACAP//AAABAP////8AAAAAAAABAAAAAgAAAAAAAQD+/wEA/////wAA/////wAAAAAAAAAA/v//////AAAAAP//AAABAAAAAQAAAAIAAAACAAAA//8AAAAA//8AAP7/AAAAAP//AAACAP//AQABAP//AQABAAAA/////////v8AAP//AQAAAAAA///+/wAAAQD+/wEAAQAAAAEA/////wAAAQD//wAA//8AAAAA/v8BAAEA//8AAP7//v8BAAAAAAAAAAEA//8AAAEA/////wAAAAD//////////wEAAAABAAEA//8CAAEA/f8AAAAA//8BAAAABAABAAEAAQAAAAAAAAAAAP7///8AAAAA/v8BAAAA//8AAAIA//8AAP////8BAP//AAAAAAAAAAD/////AQD///7/////////AQD8////AgABAAIA////////AAD//wAAAAABAAAAAAAAAAEAAgAAAP//AQD//wAAAAAAAP/////+/wAAAAABAAAAAwABAP///////wEAAAADAP//AQACAAAA//8CAAEAAAAAAP///////wIAAAAAAAAAAQAAAAAAAgD//wEAAAABAAAA/v8AAAAAAAAAAAAAAAAAAAEA/v8AAP//AQD//wAA//////7///8AAAAAAAAAAP7/AQD//wAA//8AAAEAAAABAAEAAQD/////AAD//wEAAAD/////AQAAAAEAAAD//wEAAAD/////AgD//wAAAQD//////////wAAAAD//wAAAAABAAAAAAD//wAAAQD///7/AQD//wEAAAD/////AAD//wEA//8AAAEA//8CAAAAAQD//wEAAgAAAAEAAwAAAAAA/v8BAAEAAgD//wEAAAAAAAAAAAD//wEA//8AAAAAAQACAP///////wAAAQABAAEAAAAAAAEAAQD+/wEA/f////////8AAAAA//8AAAEA//8BAAAA/v///wEAAAAAAAEA/////wAAAAAAAP//AAAAAAIAAAABAAAA/////wAAAAD//wAA/v8AAAMAAQD+/wEAAAABAAEA//8BAP//AgAAAAAAAAD//wAA/////wEA/v8CAP3/AAACAP3/AQABAAAAAQACAAEA/v8AAAAA//8BAAAAAgAAAAAAAgACAAEA/v/9/wAAAQABAP7///8AAP//AgD+/////v8CAP////8BAP//AQACAAEAAQABAP//AAD///7/AAABAAEAAgD//wEA//8CAAEAAQABAAEAAAABAAAA/v8AAAEA/v8AAP//AAABAP//AQAAAAEAAgAAAAAA/v///wEAAQAAAAIAAAD/////AgAAAAEA/v8AAP7/AQAAAAAAAQAAAAEAAAACAAEA//8BAP////8AAAIAAAAAAP//AAAAAAIAAAAAAAAAAwABAP///v8BAAAAAAAAAP3/AAABAAEA/v////////////3//v8AAAAAAQABAAIAAAD+/////v8AAAAAAQABAAEAAQAAAP//AAAAAP//AQAAAP//AAABAAAAAAAAAAAA////////AAAAAP//AQD/////AAABAAEA//8CAP7///8AAP7//v8BAAEAAAD+/////////wEAAAAAAAAAAgD//wAAAQAAAP7/AQABAP//AQAAAAAAAAD/////AAACAP////8BAAAAAAD//wAA//8AAAEAAQABAAAAAAABAAAAAQD+/wEA/v8AAAEAAQD/////AAD//wAAAQABAP7//v//////AAACAAAAAAAAAAAAAAACAAAAAQAAAAAA//8BAP//AQD//wAA///+/wIAAQD//wAAAAD//wAA/v8AAP3///8AAAAAAAAAAAAA/f8AAAAA//8CAP7/AAD///7/AAAAAAAAAAD//wEAAAAAAAEAAAAAAAAA//8BAP////8BAP7///8CAAEA//8BAP3///////////8BAAAAAAAAAAEAAgD+//////8BAAMAAQADAAEAAAACAAAAAQD/////AAABAAMAAQAAAP//AQD//wAA//8AAAAA//8CAP7//////wAAAAAAAAIA/v8AAP//AAACAP//AwD//wAA//8AAP//AwD//wEAAQABAAEAAQACAAEAAAD//wAA//8AAAIAAAAAAP///////wAAAQD//wIA//8BAP7/AAD///////8AAAAAAAAAAAEAAAD//wAAAQD//wEA//8BAAAAAAD/////AgABAAIAAAABAAAAAAAAAP//AAAAAAAA//8AAAAAAAD/////AQAAAAAAAQD//wAA///+////AAAAAAEAAgABAAEAAAAAAP//AQAAAAAAAQD+/wAAAAABAAEAAAD/////AQABAP7///8AAAIAAAACAAAA//8AAP//AgACAAAA///+/wAAAAABAAAAAQAAAAEA/v8BAAEA//8CAP//AQD+/////v8AAAAAAAACAP//AAD+/wIA/v8BAAAAAAD/////AAAAAP7///8AAP7//////wEAAAABAAAAAAD//wAAAAAAAAAAAgACAAAAAAABAAAA/f8AAP7/AgAAAAEA//8BAAAAAAD///7/AQD//wAAAAAAAAEAAAAAAAEAAAAAAAAAAQAAAAAA//8AAAAAAAABAP///////wAAAgABAAEA//8AAP//AAACAP//AQABAAEA//8BAAAAAAABAAAA//8AAAEAAAAAAAIA/v8BAP//AQD//wEAAAABAAEAAQACAAEAAAAAAAEAAAABAAAAAAD/////AAABAAEA//8AAAAAAQABAP//AAAAAP//AAD/////AQD//wAAAAABAAEA//8BAAAA//8AAP///f/+/wAA/////wAAAQAAAAIAAAAAAAAAAAD+/wEA/f8CAAAA//8AAAEAAgAAAAMAAAABAAAAAAAAAP//AQAAAAAAAQABAAAAAQAAAP//AAAAAAAA//8AAAAAAAABAAAAAQAAAAAAAAABAAIAAAAAAP7/AQD//wAAAAD+////AAAAAAAAAAABAAAA/////wAA//8AAAAAAAD/////AgD//wAA//8CAP//AQACAAEA/f////////8BAAIAAQABAP//AAD//wAA///+////AAD+/wAAAQD/////AAAAAAAA/////wAAAAABAAAAAQAAAAAA//8AAAIAAAABAP//AQABAAEA//8AAAAAAAADAAEAAAABAP//AgD//wMA//8AAAAAAAD//wAAAAD9/wEA///+/wAA//8BAAEA//8BAAAA//8AAP///v8BAP///////////v8BAAAAAQABAAAAAAAAAAAA//8AAP7/AQAAAAAAAAAAAP7/AQAAAAAAAgABAAEAAAABAAEAAAAAAAAAAAD+/wAAAAD//wEAAAAAAAAAAAAAAP//AgABAAAAAAABAAEAAAD/////AAAAAP//AAABAP////8BAAAAAQABAP7//v/+////AQAAAAAAAQAAAAEAAgAAAAAAAQAAAAEAAAD+/////v8BAP//AAABAP//AQABAAAAAAD//wAA//8CAP//AAAAAAEAAAABAAAAAAAAAP//AAD+////AwAAAAAAAQD//wEAAAACAAEAAAADAAAAAAD/////AAAAAAEAAAABAAAA//8AAAEA//8BAP///v8AAP//AAD//wAAAQABAP//AQAAAAAA/////wEAAQAAAP////8AAAEA//8BAAAAAQAAAP////8AAAAAAQAAAAIAAQAAAAEAAAAAAAEAAAD//wEAAAAAAP////8AAAAA//8BAAEAAAAAAAIA///+/wIA/v8BAAAAAQACAAAAAQAAAP7///8AAP//AAAAAAEAAAAAAP7/AAD+////AAAAAAAAAAD//wAA/v8BAAMAAAABAAIAAgD//wAA//8BAAEA//8BAP7/AAAAAP7///8BAAAAAQAAAP7/AQD/////AAAAAAEAAAABAP//AQABAAAAAgABAAAAAAAAAP///////wEA//8AAAEA//8AAAAAAQAAAAIAAAABAP7//////wAAAQABAAAAAAABAAEA///+/wAA//8BAP///v8AAP///v8BAAAA//8CAAAAAQAAAAEAAQABAAAAAAD+/wAAAAD+/wAAAAAAAAAA/f////////8AAAAAAQABAP///////wEA//8BAAEAAAAAAAAA/////wEA/v//////AAAAAP//AAABAAAAAAD+/wAAAAD9////AQAAAAEAAwD//wEAAQAAAP//AgAAAAAAAAD+/wIAAAAAAAAAAAAAAAIA//8AAAEAAQACAAAAAQD//wAAAAD//wIAAQABAAAAAAD//wEA//8BAAEAAQAAAAAAAQABAP7/AAD//wEAAAACAP7/AQAAAAAAAAD//wIAAQACAAIAAQAAAAAAAAAAAP3///8BAAAAAQACAP//AgD9/wAAAAD//wEA/v////////8AAAAAAAD//wEAAQD//wMAAQAAAAEA//8AAAEA//8AAAAAAAACAAAAAAD//wAAAQD///////8AAAAA//8BAAIA/v8BAAEA/f8AAAAAAAAAAAAAAgD/////AAD+/wAAAAD//wAAAAAAAP//////////AgABAP///v8AAAIAAQAAAP//AAABAAAA/////wAAAAAAAAEAAAABAP///v///wIA//8BAAEAAQAAAAAA///+/wEAAAAAAAAA/////////v8BAP3/AAAAAAAAAAAAAAAA//8AAP//AAAAAP//AAABAAIAAAACAP////8DAAAAAAABAAAAAwABAP//AAABAP//AAAAAP////8BAAAAAgD//wAA///+/wAAAQD//wAA//8AAP7///8AAAAA/v8AAAAAAQD//wEA/v////////8AAAAAAQAAAP//AQACAAAAAAAAAP//AAD//wAAAAD//wAAAAD+/wAAAAAAAP//AQD//wAAAgAAAAAAAQABAAAAAwD+/wAAAAD///7/AQD//wIAAQAAAP//AAD//wAA//8CAAEAAAAAAAAA/////wAAAAD//wEAAQD///////8BAAAA//8BAAEAAAAAAAAA/v///wEAAAAAAAAAAAADAAAAAAAAAAAAAQABAAEAAAD+//7//v8AAP//AQAAAAAAAAABAAEAAgAAAAAAAQD//wAA/f8AAAAAAAABAAAAAQAAAAAAAAAAAAIA//8BAP///////wIA/////wAAAAABAAEA//8BAAAAAAD//wAAAQD//wEAAAAAAAIA/v8BAP//AAAAAAEAAAABAP//AAAAAAAAAQABAP7/AAABAAAAAQD//wIAAAAAAAEA///+/wAA//8AAP//AAAAAAAAAAABAP///////wIAAQAAAAEAAQAAAP7/AQAAAAAAAQAAAAAAAQD/////AQAAAAAA///+//7/AAD+/wEA//8AAAAA///+/wEAAAABAAIAAQABAAAA//8AAP//AAD//wAAAAD//wAAAAAAAP//AQAAAAAA////////AQAAAAAAAQD+////AQABAP7/AAD///7/AgD//wAAAAAAAP//AAAAAAEA//8BAAEAAgAAAAIAAAD//wEA/////wAAAQD///7/AQD//wEAAQD/////AAAAAAEAAgAAAAAAAQD//wEA//8AAP7//////wAA//8BAAEA//8BAAAAAQD/////AAABAP//AAACAP//AQAAAP//AAABAP////8AAAAAAAABAAEAAwABAAAAAgD//wAAAAD//wEAAAABAAAAAAABAAEA/////wAA//8AAAIAAAAAAAEAAQABAAEAAQABAP//AgAAAAAA//8BAP3//v///wAA//8AAAAAAQAAAP//AQD//wEAAAACAAIAAAABAAAA//8BAAEA//8BAP//AAAAAP//AQAAAAIAAAD//wAAAAAAAAEA////////AQAAAP//AQD//wAAAQD+/wEAAAABAP///v///wAAAAAAAP//AAAAAAIAAQD//wAAAgD+/wAAAAD//wAAAAABAP///P//////AAACAP////8AAAIAAAABAAAAAAAAAAAA//8AAAAAAQADAP//AQAAAAAAAAABAAEAAQAAAAAA/v8AAAAAAAD//wAAAQD//wAAAAD//wAA/v////////8CAAEA/v8BAP7/AAAAAAAA//8AAAEAAAD//wIAAQAAAAIAAQAAAAAAAAD///7/AQABAP//AAAAAP//AAACAAEA//8BAAAAAwAAAAAAAAD//wEAAAD//wAA///////////+/wAAAQABAAIAAAABAAEAAAD//wEAAAD/////AAD+/wIAAwABAAEA/v8BAAEAAAD//wAA//8AAP//AAAAAAEAAAAAAP//AAAAAAEAAQABAAEA/v///wAAAAD//wEAAAACAAAA/f/+/wAA/v///wAA//8AAAEAAQD///7/AAAAAAAAAAABAAAAAAACAAAAAAABAAAAAAABAP//AQD//wAA//8BAP7/AgABAAEAAQAAAAAAAQD//wEA/v8AAP////8AAP///////wIAAQD//wAAAAD//wAA/v///wAAAQD//wIA/////wEAAAAAAAIAAAABAAAAAAD//wEA//8AAAAA/////wAAAQAAAAAAAAD//wEAAQAAAAAAAAACAP///////wAAAgD//wAA/v8AAAIAAAAAAAEAAAABAP//AQABAAEAAQAAAP///v8BAAEAAAAAAP////8AAAAAAQD//wIAAQAAAAEAAAAAAAAA//8BAP//AAAAAP7//v///wEAAAAAAAIAAAAAAP//AAD//wEA//8BAAAAAAABAAEAAAABAP7///8AAAIAAAABAP//AAD//wEAAAAAAP//AAAAAAEAAAAAAAAAAAAAAP7/AQD//wAAAQD+/wEA/v8BAP7/AAABAAEAAAACAAIAAAADAAAA//8AAAEAAAABAP//AQD//wIA/////wEA//8AAAEA//8AAAEAAAAAAAAAAQABAAAAAAAAAAAAAAD//////////wAA//8AAP7/AAD+/wAAAQAAAAAA/////wAABAAAAAAA//8AAAEAAAAAAAAA/v8AAP//AAAAAAAAAAD//wAAAAD///////8BAAEAAAD/////AgABAAEA/v/+/wAAAQACAAEAAAD//wAAAwABAP//AgD+/wAA/v8AAAAAAAAAAAEA//8AAAEAAAD+/wEAAAAAAAEAAgAAAAEAAAABAP//AQD+/wIA/////wAAAQD//wAAAQD+/wAAAQABAAAA////////AAACAAAAAQAAAAIA//8BAP///v///wEA//8BAAEAAQD+/wAAAQD9/wAAAQAAAAEAAAABAAAAAgAAAP//AAD+/wAA/f8AAAAA////////AgAAAAcAAQD7/wEA/f8AAAIA//8GAP7//v/+//b/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+P/F//z/rv/i/7r/6v/Z/wYABwAoADAAKQBOABkATAD0/zQA1P8PANv/0//v/6//FwCi/ywAxP8oAPn//v82APT/WwD4/00A+/8yAPv//f/8/83/+v+w/+T/sf/j/9b/AQACACoAIgAtAEIAHwBPAAEAQADe/xcA0v/k/+X/t/8IAKv/IgC//yEA6/8EACMA9/9PAPf/VAD+/zcA+/8JAPn/1P8AALf/6f+w/+P/zf////j/HAAdAC0APgAfAEsABwBCAOP/IADV/+//2v/B//3/rP8PALv/GADd/xEAFgABAEMABABaAP//QgACABcA+//n/wAAwP/w/67/4v+///3/6f8WABcAKQA0ACIARgAQAEcA8f8pANn/9f/U/87/7f+v/wgAtP8RANP/FgANAAIAOQACAFQA/f9HAAAAIAABAO3//P/E/wEAs//q/7n/9P/i/wYAEQAZADEAJABBABMASAAAADEA3/8CANL/1v/g/7H/AACy/w8Axf8ZAPv/CQAzAAIAVQD//1AAAAAsAAIA9v/7/8r/AwC2//P/tf/m/+H/AwADABEAKQApADoAHgBHAAgAPADr/wkA1//f/93/vP/6/7L/CgDA/x4A7/8hACkAAgBPAPz/UgD1/zIABAAEAPz/0v/5/7f/AACy//H/2f/+/wEAAAAkABUAMwAdADoAEQA9APD/EADU//L/1P/H/+z/tf8LALv/HADk/ygAGgADAEMA//9TAPn/QAAAABAAAQDc//z/wf8DALD/7P/Q//z/9/8HABoAFgA3ACMAMAAOADwA+P8ZANv/+P/Y/9H/5v+8/wUAu/8WANf/HgAMAAoAPQABAFMA/f9HAP7/HwAEAN//+v/H/wMAs//2/8r/8//y/wMADgAQAC4AIwAyABMAJwD8/xcA3v8LANP/5v/f/8j/AgC4/w4A1P8eAAQACgAxAAEAUgD+/0gA/v8nAAIA8f/5/8r/BAC6/+3/wP/l/+b/AQAIABkAIwArAC4AIAAoAAkAGADj/w0A0f/r/9//0P8DAL3/CgDN/xkA//8IACUAAgBJAAAATwD+/ysAAQD7//3/z/8DAMT/+f/K/+L/5P/1////EgAcACYALgApAC4ACwAcAPL/EADZ//L/1f/U//f/uv8KAMX/DwDu/wcAHwADAEUABgBNAAEANQAAAAYAAQDf////xf/+/9P/4f/b//X/9v8LAA4AGAAlACoAMAAQABkA9v8TAOL/+f/W/9r/8f/I/wcAxP8MAOr/BwATAAQAOAAGAEcAAABCAAEADwAEAOP//v/F/wIAzf/o/93/8P/s/w4ACwAZACEAKgAyABMAIQD5/xgA6v8DANb/4P/y/9H/AQDJ/wkA4/8DAAoA/f8wAAQAQwABAEAA//8VAAIA7P/+/8r/BADP/+v/2v/s/+n/CwAIAA0AHAAjADQAHAAkAP//GQDy/wQA5v/i//b/0P/7/8f/AADh/wMAAAD+/yUAAAA7AAEAOAAAABwAAAD6/wAA1/8CAMr/AADb/+3/5f8BAAIACAAVABcALwAfACgA+/8XAPn/DgDe/+//7v/Q/wMAz/8JAOP/CwDx////EAAHADEAAQArAAIAHQAEAAcAAADr/wEAzv8CANj//f/k/wEA+f/+/xQABwAqAB4ALAD+/x4A8P8SAOb/8//f/9j//f/N/wEA3v8LAO7/AgAMAAQALAAEAC0AAQAdAAQADwABAPP/BADV/wMA0/8AAOH/AQD1/wAAEAADACQAGwAwAAQAHwD0/xUA8f/4/+L/2//7/8z/AwDc/woA6f8AAAQAAwAoAAcANAAAACcAAgAUAAEA+P8CANv/AgDR/wEA4v8BAOz/AgAIAPv/JAAVADMAFAAhAPP/GQDz//7/3P/l/+3/z/8BANf/CgDn/wkA/P///xoABwAwAAIAJwACABcAAwABAAIA4f8BAND/AgDd//3/6P8CAAYA/f8YAAwALwAZACUA9v8bAPj/AwDq/+r/7P/S//7/1/8EAOX/CQD6//7/GQAFAC8AAQApAAEAGQACAAMAAgDm/wEAzv8BANv//v/p/wIA//8BABMABQArACAALAABAB4A8f8NAOv/7v/m/9n/+P/R/wMA4f8OAPT/AQATAAMAKwAHACoAAwAbAAMABQADAO7/AQDU/wEA2f8AAOL////3////EgAAACUAGgAvAAUAHQD2/xIA9f/0//T/3P/4/8///f/h/wIA7f8AAAoAAQApAAQALQADACAAAgAPAP//9P///9r//f/T/wAA3f/9//D/AQAQAP//HAAHAC8ACQAfAPv/GAD+//f/+P/j/wEA0v/+/9n/AADq/wIABgD//x0AAQAuAAEAIwAAABQAAwD8/wEA3/8AAM//AADe////7f8BAAwA//8ZAAMALwAAACEA//8dAP3//v/9/+n////U//z/1v8BAOT/AAD+/wAAGwD+/ywA/v8kAAIAGAD///3////q/wEA0P///97/AADk/wAABAAAABUAAQAqAAEAKQAAABwAAAAFAP//6f8AANr////X/wAA4/8AAPj/AgAUAAAAKgD//ywAAAAcAP7/AQAAAOv/AADU/wAA2v8CAOP/AAABAAAAFgABABsAAAAqAAEAHwAAABQAAgDv/wEA3v///9H////f////7/8BAAoAAQApAAAALgD//yEAAQAIAAAA8P8BANr//v/V////4f8AAPf//v8UAAAAFAAAACYAAQAhAP7/GwD+//T/AADo/wIA1v8CANr/AgDp/wEABgAAAB8AAQAsAAEAJAAAAAwA///z/wEA3/8AANT/AADh/wEA9P///xQAAgASAAAAJQAAACEAAAAaAP//+v8BAOj////W////2P8BAOf///8DAAAAHwAAAC4AAAAlAAAAEgAAAPL/AQDm////0f8CAN3/AADr//7/EQD//xAAAQAhAAIAJQAAAB8AAAABAP//6v8CAN//AQDX/wAA4/8AAPr/AAAXAAAAKgABACgAAAAbAP///f8AAOj/AADU/wAA2v///+f/AQANAAMAEQD+/xwA/v8kAP7/IQABAAgA/v/p////5/8AANf/AQDd/wEA8v8BABMAAQAjAAAALgAAACAAAQADAAEA7f8BANn/AgDY//7/4P/+/wEAAAAXAAIAFAAFACUA/P8jAP//EgAAAO//AQDo////1/8AAN3/AADx//7/DgAAAB0AAQAoAAAAIwAAAAoAAQDv/wMA4f8AANn/AQDi/wEA+v///xgAAAAQAP3/IwD//yUA/v8XAAAA7/8AAOv/AADc/wAA3P/+/+v/AQALAAEAGgACACkAAAAkAP7/EAABAO/////q//7/1/8AANz/AgDw/wEAEgD//w8AAAAcAAIAJQAAAB0AAAD2////7P8AAOP/AgDa/wAA5P8BAAQAAQAWAAAAIgAAACMAAAAaAP//+P///+v/AQDZ/wAA2////+7/AAARAAAADgAAABYAAAAhAAAAIAABAPz/AQDt/wAA5P8AANr/AQDg/wEA/P8BABcAAAAhAP//KQD//xwAAAD8/wEA7v8AAN3////Z/wAA6f8BAA0AAAARAAEAEQAAACMAAAAgAAEA/f8CAO3/AADv/wAA3v8BANv////1////EgAAABkA//8nAAAAIgAAAAMAAADu/wAA6P8CANn/AQDg////BQD//xMAAQAOAP//IAABACYAAAAGAAAA6f////H/AADg/wEA2f8AAO3///8PAAAAFQACACQAAAAkAAEADQABAO//AADp/wAA2////9z/AQD7/wEAFgAAAAwAAQAXAP7/JQD9/xMAAADx/wAA8f8AAOr/AADc/wEA4/8BAAkAAAAVAAAAIQD//yYA//8UAAEA9P8BAOz/AADf/wAA3P8AAPP/AAAQAAAADQABAA0AAAAlAAEAGAD///H//v/0/wEA7v8CAN//AADg//3/BAACABUAAQAfAAAAJwABABgAAQD0//7/7f///+L/AADa/wIA8P///w4A//8SAAMACQAAACAAAQAgAP//+v////P////y/wEA4/8BANr/AQD9/wAAEwD//xkAAQAjAAAAIgABAPz////s/wAA6v8BANX/AQDr//7/BwABABMAAAAHAP//FwAAACYAAAD//wEA9P8BAPb/AQDu////2v8BAPn/AAATAP//FwD//yEAAAAjAAAAAgAAAOn/AQDr//7/2P8CAOT/AAABAP//FgABAAUAAQATAP//IwAAAAEAAgDy/wEA9/8AAPb/AADb/wAA6/8BABAAAAATAP7/IQAAACYA//8UAP//7/8AAPD/AADd/wEA3P/+//7///8OAAAACgAAAAgAAAAhAP//CQACAPT/AQD2/wAA9v///97////m/wIADgABABMAAQAfAP//JwAAABMAAADw/wAA8P///+r/AQDb/wAA9f8AAA8AAAARAAIABAD//wYA/v8HAAAAAQD//wMAAgAGAAAA7f8AAOz/AAALAP//DwACABQA//8bAAAAHgD///f/AADq/wEA6/8BANj//v/t/wAACAD+/xAAAgAEAAAABAABAAcAAQADAAAA//8AAAUA///1/wAA5f///wIAAAAOAAAAEAAAABsAAAAhAAAA/v8BAOj////y////3f8AAOf/AQAGAAEADAAAAAcA//8BAP//CQABAAMA//8BAP//BQAAAAAAAADo/wAA+/8AAAoAAAALAAAAFAAAACAAAQAGAAIA7f8BAPH/AADm/wMA3P8CAP7/AgASAP//CgD//wAAAAAIAP//BQD//wEAAAACAP7/BAAAAPz/AwD8////BAAAAAEA//8HAAAAHQAAAAgA/v/x//7/8f///+f/AQDg/////P///woAAAAMAP//AAABAAYA//8EAAAAAgAAAAUAAAACAAAAAwAAAAIAAAABAAAAAQABAAAAAgAcAP//DgD///T/AQDx/wAA9P8CAOH/AAD3/wAACQAAAAoAAQABAP//AwAAAAcAAAD+/wAAAgACAAEAAAD+////AwD+/wAAAAABAP//+v8BABEAAQATAAAA9f/+//L//f/z/wIA6f8AAPb/AQAFAP//DAAAAAAAAAAFAP//BQD//wEA//8DAAEAAQAAAP7///8AAAAA//8BAAIAAAD+/wAAEAABABYAAgD6/wEA8v8BAPX/AwDp/wAA8////wMA//8JAAEABAABAAEA//8FAAEA//8AAAMAAQACAP//AQAAAAEAAgAFAP//AQABAAAAAQAAAP//EQABAAAAAAD5/wEA+P8AAPr////6/wAA+/8BAAIA//8BAAAA//8CAAUA//8BAP7/AAABAAEAAgAAAAAAAwAAAAEA/v8DAAIAAAACAAQA//8TAAAA/P8BAPr////3//////8AAPz/AQD7/wEAAgD/////AAABAAEABAAAAP//////////AAAAAAAAAAADAAAAAwAAAAAA//8EAP///v/+/xAA//8HAAAA+/////j/AQD8////AAD///n///8AAAAA//8AAP////8DAP//AgAAAAAAAAACAAIAAAD+/wAAAQD//wAA/////wIAAgD9////CQACAAYA///9////+f8BAPr/AQAAAAIA/v///wAA//8AAAAAAAAAAAEAAAABAAAAAgAAAAEAAAAAAAEAAQABAAAAAgABAP//AAD//wEAAAD///////8BAAIAAQAAAAAA/v/+//////8BAAAAAQABAP//AAD///////8BAAAAAQABAP////8CAAEAAQD//wEA/v//////AQAAAAAAAAAAAAAAAAD9/wMA/////wAAAQD+/wEA/v/+//7/AQD//wMAAAAAAAAAAAABAAEA//////7/AAACAP3/AAD//wAAAQAAAP//AQD//wAAAAAAAAEA//8CAP//AAAAAAAA/v8AAAAA//8BAP//AAABAP//AAAAAP//AQD//wAAAQABAAAAAAABAAEA/v///wAAAAD//////////wAAAAAAAP//AAD////////8/wIAAAADAAEA/////wEA/v8BAP7/AgAAAAEAAgAAAP//AgD/////AQD//wEA//////7/AQD//wMAAAAAAAAA//8CAP//AQAAAP//AAACAAAAAAABAP//AQD+/wAA/////wAA/f///wAAAAAAAP7/AAAAAAAAAgD//wEAAQACAP//AAAAAAEAAQD//wAAAAAAAAAA//8BAAMA/v8AAP7/AQAAAAAAAQAAAAAA///+//7/AAAAAAAA//8BAP7/AQAAAP//AQABAAAAAQAAAP//AAD//wIA/v///wAAAQABAP//AAD//wEA//8BAP//AgAAAP///////wAAAQABAP//AwABAAAAAAAAAAAA/////wIAAwACAAAA/v8BAAAAAAAAAAAA//8AAP////8AAAAA/////wAA/////wEA/v8CAAEAAQD//wAAAAABAAAAAAD//wEAAQABAAAA//8CAAAAAAAAAP7/AAABAAAAAQABAAAAAgABAAAAAQD//wEAAwD+/wAA/v8AAAEAAAAAAAAAAAAAAAEAAAD//wMA/v///wAAAAACAAEAAAAAAP7///8DAAEAAQD//wEA/f8BAAEAAQD//wEAAQABAAMAAgAAAAEA//8AAP//BAAAAAIA/v//////AQABAAAAAAD//wEAAAACAAIAAQAAAAAAAgAAAAAAAAABAAIAAAABAAIAAQAAAP////8AAAAAAAD//wAAAQACAP//AAAAAAAAAQAAAAEA//8AAAAAAAD/////AQD//wAAAQD9////AQAAAAAA//8BAAAA///+/////v8BAAAAAQAAAAAAAAAAAAIA//8BAAAAAAACAP//AQD//wAAAAD/////AAD9/wAAAAACAAAAAgAAAAEAAQABAAEAAAAAAAEA//8AAAEAAQACAAAAAQAAAAEA//8BAAIAAAACAP//AAABAAAAAAAAAAAAAAD//wAAAQD/////AAAAAP////8AAAEAAAAAAP7///8BAAIAAQD//wEAAQAAAP//AgAAAAAAAAD//wAA//8CAP7/AQAAAP7/AAD+////AAAAAAAAAQABAAAA//8AAAEAAAABAP7/AAAAAP7/AAD+/wAAAQABAAEA/////////v8BAP///v///wIAAAAAAAAAAQAAAAIAAQAAAAAAAAABAAEAAAAAAAAAAAD//wEAAQD//wAAAQABAAAA/v/+/////////wAAAAD//wAAAAD/////AAAAAP7/AAD//wIA//8CAP//AQAAAP////8AAAAAAQABAP////8AAP//AQACAAAAAQAAAAAAAAAAAAAA//8BAAAAAAD+/wAA/v///wEAAAD+//7///8CAP7/AAABAP3/AwAAAAAAAAABAAIAAAABAAAAAQABAAIAAAAAAP//AAAAAAEAAAACAAEAAAACAAAAAAABAAAAAwAAAAAAAAD+/wAAAQD9//////8BAAAA/v8AAAAAAAAAAAAAAAD//wMA/v8BAAEAAQACAAAA/v8BAP//AwABAAIAAQABAP//AQAAAAEAAAAAAAEA//8AAAAAAAD/////AAABAAEAAAAAAP////8AAAAAAAAAAAAA/v8AAP//AQAAAP//AAABAAIAAQAAAAAAAgABAAAA/////wAAAQABAP//AQABAAEA/////wAAAAAAAAAAAAABAAEAAQAAAAAAAAAAAAAA//8AAP7/AQD9/wAAAgD//wEAAQABAAEA/v8AAAEA/////wAAAAAAAP//AAABAAAAAAAAAAAA//8CAP//AAABAAEAAQABAAAA//8BAAIAAgD//wAA/v8AAAEAAAD///7/AAAAAAEAAAABAAAAAQABAAAAAQACAAAA///+/wAAAQABAP7////+/wAA//8AAAAAAgAAAP//AQD9/wAAAAD//wAA//8AAAAAAQAAAAAAAQD//wAAAAAAAP//AQABAAAA/v8CAP//AAD///////8AAAAAAAACAAEA//8BAP7/AAAAAAEA//8BAAAAAQD//wAAAQD+/wAA/////wAAAAD//wAAAQABAAAA//8AAAEA/////wAA//8AAAAA/v/+/wEAAgABAP//AgD//wIA/////wAA//8AAAEAAQAAAAAAAQAAAAMAAAACAP//",showCount:!0},audio:{disabled:!0,defaultToggledOn:!1,language:"en-US",voiceNames:["Microsoft David - English (United States)","Alex (English - United States)"],rate:1,volume:1,icon:Va,iconDisabled:Xa},chatHistory:{disabled:!1,maxEntries:30,storageKey:"rcb-history",storageType:"LOCAL_STORAGE",viewChatHistoryButtonText:"Load Chat History ⟳",chatHistoryLineBreakText:"----- Previous Chat History -----",autoLoad:!1},chatInput:{disabled:!1,allowNewline:!1,enabledPlaceholderText:"Type your message...",disabledPlaceholderText:"",showCharacterCount:!1,characterLimit:-1,botDelay:1e3,sendButtonIcon:Ga,blockSpam:!0,sendOptionOutput:!0,sendCheckboxOutput:!0,buttons:[ue.VOICE_MESSAGE_BUTTON,ue.SEND_MESSAGE_BUTTON]},chatWindow:{showScrollbar:!1,showTypingIndicator:!0,autoJumpToBottom:!1,showMessagePrompt:!0,messagePromptText:"New Messages ↓",messagePromptOffset:30,defaultOpen:!1},sensitiveInput:{maskInTextArea:!0,maskInUserBubble:!0,asterisksCount:10,hideInUserBubble:!1},userBubble:{animate:!0,showAvatar:!1,avatar:"data:image/svg+xml,%3csvg%20width='140'%20height='140'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cy='60.044'%20cx='70'%20fill='%235c5c5c'%20r='29'/%3e%3cpath%20d='m16.36%20156.186-.01-30.5c-.005-16.844%2024.168-30.507%2053.991-30.516%2029.823-.009%2054.004%2013.64%2054.01%2030.484l.008%2030.5-108%20.032z'%20fill='%235c5c5c'/%3e%3c/svg%3e",simulateStream:!1,streamSpeed:30},botBubble:{animate:!0,showAvatar:!1,avatar:vr,simulateStream:!1,streamSpeed:30},voice:{disabled:!0,defaultToggledOn:!1,language:"en-US",timeoutPeriod:1e4,autoSendDisabled:!1,autoSendPeriod:1e3,sendAsAudio:!1,icon:Ya,iconDisabled:Wa},footer:{text:k.jsxs("div",{style:{cursor:"pointer",display:"flex",flexDirection:"row",alignItems:"center",columnGap:3},onClick:()=>window.open("https://react-chatbotify.com","_blank","noopener,noreferrer"),children:[k.jsx("span",{children:"Powered By "},0),k.jsx("div",{style:{borderRadius:"50%",width:14,height:14,display:"flex",justifyContent:"center",alignItems:"center",background:"linear-gradient(to right, #42b0c5, #491d8d)"},children:k.jsx(wr,{style:{width:"80%",height:"80%",fill:"#fff"}})},1),k.jsx("span",{style:{fontWeight:"bold"},children:" React ChatBotify"},2)]}),buttons:[ue.FILE_ATTACHMENT_BUTTON,ue.EMOJI_PICKER_BUTTON]},fileAttachment:{disabled:!1,multiple:!0,accept:".png",icon:xr,iconDisabled:xr,sendFileName:!0,showMediaDisplay:!1},emoji:{disabled:!1,icon:Er,iconDisabled:Er,list:["😀","😃","😄","😅","😊","😌","😇","🙃","🤣","😍","🥰","🥳","🎉","🎈","🚀","⭐️"]},toast:{maxCount:3,forbidOnMax:!1,dismissOnClick:!0},event:{rcbPreInjectMessage:!1,rcbPostInjectMessage:!1,rcbStartSimulateStreamMessage:!1,rcbStopSimulateStreamMessage:!1,rcbStartStreamMessage:!1,rcbChunkStreamMessage:!1,rcbStopStreamMessage:!1,rcbRemoveMessage:!1,rcbSaveChatHistory:!1,rcbLoadChatHistory:!1,rcbToggleChatWindow:!1,rcbStartSpeakAudio:!1,rcbToggleAudio:!1,rcbToggleNotifications:!1,rcbToggleVoice:!1,rcbChangePath:!1,rcbShowToast:!1,rcbDismissToast:!1,rcbUserSubmitText:!1,rcbUserUploadFile:!1,rcbTextAreaChangeValue:!1,rcbPreLoadChatBot:!1,rcbPostLoadChatBot:!1,rcbPreProcessBlock:!1,rcbPostProcessBlock:!1},ariaLabel:{chatButton:"open chat",audioButton:"toggle audio",closeChatButton:"close chat",emojiButton:"emoji picker",fileAttachmentButton:"upload file",notificationButton:"toggle notifications",sendButton:"send message",voiceButton:"toggle voice",inputTextArea:"input text area"},device:{desktopEnabled:!0,mobileEnabled:!0,applyMobileOptimizations:!0}},Cr=h.createContext({settings:{},setSyncedSettings:()=>null,syncedSettingsRef:{current:{}}}),ee=()=>h.useContext(Cr),Ka=({children:e,settings:t=kr,setSyncedSettings:r,syncedSettingsRef:n})=>k.jsx(Cr.Provider,{value:{settings:t,setSyncedSettings:r,syncedSettingsRef:n},children:e}),Pr={tooltipStyle:{},notificationBadgeStyle:{},chatWindowStyle:{},headerStyle:{},bodyStyle:{},chatInputContainerStyle:{},chatInputAreaStyle:{},chatInputAreaFocusedStyle:{},chatInputAreaDisabledStyle:{},userBubbleStyle:{},botBubbleStyle:{},botOptionStyle:{},botOptionHoveredStyle:{},botCheckboxRowStyle:{},botCheckboxNextStyle:{},botCheckMarkStyle:{},botCheckMarkSelectedStyle:{},characterLimitStyle:{},characterLimitReachedStyle:{},chatHistoryLineBreakStyle:{},chatMessagePromptStyle:{},chatMessagePromptHoveredStyle:{},footerStyle:{},loadingSpinnerStyle:{},mediaDisplayContainerStyle:{},chatButtonStyle:{},chatButtonHoveredStyle:{},chatHistoryButtonStyle:{},chatHistoryButtonHoveredStyle:{},sendButtonStyle:{},sendButtonHoveredStyle:{},sendButtonDisabledStyle:{},audioButtonStyle:{},audioButtonDisabledStyle:{},closeChatButtonStyle:{},emojiButtonStyle:{},emojiButtonDisabledStyle:{},fileAttachmentButtonStyle:{},fileAttachmentButtonDisabledStyle:{},notificationButtonStyle:{},notificationButtonDisabledStyle:{},voiceButtonStyle:{},voiceButtonDisabledStyle:{},chatIconStyle:{},audioIconStyle:{},audioIconDisabledStyle:{},closeChatIconStyle:{},emojiIconStyle:{},emojiIconDisabledStyle:{},fileAttachmentIconStyle:{},fileAttachmentIconDisabledStyle:{},notificationIconStyle:{},notificationIconDisabledStyle:{},voiceIconStyle:{},voiceIconDisabledStyle:{},sendIconStyle:{},sendIconDisabledStyle:{},sendIconHoveredStyle:{},rcbTypingIndicatorContainerStyle:{},rcbTypingIndicatorDotStyle:{},toastPromptContainerStyle:{},toastPromptStyle:{},toastPromptHoveredStyle:{}},Sr=h.createContext({styles:{},setSyncedStyles:()=>null,syncedStylesRef:{current:{}}}),ie=()=>h.useContext(Sr),Ja=({children:e,styles:t=Pr,setSyncedStyles:r,syncedStylesRef:n})=>k.jsx(Sr.Provider,{value:{styles:t,setSyncedStyles:r,syncedStylesRef:n},children:e}),Za=({buttons:e})=>{var t,r,n,o,a,A,s;const{settings:i}=ee(),{styles:c}=ie(),l={backgroundImage:`linear-gradient(to right, ${(t=i.general)==null?void 0:t.secondaryColor},
|
|
2
|
-
${(r=i.general)==null?void 0:r.primaryColor})`,...c.headerStyle};return k.jsxs("div",{style:l,className:"rcb-chat-header-container",children:[k.jsxs("div",{className:"rcb-chat-header",children:[((n=i.header)==null?void 0:n.showAvatar)&&k.jsx("div",{style:{backgroundImage:`url("${(o=i.header)==null?void 0:o.avatar}")`},className:"rcb-bot-avatar"}),h.isValidElement((a=i.header)==null?void 0:a.title)?(A=i.header)==null?void 0:A.title:k.jsx("div",{style:{margin:0,fontSize:20,fontWeight:"bold"},children:(s=i.header)==null?void 0:s.title})]}),k.jsx("div",{className:"rcb-chat-header",children:e==null?void 0:e.map((d,u)=>k.jsx(h.Fragment,{children:d},u))})]})},Dr=h.createContext({}),pe=()=>h.useContext(Dr),$a=({children:e,botIdRef:t,flowRef:r})=>{const n=h.useRef(null),o=h.useRef(""),a=h.useRef(null),A=h.useRef(new Map),s=h.useRef(null),i=h.useRef(""),c=h.useRef(!1),l=h.useRef(null),d=h.useRef(null),u=h.useRef(null);return k.jsx(Dr.Provider,{value:{botIdRef:t,flowRef:r,inputRef:n,timeoutIdRef:a,streamMessageMap:A,chatBodyRef:s,paramsInputRef:i,keepVoiceOnRef:c,audioContextRef:l,audioBufferRef:d,gainNodeRef:u,prevInputRef:o},children:e})},Se=e=>{const[t,r]=h.useState(e),n=h.useRef(e);return[t,o=>{const a=typeof o=="function"?o(n.current):o;n.current=a,r(a)},n]},Br=h.createContext({}),he=()=>h.useContext(Br),ei=({children:e,settings:t})=>{var r,n,o,a,A,s;const[i,c,l]=Se(!1),[d,u,p]=Se(((r=t==null?void 0:t.chatWindow)==null?void 0:r.defaultOpen)??!1),[f,y,g]=Se(((n=t==null?void 0:t.audio)==null?void 0:n.defaultToggledOn)??!1),[v,x,m]=Se(((o=t==null?void 0:t.voice)==null?void 0:o.defaultToggledOn)??!1),[E,P,C]=Se(((a=t==null?void 0:t.notification)==null?void 0:a.defaultToggledOn)??!0),[S,I]=h.useState(!1),[Q,B]=h.useState(!1),[O,D,M]=Se(!1),[U,L,F]=Se(!0),[_,H,b]=Se(!1),[X,w]=h.useState(!1),[K,R]=h.useState(!1),[z,q]=h.useState(0),[Z,J]=h.useState(0),[ae,re]=h.useState(!1),[le,we]=h.useState(((A=window.visualViewport)==null?void 0:A.height)??window.innerHeight),[Ye,ut]=h.useState(((s=window.visualViewport)==null?void 0:s.width)??window.innerWidth);return k.jsx(Br.Provider,{value:{isBotTyping:i,setSyncedIsBotTyping:c,syncedIsBotTypingRef:l,isChatWindowOpen:d,setSyncedIsChatWindowOpen:u,syncedIsChatWindowOpenRef:p,audioToggledOn:f,setSyncedAudioToggledOn:y,syncedAudioToggledOnRef:g,voiceToggledOn:v,setSyncedVoiceToggledOn:x,syncedVoiceToggledOnRef:m,notificationsToggledOn:E,setSyncedNotificationsToggledOn:P,syncedNotificationsToggledOnRef:C,isLoadingChatHistory:S,setIsLoadingChatHistory:I,hasChatHistoryLoaded:Q,setHasChatHistoryLoaded:B,isScrolling:O,setSyncedIsScrolling:D,syncedIsScrollingRef:M,textAreaDisabled:U,setSyncedTextAreaDisabled:L,syncedTextAreaDisabledRef:F,textAreaSensitiveMode:_,setSyncedTextAreaSensitiveMode:H,syncedTextAreaSensitiveModeRef:b,hasInteractedPage:X,setHasInteractedPage:w,hasFlowStarted:K,setHasFlowStarted:R,unreadCount:z,setUnreadCount:q,inputLength:Z,setInputLength:J,blockAllowsAttachment:ae,setBlockAllowsAttachment:re,viewportHeight:le,setViewportHeight:we,viewportWidth:Ye,setViewportWidth:ut},children:e})};var j=(e=>(e.START_SPEAK_AUDIO="rcb-start-speak-audio",e.TOGGLE_AUDIO="rcb-toggle-audio",e.TOGGLE_NOTIFICATIONS="rcb-toggle-notifications",e.TOGGLE_VOICE="rcb-toggle-voice",e.TOGGLE_CHAT_WINDOW="rcb-toggle-chat-window",e.PRE_INJECT_MESSAGE="rcb-pre-inject-message",e.POST_INJECT_MESSAGE="rcb-post-inject-message",e.START_SIMULATE_STREAM_MESSAGE="rcb-start-simulate-stream-message",e.STOP_SIMULATE_STREAM_MESSAGE="rcb-stop-simulate-stream-message",e.START_STREAM_MESSAGE="rcb-start-stream-message",e.CHUNK_STREAM_MESSAGE="rcb-chunk-stream-message",e.STOP_STREAM_MESSAGE="rcb-stop-stream-message",e.REMOVE_MESSAGE="rcb-remove-message",e.SAVE_CHAT_HISTORY="rcb-save-chat-history",e.LOAD_CHAT_HISTORY="rcb-load-chat-history",e.CHANGE_PATH="rcb-change-path",e.SHOW_TOAST="rcb-show-toast",e.DISMISS_TOAST="rcb-dismiss-toast",e.USER_SUBMIT_TEXT="rcb-user-submit-text",e.USER_UPLOAD_FILE="rcb-user-upload-file",e.TEXT_AREA_CHANGE_VALUE="rcb-text-area-change-value",e.PRE_LOAD_CHATBOT="rcb-pre-load-chatbot",e.POST_LOAD_CHATBOT="rcb-post-load-chatbot",e.PRE_PROCESS_BLOCK="rcb-pre-process-block",e.POST_PROCESS_BLOCK="rcb-post-process-block",e))(j||{});const ti={[j.START_SPEAK_AUDIO]:!0,[j.TOGGLE_AUDIO]:!0,[j.TOGGLE_VOICE]:!0,[j.TOGGLE_NOTIFICATIONS]:!0,[j.TOGGLE_CHAT_WINDOW]:!0,[j.PRE_INJECT_MESSAGE]:!0,[j.POST_INJECT_MESSAGE]:!1,[j.PRE_LOAD_CHATBOT]:!0,[j.POST_LOAD_CHATBOT]:!1,[j.START_SIMULATE_STREAM_MESSAGE]:!0,[j.STOP_SIMULATE_STREAM_MESSAGE]:!1,[j.START_STREAM_MESSAGE]:!0,[j.CHUNK_STREAM_MESSAGE]:!0,[j.STOP_STREAM_MESSAGE]:!0,[j.REMOVE_MESSAGE]:!0,[j.SAVE_CHAT_HISTORY]:!0,[j.LOAD_CHAT_HISTORY]:!0,[j.CHANGE_PATH]:!0,[j.SHOW_TOAST]:!0,[j.DISMISS_TOAST]:!0,[j.USER_SUBMIT_TEXT]:!0,[j.USER_UPLOAD_FILE]:!0,[j.TEXT_AREA_CHANGE_VALUE]:!0,[j.PRE_PROCESS_BLOCK]:!0,[j.POST_PROCESS_BLOCK]:!0},hn=async(e,t,r)=>{const n=new CustomEvent(e,{detail:t,cancelable:ti[e]});return n.data=r,n.promises=[],window.dispatchEvent(n),await Promise.all(n.promises),n},Ir=h.createContext({paths:[],setSyncedPaths:()=>{},syncedPathsRef:{current:[]}}),kt=()=>h.useContext(Ir),ni=({children:e})=>{const[t,r,n]=Se([]);return k.jsx(Ir.Provider,{value:{paths:t,setSyncedPaths:r,syncedPathsRef:n},children:e})},Le=()=>{const{botIdRef:e}=pe(),{syncedPathsRef:t}=kt(),r=h.useCallback(()=>t.current.length>0?t.current.at(-1)??null:null,[]),n=h.useCallback(()=>t.current.length>1?t.current.at(-2)??null:null,[]);return{dispatchRcbEvent:h.useCallback(async(o,a)=>{const A={botId:e.current,currPath:r(),prevPath:n()};return await hn(o,A,a)},[e])}},De=()=>{const{settings:e}=ee(),{isChatWindowOpen:t,setSyncedIsChatWindowOpen:r,viewportHeight:n,setViewportHeight:o,viewportWidth:a,setViewportWidth:A,setUnreadCount:s,setSyncedIsBotTyping:i,setSyncedIsScrolling:c,syncedIsBotTypingRef:l,syncedIsChatWindowOpenRef:d}=he(),{chatBodyRef:u}=pe(),{dispatchRcbEvent:p}=Le(),f=h.useCallback(()=>{if(!u.current)return!1;const m=u.current.getBoundingClientRect(),E=window.innerHeight??document.documentElement.clientHeight,P=window.innerWidth??document.documentElement.clientWidth;return m.top>=0&&m.left>=0&&m.bottom<=E&&m.right<=P},[u]),y=h.useCallback(async m=>{var E;m!==d.current&&((E=e.event)!=null&&E.rcbToggleChatWindow&&(await p(j.TOGGLE_CHAT_WINDOW,{currState:d.current,newState:!d.current})).defaultPrevented||r(P=>(P||s(0),!P)))},[d]),g=h.useCallback(async m=>{m!==l.current&&i(E=>!E)},[l]),v=h.useCallback((m,E,P,C)=>(m/=C/2)<1?P/2*m*m+E:-P/2*(--m*(m-2)-1)+E,[]),x=h.useCallback((m=0)=>{if(!u.current)return;const E=u.current.scrollHeight-u.current.clientHeight;if(m<=0)return u.current.scrollTop=E,void c(!1);const P=u.current.scrollTop,C=E-P;let S=0;const I=()=>{if(!u.current)return;S+=20;const Q=v(S,P,C,m);u.current.scrollTop=Q,S<m?requestAnimationFrame(I):c(!1)};I()},[u]);return{isChatWindowOpen:t,setSyncedIsChatWindowOpen:r,toggleChatWindow:y,viewportHeight:n,setViewportHeight:o,viewportWidth:a,setViewportWidth:A,toggleIsBotTyping:g,scrollToBottom:x,getIsChatBotVisible:f}},ri=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{unreadCount:a,isScrolling:A}=he(),{chatBodyRef:s}=pe(),{scrollToBottom:i}=De(),[c,l]=h.useState(!1),d={color:(e=n.general)==null?void 0:e.primaryColor,borderColor:(t=n.general)==null?void 0:t.primaryColor,...o.chatMessagePromptHoveredStyle};return k.jsx("div",{className:"rcb-message-prompt-container "+(s.current&&((u=n.chatWindow)!=null&&u.showMessagePrompt)&&A&&a>0?"visible":"hidden"),children:k.jsx("div",{onMouseEnter:()=>{l(!0)},onMouseLeave:()=>{l(!1)},style:c?d:{...o.chatMessagePromptStyle},onMouseDown:p=>{p.preventDefault(),i(600)},className:"rcb-message-prompt-text",children:(r=n.chatWindow)==null?void 0:r.messagePromptText})});var u},Tr=h.createContext({messages:[],setSyncedMessages:()=>{},syncedMessagesRef:{current:[]}}),gn=()=>h.useContext(Tr),oi=({children:e})=>{const[t,r,n]=Se([]);return k.jsx(Tr.Provider,{value:{messages:t,setSyncedMessages:r,syncedMessagesRef:n},children:e})},ai=({message:e,isNewSender:t})=>{var r,n,o,a,A,s;const{settings:i}=ee(),{styles:c}=ie(),l=typeof e.content=="string",d=e.content,u=e.contentWrapper?k.jsx(e.contentWrapper,{children:d}):d,p={backgroundColor:(r=i.general)==null?void 0:r.primaryColor,color:"#fff",maxWidth:(n=i.userBubble)!=null&&n.showAvatar?"65%":"70%",...c.userBubbleStyle},f=(o=i.userBubble)!=null&&o.animate?"rcb-user-message-entry":"",y=((a=i.userBubble)==null?void 0:a.showAvatar)&&t,g="rcb-user-message"+(!t&&(A=i.userBubble)!=null&&A.showAvatar?" rcb-user-message-offset":"");return k.jsxs("div",{className:"rcb-user-message-container",children:[l?k.jsx("div",{style:p,className:`${g} ${f}`,children:u}):k.jsx(k.Fragment,{children:u}),y&&k.jsx("div",{style:{backgroundImage:`url("${(s=i.userBubble)==null?void 0:s.avatar}")`},className:"rcb-message-user-avatar"})]})},ii=({message:e,isNewSender:t})=>{var r,n,o,a,A,s;const{settings:i}=ee(),{styles:c}=ie(),l=typeof e.content=="string",d=e.content,u=e.contentWrapper?k.jsx(e.contentWrapper,{children:d}):d,p={backgroundColor:(r=i.general)==null?void 0:r.secondaryColor,color:"#fff",maxWidth:(n=i.botBubble)!=null&&n.showAvatar?"65%":"70%",...c.botBubbleStyle},f=(o=i.botBubble)!=null&&o.animate?"rcb-bot-message-entry":"",y=((a=i.botBubble)==null?void 0:a.showAvatar)&&t,g="rcb-bot-message"+(!t&&(A=i.botBubble)!=null&&A.showAvatar?" rcb-bot-message-offset":"");return k.jsxs("div",{className:"rcb-bot-message-container",children:[y&&k.jsx("div",{style:{backgroundImage:`url("${(s=i.botBubble)==null?void 0:s.avatar}")`},className:"rcb-message-bot-avatar"}),l?k.jsx("div",{style:p,className:`${g} ${f}`,children:u}):k.jsx(k.Fragment,{children:u})]})},si=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),a=(e=n.botBubble)!=null&&e.animate?"rcb-bot-message-entry":"";return k.jsxs("div",{className:"rcb-bot-message-container",children:[((t=n.botBubble)==null?void 0:t.showAvatar)&&k.jsx("div",{style:{backgroundImage:`url("${(r=n.botBubble)==null?void 0:r.avatar}")`},className:"rcb-message-bot-avatar"}),k.jsx("div",{onMouseDown:A=>{A.preventDefault()},className:`rcb-bot-message ${a}`,children:k.jsxs("div",{className:"rcb-typing-indicator",style:{...o==null?void 0:o.rcbTypingIndicatorContainerStyle},children:[k.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}}),k.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}}),k.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}})]})})]})},Ai=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{messages:a}=gn(),{scrollToBottom:A}=De(),{isBotTyping:s,syncedIsScrollingRef:i}=he(),{chatBodyRef:c}=pe(),l={...o==null?void 0:o.bodyStyle,scrollbarWidth:(e=n.chatWindow)!=null&&e.showScrollbar?"auto":"none"};return h.useEffect(()=>{i.current||A()},[(t=c.current)==null?void 0:t.scrollHeight]),k.jsxs("div",{style:l,className:"rcb-chat-body-container",ref:c,children:[a.map((d,u)=>{const p=(f=>f===0||a[f].sender!==a[f-1].sender)(u);return d.sender.toUpperCase()==="USER"?k.jsx(ai,{message:d,isNewSender:p},u):d.sender.toUpperCase()==="BOT"?k.jsx(ii,{message:d,isNewSender:p},u):k.jsx("div",{children:d.content},u)}),s&&((r=n.chatWindow)==null?void 0:r.showTypingIndicator)&&k.jsx(si,{}),k.jsx(ri,{})]})},li=({checkboxes:e,checkedItems:t,path:r})=>{var n,o,a,A,s,i,c,l,d,u,p;const{settings:f}=ee(),{styles:y}=ie(),{paths:g}=kt(),{handleSubmitText:v}=ft(),[x,m]=h.useState(new Set),[E,P]=h.useState(!1),C={cursor:E?`url("${(n=f.general)==null?void 0:n.actionDisabledIcon}"), auto`:"pointer",color:(o=f.general)==null?void 0:o.primaryColor,borderColor:(a=f.general)==null?void 0:a.primaryColor,...y.botCheckboxRowStyle},S={cursor:E||x.size<e.min?`url("${(A=f.general)==null?void 0:A.actionDisabledIcon}"), auto`:"pointer",color:(s=f.general)==null?void 0:s.primaryColor,borderColor:(i=f.general)==null?void 0:i.primaryColor,...y.botCheckboxNextStyle},I={cursor:E?`url("${(c=f.general)==null?void 0:c.actionDisabledIcon}"), auto`:"pointer",color:"transparent",...y.botCheckMarkStyle},Q={cursor:E?`url("${(l=f.general)==null?void 0:l.actionDisabledIcon}"), auto`:"pointer",color:"#fff",borderColor:(d=f.general)==null?void 0:d.primaryColor,backgroundColor:(u=f.general)==null?void 0:u.primaryColor,...y.botCheckMarkSelectedStyle};return h.useEffect(()=>{g.length>0&&g[g.length-1]!==r&&P(!e.reusable)},[g]),k.jsxs("div",{className:"rcb-checkbox-container "+((p=f.botBubble)!=null&&p.showAvatar?"rcb-checkbox-offset":""),children:[e.items.map(B=>k.jsx("div",{onMouseDown:O=>{O.preventDefault(),(D=>{E||m(M=>{const U=new Set(M);if(U.has(D))t.delete(D),U.delete(D);else{if(x.size==e.max)return M;t.add(D),U.add(D)}return U})})(B)},style:C,className:"rcb-checkbox-row-container",children:k.jsxs("div",{className:"rcb-checkbox-row",children:[k.jsx("div",{style:x.has(B)?Q:I,className:"rcb-checkbox-mark"}),k.jsx("div",{className:"rcb-checkbox-label",children:B})]})},B)),k.jsx("div",{style:S,className:"rcb-checkbox-next-button",onMouseDown:B=>{var O;if(B.preventDefault(),E||x.size<e.min)return;const D=Array.from(t).join(", ");let M;P(!e.reusable),M=e.sendOutput!=null?e.sendOutput:((O=f.chatInput)==null?void 0:O.sendCheckboxOutput)??!0,v(D,M)}})]})},ci=async(e,t)=>{const r=e.checkboxes;if(!r)return;let n;if(typeof r=="function"?(n=r(t),n instanceof Promise&&(n=await n)):n=r,Array.isArray(n)&&(n={items:n}),!("items"in n)||n.items.length==0)return;n.min==null&&(n.min=1),n.max==null&&(n.max=n.items.length),n.min>n.max&&(n.min=n.max),n.reusable==null&&(n.reusable=!1);const o=new Set,a=t.currPath,A=k.jsx(li,{checkboxes:n,checkedItems:o,path:a});await t.injectMessage(A)},ui=async(e,t)=>{const r=e.function;if(!r)return;const n=r(t);return n instanceof Promise?await n:n},di=async(e,t,r)=>{const n=e.message;if(!n)return;if(typeof n=="string")return void(n.trim()!==""&&(r?await t.simulateStreamMessage(n):await t.injectMessage(n)));let o=n(t);o instanceof Promise&&(o=await o),typeof o=="string"&&o.trim()!==""&&(r?await t.simulateStreamMessage(o):await t.injectMessage(o))},pi=({options:e,path:t})=>{var r,n,o,a,A,s;const{settings:i}=ee(),{styles:c}=ie(),{paths:l}=kt(),{handleSubmitText:d}=ft(),[u,p]=h.useState([]),[f,y]=h.useState(!1),g={cursor:f?`url("${(r=i.general)==null?void 0:r.actionDisabledIcon}"), auto`:"pointer",color:(n=i.general)==null?void 0:n.primaryColor,borderColor:(o=i.general)==null?void 0:o.primaryColor,backgroundColor:"#fff",...c.botOptionStyle},v={color:"#fff",borderColor:(a=i.general)==null?void 0:a.primaryColor,backgroundColor:(A=i.general)==null?void 0:A.primaryColor,...c.botOptionHoveredStyle};return h.useEffect(()=>{l.length>0&&l[l.length-1]!==t&&y(!e.reusable)},[l]),k.jsx("div",{className:"rcb-options-container "+((s=i.botBubble)!=null&&s.showAvatar?"rcb-options-offset":""),children:e.items.map((x,m)=>{const E=u[m]&&!f;return k.jsx("div",{className:"rcb-options",style:E?v:g,onMouseEnter:()=>(P=>{p(C=>{const S=[...C];return S[P]=!0,S})})(m),onMouseLeave:()=>(P=>{p(C=>{const S=[...C];return S[P]=!1,S})})(m),onMouseDown:P=>{var C;if(P.preventDefault(),f)return;let S;y(!e.reusable),S=e.sendOutput!=null?e.sendOutput:((C=i.chatInput)==null?void 0:C.sendOptionOutput)??!0,d(x,S)},children:x},x)})})},fi=async(e,t)=>{const r=e.options;if(!r)return;let n;if(typeof r=="function"?(n=r(t),n instanceof Promise&&(n=await n)):n=r,Array.isArray(n)&&(n={items:n}),!("items"in n)||n.items.length==0)return;n.reusable==null&&(n.reusable=!1);const o=t.currPath,a=k.jsx(pi,{options:n,path:o});await t.injectMessage(a)},hi=async(e,t)=>{const r=e.component;if(r){if(typeof r=="function"){let n=r(t);return n instanceof Promise&&(n=await n),n?void await t.injectMessage(n):void 0}await t.injectMessage(r)}},gi=async(e,t,r,n)=>{const o=e.transition;let a;if(typeof o=="function"?(a=o(t),a instanceof Promise&&(a=await a)):a=o,typeof a=="number"&&(a={duration:a}),!a||a instanceof Promise||a.duration==null||typeof a.duration!="number")return;a.interruptable==null&&(a.interruptable=!1);const A=setTimeout(async()=>{const s=await n(e);s&&await Mr(s,t)},a.duration);a.interruptable&&(r.current=A)},mi=async(e,t,r)=>{const n=e.chatDisabled;if(n==null)return;let o;typeof n=="function"?(o=n(t),o instanceof Promise&&(o=await o)):o=n,r(o)},Qr=async(e,t,r)=>{const n=e.isSensitive;if(!n)return void r(!1);let o;typeof n=="function"?(o=n(t),o instanceof Promise&&(o=await o)):o=n,r(o)},Mr=async(e,t)=>{if(!e)throw new Error("Block is not valid.");const r=Object.keys(e);for(const n of r)n==="function"&&await ui(e,t);r.includes("path")&&await(async(n,o)=>{const a=n.path;if(!a)return!1;if(typeof a=="string")return await o.goToPath(a),!0;let A=a(o);if(A instanceof Promise&&(A=await A),!A)return!1;const s=A;return await o.goToPath(s),!0})(e,t)},yi=()=>{var e;const{settings:t}=ee(),{styles:r}=ie();return k.jsx("div",{className:"rcb-line-break-container",children:k.jsx("div",{style:{...r.chatHistoryLineBreakStyle},className:"rcb-line-break-text","data-testid":"chat-history-line-break-text",children:(e=t.chatHistory)==null?void 0:e.chatHistoryLineBreakText})})},bi=()=>{var e;const{settings:t}=ee(),{styles:r}=ie(),n={borderTop:`4px solid ${(e=t.general)==null?void 0:e.primaryColor}`,...r.loadingSpinnerStyle};return k.jsx("div",{className:"rcb-spinner-container",children:k.jsx("div",{style:n,className:"rcb-spinner"})})},Ft=()=>{try{if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();throw new Error("crypto.randomUUID not available")}catch(e){if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const r=crypto.getRandomValues(new Uint8Array(1))[0]%16;return(t==="x"?r:3&r|8).toString(16)});throw console.error(e),new Error("crypto.getRandomValues is also not available")}},Ze=(e,t)=>({id:Ft(),content:e,sender:t,type:typeof e=="string"?"string":"object",timestamp:new Date().toUTCString(),tags:[]});let $e,Or=!1,zt="rcb-history",Rt=30,_r=!1,jt=[];const Ct=()=>jt,mn=e=>{Lr(e),jt=e},Lr=e=>{$e&&$e.setItem(zt,JSON.stringify(e))},yn=e=>{var t,r,n,o,a;$e=((r=(t=e.chatHistory)==null?void 0:t.storageType)==null?void 0:r.toUpperCase())==="SESSION_STORAGE"?sessionStorage:localStorage,zt=(n=e.chatHistory)==null?void 0:n.storageKey,Rt=(o=e.chatHistory)==null?void 0:o.maxEntries,_r=(a=e.chatHistory)==null?void 0:a.disabled,jt=(A=>{if(A!=null)try{return JSON.parse(A)}catch{return[]}return[]})($e.getItem(zt))},vi=e=>h.isValidElement(e.content)?structuredClone({id:e.id,content:Fa.renderToString(e.content),type:e.type,sender:e.sender.toUpperCase(),timestamp:e.timestamp,tags:e.tags}):e,Nr=(e,t,r)=>{const n=new DOMParser().parseFromString(e,"text/html");return Array.from(n.body.childNodes).map((o,a)=>{var A;if(o.nodeType===Node.TEXT_NODE)return o.textContent;{const s=o.tagName.toLowerCase();let i=Array.from(o.attributes).reduce((c,l)=>{const d=l.name.toLowerCase();if(d==="style"){const u=l.value.split(";").filter(f=>f.trim()!==""),p={};u.forEach(f=>{const[y,g]=f.split(":").map(x=>x.trim()),v=y.replace(/-([a-z])/g,(x,m)=>m.toUpperCase());p[v]=g}),c[d]=p}else s!=="audio"&&s!=="video"||d!=="controls"||l.value!==""?c[d]=l.value:c[d]="true";return c},{});if(Object.prototype.hasOwnProperty.call(i,"class")){const c=o.classList;i.className=c.toString(),delete i.class,(A=t.botBubble)!=null&&A.showAvatar&&(i=wi(c,i)),i=xi(c,i,t,r),i=Ei(c,i,t,r),i=ki(c,i,t,r),i=Ci(c,i,t,r)}if(["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"].includes(s))return h.createElement(s,{key:a,...i});{const c=Nr(o.innerHTML,t,r);return h.createElement(s,{key:a,...i},...c)}}})},wi=(e,t)=>((e.contains("rcb-options-container")||e.contains("rcb-checkbox-container"))&&(t.className=`${e.toString()} rcb-options-offset`),t),xi=(e,t,r,n)=>{var o,a,A,s,i;return e.contains("rcb-options")&&(t.style={...t.style,color:((o=n.botOptionStyle)==null?void 0:o.color)??((a=r.general)==null?void 0:a.primaryColor),borderColor:((A=n.botOptionStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(i=r.general)==null?void 0:i.actionDisabledIcon}"), auto`,...n.botOptionStyle}),t},Ei=(e,t,r,n)=>{var o,a,A,s,i;return e.contains("rcb-checkbox-row-container")&&(t.style={...t.style,color:((o=n.botCheckboxRowStyle)==null?void 0:o.color)??((a=r.general)==null?void 0:a.primaryColor),borderColor:((A=n.botCheckboxRowStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(i=r.general)==null?void 0:i.actionDisabledIcon}"), auto`,...n.botCheckboxRowStyle}),t},ki=(e,t,r,n)=>{var o,a,A,s,i;return e.contains("rcb-checkbox-next-button")&&(t.style={...t.style,color:((o=n.botCheckboxNextStyle)==null?void 0:o.color)??((a=r.general)==null?void 0:a.primaryColor),borderColor:((A=n.botCheckboxNextStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(i=r.general)==null?void 0:i.actionDisabledIcon}"), auto`,...n.botCheckboxNextStyle}),t},Ci=(e,t,r,n)=>{var o,a;return(e.contains("rcb-media-display-image-container")||e.contains("rcb-media-display-video-container"))&&(t.style={...t.style,backgroundColor:(o=r.general)==null?void 0:o.primaryColor,maxWidth:(a=r.userBubble)!=null&&a.showAvatar?"65%":"70%",...n.mediaDisplayContainerStyle}),t},bn=()=>{const{settings:e}=ee(),{notificationsToggledOn:t,setSyncedNotificationsToggledOn:r,hasInteractedPage:n,unreadCount:o,setUnreadCount:a,syncedNotificationsToggledOnRef:A}=he(),{audioBufferRef:s,audioContextRef:i,gainNodeRef:c}=pe(),{dispatchRcbEvent:l}=Le(),d=h.useCallback(async()=>{var p,f;const y=(p=e.notification)==null?void 0:p.sound;i.current=new AudioContext;const g=i.current.createGain();let v;if(g.gain.value=((f=e.notification)==null?void 0:f.volume)??.2,c.current=g,y!=null&&y.startsWith("data:audio")){const x=atob(y.split(",")[1]),m=new ArrayBuffer(x.length),E=new Uint8Array(m);for(let P=0;P<x.length;P++)E[P]=x.charCodeAt(P);v=m}else v=await(await fetch(y)).arrayBuffer();s.current=await i.current.decodeAudioData(v)},[e.notification]),u=h.useCallback(()=>{var p;if((p=e.notification)!=null&&p.disabled||!A.current||!n||!i.current||!s.current)return;const f=i.current.createBufferSource();f.buffer=s.current,f.connect(c.current).connect(i.current.destination),f.start()},[e.notification,A,n,i,s,c]);return{unreadCount:o,setUnreadCount:a,notificationsToggledOn:t,toggleNotifications:h.useCallback(async p=>{var f;p!==A.current&&((f=e.event)!=null&&f.rcbToggleNotifications&&(await l(j.TOGGLE_NOTIFICATIONS,{currState:A.current,newState:!A.current})).defaultPrevented||r(y=>!y))},[A]),playNotificationSound:u,setUpNotifications:d}},Pi=(e,t)=>{var r,n,o,a;((A,s,i,c,l)=>{if(!window.SpeechSynthesisUtterance)return void console.info("Speech Synthesis API is not supported in this environment.");const d=new window.SpeechSynthesisUtterance;d.text=A,d.lang=s,d.rate=c,d.volume=l;let u=!1;for(const p of i){const f=window.speechSynthesis.getVoices().find(y=>y.name===p);if(f){d.voice=f,window.speechSynthesis.speak(d),u=!0;break}}u||window.speechSynthesis.speak(d)})(t,(r=e.audio)==null?void 0:r.language,(n=e.audio)==null?void 0:n.voiceNames,(o=e.audio)==null?void 0:o.rate,(a=e.audio)==null?void 0:a.volume)},Hr=()=>{const{settings:e}=ee(),{audioToggledOn:t,setSyncedAudioToggledOn:r,syncedAudioToggledOnRef:n}=he(),{dispatchRcbEvent:o}=Le(),a=h.useCallback(async s=>{var i;s!==n.current&&((i=e.event)!=null&&i.rcbToggleAudio&&(await o(j.TOGGLE_AUDIO,{currState:n.current,newState:!n.current})).defaultPrevented||r(c=>!c))},[n]),A=h.useCallback(async s=>{var i,c;if((i=e.audio)!=null&&i.disabled||!n.current)return;let l=s;if((c=e.event)!=null&&c.rcbStartSpeakAudio){const d=await o(j.START_SPEAK_AUDIO,{textToRead:l});if(d.defaultPrevented)return;l=d.data.textToRead}Pi(e,l)},[e,n]);return{audioToggledOn:t,speakAudio:A,toggleAudio:a}},at=()=>{var e,t,r;const{settings:n}=ee(),{messages:o,setSyncedMessages:a,syncedMessagesRef:A}=gn(),{setSyncedIsBotTyping:s,setUnreadCount:i,syncedIsScrollingRef:c,syncedIsChatWindowOpenRef:l}=he(),{streamMessageMap:d,chatBodyRef:u,paramsInputRef:p}=pe(),{scrollToBottom:f,getIsChatBotVisible:y}=De(),{dispatchRcbEvent:g}=Le(),{speakAudio:v}=Hr(),{playNotificationSound:x}=bn(),m=h.useCallback(async D=>{var M,U;if((M=n.event)!=null&&M.rcbSaveChatHistory){const L=await g(j.SAVE_CHAT_HISTORY,{messages:D});if(L.defaultPrevented)return;D=((U=L.data)==null?void 0:U.messages)??D}await(async L=>{if(_r||!$e)return;const F=[];for(let H=L.length-1;H>=0;H--){const b=L[H];if(b.sender.toUpperCase()!=="SYSTEM"&&(b.content!==""&&F.unshift(b),F.length===Rt))break}let _=F.map(vi);if(!Or&&_.length<Rt){const H=Rt-_.length;_=[...jt.slice(-H),..._]}Lr(_)})(D)},[g,(e=n.event)==null?void 0:e.rcbSaveChatHistory]),E=h.useCallback((D,M=!1)=>{var U,L;m(D);let F=!0;const _=D[D.length-1];if(!_)return;const H=_.sender.toUpperCase();H==="USER"&&(F=!1),(U=n.general)!=null&&U.embedded&&y()&&(F=!1),(l.current&&!c.current||M)&&(F=!1),F&&x(),!M&&(H!=="USER"&&(L=n.chatWindow)!=null&&L.autoJumpToBottom||H==="USER"||!c.current)&&setTimeout(()=>f(),1)},[n,u,l,c,x,f,y]),P=h.useCallback(async(D,M="BOT",U=null)=>{var L,F,_,H,b;if(typeof D!="string")throw new Error("Content must be of type string to simulate stream.");M=M.toUpperCase();let X=Ze(D,M);if((L=n.event)!=null&&L.rcbStartSimulateStreamMessage){const J=await g(j.START_SIMULATE_STREAM_MESSAGE,{message:X});if(J.defaultPrevented)return null;U=J.data.simulateStreamChunker||U,X=J.data.message}s(!1);let w=30;w=M==="BOT"?(F=n.botBubble)==null?void 0:F.streamSpeed:(_=n.userBubble)==null?void 0:_.streamSpeed;const K={...X,content:""};a(J=>[...J,K]),E(A.current);let R=X.content;U&&(R=U(R));let z=0;const q=R.length;X.sender.toUpperCase()==="BOT"&&(l.current||(H=n.general)!=null&&H.embedded)&&typeof X.content=="string"&&X.content.trim()!==""&&v(X.content);const Z=new Promise(J=>{const ae=setInterval(()=>{if(z>=q)return clearInterval(ae),void J();a(re=>{const le=[...re];for(let we=le.length-1;we>=0;we--)if(le[we].id===K.id){const Ye=R[z];Ye&&(K.content+=Ye,le[we]=K),z++;break}return le})},w)});return(c.current||!l.current)&&i(J=>J+1),await Z,m(A.current),(b=n.event)!=null&&b.rcbStopSimulateStreamMessage&&await g(j.STOP_SIMULATE_STREAM_MESSAGE,{message:X}),M==="USER"&&(p.current=D),X},[n,g,E,A,p,s,i,l,v]),C=h.useCallback(async(D,M="BOT")=>{var U,L,F;M=M.toUpperCase();let _=Ze(D,M);if((U=n.event)!=null&&U.rcbPreInjectMessage){const H=await g(j.PRE_INJECT_MESSAGE,{message:_});if(H.defaultPrevented)return null;_=H.data.message}return _.sender.toUpperCase()==="BOT"&&(l.current||(L=n.general)!=null&&L.embedded)&&typeof _.content=="string"&&_.content.trim()!==""&&v(_.content),(c.current||!l.current)&&i(H=>H+1),(F=n.event)!=null&&F.rcbPostInjectMessage&&await g(j.POST_INJECT_MESSAGE,{message:_}),a(H=>[...H,_]),E(A.current),M==="USER"&&typeof D=="string"&&(p.current=D),_},[n,g,E,p,A,l,v,i]),S=h.useCallback(async D=>{var M;let U=A.current.find(_=>_.id===D),L=null,F=!1;return U||(L=Ct(),U=L.find(_=>_.id===D),U&&(F=!0)),!U||(M=n.event)!=null&&M.rcbRemoveMessage&&(await g(j.REMOVE_MESSAGE,{message:U})).defaultPrevented?null:F?(L&&mn(L.filter(_=>_.id!==D)),U):(a(_=>_.filter(H=>H.id!==D)),E(A.current),i(_=>Math.max(_-1,0)),U)},[g,(t=n.event)==null?void 0:t.rcbRemoveMessage,E,A,i,Ct,mn]),I=h.useCallback(async(D,M="BOT")=>{var U,L;if(M=M.toUpperCase(),!d.current.has(M)){const _=Ze(D,M);return(U=n.event)!=null&&U.rcbStartStreamMessage&&(await g(j.START_STREAM_MESSAGE,{message:_})).defaultPrevented?null:(s(!1),a(H=>[...H,_]),E(A.current),d.current.set(M,_.id),(c.current||!l.current)&&i(H=>H+1),_)}const F={...Ze(D,M),id:d.current.get(M)};return(L=n.event)!=null&&L.rcbChunkStreamMessage&&(await g(j.CHUNK_STREAM_MESSAGE,{message:F})).defaultPrevented?null:(a(_=>_.map(H=>H.id===F.id?F:H)),E(A.current,!0),F)},[g,n.event,E,A,s,i,d]),Q=h.useCallback(async(D="BOT")=>{var M;if(D=D.toUpperCase(),!d.current.has(D))return!0;const U=d.current.get(D);let L;for(let F=0;F<3;F++){const _=A.current.find(H=>H.id===U);_&&(L=_),await new Promise(H=>setTimeout(H,20))}return((M=n.event)==null||!M.rcbStopStreamMessage||!(await g(j.STOP_STREAM_MESSAGE,{message:L})).defaultPrevented)&&(d.current.delete(D),m(A.current),D==="USER"&&typeof(L==null?void 0:L.content)=="string"&&(p.current=L.content),!0)},[g,(r=n.event)==null?void 0:r.rcbStopStreamMessage,d,p]),B=h.useCallback(D=>{const M=typeof D=="function"?D(A.current):D;a(M),E(M)},[E,A]),O=h.useCallback((D,M,U=0)=>{var L;const F=A.current,_=D?D.toUpperCase():null,H=[];let b=U;for(let X=F.length-1;X>=0;X--){const w=F[X];if(!_||((L=w==null?void 0:w.sender)==null?void 0:L.toUpperCase())===_){if(b>0){b--;continue}if(H.push(w),M!==void 0&&H.length===M)break}}return H.length>0?H:null},[A]);return{simulateStreamMessage:P,injectMessage:C,removeMessage:S,streamMessage:I,endStreamMessage:Q,replaceMessages:B,getMessages:O,messages:o}};let vn,Ue,qt,et=!1,Fe=null;const wn=()=>{if(!vn){const e=window.SpeechRecognition||window.webkitSpeechRecognition;vn=e!=null?new e:null}return vn},Si=(e,t,r,n,o,a)=>{var A,s,i;const c=wn();if(!c)return;if(!et)try{et=!0,c.lang=(A=e.voice)==null?void 0:A.language,c.start()}catch{}const l=(s=e.voice)==null?void 0:s.timeoutPeriod,d=(i=e.voice)==null?void 0:i.autoSendPeriod;c.onresult=u=>{var p,f;clearTimeout(Ue),Ue=null,clearTimeout(qt);const y=u.results[u.results.length-1][0].transcript;if(a.current){const g=(p=e.chatInput)==null?void 0:p.characterLimit,v=a.current.value+y;g!=null&&g>=0&&v.length>g?n(v.slice(0,g)):n(v),o(a.current.value.length)}l&&(Ue=setTimeout(async()=>await En(t,a),l)),(f=e.voice)!=null&&f.autoSendDisabled||(qt=setTimeout(r,d))},c.onend=()=>{et?(c.start(),!Ue&&l&&(Ue=setTimeout(async()=>await En(t,a),l))):(clearTimeout(Ue),Ue=null,clearTimeout(qt))},l&&(Ue=setTimeout(async()=>await En(t,a),l))},Di=(e,t)=>{navigator.mediaDevices.getUserMedia({audio:!0}).then(r=>{if(Fe=new MediaRecorder(r),!et)try{et=!0,Fe.start()}catch{}Fe.ondataavailable=n=>{t.current&&t.current.push(n.data)},Fe.onstop=()=>{e(),r.getTracks().forEach(n=>n.stop())}}).catch(r=>{console.error("Unable to use microphone:",r)})},xn=()=>{const e=wn();e&&(et=!1,e&&e.stop(),Fe&&Fe.state!=="inactive"&&(Fe.stop(),Fe=null),clearTimeout(Ue),Ue=null,clearTimeout(qt))},En=async(e,t)=>{var r;(r=t.current)!=null&&r.disabled||await e(),xn()},kn=()=>{const{settings:e}=ee(),{voiceToggledOn:t,setSyncedVoiceToggledOn:r,syncedVoiceToggledOnRef:n}=he(),{dispatchRcbEvent:o}=Le(),a=h.useCallback(async s=>{var i;s!==n.current&&((i=e.event)!=null&&i.rcbToggleVoice&&(await o(j.TOGGLE_VOICE,{currState:n.current,newState:!n.current})).defaultPrevented||r(c=>!c))},[n]),A=h.useCallback(s=>{((i,c)=>{var l,d,u;const p=wn();(l=c.voice)!=null&&l.disabled||(d=c.chatInput)==null||!d.blockSpam||!p||(i&&!et?(et=!0,(u=c.voice)!=null&&u.sendAsAudio?Fe==null||Fe.start():p.start()):i||xn())})(s,e)},[e]);return{voiceToggledOn:t,toggleVoice:a,syncVoice:A}},it=()=>{var e;const{settings:t}=ee(),{inputLength:r,setInputLength:n,textAreaDisabled:o,setSyncedTextAreaDisabled:a,textAreaSensitiveMode:A,setSyncedTextAreaSensitiveMode:s,syncedTextAreaDisabledRef:i,syncedTextAreaSensitiveModeRef:c}=he(),{inputRef:l,chatBodyRef:d,prevInputRef:u}=pe(),{dispatchRcbEvent:p}=Le(),{getIsChatBotVisible:f}=De(),y=h.useCallback(async C=>{var S,I,Q;if(i.current&&l.current)l.current.value="";else if(l.current&&u.current!==null){const B=(S=t.chatInput)==null?void 0:S.characterLimit,O=(I=t.chatInput)!=null&&I.allowNewline?C:C.replace(/\n/g," ");if(B!=null&&B>=0&&O.length>B?l.current.value=O.slice(0,B):l.current.value=O,(Q=t.event)!=null&&Q.rcbTextAreaChangeValue&&(await p(j.TEXT_AREA_CHANGE_VALUE,{currValue:l.current.value,prevValue:u.current})).defaultPrevented)return void(l.current.value=u.current);u.current=l.current.value}},[i,l,u,t,p]),g=h.useCallback(C=>{var S;(S=l.current)!=null&&S.disabled||setTimeout(()=>{var I,Q,B;(I=t.general)!=null&&I.embedded?f()&&((Q=l.current)==null||Q.focus()):C!=="start"&&((B=l.current)==null||B.focus())},100)},[l,(e=t.general)==null?void 0:e.embedded,d,f]),v=h.useCallback(()=>{l.current&&l.current.focus()},[]),x=h.useCallback(()=>{l.current&&l.current.blur()},[]),m=h.useCallback(()=>l&&l.current?l.current.value:"",[]),E=h.useCallback(C=>{C!==i.current&&a(S=>!S)},[i]),P=h.useCallback(C=>{C!==c.current&&s(S=>!S)},[c]);return{textAreaDisabled:o,setSyncedTextAreaDisabled:a,textAreaSensitiveMode:A,setSyncedTextAreaSensitiveMode:s,inputLength:r,setInputLength:n,getTextAreaValue:m,setTextAreaValue:y,updateTextAreaFocus:g,focusTextArea:v,blurTextArea:x,toggleTextAreaDisabled:E,toggleTextAreaSensitiveMode:P}},Ur=h.createContext({toasts:[],setSyncedToasts:()=>{},syncedToastsRef:{current:[]}}),Fr=()=>h.useContext(Ur),Bi=({children:e})=>{const[t,r,n]=Se([]);return k.jsx(Ur.Provider,{value:{toasts:t,setSyncedToasts:r,syncedToastsRef:n},children:e})},pt=()=>{const{settings:e}=ee(),{toasts:t,setSyncedToasts:r,syncedToastsRef:n}=Fr(),{dispatchRcbEvent:o}=Le(),a=h.useCallback(async(i,c)=>{var l,d,u,p;let f=null;if(n.current.length>=(((l=e.toast)==null?void 0:l.maxCount)??3)){if((d=e.toast)!=null&&d.forbidOnMax)return null;f=Ft();let g={id:f,content:i,timeout:c};if((u=e.event)!=null&&u.rcbShowToast){const v=await o(j.SHOW_TOAST,{toast:g});if(v.defaultPrevented)return null;g=v.data.toast}return r(v=>[...v.slice(1),g]),f}f=Ft();let y={id:f,content:i,timeout:c};if((p=e.event)!=null&&p.rcbShowToast){const g=await o(j.SHOW_TOAST,{toast:y});if(g.defaultPrevented)return null;y=g.data.toast}return r(g=>[...g,y]),f},[e,o]),A=h.useCallback(async i=>{var c;const l=n.current.find(d=>d.id===i);return!l||(c=e.event)!=null&&c.rcbDismissToast&&(await o(j.DISMISS_TOAST,{toast:l})).defaultPrevented?null:(r(d=>d.filter(u=>u.id!==i)),i)},[o]),s=h.useCallback(i=>{const c=typeof i=="function"?i(n.current):i;r(c)},[n]);return{showToast:a,dismissToast:A,toasts:t,replaceToasts:s}},Gt=()=>{var e,t,r,n,o;const{settings:a}=ee(),{paths:A,setSyncedPaths:s,syncedPathsRef:i}=kt(),{flowRef:c,streamMessageMap:l,paramsInputRef:d,keepVoiceOnRef:u,timeoutIdRef:p}=pe(),{setSyncedIsBotTyping:f,setSyncedTextAreaDisabled:y,setSyncedTextAreaSensitiveMode:g,blockAllowsAttachment:v,setBlockAllowsAttachment:x}=he(),{dispatchRcbEvent:m}=Le(),{endStreamMessage:E,injectMessage:P,removeMessage:C,simulateStreamMessage:S,streamMessage:I}=at(),{showToast:Q,dismissToast:B}=pt(),{toggleChatWindow:O}=De(),{updateTextAreaFocus:D,setTextAreaValue:M}=it(),{syncVoice:U}=kn(),L=h.useCallback(async w=>{var K;if((K=a.event)!=null&&K.rcbPostProcessBlock){const R=await m(j.POST_PROCESS_BLOCK,{block:w});if(R.defaultPrevented)return null;w=R.data.block}return w},[(e=a.event)==null?void 0:e.rcbPostProcessBlock,m]),F=h.useCallback(async(w,K)=>{var R,z,q,Z;if(!w)return;let J=c.current[w];if(!J)return void f(!1);if((R=a.event)!=null&&R.rcbPreProcessBlock){const re=await m(j.PRE_PROCESS_BLOCK,{block:J});if(re.defaultPrevented)return;J=re.data.block}f(!0),(z=a.chatInput)!=null&&z.blockSpam&&y(!0),g(!1);const ae={prevPath:K,currPath:w,goToPath:b,setTextAreaValue:M,userInput:d.current,endStreamMessage:E,injectMessage:P,removeMessage:C,simulateStreamMessage:S,streamMessage:I,toggleChatWindow:O,showToast:Q,dismissToast:B};await(async(re,le,we,Ye,ut,xe,Ne)=>{if(!re)throw new Error("Block is not valid.");for(const xt of Object.keys(re))switch(xt){case"message":await di(re,le,we);break;case"options":await fi(re,le);break;case"checkboxes":await ci(re,le);break;case"component":await hi(re,le);break;case"chatDisabled":await mi(re,le,ut);break;case"isSensitive":await Qr(re,le,xe);break;case"transition":await gi(re,le,Ye,Ne)}})(J,ae,((q=a.botBubble)==null?void 0:q.simulateStream)??!1,p,y,g,L),f(!1),"chatDisabled"in J||y((Z=a.chatInput)==null?void 0:Z.disabled),"isSensitive"in J||g(!1),x(typeof J.file=="function"),D(w),U(u.current&&!J.chatDisabled),w!==K&&l.current.clear()},[c,D,U,(t=a.botBubble)==null?void 0:t.simulateStream,(r=a.chatInput)==null?void 0:r.disabled,d,E,P,C,S,I,O,Q,B,u,l]),_=h.useCallback(()=>i.current.length>0?i.current.at(-1)??null:null,[]),H=h.useCallback(()=>i.current.length>1?i.current.at(-2)??null:null,[]),b=h.useCallback(async w=>{var K;const R=_(),z=H();return((K=a.event)==null||!K.rcbChangePath||!(await m(j.CHANGE_PATH,{currPath:R,prevPath:z,nextPath:w})).defaultPrevented)&&(s(q=>[...q,w]),await F(w,R),!0)},[(n=a.chatInput)==null?void 0:n.blockSpam,(o=a.event)==null?void 0:o.rcbChangePath,F,m]),X=h.useCallback(w=>{const K=typeof w=="function"?w(i.current):w;s(K)},[i]);return{getCurrPath:_,getPrevPath:H,goToPath:b,blockAllowsAttachment:v,setBlockAllowsAttachment:x,paths:A,replacePaths:X,firePostProcessBlockEvent:L}},ft=()=>{var e,t,r,n;const{settings:o}=ee(),{endStreamMessage:a,injectMessage:A,removeMessage:s,simulateStreamMessage:i,streamMessage:c}=at(),{syncedPathsRef:l}=kt(),{getCurrPath:d,getPrevPath:u,goToPath:p,firePostProcessBlockEvent:f}=Gt(),{setSyncedTextAreaSensitiveMode:y,setSyncedTextAreaDisabled:g,setSyncedIsBotTyping:v,setBlockAllowsAttachment:x,setInputLength:m,syncedVoiceToggledOnRef:E,syncedTextAreaSensitiveModeRef:P}=he(),{flowRef:C,inputRef:S,keepVoiceOnRef:I,paramsInputRef:Q,timeoutIdRef:B}=pe(),{showToast:O,dismissToast:D}=pt(),{dispatchRcbEvent:M}=Le(),{syncVoice:U}=kn(),{setTextAreaValue:L}=it(),{toggleChatWindow:F}=De(),_=h.useCallback(async b=>{var X,w,K,R,z,q;const Z=d();if(Z&&C.current[Z]){if(P.current){if((X=o==null?void 0:o.sensitiveInput)!=null&&X.hideInUserBubble)return;if((w=o==null?void 0:o.sensitiveInput)!=null&&w.maskInUserBubble)return void((K=o.userBubble)!=null&&K.simulateStream?await i("*".repeat(((R=o.sensitiveInput)==null?void 0:R.asterisksCount)??10),"USER"):await A("*".repeat(((z=o.sensitiveInput)==null?void 0:z.asterisksCount)??10),"USER"))}(q=o.userBubble)!=null&&q.simulateStream?await i(b,"USER"):await A(b,"USER")}},[C,d,o,A,i,P]),H=h.useCallback(async(b,X=!0)=>{var w,K;if((b=b.trim())==="")return;X&&await _(b),B.current&&clearTimeout(B.current),S.current&&(L(""),m(0));const R=d();if(!R)return;let z=C.current[R];const q=await f(z);q&&((w=o.chatInput)!=null&&w.blockSpam&&g(!0),I.current=E.current,U(!1),setTimeout(()=>{v(!0)},400),y(!1),setTimeout(async()=>{var Z;const J={prevPath:u(),currPath:d(),goToPath:p,setTextAreaValue:L,userInput:Q.current,injectMessage:A,simulateStreamMessage:i,streamMessage:c,removeMessage:s,endStreamMessage:a,toggleChatWindow:F,showToast:O,dismissToast:D},ae=l.current.length;await Mr(q,J),l.current.length===ae&&(g("chatDisabled"in z?!!z.chatDisabled:!((Z=o.chatInput)==null||!Z.disabled)),Qr(z,J,y),x(typeof z.file=="function"),U(I.current),v(!1))},(K=o.chatInput)==null?void 0:K.botDelay))},[B,(e=o.chatInput)==null?void 0:e.blockSpam,(t=o.chatInput)==null?void 0:t.botDelay,(r=o.chatInput)==null?void 0:r.disabled,I,E,U,_,u,d,p,A,i,c,s,a,F,O,D,C]);return{handleSubmitText:h.useCallback(async(b,X=!0)=>{var w,K;b=b??((w=S.current)==null?void 0:w.value),!((K=o.event)!=null&&K.rcbUserSubmitText&&(await M(j.USER_SUBMIT_TEXT,{inputText:b,sendInChat:X})).defaultPrevented||!d())&&H(b,X)},[M,d,H,S,(n=o.event)==null?void 0:n.rcbUserSubmitText])}},Yt=()=>{var e;const{settings:t}=ee();return h.useMemo(()=>{var r;if(typeof window>"u"||!window.navigator)return!1;if((r=t.device)==null||!r.applyMobileOptimizations)return!0;const n=navigator.userAgent,o=!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(n),a=window.innerWidth>=768;return o&&a},[(e=t.device)==null?void 0:e.applyMobileOptimizations])},Ii=({buttons:e})=>{var t,r,n,o,a,A,s,i,c,l,d;const u=Yt(),{settings:p}=ee(),{styles:f}=ie(),{textAreaDisabled:y,textAreaSensitiveMode:g,inputLength:v,hasFlowStarted:x,setHasFlowStarted:m,setInputLength:E}=he(),{inputRef:P}=pe(),[C,S]=h.useState(!1),[I,Q]=h.useState(!1),{handleSubmitText:B}=ft(),{setTextAreaValue:O}=it(),D={boxSizing:u?"content-box":"border-box",...f.chatInputAreaStyle},M={outline:y?"":"none",boxShadow:y?"":`0 0 5px ${(t=p.general)==null?void 0:t.primaryColor}`,boxSizing:u?"content-box":"border-box",...f.chatInputAreaStyle,...f.chatInputAreaFocusedStyle},U={cursor:`url("${(r=p.general)==null?void 0:r.actionDisabledIcon}"), auto`,caretColor:"transparent",boxSizing:u?"content-box":"border-box",...f.chatInputAreaStyle,...f.chatInputAreaDisabledStyle},L={color:"#989898",...f.characterLimitStyle},F={color:"#ff0000",...f.characterLimitReachedStyle},_=y?(n=p.chatInput)==null?void 0:n.disabledPlaceholderText:(o=p.chatInput)==null?void 0:o.enabledPlaceholderText,H=()=>{y||S(!0)},b=()=>{S(!1)},X=()=>{Q(!0)},w=()=>{Q(!1)},K=async z=>{var q;if(!I&&z.key==="Enter"){if(z.shiftKey)return void((q=p.chatInput)!=null&&q.allowNewline||z.preventDefault());z.preventDefault(),await B()}},R=z=>{P.current&&(O(z.target.value),E(P.current.value.length))};return k.jsxs("div",{"aria-label":((a=p.ariaLabel)==null?void 0:a.inputTextArea)??"input text area",role:"textbox",onMouseDown:z=>{var q;z.stopPropagation(),!x&&((q=p.general)==null?void 0:q.flowStartTrigger)==="ON_CHATBOT_INTERACT"&&m(!0)},style:{...f.chatInputContainerStyle},className:"rcb-chat-input",children:[g&&(A=p.sensitiveInput)!=null&&A.maskInTextArea?k.jsx("input",{ref:P,type:"password",className:"rcb-chat-input-textarea",style:y?U:C?M:D,placeholder:_,onChange:R,onKeyDown:K,onFocus:H,onBlur:b,onCompositionStart:X,onCompositionEnd:w}):k.jsx("textarea",{ref:P,style:y?U:C?M:D,rows:1,className:"rcb-chat-input-textarea",placeholder:_,onChange:R,onKeyDown:K,onFocus:H,onBlur:b,onCompositionStart:X,onCompositionEnd:w}),k.jsxs(k.Fragment,{children:[e==null?void 0:e.map((z,q)=>k.jsx(h.Fragment,{children:z},q)),((s=p.chatInput)==null?void 0:s.showCharacterCount)&&((i=p.chatInput)==null?void 0:i.characterLimit)!=null&&((c=p.chatInput)==null?void 0:c.characterLimit)>0&&k.jsxs("div",{className:"rcb-chat-input-char-counter",style:v>=((l=p.chatInput)==null?void 0:l.characterLimit)?F:L,children:[v,"/",(d=p.chatInput)==null?void 0:d.characterLimit]})]})]})},Ti=({buttons:e})=>{var t;const{settings:r}=ee(),{styles:n}=ie();return k.jsxs("div",{"data-testid":"chatbot-footer-container",style:{...n.footerStyle},className:"rcb-chat-footer-container",children:[k.jsx("div",{className:"rcb-chat-footer",children:e==null?void 0:e.map((o,a)=>k.jsx(h.Fragment,{children:o},a))}),k.jsx("span",{children:(t=r.footer)==null?void 0:t.text})]})},Qi=()=>{var e,t,r,n,o,a,A;const{settings:s}=ee(),{styles:i}=ie(),{unreadCount:c}=he(),{isChatWindowOpen:l,toggleChatWindow:d}=De(),[u,p]=h.useState(!1),f={backgroundImage:`linear-gradient(to right, ${(e=s.general)==null?void 0:e.secondaryColor},
|
|
3
|
-
${(t=s.general)==null?void 0:t.primaryColor})`,...i.chatButtonStyle},y={transform:"scale(1.05)",...f,...i.chatButtonHoveredStyle},g={backgroundImage:`url(${(r=s.chatButton)==null?void 0:r.icon})`,fill:"#fff",width:75,height:75,...i.chatIconStyle};return k.jsx(k.Fragment,{children:!((n=s.general)!=null&&n.embedded)&&k.jsxs("div",{"aria-label":((o=s.ariaLabel)==null?void 0:o.chatButton)??"open chat",role:"button",style:u?y:f,className:"rcb-toggle-button "+(l?"rcb-button-hide":"rcb-button-show"),onMouseEnter:()=>{p(!0)},onMouseLeave:()=>{p(!1)},onClick:()=>d(!0),children:[(()=>{var v;const x=(v=s.chatButton)==null?void 0:v.icon;return x&&typeof x!="string"?x&&k.jsx("span",{className:"rcb-toggle-icon",children:k.jsx(x,{style:g})}):k.jsx("span",{className:"rcb-toggle-icon",style:g})})(),!((a=s.notification)!=null&&a.disabled)&&((A=s.notification)==null?void 0:A.showCount)&&k.jsx("span",{style:{...i.notificationBadgeStyle},className:"rcb-badge",children:c})]})})},Mi=()=>{var e,t,r,n,o,a;const A=Yt(),{settings:s}=ee(),{styles:i}=ie(),{chatBodyRef:c}=pe(),{isChatWindowOpen:l,toggleChatWindow:d}=De(),[u,p]=h.useState(!1),[f,y]=h.useState(!1),[g,v]=h.useState(0);h.useEffect(()=>{var E,P,C;const S=(E=s.tooltip)==null?void 0:E.mode;if(S==="ALWAYS")if(A){let I;I=l?(((P=c.current)==null?void 0:P.offsetWidth)??375)-(typeof((C=i.chatButtonStyle)==null?void 0:C.width)=="number"?i.chatButtonStyle.width:75):0,v(I),p(!0)}else p(!l);else S==="NEVER"?p(!1):S==="START"?f?p(!1):(y(!0),p(!0)):S==="CLOSE"&&p(!l)},[l,A,f,(e=i.chatButtonStyle)==null?void 0:e.width,(t=s.tooltip)==null?void 0:t.mode]);const x={transform:`translateX(-${g}px)`,right:(((r=i.chatButtonStyle)==null?void 0:r.width)??75)+40,bottom:30,backgroundColor:(n=s.general)==null?void 0:n.secondaryColor,color:"#fff",...i.tooltipStyle},m={borderColor:`transparent transparent transparent ${x.backgroundColor}`};return k.jsx(k.Fragment,{children:!((o=s.general)!=null&&o.embedded)&&k.jsxs("div",{"data-testid":"chat-tooltip",style:x,className:"rcb-chat-tooltip "+(u?"rcb-tooltip-show":"rcb-tooltip-hide"),onClick:()=>d(!0),children:[k.jsx("span",{children:(a=s.tooltip)==null?void 0:a.text}),k.jsx("span",{className:"rcb-chat-tooltip-tail",style:m})]})})},Oi=({id:e,content:t,timeout:r})=>{var n,o;const{settings:a}=ee(),{styles:A}=ie(),[s]=h.useState({toastPromptStyle:{...A.toastPromptStyle},toastPromptHoveredStyle:{...A.toastPromptHoveredStyle}}),{dismissToast:i}=pt(),[c,l]=h.useState(!1),d={color:(n=a.general)==null?void 0:n.primaryColor,borderColor:(o=a.general)==null?void 0:o.primaryColor,...s.toastPromptHoveredStyle};return h.useEffect(()=>{if(r){const u=setTimeout(()=>{i(e)},r);return()=>clearTimeout(u)}},[e,i,r]),typeof t=="string"?k.jsx("div",{onMouseEnter:()=>{l(!0)},onMouseLeave:()=>{l(!1)},style:c?d:s.toastPromptStyle,onMouseDown:async u=>{var p;(p=a.toast)!=null&&p.dismissOnClick&&(u.preventDefault(),await i(e))},className:"rcb-toast-prompt",children:t}):k.jsx(k.Fragment,{children:t})},_i=()=>{var e,t,r,n,o,a,A,s,i,c,l,d;const{styles:u}=ie(),{toasts:p}=Fr(),f={bottom:`calc(${typeof((e=u.footerStyle)==null?void 0:e.height)=="number"?`${(t=u.footerStyle)==null?void 0:t.height}px`:((r=u.footerStyle)==null?void 0:r.height)??"50px"} + ${typeof((n=u.chatInputContainerStyle)==null?void 0:n.height)=="number"?`${(o=u.chatInputContainerStyle)==null?void 0:o.height}px`:((a=u.chatInputContainerStyle)==null?void 0:a.height)??"70px"} + 20px)`,width:300,minWidth:`calc(${typeof((A=u.chatWindowStyle)==null?void 0:A.width)=="number"?`${(s=u.chatWindowStyle)==null?void 0:s.width}px`:((i=u.chatWindowStyle)==null?void 0:i.width)??"375px"} / 2)`,maxWidth:`calc(${typeof((c=u.chatWindowStyle)==null?void 0:c.width)=="number"?`${(l=u.chatWindowStyle)==null?void 0:l.width}px`:((d=u.chatWindowStyle)==null?void 0:d.width)??"375px"} - 50px)`,...u.toastPromptContainerStyle};return k.jsx("div",{className:"rcb-toast-prompt-container",style:f,children:p.map(y=>k.jsx(Oi,{id:y.id,content:y.content,timeout:y.timeout},y.id))})},zr=({file:e,fileType:t,fileUrl:r})=>{var n,o,a;const{settings:A}=ee(),{styles:s}=ie(),i={backgroundColor:(n=A.general)==null?void 0:n.primaryColor,maxWidth:(o=A.userBubble)!=null&&o.showAvatar?"65%":"70%",...s.mediaDisplayContainerStyle};return k.jsx(k.Fragment,{children:r?k.jsxs(k.Fragment,{children:[t==="image"&&r&&k.jsx("div",{style:i,className:"rcb-media-display-image-container rcb-media-entry","data-testid":"media-display-image-container",children:k.jsx("img",{src:r,alt:"Image Display",className:"rcb-media-display-image"})}),t==="video"&&r&&k.jsx("div",{style:i,className:"rcb-media-display-video-container rcb-media-entry","data-testid":"media-display-video-container",children:k.jsxs("video",{controls:!0,className:"rcb-media-display-video",children:[k.jsx("source",{src:r,type:e.type}),"Your browser does not support the video tag."]})}),t==="audio"&&r&&k.jsxs("audio",{"data-testid":"media-display-audio-container",style:{maxWidth:(a=A.userBubble)!=null&&a.showAvatar?"65%":"70%"},controls:!0,className:"rcb-media-display-audio rcb-media-entry",children:[k.jsx("source",{src:r,type:e.type}),"Your browser does not support the audio tag."]})]}):k.jsx(k.Fragment,{})})},Rr=async e=>{if(!e)return{fileType:null,fileUrl:null};const t=e.type.split("/")[0];if(!["image","video","audio"].includes(t))return{fileType:null,fileUrl:null};try{return{fileType:t,fileUrl:await new Promise((r,n)=>{const o=new FileReader;o.onload=()=>r(o.result),o.onerror=()=>n(new Error("File reading failed")),o.readAsDataURL(e)})}}catch(r){return console.error(r),{fileType:null,fileUrl:null}}},Li=()=>{var e,t,r,n,o,a;const{settings:A}=ee(),{styles:s}=ie(),{injectMessage:i,simulateStreamMessage:c,streamMessage:l,removeMessage:d,endStreamMessage:u}=at(),{getCurrPath:p,getPrevPath:f,goToPath:y,blockAllowsAttachment:g}=Gt(),{flowRef:v,inputRef:x}=pe(),m=v.current,{showToast:E,dismissToast:P}=pt(),{dispatchRcbEvent:C}=Le(),{toggleChatWindow:S}=De(),{setTextAreaValue:I}=it(),{handleSubmitText:Q}=ft(),B={cursor:`url("${(e=A.general)==null?void 0:e.actionDisabledIcon}"), auto`,...s.fileAttachmentButtonStyle,...s.fileAttachmentButtonDisabledStyle},O={backgroundImage:`url(${(t=A.fileAttachment)==null?void 0:t.icon})`,fill:"#a6a6a6",...s.fileAttachmentIconStyle},D={backgroundImage:`url(${(r=A.fileAttachment)==null?void 0:r.icon})`,fill:"#a6a6a6",...s.fileAttachmentIconStyle,...s.fileAttachmentIconDisabledStyle};return k.jsxs("label",{"aria-label":((n=A.ariaLabel)==null?void 0:n.fileAttachmentButton)??"upload file",role:"button",className:g?"rcb-attach-button-enabled":"rcb-attach-button-disabled",style:g?{...s.fileAttachmentButtonStyle}:B,children:[k.jsx("input",{className:"rcb-attach-input",role:"file",type:"file",onChange:async M=>{var U,L,F,_;const H=M.target.files;if(!H)return;const b=Array.from(H);if(M.target.value="",(U=A.event)!=null&&U.rcbUserUploadFile&&(await C(j.USER_UPLOAD_FILE,{files:b})).defaultPrevented)return;const X=p();if(!X)return;const w=m[X];if(!w)return;const K=w.file;if(K!=null){const R=[];for(let z=0;z<b.length;z++){if(R.push(b[z].name),(L=A.fileAttachment)==null||!L.showMediaDisplay)continue;const q=await Rr(b[z]);!q.fileType||!q.fileUrl||await i(k.jsx(zr,{file:b[z],fileType:q.fileType,fileUrl:q.fileUrl}),"USER")}await Q("📄 "+R.join(", "),(F=A.fileAttachment)==null?void 0:F.sendFileName),await K({userInput:(_=x.current)==null?void 0:_.value,prevPath:f(),currPath:p(),goToPath:y,setTextAreaValue:I,injectMessage:i,simulateStreamMessage:c,streamMessage:l,removeMessage:d,endStreamMessage:u,toggleChatWindow:S,showToast:E,dismissToast:P,files:b})}},multiple:(o=A.fileAttachment)==null?void 0:o.multiple,accept:(a=A.fileAttachment)==null?void 0:a.accept,disabled:!g}),(()=>{var M,U;const L=g?(M=A.fileAttachment)==null?void 0:M.icon:(U=A.fileAttachment)==null?void 0:U.iconDisabled;return L&&typeof L!="string"?L&&k.jsx("span",{className:g?"rcb-attach-icon-enabled":"rcb-attach-icon-disabled",children:k.jsx(L,{style:g?O:D})}):k.jsx("span",{className:g?"rcb-attach-icon-enabled":"rcb-attach-icon-disabled",style:g?O:D})})()]})},Ni=()=>{var e,t,r,n,o,a;const{settings:A}=ee(),{styles:s}=ie(),{syncedTextAreaDisabledRef:i}=he(),{inputRef:c}=pe(),{textAreaDisabled:l,setTextAreaValue:d}=it(),u=h.useRef(null),p=h.useRef(null),[f,y]=h.useState(!1),g={cursor:`url("${(e=A.general)==null?void 0:e.actionDisabledIcon}"), auto`,...s.emojiButtonStyle,...s.emojiButtonDisabledStyle},v={backgroundImage:`url(${(t=A.emoji)==null?void 0:t.icon})`,fill:"#a6a6a6",...s.emojiIconStyle},x={backgroundImage:`url(${(r=A.emoji)==null?void 0:r.icon})`,fill:"#a6a6a6",...s.emojiIconStyle,...s.emojiIconDisabledStyle};return h.useEffect(()=>{const m=P=>{const C=P.composedPath();u.current&&!C.includes(u.current)&&p.current&&!C.includes(p.current)&&y(!1)},E=()=>{(()=>{if(u.current&&p.current){const P=p.current.getBoundingClientRect(),C=u.current.offsetHeight,S=P.top-C-8;u.current.style.left=`${P.left}px`,u.current.style.top=`${S}px`}})()};return document.addEventListener("mousedown",m),window.addEventListener("resize",E),()=>{document.removeEventListener("mousedown",m),window.removeEventListener("resize",E)}},[]),k.jsxs(k.Fragment,{children:[k.jsx("div",{"aria-label":((n=A.ariaLabel)==null?void 0:n.emojiButton)??"emoji picker",role:"button",ref:p,className:l?"rcb-emoji-button-disabled":"rcb-emoji-button-enabled",style:l?g:{...s.emojiButtonStyle},onMouseDown:m=>{m.preventDefault(),i.current?y(!1):y(E=>!E)},children:(()=>{var m,E;const P=l?(m=A.emoji)==null?void 0:m.iconDisabled:(E=A.emoji)==null?void 0:E.icon;return P&&typeof P!="string"?P&&k.jsx("span",{className:l?"rcb-emoji-icon-disabled":"rcb-emoji-icon-enabled",children:k.jsx(P,{style:l?x:v})}):k.jsx("span",{className:l?"rcb-emoji-icon-disabled":"rcb-emoji-icon-enabled",style:l?x:v})})()}),f&&k.jsx("div",{className:"rcb-emoji-button-popup",ref:u,children:(a=(o=A.emoji)==null?void 0:o.list)==null?void 0:a.map((m,E)=>k.jsx("span",{className:"rcb-emoji",onMouseDown:P=>((C,S)=>{C.preventDefault(),c.current&&(d(c.current.value+S),setTimeout(()=>{const I=c.current;if(I){I.focus();const Q=I.value.length;I.setSelectionRange(Q,Q)}},50)),y(!1)})(P,m),children:m},E))})]})},Hi=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{audioToggledOn:a,toggleAudio:A}=Hr(),s={backgroundImage:`url(${(e=n.audio)==null?void 0:e.icon})`,fill:"#fcec3d",...o.audioIconStyle},i={backgroundImage:`url(${(t=n.audio)==null?void 0:t.iconDisabled})`,fill:"#e8eaed",...o.audioIconStyle,...o.audioIconDisabledStyle};return k.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.audioButton)??"toggle audio",role:"button",onMouseDown:async c=>{c.preventDefault(),await A()},style:a?{...o.audioButtonStyle}:{...o.audioButtonStyle,...o.audioButtonDisabledStyle},children:(()=>{var c,l;const d=a?(c=n.audio)==null?void 0:c.icon:(l=n.audio)==null?void 0:l.iconDisabled;return d&&typeof d!="string"?d&&k.jsx("span",{className:"rcb-audio-icon","data-testid":"rcb-audio-icon",children:k.jsx(d,{style:a?s:i,"data-testid":"rcb-audio-icon-svg"})}):k.jsx("span",{className:"rcb-audio-icon","data-testid":"rcb-audio-icon",style:a?s:i})})()})},Ui=()=>{var e,t;const{settings:r}=ee(),{styles:n}=ie(),{toggleChatWindow:o}=De(),a={backgroundImage:`url(${(e=r.header)==null?void 0:e.closeChatIcon})`,fill:"#e8eaed",stroke:"#e8eaed",...n.closeChatIconStyle};return k.jsx("div",{"aria-label":((t=r.ariaLabel)==null?void 0:t.closeChatButton)??"close chat",role:"button",onMouseDown:A=>{A.stopPropagation(),o(!1)},style:{...n.closeChatButtonStyle},children:(()=>{var A;const s=(A=r.header)==null?void 0:A.closeChatIcon;return s&&typeof s!="string"?s&&k.jsx("span",{className:"rcb-close-chat-icon","data-testid":"rcb-close-chat-icon",children:k.jsx(s,{style:a})}):k.jsx("span",{className:"rcb-close-chat-icon","data-testid":"rcb-close-chat-icon",style:a})})()})},Fi=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{notificationsToggledOn:a,toggleNotifications:A}=(()=>{const{notificationsToggledOn:c,toggleNotifications:l,playNotificationSound:d}=bn();return{notificationsToggledOn:c,toggleNotifications:l,playNotificationSound:d}})(),s={backgroundImage:`url(${(e=n.notification)==null?void 0:e.icon})`,fill:"#fcec3d",...o.notificationIconStyle},i={backgroundImage:`url(${(t=n.notification)==null?void 0:t.iconDisabled})`,fill:"#e8eaed",...o.notificationIconStyle,...o.notificationIconDisabledStyle};return k.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.notificationButton)??"toggle notifications",role:"button",onMouseDown:async c=>{c.preventDefault(),await A()},style:a?{...o.notificationButtonStyle}:{...o.notificationButtonStyle,...o.notificationButtonDisabledStyle},children:(()=>{var c,l;const d=a?(c=n.notification)==null?void 0:c.icon:(l=n.notification)==null?void 0:l.iconDisabled;return d&&typeof d!="string"?d&&k.jsx("span",{className:"rcb-notification-icon","data-testid":"rcb-notification-icon",children:k.jsx(d,{style:a?s:i,"data-testid":"rcb-notification-icon-svg"})}):k.jsx("span",{className:"rcb-notification-icon","data-testid":"rcb-notification-icon",style:a?s:i})})()})},zi=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{injectMessage:a}=at(),{inputRef:A}=pe(),{voiceToggledOn:s,toggleVoice:i}=kn(),{setInputLength:c,setTextAreaValue:l,textAreaDisabled:d}=it(),{handleSubmitText:u}=ft(),p=h.useRef([]),[f,y]=h.useState(!1);h.useEffect(()=>{var E;(E=n.voice)!=null&&E.sendAsAudio?(m(),p.current=[]):u()},[f]),h.useEffect(()=>{s?((E,P,C,S,I,Q,B)=>{var O;(O=E.voice)!=null&&O.sendAsAudio?Di(C,Q):Si(E,P,C,S,I,B)})(n,i,x,l,c,p,A):xn()},[s]);const g={backgroundImage:`url(${(e=n.voice)==null?void 0:e.icon})`,fill:"#9aa0a6",...o.voiceIconStyle},v={backgroundImage:`url(${(t=n.voice)==null?void 0:t.iconDisabled})`,fill:"#9aa0a6",...o.voiceIconStyle,...o.voiceIconDisabledStyle},x=()=>{y(E=>!E)},m=async()=>{const E=new Blob(p.current,{type:"audio/wav"}),P=new File([E],"voice-input.wav",{type:"audio/wav"}),C=await Rr(P);!C.fileType||!C.fileUrl||await a(k.jsx(zr,{file:P,fileType:C.fileType,fileUrl:C.fileUrl}),"USER")};return k.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.voiceButton)??"toggle voice",role:"button",onMouseDown:async E=>{E.preventDefault(),!d&&await i()},style:s&&!d?{...o.voiceButtonStyle}:{...o.voiceButtonStyle,...o.voiceButtonDisabledStyle},className:s&&!d?"rcb-voice-button-enabled":"rcb-voice-button-disabled",children:(()=>{var E,P;const C=s?(E=n.voice)==null?void 0:E.icon:(P=n.voice)==null?void 0:P.iconDisabled;return C&&typeof C!="string"?C&&k.jsx("span",{className:"rcb-voice-icon "+(s&&!d?"on":""),children:k.jsx(C,{style:s&&!d?g:v})}):k.jsx("span",{className:"rcb-voice-icon"+(s&&!d?"-on":""),"data-testid":"rcb-voice-icon",style:s&&!d?g:v})})()})},Ri=()=>{var e,t,r,n,o,a,A,s;const{settings:i}=ee(),{styles:c}=ie(),{textAreaDisabled:l}=he(),[d,u]=h.useState(!1),{handleSubmitText:p}=ft(),f={backgroundColor:(e=i.general)==null?void 0:e.primaryColor,...c.sendButtonStyle},y={cursor:`url("${(t=i.general)==null?void 0:t.actionDisabledIcon}"), auto`,backgroundColor:(r=i.general)==null?void 0:r.primaryColor,...c.sendButtonStyle,...c.sendButtonDisabledStyle},g={backgroundColor:(n=i.general)==null?void 0:n.secondaryColor,...c.sendButtonStyle,...c.sendButtonHoveredStyle},v={backgroundImage:`url(${(o=i.chatInput)==null?void 0:o.sendButtonIcon})`,fill:"#fff",...c.sendIconStyle},x={backgroundImage:`url(${(a=i.chatInput)==null?void 0:a.sendButtonIcon})`,fill:"#fff",...c.sendIconStyle,...c.sendIconDisabledStyle},m={backgroundImage:`url(${(A=i.chatInput)==null?void 0:A.sendButtonIcon})`,fill:"#fff",...c.sendIconStyle,...c.sendIconHoveredStyle};return k.jsx("div",{"aria-label":((s=i.ariaLabel)==null?void 0:s.sendButton)??"send message",role:"button",onMouseEnter:()=>{u(!0)},onMouseLeave:()=>{u(!1)},onMouseDown:async E=>{E==null||E.preventDefault(),!l&&await p()},style:l?y:d?g:f,className:"rcb-send-button",children:(()=>{var E;const P=(E=i.chatInput)==null?void 0:E.sendButtonIcon;return P&&typeof P!="string"?P&&k.jsx("span",{className:"rcb-send-icon","data-testid":"rcb-send-icon",children:k.jsx(P,{style:l?x:d?m:v})}):k.jsx("span",{className:"rcb-send-icon","data-testid":"rcb-send-icon",style:l?x:d?m:v})})()})},ji=(e,t)=>{var r,n,o,a,A,s,i,c,l;const d={[ue.AUDIO_BUTTON]:(r=e.audio)==null?void 0:r.disabled,[ue.CLOSE_CHAT_BUTTON]:(n=e.general)==null?void 0:n.embedded,[ue.EMOJI_PICKER_BUTTON]:(o=e.emoji)==null?void 0:o.disabled,[ue.FILE_ATTACHMENT_BUTTON]:(a=e.fileAttachment)==null?void 0:a.disabled,[ue.NOTIFICATION_BUTTON]:(A=e.notification)==null?void 0:A.disabled,[ue.SEND_MESSAGE_BUTTON]:!1,[ue.VOICE_MESSAGE_BUTTON]:(s=e.voice)==null?void 0:s.disabled},u={},p=f=>f?f.map(y=>{if(typeof y=="string"){if((g=>Object.values(ue).includes(g))(y)&&!d[y]){if(u[y])return u[y];const g=t[y];if(typeof g=="function"){const v=g();return u[y]=v,v}return null}return null}return y}).filter(y=>y!==null):[];return{header:p((i=e.header)==null?void 0:i.buttons),chatInput:p((c=e.chatInput)==null?void 0:c.buttons),footer:p((l=e.footer)==null?void 0:l.buttons)}},qi=()=>{const{settings:e}=ee(),t=h.useMemo(()=>({[ue.CLOSE_CHAT_BUTTON]:()=>k.jsx(Ui,{}),[ue.AUDIO_BUTTON]:()=>k.jsx(Hi,{}),[ue.NOTIFICATION_BUTTON]:()=>k.jsx(Fi,{}),[ue.EMOJI_PICKER_BUTTON]:()=>k.jsx(Ni,{}),[ue.FILE_ATTACHMENT_BUTTON]:()=>k.jsx(Li,{}),[ue.SEND_MESSAGE_BUTTON]:()=>k.jsx(Ri,{}),[ue.VOICE_MESSAGE_BUTTON]:()=>k.jsx(zi,{})}),[]),{header:r,chatInput:n,footer:o}=h.useMemo(()=>ji(e,t),[e,t]);return{headerButtons:h.useMemo(()=>r,[r]),chatInputButtons:h.useMemo(()=>n,[n]),footerButtons:h.useMemo(()=>o,[o])}},Cn=()=>{const{settings:e}=ee(),{styles:t}=ie(),{setSyncedMessages:r,syncedMessagesRef:n}=gn(),{isLoadingChatHistory:o,setIsLoadingChatHistory:a,hasChatHistoryLoaded:A,setHasChatHistoryLoaded:s}=he(),{chatBodyRef:i}=pe(),{dispatchRcbEvent:c}=Le(),l=h.useCallback(async()=>{var d,u;const p=Ct();if(!p||(d=e.event)!=null&&d.rcbLoadChatHistory&&(await c(j.LOAD_CHAT_HISTORY,{})).defaultPrevented)return;a(!0);const f=((u=i.current)==null?void 0:u.scrollHeight)??0;((y,g,v,x,m,E,P,C,S)=>{var I;if(Or=!0,v!=null)try{const Q=Ze(k.jsx(bi,{}),"SYSTEM"),B=m.current.slice(1);x([Q,...B]);const O=v.map(D=>{if(D.type==="object"){const M=Nr(D.content,y,g);return{...D,content:M}}return D});setTimeout(()=>{var D;const M=m.current.slice(1);let U=(D=y.chatHistory)!=null&&D.autoLoad?Ze(k.jsx(k.Fragment,{}),"SYSTEM"):Ze(k.jsx(yi,{}),"SYSTEM");x([...O,U,...M]),S(!0)},500),setTimeout(()=>{if(!E.current)return;const{scrollHeight:D}=E.current,M=D-P;E.current.scrollTop+=M,C(!1)},510)}catch{$e.removeItem((I=y.chatHistory)==null?void 0:I.storageKey)}})(e,t,p,r,n,i,f,a,s)},[e,t,c,n,i,a,s]);return{isLoadingChatHistory:o,setIsLoadingChatHistory:a,hasChatHistoryLoaded:A,showChatHistory:l}},Gi=()=>{var e,t,r;const{settings:n}=ee(),{styles:o}=ie(),{showChatHistory:a}=Cn(),[A,s]=h.useState(!1),i={color:(e=n.general)==null?void 0:e.primaryColor,borderColor:(t=n.general)==null?void 0:t.primaryColor,...o.chatHistoryButtonStyle,...o.chatHistoryButtonHoveredStyle};return k.jsx("div",{className:"rcb-view-history-container",children:k.jsx("div",{onMouseEnter:()=>{s(!0)},onMouseLeave:()=>{s(!1)},style:A?i:{...o.chatHistoryButtonStyle},onMouseDown:c=>{c.preventDefault(),a()},className:"rcb-view-history-button",role:"button",tabIndex:0,children:k.jsx("p",{children:(r=n.chatHistory)==null?void 0:r.viewChatHistoryButtonText})})})},Yi=()=>{var e,t,r,n;const o=Yt(),{settings:a}=ee(),{replaceMessages:A}=at(),{isBotTyping:s,isChatWindowOpen:i,setUnreadCount:c,setSyncedIsChatWindowOpen:l,setSyncedTextAreaDisabled:d,setSyncedAudioToggledOn:u,setSyncedVoiceToggledOn:p,setSyncedIsScrolling:f,syncedIsScrollingRef:y,syncedIsChatWindowOpenRef:g}=he(),{chatBodyRef:v}=pe(),{viewportHeight:x,setViewportHeight:m,setViewportWidth:E,scrollToBottom:P}=De(),{setUpNotifications:C}=bn(),{handleFirstInteraction:S}=(()=>{var O;const{settings:D}=ee(),{hasInteractedPage:M,setHasInteractedPage:U,hasFlowStarted:L,setHasFlowStarted:F}=he(),_=h.useCallback(()=>{var H;if(U(!0),!L&&((H=D.general)==null?void 0:H.flowStartTrigger)==="ON_PAGE_INTERACT"&&F(!0),!window.SpeechSynthesisUtterance)return void console.info("Speech Synthesis API is not supported in this environment.");const b=new window.SpeechSynthesisUtterance;b.text="",b.onend=()=>{window.removeEventListener("click",_),window.removeEventListener("keydown",_),window.removeEventListener("touchstart",_)},window.speechSynthesis.speak(b)},[L,(O=D.general)==null?void 0:O.flowStartTrigger]);return{hasInteractedPage:M,handleFirstInteraction:_}})(),{showChatHistory:I}=Cn(),Q=h.useRef(0),B=h.useRef(!1);h.useEffect(()=>(window.addEventListener("click",S),window.addEventListener("keydown",S),window.addEventListener("touchstart",S),()=>{window.removeEventListener("click",S),window.removeEventListener("keydown",S),window.removeEventListener("touchstart",S)}),[]),h.useEffect(()=>{const O=v.current;if(!O)return;const D=()=>{B.current||(B.current=!0,requestAnimationFrame(()=>{var M,U;if(!O)return;const{scrollTop:L,clientHeight:F,scrollHeight:_}=O,H=L+F<_-(((M=a.chatWindow)==null?void 0:M.messagePromptOffset)??30);f(H),y.current=H,H||(L+F>=_-1&&(O.scrollTop=_-F-1),(g.current||(U=a.general)!=null&&U.embedded)&&c(0)),B.current=!1}))};return O.addEventListener("wheel",D,{passive:!0}),O.addEventListener("touchmove",D,{passive:!0}),()=>{O.removeEventListener("wheel",D),O.removeEventListener("touchmove",D)}},[]),h.useEffect(()=>{var O,D,M;d((O=a.chatInput)==null?void 0:O.disabled),l((D=a.chatWindow)==null?void 0:D.defaultOpen),u((M=a.audio)==null?void 0:M.defaultToggledOn),setTimeout(()=>{var U;p((U=a.voice)==null?void 0:U.defaultToggledOn)},1)},[]),h.useEffect(()=>{var O;(O=a.notification)!=null&&O.disabled||C()},[(e=a.notification)==null?void 0:e.disabled]),h.useEffect(()=>{!y.current&&v!=null&&v.current&&P()},[s]),h.useEffect(()=>{var O,D;if((O=a.chatHistory)!=null&&O.disabled)$e&&$e.removeItem(zt);else if(yn(a),Ct().length>0){const M=Ze(k.jsx(Gi,{}),"SYSTEM");A([M]),(D=a.chatHistory)!=null&&D.autoLoad&&I()}},[(t=a.chatHistory)==null?void 0:t.storageKey,(r=a.chatHistory)==null?void 0:r.maxEntries,(n=a.chatHistory)==null?void 0:n.disabled]),h.useEffect(()=>{var O;o||(O=a.general)!=null&&O.embedded||!navigator.virtualKeyboard||(navigator.virtualKeyboard.overlaysContent=!0,navigator.virtualKeyboard.addEventListener("geometrychange",D=>{if(!D.target)return;const{x:M,y:U,width:L,height:F}=D.target.boundingRect;M==0&&U==0&&L==0&&F==0?(setTimeout(()=>{var _;m((_=window.visualViewport)==null?void 0:_.height)},101),setTimeout(()=>{var _,H;x!=((_=window.visualViewport)==null?void 0:_.height)&&m((H=window.visualViewport)==null?void 0:H.height)},1001)):setTimeout(()=>{var _;m(((_=window.visualViewport)==null?void 0:_.height)-F)},101)}))},[o]),h.useEffect(()=>{var O,D,M,U;if(o)return;i&&(m((O=window.visualViewport)==null?void 0:O.height),E((D=window.visualViewport)==null?void 0:D.width));const L=()=>window.scrollTo({top:0,left:0,behavior:"auto"}),F=()=>Q.current=window.scrollY,_=()=>{var b,X;m((b=window.visualViewport)==null?void 0:b.height),E((X=window.visualViewport)==null?void 0:X.width)},H=()=>{var b;window.removeEventListener("scroll",L),window.removeEventListener("scroll",F),(b=window.visualViewport)==null||b.removeEventListener("resize",_)};return i?(H(),document.body.style.position="fixed",window.addEventListener("scroll",L),(M=window.visualViewport)==null||M.addEventListener("resize",_)):(document.body.style.position="static",H(),window.scrollTo({top:Q.current,left:0,behavior:"auto"}),window.addEventListener("scroll",F),(U=window.visualViewport)==null||U.removeEventListener("resize",_)),H},[i,o])},Wi="https://cdn.jsdelivr.net/gh/react-chatbotify/community-themes/themes",Vi="2592000",jr="RCB_THEME_CACHE_DATA",qr=async(e,t)=>{const{id:r,version:n,baseUrl:o=Wi,cacheDuration:a=Vi}=t,A=n||await(async(v,x)=>{const m=`${x}/${v}/meta.json`;try{const E=await fetch(m);return E.ok?(await E.json()).version:(console.error(`Failed to fetch meta.json from ${m}`),null)}catch(E){return console.error(`Failed to fetch meta.json from ${m}`,E),null}})(r,o);if(!A)return console.error(`Unable to find version for theme: ${r}`),{settings:{},inlineStyles:{},cssStylesText:""};const s=((v,x,m)=>{const E=localStorage.getItem(`${jr}_${v}_${x}`);if(!E)return null;try{const P=JSON.parse(E),C=new Date().getTime(),S=Math.floor(C/1e3);return P.cacheDate+m>=S?P:null}catch(P){return console.error(`Unable to fetch cache for ${v}`,P),null}})(r,A,a);if(s){const v=Gr(e,s.cssStylesText);return{settings:s.settings,inlineStyles:s.inlineStyles,cssStylesText:v}}const i=`${o}/${r}/${A}/styles.css`,c=`${o}/${r}/${A}/settings.json`,l=`${o}/${r}/${A}/styles.json`;let d="";const u=await fetch(i);u.ok?d=await u.text():console.info(`Could not fetch styles.css from ${i}`);const p=await fetch(c);let f={};p.ok?f=await p.json():console.info(`Could not fetch settings.json from ${c}`);const y=await fetch(l);let g={};return y.ok?g=await y.json():console.info(`Could not fetch styles.json from ${l}`),((v,x,m,E,P)=>{const C=new Date().getTime(),S={settings:m,inlineStyles:E,cssStylesText:P,cacheDate:Math.floor(C/1e3)};localStorage.setItem(`${jr}_${v}_${x}`,JSON.stringify(S))})(r,A,f,g,d),{settings:f,inlineStyles:g,cssStylesText:Gr(e,d)}},Gr=(e,t)=>t.split(new RegExp("(?<=})")).map(r=>{const n=r.trim();return n.startsWith("@import")||n.startsWith("@keyframes")||n.startsWith("@media")?n:n?`#${e} ${n}`:""}).join(`
|
|
4
|
-
`),
|
|
1
|
+
(function(Le,E){typeof exports=="object"&&typeof module<"u"?E(exports,require("react/jsx-runtime"),require("react"),require("react-dom/client"),require("react-dom/server")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom/client","react-dom/server"],E):(Le=typeof globalThis<"u"?globalThis:Le||self,E(Le.AccessQABot={},Le.jsxRuntime,Le.React,Le.ReactDOMClient,Le.ReactDOMServer))})(this,function(Le,E,f,Xc,la){"use strict";function ca(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const he=ca(f);function Ur(e,t){t===void 0&&(t={});var r=t.insertAt;if(e&&typeof document<"u"){var n=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}Ur('.rcb-chat-header-container{border-bottom:1px solid #ccc;color:#fff;display:flex;justify-content:space-between;max-height:55px;padding:12px}.rcb-chat-header{display:flex;flex-direction:row}.rcb-bot-avatar{background-size:cover;border-radius:50%;height:30px;margin-right:12px;width:30px}.rcb-message-prompt-container.visible{align-items:center;animation:rcb-animation-pop-in .3s ease-in-out;bottom:0;display:flex;justify-content:center;margin:auto;opacity:1;pointer-events:auto;position:sticky}.rcb-message-prompt-container.hidden{height:0;opacity:0;pointer-events:none;visibility:hidden}.rcb-message-prompt-text{background-color:#fff;border:.5px solid #adadad;border-radius:20px;color:#adadad;cursor:pointer;font-size:12px;padding:6px 12px;transition:color .3s ease,border-color .3s ease;z-index:9999}.rcb-message-prompt-container.hidden .rcb-message-prompt-text{padding:0}.rcb-user-message-container{display:flex;flex-direction:row;justify-content:right}.rcb-user-message{border-radius:22px;font-size:15px;height:fit-content;margin-right:16px;margin-top:8px;min-height:20px;overflow:auto;overflow-wrap:anywhere;padding:12px 16px;text-align:right;white-space:pre-wrap;width:fit-content}.rcb-user-message-offset{margin-right:50px}.rcb-user-message-entry{animation:rcb-animation-user-message-entry .3s ease-in backwards}.rcb-message-user-avatar{background-size:cover;border-radius:50%;height:40px;margin-left:-10px;margin-right:6px;margin-top:9px;width:40px}.rcb-bot-message-container{display:flex;flex-direction:row}.rcb-bot-message{border-radius:22px;font-size:15px;height:fit-content;margin-left:16px;margin-top:8px;min-height:20px;overflow:auto;overflow-wrap:anywhere;padding:12px 16px;text-align:left;white-space:pre-wrap;width:fit-content}.rcb-bot-message-offset{margin-left:50px}.rcb-bot-message-entry{animation:rcb-animation-bot-message-entry .3s ease-in backwards}.rcb-message-bot-avatar{background-size:cover;border-radius:50%;height:40px;margin-left:6px;margin-right:-10px;margin-top:9px;width:40px}.rcb-typing-indicator{align-items:center;display:flex}.rcb-dot{animation:rcb-animation-bot-typing 1s infinite;background-color:#ccc;border-radius:50%;height:8px;margin-right:4px;width:8px}.rcb-dot:nth-child(2){animation-delay:.2s}.rcb-dot:nth-child(3){animation-delay:.4s}.rcb-chat-body-container{height:100%;overflow-x:hidden;overflow-y:scroll;padding-bottom:16px;position:relative;touch-action:pan-y;width:100%}.rcb-chat-body-container::-webkit-scrollbar-track{background-color:#f1f1f1}.rcb-chat-body-container::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:4px}.rcb-chat-body-container::-webkit-scrollbar-thumb:hover{background-color:#cfcfcf}.rcb-chat-body-container::-webkit-scrollbar-corner{background-color:#f1f1f1}.rcb-checkbox-container{display:flex;flex-wrap:wrap;gap:10px;margin-left:16px;padding-top:12px}.rcb-checkbox-offset{margin-left:50px!important}.rcb-checkbox-row-container{align-items:center;animation:rcb-animations-checkboxes-entry .5s ease-out;background-color:#fff;border-radius:10px;border-style:solid;border-width:.5px;cursor:pointer;display:flex;gap:5px;max-height:32px;min-height:30px;overflow:hidden;width:80%}.rcb-checkbox-row-container:hover{box-shadow:0 0 5px #0003}.rcb-checkbox-row{align-items:center;cursor:pointer;display:inline-flex;margin-left:10px}.rcb-checkbox-mark{align-items:center;background-color:#f2f2f2;border:none;border-radius:50%;cursor:pointer;display:flex;height:20px;justify-content:center;margin-right:10px;transition:all .3s ease;width:20px}.rcb-checkbox-mark:hover{background-color:#c2c2c2}.rcb-checkbox-mark:before{content:"✓";transition:all .3s ease}.rcb-checkbox-label{font-size:14px}.rcb-checkbox-next-button{align-items:center;animation:rcb-animations-checkboxes-entry .5s ease-out;background-color:#fff;border-radius:10px;border-style:solid;border-width:.5px;cursor:pointer;display:inline-block;font-size:24px;max-height:32px;min-height:30px;text-align:center;width:80%}.rcb-checkbox-next-button:before{content:"→"}.rcb-checkbox-next-button:hover{box-shadow:0 0 5px #0003}.rcb-options-container{display:flex;flex-wrap:wrap;gap:10px;margin-left:16px;max-width:70%;padding-top:12px}.rcb-options-offset{margin-left:50px!important}.rcb-options{align-items:center;animation:rcb-animation-options-entry .5s ease-out;border-radius:20px;border-style:solid;border-width:.5px;cursor:pointer;display:inline-flex;font-size:14px;justify-content:center;overflow:hidden;padding:10px 20px;transition:background-color .3s ease}.rcb-options:hover{box-shadow:0 0 5px #0003}.rcb-line-break-container{align-items:center;display:flex;justify-content:center;max-height:45px;padding-bottom:5px;padding-top:10px}.rcb-line-break-text{color:#adadad;font-size:12px;padding:6px 12px}.rcb-spinner-container{align-items:center;display:flex;justify-content:center;max-height:45px;min-height:35px;padding-bottom:5px;padding-top:10px}.rcb-spinner{animation:rcb-animation-spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;height:22px;width:22px}.rcb-chat-input{align-items:center;background-color:#fff;border-top:1px solid #ccc;display:flex;padding:8px 16px}.rcb-chat-input::placeholder{color:#999}.rcb-chat-input-textarea{background-color:#fff;border:none;border-radius:4px;color:#000;flex:1;font-family:inherit;font-size:16px;height:auto;min-height:38px;outline:none;overflow-y:scroll;padding:8px;resize:none;touch-action:none}.rcb-chat-input-textarea::-webkit-scrollbar,.rcb-chat-input-textarea::-webkit-scrollbar-thumb{background-color:initial}.rcb-chat-input-textarea::-webkit-scrollbar-thumb:hover{background-color:initial}.rcb-chat-input-char-counter{font-size:14px;margin-left:8px;margin-top:3px}.rcb-chat-footer-container{align-items:flex-end;background-color:#f2f2f2;border-top:1px solid #ccc;color:#000;display:flex;font-size:12px;justify-content:space-between;max-height:55px;padding:12px 16px 8px 10px}.rcb-chat-footer,.rcb-toggle-button{display:flex;flex-direction:row}.rcb-toggle-button{border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 4px #0003;cursor:pointer;height:75px;position:fixed;right:20px;width:75px;z-index:9999}.rcb-toggle-button.rcb-button-hide{animation:rcb-animation-collapse .3s ease-in-out forwards;opacity:0;visibility:hidden}.rcb-toggle-button.rcb-button-show{animation:rcb-animation-expand .3s ease-in-out forwards;opacity:1;visibility:visible}.rcb-toggle-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:inherit;height:100%;margin:auto;width:100%}.rcb-badge,.rcb-toggle-icon{align-items:center;display:flex;justify-content:center}.rcb-badge{background-color:red;border-radius:50%;color:#fff;height:25px;position:absolute;right:-6px;top:-6px;width:25px}.rcb-chat-tooltip{border-radius:20px;box-shadow:0 2px 6px #0003;cursor:pointer;font-size:20px;padding:16px;position:fixed;transition:transform .3s ease;white-space:nowrap;z-index:9999}.rcb-chat-tooltip-tail{border-style:solid;border-width:10px 0 10px 10px;content:"";margin-top:-10px;position:absolute;right:-10px;top:50%}.rcb-chat-tooltip.rcb-tooltip-hide{animation:rcb-animation-tooltip-out .5s ease-in-out;opacity:0;visibility:hidden}.rcb-chat-tooltip.rcb-tooltip-show{animation:rcb-animation-tooltip-in .5s ease-in-out;opacity:1;visibility:visible}.rcb-toast-prompt{animation:rcb-animation-pop-in .3s ease-in-out;background-color:#fff;border:.5px solid #7a7a7a;border-radius:5px;color:#7a7a7a;cursor:pointer;font-size:12px;margin-top:6px;padding:6px 12px;text-align:center;transition:color .3s ease,border-color .3s ease;width:100%;z-index:9999}.rcb-toast-prompt-container{align-items:center;animation:popIn .3s ease-in-out;bottom:0;display:flex;flex-direction:column;justify-content:flex-end;left:50%;margin:200 auto auto;opacity:1;pointer-events:auto;position:absolute;transform:translate(-50%)}.rcb-media-display-image-container,.rcb-media-display-video-container{border-radius:22px;margin-right:16px;margin-top:8px;padding:16px;width:fit-content}.rcb-media-display-offset{margin-right:50px!important}.rcb-media-display-image{border-radius:22px;height:auto;object-fit:cover;width:100%}.rcb-media-display-video{background-color:#000;border-radius:22px;height:auto;width:100%}.rcb-media-display-audio{border-radius:22px;height:auto;margin-right:16px;margin-top:8px;width:100%}.rcb-media-entry{animation:rcb-animation-user-message-entry .3s ease-in backwards}.rcb-attach-button-disabled,.rcb-attach-button-enabled{background-size:cover;border-radius:6px;display:inline-block;height:30px;position:relative;text-align:center;width:30px}.rcb-attach-button-disabled input[type=file],.rcb-attach-button-enabled input[type=file]{display:none;height:100%;position:absolute;width:100%}.rcb-attach-button-enabled{cursor:pointer}.rcb-attach-button-disabled{opacity:.5}.rcb-attach-button-enabled:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-attach-button-enabled:hover:after{height:130%;opacity:1;width:130%}.rcb-attach-icon-disabled,.rcb-attach-icon-enabled{background-repeat:no-repeat;background-size:cover;display:inline-block;height:24px;margin-top:2px;transition:background-image .3s ease;width:24px}.rcb-attach-icon-enabled{cursor:pointer}.rcb-emoji-button-disabled,.rcb-emoji-button-enabled{background-size:cover;border-radius:6px;cursor:pointer;display:inline-block;height:30px;position:relative;text-align:center;width:30px}.rcb-emoji-icon-disabled,.rcb-emoji-icon-enabled{background-repeat:no-repeat;background-size:cover;display:inline-block;font-size:20px;height:24px;margin-top:2px;position:relative;width:24px}.rcb-emoji-icon-enabled{cursor:pointer}.rcb-emoji-icon-disabled{opacity:.5}.rcb-emoji-button-enabled:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-emoji-button-enabled:hover:after{height:130%;opacity:1;width:130%}.rcb-emoji-button-popup{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 4px #0003;max-height:200px;overflow-y:auto;padding:8px;position:absolute;transform:translateY(calc(-100% - 30px));width:158px}.rcb-emoji{cursor:pointer;font-size:24px;padding:3px;transition:transform .2s ease-in-out}.rcb-emoji:hover{transform:scale(1.2)}.rcb-audio-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-audio-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-audio-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-close-chat-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-close-chat-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-close-chat-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-notification-icon{background-size:cover;border:none;cursor:pointer;display:inline-block;height:30px;margin-left:5px;position:relative;width:30px}.rcb-notification-icon:after{background-color:#0000001a;border-radius:50%;content:"";height:0;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .2s ease-out,height .2s ease-out,opacity .2s ease-out;width:0}.rcb-notification-icon:hover:after{height:130%;opacity:1;width:130%}.rcb-voice-button-disabled,.rcb-voice-button-enabled{align-items:center;background-color:#fff;border-radius:4px;box-shadow:0 0 3px #0000004d;cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin-left:8px;text-transform:uppercase;transition:all .3s ease;width:32px}.rcb-voice-button-enabled{border:1px solid red;box-shadow:0 0 3px #ff000080}.rcb-voice-button-enabled:hover{border:1px solid #3d0000}.rcb-voice-button-disabled{border:1px;border-color:#0003;border-style:solid}.rcb-voice-button-disabled:hover{box-shadow:0 0 3px #8a0000}.rcb-voice-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;background-size:contain;height:60%;object-fit:cover;width:60%}.rcb-voice-icon.on{animation:rcb-animation-ping 1s infinite}.rcb-send-button{border:none;border-radius:4px;box-shadow:0 0 3px #0000004d;cursor:pointer;display:inline-flex;height:32px;justify-content:center;margin-left:8px;text-transform:uppercase;transition:background-color .3s ease;width:51px}.rcb-send-icon{background-position:50%;background-repeat:no-repeat;background-size:cover;background-size:contain;height:50%;object-fit:cover;transform:translateY(20%);width:50%}.rcb-view-history-container{align-items:center;display:flex;justify-content:center;max-height:45px;min-height:35px;padding-bottom:5px;padding-top:10px}.rcb-view-history-button{align-items:center;background-color:#fff;border:.5px solid #adadad;border-radius:20px;color:#adadad;cursor:pointer;display:inline-flex;font-size:12px;justify-content:center;max-width:60%;padding:6px 12px;transition:color .3s ease,border-color .3s ease}.rcb-view-history-button>p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rcb-chatbot-global{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;z-index:9999}.rcb-chat-window{background-color:#fff;border-radius:10px;bottom:20px;box-shadow:0 2px 4px #0003;display:flex;flex-direction:column;height:550px;overflow:hidden;position:fixed;right:20px;transition:all .3s ease;width:375px}.rcb-window-embedded .rcb-chat-window{bottom:auto;opacity:1;position:relative;right:auto;visibility:visible}.rcb-window-open .rcb-chat-window{animation:rcb-animation-expand .3s ease-in-out forwards;opacity:1;visibility:visible}.rcb-window-close .rcb-chat-window{animation:rcb-animation-collapse .3s ease-in-out forwards;opacity:0;visibility:hidden}@keyframes rcb-animation-expand{0%{opacity:0;transform:translate(100%,100%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-collapse{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%,100%) scale(0)}}@keyframes rcb-animation-ping{0%{filter:brightness(100%);opacity:1}50%{filter:brightness(50%);opacity:.8}}@keyframes rcb-animation-bot-message-entry{0%{opacity:0;transform:translate(-100%,50%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-user-message-entry{0%{opacity:0;transform:translate(100%,50%) scale(0)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes rcb-animation-bot-typing{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}@keyframes rcb-animation-pop-in{0%{opacity:0;transform:scale(.8)}70%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}@keyframes rcb-animations-checkboxes-entry{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes rcb-animation-options-entry{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes rcb-animation-tooltip-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes rcb-animation-tooltip-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}@keyframes rcb-animation-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}',{insertAt:"top"});const ge={AUDIO_BUTTON:"audio-button",NOTIFICATION_BUTTON:"notification-button",CLOSE_CHAT_BUTTON:"close-chat-button",SEND_MESSAGE_BUTTON:"send-button",VOICE_MESSAGE_BUTTON:"voice-button",FILE_ATTACHMENT_BUTTON:"file-attachment-button",EMOJI_PICKER_BUTTON:"emoji-button"},Fr="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xml:space='preserve'%20viewBox='0%200%201000%201000'%3e%3crect%20width='100%25'%20height='100%25'%20fill='%23fff'/%3e%3cg%3e%3crect%20width='45'%20height='30'%20x='-22.5'%20y='-15'%20rx='1.5'%20ry='1.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-99%20362)%20scale(3.4003)'/%3e%3cpath%20d='M0%2075q14%200%2014%2017%200%2016-14%2016Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(180%20106%20386)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='4'%20x='-12.5'%20y='-2'%20rx='.2'%20ry='.2'%20style='stroke:%2346648c;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-46%20282)%20scale(3.4003)'/%3e%3cpath%20d='M19%2065h4l5%204v1H14v-1Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='2'%20x='-12.5'%20y='-1'%20rx='.1'%20ry='.1'%20style='stroke:%2398b0ca;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20-3%20240)%20scale(3.4003)'/%3e%3ccircle%20r='7.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(236%20175)%20scale(3.4003)'/%3e%3crect%20width='45'%20height='30'%20x='-22.5'%20y='-15'%20rx='1.5'%20ry='1.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20139%20600)%20scale(3.4003)'/%3e%3cpath%20d='M184%2075q14%200%2014%2017%200%2016-14%2016Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='4'%20x='-12.5'%20y='-2'%20rx='.2'%20ry='.2'%20style='stroke:%2346648c;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20219%20548)%20scale(3.4003)'/%3e%3cpath%20d='M175%2065h4l5%204v1h-14v-1Z'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2346648c;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3crect%20width='25'%20height='2'%20x='-12.5'%20y='-1'%20rx='.1'%20ry='.1'%20style='stroke:%2398b0ca;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2398b0ca;fill-rule:nonzero;opacity:1'%20transform='rotate(90%20262%20505)%20scale(3.4003)'/%3e%3ccircle%20r='7.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(767%20175)%20scale(3.4003)'/%3e%3crect%20width='116.7'%20height='70'%20x='-58.4'%20y='-35'%20rx='31.5'%20ry='31.5'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2371c9fc;fill-rule:nonzero;opacity:1'%20transform='translate(502%20877)%20scale(3.4003)'/%3e%3crect%20width='60'%20height='20'%20x='-30'%20y='-10'%20rx='3'%20ry='3'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2337547a;fill-rule:nonzero;opacity:1'%20transform='translate(502%20728)%20scale(3.4003)'/%3e%3ccircle%20r='75'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%2371c9fc;fill-rule:nonzero;opacity:1'%20transform='translate(502%20473)%20scale(3.4003)'/%3e%3crect%20width='129.4'%20height='82.3'%20x='-64.7'%20y='-41.1'%20rx='37'%20ry='37'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23fff;fill-rule:nonzero;opacity:1'%20transform='translate(502%20464)%20scale(3.4003)'/%3e%3crect%20width='108'%20height='68.6'%20x='-54'%20y='-34.3'%20rx='30.9'%20ry='30.9'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23162334;fill-rule:nonzero;opacity:1'%20transform='translate(502%20464)%20scale(3.4003)'/%3e%3ccircle%20r='19.4'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(415%20464)%20scale(3.4003)'/%3e%3ccircle%20r='19.4'%20style='stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23a478fc;fill-rule:nonzero;opacity:1'%20transform='translate(591%20464)%20scale(3.4003)'/%3e%3crect%20width='96'%20height='53.2'%20x='-48'%20y='-26.6'%20rx='23.9'%20ry='23.9'%20style='stroke:%23162334;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:4;is-custom-font:none;font-file-url:none;fill:%23162334;fill-rule:nonzero;opacity:1'%20transform='translate(503%20875)%20scale(3.4003)'/%3e%3cpath%20stroke-linecap='round'%20d='m68%20215%207-15M81%20222l-7-22M81%20222l7-14M101%20208H87M114%20219l-7-24M113%20219l13-22M131%20214l-5-17M148%20214h-18M69%20214H51M100%20209l7-15'%20style='stroke:%23a478fc;stroke-width:3;stroke-dasharray:none;stroke-linecap:butt;stroke-dashoffset:0;stroke-linejoin:miter;stroke-miterlimit:10;is-custom-font:none;font-file-url:none;fill:none;fill-rule:nonzero;opacity:1'%20transform='translate(165%20150)%20scale(3.4003)'/%3e%3c/g%3e%3c/svg%3e",zr=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 0 637 637",ref:t,...e},he.createElement("path",{d:"m478 113-13 2-4 1h4l14-2c10-2 35-2 42-1l6 3 3 1c3 0-4-3-8-5-7-1-34-1-44 1m56 6 8 6c7 5 20 17 20 19s7 12 8 12l-3-6-4-6c0-3-15-17-25-24-5-3-8-4-4-1m-198 16-9 1a512 512 0 0 1 9-1m-180 30a412 412 0 0 0-23 4 167 167 0 0 0-32 8 439 439 0 0 1 46-9 304 304 0 0 1 11-2l6-1h-8m369 8 4 3-7-6c-1 0 0 2 3 3m-439 9c-7 3-18 13-18 15l6-5c5-5 9-8 14-10l6-4-8 4m442 12-10 11-7 6 7-6c7-5 14-14 13-16l-3 5M65 205l-1 11c0 9 0 10 4 17 5 10 7 12 22 11 10 0 15 0 38-5l5-1-6 1-16 2-21 2c-13 1-16-1-21-10-3-5-4-6-4-15l1-12c1-4 1-5-1-1m335 1c3 0 3 1 3 3l-2 6c-2 5-35 39-76 80-53 51-120 117-138 137-21 24-22 25-22 27 0 3 6 9 9 9 4 0 14-8 38-27a5073 5073 0 0 1 15-16 1421 1421 0 0 0-17 15l-31 25-6 2-4-3c-3-3-3-4-2-6 3-8 79-85 160-163 57-57 79-80 79-86 0-2-3-4-7-4-2 0-2 0 1 1m165 18c-9 17-25 32-57 53l-10 8 16-11 12-8c15-10 27-22 39-39 5-7 6-8 4-8l-4 5m-221 2a199 199 0 0 0-19 10 183 183 0 0 1 27-12c0-1-1-1-8 2m-34 16c-3 3-2 3 2 0l1-2-3 2m151 3-1 2 2-2c3-3 2-3-1 0m-16 12-11 10a281 281 0 0 0 11-10m-24 18-7 5-7 5-42 31c-10 7-24 19-22 19l7-6 16-12a343 343 0 0 0 35-25 573 573 0 0 0 20-17m-187 0-2 2 4-2 3-2-5 2m-14 6-3 2 4-1 4-3-5 2m-7 3-8 4-18 8 18-7 7-3 3-1c1-2 0-2-2-1m254 24a2672 2672 0 0 1-71 54 601 601 0 0 0 39-29 1352 1352 0 0 1 32-25m-291-8-2 2 4-2 3-2-5 2m-13 5-2 2h3c5-3 4-4-1-2m-19 9-7 3-13 6c-10 5-13 7-14 10-3 4-2 5 1 0 2-3 5-5 14-9l13-6 12-6-6 2m178 36c-17 12-21 16-21 17a390 390 0 0 1 20-17m-206 34 1 4 1 3 1 5 2 8 1 5v-6l-1-8-2-5-1-4-1-2c-1-2-1-2-1 0m222 23-9 7a683 683 0 0 0-56 44 261 261 0 0 0-26 20 1345 1345 0 0 0-46 34c-6 3-7 3-19 3-11 0-12 0-18-3-8-4-10-8-17-20l-5-10 4 10c5 10 12 18 19 22 4 2 6 2 17 2 13 0 14 0 21-3l26-19 42-33a2183 2183 0 0 0 43-34 643 643 0 0 1 24-20",fill:"#fff",fillRule:"evenodd"}),he.createElement("path",{d:"M478 114a620 620 0 0 1-39 6l-21 3a5481 5481 0 0 0-19 3 870 870 0 0 1-54 8l-1 1-6 1-12 2-13 2a992 992 0 0 0-76 12 400 400 0 0 1-45 8l-6 1-5 1h-3l-3 1-2 1-26 4-13 2-17 3c-23 5-33 9-43 19-7 8-9 13-9 27 0 8 1 9 4 14 5 9 8 11 21 10l21-2a1133 1133 0 0 1 23-4 659 659 0 0 0 74-14l3-1h3l3-1h3l2-1 2-1h3l2-1h2l24-5 38-7a2100 2100 0 0 1 93-18l3-1 10-1a2082 2082 0 0 1 120-17l2 1c2 0 8 5 8 7l1 2 1 6c0 4 0 6-3 10-2 4-16 16-18 16l-7 5-10 8a1070 1070 0 0 0-11 7 113 113 0 0 1-20 14l-2 2-3 2-2 2h-1a154 154 0 0 1-28 21l-5 4-5 4a573 573 0 0 1-50 37 175 175 0 0 0-24 18l-1 2-2 1-2 1-2 1-1 1-12 10a396 396 0 0 0-32 25l-8 6-6 5-9 7a326 326 0 0 1-25 20l-13 12a5073 5073 0 0 0-17 15c-24 20-34 27-39 27-2 0-8-6-8-9 0-2 1-3 22-27 18-20 85-86 138-137 41-41 74-75 76-80l2-6c0-2 0-3-2-3l-7 1a233 233 0 0 1-26 9l-1 1-1 1h-1l-1 1h-2l-3 2-1 1h-2l-3 2h-1l-5 2-22 10-9 4-4 2-5 2-10 4-2 1-2 1-2 1-13 6a334 334 0 0 1-38 17 75 75 0 0 0-14 6l-5 2-4 1-2 1-3 2-7 3-16 6a247 247 0 0 0-32 14l-1 1h-2l-1 1h-2l-1 1-12 6a103 103 0 0 0-27 15l-2 5-1 1v11l1 5 1 5 1 4c0 3 0 4 2 4v3l1 3 1 2 2 10 1 4 1 5 2 10 2 8 1 4 1 4c3 3 9 25 11 38l1 7v2l1 4v1l1 1v2l1 2 1 3v1l5 10c7 13 9 16 17 20 6 3 7 3 18 3 12 0 13 0 19-3 8-4 11-6 26-18a1345 1345 0 0 1 85-67 683 683 0 0 1 50-39l12-9a513 513 0 0 1 44-33 201 201 0 0 0 22-17 2270 2270 0 0 0 73-54 158 158 0 0 0 58-59c2 0 3-9 4-27l-1-19-1-4-1-6-1-3-4-6-4-6c0-2-6-8-13-14a77 77 0 0 0-28-18c-6-1-34-1-43 1"}))),Rr=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M765-321q0 117-84 196-83 80-200 80-118 0-200-80t-83-196v-392q0-85 61-144 61-58 146-58 86 0 147 58 61 59 61 144v374q0 54-39 92-39 37-93 37-55 0-93-37-38-38-38-92v-372h110v372q0 9 6 14t15 5q8 0 15-5t7-14v-374q0-39-29-66t-68-27q-40 0-69 27t-29 66v392q0 71 51 119t122 48q71 0 122-48t51-119v-426h111v426Z"}))),ua=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M125-165v-113h77v-273q0-93 55-167 56-75 146-100v-19q0-32 22-55 23-23 55-23t55 23q22 23 22 55v19q90 25 146 99 56 73 56 168v273h77v113H125ZM480-32q-38 0-66-27-27-27-27-66h186q0 39-27 66t-66 27Z"}))),da=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M137-190v-113h78v-253q0-41 11-79 11-39 35-71l-9 150h10L17-802l74-74L873-92l-74 74-175-172H137Zm609-149L319-769q20-15 41-25t44-16v-28q0-32 22-54t54-22q32 0 55 22t22 54v28q85 23 137 94t52 160v217ZM481-47q-38 0-65-27t-27-65h184q0 38-27 65t-65 27Z"}))),pa=f.forwardRef((e,t)=>he.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",ref:t,...e},he.createElement("g",{strokeLinecap:"round",strokeWidth:10},he.createElement("path",{d:"m19 19 61 61M80 19 19 80"})))),fa=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M94-136v-255l351-93-351-92v-253l816 346L94-136Z"}))),ha=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M480-372q-61 0-105-43-43-43-43-105v-240q0-61 43-105 43-43 105-43 61 0 105 43 43 44 43 105v240q0 62-43 105t-105 43ZM425-76v-122q-121-16-197-108t-76-214h109q0 91 64 154t155 63q91 0 155-63t64-154h109q0 122-77 214T534-198v122H425Z"}))),ga=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"m763-343-80-79q8-20 13-44 5-23 5-54h109q0 49-11 95t-36 82ZM625-482 336-770v-2q3-56 45-96t101-40q62 0 105 43t43 105v249l-1 17q-1 7-4 12ZM427-76v-122q-120-16-196-108-77-92-77-214h109q0 91 64 154t155 63q43 0 80-14 37-15 67-41l78 79q-35 32-78 53t-93 28v122H427Zm362 27L41-796l75-75 748 748-75 74Z"}))),jr=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M625-511q29 0 50-21t20-50q0-29-20-50-21-20-50-20t-50 20-20 50q0 29 20 50 21 21 50 21Zm-290 0q29 0 50-21t20-49q0-30-20-50t-50-21q-29 0-50 20-20 21-20 50 0 30 20 50 21 21 50 21Zm145 268q75 0 137-43t85-115H258q24 72 85 115 62 43 137 43Zm0 198q-90 0-170-34-79-34-138-93T79-310q-34-80-34-170t34-170q34-79 93-138t138-93q80-34 170-34t170 34q79 34 138 93t93 138q34 80 34 170t-34 170q-34 79-93 138T650-79q-80 34-170 34Zm0-435Zm0 322q134 0 228-94t94-228q0-134-94-228t-228-94q-134 0-228 94t-94 228q0 134 94 228t228 94Z"}))),ma=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M553-64v-108q107-27 173-113 67-87 67-197 0-109-67-195T553-789v-108q152 26 249 144 97 117 97 271 0 155-97 273T553-64ZM61-335v-290h176l236-237v764L237-335H61Zm492 28v-346q51 23 82 70t31 103-31 103q-31 47-82 70Z"}))),ya=f.forwardRef((e,t)=>he.createElement("svg",{viewBox:"0 -960 960 960",ref:t,...e},he.createElement("path",{d:"M807-15 700-123q-33 21-71 37-38 15-80 22v-108q20-4 38-12l35-17-153-154v257L234-335H57v-290h144L10-818l74-75L882-90l-75 75Zm37-264-80-79q13-30 19-60 7-31 7-64 0-109-68-195-67-86-173-112v-108q152 26 249 144 98 117 98 271 0 55-14 107-13 51-38 96ZM661-462 549-575v-78q51 23 83 70 31 47 31 103l-1 9-1 9ZM469-655 366-759l103-103v207Z"}))),qr={general:{primaryColor:"#42b0c5",secondaryColor:"#491d8d",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif",showHeader:!0,showFooter:!0,showInputRow:!0,actionDisabledIcon:"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='32'%20viewBox='0%200%2042%2042'%3e%3cpath%20style='fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:%23b00000;stroke-opacity:1;stroke-miterlimit:4'%20d='M17%209a8%208%200%200%201-8%208%208%208%200%200%201-8-8%208%208%200%200%201%208-8%208%208%200%200%201%208%208Zm0%200'%20transform='rotate(.086)%20scale(1.77778)'/%3e%3cpath%20style='fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:%23b00000;stroke-opacity:1;stroke-miterlimit:10'%20d='M14.66%2014.66%203.34%203.34'%20transform='rotate(.086)%20scale(1.77778)'/%3e%3c/svg%3e",embedded:!1,flowStartTrigger:"ON_LOAD"},tooltip:{mode:"CLOSE",text:"Talk to me! 😊"},chatButton:{icon:zr},header:{title:E.jsx("div",{style:{cursor:"pointer",margin:0,fontSize:20,fontWeight:"bold"},onClick:()=>window.open("https://github.com/tjtanjin/","_blank","noopener,noreferrer"),children:"Tan Jin"}),showAvatar:!0,avatar:Fr,buttons:[ge.NOTIFICATION_BUTTON,ge.AUDIO_BUTTON,ge.CLOSE_CHAT_BUTTON],closeChatIcon:pa},notification:{disabled:!1,defaultToggledOn:!0,volume:.2,icon:ua,iconDisabled:da,sound:"data:audio/wav;base64,UklGRmaIAABXQVZFZm10IBAAAAABAAIAQB8AAAB9AAAEABAATElTVBoAAABJTkZPSVNGVA4AAABMYXZmNjAuMTYuMTAwAGRhdGEgiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////AAAAAAAA//////7/////////AAABAAAAAgABAAEAAQAAAAIAAQABAP//AAD+////AAD+//7////+////AAD//wAA/v8AAAAA/v8AAP//AAAAAAAAAgD////////+////AAABAAEAAgD/////AQABAAAA//8CAP//AAAAAAAA/v8AAAAA//8AAAEA//8EAAAAAAAAAAAA//8BAP//AQABAAEA/////wEA/v///wAAAAACAAAAAAABAAAA//8AAP//AAACAP//////////AAAAAAEAAAAAAAEA//8AAAEAAQADAAIAAgAAAAAA/v///wEAAAAAAAEAAAAAAAEA//8AAAEAAQD//wAA//8AAAEAAAABAAEAAAABAP//AAD//wAAAgAAAP//AQD/////AAAAAP7/AgAAAAIAAAAAAAAAAAABAAAAAQABAP//AAABAP///v8AAP////8AAP//AAD//wAA//8BAP//AAD///7///8BAP7///8AAAIAAgABAAEA/v8AAP//AQADAAEAAAACAAEA/////////v///wEA/v////7/AAD+////AAAAAAAAAgAAAAAAAAD//wEAAAAAAAAAAQABAAIA/v8AAAAA//8AAAEAAAAAAP//AgD//wEA/////wAAAQACAAAAAAAAAP//AQD/////AQAAAAEA/v8AAAEAAQABAAEA///+////AQD//wEAAgD+//7/AAAAAAAAAQAAAAAAAQAAAAAAAAAAAP//AAD//wEAAQD//wAAAQABAP7///8AAP7/AAABAP7/AQABAAEAAAABAAEAAAD+/wIAAAABAAAAAQD/////AQACAP////8AAP//AQD//wEA/v8CAAEAAAAAAAAAAQAAAAIAAQAAAAEAAgD//wEAAAAAAP7///8BAP//AgAAAP///v8CAAAAAgD///////////7/AAACAAEAAgD//wAAAAABAP//AwAAAAMA//8AAAAAAQD+/wAAAAD//wAAAQD//wEA//8BAP7/AAABAAAA//8BAAAA//8AAP//AQADAP3////+////AgD+/////v8BAAEAAQACAAAAAAAAAAAA//8AAP//AAD+/wEA/v8AAP7/AAD//wAAAQACAAAAAQAAAP//AQAAAAAAAAABAAAAAAD+//////8AAAAAAAD//wAAAAABAAEA//8AAAEA//8AAP//AgD+/wAA///+/wAA/v///wAAAQABAAAAAQD//wAA//8AAAEA//8BAAAAAgABAP//AAACAAIAAQABAP//AAAAAAAA//8BAAIAAAABAAAA//8CAAEA/v//////AAAAAAEA////////AQAAAP//AAD//wAAAAAAAP3/AAAAAAEAAAACAAAAAAAAAP//AAD//wAAAAAAAAAAAAAAAP///v///wAAAAABAAAAAAD//wEAAAABAAEAAQD//wAAAAACAAAAAQD+/wAA//8BAAEAAAD+/wAA/////wAAAAABAAAAAAD//////v8AAAAA//8AAAAAAAAAAAIAAAABAAEAAAABAP7/AAD9//////////7///8BAP//AAD///3/AQABAP//AAD//wAAAAABAAAA//8AAP//AAD/////AQABAAEA//8AAAAA//8BAAMA//8AAAAA//8AAP7/AAD//wAAAAAAAP7/AQAAAAAA/v8CAP//AAABAAIAAQABAAAA//8BAAEAAQD///7/AQD//wAAAQABAP//AAD//wEAAAAAAAAAAQAAAAIA//8AAP////8AAP//AQD//////v///wEA/v8AAAIAAgACAAEAAAAAAAEAAAAAAAAAAAAAAAAAAQD//wAA/////wAAAQACAP////8AAAAAAAD//wAAAQD+/wEA//8AAAEAAwD//wEAAQAAAAAAAAABAP////8AAAAAAQAAAAAAAAAAAAEAAQAAAP////////7/AQABAAEAAQD///////8BAAAA//8AAAAAAgABAAEA/v8BAP7///8BAP3/AQABAAIAAAD//wEAAAAAAP//AAABAAIA//8CAAAAAQAAAAEA//8BAAAA/////wAAAAD//wEAAQD//wAAAAAAAP//AAAAAAAAAQABAAAAAQAAAP//AQD//////v8AAAEAAAAAAAAA//8AAAAAAAACAAEAAQAAAP//AAABAAEA/////wAAAgABAAAAAAAAAAEAAAABAP//AQABAP7////+/wEAAAAAAP//AAABAAAAAAABAAEAAAAAAAAA//8BAP///f/+/wEAAQD///7///8AAAAAAQAAAP////8AAAAAAAABAAAAAQD/////AAD//wEA//8AAAIA//8CAAAA//8AAAAAAAD+/wEAAAD+/wAA/////wAA////////AAAAAAAA//8BAAAAAAD//wAAAAD//wEA//8AAP//AQD+/wAAAAAAAP7/AAD+/wEAAQABAP//AAABAAEAAQD//wAA/////wEA//8AAAAAAgAAAAAA//8BAAAAAgAAAAAAAAAAAP7/AQD//wAAAAD+/wAAAAADAAIA/////wAAAQD//wIA//8BAAEA/v8AAAIAAAAAAP3///8AAAAAAAAAAAAAAAABAP///////wAA//8AAAEAAQABAAEAAQABAAAAAQAAAAAAAQABAP7/AQD//wAAAQABAAEA//8BAAAAAgAAAAEAAAABAP//AAD/////AAD//wIA/////wIAAAD///7/AAAAAAAAAAACAP//AAABAP////8AAAAAAAABAAAAAgAAAAAAAQD+/wEA/////wAA/////wAAAAAAAAAA/v//////AAAAAP//AAABAAAAAQAAAAIAAAACAAAA//8AAAAA//8AAP7/AAAAAP//AAACAP//AQABAP//AQABAAAA/////////v8AAP//AQAAAAAA///+/wAAAQD+/wEAAQAAAAEA/////wAAAQD//wAA//8AAAAA/v8BAAEA//8AAP7//v8BAAAAAAAAAAEA//8AAAEA/////wAAAAD//////////wEAAAABAAEA//8CAAEA/f8AAAAA//8BAAAABAABAAEAAQAAAAAAAAAAAP7///8AAAAA/v8BAAAA//8AAAIA//8AAP////8BAP//AAAAAAAAAAD/////AQD///7/////////AQD8////AgABAAIA////////AAD//wAAAAABAAAAAAAAAAEAAgAAAP//AQD//wAAAAAAAP/////+/wAAAAABAAAAAwABAP///////wEAAAADAP//AQACAAAA//8CAAEAAAAAAP///////wIAAAAAAAAAAQAAAAAAAgD//wEAAAABAAAA/v8AAAAAAAAAAAAAAAAAAAEA/v8AAP//AQD//wAA//////7///8AAAAAAAAAAP7/AQD//wAA//8AAAEAAAABAAEAAQD/////AAD//wEAAAD/////AQAAAAEAAAD//wEAAAD/////AgD//wAAAQD//////////wAAAAD//wAAAAABAAAAAAD//wAAAQD///7/AQD//wEAAAD/////AAD//wEA//8AAAEA//8CAAAAAQD//wEAAgAAAAEAAwAAAAAA/v8BAAEAAgD//wEAAAAAAAAAAAD//wEA//8AAAAAAQACAP///////wAAAQABAAEAAAAAAAEAAQD+/wEA/f////////8AAAAA//8AAAEA//8BAAAA/v///wEAAAAAAAEA/////wAAAAAAAP//AAAAAAIAAAABAAAA/////wAAAAD//wAA/v8AAAMAAQD+/wEAAAABAAEA//8BAP//AgAAAAAAAAD//wAA/////wEA/v8CAP3/AAACAP3/AQABAAAAAQACAAEA/v8AAAAA//8BAAAAAgAAAAAAAgACAAEA/v/9/wAAAQABAP7///8AAP//AgD+/////v8CAP////8BAP//AQACAAEAAQABAP//AAD///7/AAABAAEAAgD//wEA//8CAAEAAQABAAEAAAABAAAA/v8AAAEA/v8AAP//AAABAP//AQAAAAEAAgAAAAAA/v///wEAAQAAAAIAAAD/////AgAAAAEA/v8AAP7/AQAAAAAAAQAAAAEAAAACAAEA//8BAP////8AAAIAAAAAAP//AAAAAAIAAAAAAAAAAwABAP///v8BAAAAAAAAAP3/AAABAAEA/v////////////3//v8AAAAAAQABAAIAAAD+/////v8AAAAAAQABAAEAAQAAAP//AAAAAP//AQAAAP//AAABAAAAAAAAAAAA////////AAAAAP//AQD/////AAABAAEA//8CAP7///8AAP7//v8BAAEAAAD+/////////wEAAAAAAAAAAgD//wAAAQAAAP7/AQABAP//AQAAAAAAAAD/////AAACAP////8BAAAAAAD//wAA//8AAAEAAQABAAAAAAABAAAAAQD+/wEA/v8AAAEAAQD/////AAD//wAAAQABAP7//v//////AAACAAAAAAAAAAAAAAACAAAAAQAAAAAA//8BAP//AQD//wAA///+/wIAAQD//wAAAAD//wAA/v8AAP3///8AAAAAAAAAAAAA/f8AAAAA//8CAP7/AAD///7/AAAAAAAAAAD//wEAAAAAAAEAAAAAAAAA//8BAP////8BAP7///8CAAEA//8BAP3///////////8BAAAAAAAAAAEAAgD+//////8BAAMAAQADAAEAAAACAAAAAQD/////AAABAAMAAQAAAP//AQD//wAA//8AAAAA//8CAP7//////wAAAAAAAAIA/v8AAP//AAACAP//AwD//wAA//8AAP//AwD//wEAAQABAAEAAQACAAEAAAD//wAA//8AAAIAAAAAAP///////wAAAQD//wIA//8BAP7/AAD///////8AAAAAAAAAAAEAAAD//wAAAQD//wEA//8BAAAAAAD/////AgABAAIAAAABAAAAAAAAAP//AAAAAAAA//8AAAAAAAD/////AQAAAAAAAQD//wAA///+////AAAAAAEAAgABAAEAAAAAAP//AQAAAAAAAQD+/wAAAAABAAEAAAD/////AQABAP7///8AAAIAAAACAAAA//8AAP//AgACAAAA///+/wAAAAABAAAAAQAAAAEA/v8BAAEA//8CAP//AQD+/////v8AAAAAAAACAP//AAD+/wIA/v8BAAAAAAD/////AAAAAP7///8AAP7//////wEAAAABAAAAAAD//wAAAAAAAAAAAgACAAAAAAABAAAA/f8AAP7/AgAAAAEA//8BAAAAAAD///7/AQD//wAAAAAAAAEAAAAAAAEAAAAAAAAAAQAAAAAA//8AAAAAAAABAP///////wAAAgABAAEA//8AAP//AAACAP//AQABAAEA//8BAAAAAAABAAAA//8AAAEAAAAAAAIA/v8BAP//AQD//wEAAAABAAEAAQACAAEAAAAAAAEAAAABAAAAAAD/////AAABAAEA//8AAAAAAQABAP//AAAAAP//AAD/////AQD//wAAAAABAAEA//8BAAAA//8AAP///f/+/wAA/////wAAAQAAAAIAAAAAAAAAAAD+/wEA/f8CAAAA//8AAAEAAgAAAAMAAAABAAAAAAAAAP//AQAAAAAAAQABAAAAAQAAAP//AAAAAAAA//8AAAAAAAABAAAAAQAAAAAAAAABAAIAAAAAAP7/AQD//wAAAAD+////AAAAAAAAAAABAAAA/////wAA//8AAAAAAAD/////AgD//wAA//8CAP//AQACAAEA/f////////8BAAIAAQABAP//AAD//wAA///+////AAD+/wAAAQD/////AAAAAAAA/////wAAAAABAAAAAQAAAAAA//8AAAIAAAABAP//AQABAAEA//8AAAAAAAADAAEAAAABAP//AgD//wMA//8AAAAAAAD//wAAAAD9/wEA///+/wAA//8BAAEA//8BAAAA//8AAP///v8BAP///////////v8BAAAAAQABAAAAAAAAAAAA//8AAP7/AQAAAAAAAAAAAP7/AQAAAAAAAgABAAEAAAABAAEAAAAAAAAAAAD+/wAAAAD//wEAAAAAAAAAAAAAAP//AgABAAAAAAABAAEAAAD/////AAAAAP//AAABAP////8BAAAAAQABAP7//v/+////AQAAAAAAAQAAAAEAAgAAAAAAAQAAAAEAAAD+/////v8BAP//AAABAP//AQABAAAAAAD//wAA//8CAP//AAAAAAEAAAABAAAAAAAAAP//AAD+////AwAAAAAAAQD//wEAAAACAAEAAAADAAAAAAD/////AAAAAAEAAAABAAAA//8AAAEA//8BAP///v8AAP//AAD//wAAAQABAP//AQAAAAAA/////wEAAQAAAP////8AAAEA//8BAAAAAQAAAP////8AAAAAAQAAAAIAAQAAAAEAAAAAAAEAAAD//wEAAAAAAP////8AAAAA//8BAAEAAAAAAAIA///+/wIA/v8BAAAAAQACAAAAAQAAAP7///8AAP//AAAAAAEAAAAAAP7/AAD+////AAAAAAAAAAD//wAA/v8BAAMAAAABAAIAAgD//wAA//8BAAEA//8BAP7/AAAAAP7///8BAAAAAQAAAP7/AQD/////AAAAAAEAAAABAP//AQABAAAAAgABAAAAAAAAAP///////wEA//8AAAEA//8AAAAAAQAAAAIAAAABAP7//////wAAAQABAAAAAAABAAEA///+/wAA//8BAP///v8AAP///v8BAAAA//8CAAAAAQAAAAEAAQABAAAAAAD+/wAAAAD+/wAAAAAAAAAA/f////////8AAAAAAQABAP///////wEA//8BAAEAAAAAAAAA/////wEA/v//////AAAAAP//AAABAAAAAAD+/wAAAAD9////AQAAAAEAAwD//wEAAQAAAP//AgAAAAAAAAD+/wIAAAAAAAAAAAAAAAIA//8AAAEAAQACAAAAAQD//wAAAAD//wIAAQABAAAAAAD//wEA//8BAAEAAQAAAAAAAQABAP7/AAD//wEAAAACAP7/AQAAAAAAAAD//wIAAQACAAIAAQAAAAAAAAAAAP3///8BAAAAAQACAP//AgD9/wAAAAD//wEA/v////////8AAAAAAAD//wEAAQD//wMAAQAAAAEA//8AAAEA//8AAAAAAAACAAAAAAD//wAAAQD///////8AAAAA//8BAAIA/v8BAAEA/f8AAAAAAAAAAAAAAgD/////AAD+/wAAAAD//wAAAAAAAP//////////AgABAP///v8AAAIAAQAAAP//AAABAAAA/////wAAAAAAAAEAAAABAP///v///wIA//8BAAEAAQAAAAAA///+/wEAAAAAAAAA/////////v8BAP3/AAAAAAAAAAAAAAAA//8AAP//AAAAAP//AAABAAIAAAACAP////8DAAAAAAABAAAAAwABAP//AAABAP//AAAAAP////8BAAAAAgD//wAA///+/wAAAQD//wAA//8AAP7///8AAAAA/v8AAAAAAQD//wEA/v////////8AAAAAAQAAAP//AQACAAAAAAAAAP//AAD//wAAAAD//wAAAAD+/wAAAAAAAP//AQD//wAAAgAAAAAAAQABAAAAAwD+/wAAAAD///7/AQD//wIAAQAAAP//AAD//wAA//8CAAEAAAAAAAAA/////wAAAAD//wEAAQD///////8BAAAA//8BAAEAAAAAAAAA/v///wEAAAAAAAAAAAADAAAAAAAAAAAAAQABAAEAAAD+//7//v8AAP//AQAAAAAAAAABAAEAAgAAAAAAAQD//wAA/f8AAAAAAAABAAAAAQAAAAAAAAAAAAIA//8BAP///////wIA/////wAAAAABAAEA//8BAAAAAAD//wAAAQD//wEAAAAAAAIA/v8BAP//AAAAAAEAAAABAP//AAAAAAAAAQABAP7/AAABAAAAAQD//wIAAAAAAAEA///+/wAA//8AAP//AAAAAAAAAAABAP///////wIAAQAAAAEAAQAAAP7/AQAAAAAAAQAAAAAAAQD/////AQAAAAAA///+//7/AAD+/wEA//8AAAAA///+/wEAAAABAAIAAQABAAAA//8AAP//AAD//wAAAAD//wAAAAAAAP//AQAAAAAA////////AQAAAAAAAQD+////AQABAP7/AAD///7/AgD//wAAAAAAAP//AAAAAAEA//8BAAEAAgAAAAIAAAD//wEA/////wAAAQD///7/AQD//wEAAQD/////AAAAAAEAAgAAAAAAAQD//wEA//8AAP7//////wAA//8BAAEA//8BAAAAAQD/////AAABAP//AAACAP//AQAAAP//AAABAP////8AAAAAAAABAAEAAwABAAAAAgD//wAAAAD//wEAAAABAAAAAAABAAEA/////wAA//8AAAIAAAAAAAEAAQABAAEAAQABAP//AgAAAAAA//8BAP3//v///wAA//8AAAAAAQAAAP//AQD//wEAAAACAAIAAAABAAAA//8BAAEA//8BAP//AAAAAP//AQAAAAIAAAD//wAAAAAAAAEA////////AQAAAP//AQD//wAAAQD+/wEAAAABAP///v///wAAAAAAAP//AAAAAAIAAQD//wAAAgD+/wAAAAD//wAAAAABAP///P//////AAACAP////8AAAIAAAABAAAAAAAAAAAA//8AAAAAAQADAP//AQAAAAAAAAABAAEAAQAAAAAA/v8AAAAAAAD//wAAAQD//wAAAAD//wAA/v////////8CAAEA/v8BAP7/AAAAAAAA//8AAAEAAAD//wIAAQAAAAIAAQAAAAAAAAD///7/AQABAP//AAAAAP//AAACAAEA//8BAAAAAwAAAAAAAAD//wEAAAD//wAA///////////+/wAAAQABAAIAAAABAAEAAAD//wEAAAD/////AAD+/wIAAwABAAEA/v8BAAEAAAD//wAA//8AAP//AAAAAAEAAAAAAP//AAAAAAEAAQABAAEA/v///wAAAAD//wEAAAACAAAA/f/+/wAA/v///wAA//8AAAEAAQD///7/AAAAAAAAAAABAAAAAAACAAAAAAABAAAAAAABAP//AQD//wAA//8BAP7/AgABAAEAAQAAAAAAAQD//wEA/v8AAP////8AAP///////wIAAQD//wAAAAD//wAA/v///wAAAQD//wIA/////wEAAAAAAAIAAAABAAAAAAD//wEA//8AAAAA/////wAAAQAAAAAAAAD//wEAAQAAAAAAAAACAP///////wAAAgD//wAA/v8AAAIAAAAAAAEAAAABAP//AQABAAEAAQAAAP///v8BAAEAAAAAAP////8AAAAAAQD//wIAAQAAAAEAAAAAAAAA//8BAP//AAAAAP7//v///wEAAAAAAAIAAAAAAP//AAD//wEA//8BAAAAAAABAAEAAAABAP7///8AAAIAAAABAP//AAD//wEAAAAAAP//AAAAAAEAAAAAAAAAAAAAAP7/AQD//wAAAQD+/wEA/v8BAP7/AAABAAEAAAACAAIAAAADAAAA//8AAAEAAAABAP//AQD//wIA/////wEA//8AAAEA//8AAAEAAAAAAAAAAQABAAAAAAAAAAAAAAD//////////wAA//8AAP7/AAD+/wAAAQAAAAAA/////wAABAAAAAAA//8AAAEAAAAAAAAA/v8AAP//AAAAAAAAAAD//wAAAAD///////8BAAEAAAD/////AgABAAEA/v/+/wAAAQACAAEAAAD//wAAAwABAP//AgD+/wAA/v8AAAAAAAAAAAEA//8AAAEAAAD+/wEAAAAAAAEAAgAAAAEAAAABAP//AQD+/wIA/////wAAAQD//wAAAQD+/wAAAQABAAAA////////AAACAAAAAQAAAAIA//8BAP///v///wEA//8BAAEAAQD+/wAAAQD9/wAAAQAAAAEAAAABAAAAAgAAAP//AAD+/wAA/f8AAAAA////////AgAAAAcAAQD7/wEA/f8AAAIA//8GAP7//v/+//b/AQD//wQADgD///3/9/8FAPr/6/8EABAACQD9/wIA/P/5/w4A///t/wQA/P8LAB0ACQD5////AQD2/+7/AgD6//r//v/z/xIA9f8oAAMA4f8OANz/EQAdAAAA5P/w/2MAAQDq/w0A1/8bALz/BgDb/+j/lQD9/yMABAACAA0Alf8NAKr/CwCMAPD/QwDq/wkA9v+g/wgAk/8QAD0ABgAWAAQAMwD7/9T/8//f//z/JwAEAOL/DwBxAAwAzf/+/xUA8v+O//H/fAD5/xUA+/9m//P/yf/r/y8ACAAbAEQA3f9AAAcB9f/p/sD/+QHv/8/9EQCv+ez/j+v8/3pS7/83By4AF6Go/7PNjgDMEn7/Sk0NAeEfIv+9DCwAKfuY/9fRAv2A3mjzfQg/Ft3fzTQE703jljkirPskFOdBEUYzORerLDvvDg7C6dcbwNJj/b/CisId8XfblBZS/oYksP1YRdoQJjjDJbwGNSTX66wU48FG8Iu1eM+/5ITdKwGN8jUTGfehN3oUszrBH7kmdhFKB+YNheG6B9fOivltwZ38JMcC66z7o9pJNBnxgTdvCjIvJg+GG7MMlQUJFJL5hCZ61IQap7895EXN8Msh6NjdpxE07wU5Nf+kRH8Q2TrWHZkYhSYj5ygQgMu19dK86/YRw8jmHuuM4W8Qbv5ZLRgHY0o+ARU6uwKJE20PlfdwIXTNRxCMuj/2VMpT9GDjYOkhCEXj7iUA9dw5hgMGRv0K0yz0FXv0URP01aENm8LuBEm/OfEJ3UXsrwCA7scgnOqlQLv+2EE0ELEoMBUWA20W49bZDLLFYfq6wsDsttSk77f7uPvdHIkCojVN9kJJxvkaMtUHnQSVEmbdqB4+v2ELnr5F6vvZvumY9ujyGBvO8Hk7X/54PcoIBzJ/C0IOqQ7M3SQNcMhaDWDDIgXy0FLqd/OR2/0WS/fzLn0HVEImB0Q0VQYxEJsHh+tMEaLLuwznxCH7UM8z8pXmjPRhDfrwJzLP+xE+YALhOkkCOhqyDvLoSA2ezOQHA8gJBzXOofoa4YHxuxEa76Ys2+zRPCX4jTG6Fq0dww9C+I8LBczmCmjDxgPZzK737+Zg7RUOT/asKAX2rTfj7z066f+pHd0dRu8dGvfW/wdHw18Bp8oc9VnnxPAgCJP0Eyok7qk/HfWDNd4GZhaDD3LyxBjV1EAZHM1pB6bQa/Dq4//pqAcQ7h0iq/ETMxz4QDjXB2oeaReV9owM+t49BcXMRwt4yeT/DODq82sDoe7KJm/rEzr49DguBQbSGrcS7vyRGLDWQAhHzKn7U9Y+AQvotfbMBCPw7R3++Ncv6fvRMPj+HBj2Bcj6DgzF4kMNIs5dBkrSDPz+6eT9PwFY+iMaru4+MSzyGTHY/SocuQpy/WgNZt6DCTvQUwd20XEFA+Rz/YoEPvdKHnrv1Swb8pMwQ/2QHGwDqPsaCNfhwRD9z/MOpNNcBUjopf7OANny4hkY7TcvSvSWLVn7ihr7BAoBwQoM45cL2NGGDNfSGQm940EBZwJY+IYbPPArKabruy5V+NgcvAGm/4IFzeRHDxrR2xDP1XEJCOno/SX+z/QzF4DxWyvQ/Lkqw/6jG5T5XwLgAA7mlAa91ZwM5tUSDmnllgMx/3T2sRZ287UnxfckKxX+exrTAmwEUv/u6qICM9XGB2jTWQZ65gb/Q/0L/lkS3fyUJUT2vC6F+fkiFwUsA5gJd+R+AiPVcASv1gIHzueb+tn/2fPhEMzzvyGG+q4rEgOVIbcLsgjBEsbmHgxw0gP6DNo/8vDo0/mn+O34UhBW+Egmbv7FKjMCWB4vCcIEfAzX6zgHJtnhAifUYAAU6MP3Zf5L88IN7vLsIW/0tSu/Asce7hGMBtMPhu4PC5TatgNB1rP9reLY9pD43u8wEKLyoR+O+ssoCQSiI50JbQxtEEzwfgpT2tYA2NV4/b/hhvh39Yz0twqD9F8fivmGKscDOiUvDBkNMwe/8aoGoN8uC/XXnQKc3Z3zevHk8v0Js/bXGvT3mSfS/3MokwjBEokPzPesDdLiyQNN1BD7eNgw8yfwRvqYCFX+MxpR9UIovPaLJzEI5BNgDxP8uwtn4gILV9c0AQjaAPXe6tTyewNI9AMX1Pj5KNb/mSqOB3oaog3l/rkL1eP9BOrRi/961j/69Oqk9FwBNfdzGFH6vChI+lsr9wQ/G+EIggDFCv3nWwqZ1NwDC9M0+6Pllfen/nP4bxTM9uMldPcQLlP+NSOcCWsHeA2K6UQK0NRiCCPRiv9t4CD4Pfgy9TESMPFSJ7r2tjFNAzol1whnBu8N/unNDZTY/wP91G77od/H9pr1DfTpDUr2pSF7+rAspABzJ7wKiA6TDb3voQnM2BwEOtV+/Kbh5/YT9KPxJQh99r8cXwKFKWsDLiXNBYcT5At1+T0KJN5X/h3TbPr23qH7fvJS+tkDbvWzFYL2MCgIBGMqkAy8Fi8P9vsWC6jimv8a1B71udoY9BLuc/aUAlT6wRa0/R4nlgPFKYYLJBnoC7/9Vgh446UB59Ud/NraHPkL7Ob1WgIS9TYXxvhAJigDTSRVDZQVlw2vAA0GI+uB/wzbIfu+2kz7hOm5+S/9sva8EVH5NCK0/0EoDwZAHIoLZQMpDtDrQAoH3Lj9yNqI8NXmZe7P+bT3qw7o/9IgrgNPJ78HvB3oC0AIfQ1G8OAIpN6C/t7ay/Cc49zoC/da83AK7gCdGsAIjCfgC1cjOw23DQ8MT/ReBKbg+Png1RPx3d7K8KH29PfkDDT7shxpAcEiLgzpHnoScw5hDSD4ygSA41P9OtvQ8rbicuvW8w3wLAbM/msWMQeRIjULSyCNEeAP6g6m+SEFFeYk+Y/enO9r5Anwb/Ge9kgD3fuKFSoD8B7ZChAe3w8xEpwQdv1+BVzqRvbO37LvqOF68efvnfdYAXr+fxHEA34flQsjIO4UvRNRD/MAnf0L7Mf08dyH7+PfL/Ab7yD2LQCMAMcRKA2sHmYQKyESDTYXOQhHAaYAKOtw9QDfu+1e3vvt7OxI+Yb/FQXHDicL5h6eEPAiYBBJFycHGAT0+kXtuvCr3xPuR+D38vXpjP3p+cQHfQ7TC2Yedg4nIuwMDBnoAxMF5vhh86vxXuM28evasPNf5UH9SfpNB5sNzAwXHM0RRiMDDxodjQIlCaH1TfC88abgku+j39TwUOf4+Rb3TQoYCsET8BgJEHkj0AtkHkIE6wk292rzRfCD4zjvEN/s8OvmL/3J9BsK8gaLDtYZbw/9IRcMQx1tBOMNe/rf9kfxOOQZ79Hc/vUH48P8rfVTBMEJ/AoxGEMKBSF5Cz4exgvlDZIBevig9ETl7u7q3BbvfuNk9gfyGAB6BdIM8BfZFHYi7A2/IbADJBIIAMb49fjg5GjwAdsN76vfwfSG8tIAIQZXCgQWow4yIiwS3yFUDQ4Tt/5w/YbyhOa/76Xag+/73xP2Yu9fAS8BHQmeErEP7SKwErUnaw0tGPL/H/0D8zfmpe0c2r/t/9zv8nbs0QCRAKQNqxN1E1wjyBNiJRwKZRdT/G4B4fP56sXvidyS7qLbufT+5zcBjP3uCdYSuQzZIDURxCW4EB8cwwWuBB74Y+zd7rDbA+sm2fbtRudn+U/9VwdIEX0SQSC7FP8l1w5JHFAIFAdd/LXs7+3j2nbqkdoy7+fn9fmM/FQHsg+rDkUetA7AJB0QOxziCrMHO/058Y3zMd0G7o7Yvuwa53T2mvstBVIOoQxXHdMOCyToDVAdJwp1CQUCZe/e9eTejO9P3VXu4OdE8xD6IAD6CqELvRjkEDsiqxGXHfIK3gqf/+z0/fRL4jPsv9yl7uXnY/pA+PYB7Ai0CA8Xkw4GHngPFxxfDY0OmQN5+FTxeOZH6gTgjfBK5Zn4hfM3BOkFEwvOFR4LPx+jDvAcbA20DdYBp/kX9jHpNO6I4ZHs4uVy9D/zWwBxBGgMDRRZEI4cBg5wG0QNdRD0BlX8IffZ6IjsQ+Au6z3mO/Et9br90gS0CLQR3w/PGgAUTRsLEX8PSwfg/Kr58etY7FzjVOgw57fuHfSc+XcDAwg1ECMT7xfnFegXdxOKD2wHkf9w9nvvuu0F5hrpl+ck7Cj0+/gZAuoHzwwhFDIWYxn4F90Rmg6NBFABNfdY8n7s9+Yw6k3oxu388oX6pP/oCoQMpxIhFu8TyBccEmIP6QY4AQL3IPMJ7DLp5+Y/6KPuofFz/QH/rQnECoYSdxVQFSoYTw+LEIYGwQIm/Bn0c+9m6dboJOju6M/wbPPY/TIHawrgFbMT7BuTFygWWxJOCEgERfuw9Kztaekx4pHnFeSR8LT0K/13B/QICBaSE/obIxeGGM0SxQ4xB5H7lfYO6pLpLOOY53Hn1e4Q9Pj6MwPsCHkPIRM0Gb4W+BvUEU0QDgck/3L5PvBe7FHmYueY5LTuDewl+Ur7owUGEHUPdR6fGH0eCw3dEl4XVACdEwHxLNa/50a1MuIt45DoNTRF/Zw3zg1uCq0YnNwEIfLjOxeBAFAF7Ssx8MsokN7oDM3fuM8ZCaCv3w3tyMbeFgjG3qNTfSLbaAhczkBvPtHE0+0hjHisCKhzqKALluMRTGUoxU11SNURRy++yhf048Zc1p314e1zN0INPT3sGycYhQtBykjleKcJyZG62dKGFI8EAmEoPsVfelSSGaktksvG8WGvD79aubutwv4o1JQ9nxZDVEcwWg6XJ5bBeRVKuO4Bkff58iU/rvgRT7ASsR0OBYDDetkun5zHj7wo2oETMgmEW6xAeWhvTSoriCRRzxXsnJ7LxW6tSr7l9nzhEEUIHdhUxi3CFIMXINC5/sq+oPFt5Ovz5CQADrVNlyRjL0AWpOPd4DaoQsFHrm/KivMx8TxFViy/ZktPiTvoQBLwLwkMsIfRnK49tL3fOslTKhz+C0nMK8koDjP+6bQYR8j/7IndStuzDp/+OTqJJoQxySOK/9jxy8FgyEO0LMUd2HLthB+CJRJaSkbQURc6SwxAEui/9tY4rE21Ksz10xcTYgQEQogiATrtHFIAggvh0Vv56NA383X2+wEALFMcoDooG58WjPji1EnKjbNdx73KIeuXEKMYSUo8QO5Q/UN3H74biNYu28itib5lwlfIoAHc8ZM1YiMsPJcylRN2DlrjFuwy05btpOWEARAVeBs2O8kp6R7vBwjg1sLivi+7WNAz3v38AxQONJU3YlFfTT4voDIW6/Xti7Y4utO337ay6lvf8yzzG3s/WjccJ6YXjO28AHrLcPRa4CbuuRIJBF4x/CaeHjUYD/NI373HbcWxxj3V2/JF9ukxFiaoTvVUPTNtP43v/Pz9uvm/orvyswTobtj4IqwPaDzANPYmOCUJ894Bc9Wx6k3dXe2DCIwMgixjIhgp2RCJ/Ebui8gMzAy988kc5mTrPi4gItdWCU09P+tK7PWoFXm4wdQttCCtS+NUslsfjPCvPWE0+y1nSjr8+SGr0uHwh9Wx3gP/H++5KkEIUy9bGVIHew890t/nt7vHyW3ad9BVHOEBGVC1PEJI2VenEfMylMqP8iiov7b6xKOowQsayYVEDhTwPl9N7gssQc/YcxKY0jXghfJ02zEiuewLMMIQGQz1HR/WQgPhvUPeCdyGyeQU9tvhR9oYxknZY3UaXV5i0zAQxK9zsvjA45AA/GSvwjarAA1AYVDKFmxhcuKTKOTYBuGa8I3IMRbg1wklJA2RETUtqOTHGvbHld6X2HW81QZey4M38wx0RnVc2SbsbxjmvS6aubfEWMBshQjvSJPzI9ru6jc1TX8gHmy89B45uN4B75Xr+cQ1C+jPvR7P/mMSKic67uAfrc8P7GzWmMeOADrLejG1Aq1CnkPoJcJkqe9xObDFjeARwZSY/OZ0kwocedhqNEI1tCDfaCP7aUbk5X8C5ev2zfoDIMWmGqjrFhWAI9v0ZyuT0+j9NtU9ySL5ab2IJR7vez9mP9krE3Is/HdKfc0F5wfE8ZGT4R2Q/RBUz8EqGC1gIbNnCgSVUYjq1wlH7tTKhwN3xPIWdefOD9YfZfWpLtTccwlU2/jOdfQmvWkbs+MCNkwtNC7GZHQGwlLk2GkAE8VZpkHb9I3IBmm+kiIkHwAoWGTEEHxWKvHkCR7los8f9SDILA5B5xYXtBgpCSQuVeu8D4PYCNc65Pu+/QiJ3YktTCHQNdddZBopWk3pfQidxBWsT8wSkUT17MHLIdwTNjCCUGUZk1Og9aIbEeN/217t6sdrB0TkLxz4EtgO3CuT7zQPQ9vq2pThPMLt/hLfnyMXGrw3JE9UIeRSyfIeFmnOqchazLOiPusYuCkT0PPOKYk5rSERTf4Cvyrc6TH13Ogf2vf98eJ3E/b/hRHcGdb5FA0w4j7mF+CSzsT4KuGZHCkTmTA7Riklf054/p8awdfWz8fLBaeo4ZG5EwpN9msoMjRoJRZHIgZ5JwvtOPVe7DXb0f1e5Y8NCALKDbAWNv3gD3joPfD84g7Pg/TN1PATfQTwKL9ACiRgVbIGniuY5f/kgdSxsJXebq4F/cHV4RsVGQkjTUh0D1BEAflnFE7uBOQP9VPVRAXs6L0OdQqsBJ0Zgu/XBn7j3d7j7uzNGAwM7IEmuyXSKHhQ1wy6RZDkxAWVz9q85N2RnfEBzsAQH2UJISCYRpENtk3F9+Ihpu6y62T009BoBFni3g9+CwQHqyLE8vgI++SA2nnthcQEBdLh1CDrHpYoRVXqEsJT5e6ZEXTWOcVg2Juhj/IutksVbfSpJc85jRpcTx0Aty0J7cz2Iu0P2Dn+rODLC70A8wnyFor6EgyF69/tyuus0+L9Et0nGN4FmiWpOZEZRU9x+HAva90/6VTYGa4Z66WoPwkH1rAh2R0rIbpJSAn7Quvw3BSk6cznCPZX130HiuUOD14EhwLLEZjucgB66A/kePf04IQQffksJcUmtiA6Q+sD8zHn4oL5RdOexB7frbPn/wPMxCAEBeUltzlwEmJE8/iHIc3sQvhy8EfdSf994d8IV/axAzMKW/XEBnntVvI09mLm6gqq868fPRUGIb4zaQtnM6bq1AvA1STaIt2auhT51Me4Ffz0/CCYKq8XgjySAhwlR/OK/8XzD+kz/EjrVQE299L+/gN59Yf7FvJZ6+r5a+jcCdb8vxevGRwbwi/TDxssGPZYB53fjN0U3LrGRu/L0JoKKPQqHqsffhy2MP0IayGa9YMEyvAS8Tr62+wqBHj2gQM/Acv4Ifyb7hXyM/AE7gwC3/pSGDIOxCOnIkoXVylA+vsTwd3m7eTWttJA6pPNegmX4/Ae1ww2HucrWgwjK2f3dBOe70n6nPbM6boCQeuqBZv40/2iAmHx5P1Q7eny3/pk8kIT/f+QI8EaahwsLZQArB9V4jj3adem1LPkrM5SAl/hBRwYAgMi2CBQD3csJPg8HCfvAQAs9lfsoAJF6v0HMfbjAbkBTvJBAKXpMPbp8ory0Qxv+gIkkA3NJWEj6wv1JqznxAzc0p3k/dtuylL6MdD8F5r1ySKbIGoWcjBV/+UhF/C9CFbz/+7o/8HiJAiE7GADI//V9NsGD+nMAt7uTvhwBnrxlCBw/iwopBvQFMcrRPEUGDrWhu/A19XPn/AGzsoPt+hkIb0SOxsxMaQEaCsa8nkNm/FX78b8fOHQCNDpuwdz/qP4gwq/6EEFuuoP+UoBRvOJGjj8eiWiEAMaciEW/Hgdsd7WADjXEN2n6N/M7AV+3kYc2gUIHv4lwQw2LAr4cRcT8QH6Zfjb56ADt+lsB7n6U/4/BQzvBgA96qj23vlI9CUUWv1uJEMTzR15JqcBIh6+4ZH8FdaJ2zfmfs/1BBPgsxuxBe8ctCPZC80ldPiUEvLxCPyT+VjvdgXb8W4Jwv2J/xoCcO2z/NblY/JP9bfw9BET/fkl0BQ4I90ldgjeHWXleACQ01zgtd8K077+5d+SGTYACCBiHqgRKySO+zoQ2u9q+tv1HfJZBPj4uAsBBPIDZAfw8DX7GOSa6HHuc+YdCyf5YyT1FvAmXyx+DwQnnOzhBFbVAOCZ2ZTO5/YE2soXqPs0I1se/hTcJ2j8sRWV7nv8ZfNu7dMBKvFbDEgAZQdPDdz2EAbC53Pyu+oy5VwBDu19HKAG3yfOIIYYiysN9jgYd9jM8cbWBdXE74vUIBAi7OUglw02G38lGwVSIF/wCwcl7VvySvqw740K1PrzDVEHbQD6BXvr7vTL5HHof/by76sVtQWrKXcdeiEHJegA/BS23QP3udG/3XbjN9iqBVvpCSE4Cfwk9x70DjMeNPIQCynoNPin9NvxWwcp+H4PWgMEBiIEAfHz+izkOe8x7ybvIAw6/ZAl2hQkKNojaA25G1fmEv/P0P3ftNtp1hf7zeVzGpkE8CYGHGoY/h6P+moNGegq/FPuY/bDAeP5FRDw/vEK+/yx9i/3UuXl88/pe/iaAzQBeCD7D9oqRRqQFocV9O4fAefQkuoe1fDezfSU57kXqf7JJyoVYB20G/T/1g4I6cr8felq86D75vZrDbwAZQ6zBSH+nf5j6v70qeku8tr91fnnF0II9iOLF1cYpxuC+pALZ92s8XfXx9/a66nh6wsA9R4hqg2RHvkaIAiPFvLx/Qen7FX4yPcr8iIGvfe6CpsABAH9ABjwDPvN6j72MvoC+gsTOAWiIaUS4BooF6wA6grr4vH2k9dJ6M3nA+ZuBpfw+RzwBj0dVhdAC4IVFvfwB7LuNPym9ur27AQA+BQLKP70AUn/G/JM+vPqn/Yv9UD7mQzYBa0f/Q8KHwUVhAcyDZzpzPmq2ebnu+Mr5rn+bPM9FpUGPBwCE08Q/RKX/W0Je/Lg/Yz1hPet/1X4OwZV/pUCVgAP+Bf9yu+Z90z1gvd7BiP+FhftC3wbXRm+DRAVOPT//V/gaedt4U3iR/Y/7jIPAgOzGvIUhhQrGWoCPg1r82T8jvMv8pH+bPRuBhz+3QNxBA36egGK8Or4BfK79v0ByfzmFUMJ6xz9FPgQcBWy+J8D6OOW60Tgb+Bx8MXplgg8AnsYtRZCF24ZvAcxDG34rvv88wbyn/qz9P8CsP+YBJEHWvz6ARTyfvX+8Zbym/9m/OARUgzxGhYXSxPTFDf+cwMW6aDuLOEd47PspOe/Apf7HBSsEeAW+RpJDKgR1/w9/4D0dfI6+IvzlQEb/XgFCwZq/2cFs/Re+0nvkvK3+G/1iQx3BAMc6ROhGYIXaQXuCiPsDPYk35Pmpue55UX+dPRBEz4KDhmhGY4ONheU/VgF2/P587328+9pAMX3iAaUA9oCHwg797IB/u7k9tP0i/O3Bp/8SRgnDowbrBgWDdoQQfRP/NTgteiC4aDiFvbW7U4PPwfDG2MbxBQWGy0BPAjy8bbz0fEZ7Mz9QfRxCFQEoAciDdj72wbH7+P2D/Bz7q/+Z/YVE5QKQR7ZGWwVdhhl+7MDROKs6MjcVN0F79ToLwsBBLUclBsGGTMfgwWdCxjzJfRH79HqTPpe8/0HsANbC1ENWQAYCHXwefmJ6xfvxvh18ugOIwWDHhIYGBvSGpsDnAjm5orua9qU3sbnSOUFBJv9+hqaFzEdMyH/Cz4TTvYY+pnt++eO9YXqbgQ7/NQLYQ59BJcPE/Xz/0Lsf/AE9Vrw1AmJ/20b0BLyGqQbNgfYDgHt3vMg3yXgguce49r+O/gEFCISMBmqHigODxZo/Ov/TvIx7kH2oOzlASr4ggirBlkDbAs09gUEw+1B9pH0H/K/B0X9uhn5DhAchxjbCrAOWfAf+IvfeOUY5L/kR/q79OcRFQwDG/4bBxEeGP79wgP58eLvqfSh66UA+fYzCQcHFQZ/DQ35MQXF7Qn3NvDL8McCGvnIF5QK9B1RF5gPUxP99UT/4eH96V/hgOJ29CvvCQ1tB1cachnKFMoYZQJEB/TyjPOQ8gXsLP7b9R4JkQaLCM8Oc/zGBvnuw/at7a7tlvwJ9HMSFwfXHhIZJRa+GYj9mAQV5dLqB95b4OXsbesuBy4E/Bl8GdUZmxuBCYoJYfYt8wfvLerK9rXzeQTzBpAKehKGA6AJgPW89evtm+n89W3wsAm9BV8awxpsGh4ePAe5CQXtkOzz3l7c+eaP5TX+hgDXE2waUxrPH8oPfA0f/qLzh/Id6En0j/LA/qcF8wU7Ed4CUwsh+Xv5w/Lw65H3Ye/bBggB2hXqFOEXWhxOCZUOl/Ig9EfjD+Ee5qPjDPlK+bIO9RIpGPIdOxFWEgkC0vpl9m7ru/UU7+P8UAAeA34P8wH9Dm36R/7e88zsLveN6z8FQPy1E8USkhfvHJ0LIxKf9kf5tOW15FLla+Nl9c71UgppDkwW8xoKE5sS1gVq/RD5h+509Z3vvPqL/bgBiQwYAlEPzvurAib11PGR9s/sVAJt9ygR1wpxF0YYOw4vFFf6OwDP6M/rg+WL5h/yY/ImBtgGKBRwFWgURBOHCPwCpvph81r17+8/+qv5qAEGCJMCbg4f/FsG9/RI97D1HO9GAAT16Q55BfgWKhT5ENcUt/4HBTLrdfAV5OXmde5a740C9gLBEgoUGBZOFWMMNQaW/Ub0BPUd7ir31/bx/hcGRAPLD9D/WAov+E36qfQF7rD7q/AFCm0BdxWmEwUUOxfaBFsIF/Hq8pDlRefP6ajtu/oJAXsN9RJQFjoVHRFFBw4Dg/VZ9zfuUvX99Tf7dQa4AfIQpQHQCjr7OPkA9hPsYPkG8GkFfAIKEgMV6hShGN8J2Ai79sPxz+es5F/nteoL9un/pgl5FU4VdBovEysKswbQ8+359ukf9Xjy6Pg5BTr/MxMMAVcQdf1H/cT41utO+Szr6QFl/PkNYhK0ExYc8AxPEJT8OfZ17JniSee/5OfwwfoZA6UT8BFgHeQUjBCZCyL5Iv506RX2m+zi9oH+T/xaEDgAPBNg/90DEfs88Ej5b+oW/w34LgoWDQQSaRlyD6gS7QEi/bTwcOg758HklOy59I39uAwpDzUbWBYSFakP6f+NAY7sYvYy6mz0hfgX+rQLyQByEwsCXAm2/fz2F/n27D/7yfMZBWEF9Q9jFC4S8BOCB8EC0/UZ7rzoEefE6d/xFvgDBk0KFhbbFDQWkRJDBmMGGvMY+brrv/MW9XX3Ewad/mUPRQKaCQMAqPr1+h3xavov9fQBmQO2DPoQUhH/EXcKJgT9+izxTez16Pnod/He8yoE/AV+E2gTzBR8FLQGowm/9C37xe0o8wL2SvWEBAX9IQ2yAoQJUQJX/UP94/MY+lL1P/6wAHMIhQwvEJAPsQ1RBoQANfdF8IntU+jU8CHv4f7dAMINYRGlEkEW1wlrDRj7Of7u8YzzcfRz877+FfsSCHYCIQl1A+kBi/4m+RH6DfdE/Dn+ngVTCPYOsAyLD8EGkgSa+j/0SfGb6cDyVOxr/e76pwlJDHoPsRWJCv4RC/5OBM3zXPZK9JTxeP0W98gGOQAlCXEEDANqAWT58vug9SH7TPzYAWcHeQugDYQPHgpcCDv+/vjH8afrEe9W6qP47faOB3UJ8hBBFSwOPBOoAUgGb/Uy+Jzy8vGJ+fn12wM1/4MJxASgBm0Cxv0R/Cn37fnc+PP/kAFIClAKExCMCwwLywKB/Df2ie128PjoHfbX8lMDNgWuDh8UrQ/rFaEELgrv9mH6kfG68Wz3ZPS/Ajz9qgqwA0gJHgNh/6n9S/ZX+iD2c/4X/xIIlwlbD/cM2QyHBb7/5PjW7/zw0egD9K3wNgA8Al0MwBGvD2YViAcFDIj6N/2F8qHzAvVr9P/+NvyECNICYgqoAgMDQv2j+Xr5E/c1/c38SQc8BfUPGwoHD/oG1AI1/TPye/R46Ff0ee3l/E7+wQfcD3YNdRZcCZAOpP4n/wb2t/PX9WbzCf24+4YFigOECBEENQMX/h37cvga+G/62PxnBPoELQ/8CUsRdQfPBjz+SvUS9dboVfP86mb6ofo/BQANJw0HFjYMqhCVAggCUvd29SHzGPO3+Oj5JgMxAvQJqgSCB8T/5/5b+cP3cPll+DYCRgA0DT4JIxGTCyYJUATh+Gv4++rF8OHp/vMX94IAigmNDd0U4hCWEu4HdAWN+XH3t/Bv8qTz9feI//cAsgooBekLjgF3Apf6b/dM+Jn09/77+3UKuQciEVsOQAz+CZb9RPyM7rLvhOkL73nyNvvAAzcLDhITE2QU4QwwChr+wvs18k3zcfEY9T/7N/0eB8cD1Qt0A/wFjv0i+0n5l/S4/Gr4ugZKBEQPSw4pDhwNHQIuAGTytvED6mDtc+/H9lT/GgcoD60SnBT+EAgNRgPh/kn0x/Qn75b0lfag+9ADcwJ3DEsDrQmh/lD+NPri9Bz8HPaEBEUBNg0EDUEOnQ7YBD4DL/YL9CvsYu1d7lH0ffumA/oKbxDbEksR7g7hBQ4DcPfc9/fwbfQi9hb5ygFGADAKTQOjCHkAJv/9+9j2zPsy9/IBJgA1Cs0Kbw0CDlgHkQVp+lr3D++X7svtFvL995r/2AazDcIQMxIlEMAJaAbm+p76+/C09BbzevdW/r/+VAksA1ALhgErA9P8d/hZ+yn1TwAg/K4ItQdhDW0OHQmSCRr9xfsK8bjvle0877T1yvoGBE4K3A7QEgYQ4g33B3f/4vzX8mn2GvG99+L5lP2uBcoBUAtBAZoGi/1y/JX7yvY2/1v6Jge0A9gMGAtECsMJiP+G/0fzBfQY7qHw1POE+OEAYAbPDPIPSBATDvkJWQIO/3T2NPeo8v/2j/hP/MMCgwEaCR4Cnwag/gX+hvvi95P9Q/reBC4DwwuwCoYLAAqlAj0ARva69KXu3fB78f73VP31BKUKxQ6KEFsOCAz/A2cB2/eH+Arzq/ax9/f6TQFGADcIzgHqBkv/SP9L/PL4Vv0d+m4DpAFMCisJqQv8Ce8EXgJi+Wn3O/BM8TvwdvUG+qEBWweLDXYPKhDcDXgHrwTb+dj6pfGk9sH0GPmk/1n+2AhtARkJUwCOATH9Kfn7/JX38AFn/uoIJQitC2QMnQaKBrP72/n18TLwNfCd8R74e/2VBMELhw0iEvwN2AupBon9Nv1i8sn3BvKw+Jj7IP2ZBmQAhQoIANoE1f2Z+6L9ivd5ARH8agdvBaYKbwtiB1UIJf4H/U70YvK+8AzxXPZy+nQBAQj4Cn8Qvg2hDccIagH5/0P1Wvka8pL4IPnt+7IDTf+tCeX/cAZj/of9zf2B944AafrdBdkDyAmIC14IDgqtAIz/2vbN81rx4+939Jr3XP7IBc8IURCcDUYPewrSAyQCePaY+hPxQ/jt9sL6lwJ8/lYKOgBaCG//Qv82/mr3mv9h+B8EQgGKCHwKkAigC6wCogKS+aP13/Iv71/zBfV9+3MDUAbvDxENIBHhC14GRQTA9wf8YvA/+Lr0w/mCALf9+wlKABIK7P92AVr+d/jk/jb32wK+/qoHuwgACUYMagRTBab7e/jr8xbw2vLd8sX5h/9KBAANwAuHEfgLugm/BbT7kP0j8t34UPN5+RH9Kv39BgwA2gkYABoEaP6e+0H+EfizAdD89waWBXIJWgrkBXMGVv1A/OH0f/OT8h3zUPhM/J0CqAi8CjoPEgzkCokGg/+i/tj1q/lH9Nn5+fox/f8D2/86CO//wQQi/sL9kP2d+YYAEfwDBt4CtAkrCIgH5AaG/3//HvY499nxbfQ59tD5kQDqA/sJ0QvkDLYLQAj5A9D/LPpr+Y71w/iE+Jf8cP95AJ4EKgH/BMv+ewHN/LL9qP5v/UUE6gBoCe0EFQkFBQ4CLQAy+Ij5KfKT9or0HPra/R0C/gcxCZYMbAp0CfoEpwHO/Of6vPc++Wf4GvyW/Z7/ugKQAD8E3f4XAjH9Xf+d/uf+VwPpAC4IeAO3CIwDRwPq/2r6f/rN8wP4QfTQ+ub7RwG6BTcHYAv6CPQJVAVqA2f+uPxC+dz5BPlj+yP9a/7cAeP/sgMh/wUC6P1W/9D+mv6aAnoAEgduA1YIYAQmBGMBXvzD+6j15/d99D/5C/p1/9sCbAaNCUwJVwpgBpkF2P/1/jn6vfrh+NL6KPxH/coAN/8wAxn/TgIL/vv/lP78/vcBbACXBuICcwi2A/4ERQGp/Y78w/bk+L/0Uvk0+Ur+YwETBQwIQgl3CbMHxAV6ASMA4PpI/PT32vsD+oT9Pf/C/rQDYP5gBHP9pQEB/tD+PAG//uYFJgF7CI8DOAYaA5r/HP9L+BL64PQb+MT3i/tV/7ECrQa7CH8JfwnmBlEEdAHM/Oj82/ef+zb4B/0B/Z3+iAKt/ggFvv1dA8f9DgBYAFL+vgR2/+wHNgLXBnIDOgHqAA/69vui9dX44/Y5+jj9y/+3BGcG9AiICQkIuwZlA7b/K/5S+XH7fvfs+9f6yf20ANz+7ASN/sQEQ/44AbP/NP5KA4f+9AZDAVcHXwPxAiwC6fvd/Wv2i/kk9j/5afsK/vkCzAQ9CPsIkgivB6oEwwF1/xD7AfzZ95n7z/kn/Qv/av6AA3f+RART/g0CiP+v/8ACSP9rBsoAWAdhAs0DpgFB/TH+f/dt+g/21vkp+nj9aQFeA04HwAehCJAHhwWuAqcAf/zp/Ab50vsJ+qn8WP6+/YUCDP7GA0X+EQKl/9T/oAJf/90F3gDVBqkC/wNoAjr+Gv+8+PT6x/Zm+df5KfwwALgB7gXNBtEHDQilBVEEhQFL/gn+6/mk/Kz5A/32/JD98AB5/fACev1UAvj+vgBEAhoADwYQAZ8HRgLoBO4Btv45/5L4qvtS9ur5WPm8+8//iADABYsF4weJB8MFMwVzAR8A+f2L+/n83fm1/Yf7OP4t/3z9NQKw/AYDwP34AUgB1ADBBaEALggnATIGUAErAO7/cvkv/SP2Hfs0+Mr7Uf5U/7oE3QPRB4MGdwZqBXkCJgHK/qv8Lv2m+nX9svvz/X7+nf0NAfX8MgKP/dMBZgBQAX8EgQFyB+UBtAY4AeIBRP9Y++38+/aN+2P3Mvxo/Aj/7ALEAi4HXwVTB0sFDQSBAtn/c/4s/Uj7yvzS+nr9+/zA/UgAiP2mAtr9HgPP/wYCTwOdAG0GIgCjBnEA/wJrACf9Gv9Y+DT9aPcm/AX7Ov0UAZkACwZRBFkH5gX+BC0E9AAhAND9G/yo/En6Dv25+6b9KP/Z/TsCNP5dA43/gQIpAuwAMwX3/5EG+v9gBDsADP+m/4T5QP459+P8m/nc/FL/Jv8ABdgCggdqBewF2gTwAUcBQv4X/af8vvru/Gf7nP1v/t/9vgEF/moDHf/4ApkBWwGnBOf/RQZv/6oEov8mAJz/9/rK/hz4s/1J+Xf98P31/mcD3AGTBkQEJgZvBBoD/gGV/zr+WP17+878dPsW/fL9Z/0jAc79AgP//tcCUQFfAScEDADlBcf/+QQiAAsB7v/6+7L+nPgs/Q75y/wb/aj+ZQIIAugF2gQTBuEElAPvAUcA7/3//V/7Mv2e+zT9Iv5A/RQBev2DAp7+JwLmABEBwQN9AK4FnAAbBcwArgEnAN/8bf5a+Zz8Hvls/Gb8sP5ZAUYCBAXYBMsFkATsA5MBBAHT/Zv+zft0/ab8TP0q/1L9TgFm/aABLf6MADsApP8gAw0AdQV7AYwFdgKoApMB6/3d/sH5Cfyy+DP7YvuM/VcA1AGpBGAFFQaxBYkEcQJvAdT9t/4E+2/9p/tW/cr+gP3XAZr9vwId/kYBpv9X/0QC/P7cBFUAtwX6AYcDGwIW/yQAofoT/cP4YPuj+sH8Hf+dALIDigTqBb8FLQVZA14C7P5R/6z7ev2S+w/9Gv5b/TMBq/2XAib+mwFw/3b/rgF6/igEvf9ZBRwCAgQ0A0gAhQHW+7X9L/mU+vb51Prd/bj+ogLpA5AF0waGBU0FIQN5ABYA5vvl/Z76Ff3l/B79qABc/e4C7v1NAkD/3/9iATD+xQPl/iUFZgE0BH4D1wDRAqD8Nv/h+UP7DPor+jP9Kv2YAWMCxQQmBkgF2wV5A7EBxQDt/KD+z/qM/Wz8S/0MAEj9lwKI/WECrf4WAOgARf6IA83+KAUrAYAELANmAacCKf2k/yH6HvwI+s365vwD/RIBhQE/BEkF7ASbBXUDPQIaAZ/9G/8R+wz+HfyY/Zb/Vv2aAkr91wIi/pgAPgA2/gQDCf4cBTYAFwXOAmcCWwMW/uEAZ/oE/Y35yfr8+zf8QABqAPcDkwRABbIF7wMTA18BrP4T/5z7+/29+8b9c/68/ZgBmP3rAu39uwF0/2f//gFa/n8EiP9MBaUBWwOrAlH/PwE++y7+e/mj+wX72vsc/xv/SgNIA10FawWgBPYDBAILAF3/jfzW/cL7n/3K/eX91wD2/XUCCP68AfL+uP8hAYf+1AM6/1UFTwEvBMgCcgDmAe376/5g+Qf8Q/qj+zT+YP7JAmMCZQUBBfMEYgRcAgIBjP8y/dv9l/uj/RH9IP4xAFb+bQI+/kMCpP5AAFcAb/70Arb+/gS4ALUEkwKWAV0CD/3Y/735q/yd+Xv77vyU/ccBrQE/Bd8ElwXLBDEDgwH7/3T9x/1q+1/9pvz+/eL/iv6sAoP+6wKh/rcA0v82/iYCxv1/BN7/+ARzApICEwMq/uoARfpz/V/5Xvv4+5P8nwBxAKEEUQTaBU4FFASpAsEASf4V/mH7JP3m+6z9Lf+D/o0Cwf5qA8D+WgFt/1T+UgEo/bgD8/7dBC0CZQPcA4b/OAJR+z7+XPkS+/b6VPtU/x7/2QPTA/oF5AW6BNoDegE0/2r+dvsK/Tb7YP1J/mb+KwL7/u8DBv9dAmT/Gf/JAPT87QLJ/W0E0QDDA2gDoAAxA3f8/v/T+UD8cPoS+yL+s/20Ak4ChwVsBTYFsQRsAq0AKv9L/EH9v/oq/RD9Av4mAcL+1QMM/z4Dav8gAJcAQ/2XAh39OATI/+8D1wItAXADI/3cAC36GP07+kX7df0P/fMBVgEgBQEFUgUjBfMCiwHA//D8lv3L+jX9ivzu/YUAp/6cA+b+fwMk/6AAOACK/S8C5vwHBED/NQSEAu8BsQMH/pABovqx/e35OPuK/FD88wBNAJUEYgSFBWMFogOfAm8AEf7i/SX7Jf3Y+8D9Zf+T/uAC7v7FAxT/mgHq/2r+qgEA/boDgP5jBIYBnQJYA9f+MwIl+9f+2/nv++L7BPwbADX/BgQwA4UFCAUIBEIDAwEz/2P+6ftA/cf7jv2c/ln+JALO/qIDAP8DAq3/0/5WAQD9UQMj/koEHgEJA0wDwP+mAgr8e/8U+kf8QPuv++n+gf4YA7ECXAUZBbYEyAPyAb//3f4Q/DD9ZPs6/R7+K/74Ae/+8gNA/6wCqf9k/9kA5/yrAlH9/wM1AF0D/QKSADED0/xyAG36BP3k+qf7H/61/UUCtAECBZ4E8wRABHYC0AB3/+H8cP1E+y39Iv39/dsA0v6HAzv/NAOM/20AfwCo/S4CSP29A3P/sQNDAmgBJgPH/S8B4Prl/YD67vsh/Q79QgGcAIIEAwQsBacEOAPoASYAyv3F/Uj7Iv1A/Mz9x//D/hgDL/+0A3P/YQE8AEj+wgEF/UsDmP6WA4EB3AEpA6H+9AGs+8b+yfo0/KX8fvxFALP/lwNlA9QEzgScA78CAgG8/oT+t/tY/dH7gP3d/kv+WAL2/rsDhf8fAkYAJv+NAUH96gL1/VsDigAVAqECV/9QAoz8tf81+/X8Ufxy/FH/5v6bApECcASZBPwDTAPJAYn/Nv8b/Ij9g/s//RP+8/3HAdj+4QOV//ICXwDp/2MBZP1/AmX9AQOw/yMCJwLe/6cCPf2RAJv7lf0h/FD8rf4A/uYBmgELBGEEAQQLBDACoADH/6r8Cf4k+4D9GP3j/foAi/7UAzH/mQMCAM4ALQHP/XACBv0oA9/+fAKfAVYAygKX/VYBwftr/vP7ffw+/lT9aQGQALsDuwP9A0wEWwKuAQgAsv1D/ln7rv1c/BX+7v+c/kADHf/yA7b/xgHFAJj+DQL6/PwCB/7MAqcA+ACAAjr+7QEK/GL/vvsE/a/9Cf3PALX/cAMPAxoEXgSxAmwCTgCB/lv+hfuu/cH7Df4C/8L+0gI//1AEpv+PAmAAJP+QAcP8uAJV/fcCHQCPAagC9f6tAnD8HQCW+yD9C/1g/BAAwP7+AoQCKwS0BC4DZwPhAHj/t/7F+7D9I/vi/ff9k/4JAjf/dgSe/3MDJQAYADgBBf1sAp388wIL/wMCAgKx/wUDEP0zAZ/7E/5k/HH8If/a/UACZQERBDwEugPzA6wBnQBC/5X8tv3r+o394fxR/voALf87BMX/WAQpAGUB2wDg/eQBUfyXAtL9NQLQAHwAtgIG/vUBM/xG/zb8Ff07/nn9PAFRAIgDaQP0AxAEcQKVAQYAsv0J/jD7Zv0N/PH9rP/r/nEDtf+yBDcAkgLFAOr+jQFl/EcC6PxFArn/8QBUAq3+oQKj/HMAF/zQ/aL9Fv17ABT/GgM3AhEE5wP2An4CmQD0/mH+7Ptc/dX7pv3C/qf+jgKa/3EEQAAeA9IAtP9xAeb8EgK5/B8CF/8XAdMBJ/+wAir9/ABc/Ef+WP0m/db/r/5pAs0BugPRAx8D9gIuAYf//v4j/LD9YfuT/ff9TP4AAj7/cgQIAKwDxwBbAHoBPf0fAo38MgKa/koBcQFv/6oCef1MAXH8nf4t/RL9Xf8//t8BPwFsA64DOANYA5QBOwCE/6j8B/5d+6n9af0r/lkBDP9FBMv/CgSCAPMASwFy/QkCOPxDAvX9iQEZAdX/9gLO/QoCmPxC/wT9I/33/qL9cwFzACwDRANLA7ID2QEpAd//eP1R/mn7xf2n/Br+VwDQ/ssDkv9mBEUA1gEUATD+6gE3/F8CU/3WAVYANACrAh3+cAKs/AUAyfyZ/Yz+Vf0QAYr/8wJ6AksDrQMdAugBLQBs/qL+zfvz/UH8Hv5s/6b+/wJK/1gE8f+ZAtEAQ//PAcb8bgL1/CYCVf+sANkBkv52Atn80QCi/Hv+Ff6W/XEACv+LArkBRwNHA3QCKwKsAB//Av9n/CP+Qfwg/sz+iP4/AhP/DgSz//cCjgDi/5sBJf1mAtf8VgLw/hIBkAH7/nwCGv0hAYb8xf6l/ZP98P+w/jQCOgE+AxcDrgKQAgQB3/9O//L8Pv4E/Bz+3/2J/lIBDv/YA5v/qANKAPUAOgHW/RwCo/xcAvz9fAGkAKn/UgKt/cABsvyp/0P9+v09/0r+jwFrAAIDkgL2AtwCjwG9AMr/rf1x/hf8/v1A/UH+bQDf/kQDiP/TA0sAxAEiAZ3+7QHL/D4Cbf2cAdz/CQDvASX+FwL0/GMAKv11/sL+GP7rALL/lQLzAfEC0wIAAmMBWwCQ/t3+avwZ/rv8E/5i/4v+iQJF//sDFgCyAg0Bpf/jATL9OwIA/cMB7f5eAEUBjv4gAjn9BwEi/R3/bf5B/msAPP8oAjsB1QKLAjwCyAHKAFv/SP8a/UT+uvwI/qT+Y/6QARb/aAPi/+8CygCOAKEBFv4bAkf92QFv/r0AcwAU/5IBl/0ZASH9nv8E/qD+0f8e/7YByAC9AioCgwL5ATwB/v+h/6v9Z/7U/Pj9Mv5I/uAABf/4AuX/DAO4AB4BbQGs/uEBaf3DAST+5QAFAHf/cAEI/k0BVv0DAMf93/5M/wf/LQFsAIIC1AGjAt8BnQFSAA4AK/6t/gr9+P3s/Sj+TwDi/o8Cwv8QA5kAhgFUAQ7/uwF7/bQB3v0RAav/3/9NAX7+igGR/VUAo/3o/sD+r/6NAOn/LwKbAcwCLQIXAv8AigDD/uj+Hv3p/YH90v2x/47+OAKe/zQDowADAmQBhv+/AaL9oQGQ/QYBN/8FABAB0/6vAez9tADB/S3/kf6T/iQAgv+xATsBigIuAj8CXwEHATr/Zf9T/Sr+QP3A/Sv/Q/7DAUr/OwNzAHcCQwEmALMB6v2qAVn9HwGw/jIAsAAH/8QBFv4dAcT9i/95/ov+3P8Y/1sBtABfAg0CTgLNAUMB2P++/639dP7z/OD9cf4v/hoBEP8kAygADQMGAd8AiwFb/qsBMP1PARn+fAAqAE//uQFL/qYB2P0wAD7+wv59/6n+BQEAAC4CoAFiAgEChQGcABEAZf60/g39Af7S/Rj+OgDj/psC7/84A+UAogF2AQ7/mwFT/VABlP2ZAHb/p/9XAZv+0wHv/bkAGv4u/xz/pv6kAJX/7AE2AWMC7gHQAfwAdgDp/gX/Tv0c/pb9AP6w/6P+JgKb/zEDogAVAlUBof+lAa/9gAGA/eAAC//a//gAvf7AAf/98AAC/m//5f65/lEAaP+xAfMATQLoAfABRAG6AE3/Xf90/WX+Tv0d/iD/jP69AWf/PQNXAJACFwEhAIoB0P2VATj9GgGa/iQAxADz/uQBFv5TAev9p/+r/pr+DAAM/24BogAoAuoB6wGdAe0Awv+g/679nv4d/Tz+r/5//k0BMv8iAxYAwwLgAHsAbQES/qIBJf1CAVj+ZQB8AED/8AFP/pwB+v0DAHz+r/65/8f+FQEpAPcBqgEAAs8BLgFNAP7/M/7i/jH9Uf5I/lz+uQDy/s8C0v/xArIACwFkAX7+pQE3/W4B7/2YAAEAiP/BAYH+1AH9/WEAT/7Y/mT/jP7EALP/xgFPAf0B4QFwAcMATwC4/ij/a/1u/vT9Uv4jAMv+ZQKf/wsDhQCaAS8BFv+LAUz9aQGK/cYAb//G/3IBwv4TAiP+CQE6/lf/GP9y/mYALP+MAcEACAK+Aa8BJAGsAFT/cf/B/Yr+yf1C/pf/nP7rAWD/8QJTAOYBJAGL/48BlP18AXD94gAL/+7/HQH5/goCVf5SAU7+rv/m/p/+///6/iYBWADTAX8BwwE7AQIBsP/e/wz+x/7O/Tn+SP9e/nYBGP/LAhYAIwINAQsAkwH6/Y0BY/0CAaf+HQCvADP/9gGL/pwBXP4eAMb+1P64/8j+zAD9/5cBNgHJAVwBRwElAEMAhP4d/9b9W/7d/jb+7ADU/oAC2/9QAt8AhACGAWj+lQFv/RwBP/48ABwAXP+kAaj+vwFv/oMAvf4k/4f/0/54ALb/UwHuALcBRwF7AV0ApgDR/n7/+v1//qf+Gv6KAIL+QQKH/38CsgD7AIcB0v6yAYb9NAHz/VoAr/93/2EBzf7QAYn+0AC+/m7/Zf/Z/kAAfv8JAboAjAFTAXsBpQDeACz/0v8H/sz+Vf45/vn/aP7VAT//fgJqAHQBYgFy/78B3/1iAdT9jABE/5j/8QDh/pkBlP4OAcH+z/9O/wv/GQBU/+UAZgBaASoBcgHGAAYBif8mAFP+Ef9C/lT+i/9A/loB5/5lAgUAxAErAfT/vwFE/pEB1f3AAOP+wP97AP/+eAGc/jUBuv4YADb/MP/x/0D/rgAfAEMB7wBuAd0AIQHg/1wAsv5d/1L+gP5A/zn+4QDC/gkC0//fAfYAaQCgAcz+oQEM/vwAlf4EAPf/Fv8WAaj+NgGr/nEAHP+R/8H/W/91AOL/GAGkAG4BzQBEARAAqAD//qb/fP6w/hf/N/57AIP+tAF8/88BswC9AJYBLf+8AUP+IwF6/jIAq/9O/9kAvP41Aaj+sAAA/87/mv9W/0kArv/3AGkAVQHFAE4BTwDJAFD/2f+i/uf+5P5U/hMAdv5eAUP/3gFoABwBVwGi/6oBdf5LAVP+eQBF/3v/iADO/jUBpv7tAOv+EwCC/2//LwCA/9EAIgA+AaYARAF9AOYArv8ZANv+Lv/L/oD+pf9q/ucABv+vARcAXgEiATMApgHo/nMBYv6pAOf+tv8EAPj+7wCu/gEB3f5pAF//t/8FAIj/qADn/yEBaABHAX8A9gDu/0QANf9j/93+sv5u/3P+iQDg/moBy/9qAdcAfACBAUz/fwGP/uMAwv4BAKv/MP+jAML++ADI/pcALv/5/87/oP94AM3/CwExAEQBbQAcAQkAfQBh/5X/AP/H/lb/dP5GAMb+LAGe/3IBoQC+AGEBnP+AAb/+BQGs/isAbP9W/2gA4P7tAMv+uwAb/yEArv+//00Axf/eABsAMQFgACYBIQClAIf/2v/7/gH/IP+H/vf/rP4EAWD/ewFaAP4ANAHl/3cB2/4iAZ3+YQA7/5b/LQD//uIA1/7VABH/SgCG/7z/HgCl/7MACAAZAWwALAFaANAAxP8EABT/Nv/o/qP+o/+c/rsALv+HASEAXQEHAVEAZAEP/zgBav6NANX+x//f/yn/1ADm/hABAv+SAF7/2v/u/4v/iwDJ/w0BRAA/AWQA8QD//0QATP9c//X+s/5g/4/+aQAP/1IB8/91Ad8AoQBcAWP/PQGC/qQApP7m/4//TP+oAP3+GQEF/8oATv8WANL/l/9ZALT/4AAfACMBZwAJARQAcABt/5n/A//j/kD/kP4uAOT+MAHE/40BrwDlAEMBmP9DAZT+yQB7/goAT/9l/3sAD/8gAQ7/4ABQ/yoAu/+P/zYAmf+zABIADgF2AA8BSwCfAKD/2//5/g//Cv+f/ub/zv4RAX3/oQFqACIBKAHl/0wBsf7yAF7+OgAZ/4r/PAAN/wYB9v73ADn/TQCg/6v/LACM/60ABQADAXEADQFjAKQAuP/3/wv/M//p/rn+pv/E/tcAWf+cAUcAZAECATsATwHy/gkBY/5vAOH+rP8GAB7/9ADu/hEBHP9wAJL/tv8cAH7/oADi//gAbQAHAYYAtADp/xoAKf9W/9D+3f5i/8D+fwA8/2gBBACCAc8AkQBBAUf/KAGF/qQAtv7b/7H/OP+qAO3+9gAJ/5MAb//l//z/jP+HAMr/9gBZAA4BjgDHACEANgBY/4v/3/7v/iz/wv43ACL/RQHW/4UBpwDTACMBjv8wAaT+twCv/v7/h/9Y/5EA9v76AAD/qwBV//v/2v+O/2UAuf/UAEEACQGaAOMARQBqAIf/r//n/hP/A//K/uL/Bv8AAaX/gwFuAAcBFgHs/0MB1/7kAJb+MgA6/3z/SgAB/+4A6f7MADv/LQDH/53/XACc/9IAFQADAX0A4gBoAGkAxf/J/xn/Nv/9/uH+pv/0/r4AfP90AT8ALwHiACUAMgEC/wcBkv5nABr/qf8hACL/6gDv/ucAIv9NAKH/oP86AH3/vgDn//YAewDtAIgAhQD+//D/QP9S/+T+9f5u//r+dwBj/1QBFwBWAcIAbAAiATz/+wCQ/oEA2P7T/8//P/+7APj++QAa/4gAi//U/xkAgf+cAMX/5ABMAOMAhQCTADEAEwCC/4L//f4V/zj/+v4xAEj/KgHe/2gBlQCpAA8Biv8kAbL+tgC5/gAAkP9W/4QA9f78AAH/qwBw/wMABgCG/4wAqP/XAC0A4ACHAJoATgAdAJv/mv8L/zL/If8L//b/Of/yAMP/ZAFrAPMA8ADX/xkB3/7PAK3+LwBF/37/RAAI/+wA8v7PAFP/MwDt/53/fwCM/9QA9f/hAGUAowBkAC8A3P+y/0D/SP8e/yD/qf89/6UAov9MATIAFgG8ACUACAEk/+YAs/5iACf/r/8TAB7/zwDp/twALv9ZAMD/v/9mAJT/zgDc/+QAUwCqAGgAQAD5/8j/X/9j/w7/Nv+A/zv/YACN/yMBFQAyAaUAcAD5AG3/7QDF/oAA6P7S/7X/Nv+EAPH+5AAc/5IAov8EAEcApP/BAMX/6AApAL4AWwBTABgA3P+P/3X/Nv84/3D/Mf85AHn/6QD3/yABhwCUAOQAsP/1APT+nQDl/v3/if9b/1YA/f7JABT/nACB/yIAGACx/5wAuP/cAA0A0ABcAHsALwAGALb/kf9I/0D/V/8p//T/W/+6ANH/HwFsAM0A3ADx//0AFf+xAN/+HABg/3z/LAAQ/7YAFv+vAG3/NQAAAML/fQCq/9EA9v/JAEsAhgBRAB4A5f+l/2f/Tf9J/zH/wf9W/3wAv/8MAUsA5wDHAC4A7gBS/7kA+P5AAEb/rP/9/zH/mgAP/7QAUv9HAND/zP9dAKf/xgDn/9AAQACYAE8ALwDx/73/df9k/0T/Mv+j/2D/XACq//cAJwD0AKAASgDdAGn/xgD3/mAANv/L/+H/Sf+MABb/wgBA/2oAuP/t/z4An/+tAND/zQAkAKkATABPABcA2/+c/3T/Wf86/4z/VP80AJb/zwAOAPUAiQB0ANUArf/WABD/cwAb/+r/rv9k/1kAJP+yADf/hwCe/xMAJgC9/5EAx//IAAMAtQA4AGgAIAD0/8f/i/9x/0r/g/9I/wkAg/+fAPP/4wBzAJEAxQDb/9EAP/+CABT///+F/3z/LgA1/6gARP+eAIr/MgAHAM//cAC0/7AA4/+3ACUAdgAmABEA2f+j/4b/U/+F/0H/4f9y/3kA3//YAFoAswC9ABEA1gBj/5EAG/8LAGT/jv8JADz/jwA9/6sAgP9SAPb/6/9lALv/qgDT/6cACwB0ABwAKQD3/8H/rP9w/4//Sv/Y/2f/VQC8/7EAPAClAK4ALADYAJD/rQAy/zUAV/+n/9j/RP9lADH/lwBt/2sA3v8LAFIAw/+YAM3/qAD9/4AAHwA0AP//1v/E/4X/nP9O/8P/W/8yAKr/mQAkALAAkABUAMkAtf+tAEP/VABB/8z/tv9m/0EAO/+UAFv/hQC+/zIAMQDg/5IAw/+vAOP/iwAPAEcACgDq/9H/lP+l/1j/s/9c/xEAoP95AAsAqQBxAG0AswDp/7UAbf9wAE//9/+S/3n/DQA+/2wASP+IAKX/QwAZAPH/gQDE/7AA2v+SAAQAUgAPAPf/6P+e/7X/Yf+w/2r//P+V/14A7v+YAF0AeACgABIAtgCQ/3kAV/8QAH3/kv/v/0j/XQBI/40Aj/9gAP//AgBnAMv/qADK/6EA+/9pABcACwD//7H/y/9z/7H/Zv/a/5H/KADg/34AQACMAI0AOgCyALf/kgBk/ywAaf+z/8b/Wf83AD3/gABv/3EA6P8iAFkA4v+nAMX/pADr/3YA+f8gAAEAuv/f/3X/x/9e/9X/gf8XAMj/aQArAIAAfwBGALIA1/+eAH//SABw/9P/uf9q/yYAP/9tAGX/WwDL/ycAQADo/54A0P+uAOr/ggAVACsAFQDP/+D/iv/A/2X/xP94/wAAu/9RABQAewBvAFgAnwD3/6EAj/9cAGz/8/+o/4L/FwBH/2UAUv9xAK7/NAAoAPT/iADH/68A1v+MAPv/QAACANr/AwCO/9r/aP/Q/3T/8/+w/zwACAB0AF8AXQCcABIAmgCq/2oAf/8MAKH/oP/7/1f/TABP/2EAnv8+AAYA/v9wAND/qADP/50A9f9XABAA8f8DAKH/4/9x/8z/bv/p/6L/KQD5/2MATQBmAI0AIACaAL//cwCD/xsAlf+w/+L/Y/87AF7/ZQCT/1AA7f8XAFYA2v+ZAMr/mwDt/2MAAAAOAAMArv/u/3j/0v9n/+X/kf8eAOX/XgA3AGgAgAAqAJoA0v95AIf/IQCL/8P/zv9//y4AYv9iAIv/VADh/xsAQgDo/4MAzP+bAOn/dQD9/yIAAADI/+//hf/V/3P/3P+K/xQA2v9JAC0AZgBzADsAlQDl/4EAnv8wAIf/2P/E/4z/FwBm/1cAef9fAMz/JgAtAPH/dgDO/5cA6P98AP3/KwACANv/9v+R/9r/eP/Z/5H//v/G/z0AFABlAFoARwCHAPf/ggCo/0YAg//q/7X/mv8IAGn/TgBx/14Auf8uABwA+P9xAM7/mgDj/4cA/v8/AAIA5v/8/5z/3f+B/9H/kf/3/7//NgABAGgASgBUAH8ACQCKALn/XACF/wUAo/+u//H/cv8+AGr/ZACd/0AABAAJAF4A2P+RAND/kgD5/04AAAD3/wAApf/q/4D/z/+K/+n/tP8fAPj/VwA7AGUAcgAnAIQA0f9pAIz/HgCU/8b/2f9+/zUAZf9jAJH/UADr/xMAUQDi/40AyP+RAOX/WQACAAMABAC7//b/if/V/4X/5P+o/w8A6f9KAC0AZgBpADsAfQDq/2IAmv8vAIf/3P+9/5H/EABt/1IAg/9gAN3/LQA5APz/fgDS/4oA4v9lAPr/HAABANH/8/+c/+H/hv/r/53////U/zQAHABRAFkAQgB/APr/aACz/0EAiv/v/63/n//6/2r/SAB+/18AzP9DACEACQByAOD/hgDQ/2oA7v8yAAEA3//+/6v/4v+M/+j/lv/8/8b/LAAMAEgARwBBAHQAEgBzAMf/TQCX/wAAov+u/+//e/83AH//WgC8/1AADgAcAFsA6P+CAMr/bwDj/zsA+//0/wEAsP/r/43/4/+P//P/tv8XAP7/RAA9AEQAdAAhAHgA3P9WAKX/DACd/7z/1P+I/yAAhP9TALL/VwD6/yEARwDy/3QAzv90AN7/RAAAAP//BAC+//7/lv/j/5D/6/+u/wkA8f83ADAARgBjACkAdwDt/2IAsf8eAKj/z//L/4//CwCB/0QAqf9TAOv/HwA/AO//cQDM/3wA3P9KAP//DQAFAM3/BgCi/+j/l//s/6X/AwDf/yoAHABIAFgAOABzAP//aADC/zUArf/l/8j/mv8EAH3/NgCc/0wA1P8nACgA+v9jANr/fADc/18A/f8aAP7/3P8GAK3/8f+a/+X/oP/1/9H/GQAJAD8AQwA9AGsABwBvANL/RgCu//r/xP+w//r/gf8yAI3/OQDC/yMAGAAAAF8A4P95AN3/ZQAAACUABwDn/wYAuf/6/6b/6f+1/+//z/8TAPv/OQAvAD0AXAAPAG8A3v9LALH/CQC8/7z/9/+H/ygAjP9CALj/JQAMAAAATwDb/3cA1v9xAPv/MwAPAPb/EgDC//b/pf/l/67/5v/I/wYA6f8vACAAQwBOABgAbQDm/1sAtf8ZALr/z//v/5P/IACH/0MArP8vAPH/DAA/AOD/ZwDV/3MA9f9LABYABQAUAM3/9/+s/+X/qP/d/8L//v/k/yIAGQBBAEcAKABoAPH/YgDF/ygAtP/i/93/n/8VAIP/OACb/ywA2v8RADIA8P9jANn/dQDy/1AACAALABkA0v8HAKz/7v+r/9//v//x/97/HAASACwAPAAlAFkACwBmAN3/NwDM//z/2f+1/wMAjf8oAJf/LgDK/xcAHQD4/1YA2v9zAOz/ZAAGAB4ABgDj/wcAsf/6/6X/5/+2/+//1/8TAAoAMwAvACQAUQAPAFgA5P89ANH/BwDZ/8f/9v+Y/x4Ak/8sAL//HQALAPv/SADe/3IA4f9qAP//MwAEAO//CQC6//z/pf/t/7L/6f/Q/wkA/f8tACcAKABUABQAUQDt/zcA0v8TANn/2f/v/6z/FQCM/y4Atv8kAPf/BQA/AOH/ZQDm/2gA+/88AA8A/v8VAMn/+P+m/+n/r//b/8j/+v/y/x4AIwAqAEgAHQBUAPv/OwDY/yIA1v/m/+T/t/8NAJr/KQCp/ykA6f8NACsA7v9bANv/XgDz/0UABwAQABUA1f8BALH/7/+u/+T/xf/0/+7/GwAfAC4APgAiAFUACABDANr/KgDW//D/4f+6/woAo/8kAKX/KwDh/xQAGQDz/1sA3P9aAOz/QgACACIAAgDn/wIAv//1/6n/6f+///L/3f8VAA4ALgA0ACYAVQAOAEgA6/8wANL/AQDc/8b/+f+k/x0Anf8oAND/HwAMAPf/SADw/2AA8v9KAPX/KgD3//H/+P/F//z/rv/i/7r/6v/Z/wYABwAoADAAKQBOABkATAD0/zQA1P8PANv/0//v/6//FwCi/ywAxP8oAPn//v82APT/WwD4/00A+/8yAPv//f/8/83/+v+w/+T/sf/j/9b/AQACACoAIgAtAEIAHwBPAAEAQADe/xcA0v/k/+X/t/8IAKv/IgC//yEA6/8EACMA9/9PAPf/VAD+/zcA+/8JAPn/1P8AALf/6f+w/+P/zf////j/HAAdAC0APgAfAEsABwBCAOP/IADV/+//2v/B//3/rP8PALv/GADd/xEAFgABAEMABABaAP//QgACABcA+//n/wAAwP/w/67/4v+///3/6f8WABcAKQA0ACIARgAQAEcA8f8pANn/9f/U/87/7f+v/wgAtP8RANP/FgANAAIAOQACAFQA/f9HAAAAIAABAO3//P/E/wEAs//q/7n/9P/i/wYAEQAZADEAJABBABMASAAAADEA3/8CANL/1v/g/7H/AACy/w8Axf8ZAPv/CQAzAAIAVQD//1AAAAAsAAIA9v/7/8r/AwC2//P/tf/m/+H/AwADABEAKQApADoAHgBHAAgAPADr/wkA1//f/93/vP/6/7L/CgDA/x4A7/8hACkAAgBPAPz/UgD1/zIABAAEAPz/0v/5/7f/AACy//H/2f/+/wEAAAAkABUAMwAdADoAEQA9APD/EADU//L/1P/H/+z/tf8LALv/HADk/ygAGgADAEMA//9TAPn/QAAAABAAAQDc//z/wf8DALD/7P/Q//z/9/8HABoAFgA3ACMAMAAOADwA+P8ZANv/+P/Y/9H/5v+8/wUAu/8WANf/HgAMAAoAPQABAFMA/f9HAP7/HwAEAN//+v/H/wMAs//2/8r/8//y/wMADgAQAC4AIwAyABMAJwD8/xcA3v8LANP/5v/f/8j/AgC4/w4A1P8eAAQACgAxAAEAUgD+/0gA/v8nAAIA8f/5/8r/BAC6/+3/wP/l/+b/AQAIABkAIwArAC4AIAAoAAkAGADj/w0A0f/r/9//0P8DAL3/CgDN/xkA//8IACUAAgBJAAAATwD+/ysAAQD7//3/z/8DAMT/+f/K/+L/5P/1////EgAcACYALgApAC4ACwAcAPL/EADZ//L/1f/U//f/uv8KAMX/DwDu/wcAHwADAEUABgBNAAEANQAAAAYAAQDf////xf/+/9P/4f/b//X/9v8LAA4AGAAlACoAMAAQABkA9v8TAOL/+f/W/9r/8f/I/wcAxP8MAOr/BwATAAQAOAAGAEcAAABCAAEADwAEAOP//v/F/wIAzf/o/93/8P/s/w4ACwAZACEAKgAyABMAIQD5/xgA6v8DANb/4P/y/9H/AQDJ/wkA4/8DAAoA/f8wAAQAQwABAEAA//8VAAIA7P/+/8r/BADP/+v/2v/s/+n/CwAIAA0AHAAjADQAHAAkAP//GQDy/wQA5v/i//b/0P/7/8f/AADh/wMAAAD+/yUAAAA7AAEAOAAAABwAAAD6/wAA1/8CAMr/AADb/+3/5f8BAAIACAAVABcALwAfACgA+/8XAPn/DgDe/+//7v/Q/wMAz/8JAOP/CwDx////EAAHADEAAQArAAIAHQAEAAcAAADr/wEAzv8CANj//f/k/wEA+f/+/xQABwAqAB4ALAD+/x4A8P8SAOb/8//f/9j//f/N/wEA3v8LAO7/AgAMAAQALAAEAC0AAQAdAAQADwABAPP/BADV/wMA0/8AAOH/AQD1/wAAEAADACQAGwAwAAQAHwD0/xUA8f/4/+L/2//7/8z/AwDc/woA6f8AAAQAAwAoAAcANAAAACcAAgAUAAEA+P8CANv/AgDR/wEA4v8BAOz/AgAIAPv/JAAVADMAFAAhAPP/GQDz//7/3P/l/+3/z/8BANf/CgDn/wkA/P///xoABwAwAAIAJwACABcAAwABAAIA4f8BAND/AgDd//3/6P8CAAYA/f8YAAwALwAZACUA9v8bAPj/AwDq/+r/7P/S//7/1/8EAOX/CQD6//7/GQAFAC8AAQApAAEAGQACAAMAAgDm/wEAzv8BANv//v/p/wIA//8BABMABQArACAALAABAB4A8f8NAOv/7v/m/9n/+P/R/wMA4f8OAPT/AQATAAMAKwAHACoAAwAbAAMABQADAO7/AQDU/wEA2f8AAOL////3////EgAAACUAGgAvAAUAHQD2/xIA9f/0//T/3P/4/8///f/h/wIA7f8AAAoAAQApAAQALQADACAAAgAPAP//9P///9r//f/T/wAA3f/9//D/AQAQAP//HAAHAC8ACQAfAPv/GAD+//f/+P/j/wEA0v/+/9n/AADq/wIABgD//x0AAQAuAAEAIwAAABQAAwD8/wEA3/8AAM//AADe////7f8BAAwA//8ZAAMALwAAACEA//8dAP3//v/9/+n////U//z/1v8BAOT/AAD+/wAAGwD+/ywA/v8kAAIAGAD///3////q/wEA0P///97/AADk/wAABAAAABUAAQAqAAEAKQAAABwAAAAFAP//6f8AANr////X/wAA4/8AAPj/AgAUAAAAKgD//ywAAAAcAP7/AQAAAOv/AADU/wAA2v8CAOP/AAABAAAAFgABABsAAAAqAAEAHwAAABQAAgDv/wEA3v///9H////f////7/8BAAoAAQApAAAALgD//yEAAQAIAAAA8P8BANr//v/V////4f8AAPf//v8UAAAAFAAAACYAAQAhAP7/GwD+//T/AADo/wIA1v8CANr/AgDp/wEABgAAAB8AAQAsAAEAJAAAAAwA///z/wEA3/8AANT/AADh/wEA9P///xQAAgASAAAAJQAAACEAAAAaAP//+v8BAOj////W////2P8BAOf///8DAAAAHwAAAC4AAAAlAAAAEgAAAPL/AQDm////0f8CAN3/AADr//7/EQD//xAAAQAhAAIAJQAAAB8AAAABAP//6v8CAN//AQDX/wAA4/8AAPr/AAAXAAAAKgABACgAAAAbAP///f8AAOj/AADU/wAA2v///+f/AQANAAMAEQD+/xwA/v8kAP7/IQABAAgA/v/p////5/8AANf/AQDd/wEA8v8BABMAAQAjAAAALgAAACAAAQADAAEA7f8BANn/AgDY//7/4P/+/wEAAAAXAAIAFAAFACUA/P8jAP//EgAAAO//AQDo////1/8AAN3/AADx//7/DgAAAB0AAQAoAAAAIwAAAAoAAQDv/wMA4f8AANn/AQDi/wEA+v///xgAAAAQAP3/IwD//yUA/v8XAAAA7/8AAOv/AADc/wAA3P/+/+v/AQALAAEAGgACACkAAAAkAP7/EAABAO/////q//7/1/8AANz/AgDw/wEAEgD//w8AAAAcAAIAJQAAAB0AAAD2////7P8AAOP/AgDa/wAA5P8BAAQAAQAWAAAAIgAAACMAAAAaAP//+P///+v/AQDZ/wAA2////+7/AAARAAAADgAAABYAAAAhAAAAIAABAPz/AQDt/wAA5P8AANr/AQDg/wEA/P8BABcAAAAhAP//KQD//xwAAAD8/wEA7v8AAN3////Z/wAA6f8BAA0AAAARAAEAEQAAACMAAAAgAAEA/f8CAO3/AADv/wAA3v8BANv////1////EgAAABkA//8nAAAAIgAAAAMAAADu/wAA6P8CANn/AQDg////BQD//xMAAQAOAP//IAABACYAAAAGAAAA6f////H/AADg/wEA2f8AAO3///8PAAAAFQACACQAAAAkAAEADQABAO//AADp/wAA2////9z/AQD7/wEAFgAAAAwAAQAXAP7/JQD9/xMAAADx/wAA8f8AAOr/AADc/wEA4/8BAAkAAAAVAAAAIQD//yYA//8UAAEA9P8BAOz/AADf/wAA3P8AAPP/AAAQAAAADQABAA0AAAAlAAEAGAD///H//v/0/wEA7v8CAN//AADg//3/BAACABUAAQAfAAAAJwABABgAAQD0//7/7f///+L/AADa/wIA8P///w4A//8SAAMACQAAACAAAQAgAP//+v////P////y/wEA4/8BANr/AQD9/wAAEwD//xkAAQAjAAAAIgABAPz////s/wAA6v8BANX/AQDr//7/BwABABMAAAAHAP//FwAAACYAAAD//wEA9P8BAPb/AQDu////2v8BAPn/AAATAP//FwD//yEAAAAjAAAAAgAAAOn/AQDr//7/2P8CAOT/AAABAP//FgABAAUAAQATAP//IwAAAAEAAgDy/wEA9/8AAPb/AADb/wAA6/8BABAAAAATAP7/IQAAACYA//8UAP//7/8AAPD/AADd/wEA3P/+//7///8OAAAACgAAAAgAAAAhAP//CQACAPT/AQD2/wAA9v///97////m/wIADgABABMAAQAfAP//JwAAABMAAADw/wAA8P///+r/AQDb/wAA9f8AAA8AAAARAAIABAD//wYA/v8HAAAAAQD//wMAAgAGAAAA7f8AAOz/AAALAP//DwACABQA//8bAAAAHgD///f/AADq/wEA6/8BANj//v/t/wAACAD+/xAAAgAEAAAABAABAAcAAQADAAAA//8AAAUA///1/wAA5f///wIAAAAOAAAAEAAAABsAAAAhAAAA/v8BAOj////y////3f8AAOf/AQAGAAEADAAAAAcA//8BAP//CQABAAMA//8BAP//BQAAAAAAAADo/wAA+/8AAAoAAAALAAAAFAAAACAAAQAGAAIA7f8BAPH/AADm/wMA3P8CAP7/AgASAP//CgD//wAAAAAIAP//BQD//wEAAAACAP7/BAAAAPz/AwD8////BAAAAAEA//8HAAAAHQAAAAgA/v/x//7/8f///+f/AQDg/////P///woAAAAMAP//AAABAAYA//8EAAAAAgAAAAUAAAACAAAAAwAAAAIAAAABAAAAAQABAAAAAgAcAP//DgD///T/AQDx/wAA9P8CAOH/AAD3/wAACQAAAAoAAQABAP//AwAAAAcAAAD+/wAAAgACAAEAAAD+////AwD+/wAAAAABAP//+v8BABEAAQATAAAA9f/+//L//f/z/wIA6f8AAPb/AQAFAP//DAAAAAAAAAAFAP//BQD//wEA//8DAAEAAQAAAP7///8AAAAA//8BAAIAAAD+/wAAEAABABYAAgD6/wEA8v8BAPX/AwDp/wAA8////wMA//8JAAEABAABAAEA//8FAAEA//8AAAMAAQACAP//AQAAAAEAAgAFAP//AQABAAAAAQAAAP//EQABAAAAAAD5/wEA+P8AAPr////6/wAA+/8BAAIA//8BAAAA//8CAAUA//8BAP7/AAABAAEAAgAAAAAAAwAAAAEA/v8DAAIAAAACAAQA//8TAAAA/P8BAPr////3//////8AAPz/AQD7/wEAAgD/////AAABAAEABAAAAP//////////AAAAAAAAAAADAAAAAwAAAAAA//8EAP///v/+/xAA//8HAAAA+/////j/AQD8////AAD///n///8AAAAA//8AAP////8DAP//AgAAAAAAAAACAAIAAAD+/wAAAQD//wAA/////wIAAgD9////CQACAAYA///9////+f8BAPr/AQAAAAIA/v///wAA//8AAAAAAAAAAAEAAAABAAAAAgAAAAEAAAAAAAEAAQABAAAAAgABAP//AAD//wEAAAD///////8BAAIAAQAAAAAA/v/+//////8BAAAAAQABAP//AAD///////8BAAAAAQABAP////8CAAEAAQD//wEA/v//////AQAAAAAAAAAAAAAAAAD9/wMA/////wAAAQD+/wEA/v/+//7/AQD//wMAAAAAAAAAAAABAAEA//////7/AAACAP3/AAD//wAAAQAAAP//AQD//wAAAAAAAAEA//8CAP//AAAAAAAA/v8AAAAA//8BAP//AAABAP//AAAAAP//AQD//wAAAQABAAAAAAABAAEA/v///wAAAAD//////////wAAAAAAAP//AAD////////8/wIAAAADAAEA/////wEA/v8BAP7/AgAAAAEAAgAAAP//AgD/////AQD//wEA//////7/AQD//wMAAAAAAAAA//8CAP//AQAAAP//AAACAAAAAAABAP//AQD+/wAA/////wAA/f///wAAAAAAAP7/AAAAAAAAAgD//wEAAQACAP//AAAAAAEAAQD//wAAAAAAAAAA//8BAAMA/v8AAP7/AQAAAAAAAQAAAAAA///+//7/AAAAAAAA//8BAP7/AQAAAP//AQABAAAAAQAAAP//AAD//wIA/v///wAAAQABAP//AAD//wEA//8BAP//AgAAAP///////wAAAQABAP//AwABAAAAAAAAAAAA/////wIAAwACAAAA/v8BAAAAAAAAAAAA//8AAP////8AAAAA/////wAA/////wEA/v8CAAEAAQD//wAAAAABAAAAAAD//wEAAQABAAAA//8CAAAAAAAAAP7/AAABAAAAAQABAAAAAgABAAAAAQD//wEAAwD+/wAA/v8AAAEAAAAAAAAAAAAAAAEAAAD//wMA/v///wAAAAACAAEAAAAAAP7///8DAAEAAQD//wEA/f8BAAEAAQD//wEAAQABAAMAAgAAAAEA//8AAP//BAAAAAIA/v//////AQABAAAAAAD//wEAAAACAAIAAQAAAAAAAgAAAAAAAAABAAIAAAABAAIAAQAAAP////8AAAAAAAD//wAAAQACAP//AAAAAAAAAQAAAAEA//8AAAAAAAD/////AQD//wAAAQD9////AQAAAAAA//8BAAAA///+/////v8BAAAAAQAAAAAAAAAAAAIA//8BAAAAAAACAP//AQD//wAAAAD/////AAD9/wAAAAACAAAAAgAAAAEAAQABAAEAAAAAAAEA//8AAAEAAQACAAAAAQAAAAEA//8BAAIAAAACAP//AAABAAAAAAAAAAAAAAD//wAAAQD/////AAAAAP////8AAAEAAAAAAP7///8BAAIAAQD//wEAAQAAAP//AgAAAAAAAAD//wAA//8CAP7/AQAAAP7/AAD+////AAAAAAAAAQABAAAA//8AAAEAAAABAP7/AAAAAP7/AAD+/wAAAQABAAEA/////////v8BAP///v///wIAAAAAAAAAAQAAAAIAAQAAAAAAAAABAAEAAAAAAAAAAAD//wEAAQD//wAAAQABAAAA/v/+/////////wAAAAD//wAAAAD/////AAAAAP7/AAD//wIA//8CAP//AQAAAP////8AAAAAAQABAP////8AAP//AQACAAAAAQAAAAAAAAAAAAAA//8BAAAAAAD+/wAA/v///wEAAAD+//7///8CAP7/AAABAP3/AwAAAAAAAAABAAIAAAABAAAAAQABAAIAAAAAAP//AAAAAAEAAAACAAEAAAACAAAAAAABAAAAAwAAAAAAAAD+/wAAAQD9//////8BAAAA/v8AAAAAAAAAAAAAAAD//wMA/v8BAAEAAQACAAAA/v8BAP//AwABAAIAAQABAP//AQAAAAEAAAAAAAEA//8AAAAAAAD/////AAABAAEAAAAAAP////8AAAAAAAAAAAAA/v8AAP//AQAAAP//AAABAAIAAQAAAAAAAgABAAAA/////wAAAQABAP//AQABAAEA/////wAAAAAAAAAAAAABAAEAAQAAAAAAAAAAAAAA//8AAP7/AQD9/wAAAgD//wEAAQABAAEA/v8AAAEA/////wAAAAAAAP//AAABAAAAAAAAAAAA//8CAP//AAABAAEAAQABAAAA//8BAAIAAgD//wAA/v8AAAEAAAD///7/AAAAAAEAAAABAAAAAQABAAAAAQACAAAA///+/wAAAQABAP7////+/wAA//8AAAAAAgAAAP//AQD9/wAAAAD//wAA//8AAAAAAQAAAAAAAQD//wAAAAAAAP//AQABAAAA/v8CAP//AAD///////8AAAAAAAACAAEA//8BAP7/AAAAAAEA//8BAAAAAQD//wAAAQD+/wAA/////wAAAAD//wAAAQABAAAA//8AAAEA/////wAA//8AAAAA/v/+/wEAAgABAP//AgD//wIA/////wAA//8AAAEAAQAAAAAAAQAAAAMAAAACAP//",showCount:!0},audio:{disabled:!0,defaultToggledOn:!1,language:"en-US",voiceNames:["Microsoft David - English (United States)","Alex (English - United States)"],rate:1,volume:1,icon:ma,iconDisabled:ya},chatHistory:{disabled:!1,maxEntries:30,storageKey:"rcb-history",storageType:"LOCAL_STORAGE",viewChatHistoryButtonText:"Load Chat History ⟳",chatHistoryLineBreakText:"----- Previous Chat History -----",autoLoad:!1},chatInput:{disabled:!1,allowNewline:!1,enabledPlaceholderText:"Type your message...",disabledPlaceholderText:"",showCharacterCount:!1,characterLimit:-1,botDelay:1e3,sendButtonIcon:fa,blockSpam:!0,sendOptionOutput:!0,sendCheckboxOutput:!0,buttons:[ge.VOICE_MESSAGE_BUTTON,ge.SEND_MESSAGE_BUTTON]},chatWindow:{showScrollbar:!1,showTypingIndicator:!0,autoJumpToBottom:!1,showMessagePrompt:!0,messagePromptText:"New Messages ↓",messagePromptOffset:30,defaultOpen:!1},sensitiveInput:{maskInTextArea:!0,maskInUserBubble:!0,asterisksCount:10,hideInUserBubble:!1},userBubble:{animate:!0,showAvatar:!1,avatar:"data:image/svg+xml,%3csvg%20width='140'%20height='140'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cy='60.044'%20cx='70'%20fill='%235c5c5c'%20r='29'/%3e%3cpath%20d='m16.36%20156.186-.01-30.5c-.005-16.844%2024.168-30.507%2053.991-30.516%2029.823-.009%2054.004%2013.64%2054.01%2030.484l.008%2030.5-108%20.032z'%20fill='%235c5c5c'/%3e%3c/svg%3e",simulateStream:!1,streamSpeed:30},botBubble:{animate:!0,showAvatar:!1,avatar:Fr,simulateStream:!1,streamSpeed:30},voice:{disabled:!0,defaultToggledOn:!1,language:"en-US",timeoutPeriod:1e4,autoSendDisabled:!1,autoSendPeriod:1e3,sendAsAudio:!1,icon:ha,iconDisabled:ga},footer:{text:E.jsxs("div",{style:{cursor:"pointer",display:"flex",flexDirection:"row",alignItems:"center",columnGap:3},onClick:()=>window.open("https://react-chatbotify.com","_blank","noopener,noreferrer"),children:[E.jsx("span",{children:"Powered By "},0),E.jsx("div",{style:{borderRadius:"50%",width:14,height:14,display:"flex",justifyContent:"center",alignItems:"center",background:"linear-gradient(to right, #42b0c5, #491d8d)"},children:E.jsx(zr,{style:{width:"80%",height:"80%",fill:"#fff"}})},1),E.jsx("span",{style:{fontWeight:"bold"},children:" React ChatBotify"},2)]}),buttons:[ge.FILE_ATTACHMENT_BUTTON,ge.EMOJI_PICKER_BUTTON]},fileAttachment:{disabled:!1,multiple:!0,accept:".png",icon:Rr,iconDisabled:Rr,sendFileName:!0,showMediaDisplay:!1},emoji:{disabled:!1,icon:jr,iconDisabled:jr,list:["😀","😃","😄","😅","😊","😌","😇","🙃","🤣","😍","🥰","🥳","🎉","🎈","🚀","⭐️"]},toast:{maxCount:3,forbidOnMax:!1,dismissOnClick:!0},event:{rcbPreInjectMessage:!1,rcbPostInjectMessage:!1,rcbStartSimulateStreamMessage:!1,rcbStopSimulateStreamMessage:!1,rcbStartStreamMessage:!1,rcbChunkStreamMessage:!1,rcbStopStreamMessage:!1,rcbRemoveMessage:!1,rcbSaveChatHistory:!1,rcbLoadChatHistory:!1,rcbToggleChatWindow:!1,rcbStartSpeakAudio:!1,rcbToggleAudio:!1,rcbToggleNotifications:!1,rcbToggleVoice:!1,rcbChangePath:!1,rcbShowToast:!1,rcbDismissToast:!1,rcbUserSubmitText:!1,rcbUserUploadFile:!1,rcbTextAreaChangeValue:!1,rcbPreLoadChatBot:!1,rcbPostLoadChatBot:!1,rcbPreProcessBlock:!1,rcbPostProcessBlock:!1},ariaLabel:{chatButton:"open chat",audioButton:"toggle audio",closeChatButton:"close chat",emojiButton:"emoji picker",fileAttachmentButton:"upload file",notificationButton:"toggle notifications",sendButton:"send message",voiceButton:"toggle voice",inputTextArea:"input text area"},device:{desktopEnabled:!0,mobileEnabled:!0,applyMobileOptimizations:!0}},Gr=f.createContext({settings:{},setSyncedSettings:()=>null,syncedSettingsRef:{current:{}}}),te=()=>f.useContext(Gr),ba=({children:e,settings:t=qr,setSyncedSettings:r,syncedSettingsRef:n})=>E.jsx(Gr.Provider,{value:{settings:t,setSyncedSettings:r,syncedSettingsRef:n},children:e}),Yr={tooltipStyle:{},notificationBadgeStyle:{},chatWindowStyle:{},headerStyle:{},bodyStyle:{},chatInputContainerStyle:{},chatInputAreaStyle:{},chatInputAreaFocusedStyle:{},chatInputAreaDisabledStyle:{},userBubbleStyle:{},botBubbleStyle:{},botOptionStyle:{},botOptionHoveredStyle:{},botCheckboxRowStyle:{},botCheckboxNextStyle:{},botCheckMarkStyle:{},botCheckMarkSelectedStyle:{},characterLimitStyle:{},characterLimitReachedStyle:{},chatHistoryLineBreakStyle:{},chatMessagePromptStyle:{},chatMessagePromptHoveredStyle:{},footerStyle:{},loadingSpinnerStyle:{},mediaDisplayContainerStyle:{},chatButtonStyle:{},chatButtonHoveredStyle:{},chatHistoryButtonStyle:{},chatHistoryButtonHoveredStyle:{},sendButtonStyle:{},sendButtonHoveredStyle:{},sendButtonDisabledStyle:{},audioButtonStyle:{},audioButtonDisabledStyle:{},closeChatButtonStyle:{},emojiButtonStyle:{},emojiButtonDisabledStyle:{},fileAttachmentButtonStyle:{},fileAttachmentButtonDisabledStyle:{},notificationButtonStyle:{},notificationButtonDisabledStyle:{},voiceButtonStyle:{},voiceButtonDisabledStyle:{},chatIconStyle:{},audioIconStyle:{},audioIconDisabledStyle:{},closeChatIconStyle:{},emojiIconStyle:{},emojiIconDisabledStyle:{},fileAttachmentIconStyle:{},fileAttachmentIconDisabledStyle:{},notificationIconStyle:{},notificationIconDisabledStyle:{},voiceIconStyle:{},voiceIconDisabledStyle:{},sendIconStyle:{},sendIconDisabledStyle:{},sendIconHoveredStyle:{},rcbTypingIndicatorContainerStyle:{},rcbTypingIndicatorDotStyle:{},toastPromptContainerStyle:{},toastPromptStyle:{},toastPromptHoveredStyle:{}},Wr=f.createContext({styles:{},setSyncedStyles:()=>null,syncedStylesRef:{current:{}}}),se=()=>f.useContext(Wr),va=({children:e,styles:t=Yr,setSyncedStyles:r,syncedStylesRef:n})=>E.jsx(Wr.Provider,{value:{styles:t,setSyncedStyles:r,syncedStylesRef:n},children:e}),wa=({buttons:e})=>{var t,r,n,o,i,A,s;const{settings:a}=te(),{styles:l}=se(),c={backgroundImage:`linear-gradient(to right, ${(t=a.general)==null?void 0:t.secondaryColor},
|
|
2
|
+
${(r=a.general)==null?void 0:r.primaryColor})`,...l.headerStyle};return E.jsxs("div",{style:c,className:"rcb-chat-header-container",children:[E.jsxs("div",{className:"rcb-chat-header",children:[((n=a.header)==null?void 0:n.showAvatar)&&E.jsx("div",{style:{backgroundImage:`url("${(o=a.header)==null?void 0:o.avatar}")`},className:"rcb-bot-avatar"}),f.isValidElement((i=a.header)==null?void 0:i.title)?(A=a.header)==null?void 0:A.title:E.jsx("div",{style:{margin:0,fontSize:20,fontWeight:"bold"},children:(s=a.header)==null?void 0:s.title})]}),E.jsx("div",{className:"rcb-chat-header",children:e==null?void 0:e.map((d,u)=>E.jsx(f.Fragment,{children:d},u))})]})},Kr=f.createContext({}),ve=()=>f.useContext(Kr),xa=({children:e,botIdRef:t,flowRef:r})=>{const n=f.useRef(null),o=f.useRef(""),i=f.useRef(null),A=f.useRef(new Map),s=f.useRef(null),a=f.useRef(""),l=f.useRef(!1),c=f.useRef(null),d=f.useRef(null),u=f.useRef(null);return E.jsx(Kr.Provider,{value:{botIdRef:t,flowRef:r,inputRef:n,timeoutIdRef:i,streamMessageMap:A,chatBodyRef:s,paramsInputRef:a,keepVoiceOnRef:l,audioContextRef:c,audioBufferRef:d,gainNodeRef:u,prevInputRef:o},children:e})},He=e=>{const[t,r]=f.useState(e),n=f.useRef(e);return[t,o=>{const i=typeof o=="function"?o(n.current):o;n.current=i,r(i)},n]},Vr=f.createContext({}),xe=()=>f.useContext(Vr),Ea=({children:e,settings:t})=>{var r,n,o,i,A,s;const[a,l,c]=He(!1),[d,u,p]=He(((r=t==null?void 0:t.chatWindow)==null?void 0:r.defaultOpen)??!1),[g,v,h]=He(((n=t==null?void 0:t.audio)==null?void 0:n.defaultToggledOn)??!1),[w,x,m]=He(((o=t==null?void 0:t.voice)==null?void 0:o.defaultToggledOn)??!1),[k,P,C]=He(((i=t==null?void 0:t.notification)==null?void 0:i.defaultToggledOn)??!0),[S,I]=f.useState(!1),[Q,D]=f.useState(!1),[O,B,_]=He(!1),[F,M,U]=He(!0),[N,H,y]=He(!1),[q,b]=f.useState(!1),[W,Z]=f.useState(!1),[J,oe]=f.useState(0),[Te,ce]=f.useState(0),[Xe,z]=f.useState(!1),[Y,re]=f.useState(((A=window.visualViewport)==null?void 0:A.height)??window.innerHeight),[ee,ie]=f.useState(((s=window.visualViewport)==null?void 0:s.width)??window.innerWidth);return E.jsx(Vr.Provider,{value:{isBotTyping:a,setSyncedIsBotTyping:l,syncedIsBotTypingRef:c,isChatWindowOpen:d,setSyncedIsChatWindowOpen:u,syncedIsChatWindowOpenRef:p,audioToggledOn:g,setSyncedAudioToggledOn:v,syncedAudioToggledOnRef:h,voiceToggledOn:w,setSyncedVoiceToggledOn:x,syncedVoiceToggledOnRef:m,notificationsToggledOn:k,setSyncedNotificationsToggledOn:P,syncedNotificationsToggledOnRef:C,isLoadingChatHistory:S,setIsLoadingChatHistory:I,hasChatHistoryLoaded:Q,setHasChatHistoryLoaded:D,isScrolling:O,setSyncedIsScrolling:B,syncedIsScrollingRef:_,textAreaDisabled:F,setSyncedTextAreaDisabled:M,syncedTextAreaDisabledRef:U,textAreaSensitiveMode:N,setSyncedTextAreaSensitiveMode:H,syncedTextAreaSensitiveModeRef:y,hasInteractedPage:q,setHasInteractedPage:b,hasFlowStarted:W,setHasFlowStarted:Z,unreadCount:J,setUnreadCount:oe,inputLength:Te,setInputLength:ce,blockAllowsAttachment:Xe,setBlockAllowsAttachment:z,viewportHeight:Y,setViewportHeight:re,viewportWidth:ee,setViewportWidth:ie},children:e})};var j=(e=>(e.START_SPEAK_AUDIO="rcb-start-speak-audio",e.TOGGLE_AUDIO="rcb-toggle-audio",e.TOGGLE_NOTIFICATIONS="rcb-toggle-notifications",e.TOGGLE_VOICE="rcb-toggle-voice",e.TOGGLE_CHAT_WINDOW="rcb-toggle-chat-window",e.PRE_INJECT_MESSAGE="rcb-pre-inject-message",e.POST_INJECT_MESSAGE="rcb-post-inject-message",e.START_SIMULATE_STREAM_MESSAGE="rcb-start-simulate-stream-message",e.STOP_SIMULATE_STREAM_MESSAGE="rcb-stop-simulate-stream-message",e.START_STREAM_MESSAGE="rcb-start-stream-message",e.CHUNK_STREAM_MESSAGE="rcb-chunk-stream-message",e.STOP_STREAM_MESSAGE="rcb-stop-stream-message",e.REMOVE_MESSAGE="rcb-remove-message",e.SAVE_CHAT_HISTORY="rcb-save-chat-history",e.LOAD_CHAT_HISTORY="rcb-load-chat-history",e.CHANGE_PATH="rcb-change-path",e.SHOW_TOAST="rcb-show-toast",e.DISMISS_TOAST="rcb-dismiss-toast",e.USER_SUBMIT_TEXT="rcb-user-submit-text",e.USER_UPLOAD_FILE="rcb-user-upload-file",e.TEXT_AREA_CHANGE_VALUE="rcb-text-area-change-value",e.PRE_LOAD_CHATBOT="rcb-pre-load-chatbot",e.POST_LOAD_CHATBOT="rcb-post-load-chatbot",e.PRE_PROCESS_BLOCK="rcb-pre-process-block",e.POST_PROCESS_BLOCK="rcb-post-process-block",e))(j||{});const ka={[j.START_SPEAK_AUDIO]:!0,[j.TOGGLE_AUDIO]:!0,[j.TOGGLE_VOICE]:!0,[j.TOGGLE_NOTIFICATIONS]:!0,[j.TOGGLE_CHAT_WINDOW]:!0,[j.PRE_INJECT_MESSAGE]:!0,[j.POST_INJECT_MESSAGE]:!1,[j.PRE_LOAD_CHATBOT]:!0,[j.POST_LOAD_CHATBOT]:!1,[j.START_SIMULATE_STREAM_MESSAGE]:!0,[j.STOP_SIMULATE_STREAM_MESSAGE]:!1,[j.START_STREAM_MESSAGE]:!0,[j.CHUNK_STREAM_MESSAGE]:!0,[j.STOP_STREAM_MESSAGE]:!0,[j.REMOVE_MESSAGE]:!0,[j.SAVE_CHAT_HISTORY]:!0,[j.LOAD_CHAT_HISTORY]:!0,[j.CHANGE_PATH]:!0,[j.SHOW_TOAST]:!0,[j.DISMISS_TOAST]:!0,[j.USER_SUBMIT_TEXT]:!0,[j.USER_UPLOAD_FILE]:!0,[j.TEXT_AREA_CHANGE_VALUE]:!0,[j.PRE_PROCESS_BLOCK]:!0,[j.POST_PROCESS_BLOCK]:!0},Mn=async(e,t,r)=>{const n=new CustomEvent(e,{detail:t,cancelable:ka[e]});return n.data=r,n.promises=[],window.dispatchEvent(n),await Promise.all(n.promises),n},Xr=f.createContext({paths:[],setSyncedPaths:()=>{},syncedPathsRef:{current:[]}}),Rt=()=>f.useContext(Xr),Ca=({children:e})=>{const[t,r,n]=He([]);return E.jsx(Xr.Provider,{value:{paths:t,setSyncedPaths:r,syncedPathsRef:n},children:e})},$e=()=>{const{botIdRef:e}=ve(),{syncedPathsRef:t}=Rt(),r=f.useCallback(()=>t.current.length>0?t.current.at(-1)??null:null,[]),n=f.useCallback(()=>t.current.length>1?t.current.at(-2)??null:null,[]);return{dispatchRcbEvent:f.useCallback(async(o,i)=>{const A={botId:e.current,currPath:r(),prevPath:n()};return await Mn(o,A,i)},[e])}},Ue=()=>{const{settings:e}=te(),{isChatWindowOpen:t,setSyncedIsChatWindowOpen:r,viewportHeight:n,setViewportHeight:o,viewportWidth:i,setViewportWidth:A,setUnreadCount:s,setSyncedIsBotTyping:a,setSyncedIsScrolling:l,syncedIsBotTypingRef:c,syncedIsChatWindowOpenRef:d}=xe(),{chatBodyRef:u}=ve(),{dispatchRcbEvent:p}=$e(),g=f.useCallback(()=>{if(!u.current)return!1;const m=u.current.getBoundingClientRect(),k=window.innerHeight??document.documentElement.clientHeight,P=window.innerWidth??document.documentElement.clientWidth;return m.top>=0&&m.left>=0&&m.bottom<=k&&m.right<=P},[u]),v=f.useCallback(async m=>{var k;m!==d.current&&((k=e.event)!=null&&k.rcbToggleChatWindow&&(await p(j.TOGGLE_CHAT_WINDOW,{currState:d.current,newState:!d.current})).defaultPrevented||r(P=>(P||s(0),!P)))},[d]),h=f.useCallback(async m=>{m!==c.current&&a(k=>!k)},[c]),w=f.useCallback((m,k,P,C)=>(m/=C/2)<1?P/2*m*m+k:-P/2*(--m*(m-2)-1)+k,[]),x=f.useCallback((m=0)=>{if(!u.current)return;const k=u.current.scrollHeight-u.current.clientHeight;if(m<=0)return u.current.scrollTop=k,void l(!1);const P=u.current.scrollTop,C=k-P;let S=0;const I=()=>{if(!u.current)return;S+=20;const Q=w(S,P,C,m);u.current.scrollTop=Q,S<m?requestAnimationFrame(I):l(!1)};I()},[u]);return{isChatWindowOpen:t,setSyncedIsChatWindowOpen:r,toggleChatWindow:v,viewportHeight:n,setViewportHeight:o,viewportWidth:i,setViewportWidth:A,toggleIsBotTyping:h,scrollToBottom:x,getIsChatBotVisible:g}},Pa=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{unreadCount:i,isScrolling:A}=xe(),{chatBodyRef:s}=ve(),{scrollToBottom:a}=Ue(),[l,c]=f.useState(!1),d={color:(e=n.general)==null?void 0:e.primaryColor,borderColor:(t=n.general)==null?void 0:t.primaryColor,...o.chatMessagePromptHoveredStyle};return E.jsx("div",{className:"rcb-message-prompt-container "+(s.current&&((u=n.chatWindow)!=null&&u.showMessagePrompt)&&A&&i>0?"visible":"hidden"),children:E.jsx("div",{onMouseEnter:()=>{c(!0)},onMouseLeave:()=>{c(!1)},style:l?d:{...o.chatMessagePromptStyle},onMouseDown:p=>{p.preventDefault(),a(600)},className:"rcb-message-prompt-text",children:(r=n.chatWindow)==null?void 0:r.messagePromptText})});var u},Jr=f.createContext({messages:[],setSyncedMessages:()=>{},syncedMessagesRef:{current:[]}}),On=()=>f.useContext(Jr),Sa=({children:e})=>{const[t,r,n]=He([]);return E.jsx(Jr.Provider,{value:{messages:t,setSyncedMessages:r,syncedMessagesRef:n},children:e})},Ba=({message:e,isNewSender:t})=>{var r,n,o,i,A,s;const{settings:a}=te(),{styles:l}=se(),c=typeof e.content=="string",d=e.content,u=e.contentWrapper?E.jsx(e.contentWrapper,{children:d}):d,p={backgroundColor:(r=a.general)==null?void 0:r.primaryColor,color:"#fff",maxWidth:(n=a.userBubble)!=null&&n.showAvatar?"65%":"70%",...l.userBubbleStyle},g=(o=a.userBubble)!=null&&o.animate?"rcb-user-message-entry":"",v=((i=a.userBubble)==null?void 0:i.showAvatar)&&t,h="rcb-user-message"+(!t&&(A=a.userBubble)!=null&&A.showAvatar?" rcb-user-message-offset":"");return E.jsxs("div",{className:"rcb-user-message-container",children:[c?E.jsx("div",{style:p,className:`${h} ${g}`,children:u}):E.jsx(E.Fragment,{children:u}),v&&E.jsx("div",{style:{backgroundImage:`url("${(s=a.userBubble)==null?void 0:s.avatar}")`},className:"rcb-message-user-avatar"})]})},Da=({message:e,isNewSender:t})=>{var r,n,o,i,A,s;const{settings:a}=te(),{styles:l}=se(),c=typeof e.content=="string",d=e.content,u=e.contentWrapper?E.jsx(e.contentWrapper,{children:d}):d,p={backgroundColor:(r=a.general)==null?void 0:r.secondaryColor,color:"#fff",maxWidth:(n=a.botBubble)!=null&&n.showAvatar?"65%":"70%",...l.botBubbleStyle},g=(o=a.botBubble)!=null&&o.animate?"rcb-bot-message-entry":"",v=((i=a.botBubble)==null?void 0:i.showAvatar)&&t,h="rcb-bot-message"+(!t&&(A=a.botBubble)!=null&&A.showAvatar?" rcb-bot-message-offset":"");return E.jsxs("div",{className:"rcb-bot-message-container",children:[v&&E.jsx("div",{style:{backgroundImage:`url("${(s=a.botBubble)==null?void 0:s.avatar}")`},className:"rcb-message-bot-avatar"}),c?E.jsx("div",{style:p,className:`${h} ${g}`,children:u}):E.jsx(E.Fragment,{children:u})]})},Ia=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),i=(e=n.botBubble)!=null&&e.animate?"rcb-bot-message-entry":"";return E.jsxs("div",{className:"rcb-bot-message-container",children:[((t=n.botBubble)==null?void 0:t.showAvatar)&&E.jsx("div",{style:{backgroundImage:`url("${(r=n.botBubble)==null?void 0:r.avatar}")`},className:"rcb-message-bot-avatar"}),E.jsx("div",{onMouseDown:A=>{A.preventDefault()},className:`rcb-bot-message ${i}`,children:E.jsxs("div",{className:"rcb-typing-indicator",style:{...o==null?void 0:o.rcbTypingIndicatorContainerStyle},children:[E.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}}),E.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}}),E.jsx("span",{className:"rcb-dot",style:{...o==null?void 0:o.rcbTypingIndicatorDotStyle}})]})})]})},Ta=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{messages:i}=On(),{scrollToBottom:A}=Ue(),{isBotTyping:s,syncedIsScrollingRef:a}=xe(),{chatBodyRef:l}=ve(),c={...o==null?void 0:o.bodyStyle,scrollbarWidth:(e=n.chatWindow)!=null&&e.showScrollbar?"auto":"none"};return f.useEffect(()=>{a.current||A()},[(t=l.current)==null?void 0:t.scrollHeight]),E.jsxs("div",{style:c,className:"rcb-chat-body-container",ref:l,children:[i.map((d,u)=>{const p=(g=>g===0||i[g].sender!==i[g-1].sender)(u);return d.sender.toUpperCase()==="USER"?E.jsx(Ba,{message:d,isNewSender:p},u):d.sender.toUpperCase()==="BOT"?E.jsx(Da,{message:d,isNewSender:p},u):E.jsx("div",{children:d.content},u)}),s&&((r=n.chatWindow)==null?void 0:r.showTypingIndicator)&&E.jsx(Ia,{}),E.jsx(Pa,{})]})},Qa=({checkboxes:e,checkedItems:t,path:r})=>{var n,o,i,A,s,a,l,c,d,u,p;const{settings:g}=te(),{styles:v}=se(),{paths:h}=Rt(),{handleSubmitText:w}=Dt(),[x,m]=f.useState(new Set),[k,P]=f.useState(!1),C={cursor:k?`url("${(n=g.general)==null?void 0:n.actionDisabledIcon}"), auto`:"pointer",color:(o=g.general)==null?void 0:o.primaryColor,borderColor:(i=g.general)==null?void 0:i.primaryColor,...v.botCheckboxRowStyle},S={cursor:k||x.size<e.min?`url("${(A=g.general)==null?void 0:A.actionDisabledIcon}"), auto`:"pointer",color:(s=g.general)==null?void 0:s.primaryColor,borderColor:(a=g.general)==null?void 0:a.primaryColor,...v.botCheckboxNextStyle},I={cursor:k?`url("${(l=g.general)==null?void 0:l.actionDisabledIcon}"), auto`:"pointer",color:"transparent",...v.botCheckMarkStyle},Q={cursor:k?`url("${(c=g.general)==null?void 0:c.actionDisabledIcon}"), auto`:"pointer",color:"#fff",borderColor:(d=g.general)==null?void 0:d.primaryColor,backgroundColor:(u=g.general)==null?void 0:u.primaryColor,...v.botCheckMarkSelectedStyle};return f.useEffect(()=>{h.length>0&&h[h.length-1]!==r&&P(!e.reusable)},[h]),E.jsxs("div",{className:"rcb-checkbox-container "+((p=g.botBubble)!=null&&p.showAvatar?"rcb-checkbox-offset":""),children:[e.items.map(D=>E.jsx("div",{onMouseDown:O=>{O.preventDefault(),(B=>{k||m(_=>{const F=new Set(_);if(F.has(B))t.delete(B),F.delete(B);else{if(x.size==e.max)return _;t.add(B),F.add(B)}return F})})(D)},style:C,className:"rcb-checkbox-row-container",children:E.jsxs("div",{className:"rcb-checkbox-row",children:[E.jsx("div",{style:x.has(D)?Q:I,className:"rcb-checkbox-mark"}),E.jsx("div",{className:"rcb-checkbox-label",children:D})]})},D)),E.jsx("div",{style:S,className:"rcb-checkbox-next-button",onMouseDown:D=>{var O;if(D.preventDefault(),k||x.size<e.min)return;const B=Array.from(t).join(", ");let _;P(!e.reusable),_=e.sendOutput!=null?e.sendOutput:((O=g.chatInput)==null?void 0:O.sendCheckboxOutput)??!0,w(B,_)}})]})},Ma=async(e,t)=>{const r=e.checkboxes;if(!r)return;let n;if(typeof r=="function"?(n=r(t),n instanceof Promise&&(n=await n)):n=r,Array.isArray(n)&&(n={items:n}),!("items"in n)||n.items.length==0)return;n.min==null&&(n.min=1),n.max==null&&(n.max=n.items.length),n.min>n.max&&(n.min=n.max),n.reusable==null&&(n.reusable=!1);const o=new Set,i=t.currPath,A=E.jsx(Qa,{checkboxes:n,checkedItems:o,path:i});await t.injectMessage(A)},Oa=async(e,t)=>{const r=e.function;if(!r)return;const n=r(t);return n instanceof Promise?await n:n},_a=async(e,t,r)=>{const n=e.message;if(!n)return;if(typeof n=="string")return void(n.trim()!==""&&(r?await t.simulateStreamMessage(n):await t.injectMessage(n)));let o=n(t);o instanceof Promise&&(o=await o),typeof o=="string"&&o.trim()!==""&&(r?await t.simulateStreamMessage(o):await t.injectMessage(o))},Na=({options:e,path:t})=>{var r,n,o,i,A,s;const{settings:a}=te(),{styles:l}=se(),{paths:c}=Rt(),{handleSubmitText:d}=Dt(),[u,p]=f.useState([]),[g,v]=f.useState(!1),h={cursor:g?`url("${(r=a.general)==null?void 0:r.actionDisabledIcon}"), auto`:"pointer",color:(n=a.general)==null?void 0:n.primaryColor,borderColor:(o=a.general)==null?void 0:o.primaryColor,backgroundColor:"#fff",...l.botOptionStyle},w={color:"#fff",borderColor:(i=a.general)==null?void 0:i.primaryColor,backgroundColor:(A=a.general)==null?void 0:A.primaryColor,...l.botOptionHoveredStyle};return f.useEffect(()=>{c.length>0&&c[c.length-1]!==t&&v(!e.reusable)},[c]),E.jsx("div",{className:"rcb-options-container "+((s=a.botBubble)!=null&&s.showAvatar?"rcb-options-offset":""),children:e.items.map((x,m)=>{const k=u[m]&&!g;return E.jsx("div",{className:"rcb-options",style:k?w:h,onMouseEnter:()=>(P=>{p(C=>{const S=[...C];return S[P]=!0,S})})(m),onMouseLeave:()=>(P=>{p(C=>{const S=[...C];return S[P]=!1,S})})(m),onMouseDown:P=>{var C;if(P.preventDefault(),g)return;let S;v(!e.reusable),S=e.sendOutput!=null?e.sendOutput:((C=a.chatInput)==null?void 0:C.sendOptionOutput)??!0,d(x,S)},children:x},x)})})},La=async(e,t)=>{const r=e.options;if(!r)return;let n;if(typeof r=="function"?(n=r(t),n instanceof Promise&&(n=await n)):n=r,Array.isArray(n)&&(n={items:n}),!("items"in n)||n.items.length==0)return;n.reusable==null&&(n.reusable=!1);const o=t.currPath,i=E.jsx(Na,{options:n,path:o});await t.injectMessage(i)},Ha=async(e,t)=>{const r=e.component;if(r){if(typeof r=="function"){let n=r(t);return n instanceof Promise&&(n=await n),n?void await t.injectMessage(n):void 0}await t.injectMessage(r)}},Ua=async(e,t,r,n)=>{const o=e.transition;let i;if(typeof o=="function"?(i=o(t),i instanceof Promise&&(i=await i)):i=o,typeof i=="number"&&(i={duration:i}),!i||i instanceof Promise||i.duration==null||typeof i.duration!="number")return;i.interruptable==null&&(i.interruptable=!1);const A=setTimeout(async()=>{const s=await n(e);s&&await $r(s,t)},i.duration);i.interruptable&&(r.current=A)},Fa=async(e,t,r)=>{const n=e.chatDisabled;if(n==null)return;let o;typeof n=="function"?(o=n(t),o instanceof Promise&&(o=await o)):o=n,r(o)},Zr=async(e,t,r)=>{const n=e.isSensitive;if(!n)return void r(!1);let o;typeof n=="function"?(o=n(t),o instanceof Promise&&(o=await o)):o=n,r(o)},$r=async(e,t)=>{if(!e)throw new Error("Block is not valid.");const r=Object.keys(e);for(const n of r)n==="function"&&await Oa(e,t);r.includes("path")&&await(async(n,o)=>{const i=n.path;if(!i)return!1;if(typeof i=="string")return await o.goToPath(i),!0;let A=i(o);if(A instanceof Promise&&(A=await A),!A)return!1;const s=A;return await o.goToPath(s),!0})(e,t)},za=()=>{var e;const{settings:t}=te(),{styles:r}=se();return E.jsx("div",{className:"rcb-line-break-container",children:E.jsx("div",{style:{...r.chatHistoryLineBreakStyle},className:"rcb-line-break-text","data-testid":"chat-history-line-break-text",children:(e=t.chatHistory)==null?void 0:e.chatHistoryLineBreakText})})},Ra=()=>{var e;const{settings:t}=te(),{styles:r}=se(),n={borderTop:`4px solid ${(e=t.general)==null?void 0:e.primaryColor}`,...r.loadingSpinnerStyle};return E.jsx("div",{className:"rcb-spinner-container",children:E.jsx("div",{style:n,className:"rcb-spinner"})})},on=()=>{try{if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();throw new Error("crypto.randomUUID not available")}catch(e){if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const r=crypto.getRandomValues(new Uint8Array(1))[0]%16;return(t==="x"?r:3&r|8).toString(16)});throw console.error(e),new Error("crypto.getRandomValues is also not available")}},dt=(e,t)=>({id:on(),content:e,sender:t,type:typeof e=="string"?"string":"object",timestamp:new Date().toUTCString(),tags:[]});let pt,eo=!1,an="rcb-history",sn=30,to=!1,An=[];const jt=()=>An,_n=e=>{no(e),An=e},no=e=>{pt&&pt.setItem(an,JSON.stringify(e))},Nn=e=>{var t,r,n,o,i;pt=((r=(t=e.chatHistory)==null?void 0:t.storageType)==null?void 0:r.toUpperCase())==="SESSION_STORAGE"?sessionStorage:localStorage,an=(n=e.chatHistory)==null?void 0:n.storageKey,sn=(o=e.chatHistory)==null?void 0:o.maxEntries,to=(i=e.chatHistory)==null?void 0:i.disabled,An=(A=>{if(A!=null)try{return JSON.parse(A)}catch{return[]}return[]})(pt.getItem(an))},ja=e=>f.isValidElement(e.content)?structuredClone({id:e.id,content:la.renderToString(e.content),type:e.type,sender:e.sender.toUpperCase(),timestamp:e.timestamp,tags:e.tags}):e,ro=(e,t,r)=>{const n=new DOMParser().parseFromString(e,"text/html");return Array.from(n.body.childNodes).map((o,i)=>{var A;if(o.nodeType===Node.TEXT_NODE)return o.textContent;{const s=o.tagName.toLowerCase();let a=Array.from(o.attributes).reduce((l,c)=>{const d=c.name.toLowerCase();if(d==="style"){const u=c.value.split(";").filter(g=>g.trim()!==""),p={};u.forEach(g=>{const[v,h]=g.split(":").map(x=>x.trim()),w=v.replace(/-([a-z])/g,(x,m)=>m.toUpperCase());p[w]=h}),l[d]=p}else s!=="audio"&&s!=="video"||d!=="controls"||c.value!==""?l[d]=c.value:l[d]="true";return l},{});if(Object.prototype.hasOwnProperty.call(a,"class")){const l=o.classList;a.className=l.toString(),delete a.class,(A=t.botBubble)!=null&&A.showAvatar&&(a=qa(l,a)),a=Ga(l,a,t,r),a=Ya(l,a,t,r),a=Wa(l,a,t,r),a=Ka(l,a,t,r)}if(["area","base","br","col","embed","hr","img","input","link","meta","source","track","wbr"].includes(s))return f.createElement(s,{key:i,...a});{const l=ro(o.innerHTML,t,r);return f.createElement(s,{key:i,...a},...l)}}})},qa=(e,t)=>((e.contains("rcb-options-container")||e.contains("rcb-checkbox-container"))&&(t.className=`${e.toString()} rcb-options-offset`),t),Ga=(e,t,r,n)=>{var o,i,A,s,a;return e.contains("rcb-options")&&(t.style={...t.style,color:((o=n.botOptionStyle)==null?void 0:o.color)??((i=r.general)==null?void 0:i.primaryColor),borderColor:((A=n.botOptionStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(a=r.general)==null?void 0:a.actionDisabledIcon}"), auto`,...n.botOptionStyle}),t},Ya=(e,t,r,n)=>{var o,i,A,s,a;return e.contains("rcb-checkbox-row-container")&&(t.style={...t.style,color:((o=n.botCheckboxRowStyle)==null?void 0:o.color)??((i=r.general)==null?void 0:i.primaryColor),borderColor:((A=n.botCheckboxRowStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(a=r.general)==null?void 0:a.actionDisabledIcon}"), auto`,...n.botCheckboxRowStyle}),t},Wa=(e,t,r,n)=>{var o,i,A,s,a;return e.contains("rcb-checkbox-next-button")&&(t.style={...t.style,color:((o=n.botCheckboxNextStyle)==null?void 0:o.color)??((i=r.general)==null?void 0:i.primaryColor),borderColor:((A=n.botCheckboxNextStyle)==null?void 0:A.color)??((s=r.general)==null?void 0:s.primaryColor),cursor:`url("${(a=r.general)==null?void 0:a.actionDisabledIcon}"), auto`,...n.botCheckboxNextStyle}),t},Ka=(e,t,r,n)=>{var o,i;return(e.contains("rcb-media-display-image-container")||e.contains("rcb-media-display-video-container"))&&(t.style={...t.style,backgroundColor:(o=r.general)==null?void 0:o.primaryColor,maxWidth:(i=r.userBubble)!=null&&i.showAvatar?"65%":"70%",...n.mediaDisplayContainerStyle}),t},Ln=()=>{const{settings:e}=te(),{notificationsToggledOn:t,setSyncedNotificationsToggledOn:r,hasInteractedPage:n,unreadCount:o,setUnreadCount:i,syncedNotificationsToggledOnRef:A}=xe(),{audioBufferRef:s,audioContextRef:a,gainNodeRef:l}=ve(),{dispatchRcbEvent:c}=$e(),d=f.useCallback(async()=>{var p,g;const v=(p=e.notification)==null?void 0:p.sound;a.current=new AudioContext;const h=a.current.createGain();let w;if(h.gain.value=((g=e.notification)==null?void 0:g.volume)??.2,l.current=h,v!=null&&v.startsWith("data:audio")){const x=atob(v.split(",")[1]),m=new ArrayBuffer(x.length),k=new Uint8Array(m);for(let P=0;P<x.length;P++)k[P]=x.charCodeAt(P);w=m}else w=await(await fetch(v)).arrayBuffer();s.current=await a.current.decodeAudioData(w)},[e.notification]),u=f.useCallback(()=>{var p;if((p=e.notification)!=null&&p.disabled||!A.current||!n||!a.current||!s.current)return;const g=a.current.createBufferSource();g.buffer=s.current,g.connect(l.current).connect(a.current.destination),g.start()},[e.notification,A,n,a,s,l]);return{unreadCount:o,setUnreadCount:i,notificationsToggledOn:t,toggleNotifications:f.useCallback(async p=>{var g;p!==A.current&&((g=e.event)!=null&&g.rcbToggleNotifications&&(await c(j.TOGGLE_NOTIFICATIONS,{currState:A.current,newState:!A.current})).defaultPrevented||r(v=>!v))},[A]),playNotificationSound:u,setUpNotifications:d}},Va=(e,t)=>{var r,n,o,i;((A,s,a,l,c)=>{if(!window.SpeechSynthesisUtterance)return void console.info("Speech Synthesis API is not supported in this environment.");const d=new window.SpeechSynthesisUtterance;d.text=A,d.lang=s,d.rate=l,d.volume=c;let u=!1;for(const p of a){const g=window.speechSynthesis.getVoices().find(v=>v.name===p);if(g){d.voice=g,window.speechSynthesis.speak(d),u=!0;break}}u||window.speechSynthesis.speak(d)})(t,(r=e.audio)==null?void 0:r.language,(n=e.audio)==null?void 0:n.voiceNames,(o=e.audio)==null?void 0:o.rate,(i=e.audio)==null?void 0:i.volume)},oo=()=>{const{settings:e}=te(),{audioToggledOn:t,setSyncedAudioToggledOn:r,syncedAudioToggledOnRef:n}=xe(),{dispatchRcbEvent:o}=$e(),i=f.useCallback(async s=>{var a;s!==n.current&&((a=e.event)!=null&&a.rcbToggleAudio&&(await o(j.TOGGLE_AUDIO,{currState:n.current,newState:!n.current})).defaultPrevented||r(l=>!l))},[n]),A=f.useCallback(async s=>{var a,l;if((a=e.audio)!=null&&a.disabled||!n.current)return;let c=s;if((l=e.event)!=null&&l.rcbStartSpeakAudio){const d=await o(j.START_SPEAK_AUDIO,{textToRead:c});if(d.defaultPrevented)return;c=d.data.textToRead}Va(e,c)},[e,n]);return{audioToggledOn:t,speakAudio:A,toggleAudio:i}},yt=()=>{var e,t,r;const{settings:n}=te(),{messages:o,setSyncedMessages:i,syncedMessagesRef:A}=On(),{setSyncedIsBotTyping:s,setUnreadCount:a,syncedIsScrollingRef:l,syncedIsChatWindowOpenRef:c}=xe(),{streamMessageMap:d,chatBodyRef:u,paramsInputRef:p}=ve(),{scrollToBottom:g,getIsChatBotVisible:v}=Ue(),{dispatchRcbEvent:h}=$e(),{speakAudio:w}=oo(),{playNotificationSound:x}=Ln(),m=f.useCallback(async B=>{var _,F;if((_=n.event)!=null&&_.rcbSaveChatHistory){const M=await h(j.SAVE_CHAT_HISTORY,{messages:B});if(M.defaultPrevented)return;B=((F=M.data)==null?void 0:F.messages)??B}await(async M=>{if(to||!pt)return;const U=[];for(let H=M.length-1;H>=0;H--){const y=M[H];if(y.sender.toUpperCase()!=="SYSTEM"&&(y.content!==""&&U.unshift(y),U.length===sn))break}let N=U.map(ja);if(!eo&&N.length<sn){const H=sn-N.length;N=[...An.slice(-H),...N]}no(N)})(B)},[h,(e=n.event)==null?void 0:e.rcbSaveChatHistory]),k=f.useCallback((B,_=!1)=>{var F,M;m(B);let U=!0;const N=B[B.length-1];if(!N)return;const H=N.sender.toUpperCase();H==="USER"&&(U=!1),(F=n.general)!=null&&F.embedded&&v()&&(U=!1),(c.current&&!l.current||_)&&(U=!1),U&&x(),!_&&(H!=="USER"&&(M=n.chatWindow)!=null&&M.autoJumpToBottom||H==="USER"||!l.current)&&setTimeout(()=>g(),1)},[n,u,c,l,x,g,v]),P=f.useCallback(async(B,_="BOT",F=null)=>{var M,U,N,H,y;if(typeof B!="string")throw new Error("Content must be of type string to simulate stream.");_=_.toUpperCase();let q=dt(B,_);if((M=n.event)!=null&&M.rcbStartSimulateStreamMessage){const ce=await h(j.START_SIMULATE_STREAM_MESSAGE,{message:q});if(ce.defaultPrevented)return null;F=ce.data.simulateStreamChunker||F,q=ce.data.message}s(!1);let b=30;b=_==="BOT"?(U=n.botBubble)==null?void 0:U.streamSpeed:(N=n.userBubble)==null?void 0:N.streamSpeed;const W={...q,content:""};i(ce=>[...ce,W]),k(A.current);let Z=q.content;F&&(Z=F(Z));let J=0;const oe=Z.length;q.sender.toUpperCase()==="BOT"&&(c.current||(H=n.general)!=null&&H.embedded)&&typeof q.content=="string"&&q.content.trim()!==""&&w(q.content);const Te=new Promise(ce=>{const Xe=setInterval(()=>{if(J>=oe)return clearInterval(Xe),void ce();i(z=>{const Y=[...z];for(let re=Y.length-1;re>=0;re--)if(Y[re].id===W.id){const ee=Z[J];ee&&(W.content+=ee,Y[re]=W),J++;break}return Y})},b)});return(l.current||!c.current)&&a(ce=>ce+1),await Te,m(A.current),(y=n.event)!=null&&y.rcbStopSimulateStreamMessage&&await h(j.STOP_SIMULATE_STREAM_MESSAGE,{message:q}),_==="USER"&&(p.current=B),q},[n,h,k,A,p,s,a,c,w]),C=f.useCallback(async(B,_="BOT")=>{var F,M,U;_=_.toUpperCase();let N=dt(B,_);if((F=n.event)!=null&&F.rcbPreInjectMessage){const H=await h(j.PRE_INJECT_MESSAGE,{message:N});if(H.defaultPrevented)return null;N=H.data.message}return N.sender.toUpperCase()==="BOT"&&(c.current||(M=n.general)!=null&&M.embedded)&&typeof N.content=="string"&&N.content.trim()!==""&&w(N.content),(l.current||!c.current)&&a(H=>H+1),(U=n.event)!=null&&U.rcbPostInjectMessage&&await h(j.POST_INJECT_MESSAGE,{message:N}),i(H=>[...H,N]),k(A.current),_==="USER"&&typeof B=="string"&&(p.current=B),N},[n,h,k,p,A,c,w,a]),S=f.useCallback(async B=>{var _;let F=A.current.find(N=>N.id===B),M=null,U=!1;return F||(M=jt(),F=M.find(N=>N.id===B),F&&(U=!0)),!F||(_=n.event)!=null&&_.rcbRemoveMessage&&(await h(j.REMOVE_MESSAGE,{message:F})).defaultPrevented?null:U?(M&&_n(M.filter(N=>N.id!==B)),F):(i(N=>N.filter(H=>H.id!==B)),k(A.current),a(N=>Math.max(N-1,0)),F)},[h,(t=n.event)==null?void 0:t.rcbRemoveMessage,k,A,a,jt,_n]),I=f.useCallback(async(B,_="BOT")=>{var F,M;if(_=_.toUpperCase(),!d.current.has(_)){const N=dt(B,_);return(F=n.event)!=null&&F.rcbStartStreamMessage&&(await h(j.START_STREAM_MESSAGE,{message:N})).defaultPrevented?null:(s(!1),i(H=>[...H,N]),k(A.current),d.current.set(_,N.id),(l.current||!c.current)&&a(H=>H+1),N)}const U={...dt(B,_),id:d.current.get(_)};return(M=n.event)!=null&&M.rcbChunkStreamMessage&&(await h(j.CHUNK_STREAM_MESSAGE,{message:U})).defaultPrevented?null:(i(N=>N.map(H=>H.id===U.id?U:H)),k(A.current,!0),U)},[h,n.event,k,A,s,a,d]),Q=f.useCallback(async(B="BOT")=>{var _;if(B=B.toUpperCase(),!d.current.has(B))return!0;const F=d.current.get(B);let M;for(let U=0;U<3;U++){const N=A.current.find(H=>H.id===F);N&&(M=N),await new Promise(H=>setTimeout(H,20))}return((_=n.event)==null||!_.rcbStopStreamMessage||!(await h(j.STOP_STREAM_MESSAGE,{message:M})).defaultPrevented)&&(d.current.delete(B),m(A.current),B==="USER"&&typeof(M==null?void 0:M.content)=="string"&&(p.current=M.content),!0)},[h,(r=n.event)==null?void 0:r.rcbStopStreamMessage,d,p]),D=f.useCallback(B=>{const _=typeof B=="function"?B(A.current):B;i(_),k(_)},[k,A]),O=f.useCallback((B,_,F=0)=>{var M;const U=A.current,N=B?B.toUpperCase():null,H=[];let y=F;for(let q=U.length-1;q>=0;q--){const b=U[q];if(!N||((M=b==null?void 0:b.sender)==null?void 0:M.toUpperCase())===N){if(y>0){y--;continue}if(H.push(b),_!==void 0&&H.length===_)break}}return H.length>0?H:null},[A]);return{simulateStreamMessage:P,injectMessage:C,removeMessage:S,streamMessage:I,endStreamMessage:Q,replaceMessages:D,getMessages:O,messages:o}};let Hn,tt,ln,ft=!1,nt=null;const Un=()=>{if(!Hn){const e=window.SpeechRecognition||window.webkitSpeechRecognition;Hn=e!=null?new e:null}return Hn},Xa=(e,t,r,n,o,i)=>{var A,s,a;const l=Un();if(!l)return;if(!ft)try{ft=!0,l.lang=(A=e.voice)==null?void 0:A.language,l.start()}catch{}const c=(s=e.voice)==null?void 0:s.timeoutPeriod,d=(a=e.voice)==null?void 0:a.autoSendPeriod;l.onresult=u=>{var p,g;clearTimeout(tt),tt=null,clearTimeout(ln);const v=u.results[u.results.length-1][0].transcript;if(i.current){const h=(p=e.chatInput)==null?void 0:p.characterLimit,w=i.current.value+v;h!=null&&h>=0&&w.length>h?n(w.slice(0,h)):n(w),o(i.current.value.length)}c&&(tt=setTimeout(async()=>await zn(t,i),c)),(g=e.voice)!=null&&g.autoSendDisabled||(ln=setTimeout(r,d))},l.onend=()=>{ft?(l.start(),!tt&&c&&(tt=setTimeout(async()=>await zn(t,i),c))):(clearTimeout(tt),tt=null,clearTimeout(ln))},c&&(tt=setTimeout(async()=>await zn(t,i),c))},Ja=(e,t)=>{navigator.mediaDevices.getUserMedia({audio:!0}).then(r=>{if(nt=new MediaRecorder(r),!ft)try{ft=!0,nt.start()}catch{}nt.ondataavailable=n=>{t.current&&t.current.push(n.data)},nt.onstop=()=>{e(),r.getTracks().forEach(n=>n.stop())}}).catch(r=>{console.error("Unable to use microphone:",r)})},Fn=()=>{const e=Un();e&&(ft=!1,e&&e.stop(),nt&&nt.state!=="inactive"&&(nt.stop(),nt=null),clearTimeout(tt),tt=null,clearTimeout(ln))},zn=async(e,t)=>{var r;(r=t.current)!=null&&r.disabled||await e(),Fn()},Rn=()=>{const{settings:e}=te(),{voiceToggledOn:t,setSyncedVoiceToggledOn:r,syncedVoiceToggledOnRef:n}=xe(),{dispatchRcbEvent:o}=$e(),i=f.useCallback(async s=>{var a;s!==n.current&&((a=e.event)!=null&&a.rcbToggleVoice&&(await o(j.TOGGLE_VOICE,{currState:n.current,newState:!n.current})).defaultPrevented||r(l=>!l))},[n]),A=f.useCallback(s=>{((a,l)=>{var c,d,u;const p=Un();(c=l.voice)!=null&&c.disabled||(d=l.chatInput)==null||!d.blockSpam||!p||(a&&!ft?(ft=!0,(u=l.voice)!=null&&u.sendAsAudio?nt==null||nt.start():p.start()):a||Fn())})(s,e)},[e]);return{voiceToggledOn:t,toggleVoice:i,syncVoice:A}},bt=()=>{var e;const{settings:t}=te(),{inputLength:r,setInputLength:n,textAreaDisabled:o,setSyncedTextAreaDisabled:i,textAreaSensitiveMode:A,setSyncedTextAreaSensitiveMode:s,syncedTextAreaDisabledRef:a,syncedTextAreaSensitiveModeRef:l}=xe(),{inputRef:c,chatBodyRef:d,prevInputRef:u}=ve(),{dispatchRcbEvent:p}=$e(),{getIsChatBotVisible:g}=Ue(),v=f.useCallback(async C=>{var S,I,Q;if(a.current&&c.current)c.current.value="";else if(c.current&&u.current!==null){const D=(S=t.chatInput)==null?void 0:S.characterLimit,O=(I=t.chatInput)!=null&&I.allowNewline?C:C.replace(/\n/g," ");if(D!=null&&D>=0&&O.length>D?c.current.value=O.slice(0,D):c.current.value=O,(Q=t.event)!=null&&Q.rcbTextAreaChangeValue&&(await p(j.TEXT_AREA_CHANGE_VALUE,{currValue:c.current.value,prevValue:u.current})).defaultPrevented)return void(c.current.value=u.current);u.current=c.current.value}},[a,c,u,t,p]),h=f.useCallback(C=>{var S;(S=c.current)!=null&&S.disabled||setTimeout(()=>{var I,Q,D;(I=t.general)!=null&&I.embedded?g()&&((Q=c.current)==null||Q.focus()):C!=="start"&&((D=c.current)==null||D.focus())},100)},[c,(e=t.general)==null?void 0:e.embedded,d,g]),w=f.useCallback(()=>{c.current&&c.current.focus()},[]),x=f.useCallback(()=>{c.current&&c.current.blur()},[]),m=f.useCallback(()=>c&&c.current?c.current.value:"",[]),k=f.useCallback(C=>{C!==a.current&&i(S=>!S)},[a]),P=f.useCallback(C=>{C!==l.current&&s(S=>!S)},[l]);return{textAreaDisabled:o,setSyncedTextAreaDisabled:i,textAreaSensitiveMode:A,setSyncedTextAreaSensitiveMode:s,inputLength:r,setInputLength:n,getTextAreaValue:m,setTextAreaValue:v,updateTextAreaFocus:h,focusTextArea:w,blurTextArea:x,toggleTextAreaDisabled:k,toggleTextAreaSensitiveMode:P}},io=f.createContext({toasts:[],setSyncedToasts:()=>{},syncedToastsRef:{current:[]}}),ao=()=>f.useContext(io),Za=({children:e})=>{const[t,r,n]=He([]);return E.jsx(io.Provider,{value:{toasts:t,setSyncedToasts:r,syncedToastsRef:n},children:e})},Bt=()=>{const{settings:e}=te(),{toasts:t,setSyncedToasts:r,syncedToastsRef:n}=ao(),{dispatchRcbEvent:o}=$e(),i=f.useCallback(async(a,l)=>{var c,d,u,p;let g=null;if(n.current.length>=(((c=e.toast)==null?void 0:c.maxCount)??3)){if((d=e.toast)!=null&&d.forbidOnMax)return null;g=on();let h={id:g,content:a,timeout:l};if((u=e.event)!=null&&u.rcbShowToast){const w=await o(j.SHOW_TOAST,{toast:h});if(w.defaultPrevented)return null;h=w.data.toast}return r(w=>[...w.slice(1),h]),g}g=on();let v={id:g,content:a,timeout:l};if((p=e.event)!=null&&p.rcbShowToast){const h=await o(j.SHOW_TOAST,{toast:v});if(h.defaultPrevented)return null;v=h.data.toast}return r(h=>[...h,v]),g},[e,o]),A=f.useCallback(async a=>{var l;const c=n.current.find(d=>d.id===a);return!c||(l=e.event)!=null&&l.rcbDismissToast&&(await o(j.DISMISS_TOAST,{toast:c})).defaultPrevented?null:(r(d=>d.filter(u=>u.id!==a)),a)},[o]),s=f.useCallback(a=>{const l=typeof a=="function"?a(n.current):a;r(l)},[n]);return{showToast:i,dismissToast:A,toasts:t,replaceToasts:s}},cn=()=>{var e,t,r,n,o;const{settings:i}=te(),{paths:A,setSyncedPaths:s,syncedPathsRef:a}=Rt(),{flowRef:l,streamMessageMap:c,paramsInputRef:d,keepVoiceOnRef:u,timeoutIdRef:p}=ve(),{setSyncedIsBotTyping:g,setSyncedTextAreaDisabled:v,setSyncedTextAreaSensitiveMode:h,blockAllowsAttachment:w,setBlockAllowsAttachment:x}=xe(),{dispatchRcbEvent:m}=$e(),{endStreamMessage:k,injectMessage:P,removeMessage:C,simulateStreamMessage:S,streamMessage:I}=yt(),{showToast:Q,dismissToast:D}=Bt(),{toggleChatWindow:O}=Ue(),{updateTextAreaFocus:B,setTextAreaValue:_}=bt(),{syncVoice:F}=Rn(),M=f.useCallback(async b=>{var W;if((W=i.event)!=null&&W.rcbPostProcessBlock){const Z=await m(j.POST_PROCESS_BLOCK,{block:b});if(Z.defaultPrevented)return null;b=Z.data.block}return b},[(e=i.event)==null?void 0:e.rcbPostProcessBlock,m]),U=f.useCallback(async(b,W)=>{var Z,J,oe,Te;if(!b)return;let ce=l.current[b];if(!ce)return void g(!1);if((Z=i.event)!=null&&Z.rcbPreProcessBlock){const z=await m(j.PRE_PROCESS_BLOCK,{block:ce});if(z.defaultPrevented)return;ce=z.data.block}g(!0),(J=i.chatInput)!=null&&J.blockSpam&&v(!0),h(!1);const Xe={prevPath:W,currPath:b,goToPath:y,setTextAreaValue:_,userInput:d.current,endStreamMessage:k,injectMessage:P,removeMessage:C,simulateStreamMessage:S,streamMessage:I,toggleChatWindow:O,showToast:Q,dismissToast:D};await(async(z,Y,re,ee,ie,Ae,le)=>{if(!z)throw new Error("Block is not valid.");for(const Ee of Object.keys(z))switch(Ee){case"message":await _a(z,Y,re);break;case"options":await La(z,Y);break;case"checkboxes":await Ma(z,Y);break;case"component":await Ha(z,Y);break;case"chatDisabled":await Fa(z,Y,ie);break;case"isSensitive":await Zr(z,Y,Ae);break;case"transition":await Ua(z,Y,ee,le)}})(ce,Xe,((oe=i.botBubble)==null?void 0:oe.simulateStream)??!1,p,v,h,M),g(!1),"chatDisabled"in ce||v((Te=i.chatInput)==null?void 0:Te.disabled),"isSensitive"in ce||h(!1),x(typeof ce.file=="function"),B(b),F(u.current&&!ce.chatDisabled),b!==W&&c.current.clear()},[l,B,F,(t=i.botBubble)==null?void 0:t.simulateStream,(r=i.chatInput)==null?void 0:r.disabled,d,k,P,C,S,I,O,Q,D,u,c]),N=f.useCallback(()=>a.current.length>0?a.current.at(-1)??null:null,[]),H=f.useCallback(()=>a.current.length>1?a.current.at(-2)??null:null,[]),y=f.useCallback(async b=>{var W;const Z=N(),J=H();return((W=i.event)==null||!W.rcbChangePath||!(await m(j.CHANGE_PATH,{currPath:Z,prevPath:J,nextPath:b})).defaultPrevented)&&(s(oe=>[...oe,b]),await U(b,Z),!0)},[(n=i.chatInput)==null?void 0:n.blockSpam,(o=i.event)==null?void 0:o.rcbChangePath,U,m]),q=f.useCallback(b=>{const W=typeof b=="function"?b(a.current):b;s(W)},[a]);return{getCurrPath:N,getPrevPath:H,goToPath:y,blockAllowsAttachment:w,setBlockAllowsAttachment:x,paths:A,replacePaths:q,firePostProcessBlockEvent:M}},Dt=()=>{var e,t,r,n;const{settings:o}=te(),{endStreamMessage:i,injectMessage:A,removeMessage:s,simulateStreamMessage:a,streamMessage:l}=yt(),{syncedPathsRef:c}=Rt(),{getCurrPath:d,getPrevPath:u,goToPath:p,firePostProcessBlockEvent:g}=cn(),{setSyncedTextAreaSensitiveMode:v,setSyncedTextAreaDisabled:h,setSyncedIsBotTyping:w,setBlockAllowsAttachment:x,setInputLength:m,syncedVoiceToggledOnRef:k,syncedTextAreaSensitiveModeRef:P}=xe(),{flowRef:C,inputRef:S,keepVoiceOnRef:I,paramsInputRef:Q,timeoutIdRef:D}=ve(),{showToast:O,dismissToast:B}=Bt(),{dispatchRcbEvent:_}=$e(),{syncVoice:F}=Rn(),{setTextAreaValue:M}=bt(),{toggleChatWindow:U}=Ue(),N=f.useCallback(async y=>{var q,b,W,Z,J,oe;const Te=d();if(Te&&C.current[Te]){if(P.current){if((q=o==null?void 0:o.sensitiveInput)!=null&&q.hideInUserBubble)return;if((b=o==null?void 0:o.sensitiveInput)!=null&&b.maskInUserBubble)return void((W=o.userBubble)!=null&&W.simulateStream?await a("*".repeat(((Z=o.sensitiveInput)==null?void 0:Z.asterisksCount)??10),"USER"):await A("*".repeat(((J=o.sensitiveInput)==null?void 0:J.asterisksCount)??10),"USER"))}(oe=o.userBubble)!=null&&oe.simulateStream?await a(y,"USER"):await A(y,"USER")}},[C,d,o,A,a,P]),H=f.useCallback(async(y,q=!0)=>{var b,W;if((y=y.trim())==="")return;q&&await N(y),D.current&&clearTimeout(D.current),S.current&&(M(""),m(0));const Z=d();if(!Z)return;let J=C.current[Z];const oe=await g(J);oe&&((b=o.chatInput)!=null&&b.blockSpam&&h(!0),I.current=k.current,F(!1),setTimeout(()=>{w(!0)},400),v(!1),setTimeout(async()=>{var Te;const ce={prevPath:u(),currPath:d(),goToPath:p,setTextAreaValue:M,userInput:Q.current,injectMessage:A,simulateStreamMessage:a,streamMessage:l,removeMessage:s,endStreamMessage:i,toggleChatWindow:U,showToast:O,dismissToast:B},Xe=c.current.length;await $r(oe,ce),c.current.length===Xe&&(h("chatDisabled"in J?!!J.chatDisabled:!((Te=o.chatInput)==null||!Te.disabled)),Zr(J,ce,v),x(typeof J.file=="function"),F(I.current),w(!1))},(W=o.chatInput)==null?void 0:W.botDelay))},[D,(e=o.chatInput)==null?void 0:e.blockSpam,(t=o.chatInput)==null?void 0:t.botDelay,(r=o.chatInput)==null?void 0:r.disabled,I,k,F,N,u,d,p,A,a,l,s,i,U,O,B,C]);return{handleSubmitText:f.useCallback(async(y,q=!0)=>{var b,W;y=y??((b=S.current)==null?void 0:b.value),!((W=o.event)!=null&&W.rcbUserSubmitText&&(await _(j.USER_SUBMIT_TEXT,{inputText:y,sendInChat:q})).defaultPrevented||!d())&&H(y,q)},[_,d,H,S,(n=o.event)==null?void 0:n.rcbUserSubmitText])}},un=()=>{var e;const{settings:t}=te();return f.useMemo(()=>{var r;if(typeof window>"u"||!window.navigator)return!1;if((r=t.device)==null||!r.applyMobileOptimizations)return!0;const n=navigator.userAgent,o=!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(n),i=window.innerWidth>=768;return o&&i},[(e=t.device)==null?void 0:e.applyMobileOptimizations])},$a=({buttons:e})=>{var t,r,n,o,i,A,s,a,l,c,d;const u=un(),{settings:p}=te(),{styles:g}=se(),{textAreaDisabled:v,textAreaSensitiveMode:h,inputLength:w,hasFlowStarted:x,setHasFlowStarted:m,setInputLength:k}=xe(),{inputRef:P}=ve(),[C,S]=f.useState(!1),[I,Q]=f.useState(!1),{handleSubmitText:D}=Dt(),{setTextAreaValue:O}=bt(),B={boxSizing:u?"content-box":"border-box",...g.chatInputAreaStyle},_={outline:v?"":"none",boxShadow:v?"":`0 0 5px ${(t=p.general)==null?void 0:t.primaryColor}`,boxSizing:u?"content-box":"border-box",...g.chatInputAreaStyle,...g.chatInputAreaFocusedStyle},F={cursor:`url("${(r=p.general)==null?void 0:r.actionDisabledIcon}"), auto`,caretColor:"transparent",boxSizing:u?"content-box":"border-box",...g.chatInputAreaStyle,...g.chatInputAreaDisabledStyle},M={color:"#989898",...g.characterLimitStyle},U={color:"#ff0000",...g.characterLimitReachedStyle},N=v?(n=p.chatInput)==null?void 0:n.disabledPlaceholderText:(o=p.chatInput)==null?void 0:o.enabledPlaceholderText,H=()=>{v||S(!0)},y=()=>{S(!1)},q=()=>{Q(!0)},b=()=>{Q(!1)},W=async J=>{var oe;if(!I&&J.key==="Enter"){if(J.shiftKey)return void((oe=p.chatInput)!=null&&oe.allowNewline||J.preventDefault());J.preventDefault(),await D()}},Z=J=>{P.current&&(O(J.target.value),k(P.current.value.length))};return E.jsxs("div",{"aria-label":((i=p.ariaLabel)==null?void 0:i.inputTextArea)??"input text area",role:"textbox",onMouseDown:J=>{var oe;J.stopPropagation(),!x&&((oe=p.general)==null?void 0:oe.flowStartTrigger)==="ON_CHATBOT_INTERACT"&&m(!0)},style:{...g.chatInputContainerStyle},className:"rcb-chat-input",children:[h&&(A=p.sensitiveInput)!=null&&A.maskInTextArea?E.jsx("input",{ref:P,type:"password",className:"rcb-chat-input-textarea",style:v?F:C?_:B,placeholder:N,onChange:Z,onKeyDown:W,onFocus:H,onBlur:y,onCompositionStart:q,onCompositionEnd:b}):E.jsx("textarea",{ref:P,style:v?F:C?_:B,rows:1,className:"rcb-chat-input-textarea",placeholder:N,onChange:Z,onKeyDown:W,onFocus:H,onBlur:y,onCompositionStart:q,onCompositionEnd:b}),E.jsxs(E.Fragment,{children:[e==null?void 0:e.map((J,oe)=>E.jsx(f.Fragment,{children:J},oe)),((s=p.chatInput)==null?void 0:s.showCharacterCount)&&((a=p.chatInput)==null?void 0:a.characterLimit)!=null&&((l=p.chatInput)==null?void 0:l.characterLimit)>0&&E.jsxs("div",{className:"rcb-chat-input-char-counter",style:w>=((c=p.chatInput)==null?void 0:c.characterLimit)?U:M,children:[w,"/",(d=p.chatInput)==null?void 0:d.characterLimit]})]})]})},es=({buttons:e})=>{var t;const{settings:r}=te(),{styles:n}=se();return E.jsxs("div",{"data-testid":"chatbot-footer-container",style:{...n.footerStyle},className:"rcb-chat-footer-container",children:[E.jsx("div",{className:"rcb-chat-footer",children:e==null?void 0:e.map((o,i)=>E.jsx(f.Fragment,{children:o},i))}),E.jsx("span",{children:(t=r.footer)==null?void 0:t.text})]})},ts=()=>{var e,t,r,n,o,i,A;const{settings:s}=te(),{styles:a}=se(),{unreadCount:l}=xe(),{isChatWindowOpen:c,toggleChatWindow:d}=Ue(),[u,p]=f.useState(!1),g={backgroundImage:`linear-gradient(to right, ${(e=s.general)==null?void 0:e.secondaryColor},
|
|
3
|
+
${(t=s.general)==null?void 0:t.primaryColor})`,...a.chatButtonStyle},v={transform:"scale(1.05)",...g,...a.chatButtonHoveredStyle},h={backgroundImage:`url(${(r=s.chatButton)==null?void 0:r.icon})`,fill:"#fff",width:75,height:75,...a.chatIconStyle};return E.jsx(E.Fragment,{children:!((n=s.general)!=null&&n.embedded)&&E.jsxs("div",{"aria-label":((o=s.ariaLabel)==null?void 0:o.chatButton)??"open chat",role:"button",style:u?v:g,className:"rcb-toggle-button "+(c?"rcb-button-hide":"rcb-button-show"),onMouseEnter:()=>{p(!0)},onMouseLeave:()=>{p(!1)},onClick:()=>d(!0),children:[(()=>{var w;const x=(w=s.chatButton)==null?void 0:w.icon;return x&&typeof x!="string"?x&&E.jsx("span",{className:"rcb-toggle-icon",children:E.jsx(x,{style:h})}):E.jsx("span",{className:"rcb-toggle-icon",style:h})})(),!((i=s.notification)!=null&&i.disabled)&&((A=s.notification)==null?void 0:A.showCount)&&E.jsx("span",{style:{...a.notificationBadgeStyle},className:"rcb-badge",children:l})]})})},ns=()=>{var e,t,r,n,o,i;const A=un(),{settings:s}=te(),{styles:a}=se(),{chatBodyRef:l}=ve(),{isChatWindowOpen:c,toggleChatWindow:d}=Ue(),[u,p]=f.useState(!1),[g,v]=f.useState(!1),[h,w]=f.useState(0);f.useEffect(()=>{var k,P,C;const S=(k=s.tooltip)==null?void 0:k.mode;if(S==="ALWAYS")if(A){let I;I=c?(((P=l.current)==null?void 0:P.offsetWidth)??375)-(typeof((C=a.chatButtonStyle)==null?void 0:C.width)=="number"?a.chatButtonStyle.width:75):0,w(I),p(!0)}else p(!c);else S==="NEVER"?p(!1):S==="START"?g?p(!1):(v(!0),p(!0)):S==="CLOSE"&&p(!c)},[c,A,g,(e=a.chatButtonStyle)==null?void 0:e.width,(t=s.tooltip)==null?void 0:t.mode]);const x={transform:`translateX(-${h}px)`,right:(((r=a.chatButtonStyle)==null?void 0:r.width)??75)+40,bottom:30,backgroundColor:(n=s.general)==null?void 0:n.secondaryColor,color:"#fff",...a.tooltipStyle},m={borderColor:`transparent transparent transparent ${x.backgroundColor}`};return E.jsx(E.Fragment,{children:!((o=s.general)!=null&&o.embedded)&&E.jsxs("div",{"data-testid":"chat-tooltip",style:x,className:"rcb-chat-tooltip "+(u?"rcb-tooltip-show":"rcb-tooltip-hide"),onClick:()=>d(!0),children:[E.jsx("span",{children:(i=s.tooltip)==null?void 0:i.text}),E.jsx("span",{className:"rcb-chat-tooltip-tail",style:m})]})})},rs=({id:e,content:t,timeout:r})=>{var n,o;const{settings:i}=te(),{styles:A}=se(),[s]=f.useState({toastPromptStyle:{...A.toastPromptStyle},toastPromptHoveredStyle:{...A.toastPromptHoveredStyle}}),{dismissToast:a}=Bt(),[l,c]=f.useState(!1),d={color:(n=i.general)==null?void 0:n.primaryColor,borderColor:(o=i.general)==null?void 0:o.primaryColor,...s.toastPromptHoveredStyle};return f.useEffect(()=>{if(r){const u=setTimeout(()=>{a(e)},r);return()=>clearTimeout(u)}},[e,a,r]),typeof t=="string"?E.jsx("div",{onMouseEnter:()=>{c(!0)},onMouseLeave:()=>{c(!1)},style:l?d:s.toastPromptStyle,onMouseDown:async u=>{var p;(p=i.toast)!=null&&p.dismissOnClick&&(u.preventDefault(),await a(e))},className:"rcb-toast-prompt",children:t}):E.jsx(E.Fragment,{children:t})},os=()=>{var e,t,r,n,o,i,A,s,a,l,c,d;const{styles:u}=se(),{toasts:p}=ao(),g={bottom:`calc(${typeof((e=u.footerStyle)==null?void 0:e.height)=="number"?`${(t=u.footerStyle)==null?void 0:t.height}px`:((r=u.footerStyle)==null?void 0:r.height)??"50px"} + ${typeof((n=u.chatInputContainerStyle)==null?void 0:n.height)=="number"?`${(o=u.chatInputContainerStyle)==null?void 0:o.height}px`:((i=u.chatInputContainerStyle)==null?void 0:i.height)??"70px"} + 20px)`,width:300,minWidth:`calc(${typeof((A=u.chatWindowStyle)==null?void 0:A.width)=="number"?`${(s=u.chatWindowStyle)==null?void 0:s.width}px`:((a=u.chatWindowStyle)==null?void 0:a.width)??"375px"} / 2)`,maxWidth:`calc(${typeof((l=u.chatWindowStyle)==null?void 0:l.width)=="number"?`${(c=u.chatWindowStyle)==null?void 0:c.width}px`:((d=u.chatWindowStyle)==null?void 0:d.width)??"375px"} - 50px)`,...u.toastPromptContainerStyle};return E.jsx("div",{className:"rcb-toast-prompt-container",style:g,children:p.map(v=>E.jsx(rs,{id:v.id,content:v.content,timeout:v.timeout},v.id))})},so=({file:e,fileType:t,fileUrl:r})=>{var n,o,i;const{settings:A}=te(),{styles:s}=se(),a={backgroundColor:(n=A.general)==null?void 0:n.primaryColor,maxWidth:(o=A.userBubble)!=null&&o.showAvatar?"65%":"70%",...s.mediaDisplayContainerStyle};return E.jsx(E.Fragment,{children:r?E.jsxs(E.Fragment,{children:[t==="image"&&r&&E.jsx("div",{style:a,className:"rcb-media-display-image-container rcb-media-entry","data-testid":"media-display-image-container",children:E.jsx("img",{src:r,alt:"Image Display",className:"rcb-media-display-image"})}),t==="video"&&r&&E.jsx("div",{style:a,className:"rcb-media-display-video-container rcb-media-entry","data-testid":"media-display-video-container",children:E.jsxs("video",{controls:!0,className:"rcb-media-display-video",children:[E.jsx("source",{src:r,type:e.type}),"Your browser does not support the video tag."]})}),t==="audio"&&r&&E.jsxs("audio",{"data-testid":"media-display-audio-container",style:{maxWidth:(i=A.userBubble)!=null&&i.showAvatar?"65%":"70%"},controls:!0,className:"rcb-media-display-audio rcb-media-entry",children:[E.jsx("source",{src:r,type:e.type}),"Your browser does not support the audio tag."]})]}):E.jsx(E.Fragment,{})})},Ao=async e=>{if(!e)return{fileType:null,fileUrl:null};const t=e.type.split("/")[0];if(!["image","video","audio"].includes(t))return{fileType:null,fileUrl:null};try{return{fileType:t,fileUrl:await new Promise((r,n)=>{const o=new FileReader;o.onload=()=>r(o.result),o.onerror=()=>n(new Error("File reading failed")),o.readAsDataURL(e)})}}catch(r){return console.error(r),{fileType:null,fileUrl:null}}},is=()=>{var e,t,r,n,o,i;const{settings:A}=te(),{styles:s}=se(),{injectMessage:a,simulateStreamMessage:l,streamMessage:c,removeMessage:d,endStreamMessage:u}=yt(),{getCurrPath:p,getPrevPath:g,goToPath:v,blockAllowsAttachment:h}=cn(),{flowRef:w,inputRef:x}=ve(),m=w.current,{showToast:k,dismissToast:P}=Bt(),{dispatchRcbEvent:C}=$e(),{toggleChatWindow:S}=Ue(),{setTextAreaValue:I}=bt(),{handleSubmitText:Q}=Dt(),D={cursor:`url("${(e=A.general)==null?void 0:e.actionDisabledIcon}"), auto`,...s.fileAttachmentButtonStyle,...s.fileAttachmentButtonDisabledStyle},O={backgroundImage:`url(${(t=A.fileAttachment)==null?void 0:t.icon})`,fill:"#a6a6a6",...s.fileAttachmentIconStyle},B={backgroundImage:`url(${(r=A.fileAttachment)==null?void 0:r.icon})`,fill:"#a6a6a6",...s.fileAttachmentIconStyle,...s.fileAttachmentIconDisabledStyle};return E.jsxs("label",{"aria-label":((n=A.ariaLabel)==null?void 0:n.fileAttachmentButton)??"upload file",role:"button",className:h?"rcb-attach-button-enabled":"rcb-attach-button-disabled",style:h?{...s.fileAttachmentButtonStyle}:D,children:[E.jsx("input",{className:"rcb-attach-input",role:"file",type:"file",onChange:async _=>{var F,M,U,N;const H=_.target.files;if(!H)return;const y=Array.from(H);if(_.target.value="",(F=A.event)!=null&&F.rcbUserUploadFile&&(await C(j.USER_UPLOAD_FILE,{files:y})).defaultPrevented)return;const q=p();if(!q)return;const b=m[q];if(!b)return;const W=b.file;if(W!=null){const Z=[];for(let J=0;J<y.length;J++){if(Z.push(y[J].name),(M=A.fileAttachment)==null||!M.showMediaDisplay)continue;const oe=await Ao(y[J]);!oe.fileType||!oe.fileUrl||await a(E.jsx(so,{file:y[J],fileType:oe.fileType,fileUrl:oe.fileUrl}),"USER")}await Q("📄 "+Z.join(", "),(U=A.fileAttachment)==null?void 0:U.sendFileName),await W({userInput:(N=x.current)==null?void 0:N.value,prevPath:g(),currPath:p(),goToPath:v,setTextAreaValue:I,injectMessage:a,simulateStreamMessage:l,streamMessage:c,removeMessage:d,endStreamMessage:u,toggleChatWindow:S,showToast:k,dismissToast:P,files:y})}},multiple:(o=A.fileAttachment)==null?void 0:o.multiple,accept:(i=A.fileAttachment)==null?void 0:i.accept,disabled:!h}),(()=>{var _,F;const M=h?(_=A.fileAttachment)==null?void 0:_.icon:(F=A.fileAttachment)==null?void 0:F.iconDisabled;return M&&typeof M!="string"?M&&E.jsx("span",{className:h?"rcb-attach-icon-enabled":"rcb-attach-icon-disabled",children:E.jsx(M,{style:h?O:B})}):E.jsx("span",{className:h?"rcb-attach-icon-enabled":"rcb-attach-icon-disabled",style:h?O:B})})()]})},as=()=>{var e,t,r,n,o,i;const{settings:A}=te(),{styles:s}=se(),{syncedTextAreaDisabledRef:a}=xe(),{inputRef:l}=ve(),{textAreaDisabled:c,setTextAreaValue:d}=bt(),u=f.useRef(null),p=f.useRef(null),[g,v]=f.useState(!1),h={cursor:`url("${(e=A.general)==null?void 0:e.actionDisabledIcon}"), auto`,...s.emojiButtonStyle,...s.emojiButtonDisabledStyle},w={backgroundImage:`url(${(t=A.emoji)==null?void 0:t.icon})`,fill:"#a6a6a6",...s.emojiIconStyle},x={backgroundImage:`url(${(r=A.emoji)==null?void 0:r.icon})`,fill:"#a6a6a6",...s.emojiIconStyle,...s.emojiIconDisabledStyle};return f.useEffect(()=>{const m=P=>{const C=P.composedPath();u.current&&!C.includes(u.current)&&p.current&&!C.includes(p.current)&&v(!1)},k=()=>{(()=>{if(u.current&&p.current){const P=p.current.getBoundingClientRect(),C=u.current.offsetHeight,S=P.top-C-8;u.current.style.left=`${P.left}px`,u.current.style.top=`${S}px`}})()};return document.addEventListener("mousedown",m),window.addEventListener("resize",k),()=>{document.removeEventListener("mousedown",m),window.removeEventListener("resize",k)}},[]),E.jsxs(E.Fragment,{children:[E.jsx("div",{"aria-label":((n=A.ariaLabel)==null?void 0:n.emojiButton)??"emoji picker",role:"button",ref:p,className:c?"rcb-emoji-button-disabled":"rcb-emoji-button-enabled",style:c?h:{...s.emojiButtonStyle},onMouseDown:m=>{m.preventDefault(),a.current?v(!1):v(k=>!k)},children:(()=>{var m,k;const P=c?(m=A.emoji)==null?void 0:m.iconDisabled:(k=A.emoji)==null?void 0:k.icon;return P&&typeof P!="string"?P&&E.jsx("span",{className:c?"rcb-emoji-icon-disabled":"rcb-emoji-icon-enabled",children:E.jsx(P,{style:c?x:w})}):E.jsx("span",{className:c?"rcb-emoji-icon-disabled":"rcb-emoji-icon-enabled",style:c?x:w})})()}),g&&E.jsx("div",{className:"rcb-emoji-button-popup",ref:u,children:(i=(o=A.emoji)==null?void 0:o.list)==null?void 0:i.map((m,k)=>E.jsx("span",{className:"rcb-emoji",onMouseDown:P=>((C,S)=>{C.preventDefault(),l.current&&(d(l.current.value+S),setTimeout(()=>{const I=l.current;if(I){I.focus();const Q=I.value.length;I.setSelectionRange(Q,Q)}},50)),v(!1)})(P,m),children:m},k))})]})},ss=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{audioToggledOn:i,toggleAudio:A}=oo(),s={backgroundImage:`url(${(e=n.audio)==null?void 0:e.icon})`,fill:"#fcec3d",...o.audioIconStyle},a={backgroundImage:`url(${(t=n.audio)==null?void 0:t.iconDisabled})`,fill:"#e8eaed",...o.audioIconStyle,...o.audioIconDisabledStyle};return E.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.audioButton)??"toggle audio",role:"button",onMouseDown:async l=>{l.preventDefault(),await A()},style:i?{...o.audioButtonStyle}:{...o.audioButtonStyle,...o.audioButtonDisabledStyle},children:(()=>{var l,c;const d=i?(l=n.audio)==null?void 0:l.icon:(c=n.audio)==null?void 0:c.iconDisabled;return d&&typeof d!="string"?d&&E.jsx("span",{className:"rcb-audio-icon","data-testid":"rcb-audio-icon",children:E.jsx(d,{style:i?s:a,"data-testid":"rcb-audio-icon-svg"})}):E.jsx("span",{className:"rcb-audio-icon","data-testid":"rcb-audio-icon",style:i?s:a})})()})},As=()=>{var e,t;const{settings:r}=te(),{styles:n}=se(),{toggleChatWindow:o}=Ue(),i={backgroundImage:`url(${(e=r.header)==null?void 0:e.closeChatIcon})`,fill:"#e8eaed",stroke:"#e8eaed",...n.closeChatIconStyle};return E.jsx("div",{"aria-label":((t=r.ariaLabel)==null?void 0:t.closeChatButton)??"close chat",role:"button",onMouseDown:A=>{A.stopPropagation(),o(!1)},style:{...n.closeChatButtonStyle},children:(()=>{var A;const s=(A=r.header)==null?void 0:A.closeChatIcon;return s&&typeof s!="string"?s&&E.jsx("span",{className:"rcb-close-chat-icon","data-testid":"rcb-close-chat-icon",children:E.jsx(s,{style:i})}):E.jsx("span",{className:"rcb-close-chat-icon","data-testid":"rcb-close-chat-icon",style:i})})()})},ls=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{notificationsToggledOn:i,toggleNotifications:A}=(()=>{const{notificationsToggledOn:l,toggleNotifications:c,playNotificationSound:d}=Ln();return{notificationsToggledOn:l,toggleNotifications:c,playNotificationSound:d}})(),s={backgroundImage:`url(${(e=n.notification)==null?void 0:e.icon})`,fill:"#fcec3d",...o.notificationIconStyle},a={backgroundImage:`url(${(t=n.notification)==null?void 0:t.iconDisabled})`,fill:"#e8eaed",...o.notificationIconStyle,...o.notificationIconDisabledStyle};return E.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.notificationButton)??"toggle notifications",role:"button",onMouseDown:async l=>{l.preventDefault(),await A()},style:i?{...o.notificationButtonStyle}:{...o.notificationButtonStyle,...o.notificationButtonDisabledStyle},children:(()=>{var l,c;const d=i?(l=n.notification)==null?void 0:l.icon:(c=n.notification)==null?void 0:c.iconDisabled;return d&&typeof d!="string"?d&&E.jsx("span",{className:"rcb-notification-icon","data-testid":"rcb-notification-icon",children:E.jsx(d,{style:i?s:a,"data-testid":"rcb-notification-icon-svg"})}):E.jsx("span",{className:"rcb-notification-icon","data-testid":"rcb-notification-icon",style:i?s:a})})()})},cs=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{injectMessage:i}=yt(),{inputRef:A}=ve(),{voiceToggledOn:s,toggleVoice:a}=Rn(),{setInputLength:l,setTextAreaValue:c,textAreaDisabled:d}=bt(),{handleSubmitText:u}=Dt(),p=f.useRef([]),[g,v]=f.useState(!1);f.useEffect(()=>{var k;(k=n.voice)!=null&&k.sendAsAudio?(m(),p.current=[]):u()},[g]),f.useEffect(()=>{s?((k,P,C,S,I,Q,D)=>{var O;(O=k.voice)!=null&&O.sendAsAudio?Ja(C,Q):Xa(k,P,C,S,I,D)})(n,a,x,c,l,p,A):Fn()},[s]);const h={backgroundImage:`url(${(e=n.voice)==null?void 0:e.icon})`,fill:"#9aa0a6",...o.voiceIconStyle},w={backgroundImage:`url(${(t=n.voice)==null?void 0:t.iconDisabled})`,fill:"#9aa0a6",...o.voiceIconStyle,...o.voiceIconDisabledStyle},x=()=>{v(k=>!k)},m=async()=>{const k=new Blob(p.current,{type:"audio/wav"}),P=new File([k],"voice-input.wav",{type:"audio/wav"}),C=await Ao(P);!C.fileType||!C.fileUrl||await i(E.jsx(so,{file:P,fileType:C.fileType,fileUrl:C.fileUrl}),"USER")};return E.jsx("div",{"aria-label":((r=n.ariaLabel)==null?void 0:r.voiceButton)??"toggle voice",role:"button",onMouseDown:async k=>{k.preventDefault(),!d&&await a()},style:s&&!d?{...o.voiceButtonStyle}:{...o.voiceButtonStyle,...o.voiceButtonDisabledStyle},className:s&&!d?"rcb-voice-button-enabled":"rcb-voice-button-disabled",children:(()=>{var k,P;const C=s?(k=n.voice)==null?void 0:k.icon:(P=n.voice)==null?void 0:P.iconDisabled;return C&&typeof C!="string"?C&&E.jsx("span",{className:"rcb-voice-icon "+(s&&!d?"on":""),children:E.jsx(C,{style:s&&!d?h:w})}):E.jsx("span",{className:"rcb-voice-icon"+(s&&!d?"-on":""),"data-testid":"rcb-voice-icon",style:s&&!d?h:w})})()})},us=()=>{var e,t,r,n,o,i,A,s;const{settings:a}=te(),{styles:l}=se(),{textAreaDisabled:c}=xe(),[d,u]=f.useState(!1),{handleSubmitText:p}=Dt(),g={backgroundColor:(e=a.general)==null?void 0:e.primaryColor,...l.sendButtonStyle},v={cursor:`url("${(t=a.general)==null?void 0:t.actionDisabledIcon}"), auto`,backgroundColor:(r=a.general)==null?void 0:r.primaryColor,...l.sendButtonStyle,...l.sendButtonDisabledStyle},h={backgroundColor:(n=a.general)==null?void 0:n.secondaryColor,...l.sendButtonStyle,...l.sendButtonHoveredStyle},w={backgroundImage:`url(${(o=a.chatInput)==null?void 0:o.sendButtonIcon})`,fill:"#fff",...l.sendIconStyle},x={backgroundImage:`url(${(i=a.chatInput)==null?void 0:i.sendButtonIcon})`,fill:"#fff",...l.sendIconStyle,...l.sendIconDisabledStyle},m={backgroundImage:`url(${(A=a.chatInput)==null?void 0:A.sendButtonIcon})`,fill:"#fff",...l.sendIconStyle,...l.sendIconHoveredStyle};return E.jsx("div",{"aria-label":((s=a.ariaLabel)==null?void 0:s.sendButton)??"send message",role:"button",onMouseEnter:()=>{u(!0)},onMouseLeave:()=>{u(!1)},onMouseDown:async k=>{k==null||k.preventDefault(),!c&&await p()},style:c?v:d?h:g,className:"rcb-send-button",children:(()=>{var k;const P=(k=a.chatInput)==null?void 0:k.sendButtonIcon;return P&&typeof P!="string"?P&&E.jsx("span",{className:"rcb-send-icon","data-testid":"rcb-send-icon",children:E.jsx(P,{style:c?x:d?m:w})}):E.jsx("span",{className:"rcb-send-icon","data-testid":"rcb-send-icon",style:c?x:d?m:w})})()})},ds=(e,t)=>{var r,n,o,i,A,s,a,l,c;const d={[ge.AUDIO_BUTTON]:(r=e.audio)==null?void 0:r.disabled,[ge.CLOSE_CHAT_BUTTON]:(n=e.general)==null?void 0:n.embedded,[ge.EMOJI_PICKER_BUTTON]:(o=e.emoji)==null?void 0:o.disabled,[ge.FILE_ATTACHMENT_BUTTON]:(i=e.fileAttachment)==null?void 0:i.disabled,[ge.NOTIFICATION_BUTTON]:(A=e.notification)==null?void 0:A.disabled,[ge.SEND_MESSAGE_BUTTON]:!1,[ge.VOICE_MESSAGE_BUTTON]:(s=e.voice)==null?void 0:s.disabled},u={},p=g=>g?g.map(v=>{if(typeof v=="string"){if((h=>Object.values(ge).includes(h))(v)&&!d[v]){if(u[v])return u[v];const h=t[v];if(typeof h=="function"){const w=h();return u[v]=w,w}return null}return null}return v}).filter(v=>v!==null):[];return{header:p((a=e.header)==null?void 0:a.buttons),chatInput:p((l=e.chatInput)==null?void 0:l.buttons),footer:p((c=e.footer)==null?void 0:c.buttons)}},ps=()=>{const{settings:e}=te(),t=f.useMemo(()=>({[ge.CLOSE_CHAT_BUTTON]:()=>E.jsx(As,{}),[ge.AUDIO_BUTTON]:()=>E.jsx(ss,{}),[ge.NOTIFICATION_BUTTON]:()=>E.jsx(ls,{}),[ge.EMOJI_PICKER_BUTTON]:()=>E.jsx(as,{}),[ge.FILE_ATTACHMENT_BUTTON]:()=>E.jsx(is,{}),[ge.SEND_MESSAGE_BUTTON]:()=>E.jsx(us,{}),[ge.VOICE_MESSAGE_BUTTON]:()=>E.jsx(cs,{})}),[]),{header:r,chatInput:n,footer:o}=f.useMemo(()=>ds(e,t),[e,t]);return{headerButtons:f.useMemo(()=>r,[r]),chatInputButtons:f.useMemo(()=>n,[n]),footerButtons:f.useMemo(()=>o,[o])}},jn=()=>{const{settings:e}=te(),{styles:t}=se(),{setSyncedMessages:r,syncedMessagesRef:n}=On(),{isLoadingChatHistory:o,setIsLoadingChatHistory:i,hasChatHistoryLoaded:A,setHasChatHistoryLoaded:s}=xe(),{chatBodyRef:a}=ve(),{dispatchRcbEvent:l}=$e(),c=f.useCallback(async()=>{var d,u;const p=jt();if(!p||(d=e.event)!=null&&d.rcbLoadChatHistory&&(await l(j.LOAD_CHAT_HISTORY,{})).defaultPrevented)return;i(!0);const g=((u=a.current)==null?void 0:u.scrollHeight)??0;((v,h,w,x,m,k,P,C,S)=>{var I;if(eo=!0,w!=null)try{const Q=dt(E.jsx(Ra,{}),"SYSTEM"),D=m.current.slice(1);x([Q,...D]);const O=w.map(B=>{if(B.type==="object"){const _=ro(B.content,v,h);return{...B,content:_}}return B});setTimeout(()=>{var B;const _=m.current.slice(1);let F=(B=v.chatHistory)!=null&&B.autoLoad?dt(E.jsx(E.Fragment,{}),"SYSTEM"):dt(E.jsx(za,{}),"SYSTEM");x([...O,F,..._]),S(!0)},500),setTimeout(()=>{if(!k.current)return;const{scrollHeight:B}=k.current,_=B-P;k.current.scrollTop+=_,C(!1)},510)}catch{pt.removeItem((I=v.chatHistory)==null?void 0:I.storageKey)}})(e,t,p,r,n,a,g,i,s)},[e,t,l,n,a,i,s]);return{isLoadingChatHistory:o,setIsLoadingChatHistory:i,hasChatHistoryLoaded:A,showChatHistory:c}},fs=()=>{var e,t,r;const{settings:n}=te(),{styles:o}=se(),{showChatHistory:i}=jn(),[A,s]=f.useState(!1),a={color:(e=n.general)==null?void 0:e.primaryColor,borderColor:(t=n.general)==null?void 0:t.primaryColor,...o.chatHistoryButtonStyle,...o.chatHistoryButtonHoveredStyle};return E.jsx("div",{className:"rcb-view-history-container",children:E.jsx("div",{onMouseEnter:()=>{s(!0)},onMouseLeave:()=>{s(!1)},style:A?a:{...o.chatHistoryButtonStyle},onMouseDown:l=>{l.preventDefault(),i()},className:"rcb-view-history-button",role:"button",tabIndex:0,children:E.jsx("p",{children:(r=n.chatHistory)==null?void 0:r.viewChatHistoryButtonText})})})},hs=()=>{var e,t,r,n;const o=un(),{settings:i}=te(),{replaceMessages:A}=yt(),{isBotTyping:s,isChatWindowOpen:a,setUnreadCount:l,setSyncedIsChatWindowOpen:c,setSyncedTextAreaDisabled:d,setSyncedAudioToggledOn:u,setSyncedVoiceToggledOn:p,setSyncedIsScrolling:g,syncedIsScrollingRef:v,syncedIsChatWindowOpenRef:h}=xe(),{chatBodyRef:w}=ve(),{viewportHeight:x,setViewportHeight:m,setViewportWidth:k,scrollToBottom:P}=Ue(),{setUpNotifications:C}=Ln(),{handleFirstInteraction:S}=(()=>{var O;const{settings:B}=te(),{hasInteractedPage:_,setHasInteractedPage:F,hasFlowStarted:M,setHasFlowStarted:U}=xe(),N=f.useCallback(()=>{var H;if(F(!0),!M&&((H=B.general)==null?void 0:H.flowStartTrigger)==="ON_PAGE_INTERACT"&&U(!0),!window.SpeechSynthesisUtterance)return void console.info("Speech Synthesis API is not supported in this environment.");const y=new window.SpeechSynthesisUtterance;y.text="",y.onend=()=>{window.removeEventListener("click",N),window.removeEventListener("keydown",N),window.removeEventListener("touchstart",N)},window.speechSynthesis.speak(y)},[M,(O=B.general)==null?void 0:O.flowStartTrigger]);return{hasInteractedPage:_,handleFirstInteraction:N}})(),{showChatHistory:I}=jn(),Q=f.useRef(0),D=f.useRef(!1);f.useEffect(()=>(window.addEventListener("click",S),window.addEventListener("keydown",S),window.addEventListener("touchstart",S),()=>{window.removeEventListener("click",S),window.removeEventListener("keydown",S),window.removeEventListener("touchstart",S)}),[]),f.useEffect(()=>{const O=w.current;if(!O)return;const B=()=>{D.current||(D.current=!0,requestAnimationFrame(()=>{var _,F;if(!O)return;const{scrollTop:M,clientHeight:U,scrollHeight:N}=O,H=M+U<N-(((_=i.chatWindow)==null?void 0:_.messagePromptOffset)??30);g(H),v.current=H,H||(M+U>=N-1&&(O.scrollTop=N-U-1),(h.current||(F=i.general)!=null&&F.embedded)&&l(0)),D.current=!1}))};return O.addEventListener("wheel",B,{passive:!0}),O.addEventListener("touchmove",B,{passive:!0}),()=>{O.removeEventListener("wheel",B),O.removeEventListener("touchmove",B)}},[]),f.useEffect(()=>{var O,B,_;d((O=i.chatInput)==null?void 0:O.disabled),c((B=i.chatWindow)==null?void 0:B.defaultOpen),u((_=i.audio)==null?void 0:_.defaultToggledOn),setTimeout(()=>{var F;p((F=i.voice)==null?void 0:F.defaultToggledOn)},1)},[]),f.useEffect(()=>{var O;(O=i.notification)!=null&&O.disabled||C()},[(e=i.notification)==null?void 0:e.disabled]),f.useEffect(()=>{!v.current&&w!=null&&w.current&&P()},[s]),f.useEffect(()=>{var O,B;if((O=i.chatHistory)!=null&&O.disabled)pt&&pt.removeItem(an);else if(Nn(i),jt().length>0){const _=dt(E.jsx(fs,{}),"SYSTEM");A([_]),(B=i.chatHistory)!=null&&B.autoLoad&&I()}},[(t=i.chatHistory)==null?void 0:t.storageKey,(r=i.chatHistory)==null?void 0:r.maxEntries,(n=i.chatHistory)==null?void 0:n.disabled]),f.useEffect(()=>{var O;o||(O=i.general)!=null&&O.embedded||!navigator.virtualKeyboard||(navigator.virtualKeyboard.overlaysContent=!0,navigator.virtualKeyboard.addEventListener("geometrychange",B=>{if(!B.target)return;const{x:_,y:F,width:M,height:U}=B.target.boundingRect;_==0&&F==0&&M==0&&U==0?(setTimeout(()=>{var N;m((N=window.visualViewport)==null?void 0:N.height)},101),setTimeout(()=>{var N,H;x!=((N=window.visualViewport)==null?void 0:N.height)&&m((H=window.visualViewport)==null?void 0:H.height)},1001)):setTimeout(()=>{var N;m(((N=window.visualViewport)==null?void 0:N.height)-U)},101)}))},[o]),f.useEffect(()=>{var O,B,_,F;if(o)return;a&&(m((O=window.visualViewport)==null?void 0:O.height),k((B=window.visualViewport)==null?void 0:B.width));const M=()=>window.scrollTo({top:0,left:0,behavior:"auto"}),U=()=>Q.current=window.scrollY,N=()=>{var y,q;m((y=window.visualViewport)==null?void 0:y.height),k((q=window.visualViewport)==null?void 0:q.width)},H=()=>{var y;window.removeEventListener("scroll",M),window.removeEventListener("scroll",U),(y=window.visualViewport)==null||y.removeEventListener("resize",N)};return a?(H(),document.body.style.position="fixed",window.addEventListener("scroll",M),(_=window.visualViewport)==null||_.addEventListener("resize",N)):(document.body.style.position="static",H(),window.scrollTo({top:Q.current,left:0,behavior:"auto"}),window.addEventListener("scroll",U),(F=window.visualViewport)==null||F.removeEventListener("resize",N)),H},[a,o])},gs="https://cdn.jsdelivr.net/gh/react-chatbotify/community-themes/themes",ms="2592000",lo="RCB_THEME_CACHE_DATA",co=async(e,t)=>{const{id:r,version:n,baseUrl:o=gs,cacheDuration:i=ms}=t,A=n||await(async(w,x)=>{const m=`${x}/${w}/meta.json`;try{const k=await fetch(m);return k.ok?(await k.json()).version:(console.error(`Failed to fetch meta.json from ${m}`),null)}catch(k){return console.error(`Failed to fetch meta.json from ${m}`,k),null}})(r,o);if(!A)return console.error(`Unable to find version for theme: ${r}`),{settings:{},inlineStyles:{},cssStylesText:""};const s=((w,x,m)=>{const k=localStorage.getItem(`${lo}_${w}_${x}`);if(!k)return null;try{const P=JSON.parse(k),C=new Date().getTime(),S=Math.floor(C/1e3);return P.cacheDate+m>=S?P:null}catch(P){return console.error(`Unable to fetch cache for ${w}`,P),null}})(r,A,i);if(s){const w=uo(e,s.cssStylesText);return{settings:s.settings,inlineStyles:s.inlineStyles,cssStylesText:w}}const a=`${o}/${r}/${A}/styles.css`,l=`${o}/${r}/${A}/settings.json`,c=`${o}/${r}/${A}/styles.json`;let d="";const u=await fetch(a);u.ok?d=await u.text():console.info(`Could not fetch styles.css from ${a}`);const p=await fetch(l);let g={};p.ok?g=await p.json():console.info(`Could not fetch settings.json from ${l}`);const v=await fetch(c);let h={};return v.ok?h=await v.json():console.info(`Could not fetch styles.json from ${c}`),((w,x,m,k,P)=>{const C=new Date().getTime(),S={settings:m,inlineStyles:k,cssStylesText:P,cacheDate:Math.floor(C/1e3)};localStorage.setItem(`${lo}_${w}_${x}`,JSON.stringify(S))})(r,A,g,h,d),{settings:g,inlineStyles:h,cssStylesText:uo(e,d)}},uo=(e,t)=>t.split(new RegExp("(?<=})")).map(r=>{const n=r.trim();return n.startsWith("@import")||n.startsWith("@keyframes")||n.startsWith("@media")?n:n?`#${e} ${n}`:""}).join(`
|
|
4
|
+
`),ys=async(e,t,r,n)=>{var o,i;let A=dn(qr),s=dn(Yr),a="";if(n!=null)if(Array.isArray(n))for(const l of n){const c=await co(e,l);A=rt(c.settings,A),s=rt(c.inlineStyles,s),a+=c.cssStylesText}else{const l=await co(e,n);A=rt(l.settings,A),s=rt(l.inlineStyles,s),a+=l.cssStylesText}return t!=null&&(A=rt(t,A)),r!=null&&(s=rt(r,s)),((o=A.chatInput)==null?void 0:o.botDelay)!=null&&((i=A.chatInput)==null?void 0:i.botDelay)<500&&(A.chatInput.botDelay=500),{settings:A,inlineStyles:s,cssStylesText:a}},rt=(e,t)=>{const r=[{source:e,target:t}];for(;r.length;){const n=r.pop();if(n==null)continue;const{source:o,target:i}=n;for(const A of Object.keys(o)){const s=A;if(f.isValidElement(o[s]))i[s]=o[s];else if(typeof o[s]!="object"||o[s]===null||Array.isArray(o[s]))try{i[s]=o[s]}catch{}else(typeof i[s]!="object"||i[s]===null)&&(i[s]={}),r.push({source:o[s],target:i[s]})}}return t},dn=e=>{if(e===null||typeof e!="object")return e;const t=Array.isArray(e)?[]:{},r=[{source:e,target:t}],n=new WeakMap;for(n.set(e,t);r.length;){const o=r.pop();if(o==null)continue;const{source:i,target:A}=o;for(const s in i)if(Object.prototype.hasOwnProperty.call(i,s)){const a=i[s];if(a&&typeof a=="object")if(n.has(a))A[s]=n.get(a);else{const l=Array.isArray(a)?[]:{};n.set(a,l),A[s]=l,r.push({source:a,target:l})}else A[s]=a}}return t},po=()=>{const{settings:e,setSyncedSettings:t,syncedSettingsRef:r}=te(),n=f.useCallback(i=>{!i||Object.keys(i).length===0||t(dn(rt(i,e)))},[e]),o=f.useCallback(i=>{const A=typeof i=="function"?i(r.current):i;t(A)},[r]);return{settings:e,replaceSettings:o,updateSettings:n}},fo=()=>{const{styles:e,setSyncedStyles:t,syncedStylesRef:r}=se(),n=f.useCallback(i=>{!i||Object.keys(i).length===0||t(dn(rt(i,e)))},[e]),o=f.useCallback(i=>{const A=typeof i=="function"?i(r.current):i;t(A)},[r]);return{styles:e,replaceStyles:o,updateStyles:n}},bs=({plugins:e,slots:t})=>{var r,n;const o=un(),{settings:i}=te(),{styles:A}=se(),{hasFlowStarted:s,setHasFlowStarted:a}=xe(),{inputRef:l}=ve(),{viewportHeight:c,viewportWidth:d,isChatWindowOpen:u}=Ue(),{goToPath:p}=cn(),{headerButtons:g,chatInputButtons:v,footerButtons:h}=ps();hs(),(x=>{const{updateSettings:m}=po(),{updateStyles:k}=fo(),P=x==null?void 0:x.map(C=>C());f.useEffect(()=>{let C={},S={};P==null||P.forEach(I=>{I!=null&&I.settings&&Object.keys(I==null?void 0:I.settings).length!==0&&(C=rt(I.settings,C)),I!=null&&I.styles&&Object.keys(I==null?void 0:I.styles).length!==0&&(S=rt(I.styles,S))}),m(C),k(S)},[])})(e),f.useEffect(()=>{var x;(s||((x=i.general)==null?void 0:x.flowStartTrigger)==="ON_LOAD")&&p("start")},[s,(r=i.general)==null?void 0:r.flowStartTrigger]);const w=f.useMemo(()=>{var x;const m="rcb-chatbot-global ";return(x=i.general)!=null&&x.embedded?m+"rcb-window-embedded":u?m+"rcb-window-open":m+"rcb-window-close"},[i,u]);return E.jsx(E.Fragment,{children:(()=>{var x,m;return o&&((x=i.device)==null?void 0:x.desktopEnabled)||!o&&((m=i.device)==null?void 0:m.mobileEnabled)})()&&E.jsxs("div",{onMouseDown:x=>{var m,k;!s&&((m=i.general)==null?void 0:m.flowStartTrigger)==="ON_CHATBOT_INTERACT"&&a(!0),o?(k=l.current)==null||k.blur():x==null||x.preventDefault()},className:w,children:[E.jsx(ns,{}),E.jsx(ts,{}),u&&!o&&!((n=i.general)!=null&&n.embedded)&&E.jsxs(E.Fragment,{children:[E.jsx("style",{children:`
|
|
5
5
|
html {
|
|
6
6
|
overflow: hidden !important;
|
|
7
7
|
touch-action: none !important;
|
|
8
8
|
scroll-behavior: auto !important;
|
|
9
9
|
}
|
|
10
|
-
`}),
|
|
10
|
+
`}),E.jsx("div",{style:{position:"fixed",top:0,left:0,width:"100%",height:"100%",backgroundColor:"#fff",zIndex:9999}})]}),E.jsx("div",{style:(()=>{var x,m;return o||(x=i.general)!=null&&x.embedded?(m=i.general)!=null&&m.embedded?{...A.chatWindowStyle}:{...A.chatWindowStyle,zIndex:1e4}:{...A.chatWindowStyle,borderRadius:"0px",left:"0px",right:"auto",top:"0px",bottom:"auto",width:`${d}px`,height:`${c}px`,zIndex:1e4}})(),className:"rcb-chat-window",children:(()=>{var x,m,k;const P=(t==null?void 0:t.chatBotHeader)||wa,C=(t==null?void 0:t.chatBotBody)||Ta,S=(t==null?void 0:t.chatBotInput)||$a,I=(t==null?void 0:t.chatBotFooter)||es;return E.jsxs(E.Fragment,{children:[((x=i.general)==null?void 0:x.showHeader)&&E.jsx(P,{buttons:g}),E.jsx(C,{}),E.jsx(os,{}),((m=i.general)==null?void 0:m.showInputRow)&&E.jsx(S,{buttons:v}),((k=i.general)==null?void 0:k.showFooter)&&E.jsx(I,{buttons:h})]})})()})]})})},ho=f.createContext(void 0),go=()=>f.useContext(ho),mo=({children:e})=>{var t;const r=f.useRef(""),n=f.useRef({}),[o,i,A]=He({}),[s,a,l]=He({}),[c,d]=f.useState(!1);return f.useEffect(()=>{d(!0)},[]),c?E.jsx("div",{style:{fontFamily:(t=o.general)==null?void 0:t.fontFamily},children:E.jsx(ho.Provider,{value:{loadConfig:async(u,p,g,v,h,w)=>{r.current=u,n.current=p;const x=await ys(u,g,v,h);w.current&&(w.current.textContent=x.cssStylesText),i(x.settings),a(x.inlineStyles)}},children:E.jsx(ba,{settings:o,setSyncedSettings:i,syncedSettingsRef:A,children:E.jsx(va,{styles:s,setSyncedStyles:a,syncedStylesRef:l,children:E.jsx(Za,{children:E.jsx(xa,{botIdRef:r,flowRef:n,children:E.jsx(Ca,{children:E.jsx(Ea,{settings:o,children:E.jsx(Sa,{children:e})})})})})})})})}):null},vs=({id:e,flow:t,settings:r,styles:n,themes:o,plugins:i,setConfigLoaded:A,styleRootRef:s})=>{const a=f.useMemo(()=>e,[]),l=go(),{flowRef:c}=ve();return c&&c.current!==t&&(c.current=t),f.useEffect(()=>{(async()=>{var d,u;(d=r.event)!=null&&d.rcbPreLoadChatBot&&(await Mn(j.PRE_LOAD_CHATBOT,{botId:a,currPath:null,prevPath:null},{flow:t,settings:r,styles:n,themes:o,plugins:i})).defaultPrevented||(l!=null&&l.loadConfig&&(await l.loadConfig(a,t,r,n,o,s),A(!0)),(u=r.event)!=null&&u.rcbPostLoadChatBot&&Mn(j.POST_LOAD_CHATBOT,{botId:a,currPath:null,prevPath:null},{flow:t,settings:r,styles:n,themes:o,plugins:i}))})()},[o]),null},qn=["Quickstart","API Docs","Examples","Github","Discord"],ws={start:{message:"Hello, I am Tan Jin 👋! Welcome to React ChatBotify, I'm excited that you are using our chatbot 😊!",transition:{duration:1e3},chatDisabled:!0,path:"show_options"},show_options:{message:"It looks like you have not set up a conversation flow yet. No worries! Here are a few helpful things you can check out to get started:",options:qn,path:"process_options"},prompt_again:{message:"Do you need any other help?",options:qn,path:"process_options"},unknown_input:{message:"Sorry, I do not understand your message 😢! If you require further assistance, you may click on the Github option and open an issue there or visit our discord.",options:qn,path:"process_options"},process_options:{transition:{duration:0},path:e=>{let t="";switch(e.userInput){case"Quickstart":t="https://react-chatbotify.com/docs/introduction/quickstart/";break;case"API Docs":t="https://react-chatbotify.com/docs/api/bot_options";break;case"Examples":t="https://react-chatbotify.com/docs/examples/basic_form";break;case"Github":t="https://github.com/react-chatbotify/react-chatbotify/";break;case"Discord":t="https://discord.gg/6R4DK4G5Zh";break;default:return"unknown_input"}return e.injectMessage("Sit tight! I'll send you right there!"),setTimeout(()=>{window.open(t)},1e3),"repeat"}},repeat:{transition:{duration:3e3},path:"prompt_again"}},xs=({id:e,flow:t,settings:r,styles:n,themes:o,plugins:i,slots:A})=>{const s=f.useMemo(()=>e||"rcb-"+on(),[]),a=t&&Object.keys(t).length!==0?t:ws,l=r||{},c=n||{},d=i||[],[u,p]=f.useState(!1),g=go(),v=f.useRef(null),[h,w]=f.useState(o||[]);f.useEffect(()=>{o&&w(o)},[o]);const x=()=>E.jsxs(E.Fragment,{children:[E.jsx(vs,{styleRootRef:v,id:s,flow:a,settings:l,styles:c,themes:h,plugins:d,setConfigLoaded:p}),u&&E.jsx(bs,{plugins:i,slots:A})]});return E.jsxs(g==null?mo:E.Fragment,{children:[E.jsx("style",{ref:v}),E.jsx("div",{id:s,children:x()})]})},Es=()=>{const{getBotId:e}=(()=>{const{botIdRef:t}=ve();return{getBotId:f.useCallback(()=>t.current,[t])}})();return{getBotId:e}},pn=()=>{const{hasFlowStarted:e,restartFlow:t,getFlow:r}=(()=>{const{replaceMessages:n}=yt(),{replacePaths:o,goToPath:i}=cn(),{replaceToasts:A}=Bt(),{hasFlowStarted:s}=xe(),{flowRef:a,timeoutIdRef:l}=ve(),{settings:c}=te();return{hasFlowStarted:s,restartFlow:f.useCallback(async()=>{Nn(c),l.current&&clearTimeout(l.current),n([]),A([]),o([]),await i("start")},[l,c,n,A,o,Nn,i]),getFlow:f.useCallback(()=>(a==null?void 0:a.current)??{},[a])}})();return{hasFlowStarted:e,restartFlow:t,getFlow:r}},qt=()=>{const{endStreamMessage:e,injectMessage:t,removeMessage:r,simulateStreamMessage:n,streamMessage:o,messages:i,replaceMessages:A,getMessages:s}=yt();return{endStreamMessage:e,injectMessage:t,removeMessage:r,simulateStreamMessage:n,streamMessage:o,messages:i,replaceMessages:A,getMessages:s}},We=(e,t)=>{const{getBotId:r}=Es();f.useEffect(()=>{const n=o=>{o.detail.botId===r()&&t(o)};return window.addEventListener(e,n),()=>{window.removeEventListener(e,n)}},[r,e,t])},yo=()=>{const{settings:e,replaceSettings:t,updateSettings:r}=po();return{settings:e,replaceSettings:t,updateSettings:r}},bo=()=>{const{textAreaDisabled:e,toggleTextAreaDisabled:t,textAreaSensitiveMode:r,toggleTextAreaSensitiveMode:n,getTextAreaValue:o,setTextAreaValue:i,focusTextArea:A,blurTextArea:s}=bt();return{textAreaDisabled:e,toggleTextAreaDisabled:t,textAreaSensitiveMode:r,toggleTextAreaSensitiveMode:n,getTextAreaValue:o,setTextAreaValue:i,focusTextArea:A,blurTextArea:s}},vo=()=>{const{showChatHistory:e,hasChatHistoryLoaded:t}=jn();return{showChatHistory:e,getHistoryMessages:jt,setHistoryMessages:_n,hasChatHistoryLoaded:t}},Gn={a:{content:9,self:!1,type:105},address:{invalid:["h1","h2","h3","h4","h5","h6","address","article","aside","section","div","header","footer"],self:!1},audio:{children:["track","source"]},br:{type:9,void:!0},body:{content:127},button:{content:8,type:105},caption:{content:1,parent:["table"]},col:{parent:["colgroup"],void:!0},colgroup:{children:["col"],parent:["table"]},details:{children:["summary"],type:97},dd:{content:1,parent:["dl"]},dl:{children:["dt","dd"],type:1},dt:{content:1,invalid:["footer","header"],parent:["dl"]},figcaption:{content:1,parent:["figure"]},footer:{invalid:["footer","header"]},header:{invalid:["footer","header"]},hr:{type:1,void:!0},img:{void:!0},li:{content:1,parent:["ul","ol","menu"]},main:{self:!1},ol:{children:["li"],type:1},picture:{children:["source","img"],type:25},rb:{parent:["ruby","rtc"]},rp:{parent:["ruby","rtc"]},rt:{content:8,parent:["ruby","rtc"]},rtc:{content:8,parent:["ruby"]},ruby:{children:["rb","rp","rt","rtc"]},source:{parent:["audio","video","picture"],void:!0},summary:{content:8,parent:["details"]},table:{children:["caption","colgroup","thead","tbody","tfoot","tr"],type:1},tbody:{parent:["table"],children:["tr"]},td:{content:1,parent:["tr"]},tfoot:{parent:["table"],children:["tr"]},th:{content:1,parent:["tr"]},thead:{parent:["table"],children:["tr"]},tr:{parent:["table","tbody","thead","tfoot"],children:["th","td"]},track:{parent:["audio","video"],void:!0},ul:{children:["li"],type:1},video:{children:["track","source"]},wbr:{type:9,void:!0}};function vt(e){return t=>{Gn[t]={...e,...Gn[t]}}}["address","main","div","figure","p","pre"].forEach(vt({content:1,type:65})),["abbr","b","bdi","bdo","cite","code","data","dfn","em","i","kbd","mark","q","ruby","samp","strong","sub","sup","time","u","var"].forEach(vt({content:8,type:73})),["p","pre"].forEach(vt({content:8,type:65})),["s","small","span","del","ins"].forEach(vt({content:8,type:9})),["article","aside","footer","header","nav","section","blockquote"].forEach(vt({content:1,type:67})),["h1","h2","h3","h4","h5","h6"].forEach(vt({content:8,type:69})),["audio","canvas","iframe","img","video"].forEach(vt({type:89}));const Yn=Object.freeze(Gn),ks=["applet","base","body","command","embed","frame","frameset","head","html","link","meta","noscript","object","script","style","title"],Cs=Object.keys(Yn).filter(e=>e!=="canvas"&&e!=="iframe"),wo=Object.freeze({alt:1,cite:1,class:1,colspan:3,controls:4,datetime:1,default:4,disabled:4,dir:1,height:1,href:1,id:1,kind:1,label:1,lang:1,loading:1,loop:4,media:1,muted:4,poster:1,rel:1,role:1,rowspan:3,scope:1,sizes:1,span:3,start:3,style:5,src:1,srclang:1,srcset:1,tabindex:1,target:1,title:1,type:1,width:1}),Ps=Object.freeze({class:"className",colspan:"colSpan",datetime:"dateTime",rowspan:"rowSpan",srclang:"srcLang",srcset:"srcSet",tabindex:"tabIndex"});function fn(){return fn=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},fn.apply(this,arguments)}function xo({attributes:e={},className:t,children:r=null,selfClose:n=!1,tagName:o}){const i=o;return n?f.createElement(i,fn({className:t},e)):f.createElement(i,fn({className:t},e),r)}class Ss{attribute(t,r){return r}node(t,r){return r}}function Bs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}/*!
|
|
11
11
|
* escape-html
|
|
12
12
|
* Copyright(c) 2012-2013 TJ Holowaychuk
|
|
13
13
|
* Copyright(c) 2015 Andreas Lubbe
|
|
14
14
|
* Copyright(c) 2015 Tiancheng "Timothy" Gu
|
|
15
15
|
* MIT Licensed
|
|
16
|
-
*/var
|
|
16
|
+
*/var Eo,ko;const Ds=Bs(function(){if(ko)return Eo;ko=1;var e=/["'&<>]/;return Eo=function(t){var r=""+t,n=e.exec(r);if(!n)return r;var o,i="",A=0,s=0;for(A=n.index;A<r.length;A++){switch(r.charCodeAt(A)){case 34:o=""";break;case 38:o="&";break;case 39:o="'";break;case 60:o="<";break;case 62:o=">";break;default:continue}s!==A&&(i+=r.substring(s,A)),s=A+1,i+=o}return s!==A?i+r.substring(s,A):i}}());function ct(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Is=/(url|image|image-set)\(/i;class Ts extends Ss{attribute(t,r){return t==="style"&&Object.keys(r).forEach(n=>{String(r[n]).match(Is)&&delete r[n]}),r}}const Qs=/^<(!doctype|(html|head|body)(\s|>))/i,Ms=/^(aria-|data-|\w+:)/iu,Os=/{{{(\w+)\/?}}}/;function _s(){if(!(typeof window>"u"||typeof document>"u"))return document.implementation.createHTMLDocument("Interweave")}let Co=class{constructor(e,t={},r=[],n=[]){var o;if(ct(this,"allowed",void 0),ct(this,"banned",void 0),ct(this,"blocked",void 0),ct(this,"container",void 0),ct(this,"content",[]),ct(this,"props",void 0),ct(this,"matchers",void 0),ct(this,"filters",void 0),ct(this,"keyIndex",void 0),process.env.NODE_ENV!=="production"&&e&&typeof e!="string")throw new TypeError("Interweave parser requires a valid string.");this.props=t,this.matchers=r,this.filters=[...n,new Ts],this.keyIndex=-1,this.container=this.createContainer(e||""),this.allowed=new Set((o=t.allowList)!==null&&o!==void 0?o:Cs),this.banned=new Set(ks),this.blocked=new Set(t.blockList)}applyAttributeFilters(e,t){return this.filters.reduce((r,n)=>r!==null&&typeof n.attribute=="function"?n.attribute(e,r):r,t)}applyNodeFilters(e,t){return this.filters.reduce((r,n)=>r!==null&&typeof n.node=="function"?n.node(e,r):r,t)}applyMatchers(e,t){const r={},{props:n}=this;let o=e,i=0,A=null;return this.matchers.forEach(s=>{const a=s.asTag().toLowerCase(),l=this.getTagConfig(a);if(n[s.inverseName]||!this.isTagAllowed(a)||!this.canRenderChild(t,l))return;let c="";for(;o&&(A=s.match(o));){const{index:d,length:u,match:p,valid:g,void:v,...h}=A,w=s.propName+String(i);d>0&&(c+=o.slice(0,d)),g?(c+=v?`{{{${w}/}}}`:`{{{${w}}}}${p}{{{/${w}}}}`,this.keyIndex+=1,i+=1,r[w]={children:p,matcher:s,props:{...n,...h,key:this.keyIndex}}):c+=p,s.greedy?(o=c+o.slice(d+u),c=""):o=o.slice(d+(u||p.length))}s.greedy||(o=c+o)}),i===0?e:this.replaceTokens(o,r)}canRenderChild(e,t){return!(!e.tagName||!t.tagName||e.void)&&(e.children.length>0?e.children.includes(t.tagName):!(e.invalid.length>0&&e.invalid.includes(t.tagName))&&(t.parent.length>0?t.parent.includes(e.tagName):!(!e.self&&e.tagName===t.tagName)&&!!(e&&e.content&t.type)))}convertLineBreaks(e){const{noHtml:t,disableLineBreaks:r}=this.props;if(t||r||e.match(/<((?:\/[ a-z]+)|(?:[ a-z]+\/))>/gi))return e;let n=e.replace(/\r\n/g,`
|
|
17
17
|
`);return n=n.replace(/\n{3,}/g,`
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
`),n=n.replace(/\n/g,"<br/>"),n}createContainer(e){var t;const r=(typeof global<"u"&&global.INTERWEAVE_SSR_POLYFILL||ds)();if(!r)return;const n=(t=this.props.containerTagName)!==null&&t!==void 0?t:"body",o=n==="body"||n==="fragment"?r.body:r.createElement(n);if(e.match(ls)){if(process.env.NODE_ENV!=="production")throw new Error("HTML documents as Interweave content are not supported.")}else o.innerHTML=this.convertLineBreaks(this.props.escapeHtml?is(e):e);return o}extractAttributes(e){const{allowAttributes:t}=this.props,r={};let n=0;return e.nodeType===1&&e.attributes&&([...e.attributes].forEach(o=>{const{name:a,value:A}=o,s=a.toLowerCase(),i=eo[s]||eo[a];if(!this.isSafe(e)||!s.match(cs)&&(!t&&(!i||i===2)||s.startsWith("on")||A.replace(/(\s|\0|�([9AD]);)/,"").match(/(javascript|vbscript|livescript|xss):/i)))return;let c=s==="style"?this.extractStyleAttribute(e):A;i===4?c=!0:i===3?c=Number.parseFloat(String(c)):i!==5&&(c=String(c)),r[rs[s]||s]=this.applyAttributeFilters(s,c),n+=1}),n!==0)?r:null}extractStyleAttribute(e){const t={};return Array.from(e.style).forEach(r=>{const n=e.style[r];(typeof n=="string"||typeof n=="number")&&(t[r.replace(/-([a-z])/g,(o,a)=>String(a).toUpperCase())]=n)}),t}getTagConfig(e){const t={children:[],content:0,invalid:[],parent:[],self:!0,tagName:"",type:0,void:!1};return Dn[e]?{...t,...Dn[e],tagName:e}:t}isSafe(e){if(typeof HTMLAnchorElement<"u"&&e instanceof HTMLAnchorElement){const t=e.getAttribute("href");if(t!=null&&t.startsWith("#"))return!0;const r=e.protocol.toLowerCase();return r===":"||r==="http:"||r==="https:"||r==="mailto:"||r==="tel:"}return!0}isTagAllowed(e){return!this.banned.has(e)&&!this.blocked.has(e)&&(this.props.allowElements||this.allowed.has(e))}parse(){return this.container?this.parseNode(this.container,this.getTagConfig(this.container.nodeName.toLowerCase())):[]}parseNode(e,t){const{noHtml:r,noHtmlExceptMatchers:n,allowElements:o,transform:a,transformOnlyAllowList:A}=this.props;let s=[],i="";return[...e.childNodes].forEach(c=>{if(c.nodeType===1){const d=c.nodeName.toLowerCase(),u=this.getTagConfig(d);i&&(s.push(i),i="");const p=this.applyNodeFilters(d,c);if(!p)return;let f;if(a&&(!A||this.isTagAllowed(d))){this.keyIndex+=1;const y=this.keyIndex;f=this.parseNode(p,u);const g=a(p,f,u);if(g===null)return;if(typeof g<"u")return void s.push(h.cloneElement(g,{key:y}));this.keyIndex=y-1}if(this.banned.has(d))return;if(r||n&&d!=="br"||!this.isTagAllowed(d)||!o&&!this.canRenderChild(t,u))s=[...s,...this.parseNode(p,u.tagName?u:t)];else{var l;this.keyIndex+=1;const y=this.extractAttributes(p),g={tagName:d};y&&(g.attributes=y),u.void&&(g.selfClose=u.void),s.push(h.createElement(to,{...g,key:this.keyIndex},(l=f)!==null&&l!==void 0?l:this.parseNode(p,u)))}}else if(c.nodeType===3){const d=r&&!n?c.textContent:this.applyMatchers(c.textContent||"",t);Array.isArray(d)?s=[...s,...d]:i+=d}}),i&&s.push(i),s}replaceTokens(e,t){if(!e.includes("{{{"))return e;const r=[];let n=e,o=null;for(;o=n.match(us);){const[a,A]=o,s=o.index,i=a.includes("/");if(process.env.NODE_ENV!=="production"&&!t[A])throw new Error(`Token "${A}" found but no matching element to replace with.`);s>0&&(r.push(n.slice(0,s)),n=n.slice(s));const{children:c,matcher:l,props:d}=t[A];let u;if(i)u=a.length,r.push(l.createElement(c,d));else{const p=n.match(new RegExp(`{{{/${A}}}}`));if(process.env.NODE_ENV!=="production"&&!p)throw new Error(`Closing token missing for interpolated element "${A}".`);u=p.index+p[0].length,r.push(l.createElement(this.replaceTokens(n.slice(a.length,p.index),t),d))}n=n.slice(u)}return n.length>0&&r.push(n),r.length===0?"":r.length===1&&typeof r[0]=="string"?r[0]:r}};function ps(e){var t;const{attributes:r,className:n,containerTagName:o,content:a,emptyContent:A,parsedContent:s,tagName:i,noWrap:c}=e,l=(t=o??i)!==null&&t!==void 0?t:"span",d=l==="fragment"||c;let u;if(s)u=s;else{const p=new oo(a??"",e).parse();p.length>0&&(u=p)}return u||(u=A),d?h.createElement(h.Fragment,null,u):h.createElement(to,{attributes:r,className:n,tagName:l},u)}function fs(e){const{attributes:t,className:r,content:n="",disableFilters:o=!1,disableMatchers:a=!1,emptyContent:A=null,filters:s=[],matchers:i=[],onAfterParse:c=null,onBeforeParse:l=null,tagName:d="span",noWrap:u=!1,...p}=e,f=a?[]:i,y=o?[]:s,g=l?[l]:[],v=c?[c]:[];f.forEach(P=>{P.onBeforeParse&&g.push(P.onBeforeParse.bind(P)),P.onAfterParse&&v.push(P.onAfterParse.bind(P))});const x=g.reduce((P,C)=>{const S=C(P,e);if(process.env.NODE_ENV!=="production"&&typeof S!="string")throw new TypeError("Interweave `onBeforeParse` must return a valid HTML string.");return S},n??""),m=new oo(x,p,f,y),E=v.reduce((P,C)=>{const S=C(P,e);if(process.env.NODE_ENV!=="production"&&!Array.isArray(S))throw new TypeError("Interweave `onAfterParse` must return an array of strings and React elements.");return S},m.parse());return h.createElement(ps,{attributes:t,className:r,containerTagName:e.containerTagName,emptyContent:A,noWrap:u,parsedContent:E.length===0?void 0:E,tagName:d})}const hs=({children:e})=>k.jsx("div",{style:{whiteSpace:"normal"},children:k.jsx(fs,{content:typeof e=="string"?e:""})}),gs={autoConfig:!0},ao=(e,t,r)=>{var n;if(!e.detail.currPath)return!1;const o=t[e.detail.currPath];return!!o&&(((n=o.renderHtml)==null?void 0:n.map(a=>a.toUpperCase()).includes(r))??!1)},ms=e=>{const t=[];let r="",n=!1;for(let o=0;o<e.length;o++){const a=e[o];a==="<"?n?(t.push(r),r=a):(n=!0,r=a):a===">"?(r+=a,t.push(r),r="",n=!1):n?r+=a:t.push(a)}return r!==""&&t.push(r),t},ys=e=>{const{getFlow:t}=Vt(),{messages:r,replaceMessages:n}=Pt(),{settings:o}=Jr(),{hasChatHistoryLoaded:a}=$r(),A={...e,...gs},s=A.htmlComponent?A.htmlComponent:hs;h.useEffect(()=>{var l,d;if(a){const u=[...r];for(let p=0;p<u.length&&p<(((l=o.chatHistory)==null?void 0:l.maxEntries)??30);p++){const f=u[p];(d=f.tags)!=null&&d.includes("rcb-html-renderer-plugin:parsed")&&(f.contentWrapper=s)}n(u)}},[a]);const i=async l=>{var d;const u=(d=l.data.message)==null?void 0:d.sender.toUpperCase();typeof l.data.message.content=="string"&&ao(l,t(),u)&&(l.type==="rcb-start-simulate-stream-message"&&(l.data.simulateStreamChunker=ms),l.data.message.contentWrapper=s,l.data.message.tags||(l.data.message.tags=[]),l.data.message.tags.push("rcb-html-renderer-plugin:parsed"))};Qe(j.PRE_INJECT_MESSAGE,i),Qe(j.CHUNK_STREAM_MESSAGE,i),Qe(j.START_STREAM_MESSAGE,i),Qe(j.START_SIMULATE_STREAM_MESSAGE,i),Qe(j.START_SPEAK_AUDIO,async l=>{ao(l,t(),"BOT")&&(l.data.textToRead=(d=>typeof window.DOMParser<"u"?new DOMParser().parseFromString(d,"text/html").body.textContent||"":d.replace(/<\/?[^>]+(>|$)/g,""))(l.data.textToRead))});const c={name:"@rcb-plugins/html-renderer"};return A!=null&&A.autoConfig&&(c.settings={event:{rcbPreInjectMessage:!0,rcbChunkStreamMessage:!0,rcbStartSimulateStreamMessage:!0,rcbStartStreamMessage:!0,rcbStartSpeakAudio:!0}}),c},bs=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,vs=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,ws={};function io(e,t){return(ws.jsx?vs:bs).test(e)}const xs=/[ \t\n\f\r]/g;function so(e){return e.replace(xs,"")===""}class St{constructor(t,r,n){this.property=t,this.normal=r,n&&(this.space=n)}}function Ao(e,t){const r={},n={};let o=-1;for(;++o<e.length;)Object.assign(r,e[o].property),Object.assign(n,e[o].normal);return new St(r,n,t)}function Bn(e){return e.toLowerCase()}St.prototype.property={},St.prototype.normal={},St.prototype.space=null;class Me{constructor(t,r){this.property=t,this.attribute=r}}Me.prototype.space=null,Me.prototype.boolean=!1,Me.prototype.booleanish=!1,Me.prototype.overloadedBoolean=!1,Me.prototype.number=!1,Me.prototype.commaSeparated=!1,Me.prototype.spaceSeparated=!1,Me.prototype.commaOrSpaceSeparated=!1,Me.prototype.mustUseProperty=!1,Me.prototype.defined=!1;let Es=0;const $=At(),fe=At(),lo=At(),N=At(),se=At(),ht=At(),Be=At();function At(){return 2**++Es}const In=Object.freeze(Object.defineProperty({__proto__:null,boolean:$,booleanish:fe,commaOrSpaceSeparated:Be,commaSeparated:ht,number:N,overloadedBoolean:lo,spaceSeparated:se},Symbol.toStringTag,{value:"Module"})),Tn=Object.keys(In);class Qn extends Me{constructor(t,r,n,o){let a=-1;if(super(t,r),co(this,"space",o),typeof n=="number")for(;++a<Tn.length;){const A=Tn[a];co(this,Tn[a],(n&In[A])===In[A])}}}function co(e,t,r){r&&(e[t]=r)}Qn.prototype.defined=!0;const ks={}.hasOwnProperty;function gt(e){const t={},r={};let n;for(n in e.properties)if(ks.call(e.properties,n)){const o=e.properties[n],a=new Qn(n,e.transform(e.attributes||{},n),o,e.space);e.mustUseProperty&&e.mustUseProperty.includes(n)&&(a.mustUseProperty=!0),t[n]=a,r[Bn(n)]=n,r[Bn(a.attribute)]=n}return new St(t,r,e.space)}const uo=gt({space:"xlink",transform:(e,t)=>"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),po=gt({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function fo(e,t){return t in e?e[t]:t}function ho(e,t){return fo(e,t.toLowerCase())}const go=gt({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:ho,properties:{xmlns:null,xmlnsXLink:null}}),mo=gt({transform:(e,t)=>t==="role"?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:fe,ariaAutoComplete:null,ariaBusy:fe,ariaChecked:fe,ariaColCount:N,ariaColIndex:N,ariaColSpan:N,ariaControls:se,ariaCurrent:null,ariaDescribedBy:se,ariaDetails:null,ariaDisabled:fe,ariaDropEffect:se,ariaErrorMessage:null,ariaExpanded:fe,ariaFlowTo:se,ariaGrabbed:fe,ariaHasPopup:null,ariaHidden:fe,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:se,ariaLevel:N,ariaLive:null,ariaModal:fe,ariaMultiLine:fe,ariaMultiSelectable:fe,ariaOrientation:null,ariaOwns:se,ariaPlaceholder:null,ariaPosInSet:N,ariaPressed:fe,ariaReadOnly:fe,ariaRelevant:null,ariaRequired:fe,ariaRoleDescription:se,ariaRowCount:N,ariaRowIndex:N,ariaRowSpan:N,ariaSelected:fe,ariaSetSize:N,ariaSort:null,ariaValueMax:N,ariaValueMin:N,ariaValueNow:N,ariaValueText:null,role:null}}),Cs=gt({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:ho,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:ht,acceptCharset:se,accessKey:se,action:null,allow:null,allowFullScreen:$,allowPaymentRequest:$,allowUserMedia:$,alt:null,as:null,async:$,autoCapitalize:null,autoComplete:se,autoFocus:$,autoPlay:$,blocking:se,capture:null,charSet:null,checked:$,cite:null,className:se,cols:N,colSpan:null,content:null,contentEditable:fe,controls:$,controlsList:se,coords:N|ht,crossOrigin:null,data:null,dateTime:null,decoding:null,default:$,defer:$,dir:null,dirName:null,disabled:$,download:lo,draggable:fe,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:$,formTarget:null,headers:se,height:N,hidden:$,high:N,href:null,hrefLang:null,htmlFor:se,httpEquiv:se,id:null,imageSizes:null,imageSrcSet:null,inert:$,inputMode:null,integrity:null,is:null,isMap:$,itemId:null,itemProp:se,itemRef:se,itemScope:$,itemType:se,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:$,low:N,manifest:null,max:null,maxLength:N,media:null,method:null,min:null,minLength:N,multiple:$,muted:$,name:null,nonce:null,noModule:$,noValidate:$,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:$,optimum:N,pattern:null,ping:se,placeholder:null,playsInline:$,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:$,referrerPolicy:null,rel:se,required:$,reversed:$,rows:N,rowSpan:N,sandbox:se,scope:null,scoped:$,seamless:$,selected:$,shadowRootClonable:$,shadowRootDelegatesFocus:$,shadowRootMode:null,shape:null,size:N,sizes:null,slot:null,span:N,spellCheck:fe,src:null,srcDoc:null,srcLang:null,srcSet:null,start:N,step:null,style:null,tabIndex:N,target:null,title:null,translate:null,type:null,typeMustMatch:$,useMap:null,value:fe,width:N,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:se,axis:null,background:null,bgColor:null,border:N,borderColor:null,bottomMargin:N,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:$,declare:$,event:null,face:null,frame:null,frameBorder:null,hSpace:N,leftMargin:N,link:null,longDesc:null,lowSrc:null,marginHeight:N,marginWidth:N,noResize:$,noHref:$,noShade:$,noWrap:$,object:null,profile:null,prompt:null,rev:null,rightMargin:N,rules:null,scheme:null,scrolling:fe,standby:null,summary:null,text:null,topMargin:N,valueType:null,version:null,vAlign:null,vLink:null,vSpace:N,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:$,disableRemotePlayback:$,prefix:null,property:null,results:N,security:null,unselectable:null}}),Ps=gt({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:fo,properties:{about:Be,accentHeight:N,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:N,amplitude:N,arabicForm:null,ascent:N,attributeName:null,attributeType:null,azimuth:N,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:N,by:null,calcMode:null,capHeight:N,className:se,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:N,diffuseConstant:N,direction:null,display:null,dur:null,divisor:N,dominantBaseline:null,download:$,dx:null,dy:null,edgeMode:null,editable:null,elevation:N,enableBackground:null,end:null,event:null,exponent:N,externalResourcesRequired:null,fill:null,fillOpacity:N,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:ht,g2:ht,glyphName:ht,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:N,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:N,horizOriginX:N,horizOriginY:N,id:null,ideographic:N,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:N,k:N,k1:N,k2:N,k3:N,k4:N,kernelMatrix:Be,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:N,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:N,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:N,overlineThickness:N,paintOrder:null,panose1:null,path:null,pathLength:N,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:se,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:N,pointsAtY:N,pointsAtZ:N,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Be,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Be,rev:Be,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Be,requiredFeatures:Be,requiredFonts:Be,requiredFormats:Be,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:N,specularExponent:N,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:N,strikethroughThickness:N,string:null,stroke:null,strokeDashArray:Be,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:N,strokeOpacity:N,strokeWidth:null,style:null,surfaceScale:N,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Be,tabIndex:N,tableValues:null,target:null,targetX:N,targetY:N,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Be,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:N,underlineThickness:N,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:N,values:null,vAlphabetic:N,vMathematical:N,vectorEffect:null,vHanging:N,vIdeographic:N,version:null,vertAdvY:N,vertOriginX:N,vertOriginY:N,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:N,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),Ss=/^data[-\w.:]+$/i,yo=/-[a-z]/g,Ds=/[A-Z]/g;function Bs(e){return"-"+e.toLowerCase()}function Is(e){return e.charAt(1).toUpperCase()}const Ts={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Qs=Ao([po,uo,go,mo,Cs],"html"),Mn=Ao([po,uo,go,mo,Ps],"svg");function bo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var On,vo,wo,mt={},Ms=function(){if(wo)return mt;wo=1;var e=mt&&mt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mt,"__esModule",{value:!0}),mt.default=function(r,n){var o=null;if(!r||typeof r!="string")return o;var a=(0,t.default)(r),A=typeof n=="function";return a.forEach(function(s){if(s.type==="declaration"){var i=s.property,c=s.value;A?n(i,c,s):c&&((o=o||{})[i]=c)}}),o};var t=e(function(){if(vo)return On;vo=1;var r=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,A=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,i=/^[;\s]*/,c=/^\s+|\s+$/g,l="";function d(u){return u?u.replace(c,l):l}return On=function(u,p){if(typeof u!="string")throw new TypeError("First argument must be a string");if(!u)return[];p=p||{};var f=1,y=1;function g(Q){var B=Q.match(n);B&&(f+=B.length);var O=Q.lastIndexOf(`
|
|
21
|
-
`);y=~O?Q.length-O:y+Q.length}function v(){var Q={line:f,column:y};return function(B){return B.position=new x(Q),P(),B}}function x(Q){this.start=Q,this.end={line:f,column:y},this.source=p.source}function m(Q){var B=new Error(p.source+":"+f+":"+y+": "+Q);if(B.reason=Q,B.filename=p.source,B.line=f,B.column=y,B.source=u,!p.silent)throw B}function E(Q){var B=Q.exec(u);if(B){var O=B[0];return g(O),u=u.slice(O.length),B}}function P(){E(o)}function C(Q){var B;for(Q=Q||[];B=S();)B!==!1&&Q.push(B);return Q}function S(){var Q=v();if(u.charAt(0)=="/"&&u.charAt(1)=="*"){for(var B=2;l!=u.charAt(B)&&(u.charAt(B)!="*"||u.charAt(B+1)!="/");)++B;if(B+=2,l===u.charAt(B-1))return m("End of comment missing");var O=u.slice(2,B-2);return y+=2,g(O),u=u.slice(B),y+=2,Q({type:"comment",comment:O})}}function I(){var Q=v(),B=E(a);if(B){if(S(),!E(A))return m("property missing ':'");var O=E(s),D=Q({type:"declaration",property:d(B[0].replace(r,l)),value:O?d(O[0].replace(r,l)):l});return E(i),D}}return x.prototype.content=u,P(),function(){var Q,B=[];for(C(B);Q=I();)Q!==!1&&(B.push(Q),C(B));return B}()},On}());return mt}();const xo=bo(Ms),Os=xo.default||xo,Eo=ko("end"),_n=ko("start");function ko(e){return function(t){const r=t&&t.position&&t.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Dt(e){return e&&typeof e=="object"?"position"in e||"type"in e?Co(e.position):"start"in e||"end"in e?Co(e):"line"in e||"column"in e?Ln(e):"":""}function Ln(e){return Po(e&&e.line)+":"+Po(e&&e.column)}function Co(e){return Ln(e&&e.start)+"-"+Ln(e&&e.end)}function Po(e){return e&&typeof e=="number"?e:1}class ve extends Error{constructor(t,r,n){super(),typeof r=="string"&&(n=r,r=void 0);let o="",a={},A=!1;if(r&&(a="line"in r&&"column"in r||"start"in r&&"end"in r?{place:r}:"type"in r?{ancestors:[r],place:r.position}:{...r}),typeof t=="string"?o=t:!a.cause&&t&&(A=!0,o=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof n=="string"){const i=n.indexOf(":");i===-1?a.ruleId=n:(a.source=n.slice(0,i),a.ruleId=n.slice(i+1))}if(!a.place&&a.ancestors&&a.ancestors){const i=a.ancestors[a.ancestors.length-1];i&&(a.place=i.position)}const s=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=o,this.line=s?s.line:void 0,this.name=Dt(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=A&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual,this.expected,this.note,this.url}}ve.prototype.file="",ve.prototype.name="",ve.prototype.reason="",ve.prototype.message="",ve.prototype.stack="",ve.prototype.column=void 0,ve.prototype.line=void 0,ve.prototype.ancestors=void 0,ve.prototype.cause=void 0,ve.prototype.fatal=void 0,ve.prototype.place=void 0,ve.prototype.ruleId=void 0,ve.prototype.source=void 0;const Nn={}.hasOwnProperty,_s=new Map,Ls=/[A-Z]/g,Ns=/-([a-z])/g,Hs=new Set(["table","tbody","thead","tfoot","tr"]),Us=new Set(["td","th"]),So="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function Fs(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=t.filePath||void 0;let n;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");n=function(A,s){return i;function i(c,l,d,u){const p=Array.isArray(d.children),f=_n(c);return s(l,d,u,p,{columnNumber:f?f.column-1:void 0,fileName:A,lineNumber:f?f.line:void 0},void 0)}}(r,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");n=function(A,s,i){return c;function c(l,d,u,p){const f=Array.isArray(u.children)?i:s;return p?f(d,u,p):f(d,u)}}(0,t.jsx,t.jsxs)}const o={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:n,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Mn:Qs,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=Do(o,e,void 0);return a&&typeof a!="string"?a:o.create(e,o.Fragment,{children:a||void 0},void 0)}function Do(e,t,r){return t.type==="element"?function(n,o,a){const A=n.schema;let s=A;o.tagName.toLowerCase()==="svg"&&A.space==="html"&&(s=Mn,n.schema=s),n.ancestors.push(o);const i=Io(n,o.tagName,!1),c=function(d,u){const p={};let f,y;for(y in u.properties)if(y!=="children"&&Nn.call(u.properties,y)){const g=zs(d,y,u.properties[y]);if(g){const[v,x]=g;d.tableCellAlignToStyle&&v==="align"&&typeof x=="string"&&Us.has(u.tagName)?f=x:p[v]=x}}return f&&((p.style||(p.style={}))[d.stylePropertyNameCase==="css"?"text-align":"textAlign"]=f),p}(n,o);let l=Un(n,o);return Hs.has(o.tagName)&&(l=l.filter(function(d){return typeof d!="string"||!function(u){return typeof u=="object"?u.type==="text"&&so(u.value):so(u)}(d)})),Bo(n,c,i,o),Hn(c,l),n.ancestors.pop(),n.schema=A,n.create(o,i,c,a)}(e,t,r):t.type==="mdxFlowExpression"||t.type==="mdxTextExpression"?function(n,o){if(o.data&&o.data.estree&&n.evaluater){const a=o.data.estree.body[0];return a.type,n.evaluater.evaluateExpression(a.expression)}Bt(n,o.position)}(e,t):t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement"?function(n,o,a){const A=n.schema;let s=A;o.name==="svg"&&A.space==="html"&&(s=Mn,n.schema=s),n.ancestors.push(o);const i=o.name===null?n.Fragment:Io(n,o.name,!0),c=function(d,u){const p={};for(const f of u.attributes)if(f.type==="mdxJsxExpressionAttribute")if(f.data&&f.data.estree&&d.evaluater){const y=f.data.estree.body[0];y.type;const g=y.expression;g.type;const v=g.properties[0];v.type,Object.assign(p,d.evaluater.evaluateExpression(v.argument))}else Bt(d,u.position);else{const y=f.name;let g;if(f.value&&typeof f.value=="object")if(f.value.data&&f.value.data.estree&&d.evaluater){const v=f.value.data.estree.body[0];v.type,g=d.evaluater.evaluateExpression(v.expression)}else Bt(d,u.position);else g=f.value===null||f.value;p[y]=g}return p}(n,o),l=Un(n,o);return Bo(n,c,i,o),Hn(c,l),n.ancestors.pop(),n.schema=A,n.create(o,i,c,a)}(e,t,r):t.type==="mdxjsEsm"?function(n,o){if(o.data&&o.data.estree&&n.evaluater)return n.evaluater.evaluateProgram(o.data.estree);Bt(n,o.position)}(e,t):t.type==="root"?function(n,o,a){const A={};return Hn(A,Un(n,o)),n.create(o,n.Fragment,A,a)}(e,t,r):t.type==="text"?function(n,o){return o.value}(0,t):void 0}function Bo(e,t,r,n){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(t.node=n)}function Hn(e,t){if(t.length>0){const r=t.length>1?t:t[0];r&&(e.children=r)}}function Un(e,t){const r=[];let n=-1;const o=e.passKeys?new Map:_s;for(;++n<t.children.length;){const a=t.children[n];let A;if(e.passKeys){const i=a.type==="element"?a.tagName:a.type==="mdxJsxFlowElement"||a.type==="mdxJsxTextElement"?a.name:void 0;if(i){const c=o.get(i)||0;A=i+"-"+c,o.set(i,c+1)}}const s=Do(e,a,A);s!==void 0&&r.push(s)}return r}function zs(e,t,r){const n=function(o,a){const A=Bn(a);let s=a,i=Me;if(A in o.normal)return o.property[o.normal[A]];if(A.length>4&&A.slice(0,4)==="data"&&Ss.test(a)){if(a.charAt(4)==="-"){const c=a.slice(5).replace(yo,Is);s="data"+c.charAt(0).toUpperCase()+c.slice(1)}else{const c=a.slice(4);if(!yo.test(c)){let l=c.replace(Ds,Bs);l.charAt(0)!=="-"&&(l="-"+l),a="data"+l}}i=Qn}return new i(s,a)}(e.schema,t);if(!(r==null||typeof r=="number"&&Number.isNaN(r))){if(Array.isArray(r)&&(r=n.commaSeparated?function(o){const a={};return(o[o.length-1]===""?[...o,""]:o).join((a.padRight?" ":"")+","+(a.padLeft===!1?"":" ")).trim()}(r):function(o){return o.join(" ").trim()}(r)),n.property==="style"){let o=typeof r=="object"?r:function(a,A){const s={};try{Os(A,i)}catch(c){if(!a.ignoreInvalidStyle){const l=c,d=new ve("Cannot parse `style` attribute",{ancestors:a.ancestors,cause:l,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw d.file=a.filePath||void 0,d.url=So+"#cannot-parse-style-attribute",d}}return s;function i(c,l){let d=c;d.slice(0,2)!=="--"&&(d.slice(0,4)==="-ms-"&&(d="ms-"+d.slice(4)),d=d.replace(Ns,js)),s[d]=l}}(e,String(r));return e.stylePropertyNameCase==="css"&&(o=function(a){const A={};let s;for(s in a)Nn.call(a,s)&&(A[Rs(s)]=a[s]);return A}(o)),["style",o]}return[e.elementAttributeNameCase==="react"&&n.space?Ts[n.property]||n.property:n.attribute,r]}}function Io(e,t,r){let n;if(r)if(t.includes(".")){const o=t.split(".");let a,A=-1;for(;++A<o.length;){const s=io(o[A])?{type:"Identifier",name:o[A]}:{type:"Literal",value:o[A]};a=a?{type:"MemberExpression",object:a,property:s,computed:!(!A||s.type!=="Literal"),optional:!1}:s}n=a}else n=io(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};else n={type:"Literal",value:t};if(n.type==="Literal"){const o=n.value;return Nn.call(e.components,o)?e.components[o]:o}if(e.evaluater)return e.evaluater.evaluateExpression(n);Bt(e)}function Bt(e,t){const r=new ve("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw r.file=e.filePath||void 0,r.url=So+"#cannot-handle-mdx-estrees-without-createevaluater",r}function Rs(e){let t=e.replace(Ls,qs);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function js(e,t){return t.toUpperCase()}function qs(e){return"-"+e.toLowerCase()}const Fn={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},Kt={};function To(e,t,r){if(function(n){return!(!n||typeof n!="object")}(e)){if("value"in e)return e.type!=="html"||r?e.value:"";if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return Qo(e.children,t,r)}return Array.isArray(e)?Qo(e,t,r):""}function Qo(e,t,r){const n=[];let o=-1;for(;++o<e.length;)n[o]=To(e[o],t,r);return n.join("")}const Mo=document.createElement("i");function zn(e){const t="&"+e+";";Mo.innerHTML=t;const r=Mo.textContent;return(r.charCodeAt(r.length-1)!==59||e==="semi")&&r!==t&&r}function Re(e,t,r,n){const o=e.length;let a,A=0;if(t=t<0?-t>o?0:o+t:t>o?o:t,r=r>0?r:0,n.length<1e4)a=Array.from(n),a.unshift(t,r),e.splice(...a);else for(r&&e.splice(t,r);A<n.length;)a=n.slice(A,A+1e4),a.unshift(t,0),e.splice(...a),A+=1e4,t+=1e4}function Oe(e,t){return e.length>0?(Re(e,e.length,0,t),e):t}const Oo={}.hasOwnProperty;function Gs(e){const t={};let r=-1;for(;++r<e.length;)Ys(t,e[r]);return t}function Ys(e,t){let r;for(r in t){const n=(Oo.call(e,r)?e[r]:void 0)||(e[r]={}),o=t[r];let a;if(o)for(a in o){Oo.call(n,a)||(n[a]=[]);const A=o[a];Ws(n[a],Array.isArray(A)?A:A?[A]:[])}}}function Ws(e,t){let r=-1;const n=[];for(;++r<t.length;)(t[r].add==="after"?e:n).push(t[r]);Re(e,0,0,n)}function _o(e,t){const r=Number.parseInt(e,t);return r<9||r===11||r>13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||!(65535&~r)||(65535&r)==65534||r>1114111?"�":String.fromCodePoint(r)}function yt(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const je=tt(/[A-Za-z]/),Ie=tt(/[\dA-Za-z]/),Vs=tt(/[#-'*+\--9=?A-Z^-~]/);function Rn(e){return e!==null&&(e<32||e===127)}const jn=tt(/\d/),Xs=tt(/[\dA-Fa-f]/),Ks=tt(/[!-/:-@[-`{-~]/);function V(e){return e!==null&&e<-2}function Ee(e){return e!==null&&(e<0||e===32)}function oe(e){return e===-2||e===-1||e===32}const Js=tt(new RegExp("\\p{P}|\\p{S}","u")),Zs=tt(/\s/);function tt(e){return function(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function bt(e){const t=[];let r=-1,n=0,o=0;for(;++r<e.length;){const a=e.charCodeAt(r);let A="";if(a===37&&Ie(e.charCodeAt(r+1))&&Ie(e.charCodeAt(r+2)))o=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(A=String.fromCharCode(a));else if(a>55295&&a<57344){const s=e.charCodeAt(r+1);a<56320&&s>56319&&s<57344?(A=String.fromCharCode(a,s),o=1):A="�"}else A=String.fromCharCode(a);A&&(t.push(e.slice(n,r),encodeURIComponent(A)),n=r+o+1,A=""),o&&(r+=o,o=0)}return t.join("")+e.slice(n)}function Ae(e,t,r,n){const o=n?n-1:Number.POSITIVE_INFINITY;let a=0;return function(s){return oe(s)?(e.enter(r),A(s)):t(s)};function A(s){return oe(s)&&a++<o?(e.consume(s),A):(e.exit(r),t(s))}}const $s={tokenize:function(e){const t=e.attempt(this.parser.constructs.contentInitial,function(a){return a===null?void e.consume(a):(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),Ae(e,t,"linePrefix"))},function(a){return e.enter("paragraph"),n(a)});let r;return t;function n(a){const A=e.enter("chunkText",{contentType:"text",previous:r});return r&&(r.next=A),r=A,o(a)}function o(a){return a===null?(e.exit("chunkText"),e.exit("paragraph"),void e.consume(a)):V(a)?(e.consume(a),e.exit("chunkText"),n):(e.consume(a),o)}}},eA={tokenize:function(e){const t=this,r=[];let n,o,a,A=0;return s;function s(m){if(A<r.length){const E=r[A];return t.containerState=E[1],e.attempt(E[0].continuation,i,c)(m)}return c(m)}function i(m){if(A++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,n&&x();const E=t.events.length;let P,C=E;for(;C--;)if(t.events[C][0]==="exit"&&t.events[C][1].type==="chunkFlow"){P=t.events[C][1].end;break}v(A);let S=E;for(;S<t.events.length;)t.events[S][1].end={...P},S++;return Re(t.events,C+1,0,t.events.slice(E)),t.events.length=S,c(m)}return s(m)}function c(m){if(A===r.length){if(!n)return u(m);if(n.currentConstruct&&n.currentConstruct.concrete)return f(m);t.interrupt=!(!n.currentConstruct||n._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Lo,l,d)(m)}function l(m){return n&&x(),v(A),u(m)}function d(m){return t.parser.lazy[t.now().line]=A!==r.length,a=t.now().offset,f(m)}function u(m){return t.containerState={},e.attempt(Lo,p,f)(m)}function p(m){return A++,r.push([t.currentConstruct,t.containerState]),u(m)}function f(m){return m===null?(n&&x(),v(0),void e.consume(m)):(n=n||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:n,contentType:"flow",previous:o}),y(m))}function y(m){return m===null?(g(e.exit("chunkFlow"),!0),v(0),void e.consume(m)):V(m)?(e.consume(m),g(e.exit("chunkFlow")),A=0,t.interrupt=void 0,s):(e.consume(m),y)}function g(m,E){const P=t.sliceStream(m);if(E&&P.push(null),m.previous=o,o&&(o.next=m),o=m,n.defineSkip(m.start),n.write(P),t.parser.lazy[m.start.line]){let C=n.events.length;for(;C--;)if(n.events[C][1].start.offset<a&&(!n.events[C][1].end||n.events[C][1].end.offset>a))return;const S=t.events.length;let I,Q,B=S;for(;B--;)if(t.events[B][0]==="exit"&&t.events[B][1].type==="chunkFlow"){if(I){Q=t.events[B][1].end;break}I=!0}for(v(A),C=S;C<t.events.length;)t.events[C][1].end={...Q},C++;Re(t.events,B+1,0,t.events.slice(S)),t.events.length=C}}function v(m){let E=r.length;for(;E-- >m;){const P=r[E];t.containerState=P[1],P[0].exit.call(t,e)}r.length=m}function x(){n.write([null]),o=void 0,n=void 0,t.containerState._closeFlow=void 0}}},Lo={tokenize:function(e,t,r){return Ae(e,e.attempt(this.parser.constructs.document,t,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}};function No(e){return e===null||Ee(e)||Zs(e)?1:Js(e)?2:void 0}function qn(e,t,r){const n=[];let o=-1;for(;++o<e.length;){const a=e[o].resolveAll;a&&!n.includes(a)&&(t=a(t,r),n.push(a))}return t}const Gn={name:"attention",resolveAll:function(e,t){let r,n,o,a,A,s,i,c,l=-1;for(;++l<e.length;)if(e[l][0]==="enter"&&e[l][1].type==="attentionSequence"&&e[l][1]._close){for(r=l;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[l][1]).charCodeAt(0)){if((e[r][1]._close||e[l][1]._open)&&(e[l][1].end.offset-e[l][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[l][1].end.offset-e[l][1].start.offset)%3))continue;s=e[r][1].end.offset-e[r][1].start.offset>1&&e[l][1].end.offset-e[l][1].start.offset>1?2:1;const d={...e[r][1].end},u={...e[l][1].start};Ho(d,-s),Ho(u,s),a={type:s>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},A={type:s>1?"strongSequence":"emphasisSequence",start:{...e[l][1].start},end:u},o={type:s>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[l][1].start}},n={type:s>1?"strong":"emphasis",start:{...a.start},end:{...A.end}},e[r][1].end={...a.start},e[l][1].start={...A.end},i=[],e[r][1].end.offset-e[r][1].start.offset&&(i=Oe(i,[["enter",e[r][1],t],["exit",e[r][1],t]])),i=Oe(i,[["enter",n,t],["enter",a,t],["exit",a,t],["enter",o,t]]),i=Oe(i,qn(t.parser.constructs.insideSpan.null,e.slice(r+1,l),t)),i=Oe(i,[["exit",o,t],["enter",A,t],["exit",A,t],["exit",n,t]]),e[l][1].end.offset-e[l][1].start.offset?(c=2,i=Oe(i,[["enter",e[l][1],t],["exit",e[l][1],t]])):c=0,Re(e,r-1,l-r+3,i),l=r+i.length-c-2;break}}for(l=-1;++l<e.length;)e[l][1].type==="attentionSequence"&&(e[l][1].type="data");return e},tokenize:function(e,t){const r=this.parser.constructs.attentionMarkers.null,n=this.previous,o=No(n);let a;return function(s){return a=s,e.enter("attentionSequence"),A(s)};function A(s){if(s===a)return e.consume(s),A;const i=e.exit("attentionSequence"),c=No(s),l=!c||c===2&&o||r.includes(s),d=!o||o===2&&c||r.includes(n);return i._open=!!(a===42?l:l&&(o||!d)),i._close=!!(a===42?d:d&&(c||!l)),t(s)}}};function Ho(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const tA={name:"autolink",tokenize:function(e,t,r){let n=0;return function(u){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),o};function o(u){return je(u)?(e.consume(u),a):u===64?r(u):i(u)}function a(u){return u===43||u===45||u===46||Ie(u)?(n=1,A(u)):i(u)}function A(u){return u===58?(e.consume(u),n=0,s):(u===43||u===45||u===46||Ie(u))&&n++<32?(e.consume(u),A):(n=0,i(u))}function s(u){return u===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.exit("autolink"),t):u===null||u===32||u===60||Rn(u)?r(u):(e.consume(u),s)}function i(u){return u===64?(e.consume(u),c):Vs(u)?(e.consume(u),i):r(u)}function c(u){return Ie(u)?l(u):r(u)}function l(u){return u===46?(e.consume(u),n=0,c):u===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.exit("autolink"),t):d(u)}function d(u){if((u===45||Ie(u))&&n++<63){const p=u===45?d:l;return e.consume(u),p}return r(u)}}},Jt={partial:!0,tokenize:function(e,t,r){return function(o){return oe(o)?Ae(e,n,"linePrefix")(o):n(o)};function n(o){return o===null||V(o)?t(o):r(o)}}},Uo={continuation:{tokenize:function(e,t,r){const n=this;return function(a){return oe(a)?Ae(e,o,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a):o(a)};function o(a){return e.attempt(Uo,t,r)(a)}}},exit:function(e){e.exit("blockQuote")},name:"blockQuote",tokenize:function(e,t,r){const n=this;return function(a){if(a===62){const A=n.containerState;return A.open||(e.enter("blockQuote",{_container:!0}),A.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(a),e.exit("blockQuoteMarker"),o}return r(a)};function o(a){return oe(a)?(e.enter("blockQuotePrefixWhitespace"),e.consume(a),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(a))}}},Fo={name:"characterEscape",tokenize:function(e,t,r){return function(o){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(o),e.exit("escapeMarker"),n};function n(o){return Ks(o)?(e.enter("characterEscapeValue"),e.consume(o),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):r(o)}}},zo={name:"characterReference",tokenize:function(e,t,r){const n=this;let o,a,A=0;return function(l){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(l),e.exit("characterReferenceMarker"),s};function s(l){return l===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(l),e.exit("characterReferenceMarkerNumeric"),i):(e.enter("characterReferenceValue"),o=31,a=Ie,c(l))}function i(l){return l===88||l===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(l),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,a=Xs,c):(e.enter("characterReferenceValue"),o=7,a=jn,c(l))}function c(l){if(l===59&&A){const d=e.exit("characterReferenceValue");return a!==Ie||zn(n.sliceSerialize(d))?(e.enter("characterReferenceMarker"),e.consume(l),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):r(l)}return a(l)&&A++<o?(e.consume(l),c):r(l)}}},Ro={partial:!0,tokenize:function(e,t,r){const n=this;return function(a){return a===null?r(a):(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),o)};function o(a){return n.parser.lazy[n.now().line]?r(a):t(a)}}},jo={concrete:!0,name:"codeFenced",tokenize:function(e,t,r){const n=this,o={partial:!0,tokenize:function(m,E,P){let C=0;return S;function S(D){return m.enter("lineEnding"),m.consume(D),m.exit("lineEnding"),I}function I(D){return m.enter("codeFencedFence"),oe(D)?Ae(m,Q,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(D):Q(D)}function Q(D){return D===a?(m.enter("codeFencedFenceSequence"),B(D)):P(D)}function B(D){return D===a?(C++,m.consume(D),B):C>=s?(m.exit("codeFencedFenceSequence"),oe(D)?Ae(m,O,"whitespace")(D):O(D)):P(D)}function O(D){return D===null||V(D)?(m.exit("codeFencedFence"),E(D)):P(D)}}};let a,A=0,s=0;return function(m){return function(E){const P=n.events[n.events.length-1];return A=P&&P[1].type==="linePrefix"?P[2].sliceSerialize(P[1],!0).length:0,a=E,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),i(E)}(m)};function i(m){return m===a?(s++,e.consume(m),i):s<3?r(m):(e.exit("codeFencedFenceSequence"),oe(m)?Ae(e,c,"whitespace")(m):c(m))}function c(m){return m===null||V(m)?(e.exit("codeFencedFence"),n.interrupt?t(m):e.check(Ro,p,x)(m)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),l(m))}function l(m){return m===null||V(m)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),c(m)):oe(m)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Ae(e,d,"whitespace")(m)):m===96&&m===a?r(m):(e.consume(m),l)}function d(m){return m===null||V(m)?c(m):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),u(m))}function u(m){return m===null||V(m)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),c(m)):m===96&&m===a?r(m):(e.consume(m),u)}function p(m){return e.attempt(o,x,f)(m)}function f(m){return e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),y}function y(m){return A>0&&oe(m)?Ae(e,g,"linePrefix",A+1)(m):g(m)}function g(m){return m===null||V(m)?e.check(Ro,p,x)(m):(e.enter("codeFlowValue"),v(m))}function v(m){return m===null||V(m)?(e.exit("codeFlowValue"),g(m)):(e.consume(m),v)}function x(m){return e.exit("codeFenced"),t(m)}}},Yn={name:"codeIndented",tokenize:function(e,t,r){const n=this;return function(i){return e.enter("codeIndented"),Ae(e,o,"linePrefix",5)(i)};function o(i){const c=n.events[n.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?a(i):r(i)}function a(i){return i===null?s(i):V(i)?e.attempt(nA,a,s)(i):(e.enter("codeFlowValue"),A(i))}function A(i){return i===null||V(i)?(e.exit("codeFlowValue"),a(i)):(e.consume(i),A)}function s(i){return e.exit("codeIndented"),t(i)}}},nA={partial:!0,tokenize:function(e,t,r){const n=this;return o;function o(A){return n.parser.lazy[n.now().line]?r(A):V(A)?(e.enter("lineEnding"),e.consume(A),e.exit("lineEnding"),o):Ae(e,a,"linePrefix",5)(A)}function a(A){const s=n.events[n.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?t(A):V(A)?o(A):r(A)}}},rA={name:"codeText",previous:function(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"},resolve:function(e){let t,r,n=e.length-4,o=3;if(!(e[o][1].type!=="lineEnding"&&e[o][1].type!=="space"||e[n][1].type!=="lineEnding"&&e[n][1].type!=="space")){for(t=o;++t<n;)if(e[t][1].type==="codeTextData"){e[o][1].type="codeTextPadding",e[n][1].type="codeTextPadding",o+=2,n-=2;break}}for(t=o-1,n++;++t<=n;)r===void 0?t!==n&&e[t][1].type!=="lineEnding"&&(r=t):(t===n||e[t][1].type==="lineEnding")&&(e[r][1].type="codeTextData",t!==r+2&&(e[r][1].end=e[t-1][1].end,e.splice(r+2,t-r-2),n-=t-r-2,t=r+2),r=void 0);return e},tokenize:function(e,t,r){let n,o,a=0;return function(l){return e.enter("codeText"),e.enter("codeTextSequence"),A(l)};function A(l){return l===96?(e.consume(l),a++,A):(e.exit("codeTextSequence"),s(l))}function s(l){return l===null?r(l):l===32?(e.enter("space"),e.consume(l),e.exit("space"),s):l===96?(o=e.enter("codeTextSequence"),n=0,c(l)):V(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),s):(e.enter("codeTextData"),i(l))}function i(l){return l===null||l===32||l===96||V(l)?(e.exit("codeTextData"),s(l)):(e.consume(l),i)}function c(l){return l===96?(e.consume(l),n++,c):n===a?(e.exit("codeTextSequence"),e.exit("codeText"),t(l)):(o.type="codeTextData",i(l))}}};class oA{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,r){const n=r??Number.POSITIVE_INFINITY;return n<this.left.length?this.left.slice(t,n):t>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(t,r,n){const o=r||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-o,Number.POSITIVE_INFINITY);return n&&It(this.left,n),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),It(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),It(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const r=this.left.splice(t,Number.POSITIVE_INFINITY);It(this.right,r.reverse())}else{const r=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);It(this.left,r.reverse())}}}function It(e,t){let r=0;if(t.length<1e4)e.push(...t);else for(;r<t.length;)e.push(...t.slice(r,r+1e4)),r+=1e4}function qo(e){const t={};let r,n,o,a,A,s,i,c=-1;const l=new oA(e);for(;++c<l.length;){for(;c in t;)c=t[c];if(r=l.get(c),c&&r[1].type==="chunkFlow"&&l.get(c-1)[1].type==="listItemPrefix"&&(s=r[1]._tokenizer.events,o=0,o<s.length&&s[o][1].type==="lineEndingBlank"&&(o+=2),o<s.length&&s[o][1].type==="content"))for(;++o<s.length&&s[o][1].type!=="content";)s[o][1].type==="chunkText"&&(s[o][1]._isInFirstContentOfListItem=!0,o++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,aA(l,c)),c=t[c],i=!0);else if(r[1]._container){for(o=c,n=void 0;o--;)if(a=l.get(o),a[1].type==="lineEnding"||a[1].type==="lineEndingBlank")a[0]==="enter"&&(n&&(l.get(n)[1].type="lineEndingBlank"),a[1].type="lineEnding",n=o);else if(a[1].type!=="linePrefix")break;n&&(r[1].end={...l.get(n)[1].start},A=l.slice(n,c),A.unshift(r),l.splice(n,c-n+1,A))}}return Re(e,0,Number.POSITIVE_INFINITY,l.slice(0)),!i}function aA(e,t){const r=e.get(t)[1],n=e.get(t)[2];let o=t-1;const a=[],A=r._tokenizer||n.parser[r.contentType](r.start),s=A.events,i=[],c={};let l,d,u=-1,p=r,f=0,y=0;const g=[y];for(;p;){for(;e.get(++o)[1]!==p;);a.push(o),p._tokenizer||(l=n.sliceStream(p),p.next||l.push(null),d&&A.defineSkip(p.start),p._isInFirstContentOfListItem&&(A._gfmTasklistFirstContentOfListItem=!0),A.write(l),p._isInFirstContentOfListItem&&(A._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=r;++u<s.length;)s[u][0]==="exit"&&s[u-1][0]==="enter"&&s[u][1].type===s[u-1][1].type&&s[u][1].start.line!==s[u][1].end.line&&(y=u+1,g.push(y),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(A.events=[],p?(p._tokenizer=void 0,p.previous=void 0):g.pop(),u=g.length;u--;){const v=s.slice(g[u],g[u+1]),x=a.pop();i.push([x,x+v.length-1]),e.splice(x,2,v)}for(i.reverse(),u=-1;++u<i.length;)c[f+i[u][0]]=f+i[u][1],f+=i[u][1]-i[u][0]-1;return c}const iA={resolve:function(e){return qo(e),e},tokenize:function(e,t){let r;return function(A){return e.enter("content"),r=e.enter("chunkContent",{contentType:"content"}),n(A)};function n(A){return A===null?o(A):V(A)?e.check(sA,a,o)(A):(e.consume(A),n)}function o(A){return e.exit("chunkContent"),e.exit("content"),t(A)}function a(A){return e.consume(A),e.exit("chunkContent"),r.next=e.enter("chunkContent",{contentType:"content",previous:r}),r=r.next,n}}},sA={partial:!0,tokenize:function(e,t,r){const n=this;return function(a){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),Ae(e,o,"linePrefix")};function o(a){if(a===null||V(a))return r(a);const A=n.events[n.events.length-1];return!n.parser.constructs.disable.null.includes("codeIndented")&&A&&A[1].type==="linePrefix"&&A[2].sliceSerialize(A[1],!0).length>=4?t(a):e.interrupt(n.parser.constructs.flow,r,t)(a)}}};function Go(e,t,r,n,o,a,A,s,i){const c=i||Number.POSITIVE_INFINITY;let l=0;return function(g){return g===60?(e.enter(n),e.enter(o),e.enter(a),e.consume(g),e.exit(a),d):g===null||g===32||g===41||Rn(g)?r(g):(e.enter(n),e.enter(A),e.enter(s),e.enter("chunkString",{contentType:"string"}),f(g))};function d(g){return g===62?(e.enter(a),e.consume(g),e.exit(a),e.exit(o),e.exit(n),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),u(g))}function u(g){return g===62?(e.exit("chunkString"),e.exit(s),d(g)):g===null||g===60||V(g)?r(g):(e.consume(g),g===92?p:u)}function p(g){return g===60||g===62||g===92?(e.consume(g),u):u(g)}function f(g){return l||g!==null&&g!==41&&!Ee(g)?l<c&&g===40?(e.consume(g),l++,f):g===41?(e.consume(g),l--,f):g===null||g===32||g===40||Rn(g)?r(g):(e.consume(g),g===92?y:f):(e.exit("chunkString"),e.exit(s),e.exit(A),e.exit(n),t(g))}function y(g){return g===40||g===41||g===92?(e.consume(g),f):f(g)}}function Yo(e,t,r,n,o,a){const A=this;let s,i=0;return function(u){return e.enter(n),e.enter(o),e.consume(u),e.exit(o),e.enter(a),c};function c(u){return i>999||u===null||u===91||u===93&&!s||u===94&&!i&&"_hiddenFootnoteSupport"in A.parser.constructs?r(u):u===93?(e.exit(a),e.enter(o),e.consume(u),e.exit(o),e.exit(n),t):V(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),l(u))}function l(u){return u===null||u===91||u===93||V(u)||i++>999?(e.exit("chunkString"),c(u)):(e.consume(u),s||(s=!oe(u)),u===92?d:l)}function d(u){return u===91||u===92||u===93?(e.consume(u),i++,l):l(u)}}function Wo(e,t,r,n,o,a){let A;return function(d){return d===34||d===39||d===40?(e.enter(n),e.enter(o),e.consume(d),e.exit(o),A=d===40?41:d,s):r(d)};function s(d){return d===A?(e.enter(o),e.consume(d),e.exit(o),e.exit(n),t):(e.enter(a),i(d))}function i(d){return d===A?(e.exit(a),s(A)):d===null?r(d):V(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),Ae(e,i,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(d))}function c(d){return d===A||d===null||V(d)?(e.exit("chunkString"),i(d)):(e.consume(d),d===92?l:c)}function l(d){return d===A||d===92?(e.consume(d),c):c(d)}}function Tt(e,t){let r;return function n(o){return V(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),r=!0,n):oe(o)?Ae(e,n,r?"linePrefix":"lineSuffix")(o):t(o)}}const AA={name:"definition",tokenize:function(e,t,r){const n=this;let o;return function(d){return e.enter("definition"),function(u){return Yo.call(n,e,a,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(u)}(d)};function a(d){return o=yt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)),d===58?(e.enter("definitionMarker"),e.consume(d),e.exit("definitionMarker"),A):r(d)}function A(d){return Ee(d)?Tt(e,s)(d):s(d)}function s(d){return Go(e,i,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(d)}function i(d){return e.attempt(lA,c,c)(d)}function c(d){return oe(d)?Ae(e,l,"whitespace")(d):l(d)}function l(d){return d===null||V(d)?(e.exit("definition"),n.parser.defined.push(o),t(d)):r(d)}}},lA={partial:!0,tokenize:function(e,t,r){return function(A){return Ee(A)?Tt(e,n)(A):r(A)};function n(A){return Wo(e,o,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(A)}function o(A){return oe(A)?Ae(e,a,"whitespace")(A):a(A)}function a(A){return A===null||V(A)?t(A):r(A)}}},cA={name:"hardBreakEscape",tokenize:function(e,t,r){return function(o){return e.enter("hardBreakEscape"),e.consume(o),n};function n(o){return V(o)?(e.exit("hardBreakEscape"),t(o)):r(o)}}},uA={name:"headingAtx",resolve:function(e,t){let r,n,o=e.length-2,a=3;return e[a][1].type==="whitespace"&&(a+=2),o-2>a&&e[o][1].type==="whitespace"&&(o-=2),e[o][1].type==="atxHeadingSequence"&&(a===o-1||o-4>a&&e[o-2][1].type==="whitespace")&&(o-=a+1===o?2:4),o>a&&(r={type:"atxHeadingText",start:e[a][1].start,end:e[o][1].end},n={type:"chunkText",start:e[a][1].start,end:e[o][1].end,contentType:"text"},Re(e,a,o-a+1,[["enter",r,t],["enter",n,t],["exit",n,t],["exit",r,t]])),e},tokenize:function(e,t,r){let n=0;return function(i){return e.enter("atxHeading"),function(c){return e.enter("atxHeadingSequence"),o(c)}(i)};function o(i){return i===35&&n++<6?(e.consume(i),o):i===null||Ee(i)?(e.exit("atxHeadingSequence"),a(i)):r(i)}function a(i){return i===35?(e.enter("atxHeadingSequence"),A(i)):i===null||V(i)?(e.exit("atxHeading"),t(i)):oe(i)?Ae(e,a,"whitespace")(i):(e.enter("atxHeadingText"),s(i))}function A(i){return i===35?(e.consume(i),A):(e.exit("atxHeadingSequence"),a(i))}function s(i){return i===null||i===35||Ee(i)?(e.exit("atxHeadingText"),a(i)):(e.consume(i),s)}}},dA=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Vo=["pre","script","style","textarea"],pA={concrete:!0,name:"htmlFlow",resolveTo:function(e){let t=e.length;for(;t--&&(e[t][0]!=="enter"||e[t][1].type!=="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e},tokenize:function(e,t,r){const n=this;let o,a,A,s,i;return function(w){return function(K){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(K),c}(w)};function c(w){return w===33?(e.consume(w),l):w===47?(e.consume(w),a=!0,p):w===63?(e.consume(w),o=3,n.interrupt?t:H):je(w)?(e.consume(w),A=String.fromCharCode(w),f):r(w)}function l(w){return w===45?(e.consume(w),o=2,d):w===91?(e.consume(w),o=5,s=0,u):je(w)?(e.consume(w),o=4,n.interrupt?t:H):r(w)}function d(w){return w===45?(e.consume(w),n.interrupt?t:H):r(w)}function u(w){return w==="CDATA[".charCodeAt(s++)?(e.consume(w),s===6?n.interrupt?t:B:u):r(w)}function p(w){return je(w)?(e.consume(w),A=String.fromCharCode(w),f):r(w)}function f(w){if(w===null||w===47||w===62||Ee(w)){const K=w===47,R=A.toLowerCase();return K||a||!Vo.includes(R)?dA.includes(A.toLowerCase())?(o=6,K?(e.consume(w),y):n.interrupt?t(w):B(w)):(o=7,n.interrupt&&!n.parser.lazy[n.now().line]?r(w):a?g(w):v(w)):(o=1,n.interrupt?t(w):B(w))}return w===45||Ie(w)?(e.consume(w),A+=String.fromCharCode(w),f):r(w)}function y(w){return w===62?(e.consume(w),n.interrupt?t:B):r(w)}function g(w){return oe(w)?(e.consume(w),g):I(w)}function v(w){return w===47?(e.consume(w),I):w===58||w===95||je(w)?(e.consume(w),x):oe(w)?(e.consume(w),v):I(w)}function x(w){return w===45||w===46||w===58||w===95||Ie(w)?(e.consume(w),x):m(w)}function m(w){return w===61?(e.consume(w),E):oe(w)?(e.consume(w),m):v(w)}function E(w){return w===null||w===60||w===61||w===62||w===96?r(w):w===34||w===39?(e.consume(w),i=w,P):oe(w)?(e.consume(w),E):C(w)}function P(w){return w===i?(e.consume(w),i=null,S):w===null||V(w)?r(w):(e.consume(w),P)}function C(w){return w===null||w===34||w===39||w===47||w===60||w===61||w===62||w===96||Ee(w)?m(w):(e.consume(w),C)}function S(w){return w===47||w===62||oe(w)?v(w):r(w)}function I(w){return w===62?(e.consume(w),Q):r(w)}function Q(w){return w===null||V(w)?B(w):oe(w)?(e.consume(w),Q):r(w)}function B(w){return w===45&&o===2?(e.consume(w),U):w===60&&o===1?(e.consume(w),L):w===62&&o===4?(e.consume(w),b):w===63&&o===3?(e.consume(w),H):w===93&&o===5?(e.consume(w),_):!V(w)||o!==6&&o!==7?w===null||V(w)?(e.exit("htmlFlowData"),O(w)):(e.consume(w),B):(e.exit("htmlFlowData"),e.check(fA,X,O)(w))}function O(w){return e.check(hA,D,X)(w)}function D(w){return e.enter("lineEnding"),e.consume(w),e.exit("lineEnding"),M}function M(w){return w===null||V(w)?O(w):(e.enter("htmlFlowData"),B(w))}function U(w){return w===45?(e.consume(w),H):B(w)}function L(w){return w===47?(e.consume(w),A="",F):B(w)}function F(w){if(w===62){const K=A.toLowerCase();return Vo.includes(K)?(e.consume(w),b):B(w)}return je(w)&&A.length<8?(e.consume(w),A+=String.fromCharCode(w),F):B(w)}function _(w){return w===93?(e.consume(w),H):B(w)}function H(w){return w===62?(e.consume(w),b):w===45&&o===2?(e.consume(w),H):B(w)}function b(w){return w===null||V(w)?(e.exit("htmlFlowData"),X(w)):(e.consume(w),b)}function X(w){return e.exit("htmlFlow"),t(w)}}},fA={partial:!0,tokenize:function(e,t,r){return function(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),e.attempt(Jt,t,r)}}},hA={partial:!0,tokenize:function(e,t,r){const n=this;return function(a){return V(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),o):r(a)};function o(a){return n.parser.lazy[n.now().line]?r(a):t(a)}}},gA={name:"htmlText",tokenize:function(e,t,r){const n=this;let o,a,A;return function(b){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(b),s};function s(b){return b===33?(e.consume(b),i):b===47?(e.consume(b),E):b===63?(e.consume(b),x):je(b)?(e.consume(b),S):r(b)}function i(b){return b===45?(e.consume(b),c):b===91?(e.consume(b),a=0,p):je(b)?(e.consume(b),v):r(b)}function c(b){return b===45?(e.consume(b),u):r(b)}function l(b){return b===null?r(b):b===45?(e.consume(b),d):V(b)?(A=l,F(b)):(e.consume(b),l)}function d(b){return b===45?(e.consume(b),u):l(b)}function u(b){return b===62?L(b):b===45?d(b):l(b)}function p(b){return b==="CDATA[".charCodeAt(a++)?(e.consume(b),a===6?f:p):r(b)}function f(b){return b===null?r(b):b===93?(e.consume(b),y):V(b)?(A=f,F(b)):(e.consume(b),f)}function y(b){return b===93?(e.consume(b),g):f(b)}function g(b){return b===62?L(b):b===93?(e.consume(b),g):f(b)}function v(b){return b===null||b===62?L(b):V(b)?(A=v,F(b)):(e.consume(b),v)}function x(b){return b===null?r(b):b===63?(e.consume(b),m):V(b)?(A=x,F(b)):(e.consume(b),x)}function m(b){return b===62?L(b):x(b)}function E(b){return je(b)?(e.consume(b),P):r(b)}function P(b){return b===45||Ie(b)?(e.consume(b),P):C(b)}function C(b){return V(b)?(A=C,F(b)):oe(b)?(e.consume(b),C):L(b)}function S(b){return b===45||Ie(b)?(e.consume(b),S):b===47||b===62||Ee(b)?I(b):r(b)}function I(b){return b===47?(e.consume(b),L):b===58||b===95||je(b)?(e.consume(b),Q):V(b)?(A=I,F(b)):oe(b)?(e.consume(b),I):L(b)}function Q(b){return b===45||b===46||b===58||b===95||Ie(b)?(e.consume(b),Q):B(b)}function B(b){return b===61?(e.consume(b),O):V(b)?(A=B,F(b)):oe(b)?(e.consume(b),B):I(b)}function O(b){return b===null||b===60||b===61||b===62||b===96?r(b):b===34||b===39?(e.consume(b),o=b,D):V(b)?(A=O,F(b)):oe(b)?(e.consume(b),O):(e.consume(b),M)}function D(b){return b===o?(e.consume(b),o=void 0,U):b===null?r(b):V(b)?(A=D,F(b)):(e.consume(b),D)}function M(b){return b===null||b===34||b===39||b===60||b===61||b===96?r(b):b===47||b===62||Ee(b)?I(b):(e.consume(b),M)}function U(b){return b===47||b===62||Ee(b)?I(b):r(b)}function L(b){return b===62?(e.consume(b),e.exit("htmlTextData"),e.exit("htmlText"),t):r(b)}function F(b){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),_}function _(b){return oe(b)?Ae(e,H,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):H(b)}function H(b){return e.enter("htmlTextData"),A(b)}}},Wn={name:"labelEnd",resolveAll:function(e){let t=-1;const r=[];for(;++t<e.length;){const n=e[t][1];if(r.push(e[t]),n.type==="labelImage"||n.type==="labelLink"||n.type==="labelEnd"){const o=n.type==="labelImage"?4:2;n.type="data",t+=o}}return e.length!==r.length&&Re(e,0,e.length,r),e},resolveTo:function(e,t){let r,n,o,a,A=e.length,s=0;for(;A--;)if(r=e[A][1],n){if(r.type==="link"||r.type==="labelLink"&&r._inactive)break;e[A][0]==="enter"&&r.type==="labelLink"&&(r._inactive=!0)}else if(o){if(e[A][0]==="enter"&&(r.type==="labelImage"||r.type==="labelLink")&&!r._balanced&&(n=A,r.type!=="labelLink")){s=2;break}}else r.type==="labelEnd"&&(o=A);const i={type:e[n][1].type==="labelLink"?"link":"image",start:{...e[n][1].start},end:{...e[e.length-1][1].end}},c={type:"label",start:{...e[n][1].start},end:{...e[o][1].end}},l={type:"labelText",start:{...e[n+s+2][1].end},end:{...e[o-2][1].start}};return a=[["enter",i,t],["enter",c,t]],a=Oe(a,e.slice(n+1,n+s+3)),a=Oe(a,[["enter",l,t]]),a=Oe(a,qn(t.parser.constructs.insideSpan.null,e.slice(n+s+4,o-3),t)),a=Oe(a,[["exit",l,t],e[o-2],e[o-1],["exit",c,t]]),a=Oe(a,e.slice(o+1)),a=Oe(a,[["exit",i,t]]),Re(e,n,e.length,a),e},tokenize:function(e,t,r){const n=this;let o,a,A=n.events.length;for(;A--;)if((n.events[A][1].type==="labelImage"||n.events[A][1].type==="labelLink")&&!n.events[A][1]._balanced){o=n.events[A][1];break}return function(d){return o?o._inactive?l(d):(a=n.parser.defined.includes(yt(n.sliceSerialize({start:o.end,end:n.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(d),e.exit("labelMarker"),e.exit("labelEnd"),s):r(d)};function s(d){return d===40?e.attempt(mA,c,a?c:l)(d):d===91?e.attempt(yA,c,a?i:l)(d):a?c(d):l(d)}function i(d){return e.attempt(bA,c,l)(d)}function c(d){return t(d)}function l(d){return o._balanced=!0,r(d)}}},mA={tokenize:function(e,t,r){return function(l){return e.enter("resource"),e.enter("resourceMarker"),e.consume(l),e.exit("resourceMarker"),n};function n(l){return Ee(l)?Tt(e,o)(l):o(l)}function o(l){return l===41?c(l):Go(e,a,A,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(l)}function a(l){return Ee(l)?Tt(e,s)(l):c(l)}function A(l){return r(l)}function s(l){return l===34||l===39||l===40?Wo(e,i,r,"resourceTitle","resourceTitleMarker","resourceTitleString")(l):c(l)}function i(l){return Ee(l)?Tt(e,c)(l):c(l)}function c(l){return l===41?(e.enter("resourceMarker"),e.consume(l),e.exit("resourceMarker"),e.exit("resource"),t):r(l)}}},yA={tokenize:function(e,t,r){const n=this;return function(A){return Yo.call(n,e,o,a,"reference","referenceMarker","referenceString")(A)};function o(A){return n.parser.defined.includes(yt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)))?t(A):r(A)}function a(A){return r(A)}}},bA={tokenize:function(e,t,r){return function(o){return e.enter("reference"),e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),n};function n(o){return o===93?(e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),e.exit("reference"),t):r(o)}}},vA={name:"labelStartImage",resolveAll:Wn.resolveAll,tokenize:function(e,t,r){const n=this;return function(A){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(A),e.exit("labelImageMarker"),o};function o(A){return A===91?(e.enter("labelMarker"),e.consume(A),e.exit("labelMarker"),e.exit("labelImage"),a):r(A)}function a(A){return A===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(A):t(A)}}},wA={name:"labelStartLink",resolveAll:Wn.resolveAll,tokenize:function(e,t,r){const n=this;return function(a){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(a),e.exit("labelMarker"),e.exit("labelLink"),o};function o(a){return a===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(a):t(a)}}},Vn={name:"lineEnding",tokenize:function(e,t){return function(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),Ae(e,t,"linePrefix")}}},Zt={name:"thematicBreak",tokenize:function(e,t,r){let n,o=0;return function(s){return e.enter("thematicBreak"),function(i){return n=i,a(i)}(s)};function a(s){return s===n?(e.enter("thematicBreakSequence"),A(s)):o>=3&&(s===null||V(s))?(e.exit("thematicBreak"),t(s)):r(s)}function A(s){return s===n?(e.consume(s),o++,A):(e.exit("thematicBreakSequence"),oe(s)?Ae(e,a,"whitespace")(s):a(s))}}},ke={continuation:{tokenize:function(e,t,r){const n=this;return n.containerState._closeFlow=void 0,e.check(Jt,function(a){return n.containerState.furtherBlankLines=n.containerState.furtherBlankLines||n.containerState.initialBlankLine,Ae(e,t,"listItemIndent",n.containerState.size+1)(a)},function(a){return n.containerState.furtherBlankLines||!oe(a)?(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,o(a)):(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,e.attempt(EA,t,o)(a))});function o(a){return n.containerState._closeFlow=!0,n.interrupt=void 0,Ae(e,e.attempt(ke,t,r),"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}},exit:function(e){e.exit(this.containerState.type)},name:"list",tokenize:function(e,t,r){const n=this,o=n.events[n.events.length-1];let a=o&&o[1].type==="linePrefix"?o[2].sliceSerialize(o[1],!0).length:0,A=0;return function(u){const p=n.containerState.type||(u===42||u===43||u===45?"listUnordered":"listOrdered");if(p==="listUnordered"?!n.containerState.marker||u===n.containerState.marker:jn(u)){if(n.containerState.type||(n.containerState.type=p,e.enter(p,{_container:!0})),p==="listUnordered")return e.enter("listItemPrefix"),u===42||u===45?e.check(Zt,r,i)(u):i(u);if(!n.interrupt||u===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),s(u)}return r(u)};function s(u){return jn(u)&&++A<10?(e.consume(u),s):(!n.interrupt||A<2)&&(n.containerState.marker?u===n.containerState.marker:u===41||u===46)?(e.exit("listItemValue"),i(u)):r(u)}function i(u){return e.enter("listItemMarker"),e.consume(u),e.exit("listItemMarker"),n.containerState.marker=n.containerState.marker||u,e.check(Jt,n.interrupt?r:c,e.attempt(xA,d,l))}function c(u){return n.containerState.initialBlankLine=!0,a++,d(u)}function l(u){return oe(u)?(e.enter("listItemPrefixWhitespace"),e.consume(u),e.exit("listItemPrefixWhitespace"),d):r(u)}function d(u){return n.containerState.size=a+n.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(u)}}},xA={partial:!0,tokenize:function(e,t,r){const n=this;return Ae(e,function(o){const a=n.events[n.events.length-1];return!oe(o)&&a&&a[1].type==="listItemPrefixWhitespace"?t(o):r(o)},"listItemPrefixWhitespace",n.parser.constructs.disable.null.includes("codeIndented")?void 0:5)}},EA={partial:!0,tokenize:function(e,t,r){const n=this;return Ae(e,function(o){const a=n.events[n.events.length-1];return a&&a[1].type==="listItemIndent"&&a[2].sliceSerialize(a[1],!0).length===n.containerState.size?t(o):r(o)},"listItemIndent",n.containerState.size+1)}},Xo={name:"setextUnderline",resolveTo:function(e,t){let r,n,o,a=e.length;for(;a--;)if(e[a][0]==="enter"){if(e[a][1].type==="content"){r=a;break}e[a][1].type==="paragraph"&&(n=a)}else e[a][1].type==="content"&&e.splice(a,1),!o&&e[a][1].type==="definition"&&(o=a);const A={type:"setextHeading",start:{...e[n][1].start},end:{...e[e.length-1][1].end}};return e[n][1].type="setextHeadingText",o?(e.splice(n,0,["enter",A,t]),e.splice(o+1,0,["exit",e[r][1],t]),e[r][1].end={...e[o][1].end}):e[r][1]=A,e.push(["exit",A,t]),e},tokenize:function(e,t,r){const n=this;let o;return function(s){let i,c=n.events.length;for(;c--;)if(n.events[c][1].type!=="lineEnding"&&n.events[c][1].type!=="linePrefix"&&n.events[c][1].type!=="content"){i=n.events[c][1].type==="paragraph";break}return n.parser.lazy[n.now().line]||!n.interrupt&&!i?r(s):(e.enter("setextHeadingLine"),o=s,function(l){return e.enter("setextHeadingLineSequence"),a(l)}(s))};function a(s){return s===o?(e.consume(s),a):(e.exit("setextHeadingLineSequence"),oe(s)?Ae(e,A,"lineSuffix")(s):A(s))}function A(s){return s===null||V(s)?(e.exit("setextHeadingLine"),t(s)):r(s)}}},kA={tokenize:function(e){const t=this,r=e.attempt(Jt,function(o){return o===null?void e.consume(o):(e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),t.currentConstruct=void 0,r)},e.attempt(this.parser.constructs.flowInitial,n,Ae(e,e.attempt(this.parser.constructs.flow,n,e.attempt(iA,n)),"linePrefix")));return r;function n(o){if(o!==null)return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),t.currentConstruct=void 0,r;e.consume(o)}}},CA={resolveAll:Jo()},PA=Ko("string"),SA=Ko("text");function Ko(e){return{resolveAll:Jo(e==="text"?DA:void 0),tokenize:function(t){const r=this,n=this.parser.constructs[e],o=t.attempt(n,a,A);return a;function a(c){return i(c)?o(c):A(c)}function A(c){if(c!==null)return t.enter("data"),t.consume(c),s;t.consume(c)}function s(c){return i(c)?(t.exit("data"),o(c)):(t.consume(c),s)}function i(c){if(c===null)return!0;const l=n[c];let d=-1;if(l)for(;++d<l.length;){const u=l[d];if(!u.previous||u.previous.call(r,r.previous))return!0}return!1}}}}function Jo(e){return function(t,r){let n,o=-1;for(;++o<=t.length;)n===void 0?t[o]&&t[o][1].type==="data"&&(n=o,o++):(!t[o]||t[o][1].type!=="data")&&(o!==n+2&&(t[n][1].end=t[o-1][1].end,t.splice(n+2,o-n-2),o=n+2),n=void 0);return e?e(t,r):t}}function DA(e,t){let r=0;for(;++r<=e.length;)if((r===e.length||e[r][1].type==="lineEnding")&&e[r-1][1].type==="data"){const n=e[r-1][1],o=t.sliceStream(n);let a,A=o.length,s=-1,i=0;for(;A--;){const c=o[A];if(typeof c=="string"){for(s=c.length;c.charCodeAt(s-1)===32;)i++,s--;if(s)break;s=-1}else if(c===-2)a=!0,i++;else if(c!==-1){A++;break}}if(i){const c={type:r===e.length||a||i<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:A?s:n.start._bufferIndex+s,_index:n.start._index+A,line:n.end.line,column:n.end.column-i,offset:n.end.offset-i},end:{...n.end}};n.end={...c.start},n.start.offset===n.end.offset?Object.assign(n,c):(e.splice(r,0,["enter",c,t],["exit",c,t]),r+=2)}r++}return e}const BA={42:ke,43:ke,45:ke,48:ke,49:ke,50:ke,51:ke,52:ke,53:ke,54:ke,55:ke,56:ke,57:ke,62:Uo},IA={91:AA},TA={[-2]:Yn,[-1]:Yn,32:Yn},QA={35:uA,42:Zt,45:[Xo,Zt],60:pA,61:Xo,95:Zt,96:jo,126:jo},MA={38:zo,92:Fo},OA={[-5]:Vn,[-4]:Vn,[-3]:Vn,33:vA,38:zo,42:Gn,60:[tA,gA],91:wA,92:[cA,Fo],93:Wn,95:Gn,96:rA},_A={null:[Gn,CA]},LA=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:IA,disable:{null:[]},document:BA,flow:QA,flowInitial:TA,insideSpan:_A,string:MA,text:OA},Symbol.toStringTag,{value:"Module"}));function NA(e,t,r){let n={_bufferIndex:-1,_index:0,line:r&&r.line||1,column:r&&r.column||1,offset:r&&r.offset||0};const o={},a=[];let A=[],s=[];const i={attempt:y(function(x,m){g(x,m.from)}),check:y(f),consume:function(x){V(x)?(n.line++,n.column=1,n.offset+=x===-3?2:1,v()):x!==-1&&(n.column++,n.offset++),n._bufferIndex<0?n._index++:(n._bufferIndex++,n._bufferIndex===A[n._index].length&&(n._bufferIndex=-1,n._index++)),c.previous=x},enter:function(x,m){const E=m||{};return E.type=x,E.start=u(),c.events.push(["enter",E,c]),s.push(E),E},exit:function(x){const m=s.pop();return m.end=u(),c.events.push(["exit",m,c]),m},interrupt:y(f,{interrupt:!0})},c={code:null,containerState:{},defineSkip:function(x){o[x.line]=x.column,v()},events:[],now:u,parser:e,previous:null,sliceSerialize:function(x,m){return function(E,P){let C=-1;const S=[];let I;for(;++C<E.length;){const Q=E[C];let B;if(typeof Q=="string")B=Q;else switch(Q){case-5:B="\r";break;case-4:B=`
|
|
22
|
-
`;break;case-3:
|
|
23
|
-
`;break;case-2:B=P?" ":" ";break;case-1:if(!P&&I)continue;B=" ";break;default:B=String.fromCharCode(Q)}I=Q===-2,S.push(B)}return S.join("")}(d(x),m)},sliceStream:d,write:function(x){return A=Oe(A,x),function(){let m;for(;n._index<A.length;){const E=A[n._index];if(typeof E=="string")for(m=n._index,n._bufferIndex<0&&(n._bufferIndex=0);n._index===m&&n._bufferIndex<E.length;)p(E.charCodeAt(n._bufferIndex));else p(E)}}(),A[A.length-1]!==null?[]:(g(t,0),c.events=qn(a,c.events,c),c.events)}};let l=t.tokenize.call(c,i);return t.resolveAll&&a.push(t),c;function d(x){return function(m,E){const P=E.start._index,C=E.start._bufferIndex,S=E.end._index,I=E.end._bufferIndex;let Q;if(P===S)Q=[m[P].slice(C,I)];else{if(Q=m.slice(P,S),C>-1){const B=Q[0];typeof B=="string"?Q[0]=B.slice(C):Q.shift()}I>0&&Q.push(m[S].slice(0,I))}return Q}(A,x)}function u(){const{_bufferIndex:x,_index:m,line:E,column:P,offset:C}=n;return{_bufferIndex:x,_index:m,line:E,column:P,offset:C}}function p(x){l=l(x)}function f(x,m){m.restore()}function y(x,m){return function(E,P,C){let S,I,Q,B;return Array.isArray(E)?O(E):"tokenize"in E?O([E]):function(L){return F;function F(_){const H=_!==null&&L[_],b=_!==null&&L.null;return O([...Array.isArray(H)?H:H?[H]:[],...Array.isArray(b)?b:b?[b]:[]])(_)}}(E);function O(L){return S=L,I=0,L.length===0?C:D(L[I])}function D(L){return function(F){return B=function(){const _=u(),H=c.previous,b=c.currentConstruct,X=c.events.length,w=Array.from(s);return{from:X,restore:K};function K(){n=_,c.previous=H,c.currentConstruct=b,c.events.length=X,s=w,v()}}(),Q=L,L.partial||(c.currentConstruct=L),L.name&&c.parser.constructs.disable.null.includes(L.name)?U():L.tokenize.call(m?Object.assign(Object.create(c),m):c,i,M,U)(F)}}function M(L){return x(Q,B),P}function U(L){return B.restore(),++I<S.length?D(S[I]):C}}}function g(x,m){x.resolveAll&&!a.includes(x)&&a.push(x),x.resolve&&Re(c.events,m,c.events.length-m,x.resolve(c.events.slice(m),c)),x.resolveTo&&(c.events=x.resolveTo(c.events,c))}function v(){n.line in o&&n.column<2&&(n.column=o[n.line],n.offset+=o[n.line]-1)}}const Zo=/[\0\t\n\r]/g,HA=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function UA(e,t,r){if(t)return t;if(r.charCodeAt(0)===35){const n=r.charCodeAt(1),o=n===120||n===88;return _o(r.slice(o?2:1),o?16:10)}return zn(r)||e}const $o={}.hasOwnProperty;function FA(e,t,r){return typeof t!="string"&&(r=t,t=void 0),function(n){const o={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:i(dn),autolinkProtocol:D,autolinkEmail:D,atxHeading:i(We),blockQuote:i(ut),characterEscape:D,characterReference:D,codeFenced:i(xe),codeFencedFenceInfo:c,codeFencedFenceMeta:c,codeIndented:i(xe,c),codeText:i(Ne,c),codeTextData:D,data:D,codeFlowValue:D,definition:i(xt),definitionDestinationString:c,definitionLabelString:c,definitionTitleString:c,emphasis:i(ot),hardBreakEscape:i(ge),hardBreakTrailing:i(ge),htmlFlow:i(_e,c),htmlFlowData:D,htmlText:i(_e,c),htmlTextData:D,image:i(Ve),label:c,link:i(dn),listItem:i(Nt),listItemValue:y,listOrdered:i(pn,f),listUnordered:i(pn),paragraph:i(yr),reference:Z,referenceString:c,resourceDestinationString:c,resourceTitleString:c,setextHeading:i(We),strong:i(dt),thematicBreak:i(fn)},exit:{atxHeading:d(),atxHeadingSequence:I,autolink:d(),autolinkEmail:Ye,autolinkProtocol:we,blockQuote:d(),characterEscapeValue:M,characterReferenceMarkerHexadecimal:ae,characterReferenceMarkerNumeric:ae,characterReferenceValue:re,characterReference:le,codeFenced:d(m),codeFencedFence:x,codeFencedFenceInfo:g,codeFencedFenceMeta:v,codeFlowValue:M,codeIndented:d(E),codeText:d(H),codeTextData:M,data:M,definition:d(),definitionDestinationString:S,definitionLabelString:P,definitionTitleString:C,emphasis:d(),hardBreakEscape:d(L),hardBreakTrailing:d(L),htmlFlow:d(F),htmlFlowData:M,htmlText:d(_),htmlTextData:M,image:d(X),label:K,labelText:w,lineEnding:U,link:d(b),listItem:d(),listOrdered:d(),listUnordered:d(),paragraph:d(),referenceString:J,resourceDestinationString:R,resourceTitleString:z,resource:q,setextHeading:d(O),setextHeadingLineSequence:B,setextHeadingText:Q,strong:d(),thematicBreak:d()}};ea(o,(n||{}).mdastExtensions||[]);const a={};return A;function A(T){let G={type:"root",children:[]};const Y={stack:[G],tokenStack:[],config:o,enter:l,exit:u,buffer:c,resume:p,data:a},te=[];let ne=-1;for(;++ne<T.length;)(T[ne][1].type==="listOrdered"||T[ne][1].type==="listUnordered")&&(T[ne][0]==="enter"?te.push(ne):ne=s(T,te.pop(),ne));for(ne=-1;++ne<T.length;){const de=o[T[ne][0]];$o.call(de,T[ne][1].type)&&de[T[ne][1].type].call(Object.assign({sliceSerialize:T[ne][2].sliceSerialize},Y),T[ne][1])}if(Y.tokenStack.length>0){const de=Y.tokenStack[Y.tokenStack.length-1];(de[1]||ta).call(Y,void 0,de[0])}for(G.position={start:nt(T.length>0?T[0][1].start:{line:1,column:1,offset:0}),end:nt(T.length>0?T[T.length-2][1].end:{line:1,column:1,offset:0})},ne=-1;++ne<o.transforms.length;)G=o.transforms[ne](G)||G;return G}function s(T,G,Y){let te,ne,de,Ce,He=G-1,Ut=-1,Ua=!1;for(;++He<=Y;){const Te=T[He];switch(Te[1].type){case"listUnordered":case"listOrdered":case"blockQuote":Te[0]==="enter"?Ut++:Ut--,Ce=void 0;break;case"lineEndingBlank":Te[0]==="enter"&&(te&&!Ce&&!Ut&&!de&&(de=He),Ce=void 0);break;case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Ce=void 0}if(!Ut&&Te[0]==="enter"&&Te[1].type==="listItemPrefix"||Ut===-1&&Te[0]==="exit"&&(Te[1].type==="listUnordered"||Te[1].type==="listOrdered")){if(te){let Et=He;for(ne=void 0;Et--;){const Je=T[Et];if(Je[1].type==="lineEnding"||Je[1].type==="lineEndingBlank"){if(Je[0]==="exit")continue;ne&&(T[ne][1].type="lineEndingBlank",Ua=!0),Je[1].type="lineEnding",ne=Et}else if(Je[1].type!=="linePrefix"&&Je[1].type!=="blockQuotePrefix"&&Je[1].type!=="blockQuotePrefixWhitespace"&&Je[1].type!=="blockQuoteMarker"&&Je[1].type!=="listItemIndent")break}de&&(!ne||de<ne)&&(te._spread=!0),te.end=Object.assign({},ne?T[ne][1].start:Te[1].end),T.splice(ne||He,0,["exit",te,Te[2]]),He++,Y++}if(Te[1].type==="listItemPrefix"){const Et={type:"listItem",_spread:!1,start:Object.assign({},Te[1].start),end:void 0};te=Et,T.splice(He,0,["enter",Et,Te[2]]),He++,Y++,de=void 0,Ce=!0}}}return T[G][1]._spread=Ua,Y}function i(T,G){return Y;function Y(te){l.call(this,T(te),te),G&&G.call(this,te)}}function c(){this.stack.push({type:"fragment",children:[]})}function l(T,G,Y){this.stack[this.stack.length-1].children.push(T),this.stack.push(T),this.tokenStack.push([G,Y||void 0]),T.position={start:nt(G.start),end:void 0}}function d(T){return G;function G(Y){T&&T.call(this,Y),u.call(this,Y)}}function u(T,G){const Y=this.stack.pop(),te=this.tokenStack.pop();if(!te)throw new Error("Cannot close `"+T.type+"` ("+Dt({start:T.start,end:T.end})+"): it’s not open");te[0].type!==T.type&&(G?G.call(this,T,te[0]):(te[1]||ta).call(this,T,te[0])),Y.position.end=nt(T.end)}function p(){return function(T){return To(T,typeof Kt.includeImageAlt!="boolean"||Kt.includeImageAlt,typeof Kt.includeHtml!="boolean"||Kt.includeHtml)}(this.stack.pop())}function f(){this.data.expectingFirstListItemValue=!0}function y(T){this.data.expectingFirstListItemValue&&(this.stack[this.stack.length-2].start=Number.parseInt(this.sliceSerialize(T),10),this.data.expectingFirstListItemValue=void 0)}function g(){const T=this.resume();this.stack[this.stack.length-1].lang=T}function v(){const T=this.resume();this.stack[this.stack.length-1].meta=T}function x(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function m(){const T=this.resume();this.stack[this.stack.length-1].value=T.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function E(){const T=this.resume();this.stack[this.stack.length-1].value=T.replace(/(\r?\n|\r)$/g,"")}function P(T){const G=this.resume(),Y=this.stack[this.stack.length-1];Y.label=G,Y.identifier=yt(this.sliceSerialize(T)).toLowerCase()}function C(){const T=this.resume();this.stack[this.stack.length-1].title=T}function S(){const T=this.resume();this.stack[this.stack.length-1].url=T}function I(T){const G=this.stack[this.stack.length-1];if(!G.depth){const Y=this.sliceSerialize(T).length;G.depth=Y}}function Q(){this.data.setextHeadingSlurpLineEnding=!0}function B(T){this.stack[this.stack.length-1].depth=this.sliceSerialize(T).codePointAt(0)===61?1:2}function O(){this.data.setextHeadingSlurpLineEnding=void 0}function D(T){const G=this.stack[this.stack.length-1].children;let Y=G[G.length-1];(!Y||Y.type!=="text")&&(Y=Ht(),Y.position={start:nt(T.start),end:void 0},G.push(Y)),this.stack.push(Y)}function M(T){const G=this.stack.pop();G.value+=this.sliceSerialize(T),G.position.end=nt(T.end)}function U(T){const G=this.stack[this.stack.length-1];if(this.data.atHardBreak)return G.children[G.children.length-1].position.end=nt(T.end),void(this.data.atHardBreak=void 0);!this.data.setextHeadingSlurpLineEnding&&o.canContainEols.includes(G.type)&&(D.call(this,T),M.call(this,T))}function L(){this.data.atHardBreak=!0}function F(){const T=this.resume();this.stack[this.stack.length-1].value=T}function _(){const T=this.resume();this.stack[this.stack.length-1].value=T}function H(){const T=this.resume();this.stack[this.stack.length-1].value=T}function b(){const T=this.stack[this.stack.length-1];if(this.data.inReference){const G=this.data.referenceType||"shortcut";T.type+="Reference",T.referenceType=G,delete T.url,delete T.title}else delete T.identifier,delete T.label;this.data.referenceType=void 0}function X(){const T=this.stack[this.stack.length-1];if(this.data.inReference){const G=this.data.referenceType||"shortcut";T.type+="Reference",T.referenceType=G,delete T.url,delete T.title}else delete T.identifier,delete T.label;this.data.referenceType=void 0}function w(T){const G=this.sliceSerialize(T),Y=this.stack[this.stack.length-2];Y.label=function(te){return te.replace(HA,UA)}(G),Y.identifier=yt(G).toLowerCase()}function K(){const T=this.stack[this.stack.length-1],G=this.resume(),Y=this.stack[this.stack.length-1];if(this.data.inReference=!0,Y.type==="link"){const te=T.children;Y.children=te}else Y.alt=G}function R(){const T=this.resume();this.stack[this.stack.length-1].url=T}function z(){const T=this.resume();this.stack[this.stack.length-1].title=T}function q(){this.data.inReference=void 0}function Z(){this.data.referenceType="collapsed"}function J(T){const G=this.resume(),Y=this.stack[this.stack.length-1];Y.label=G,Y.identifier=yt(this.sliceSerialize(T)).toLowerCase(),this.data.referenceType="full"}function ae(T){this.data.characterReferenceType=T.type}function re(T){const G=this.sliceSerialize(T),Y=this.data.characterReferenceType;let te;Y?(te=_o(G,Y==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):te=zn(G),this.stack[this.stack.length-1].value+=te}function le(T){this.stack.pop().position.end=nt(T.end)}function we(T){M.call(this,T),this.stack[this.stack.length-1].url=this.sliceSerialize(T)}function Ye(T){M.call(this,T),this.stack[this.stack.length-1].url="mailto:"+this.sliceSerialize(T)}function ut(){return{type:"blockquote",children:[]}}function xe(){return{type:"code",lang:null,meta:null,value:""}}function Ne(){return{type:"inlineCode",value:""}}function xt(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function ot(){return{type:"emphasis",children:[]}}function We(){return{type:"heading",depth:0,children:[]}}function ge(){return{type:"break"}}function _e(){return{type:"html",value:""}}function Ve(){return{type:"image",title:null,url:"",alt:null}}function dn(){return{type:"link",title:null,url:"",children:[]}}function pn(T){return{type:"list",ordered:T.type==="listOrdered",start:null,spread:T._spread,children:[]}}function Nt(T){return{type:"listItem",spread:T._spread,checked:null,children:[]}}function yr(){return{type:"paragraph",children:[]}}function dt(){return{type:"strong",children:[]}}function Ht(){return{type:"text",value:""}}function fn(){return{type:"thematicBreak"}}}(r)(function(n){for(;!qo(n););return n}(function(n){const o={constructs:Gs([LA,...(n||{}).extensions||[]]),content:a($s),defined:[],document:a(eA),flow:a(kA),lazy:{},string:a(PA),text:a(SA)};return o;function a(A){return function(s){return NA(o,A,s)}}}(r).document().write(function(){let n,o=1,a="",A=!0;return function(s,i,c){const l=[];let d,u,p,f,y;for(s=a+(typeof s=="string"?s.toString():new TextDecoder(i||void 0).decode(s)),p=0,a="",A&&(s.charCodeAt(0)===65279&&p++,A=void 0);p<s.length;){if(Zo.lastIndex=p,d=Zo.exec(s),f=d&&d.index!==void 0?d.index:s.length,y=s.charCodeAt(f),!d){a=s.slice(p);break}if(y===10&&p===f&&n)l.push(-3),n=void 0;else switch(n&&(l.push(-5),n=void 0),p<f&&(l.push(s.slice(p,f)),o+=f-p),y){case 0:l.push(65533),o++;break;case 9:for(u=4*Math.ceil(o/4),l.push(-2);o++<u;)l.push(-1);break;case 10:l.push(-4),o=1;break;default:n=!0,o=1}p=f+1}return c&&(n&&l.push(-5),a&&l.push(a),l.push(null)),l}}()(e,t,!0))))}function nt(e){return{line:e.line,column:e.column,offset:e.offset}}function ea(e,t){let r=-1;for(;++r<t.length;){const n=t[r];Array.isArray(n)?ea(e,n):zA(e,n)}}function zA(e,t){let r;for(r in t)if($o.call(t,r))switch(r){case"canContainEols":{const n=t[r];n&&e[r].push(...n);break}case"transforms":{const n=t[r];n&&e[r].push(...n);break}case"enter":case"exit":{const n=t[r];n&&Object.assign(e[r],n);break}}}function ta(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+Dt({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+Dt({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+Dt({start:t.start,end:t.end})+") is still open")}function RA(e){const t=this;t.parser=function(r){return FA(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function na(e,t){const r=t.referenceType;let n="]";if(r==="collapsed"?n+="[]":r==="full"&&(n+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+n}];const o=e.all(t),a=o[0];a&&a.type==="text"?a.value="["+a.value:o.unshift({type:"text",value:"["});const A=o[o.length-1];return A&&A.type==="text"?A.value+=n:o.push({type:"text",value:n}),o}function ra(e){return e.spread??e.children.length>1}function jA(e){const t=String(e),r=/\r?\n|\r/g;let n=r.exec(t),o=0;const a=[];for(;n;)a.push(oa(t.slice(o,n.index),o>0,!0),n[0]),o=n.index+n[0].length,n=r.exec(t);return a.push(oa(t.slice(o),o>0,!1)),a.join("")}function oa(e,t,r){let n=0,o=e.length;if(t){let a=e.codePointAt(n);for(;a===9||a===32;)n++,a=e.codePointAt(n)}if(r){let a=e.codePointAt(o-1);for(;a===9||a===32;)o--,a=e.codePointAt(o-1)}return o>n?e.slice(n,o):""}const qA={blockquote:function(e,t){const r={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,r),e.applyData(t,r)},break:function(e,t){const r={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,r),[e.applyData(t,r),{type:"text",value:`
|
|
20
|
+
`),n=n.replace(/\n/g,"<br/>"),n}createContainer(e){var t;const r=(typeof global<"u"&&global.INTERWEAVE_SSR_POLYFILL||_s)();if(!r)return;const n=(t=this.props.containerTagName)!==null&&t!==void 0?t:"body",o=n==="body"||n==="fragment"?r.body:r.createElement(n);if(e.match(Qs)){if(process.env.NODE_ENV!=="production")throw new Error("HTML documents as Interweave content are not supported.")}else o.innerHTML=this.convertLineBreaks(this.props.escapeHtml?Ds(e):e);return o}extractAttributes(e){const{allowAttributes:t}=this.props,r={};let n=0;return e.nodeType===1&&e.attributes&&([...e.attributes].forEach(o=>{const{name:i,value:A}=o,s=i.toLowerCase(),a=wo[s]||wo[i];if(!this.isSafe(e)||!s.match(Ms)&&(!t&&(!a||a===2)||s.startsWith("on")||A.replace(/(\s|\0|�([9AD]);)/,"").match(/(javascript|vbscript|livescript|xss):/i)))return;let l=s==="style"?this.extractStyleAttribute(e):A;a===4?l=!0:a===3?l=Number.parseFloat(String(l)):a!==5&&(l=String(l)),r[Ps[s]||s]=this.applyAttributeFilters(s,l),n+=1}),n!==0)?r:null}extractStyleAttribute(e){const t={};return Array.from(e.style).forEach(r=>{const n=e.style[r];(typeof n=="string"||typeof n=="number")&&(t[r.replace(/-([a-z])/g,(o,i)=>String(i).toUpperCase())]=n)}),t}getTagConfig(e){const t={children:[],content:0,invalid:[],parent:[],self:!0,tagName:"",type:0,void:!1};return Yn[e]?{...t,...Yn[e],tagName:e}:t}isSafe(e){if(typeof HTMLAnchorElement<"u"&&e instanceof HTMLAnchorElement){const t=e.getAttribute("href");if(t!=null&&t.startsWith("#"))return!0;const r=e.protocol.toLowerCase();return r===":"||r==="http:"||r==="https:"||r==="mailto:"||r==="tel:"}return!0}isTagAllowed(e){return!this.banned.has(e)&&!this.blocked.has(e)&&(this.props.allowElements||this.allowed.has(e))}parse(){return this.container?this.parseNode(this.container,this.getTagConfig(this.container.nodeName.toLowerCase())):[]}parseNode(e,t){const{noHtml:r,noHtmlExceptMatchers:n,allowElements:o,transform:i,transformOnlyAllowList:A}=this.props;let s=[],a="";return[...e.childNodes].forEach(l=>{if(l.nodeType===1){const d=l.nodeName.toLowerCase(),u=this.getTagConfig(d);a&&(s.push(a),a="");const p=this.applyNodeFilters(d,l);if(!p)return;let g;if(i&&(!A||this.isTagAllowed(d))){this.keyIndex+=1;const v=this.keyIndex;g=this.parseNode(p,u);const h=i(p,g,u);if(h===null)return;if(typeof h<"u")return void s.push(f.cloneElement(h,{key:v}));this.keyIndex=v-1}if(this.banned.has(d))return;if(r||n&&d!=="br"||!this.isTagAllowed(d)||!o&&!this.canRenderChild(t,u))s=[...s,...this.parseNode(p,u.tagName?u:t)];else{var c;this.keyIndex+=1;const v=this.extractAttributes(p),h={tagName:d};v&&(h.attributes=v),u.void&&(h.selfClose=u.void),s.push(f.createElement(xo,{...h,key:this.keyIndex},(c=g)!==null&&c!==void 0?c:this.parseNode(p,u)))}}else if(l.nodeType===3){const d=r&&!n?l.textContent:this.applyMatchers(l.textContent||"",t);Array.isArray(d)?s=[...s,...d]:a+=d}}),a&&s.push(a),s}replaceTokens(e,t){if(!e.includes("{{{"))return e;const r=[];let n=e,o=null;for(;o=n.match(Os);){const[i,A]=o,s=o.index,a=i.includes("/");if(process.env.NODE_ENV!=="production"&&!t[A])throw new Error(`Token "${A}" found but no matching element to replace with.`);s>0&&(r.push(n.slice(0,s)),n=n.slice(s));const{children:l,matcher:c,props:d}=t[A];let u;if(a)u=i.length,r.push(c.createElement(l,d));else{const p=n.match(new RegExp(`{{{/${A}}}}`));if(process.env.NODE_ENV!=="production"&&!p)throw new Error(`Closing token missing for interpolated element "${A}".`);u=p.index+p[0].length,r.push(c.createElement(this.replaceTokens(n.slice(i.length,p.index),t),d))}n=n.slice(u)}return n.length>0&&r.push(n),r.length===0?"":r.length===1&&typeof r[0]=="string"?r[0]:r}};function Ns(e){var t;const{attributes:r,className:n,containerTagName:o,content:i,emptyContent:A,parsedContent:s,tagName:a,noWrap:l}=e,c=(t=o??a)!==null&&t!==void 0?t:"span",d=c==="fragment"||l;let u;if(s)u=s;else{const p=new Co(i??"",e).parse();p.length>0&&(u=p)}return u||(u=A),d?f.createElement(f.Fragment,null,u):f.createElement(xo,{attributes:r,className:n,tagName:c},u)}function Ls(e){const{attributes:t,className:r,content:n="",disableFilters:o=!1,disableMatchers:i=!1,emptyContent:A=null,filters:s=[],matchers:a=[],onAfterParse:l=null,onBeforeParse:c=null,tagName:d="span",noWrap:u=!1,...p}=e,g=i?[]:a,v=o?[]:s,h=c?[c]:[],w=l?[l]:[];g.forEach(P=>{P.onBeforeParse&&h.push(P.onBeforeParse.bind(P)),P.onAfterParse&&w.push(P.onAfterParse.bind(P))});const x=h.reduce((P,C)=>{const S=C(P,e);if(process.env.NODE_ENV!=="production"&&typeof S!="string")throw new TypeError("Interweave `onBeforeParse` must return a valid HTML string.");return S},n??""),m=new Co(x,p,g,v),k=w.reduce((P,C)=>{const S=C(P,e);if(process.env.NODE_ENV!=="production"&&!Array.isArray(S))throw new TypeError("Interweave `onAfterParse` must return an array of strings and React elements.");return S},m.parse());return f.createElement(Ns,{attributes:t,className:r,containerTagName:e.containerTagName,emptyContent:A,noWrap:u,parsedContent:k.length===0?void 0:k,tagName:d})}const Hs=({children:e})=>E.jsx("div",{style:{whiteSpace:"normal"},children:E.jsx(Ls,{content:typeof e=="string"?e:""})}),Us={autoConfig:!0},Po=(e,t,r)=>{var n;if(!e.detail.currPath)return!1;const o=t[e.detail.currPath];return!!o&&(((n=o.renderHtml)==null?void 0:n.map(i=>i.toUpperCase()).includes(r))??!1)},Fs=e=>{const t=[];let r="",n=!1;for(let o=0;o<e.length;o++){const i=e[o];i==="<"?n?(t.push(r),r=i):(n=!0,r=i):i===">"?(r+=i,t.push(r),r="",n=!1):n?r+=i:t.push(i)}return r!==""&&t.push(r),t},zs=e=>{const{getFlow:t}=pn(),{messages:r,replaceMessages:n}=qt(),{settings:o}=yo(),{hasChatHistoryLoaded:i}=vo(),A={...e,...Us},s=A.htmlComponent?A.htmlComponent:Hs;f.useEffect(()=>{var c,d;if(i){const u=[...r];for(let p=0;p<u.length&&p<(((c=o.chatHistory)==null?void 0:c.maxEntries)??30);p++){const g=u[p];(d=g.tags)!=null&&d.includes("rcb-html-renderer-plugin:parsed")&&(g.contentWrapper=s)}n(u)}},[i]);const a=async c=>{var d;const u=(d=c.data.message)==null?void 0:d.sender.toUpperCase();typeof c.data.message.content=="string"&&Po(c,t(),u)&&(c.type==="rcb-start-simulate-stream-message"&&(c.data.simulateStreamChunker=Fs),c.data.message.contentWrapper=s,c.data.message.tags||(c.data.message.tags=[]),c.data.message.tags.push("rcb-html-renderer-plugin:parsed"))};We(j.PRE_INJECT_MESSAGE,a),We(j.CHUNK_STREAM_MESSAGE,a),We(j.START_STREAM_MESSAGE,a),We(j.START_SIMULATE_STREAM_MESSAGE,a),We(j.START_SPEAK_AUDIO,async c=>{Po(c,t(),"BOT")&&(c.data.textToRead=(d=>typeof window.DOMParser<"u"?new DOMParser().parseFromString(d,"text/html").body.textContent||"":d.replace(/<\/?[^>]+(>|$)/g,""))(c.data.textToRead))});const l={name:"@rcb-plugins/html-renderer"};return A!=null&&A.autoConfig&&(l.settings={event:{rcbPreInjectMessage:!0,rcbChunkStreamMessage:!0,rcbStartSimulateStreamMessage:!0,rcbStartStreamMessage:!0,rcbStartSpeakAudio:!0}}),l},Rs=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,js=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qs={};function So(e,t){return(qs.jsx?js:Rs).test(e)}const Gs=/[ \t\n\f\r]/g;function Bo(e){return e.replace(Gs,"")===""}class Gt{constructor(t,r,n){this.property=t,this.normal=r,n&&(this.space=n)}}function Do(e,t){const r={},n={};let o=-1;for(;++o<e.length;)Object.assign(r,e[o].property),Object.assign(n,e[o].normal);return new Gt(r,n,t)}function Wn(e){return e.toLowerCase()}Gt.prototype.property={},Gt.prototype.normal={},Gt.prototype.space=null;class Ke{constructor(t,r){this.property=t,this.attribute=r}}Ke.prototype.space=null,Ke.prototype.boolean=!1,Ke.prototype.booleanish=!1,Ke.prototype.overloadedBoolean=!1,Ke.prototype.number=!1,Ke.prototype.commaSeparated=!1,Ke.prototype.spaceSeparated=!1,Ke.prototype.commaOrSpaceSeparated=!1,Ke.prototype.mustUseProperty=!1,Ke.prototype.defined=!1;let Ys=0;const $=wt(),we=wt(),Io=wt(),L=wt(),ue=wt(),It=wt(),Fe=wt();function wt(){return 2**++Ys}const Kn=Object.freeze(Object.defineProperty({__proto__:null,boolean:$,booleanish:we,commaOrSpaceSeparated:Fe,commaSeparated:It,number:L,overloadedBoolean:Io,spaceSeparated:ue},Symbol.toStringTag,{value:"Module"})),Vn=Object.keys(Kn);class Xn extends Ke{constructor(t,r,n,o){let i=-1;if(super(t,r),To(this,"space",o),typeof n=="number")for(;++i<Vn.length;){const A=Vn[i];To(this,Vn[i],(n&Kn[A])===Kn[A])}}}function To(e,t,r){r&&(e[t]=r)}Xn.prototype.defined=!0;const Ws={}.hasOwnProperty;function Tt(e){const t={},r={};let n;for(n in e.properties)if(Ws.call(e.properties,n)){const o=e.properties[n],i=new Xn(n,e.transform(e.attributes||{},n),o,e.space);e.mustUseProperty&&e.mustUseProperty.includes(n)&&(i.mustUseProperty=!0),t[n]=i,r[Wn(n)]=n,r[Wn(i.attribute)]=n}return new Gt(t,r,e.space)}const Qo=Tt({space:"xlink",transform:(e,t)=>"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),Mo=Tt({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function Oo(e,t){return t in e?e[t]:t}function _o(e,t){return Oo(e,t.toLowerCase())}const No=Tt({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:_o,properties:{xmlns:null,xmlnsXLink:null}}),Lo=Tt({transform:(e,t)=>t==="role"?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:we,ariaAutoComplete:null,ariaBusy:we,ariaChecked:we,ariaColCount:L,ariaColIndex:L,ariaColSpan:L,ariaControls:ue,ariaCurrent:null,ariaDescribedBy:ue,ariaDetails:null,ariaDisabled:we,ariaDropEffect:ue,ariaErrorMessage:null,ariaExpanded:we,ariaFlowTo:ue,ariaGrabbed:we,ariaHasPopup:null,ariaHidden:we,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:ue,ariaLevel:L,ariaLive:null,ariaModal:we,ariaMultiLine:we,ariaMultiSelectable:we,ariaOrientation:null,ariaOwns:ue,ariaPlaceholder:null,ariaPosInSet:L,ariaPressed:we,ariaReadOnly:we,ariaRelevant:null,ariaRequired:we,ariaRoleDescription:ue,ariaRowCount:L,ariaRowIndex:L,ariaRowSpan:L,ariaSelected:we,ariaSetSize:L,ariaSort:null,ariaValueMax:L,ariaValueMin:L,ariaValueNow:L,ariaValueText:null,role:null}}),Ks=Tt({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:_o,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:It,acceptCharset:ue,accessKey:ue,action:null,allow:null,allowFullScreen:$,allowPaymentRequest:$,allowUserMedia:$,alt:null,as:null,async:$,autoCapitalize:null,autoComplete:ue,autoFocus:$,autoPlay:$,blocking:ue,capture:null,charSet:null,checked:$,cite:null,className:ue,cols:L,colSpan:null,content:null,contentEditable:we,controls:$,controlsList:ue,coords:L|It,crossOrigin:null,data:null,dateTime:null,decoding:null,default:$,defer:$,dir:null,dirName:null,disabled:$,download:Io,draggable:we,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:$,formTarget:null,headers:ue,height:L,hidden:$,high:L,href:null,hrefLang:null,htmlFor:ue,httpEquiv:ue,id:null,imageSizes:null,imageSrcSet:null,inert:$,inputMode:null,integrity:null,is:null,isMap:$,itemId:null,itemProp:ue,itemRef:ue,itemScope:$,itemType:ue,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:$,low:L,manifest:null,max:null,maxLength:L,media:null,method:null,min:null,minLength:L,multiple:$,muted:$,name:null,nonce:null,noModule:$,noValidate:$,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:$,optimum:L,pattern:null,ping:ue,placeholder:null,playsInline:$,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:$,referrerPolicy:null,rel:ue,required:$,reversed:$,rows:L,rowSpan:L,sandbox:ue,scope:null,scoped:$,seamless:$,selected:$,shadowRootClonable:$,shadowRootDelegatesFocus:$,shadowRootMode:null,shape:null,size:L,sizes:null,slot:null,span:L,spellCheck:we,src:null,srcDoc:null,srcLang:null,srcSet:null,start:L,step:null,style:null,tabIndex:L,target:null,title:null,translate:null,type:null,typeMustMatch:$,useMap:null,value:we,width:L,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:ue,axis:null,background:null,bgColor:null,border:L,borderColor:null,bottomMargin:L,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:$,declare:$,event:null,face:null,frame:null,frameBorder:null,hSpace:L,leftMargin:L,link:null,longDesc:null,lowSrc:null,marginHeight:L,marginWidth:L,noResize:$,noHref:$,noShade:$,noWrap:$,object:null,profile:null,prompt:null,rev:null,rightMargin:L,rules:null,scheme:null,scrolling:we,standby:null,summary:null,text:null,topMargin:L,valueType:null,version:null,vAlign:null,vLink:null,vSpace:L,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:$,disableRemotePlayback:$,prefix:null,property:null,results:L,security:null,unselectable:null}}),Vs=Tt({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:Oo,properties:{about:Fe,accentHeight:L,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:L,amplitude:L,arabicForm:null,ascent:L,attributeName:null,attributeType:null,azimuth:L,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:L,by:null,calcMode:null,capHeight:L,className:ue,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:L,diffuseConstant:L,direction:null,display:null,dur:null,divisor:L,dominantBaseline:null,download:$,dx:null,dy:null,edgeMode:null,editable:null,elevation:L,enableBackground:null,end:null,event:null,exponent:L,externalResourcesRequired:null,fill:null,fillOpacity:L,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:It,g2:It,glyphName:It,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:L,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:L,horizOriginX:L,horizOriginY:L,id:null,ideographic:L,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:L,k:L,k1:L,k2:L,k3:L,k4:L,kernelMatrix:Fe,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:L,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:L,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:L,overlineThickness:L,paintOrder:null,panose1:null,path:null,pathLength:L,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:ue,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:L,pointsAtY:L,pointsAtZ:L,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Fe,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Fe,rev:Fe,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Fe,requiredFeatures:Fe,requiredFonts:Fe,requiredFormats:Fe,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:L,specularExponent:L,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:L,strikethroughThickness:L,string:null,stroke:null,strokeDashArray:Fe,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:L,strokeOpacity:L,strokeWidth:null,style:null,surfaceScale:L,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Fe,tabIndex:L,tableValues:null,target:null,targetX:L,targetY:L,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Fe,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:L,underlineThickness:L,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:L,values:null,vAlphabetic:L,vMathematical:L,vectorEffect:null,vHanging:L,vIdeographic:L,version:null,vertAdvY:L,vertOriginX:L,vertOriginY:L,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:L,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),Xs=/^data[-\w.:]+$/i,Ho=/-[a-z]/g,Js=/[A-Z]/g;function Zs(e){return"-"+e.toLowerCase()}function $s(e){return e.charAt(1).toUpperCase()}const eA={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},tA=Do([Mo,Qo,No,Lo,Ks],"html"),Jn=Do([Mo,Qo,No,Lo,Vs],"svg");function Uo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Zn,Fo,zo,Qt={},nA=function(){if(zo)return Qt;zo=1;var e=Qt&&Qt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.default=function(r,n){var o=null;if(!r||typeof r!="string")return o;var i=(0,t.default)(r),A=typeof n=="function";return i.forEach(function(s){if(s.type==="declaration"){var a=s.property,l=s.value;A?n(a,l,s):l&&((o=o||{})[a]=l)}}),o};var t=e(function(){if(Fo)return Zn;Fo=1;var r=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,o=/^\s*/,i=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,A=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,a=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function d(u){return u?u.replace(l,c):c}return Zn=function(u,p){if(typeof u!="string")throw new TypeError("First argument must be a string");if(!u)return[];p=p||{};var g=1,v=1;function h(Q){var D=Q.match(n);D&&(g+=D.length);var O=Q.lastIndexOf(`
|
|
21
|
+
`);v=~O?Q.length-O:v+Q.length}function w(){var Q={line:g,column:v};return function(D){return D.position=new x(Q),P(),D}}function x(Q){this.start=Q,this.end={line:g,column:v},this.source=p.source}function m(Q){var D=new Error(p.source+":"+g+":"+v+": "+Q);if(D.reason=Q,D.filename=p.source,D.line=g,D.column=v,D.source=u,!p.silent)throw D}function k(Q){var D=Q.exec(u);if(D){var O=D[0];return h(O),u=u.slice(O.length),D}}function P(){k(o)}function C(Q){var D;for(Q=Q||[];D=S();)D!==!1&&Q.push(D);return Q}function S(){var Q=w();if(u.charAt(0)=="/"&&u.charAt(1)=="*"){for(var D=2;c!=u.charAt(D)&&(u.charAt(D)!="*"||u.charAt(D+1)!="/");)++D;if(D+=2,c===u.charAt(D-1))return m("End of comment missing");var O=u.slice(2,D-2);return v+=2,h(O),u=u.slice(D),v+=2,Q({type:"comment",comment:O})}}function I(){var Q=w(),D=k(i);if(D){if(S(),!k(A))return m("property missing ':'");var O=k(s),B=Q({type:"declaration",property:d(D[0].replace(r,c)),value:O?d(O[0].replace(r,c)):c});return k(a),B}}return x.prototype.content=u,P(),function(){var Q,D=[];for(C(D);Q=I();)Q!==!1&&(D.push(Q),C(D));return D}()},Zn}());return Qt}();const Ro=Uo(nA),rA=Ro.default||Ro,jo=qo("end"),$n=qo("start");function qo(e){return function(t){const r=t&&t.position&&t.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Yt(e){return e&&typeof e=="object"?"position"in e||"type"in e?Go(e.position):"start"in e||"end"in e?Go(e):"line"in e||"column"in e?er(e):"":""}function er(e){return Yo(e&&e.line)+":"+Yo(e&&e.column)}function Go(e){return er(e&&e.start)+"-"+er(e&&e.end)}function Yo(e){return e&&typeof e=="number"?e:1}class Ie extends Error{constructor(t,r,n){super(),typeof r=="string"&&(n=r,r=void 0);let o="",i={},A=!1;if(r&&(i="line"in r&&"column"in r||"start"in r&&"end"in r?{place:r}:"type"in r?{ancestors:[r],place:r.position}:{...r}),typeof t=="string"?o=t:!i.cause&&t&&(A=!0,o=t.message,i.cause=t),!i.ruleId&&!i.source&&typeof n=="string"){const a=n.indexOf(":");a===-1?i.ruleId=n:(i.source=n.slice(0,a),i.ruleId=n.slice(a+1))}if(!i.place&&i.ancestors&&i.ancestors){const a=i.ancestors[i.ancestors.length-1];a&&(i.place=a.position)}const s=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=o,this.line=s?s.line:void 0,this.name=Yt(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=A&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual,this.expected,this.note,this.url}}Ie.prototype.file="",Ie.prototype.name="",Ie.prototype.reason="",Ie.prototype.message="",Ie.prototype.stack="",Ie.prototype.column=void 0,Ie.prototype.line=void 0,Ie.prototype.ancestors=void 0,Ie.prototype.cause=void 0,Ie.prototype.fatal=void 0,Ie.prototype.place=void 0,Ie.prototype.ruleId=void 0,Ie.prototype.source=void 0;const tr={}.hasOwnProperty,oA=new Map,iA=/[A-Z]/g,aA=/-([a-z])/g,sA=new Set(["table","tbody","thead","tfoot","tr"]),AA=new Set(["td","th"]),Wo="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function lA(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=t.filePath||void 0;let n;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");n=function(A,s){return a;function a(l,c,d,u){const p=Array.isArray(d.children),g=$n(l);return s(c,d,u,p,{columnNumber:g?g.column-1:void 0,fileName:A,lineNumber:g?g.line:void 0},void 0)}}(r,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");n=function(A,s,a){return l;function l(c,d,u,p){const g=Array.isArray(u.children)?a:s;return p?g(d,u,p):g(d,u)}}(0,t.jsx,t.jsxs)}const o={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:n,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Jn:tA,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},i=Ko(o,e,void 0);return i&&typeof i!="string"?i:o.create(e,o.Fragment,{children:i||void 0},void 0)}function Ko(e,t,r){return t.type==="element"?function(n,o,i){const A=n.schema;let s=A;o.tagName.toLowerCase()==="svg"&&A.space==="html"&&(s=Jn,n.schema=s),n.ancestors.push(o);const a=Xo(n,o.tagName,!1),l=function(d,u){const p={};let g,v;for(v in u.properties)if(v!=="children"&&tr.call(u.properties,v)){const h=cA(d,v,u.properties[v]);if(h){const[w,x]=h;d.tableCellAlignToStyle&&w==="align"&&typeof x=="string"&&AA.has(u.tagName)?g=x:p[w]=x}}return g&&((p.style||(p.style={}))[d.stylePropertyNameCase==="css"?"text-align":"textAlign"]=g),p}(n,o);let c=rr(n,o);return sA.has(o.tagName)&&(c=c.filter(function(d){return typeof d!="string"||!function(u){return typeof u=="object"?u.type==="text"&&Bo(u.value):Bo(u)}(d)})),Vo(n,l,a,o),nr(l,c),n.ancestors.pop(),n.schema=A,n.create(o,a,l,i)}(e,t,r):t.type==="mdxFlowExpression"||t.type==="mdxTextExpression"?function(n,o){if(o.data&&o.data.estree&&n.evaluater){const i=o.data.estree.body[0];return i.type,n.evaluater.evaluateExpression(i.expression)}Wt(n,o.position)}(e,t):t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement"?function(n,o,i){const A=n.schema;let s=A;o.name==="svg"&&A.space==="html"&&(s=Jn,n.schema=s),n.ancestors.push(o);const a=o.name===null?n.Fragment:Xo(n,o.name,!0),l=function(d,u){const p={};for(const g of u.attributes)if(g.type==="mdxJsxExpressionAttribute")if(g.data&&g.data.estree&&d.evaluater){const v=g.data.estree.body[0];v.type;const h=v.expression;h.type;const w=h.properties[0];w.type,Object.assign(p,d.evaluater.evaluateExpression(w.argument))}else Wt(d,u.position);else{const v=g.name;let h;if(g.value&&typeof g.value=="object")if(g.value.data&&g.value.data.estree&&d.evaluater){const w=g.value.data.estree.body[0];w.type,h=d.evaluater.evaluateExpression(w.expression)}else Wt(d,u.position);else h=g.value===null||g.value;p[v]=h}return p}(n,o),c=rr(n,o);return Vo(n,l,a,o),nr(l,c),n.ancestors.pop(),n.schema=A,n.create(o,a,l,i)}(e,t,r):t.type==="mdxjsEsm"?function(n,o){if(o.data&&o.data.estree&&n.evaluater)return n.evaluater.evaluateProgram(o.data.estree);Wt(n,o.position)}(e,t):t.type==="root"?function(n,o,i){const A={};return nr(A,rr(n,o)),n.create(o,n.Fragment,A,i)}(e,t,r):t.type==="text"?function(n,o){return o.value}(0,t):void 0}function Vo(e,t,r,n){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(t.node=n)}function nr(e,t){if(t.length>0){const r=t.length>1?t:t[0];r&&(e.children=r)}}function rr(e,t){const r=[];let n=-1;const o=e.passKeys?new Map:oA;for(;++n<t.children.length;){const i=t.children[n];let A;if(e.passKeys){const a=i.type==="element"?i.tagName:i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement"?i.name:void 0;if(a){const l=o.get(a)||0;A=a+"-"+l,o.set(a,l+1)}}const s=Ko(e,i,A);s!==void 0&&r.push(s)}return r}function cA(e,t,r){const n=function(o,i){const A=Wn(i);let s=i,a=Ke;if(A in o.normal)return o.property[o.normal[A]];if(A.length>4&&A.slice(0,4)==="data"&&Xs.test(i)){if(i.charAt(4)==="-"){const l=i.slice(5).replace(Ho,$s);s="data"+l.charAt(0).toUpperCase()+l.slice(1)}else{const l=i.slice(4);if(!Ho.test(l)){let c=l.replace(Js,Zs);c.charAt(0)!=="-"&&(c="-"+c),i="data"+c}}a=Xn}return new a(s,i)}(e.schema,t);if(!(r==null||typeof r=="number"&&Number.isNaN(r))){if(Array.isArray(r)&&(r=n.commaSeparated?function(o){const i={};return(o[o.length-1]===""?[...o,""]:o).join((i.padRight?" ":"")+","+(i.padLeft===!1?"":" ")).trim()}(r):function(o){return o.join(" ").trim()}(r)),n.property==="style"){let o=typeof r=="object"?r:function(i,A){const s={};try{rA(A,a)}catch(l){if(!i.ignoreInvalidStyle){const c=l,d=new Ie("Cannot parse `style` attribute",{ancestors:i.ancestors,cause:c,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw d.file=i.filePath||void 0,d.url=Wo+"#cannot-parse-style-attribute",d}}return s;function a(l,c){let d=l;d.slice(0,2)!=="--"&&(d.slice(0,4)==="-ms-"&&(d="ms-"+d.slice(4)),d=d.replace(aA,dA)),s[d]=c}}(e,String(r));return e.stylePropertyNameCase==="css"&&(o=function(i){const A={};let s;for(s in i)tr.call(i,s)&&(A[uA(s)]=i[s]);return A}(o)),["style",o]}return[e.elementAttributeNameCase==="react"&&n.space?eA[n.property]||n.property:n.attribute,r]}}function Xo(e,t,r){let n;if(r)if(t.includes(".")){const o=t.split(".");let i,A=-1;for(;++A<o.length;){const s=So(o[A])?{type:"Identifier",name:o[A]}:{type:"Literal",value:o[A]};i=i?{type:"MemberExpression",object:i,property:s,computed:!(!A||s.type!=="Literal"),optional:!1}:s}n=i}else n=So(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};else n={type:"Literal",value:t};if(n.type==="Literal"){const o=n.value;return tr.call(e.components,o)?e.components[o]:o}if(e.evaluater)return e.evaluater.evaluateExpression(n);Wt(e)}function Wt(e,t){const r=new Ie("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw r.file=e.filePath||void 0,r.url=Wo+"#cannot-handle-mdx-estrees-without-createevaluater",r}function uA(e){let t=e.replace(iA,pA);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function dA(e,t){return t.toUpperCase()}function pA(e){return"-"+e.toLowerCase()}const or={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},hn={};function Jo(e,t,r){if(function(n){return!(!n||typeof n!="object")}(e)){if("value"in e)return e.type!=="html"||r?e.value:"";if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return Zo(e.children,t,r)}return Array.isArray(e)?Zo(e,t,r):""}function Zo(e,t,r){const n=[];let o=-1;for(;++o<e.length;)n[o]=Jo(e[o],t,r);return n.join("")}const $o=document.createElement("i");function ir(e){const t="&"+e+";";$o.innerHTML=t;const r=$o.textContent;return(r.charCodeAt(r.length-1)!==59||e==="semi")&&r!==t&&r}function ot(e,t,r,n){const o=e.length;let i,A=0;if(t=t<0?-t>o?0:o+t:t>o?o:t,r=r>0?r:0,n.length<1e4)i=Array.from(n),i.unshift(t,r),e.splice(...i);else for(r&&e.splice(t,r);A<n.length;)i=n.slice(A,A+1e4),i.unshift(t,0),e.splice(...i),A+=1e4,t+=1e4}function Ve(e,t){return e.length>0?(ot(e,e.length,0,t),e):t}const ei={}.hasOwnProperty;function fA(e){const t={};let r=-1;for(;++r<e.length;)hA(t,e[r]);return t}function hA(e,t){let r;for(r in t){const n=(ei.call(e,r)?e[r]:void 0)||(e[r]={}),o=t[r];let i;if(o)for(i in o){ei.call(n,i)||(n[i]=[]);const A=o[i];gA(n[i],Array.isArray(A)?A:A?[A]:[])}}}function gA(e,t){let r=-1;const n=[];for(;++r<t.length;)(t[r].add==="after"?e:n).push(t[r]);ot(e,0,0,n)}function ti(e,t){const r=Number.parseInt(e,t);return r<9||r===11||r>13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||!(65535&~r)||(65535&r)==65534||r>1114111?"�":String.fromCodePoint(r)}function Mt(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const it=ht(/[A-Za-z]/),ze=ht(/[\dA-Za-z]/),mA=ht(/[#-'*+\--9=?A-Z^-~]/);function ar(e){return e!==null&&(e<32||e===127)}const sr=ht(/\d/),yA=ht(/[\dA-Fa-f]/),bA=ht(/[!-/:-@[-`{-~]/);function X(e){return e!==null&&e<-2}function Me(e){return e!==null&&(e<0||e===32)}function ae(e){return e===-2||e===-1||e===32}const vA=ht(new RegExp("\\p{P}|\\p{S}","u")),wA=ht(/\s/);function ht(e){return function(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function Ot(e){const t=[];let r=-1,n=0,o=0;for(;++r<e.length;){const i=e.charCodeAt(r);let A="";if(i===37&&ze(e.charCodeAt(r+1))&&ze(e.charCodeAt(r+2)))o=2;else if(i<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(i))||(A=String.fromCharCode(i));else if(i>55295&&i<57344){const s=e.charCodeAt(r+1);i<56320&&s>56319&&s<57344?(A=String.fromCharCode(i,s),o=1):A="�"}else A=String.fromCharCode(i);A&&(t.push(e.slice(n,r),encodeURIComponent(A)),n=r+o+1,A=""),o&&(r+=o,o=0)}return t.join("")+e.slice(n)}function de(e,t,r,n){const o=n?n-1:Number.POSITIVE_INFINITY;let i=0;return function(s){return ae(s)?(e.enter(r),A(s)):t(s)};function A(s){return ae(s)&&i++<o?(e.consume(s),A):(e.exit(r),t(s))}}const xA={tokenize:function(e){const t=e.attempt(this.parser.constructs.contentInitial,function(i){return i===null?void e.consume(i):(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),de(e,t,"linePrefix"))},function(i){return e.enter("paragraph"),n(i)});let r;return t;function n(i){const A=e.enter("chunkText",{contentType:"text",previous:r});return r&&(r.next=A),r=A,o(i)}function o(i){return i===null?(e.exit("chunkText"),e.exit("paragraph"),void e.consume(i)):X(i)?(e.consume(i),e.exit("chunkText"),n):(e.consume(i),o)}}},EA={tokenize:function(e){const t=this,r=[];let n,o,i,A=0;return s;function s(m){if(A<r.length){const k=r[A];return t.containerState=k[1],e.attempt(k[0].continuation,a,l)(m)}return l(m)}function a(m){if(A++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,n&&x();const k=t.events.length;let P,C=k;for(;C--;)if(t.events[C][0]==="exit"&&t.events[C][1].type==="chunkFlow"){P=t.events[C][1].end;break}w(A);let S=k;for(;S<t.events.length;)t.events[S][1].end={...P},S++;return ot(t.events,C+1,0,t.events.slice(k)),t.events.length=S,l(m)}return s(m)}function l(m){if(A===r.length){if(!n)return u(m);if(n.currentConstruct&&n.currentConstruct.concrete)return g(m);t.interrupt=!(!n.currentConstruct||n._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(ni,c,d)(m)}function c(m){return n&&x(),w(A),u(m)}function d(m){return t.parser.lazy[t.now().line]=A!==r.length,i=t.now().offset,g(m)}function u(m){return t.containerState={},e.attempt(ni,p,g)(m)}function p(m){return A++,r.push([t.currentConstruct,t.containerState]),u(m)}function g(m){return m===null?(n&&x(),w(0),void e.consume(m)):(n=n||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:n,contentType:"flow",previous:o}),v(m))}function v(m){return m===null?(h(e.exit("chunkFlow"),!0),w(0),void e.consume(m)):X(m)?(e.consume(m),h(e.exit("chunkFlow")),A=0,t.interrupt=void 0,s):(e.consume(m),v)}function h(m,k){const P=t.sliceStream(m);if(k&&P.push(null),m.previous=o,o&&(o.next=m),o=m,n.defineSkip(m.start),n.write(P),t.parser.lazy[m.start.line]){let C=n.events.length;for(;C--;)if(n.events[C][1].start.offset<i&&(!n.events[C][1].end||n.events[C][1].end.offset>i))return;const S=t.events.length;let I,Q,D=S;for(;D--;)if(t.events[D][0]==="exit"&&t.events[D][1].type==="chunkFlow"){if(I){Q=t.events[D][1].end;break}I=!0}for(w(A),C=S;C<t.events.length;)t.events[C][1].end={...Q},C++;ot(t.events,D+1,0,t.events.slice(S)),t.events.length=C}}function w(m){let k=r.length;for(;k-- >m;){const P=r[k];t.containerState=P[1],P[0].exit.call(t,e)}r.length=m}function x(){n.write([null]),o=void 0,n=void 0,t.containerState._closeFlow=void 0}}},ni={tokenize:function(e,t,r){return de(e,e.attempt(this.parser.constructs.document,t,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}};function ri(e){return e===null||Me(e)||wA(e)?1:vA(e)?2:void 0}function Ar(e,t,r){const n=[];let o=-1;for(;++o<e.length;){const i=e[o].resolveAll;i&&!n.includes(i)&&(t=i(t,r),n.push(i))}return t}const lr={name:"attention",resolveAll:function(e,t){let r,n,o,i,A,s,a,l,c=-1;for(;++c<e.length;)if(e[c][0]==="enter"&&e[c][1].type==="attentionSequence"&&e[c][1]._close){for(r=c;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[c][1]).charCodeAt(0)){if((e[r][1]._close||e[c][1]._open)&&(e[c][1].end.offset-e[c][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[c][1].end.offset-e[c][1].start.offset)%3))continue;s=e[r][1].end.offset-e[r][1].start.offset>1&&e[c][1].end.offset-e[c][1].start.offset>1?2:1;const d={...e[r][1].end},u={...e[c][1].start};oi(d,-s),oi(u,s),i={type:s>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},A={type:s>1?"strongSequence":"emphasisSequence",start:{...e[c][1].start},end:u},o={type:s>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[c][1].start}},n={type:s>1?"strong":"emphasis",start:{...i.start},end:{...A.end}},e[r][1].end={...i.start},e[c][1].start={...A.end},a=[],e[r][1].end.offset-e[r][1].start.offset&&(a=Ve(a,[["enter",e[r][1],t],["exit",e[r][1],t]])),a=Ve(a,[["enter",n,t],["enter",i,t],["exit",i,t],["enter",o,t]]),a=Ve(a,Ar(t.parser.constructs.insideSpan.null,e.slice(r+1,c),t)),a=Ve(a,[["exit",o,t],["enter",A,t],["exit",A,t],["exit",n,t]]),e[c][1].end.offset-e[c][1].start.offset?(l=2,a=Ve(a,[["enter",e[c][1],t],["exit",e[c][1],t]])):l=0,ot(e,r-1,c-r+3,a),c=r+a.length-l-2;break}}for(c=-1;++c<e.length;)e[c][1].type==="attentionSequence"&&(e[c][1].type="data");return e},tokenize:function(e,t){const r=this.parser.constructs.attentionMarkers.null,n=this.previous,o=ri(n);let i;return function(s){return i=s,e.enter("attentionSequence"),A(s)};function A(s){if(s===i)return e.consume(s),A;const a=e.exit("attentionSequence"),l=ri(s),c=!l||l===2&&o||r.includes(s),d=!o||o===2&&l||r.includes(n);return a._open=!!(i===42?c:c&&(o||!d)),a._close=!!(i===42?d:d&&(l||!c)),t(s)}}};function oi(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const kA={name:"autolink",tokenize:function(e,t,r){let n=0;return function(u){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),o};function o(u){return it(u)?(e.consume(u),i):u===64?r(u):a(u)}function i(u){return u===43||u===45||u===46||ze(u)?(n=1,A(u)):a(u)}function A(u){return u===58?(e.consume(u),n=0,s):(u===43||u===45||u===46||ze(u))&&n++<32?(e.consume(u),A):(n=0,a(u))}function s(u){return u===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.exit("autolink"),t):u===null||u===32||u===60||ar(u)?r(u):(e.consume(u),s)}function a(u){return u===64?(e.consume(u),l):mA(u)?(e.consume(u),a):r(u)}function l(u){return ze(u)?c(u):r(u)}function c(u){return u===46?(e.consume(u),n=0,l):u===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(u),e.exit("autolinkMarker"),e.exit("autolink"),t):d(u)}function d(u){if((u===45||ze(u))&&n++<63){const p=u===45?d:c;return e.consume(u),p}return r(u)}}},gn={partial:!0,tokenize:function(e,t,r){return function(o){return ae(o)?de(e,n,"linePrefix")(o):n(o)};function n(o){return o===null||X(o)?t(o):r(o)}}},ii={continuation:{tokenize:function(e,t,r){const n=this;return function(i){return ae(i)?de(e,o,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(i):o(i)};function o(i){return e.attempt(ii,t,r)(i)}}},exit:function(e){e.exit("blockQuote")},name:"blockQuote",tokenize:function(e,t,r){const n=this;return function(i){if(i===62){const A=n.containerState;return A.open||(e.enter("blockQuote",{_container:!0}),A.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(i),e.exit("blockQuoteMarker"),o}return r(i)};function o(i){return ae(i)?(e.enter("blockQuotePrefixWhitespace"),e.consume(i),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(i))}}},ai={name:"characterEscape",tokenize:function(e,t,r){return function(o){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(o),e.exit("escapeMarker"),n};function n(o){return bA(o)?(e.enter("characterEscapeValue"),e.consume(o),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):r(o)}}},si={name:"characterReference",tokenize:function(e,t,r){const n=this;let o,i,A=0;return function(c){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(c),e.exit("characterReferenceMarker"),s};function s(c){return c===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(c),e.exit("characterReferenceMarkerNumeric"),a):(e.enter("characterReferenceValue"),o=31,i=ze,l(c))}function a(c){return c===88||c===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(c),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,i=yA,l):(e.enter("characterReferenceValue"),o=7,i=sr,l(c))}function l(c){if(c===59&&A){const d=e.exit("characterReferenceValue");return i!==ze||ir(n.sliceSerialize(d))?(e.enter("characterReferenceMarker"),e.consume(c),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):r(c)}return i(c)&&A++<o?(e.consume(c),l):r(c)}}},Ai={partial:!0,tokenize:function(e,t,r){const n=this;return function(i){return i===null?r(i):(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),o)};function o(i){return n.parser.lazy[n.now().line]?r(i):t(i)}}},li={concrete:!0,name:"codeFenced",tokenize:function(e,t,r){const n=this,o={partial:!0,tokenize:function(m,k,P){let C=0;return S;function S(B){return m.enter("lineEnding"),m.consume(B),m.exit("lineEnding"),I}function I(B){return m.enter("codeFencedFence"),ae(B)?de(m,Q,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(B):Q(B)}function Q(B){return B===i?(m.enter("codeFencedFenceSequence"),D(B)):P(B)}function D(B){return B===i?(C++,m.consume(B),D):C>=s?(m.exit("codeFencedFenceSequence"),ae(B)?de(m,O,"whitespace")(B):O(B)):P(B)}function O(B){return B===null||X(B)?(m.exit("codeFencedFence"),k(B)):P(B)}}};let i,A=0,s=0;return function(m){return function(k){const P=n.events[n.events.length-1];return A=P&&P[1].type==="linePrefix"?P[2].sliceSerialize(P[1],!0).length:0,i=k,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),a(k)}(m)};function a(m){return m===i?(s++,e.consume(m),a):s<3?r(m):(e.exit("codeFencedFenceSequence"),ae(m)?de(e,l,"whitespace")(m):l(m))}function l(m){return m===null||X(m)?(e.exit("codeFencedFence"),n.interrupt?t(m):e.check(Ai,p,x)(m)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),c(m))}function c(m){return m===null||X(m)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),l(m)):ae(m)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),de(e,d,"whitespace")(m)):m===96&&m===i?r(m):(e.consume(m),c)}function d(m){return m===null||X(m)?l(m):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),u(m))}function u(m){return m===null||X(m)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),l(m)):m===96&&m===i?r(m):(e.consume(m),u)}function p(m){return e.attempt(o,x,g)(m)}function g(m){return e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),v}function v(m){return A>0&&ae(m)?de(e,h,"linePrefix",A+1)(m):h(m)}function h(m){return m===null||X(m)?e.check(Ai,p,x)(m):(e.enter("codeFlowValue"),w(m))}function w(m){return m===null||X(m)?(e.exit("codeFlowValue"),h(m)):(e.consume(m),w)}function x(m){return e.exit("codeFenced"),t(m)}}},cr={name:"codeIndented",tokenize:function(e,t,r){const n=this;return function(a){return e.enter("codeIndented"),de(e,o,"linePrefix",5)(a)};function o(a){const l=n.events[n.events.length-1];return l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?i(a):r(a)}function i(a){return a===null?s(a):X(a)?e.attempt(CA,i,s)(a):(e.enter("codeFlowValue"),A(a))}function A(a){return a===null||X(a)?(e.exit("codeFlowValue"),i(a)):(e.consume(a),A)}function s(a){return e.exit("codeIndented"),t(a)}}},CA={partial:!0,tokenize:function(e,t,r){const n=this;return o;function o(A){return n.parser.lazy[n.now().line]?r(A):X(A)?(e.enter("lineEnding"),e.consume(A),e.exit("lineEnding"),o):de(e,i,"linePrefix",5)(A)}function i(A){const s=n.events[n.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?t(A):X(A)?o(A):r(A)}}},PA={name:"codeText",previous:function(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"},resolve:function(e){let t,r,n=e.length-4,o=3;if(!(e[o][1].type!=="lineEnding"&&e[o][1].type!=="space"||e[n][1].type!=="lineEnding"&&e[n][1].type!=="space")){for(t=o;++t<n;)if(e[t][1].type==="codeTextData"){e[o][1].type="codeTextPadding",e[n][1].type="codeTextPadding",o+=2,n-=2;break}}for(t=o-1,n++;++t<=n;)r===void 0?t!==n&&e[t][1].type!=="lineEnding"&&(r=t):(t===n||e[t][1].type==="lineEnding")&&(e[r][1].type="codeTextData",t!==r+2&&(e[r][1].end=e[t-1][1].end,e.splice(r+2,t-r-2),n-=t-r-2,t=r+2),r=void 0);return e},tokenize:function(e,t,r){let n,o,i=0;return function(c){return e.enter("codeText"),e.enter("codeTextSequence"),A(c)};function A(c){return c===96?(e.consume(c),i++,A):(e.exit("codeTextSequence"),s(c))}function s(c){return c===null?r(c):c===32?(e.enter("space"),e.consume(c),e.exit("space"),s):c===96?(o=e.enter("codeTextSequence"),n=0,l(c)):X(c)?(e.enter("lineEnding"),e.consume(c),e.exit("lineEnding"),s):(e.enter("codeTextData"),a(c))}function a(c){return c===null||c===32||c===96||X(c)?(e.exit("codeTextData"),s(c)):(e.consume(c),a)}function l(c){return c===96?(e.consume(c),n++,l):n===i?(e.exit("codeTextSequence"),e.exit("codeText"),t(c)):(o.type="codeTextData",a(c))}}};class SA{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,r){const n=r??Number.POSITIVE_INFINITY;return n<this.left.length?this.left.slice(t,n):t>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(t,r,n){const o=r||0;this.setCursor(Math.trunc(t));const i=this.right.splice(this.right.length-o,Number.POSITIVE_INFINITY);return n&&Kt(this.left,n),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Kt(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Kt(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const r=this.left.splice(t,Number.POSITIVE_INFINITY);Kt(this.right,r.reverse())}else{const r=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Kt(this.left,r.reverse())}}}function Kt(e,t){let r=0;if(t.length<1e4)e.push(...t);else for(;r<t.length;)e.push(...t.slice(r,r+1e4)),r+=1e4}function ci(e){const t={};let r,n,o,i,A,s,a,l=-1;const c=new SA(e);for(;++l<c.length;){for(;l in t;)l=t[l];if(r=c.get(l),l&&r[1].type==="chunkFlow"&&c.get(l-1)[1].type==="listItemPrefix"&&(s=r[1]._tokenizer.events,o=0,o<s.length&&s[o][1].type==="lineEndingBlank"&&(o+=2),o<s.length&&s[o][1].type==="content"))for(;++o<s.length&&s[o][1].type!=="content";)s[o][1].type==="chunkText"&&(s[o][1]._isInFirstContentOfListItem=!0,o++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,BA(c,l)),l=t[l],a=!0);else if(r[1]._container){for(o=l,n=void 0;o--;)if(i=c.get(o),i[1].type==="lineEnding"||i[1].type==="lineEndingBlank")i[0]==="enter"&&(n&&(c.get(n)[1].type="lineEndingBlank"),i[1].type="lineEnding",n=o);else if(i[1].type!=="linePrefix")break;n&&(r[1].end={...c.get(n)[1].start},A=c.slice(n,l),A.unshift(r),c.splice(n,l-n+1,A))}}return ot(e,0,Number.POSITIVE_INFINITY,c.slice(0)),!a}function BA(e,t){const r=e.get(t)[1],n=e.get(t)[2];let o=t-1;const i=[],A=r._tokenizer||n.parser[r.contentType](r.start),s=A.events,a=[],l={};let c,d,u=-1,p=r,g=0,v=0;const h=[v];for(;p;){for(;e.get(++o)[1]!==p;);i.push(o),p._tokenizer||(c=n.sliceStream(p),p.next||c.push(null),d&&A.defineSkip(p.start),p._isInFirstContentOfListItem&&(A._gfmTasklistFirstContentOfListItem=!0),A.write(c),p._isInFirstContentOfListItem&&(A._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=r;++u<s.length;)s[u][0]==="exit"&&s[u-1][0]==="enter"&&s[u][1].type===s[u-1][1].type&&s[u][1].start.line!==s[u][1].end.line&&(v=u+1,h.push(v),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(A.events=[],p?(p._tokenizer=void 0,p.previous=void 0):h.pop(),u=h.length;u--;){const w=s.slice(h[u],h[u+1]),x=i.pop();a.push([x,x+w.length-1]),e.splice(x,2,w)}for(a.reverse(),u=-1;++u<a.length;)l[g+a[u][0]]=g+a[u][1],g+=a[u][1]-a[u][0]-1;return l}const DA={resolve:function(e){return ci(e),e},tokenize:function(e,t){let r;return function(A){return e.enter("content"),r=e.enter("chunkContent",{contentType:"content"}),n(A)};function n(A){return A===null?o(A):X(A)?e.check(IA,i,o)(A):(e.consume(A),n)}function o(A){return e.exit("chunkContent"),e.exit("content"),t(A)}function i(A){return e.consume(A),e.exit("chunkContent"),r.next=e.enter("chunkContent",{contentType:"content",previous:r}),r=r.next,n}}},IA={partial:!0,tokenize:function(e,t,r){const n=this;return function(i){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),de(e,o,"linePrefix")};function o(i){if(i===null||X(i))return r(i);const A=n.events[n.events.length-1];return!n.parser.constructs.disable.null.includes("codeIndented")&&A&&A[1].type==="linePrefix"&&A[2].sliceSerialize(A[1],!0).length>=4?t(i):e.interrupt(n.parser.constructs.flow,r,t)(i)}}};function ui(e,t,r,n,o,i,A,s,a){const l=a||Number.POSITIVE_INFINITY;let c=0;return function(h){return h===60?(e.enter(n),e.enter(o),e.enter(i),e.consume(h),e.exit(i),d):h===null||h===32||h===41||ar(h)?r(h):(e.enter(n),e.enter(A),e.enter(s),e.enter("chunkString",{contentType:"string"}),g(h))};function d(h){return h===62?(e.enter(i),e.consume(h),e.exit(i),e.exit(o),e.exit(n),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),u(h))}function u(h){return h===62?(e.exit("chunkString"),e.exit(s),d(h)):h===null||h===60||X(h)?r(h):(e.consume(h),h===92?p:u)}function p(h){return h===60||h===62||h===92?(e.consume(h),u):u(h)}function g(h){return c||h!==null&&h!==41&&!Me(h)?c<l&&h===40?(e.consume(h),c++,g):h===41?(e.consume(h),c--,g):h===null||h===32||h===40||ar(h)?r(h):(e.consume(h),h===92?v:g):(e.exit("chunkString"),e.exit(s),e.exit(A),e.exit(n),t(h))}function v(h){return h===40||h===41||h===92?(e.consume(h),g):g(h)}}function di(e,t,r,n,o,i){const A=this;let s,a=0;return function(u){return e.enter(n),e.enter(o),e.consume(u),e.exit(o),e.enter(i),l};function l(u){return a>999||u===null||u===91||u===93&&!s||u===94&&!a&&"_hiddenFootnoteSupport"in A.parser.constructs?r(u):u===93?(e.exit(i),e.enter(o),e.consume(u),e.exit(o),e.exit(n),t):X(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),l):(e.enter("chunkString",{contentType:"string"}),c(u))}function c(u){return u===null||u===91||u===93||X(u)||a++>999?(e.exit("chunkString"),l(u)):(e.consume(u),s||(s=!ae(u)),u===92?d:c)}function d(u){return u===91||u===92||u===93?(e.consume(u),a++,c):c(u)}}function pi(e,t,r,n,o,i){let A;return function(d){return d===34||d===39||d===40?(e.enter(n),e.enter(o),e.consume(d),e.exit(o),A=d===40?41:d,s):r(d)};function s(d){return d===A?(e.enter(o),e.consume(d),e.exit(o),e.exit(n),t):(e.enter(i),a(d))}function a(d){return d===A?(e.exit(i),s(A)):d===null?r(d):X(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),de(e,a,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),l(d))}function l(d){return d===A||d===null||X(d)?(e.exit("chunkString"),a(d)):(e.consume(d),d===92?c:l)}function c(d){return d===A||d===92?(e.consume(d),l):l(d)}}function Vt(e,t){let r;return function n(o){return X(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),r=!0,n):ae(o)?de(e,n,r?"linePrefix":"lineSuffix")(o):t(o)}}const TA={name:"definition",tokenize:function(e,t,r){const n=this;let o;return function(d){return e.enter("definition"),function(u){return di.call(n,e,i,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(u)}(d)};function i(d){return o=Mt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)),d===58?(e.enter("definitionMarker"),e.consume(d),e.exit("definitionMarker"),A):r(d)}function A(d){return Me(d)?Vt(e,s)(d):s(d)}function s(d){return ui(e,a,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(d)}function a(d){return e.attempt(QA,l,l)(d)}function l(d){return ae(d)?de(e,c,"whitespace")(d):c(d)}function c(d){return d===null||X(d)?(e.exit("definition"),n.parser.defined.push(o),t(d)):r(d)}}},QA={partial:!0,tokenize:function(e,t,r){return function(A){return Me(A)?Vt(e,n)(A):r(A)};function n(A){return pi(e,o,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(A)}function o(A){return ae(A)?de(e,i,"whitespace")(A):i(A)}function i(A){return A===null||X(A)?t(A):r(A)}}},MA={name:"hardBreakEscape",tokenize:function(e,t,r){return function(o){return e.enter("hardBreakEscape"),e.consume(o),n};function n(o){return X(o)?(e.exit("hardBreakEscape"),t(o)):r(o)}}},OA={name:"headingAtx",resolve:function(e,t){let r,n,o=e.length-2,i=3;return e[i][1].type==="whitespace"&&(i+=2),o-2>i&&e[o][1].type==="whitespace"&&(o-=2),e[o][1].type==="atxHeadingSequence"&&(i===o-1||o-4>i&&e[o-2][1].type==="whitespace")&&(o-=i+1===o?2:4),o>i&&(r={type:"atxHeadingText",start:e[i][1].start,end:e[o][1].end},n={type:"chunkText",start:e[i][1].start,end:e[o][1].end,contentType:"text"},ot(e,i,o-i+1,[["enter",r,t],["enter",n,t],["exit",n,t],["exit",r,t]])),e},tokenize:function(e,t,r){let n=0;return function(a){return e.enter("atxHeading"),function(l){return e.enter("atxHeadingSequence"),o(l)}(a)};function o(a){return a===35&&n++<6?(e.consume(a),o):a===null||Me(a)?(e.exit("atxHeadingSequence"),i(a)):r(a)}function i(a){return a===35?(e.enter("atxHeadingSequence"),A(a)):a===null||X(a)?(e.exit("atxHeading"),t(a)):ae(a)?de(e,i,"whitespace")(a):(e.enter("atxHeadingText"),s(a))}function A(a){return a===35?(e.consume(a),A):(e.exit("atxHeadingSequence"),i(a))}function s(a){return a===null||a===35||Me(a)?(e.exit("atxHeadingText"),i(a)):(e.consume(a),s)}}},_A=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],fi=["pre","script","style","textarea"],NA={concrete:!0,name:"htmlFlow",resolveTo:function(e){let t=e.length;for(;t--&&(e[t][0]!=="enter"||e[t][1].type!=="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e},tokenize:function(e,t,r){const n=this;let o,i,A,s,a;return function(b){return function(W){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(W),l}(b)};function l(b){return b===33?(e.consume(b),c):b===47?(e.consume(b),i=!0,p):b===63?(e.consume(b),o=3,n.interrupt?t:H):it(b)?(e.consume(b),A=String.fromCharCode(b),g):r(b)}function c(b){return b===45?(e.consume(b),o=2,d):b===91?(e.consume(b),o=5,s=0,u):it(b)?(e.consume(b),o=4,n.interrupt?t:H):r(b)}function d(b){return b===45?(e.consume(b),n.interrupt?t:H):r(b)}function u(b){return b==="CDATA[".charCodeAt(s++)?(e.consume(b),s===6?n.interrupt?t:D:u):r(b)}function p(b){return it(b)?(e.consume(b),A=String.fromCharCode(b),g):r(b)}function g(b){if(b===null||b===47||b===62||Me(b)){const W=b===47,Z=A.toLowerCase();return W||i||!fi.includes(Z)?_A.includes(A.toLowerCase())?(o=6,W?(e.consume(b),v):n.interrupt?t(b):D(b)):(o=7,n.interrupt&&!n.parser.lazy[n.now().line]?r(b):i?h(b):w(b)):(o=1,n.interrupt?t(b):D(b))}return b===45||ze(b)?(e.consume(b),A+=String.fromCharCode(b),g):r(b)}function v(b){return b===62?(e.consume(b),n.interrupt?t:D):r(b)}function h(b){return ae(b)?(e.consume(b),h):I(b)}function w(b){return b===47?(e.consume(b),I):b===58||b===95||it(b)?(e.consume(b),x):ae(b)?(e.consume(b),w):I(b)}function x(b){return b===45||b===46||b===58||b===95||ze(b)?(e.consume(b),x):m(b)}function m(b){return b===61?(e.consume(b),k):ae(b)?(e.consume(b),m):w(b)}function k(b){return b===null||b===60||b===61||b===62||b===96?r(b):b===34||b===39?(e.consume(b),a=b,P):ae(b)?(e.consume(b),k):C(b)}function P(b){return b===a?(e.consume(b),a=null,S):b===null||X(b)?r(b):(e.consume(b),P)}function C(b){return b===null||b===34||b===39||b===47||b===60||b===61||b===62||b===96||Me(b)?m(b):(e.consume(b),C)}function S(b){return b===47||b===62||ae(b)?w(b):r(b)}function I(b){return b===62?(e.consume(b),Q):r(b)}function Q(b){return b===null||X(b)?D(b):ae(b)?(e.consume(b),Q):r(b)}function D(b){return b===45&&o===2?(e.consume(b),F):b===60&&o===1?(e.consume(b),M):b===62&&o===4?(e.consume(b),y):b===63&&o===3?(e.consume(b),H):b===93&&o===5?(e.consume(b),N):!X(b)||o!==6&&o!==7?b===null||X(b)?(e.exit("htmlFlowData"),O(b)):(e.consume(b),D):(e.exit("htmlFlowData"),e.check(LA,q,O)(b))}function O(b){return e.check(HA,B,q)(b)}function B(b){return e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),_}function _(b){return b===null||X(b)?O(b):(e.enter("htmlFlowData"),D(b))}function F(b){return b===45?(e.consume(b),H):D(b)}function M(b){return b===47?(e.consume(b),A="",U):D(b)}function U(b){if(b===62){const W=A.toLowerCase();return fi.includes(W)?(e.consume(b),y):D(b)}return it(b)&&A.length<8?(e.consume(b),A+=String.fromCharCode(b),U):D(b)}function N(b){return b===93?(e.consume(b),H):D(b)}function H(b){return b===62?(e.consume(b),y):b===45&&o===2?(e.consume(b),H):D(b)}function y(b){return b===null||X(b)?(e.exit("htmlFlowData"),q(b)):(e.consume(b),y)}function q(b){return e.exit("htmlFlow"),t(b)}}},LA={partial:!0,tokenize:function(e,t,r){return function(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),e.attempt(gn,t,r)}}},HA={partial:!0,tokenize:function(e,t,r){const n=this;return function(i){return X(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),o):r(i)};function o(i){return n.parser.lazy[n.now().line]?r(i):t(i)}}},UA={name:"htmlText",tokenize:function(e,t,r){const n=this;let o,i,A;return function(y){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(y),s};function s(y){return y===33?(e.consume(y),a):y===47?(e.consume(y),k):y===63?(e.consume(y),x):it(y)?(e.consume(y),S):r(y)}function a(y){return y===45?(e.consume(y),l):y===91?(e.consume(y),i=0,p):it(y)?(e.consume(y),w):r(y)}function l(y){return y===45?(e.consume(y),u):r(y)}function c(y){return y===null?r(y):y===45?(e.consume(y),d):X(y)?(A=c,U(y)):(e.consume(y),c)}function d(y){return y===45?(e.consume(y),u):c(y)}function u(y){return y===62?M(y):y===45?d(y):c(y)}function p(y){return y==="CDATA[".charCodeAt(i++)?(e.consume(y),i===6?g:p):r(y)}function g(y){return y===null?r(y):y===93?(e.consume(y),v):X(y)?(A=g,U(y)):(e.consume(y),g)}function v(y){return y===93?(e.consume(y),h):g(y)}function h(y){return y===62?M(y):y===93?(e.consume(y),h):g(y)}function w(y){return y===null||y===62?M(y):X(y)?(A=w,U(y)):(e.consume(y),w)}function x(y){return y===null?r(y):y===63?(e.consume(y),m):X(y)?(A=x,U(y)):(e.consume(y),x)}function m(y){return y===62?M(y):x(y)}function k(y){return it(y)?(e.consume(y),P):r(y)}function P(y){return y===45||ze(y)?(e.consume(y),P):C(y)}function C(y){return X(y)?(A=C,U(y)):ae(y)?(e.consume(y),C):M(y)}function S(y){return y===45||ze(y)?(e.consume(y),S):y===47||y===62||Me(y)?I(y):r(y)}function I(y){return y===47?(e.consume(y),M):y===58||y===95||it(y)?(e.consume(y),Q):X(y)?(A=I,U(y)):ae(y)?(e.consume(y),I):M(y)}function Q(y){return y===45||y===46||y===58||y===95||ze(y)?(e.consume(y),Q):D(y)}function D(y){return y===61?(e.consume(y),O):X(y)?(A=D,U(y)):ae(y)?(e.consume(y),D):I(y)}function O(y){return y===null||y===60||y===61||y===62||y===96?r(y):y===34||y===39?(e.consume(y),o=y,B):X(y)?(A=O,U(y)):ae(y)?(e.consume(y),O):(e.consume(y),_)}function B(y){return y===o?(e.consume(y),o=void 0,F):y===null?r(y):X(y)?(A=B,U(y)):(e.consume(y),B)}function _(y){return y===null||y===34||y===39||y===60||y===61||y===96?r(y):y===47||y===62||Me(y)?I(y):(e.consume(y),_)}function F(y){return y===47||y===62||Me(y)?I(y):r(y)}function M(y){return y===62?(e.consume(y),e.exit("htmlTextData"),e.exit("htmlText"),t):r(y)}function U(y){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),N}function N(y){return ae(y)?de(e,H,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(y):H(y)}function H(y){return e.enter("htmlTextData"),A(y)}}},ur={name:"labelEnd",resolveAll:function(e){let t=-1;const r=[];for(;++t<e.length;){const n=e[t][1];if(r.push(e[t]),n.type==="labelImage"||n.type==="labelLink"||n.type==="labelEnd"){const o=n.type==="labelImage"?4:2;n.type="data",t+=o}}return e.length!==r.length&&ot(e,0,e.length,r),e},resolveTo:function(e,t){let r,n,o,i,A=e.length,s=0;for(;A--;)if(r=e[A][1],n){if(r.type==="link"||r.type==="labelLink"&&r._inactive)break;e[A][0]==="enter"&&r.type==="labelLink"&&(r._inactive=!0)}else if(o){if(e[A][0]==="enter"&&(r.type==="labelImage"||r.type==="labelLink")&&!r._balanced&&(n=A,r.type!=="labelLink")){s=2;break}}else r.type==="labelEnd"&&(o=A);const a={type:e[n][1].type==="labelLink"?"link":"image",start:{...e[n][1].start},end:{...e[e.length-1][1].end}},l={type:"label",start:{...e[n][1].start},end:{...e[o][1].end}},c={type:"labelText",start:{...e[n+s+2][1].end},end:{...e[o-2][1].start}};return i=[["enter",a,t],["enter",l,t]],i=Ve(i,e.slice(n+1,n+s+3)),i=Ve(i,[["enter",c,t]]),i=Ve(i,Ar(t.parser.constructs.insideSpan.null,e.slice(n+s+4,o-3),t)),i=Ve(i,[["exit",c,t],e[o-2],e[o-1],["exit",l,t]]),i=Ve(i,e.slice(o+1)),i=Ve(i,[["exit",a,t]]),ot(e,n,e.length,i),e},tokenize:function(e,t,r){const n=this;let o,i,A=n.events.length;for(;A--;)if((n.events[A][1].type==="labelImage"||n.events[A][1].type==="labelLink")&&!n.events[A][1]._balanced){o=n.events[A][1];break}return function(d){return o?o._inactive?c(d):(i=n.parser.defined.includes(Mt(n.sliceSerialize({start:o.end,end:n.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(d),e.exit("labelMarker"),e.exit("labelEnd"),s):r(d)};function s(d){return d===40?e.attempt(FA,l,i?l:c)(d):d===91?e.attempt(zA,l,i?a:c)(d):i?l(d):c(d)}function a(d){return e.attempt(RA,l,c)(d)}function l(d){return t(d)}function c(d){return o._balanced=!0,r(d)}}},FA={tokenize:function(e,t,r){return function(c){return e.enter("resource"),e.enter("resourceMarker"),e.consume(c),e.exit("resourceMarker"),n};function n(c){return Me(c)?Vt(e,o)(c):o(c)}function o(c){return c===41?l(c):ui(e,i,A,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(c)}function i(c){return Me(c)?Vt(e,s)(c):l(c)}function A(c){return r(c)}function s(c){return c===34||c===39||c===40?pi(e,a,r,"resourceTitle","resourceTitleMarker","resourceTitleString")(c):l(c)}function a(c){return Me(c)?Vt(e,l)(c):l(c)}function l(c){return c===41?(e.enter("resourceMarker"),e.consume(c),e.exit("resourceMarker"),e.exit("resource"),t):r(c)}}},zA={tokenize:function(e,t,r){const n=this;return function(A){return di.call(n,e,o,i,"reference","referenceMarker","referenceString")(A)};function o(A){return n.parser.defined.includes(Mt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)))?t(A):r(A)}function i(A){return r(A)}}},RA={tokenize:function(e,t,r){return function(o){return e.enter("reference"),e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),n};function n(o){return o===93?(e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),e.exit("reference"),t):r(o)}}},jA={name:"labelStartImage",resolveAll:ur.resolveAll,tokenize:function(e,t,r){const n=this;return function(A){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(A),e.exit("labelImageMarker"),o};function o(A){return A===91?(e.enter("labelMarker"),e.consume(A),e.exit("labelMarker"),e.exit("labelImage"),i):r(A)}function i(A){return A===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(A):t(A)}}},qA={name:"labelStartLink",resolveAll:ur.resolveAll,tokenize:function(e,t,r){const n=this;return function(i){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(i),e.exit("labelMarker"),e.exit("labelLink"),o};function o(i){return i===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(i):t(i)}}},dr={name:"lineEnding",tokenize:function(e,t){return function(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),de(e,t,"linePrefix")}}},mn={name:"thematicBreak",tokenize:function(e,t,r){let n,o=0;return function(s){return e.enter("thematicBreak"),function(a){return n=a,i(a)}(s)};function i(s){return s===n?(e.enter("thematicBreakSequence"),A(s)):o>=3&&(s===null||X(s))?(e.exit("thematicBreak"),t(s)):r(s)}function A(s){return s===n?(e.consume(s),o++,A):(e.exit("thematicBreakSequence"),ae(s)?de(e,i,"whitespace")(s):i(s))}}},Oe={continuation:{tokenize:function(e,t,r){const n=this;return n.containerState._closeFlow=void 0,e.check(gn,function(i){return n.containerState.furtherBlankLines=n.containerState.furtherBlankLines||n.containerState.initialBlankLine,de(e,t,"listItemIndent",n.containerState.size+1)(i)},function(i){return n.containerState.furtherBlankLines||!ae(i)?(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,o(i)):(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,e.attempt(YA,t,o)(i))});function o(i){return n.containerState._closeFlow=!0,n.interrupt=void 0,de(e,e.attempt(Oe,t,r),"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(i)}}},exit:function(e){e.exit(this.containerState.type)},name:"list",tokenize:function(e,t,r){const n=this,o=n.events[n.events.length-1];let i=o&&o[1].type==="linePrefix"?o[2].sliceSerialize(o[1],!0).length:0,A=0;return function(u){const p=n.containerState.type||(u===42||u===43||u===45?"listUnordered":"listOrdered");if(p==="listUnordered"?!n.containerState.marker||u===n.containerState.marker:sr(u)){if(n.containerState.type||(n.containerState.type=p,e.enter(p,{_container:!0})),p==="listUnordered")return e.enter("listItemPrefix"),u===42||u===45?e.check(mn,r,a)(u):a(u);if(!n.interrupt||u===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),s(u)}return r(u)};function s(u){return sr(u)&&++A<10?(e.consume(u),s):(!n.interrupt||A<2)&&(n.containerState.marker?u===n.containerState.marker:u===41||u===46)?(e.exit("listItemValue"),a(u)):r(u)}function a(u){return e.enter("listItemMarker"),e.consume(u),e.exit("listItemMarker"),n.containerState.marker=n.containerState.marker||u,e.check(gn,n.interrupt?r:l,e.attempt(GA,d,c))}function l(u){return n.containerState.initialBlankLine=!0,i++,d(u)}function c(u){return ae(u)?(e.enter("listItemPrefixWhitespace"),e.consume(u),e.exit("listItemPrefixWhitespace"),d):r(u)}function d(u){return n.containerState.size=i+n.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(u)}}},GA={partial:!0,tokenize:function(e,t,r){const n=this;return de(e,function(o){const i=n.events[n.events.length-1];return!ae(o)&&i&&i[1].type==="listItemPrefixWhitespace"?t(o):r(o)},"listItemPrefixWhitespace",n.parser.constructs.disable.null.includes("codeIndented")?void 0:5)}},YA={partial:!0,tokenize:function(e,t,r){const n=this;return de(e,function(o){const i=n.events[n.events.length-1];return i&&i[1].type==="listItemIndent"&&i[2].sliceSerialize(i[1],!0).length===n.containerState.size?t(o):r(o)},"listItemIndent",n.containerState.size+1)}},hi={name:"setextUnderline",resolveTo:function(e,t){let r,n,o,i=e.length;for(;i--;)if(e[i][0]==="enter"){if(e[i][1].type==="content"){r=i;break}e[i][1].type==="paragraph"&&(n=i)}else e[i][1].type==="content"&&e.splice(i,1),!o&&e[i][1].type==="definition"&&(o=i);const A={type:"setextHeading",start:{...e[n][1].start},end:{...e[e.length-1][1].end}};return e[n][1].type="setextHeadingText",o?(e.splice(n,0,["enter",A,t]),e.splice(o+1,0,["exit",e[r][1],t]),e[r][1].end={...e[o][1].end}):e[r][1]=A,e.push(["exit",A,t]),e},tokenize:function(e,t,r){const n=this;let o;return function(s){let a,l=n.events.length;for(;l--;)if(n.events[l][1].type!=="lineEnding"&&n.events[l][1].type!=="linePrefix"&&n.events[l][1].type!=="content"){a=n.events[l][1].type==="paragraph";break}return n.parser.lazy[n.now().line]||!n.interrupt&&!a?r(s):(e.enter("setextHeadingLine"),o=s,function(c){return e.enter("setextHeadingLineSequence"),i(c)}(s))};function i(s){return s===o?(e.consume(s),i):(e.exit("setextHeadingLineSequence"),ae(s)?de(e,A,"lineSuffix")(s):A(s))}function A(s){return s===null||X(s)?(e.exit("setextHeadingLine"),t(s)):r(s)}}},WA={tokenize:function(e){const t=this,r=e.attempt(gn,function(o){return o===null?void e.consume(o):(e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),t.currentConstruct=void 0,r)},e.attempt(this.parser.constructs.flowInitial,n,de(e,e.attempt(this.parser.constructs.flow,n,e.attempt(DA,n)),"linePrefix")));return r;function n(o){if(o!==null)return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),t.currentConstruct=void 0,r;e.consume(o)}}},KA={resolveAll:mi()},VA=gi("string"),XA=gi("text");function gi(e){return{resolveAll:mi(e==="text"?JA:void 0),tokenize:function(t){const r=this,n=this.parser.constructs[e],o=t.attempt(n,i,A);return i;function i(l){return a(l)?o(l):A(l)}function A(l){if(l!==null)return t.enter("data"),t.consume(l),s;t.consume(l)}function s(l){return a(l)?(t.exit("data"),o(l)):(t.consume(l),s)}function a(l){if(l===null)return!0;const c=n[l];let d=-1;if(c)for(;++d<c.length;){const u=c[d];if(!u.previous||u.previous.call(r,r.previous))return!0}return!1}}}}function mi(e){return function(t,r){let n,o=-1;for(;++o<=t.length;)n===void 0?t[o]&&t[o][1].type==="data"&&(n=o,o++):(!t[o]||t[o][1].type!=="data")&&(o!==n+2&&(t[n][1].end=t[o-1][1].end,t.splice(n+2,o-n-2),o=n+2),n=void 0);return e?e(t,r):t}}function JA(e,t){let r=0;for(;++r<=e.length;)if((r===e.length||e[r][1].type==="lineEnding")&&e[r-1][1].type==="data"){const n=e[r-1][1],o=t.sliceStream(n);let i,A=o.length,s=-1,a=0;for(;A--;){const l=o[A];if(typeof l=="string"){for(s=l.length;l.charCodeAt(s-1)===32;)a++,s--;if(s)break;s=-1}else if(l===-2)i=!0,a++;else if(l!==-1){A++;break}}if(a){const l={type:r===e.length||i||a<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:A?s:n.start._bufferIndex+s,_index:n.start._index+A,line:n.end.line,column:n.end.column-a,offset:n.end.offset-a},end:{...n.end}};n.end={...l.start},n.start.offset===n.end.offset?Object.assign(n,l):(e.splice(r,0,["enter",l,t],["exit",l,t]),r+=2)}r++}return e}const ZA={42:Oe,43:Oe,45:Oe,48:Oe,49:Oe,50:Oe,51:Oe,52:Oe,53:Oe,54:Oe,55:Oe,56:Oe,57:Oe,62:ii},$A={91:TA},el={[-2]:cr,[-1]:cr,32:cr},tl={35:OA,42:mn,45:[hi,mn],60:NA,61:hi,95:mn,96:li,126:li},nl={38:si,92:ai},rl={[-5]:dr,[-4]:dr,[-3]:dr,33:jA,38:si,42:lr,60:[kA,UA],91:qA,92:[MA,ai],93:ur,95:lr,96:PA},ol={null:[lr,KA]},il=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:$A,disable:{null:[]},document:ZA,flow:tl,flowInitial:el,insideSpan:ol,string:nl,text:rl},Symbol.toStringTag,{value:"Module"}));function al(e,t,r){let n={_bufferIndex:-1,_index:0,line:r&&r.line||1,column:r&&r.column||1,offset:r&&r.offset||0};const o={},i=[];let A=[],s=[];const a={attempt:v(function(x,m){h(x,m.from)}),check:v(g),consume:function(x){X(x)?(n.line++,n.column=1,n.offset+=x===-3?2:1,w()):x!==-1&&(n.column++,n.offset++),n._bufferIndex<0?n._index++:(n._bufferIndex++,n._bufferIndex===A[n._index].length&&(n._bufferIndex=-1,n._index++)),l.previous=x},enter:function(x,m){const k=m||{};return k.type=x,k.start=u(),l.events.push(["enter",k,l]),s.push(k),k},exit:function(x){const m=s.pop();return m.end=u(),l.events.push(["exit",m,l]),m},interrupt:v(g,{interrupt:!0})},l={code:null,containerState:{},defineSkip:function(x){o[x.line]=x.column,w()},events:[],now:u,parser:e,previous:null,sliceSerialize:function(x,m){return function(k,P){let C=-1;const S=[];let I;for(;++C<k.length;){const Q=k[C];let D;if(typeof Q=="string")D=Q;else switch(Q){case-5:D="\r";break;case-4:D=`
|
|
22
|
+
`;break;case-3:D=`\r
|
|
23
|
+
`;break;case-2:D=P?" ":" ";break;case-1:if(!P&&I)continue;D=" ";break;default:D=String.fromCharCode(Q)}I=Q===-2,S.push(D)}return S.join("")}(d(x),m)},sliceStream:d,write:function(x){return A=Ve(A,x),function(){let m;for(;n._index<A.length;){const k=A[n._index];if(typeof k=="string")for(m=n._index,n._bufferIndex<0&&(n._bufferIndex=0);n._index===m&&n._bufferIndex<k.length;)p(k.charCodeAt(n._bufferIndex));else p(k)}}(),A[A.length-1]!==null?[]:(h(t,0),l.events=Ar(i,l.events,l),l.events)}};let c=t.tokenize.call(l,a);return t.resolveAll&&i.push(t),l;function d(x){return function(m,k){const P=k.start._index,C=k.start._bufferIndex,S=k.end._index,I=k.end._bufferIndex;let Q;if(P===S)Q=[m[P].slice(C,I)];else{if(Q=m.slice(P,S),C>-1){const D=Q[0];typeof D=="string"?Q[0]=D.slice(C):Q.shift()}I>0&&Q.push(m[S].slice(0,I))}return Q}(A,x)}function u(){const{_bufferIndex:x,_index:m,line:k,column:P,offset:C}=n;return{_bufferIndex:x,_index:m,line:k,column:P,offset:C}}function p(x){c=c(x)}function g(x,m){m.restore()}function v(x,m){return function(k,P,C){let S,I,Q,D;return Array.isArray(k)?O(k):"tokenize"in k?O([k]):function(M){return U;function U(N){const H=N!==null&&M[N],y=N!==null&&M.null;return O([...Array.isArray(H)?H:H?[H]:[],...Array.isArray(y)?y:y?[y]:[]])(N)}}(k);function O(M){return S=M,I=0,M.length===0?C:B(M[I])}function B(M){return function(U){return D=function(){const N=u(),H=l.previous,y=l.currentConstruct,q=l.events.length,b=Array.from(s);return{from:q,restore:W};function W(){n=N,l.previous=H,l.currentConstruct=y,l.events.length=q,s=b,w()}}(),Q=M,M.partial||(l.currentConstruct=M),M.name&&l.parser.constructs.disable.null.includes(M.name)?F():M.tokenize.call(m?Object.assign(Object.create(l),m):l,a,_,F)(U)}}function _(M){return x(Q,D),P}function F(M){return D.restore(),++I<S.length?B(S[I]):C}}}function h(x,m){x.resolveAll&&!i.includes(x)&&i.push(x),x.resolve&&ot(l.events,m,l.events.length-m,x.resolve(l.events.slice(m),l)),x.resolveTo&&(l.events=x.resolveTo(l.events,l))}function w(){n.line in o&&n.column<2&&(n.column=o[n.line],n.offset+=o[n.line]-1)}}const yi=/[\0\t\n\r]/g,sl=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Al(e,t,r){if(t)return t;if(r.charCodeAt(0)===35){const n=r.charCodeAt(1),o=n===120||n===88;return ti(r.slice(o?2:1),o?16:10)}return ir(r)||e}const bi={}.hasOwnProperty;function ll(e,t,r){return typeof t!="string"&&(r=t,t=void 0),function(n){const o={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(nn),autolinkProtocol:B,autolinkEmail:B,atxHeading:a(Ce),blockQuote:a(ie),characterEscape:B,characterReference:B,codeFenced:a(Ae),codeFencedFenceInfo:l,codeFencedFenceMeta:l,codeIndented:a(Ae,l),codeText:a(le,l),codeTextData:B,data:B,codeFlowValue:B,definition:a(Ee),definitionDestinationString:l,definitionLabelString:l,definitionTitleString:l,emphasis:a(je),hardBreakEscape:a(At),hardBreakTrailing:a(At),htmlFlow:a(kt,l),htmlFlowData:B,htmlText:a(kt,l),htmlTextData:B,image:a(me),label:l,link:a(nn),listItem:a(lt),listItemValue:v,listOrdered:a(qe,g),listUnordered:a(qe),paragraph:a(Ct),reference:Te,referenceString:l,resourceDestinationString:l,resourceTitleString:l,setextHeading:a(Ce),strong:a(pe),thematicBreak:a(be)},exit:{atxHeading:d(),atxHeadingSequence:I,autolink:d(),autolinkEmail:ee,autolinkProtocol:re,blockQuote:d(),characterEscapeValue:_,characterReferenceMarkerHexadecimal:Xe,characterReferenceMarkerNumeric:Xe,characterReferenceValue:z,characterReference:Y,codeFenced:d(m),codeFencedFence:x,codeFencedFenceInfo:h,codeFencedFenceMeta:w,codeFlowValue:_,codeIndented:d(k),codeText:d(H),codeTextData:_,data:_,definition:d(),definitionDestinationString:S,definitionLabelString:P,definitionTitleString:C,emphasis:d(),hardBreakEscape:d(M),hardBreakTrailing:d(M),htmlFlow:d(U),htmlFlowData:_,htmlText:d(N),htmlTextData:_,image:d(q),label:W,labelText:b,lineEnding:F,link:d(y),listItem:d(),listOrdered:d(),listUnordered:d(),paragraph:d(),referenceString:ce,resourceDestinationString:Z,resourceTitleString:J,resource:oe,setextHeading:d(O),setextHeadingLineSequence:D,setextHeadingText:Q,strong:d(),thematicBreak:d()}};vi(o,(n||{}).mdastExtensions||[]);const i={};return A;function A(T){let G={type:"root",children:[]};const R={stack:[G],tokenStack:[],config:o,enter:c,exit:u,buffer:l,resume:p,data:i},ne=[];let K=-1;for(;++K<T.length;)(T[K][1].type==="listOrdered"||T[K][1].type==="listUnordered")&&(T[K][0]==="enter"?ne.push(K):K=s(T,ne.pop(),K));for(K=-1;++K<T.length;){const ye=o[T[K][0]];bi.call(ye,T[K][1].type)&&ye[T[K][1].type].call(Object.assign({sliceSerialize:T[K][2].sliceSerialize},R),T[K][1])}if(R.tokenStack.length>0){const ye=R.tokenStack[R.tokenStack.length-1];(ye[1]||wi).call(R,void 0,ye[0])}for(G.position={start:gt(T.length>0?T[0][1].start:{line:1,column:1,offset:0}),end:gt(T.length>0?T[T.length-2][1].end:{line:1,column:1,offset:0})},K=-1;++K<o.transforms.length;)G=o.transforms[K](G)||G;return G}function s(T,G,R){let ne,K,ye,Je,_e=G-1,Ne=-1,Lt=!1;for(;++_e<=R;){const fe=T[_e];switch(fe[1].type){case"listUnordered":case"listOrdered":case"blockQuote":fe[0]==="enter"?Ne++:Ne--,Je=void 0;break;case"lineEndingBlank":fe[0]==="enter"&&(ne&&!Je&&!Ne&&!ye&&(ye=_e),Je=void 0);break;case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Je=void 0}if(!Ne&&fe[0]==="enter"&&fe[1].type==="listItemPrefix"||Ne===-1&&fe[0]==="exit"&&(fe[1].type==="listUnordered"||fe[1].type==="listOrdered")){if(ne){let Ze=_e;for(K=void 0;Ze--;){const ke=T[Ze];if(ke[1].type==="lineEnding"||ke[1].type==="lineEndingBlank"){if(ke[0]==="exit")continue;K&&(T[K][1].type="lineEndingBlank",Lt=!0),ke[1].type="lineEnding",K=Ze}else if(ke[1].type!=="linePrefix"&&ke[1].type!=="blockQuotePrefix"&&ke[1].type!=="blockQuotePrefixWhitespace"&&ke[1].type!=="blockQuoteMarker"&&ke[1].type!=="listItemIndent")break}ye&&(!K||ye<K)&&(ne._spread=!0),ne.end=Object.assign({},K?T[K][1].start:fe[1].end),T.splice(K||_e,0,["exit",ne,fe[2]]),_e++,R++}if(fe[1].type==="listItemPrefix"){const Ze={type:"listItem",_spread:!1,start:Object.assign({},fe[1].start),end:void 0};ne=Ze,T.splice(_e,0,["enter",Ze,fe[2]]),_e++,R++,ye=void 0,Je=!0}}}return T[G][1]._spread=Lt,R}function a(T,G){return R;function R(ne){c.call(this,T(ne),ne),G&&G.call(this,ne)}}function l(){this.stack.push({type:"fragment",children:[]})}function c(T,G,R){this.stack[this.stack.length-1].children.push(T),this.stack.push(T),this.tokenStack.push([G,R||void 0]),T.position={start:gt(G.start),end:void 0}}function d(T){return G;function G(R){T&&T.call(this,R),u.call(this,R)}}function u(T,G){const R=this.stack.pop(),ne=this.tokenStack.pop();if(!ne)throw new Error("Cannot close `"+T.type+"` ("+Yt({start:T.start,end:T.end})+"): it’s not open");ne[0].type!==T.type&&(G?G.call(this,T,ne[0]):(ne[1]||wi).call(this,T,ne[0])),R.position.end=gt(T.end)}function p(){return function(T){return Jo(T,typeof hn.includeImageAlt!="boolean"||hn.includeImageAlt,typeof hn.includeHtml!="boolean"||hn.includeHtml)}(this.stack.pop())}function g(){this.data.expectingFirstListItemValue=!0}function v(T){this.data.expectingFirstListItemValue&&(this.stack[this.stack.length-2].start=Number.parseInt(this.sliceSerialize(T),10),this.data.expectingFirstListItemValue=void 0)}function h(){const T=this.resume();this.stack[this.stack.length-1].lang=T}function w(){const T=this.resume();this.stack[this.stack.length-1].meta=T}function x(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function m(){const T=this.resume();this.stack[this.stack.length-1].value=T.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function k(){const T=this.resume();this.stack[this.stack.length-1].value=T.replace(/(\r?\n|\r)$/g,"")}function P(T){const G=this.resume(),R=this.stack[this.stack.length-1];R.label=G,R.identifier=Mt(this.sliceSerialize(T)).toLowerCase()}function C(){const T=this.resume();this.stack[this.stack.length-1].title=T}function S(){const T=this.resume();this.stack[this.stack.length-1].url=T}function I(T){const G=this.stack[this.stack.length-1];if(!G.depth){const R=this.sliceSerialize(T).length;G.depth=R}}function Q(){this.data.setextHeadingSlurpLineEnding=!0}function D(T){this.stack[this.stack.length-1].depth=this.sliceSerialize(T).codePointAt(0)===61?1:2}function O(){this.data.setextHeadingSlurpLineEnding=void 0}function B(T){const G=this.stack[this.stack.length-1].children;let R=G[G.length-1];(!R||R.type!=="text")&&(R=ut(),R.position={start:gt(T.start),end:void 0},G.push(R)),this.stack.push(R)}function _(T){const G=this.stack.pop();G.value+=this.sliceSerialize(T),G.position.end=gt(T.end)}function F(T){const G=this.stack[this.stack.length-1];if(this.data.atHardBreak)return G.children[G.children.length-1].position.end=gt(T.end),void(this.data.atHardBreak=void 0);!this.data.setextHeadingSlurpLineEnding&&o.canContainEols.includes(G.type)&&(B.call(this,T),_.call(this,T))}function M(){this.data.atHardBreak=!0}function U(){const T=this.resume();this.stack[this.stack.length-1].value=T}function N(){const T=this.resume();this.stack[this.stack.length-1].value=T}function H(){const T=this.resume();this.stack[this.stack.length-1].value=T}function y(){const T=this.stack[this.stack.length-1];if(this.data.inReference){const G=this.data.referenceType||"shortcut";T.type+="Reference",T.referenceType=G,delete T.url,delete T.title}else delete T.identifier,delete T.label;this.data.referenceType=void 0}function q(){const T=this.stack[this.stack.length-1];if(this.data.inReference){const G=this.data.referenceType||"shortcut";T.type+="Reference",T.referenceType=G,delete T.url,delete T.title}else delete T.identifier,delete T.label;this.data.referenceType=void 0}function b(T){const G=this.sliceSerialize(T),R=this.stack[this.stack.length-2];R.label=function(ne){return ne.replace(sl,Al)}(G),R.identifier=Mt(G).toLowerCase()}function W(){const T=this.stack[this.stack.length-1],G=this.resume(),R=this.stack[this.stack.length-1];if(this.data.inReference=!0,R.type==="link"){const ne=T.children;R.children=ne}else R.alt=G}function Z(){const T=this.resume();this.stack[this.stack.length-1].url=T}function J(){const T=this.resume();this.stack[this.stack.length-1].title=T}function oe(){this.data.inReference=void 0}function Te(){this.data.referenceType="collapsed"}function ce(T){const G=this.resume(),R=this.stack[this.stack.length-1];R.label=G,R.identifier=Mt(this.sliceSerialize(T)).toLowerCase(),this.data.referenceType="full"}function Xe(T){this.data.characterReferenceType=T.type}function z(T){const G=this.sliceSerialize(T),R=this.data.characterReferenceType;let ne;R?(ne=ti(G,R==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):ne=ir(G),this.stack[this.stack.length-1].value+=ne}function Y(T){this.stack.pop().position.end=gt(T.end)}function re(T){_.call(this,T),this.stack[this.stack.length-1].url=this.sliceSerialize(T)}function ee(T){_.call(this,T),this.stack[this.stack.length-1].url="mailto:"+this.sliceSerialize(T)}function ie(){return{type:"blockquote",children:[]}}function Ae(){return{type:"code",lang:null,meta:null,value:""}}function le(){return{type:"inlineCode",value:""}}function Ee(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function je(){return{type:"emphasis",children:[]}}function Ce(){return{type:"heading",depth:0,children:[]}}function At(){return{type:"break"}}function kt(){return{type:"html",value:""}}function me(){return{type:"image",title:null,url:"",alt:null}}function nn(){return{type:"link",title:null,url:"",children:[]}}function qe(T){return{type:"list",ordered:T.type==="listOrdered",start:null,spread:T._spread,children:[]}}function lt(T){return{type:"listItem",spread:T._spread,checked:null,children:[]}}function Ct(){return{type:"paragraph",children:[]}}function pe(){return{type:"strong",children:[]}}function ut(){return{type:"text",value:""}}function be(){return{type:"thematicBreak"}}}(r)(function(n){for(;!ci(n););return n}(function(n){const o={constructs:fA([il,...(n||{}).extensions||[]]),content:i(xA),defined:[],document:i(EA),flow:i(WA),lazy:{},string:i(VA),text:i(XA)};return o;function i(A){return function(s){return al(o,A,s)}}}(r).document().write(function(){let n,o=1,i="",A=!0;return function(s,a,l){const c=[];let d,u,p,g,v;for(s=i+(typeof s=="string"?s.toString():new TextDecoder(a||void 0).decode(s)),p=0,i="",A&&(s.charCodeAt(0)===65279&&p++,A=void 0);p<s.length;){if(yi.lastIndex=p,d=yi.exec(s),g=d&&d.index!==void 0?d.index:s.length,v=s.charCodeAt(g),!d){i=s.slice(p);break}if(v===10&&p===g&&n)c.push(-3),n=void 0;else switch(n&&(c.push(-5),n=void 0),p<g&&(c.push(s.slice(p,g)),o+=g-p),v){case 0:c.push(65533),o++;break;case 9:for(u=4*Math.ceil(o/4),c.push(-2);o++<u;)c.push(-1);break;case 10:c.push(-4),o=1;break;default:n=!0,o=1}p=g+1}return l&&(n&&c.push(-5),i&&c.push(i),c.push(null)),c}}()(e,t,!0))))}function gt(e){return{line:e.line,column:e.column,offset:e.offset}}function vi(e,t){let r=-1;for(;++r<t.length;){const n=t[r];Array.isArray(n)?vi(e,n):cl(e,n)}}function cl(e,t){let r;for(r in t)if(bi.call(t,r))switch(r){case"canContainEols":{const n=t[r];n&&e[r].push(...n);break}case"transforms":{const n=t[r];n&&e[r].push(...n);break}case"enter":case"exit":{const n=t[r];n&&Object.assign(e[r],n);break}}}function wi(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+Yt({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+Yt({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+Yt({start:t.start,end:t.end})+") is still open")}function ul(e){const t=this;t.parser=function(r){return ll(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function xi(e,t){const r=t.referenceType;let n="]";if(r==="collapsed"?n+="[]":r==="full"&&(n+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+n}];const o=e.all(t),i=o[0];i&&i.type==="text"?i.value="["+i.value:o.unshift({type:"text",value:"["});const A=o[o.length-1];return A&&A.type==="text"?A.value+=n:o.push({type:"text",value:n}),o}function Ei(e){return e.spread??e.children.length>1}function dl(e){const t=String(e),r=/\r?\n|\r/g;let n=r.exec(t),o=0;const i=[];for(;n;)i.push(ki(t.slice(o,n.index),o>0,!0),n[0]),o=n.index+n[0].length,n=r.exec(t);return i.push(ki(t.slice(o),o>0,!1)),i.join("")}function ki(e,t,r){let n=0,o=e.length;if(t){let i=e.codePointAt(n);for(;i===9||i===32;)n++,i=e.codePointAt(n)}if(r){let i=e.codePointAt(o-1);for(;i===9||i===32;)o--,i=e.codePointAt(o-1)}return o>n?e.slice(n,o):""}const pl={blockquote:function(e,t){const r={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,r),e.applyData(t,r)},break:function(e,t){const r={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,r),[e.applyData(t,r),{type:"text",value:`
|
|
24
24
|
`}]},code:function(e,t){const r=t.value?t.value+`
|
|
25
|
-
`:"",n={};t.lang&&(n.className=["language-"+t.lang]);let o={type:"element",tagName:"code",properties:n,children:[{type:"text",value:r}]};return t.meta&&(o.data={meta:t.meta}),e.patch(t,o),o=e.applyData(t,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(t,o),o},delete:function(e,t){const r={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},emphasis:function(e,t){const r={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},footnoteReference:function(e,t){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=String(t.identifier).toUpperCase(),o=
|
|
26
|
-
`}),
|
|
27
|
-
`});const
|
|
25
|
+
`:"",n={};t.lang&&(n.className=["language-"+t.lang]);let o={type:"element",tagName:"code",properties:n,children:[{type:"text",value:r}]};return t.meta&&(o.data={meta:t.meta}),e.patch(t,o),o=e.applyData(t,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(t,o),o},delete:function(e,t){const r={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},emphasis:function(e,t){const r={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},footnoteReference:function(e,t){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=String(t.identifier).toUpperCase(),o=Ot(n.toLowerCase()),i=e.footnoteOrder.indexOf(n);let A,s=e.footnoteCounts.get(n);s===void 0?(s=0,e.footnoteOrder.push(n),A=e.footnoteOrder.length):A=i+1,s+=1,e.footnoteCounts.set(n,s);const a={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+o,id:r+"fnref-"+o+(s>1?"-"+s:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(A)}]};e.patch(t,a);const l={type:"element",tagName:"sup",properties:{},children:[a]};return e.patch(t,l),e.applyData(t,l)},heading:function(e,t){const r={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},html:function(e,t){if(e.options.allowDangerousHtml){const r={type:"raw",value:t.value};return e.patch(t,r),e.applyData(t,r)}},imageReference:function(e,t){const r=String(t.identifier).toUpperCase(),n=e.definitionById.get(r);if(!n)return xi(e,t);const o={src:Ot(n.url||""),alt:t.alt};n.title!==null&&n.title!==void 0&&(o.title=n.title);const i={type:"element",tagName:"img",properties:o,children:[]};return e.patch(t,i),e.applyData(t,i)},image:function(e,t){const r={src:Ot(t.url)};t.alt!==null&&t.alt!==void 0&&(r.alt=t.alt),t.title!==null&&t.title!==void 0&&(r.title=t.title);const n={type:"element",tagName:"img",properties:r,children:[]};return e.patch(t,n),e.applyData(t,n)},inlineCode:function(e,t){const r={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,r);const n={type:"element",tagName:"code",properties:{},children:[r]};return e.patch(t,n),e.applyData(t,n)},linkReference:function(e,t){const r=String(t.identifier).toUpperCase(),n=e.definitionById.get(r);if(!n)return xi(e,t);const o={href:Ot(n.url||"")};n.title!==null&&n.title!==void 0&&(o.title=n.title);const i={type:"element",tagName:"a",properties:o,children:e.all(t)};return e.patch(t,i),e.applyData(t,i)},link:function(e,t){const r={href:Ot(t.url)};t.title!==null&&t.title!==void 0&&(r.title=t.title);const n={type:"element",tagName:"a",properties:r,children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},listItem:function(e,t,r){const n=e.all(t),o=r?function(c){let d=!1;if(c.type==="list"){d=c.spread||!1;const u=c.children;let p=-1;for(;!d&&++p<u.length;)d=Ei(u[p])}return d}(r):Ei(t),i={},A=[];if(typeof t.checked=="boolean"){const c=n[0];let d;c&&c.type==="element"&&c.tagName==="p"?d=c:(d={type:"element",tagName:"p",properties:{},children:[]},n.unshift(d)),d.children.length>0&&d.children.unshift({type:"text",value:" "}),d.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),i.className=["task-list-item"]}let s=-1;for(;++s<n.length;){const c=n[s];(o||s!==0||c.type!=="element"||c.tagName!=="p")&&A.push({type:"text",value:`
|
|
26
|
+
`}),c.type!=="element"||c.tagName!=="p"||o?A.push(c):A.push(...c.children)}const a=n[n.length-1];a&&(o||a.type!=="element"||a.tagName!=="p")&&A.push({type:"text",value:`
|
|
27
|
+
`});const l={type:"element",tagName:"li",properties:i,children:A};return e.patch(t,l),e.applyData(t,l)},list:function(e,t){const r={},n=e.all(t);let o=-1;for(typeof t.start=="number"&&t.start!==1&&(r.start=t.start);++o<n.length;){const A=n[o];if(A.type==="element"&&A.tagName==="li"&&A.properties&&Array.isArray(A.properties.className)&&A.properties.className.includes("task-list-item")){r.className=["contains-task-list"];break}}const i={type:"element",tagName:t.ordered?"ol":"ul",properties:r,children:e.wrap(n,!0)};return e.patch(t,i),e.applyData(t,i)},paragraph:function(e,t){const r={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},root:function(e,t){const r={type:"root",children:e.wrap(e.all(t))};return e.patch(t,r),e.applyData(t,r)},strong:function(e,t){const r={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},table:function(e,t){const r=e.all(t),n=r.shift(),o=[];if(n){const A={type:"element",tagName:"thead",properties:{},children:e.wrap([n],!0)};e.patch(t.children[0],A),o.push(A)}if(r.length>0){const A={type:"element",tagName:"tbody",properties:{},children:e.wrap(r,!0)},s=$n(t.children[1]),a=jo(t.children[t.children.length-1]);s&&a&&(A.position={start:s,end:a}),o.push(A)}const i={type:"element",tagName:"table",properties:{},children:e.wrap(o,!0)};return e.patch(t,i),e.applyData(t,i)},tableCell:function(e,t){const r={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},tableRow:function(e,t,r){const n=r?r.children:void 0,o=(n?n.indexOf(t):1)===0?"th":"td",i=r&&r.type==="table"?r.align:void 0,A=i?i.length:t.children.length;let s=-1;const a=[];for(;++s<A;){const c=t.children[s],d={},u=i?i[s]:void 0;u&&(d.align=u);let p={type:"element",tagName:o,properties:d,children:[]};c&&(p.children=e.all(c),e.patch(c,p),p=e.applyData(c,p)),a.push(p)}const l={type:"element",tagName:"tr",properties:{},children:e.wrap(a,!0)};return e.patch(t,l),e.applyData(t,l)},text:function(e,t){const r={type:"text",value:dl(String(t.value))};return e.patch(t,r),e.applyData(t,r)},thematicBreak:function(e,t){const r={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,r),e.applyData(t,r)},toml:yn,yaml:yn,definition:yn,footnoteDefinition:yn};function yn(){}const Ci=typeof self=="object"?self:globalThis,Pi=e=>((t,r)=>{const n=(i,A)=>(t.set(A,i),i),o=i=>{if(t.has(i))return t.get(i);const[A,s]=r[i];switch(A){case 0:case-1:return n(s,i);case 1:{const a=n([],i);for(const l of s)a.push(o(l));return a}case 2:{const a=n({},i);for(const[l,c]of s)a[o(l)]=o(c);return a}case 3:return n(new Date(s),i);case 4:{const{source:a,flags:l}=s;return n(new RegExp(a,l),i)}case 5:{const a=n(new Map,i);for(const[l,c]of s)a.set(o(l),o(c));return a}case 6:{const a=n(new Set,i);for(const l of s)a.add(o(l));return a}case 7:{const{name:a,message:l}=s;return n(new Ci[a](l),i)}case 8:return n(BigInt(s),i);case"BigInt":return n(Object(BigInt(s)),i);case"ArrayBuffer":return n(new Uint8Array(s).buffer,s);case"DataView":{const{buffer:a}=new Uint8Array(s);return n(new DataView(a),s)}}return n(new Ci[A](s),i)};return o})(new Map,e)(0),_t="",{toString:fl}={},{keys:hl}=Object,Xt=e=>{const t=typeof e;if(t!=="object"||!e)return[0,t];const r=fl.call(e).slice(8,-1);switch(r){case"Array":return[1,_t];case"Object":return[2,_t];case"Date":return[3,_t];case"RegExp":return[4,_t];case"Map":return[5,_t];case"Set":return[6,_t];case"DataView":return[1,r]}return r.includes("Array")?[1,r]:r.includes("Error")?[7,r]:[2,r]},bn=([e,t])=>e===0&&(t==="function"||t==="symbol"),Si=(e,{json:t,lossy:r}={})=>{const n=[];return((o,i,A,s)=>{const a=(c,d)=>{const u=s.push(c)-1;return A.set(d,u),u},l=c=>{if(A.has(c))return A.get(c);let[d,u]=Xt(c);switch(d){case 0:{let g=c;switch(u){case"bigint":d=8,g=c.toString();break;case"function":case"symbol":if(o)throw new TypeError("unable to serialize "+u);g=null;break;case"undefined":return a([-1],c)}return a([d,g],c)}case 1:{if(u){let h=c;return u==="DataView"?h=new Uint8Array(c.buffer):u==="ArrayBuffer"&&(h=new Uint8Array(c)),a([u,[...h]],c)}const g=[],v=a([d,g],c);for(const h of c)g.push(l(h));return v}case 2:{if(u)switch(u){case"BigInt":return a([u,c.toString()],c);case"Boolean":case"Number":case"String":return a([u,c.valueOf()],c)}if(i&&"toJSON"in c)return l(c.toJSON());const g=[],v=a([d,g],c);for(const h of hl(c))(o||!bn(Xt(c[h])))&&g.push([l(h),l(c[h])]);return v}case 3:return a([d,c.toISOString()],c);case 4:{const{source:g,flags:v}=c;return a([d,{source:g,flags:v}],c)}case 5:{const g=[],v=a([d,g],c);for(const[h,w]of c)(o||!bn(Xt(h))&&!bn(Xt(w)))&&g.push([l(h),l(w)]);return v}case 6:{const g=[],v=a([d,g],c);for(const h of c)(o||!bn(Xt(h)))&&g.push(l(h));return v}}const{message:p}=c;return a([d,{name:u,message:p}],c)};return l})(!(t||r),!!t,new Map,n)(e),n},vn=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?Pi(Si(e,t)):structuredClone(e):(e,t)=>Pi(Si(e,t));function gl(e,t){const r=[{type:"text",value:"↩"}];return t>1&&r.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),r}function ml(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}const Bi=function(e){if(e==null)return yl;if(typeof e=="function")return wn(e);if(typeof e=="object")return Array.isArray(e)?function(t){const r=[];let n=-1;for(;++n<t.length;)r[n]=Bi(t[n]);return wn(o);function o(...i){let A=-1;for(;++A<r.length;)if(r[A].apply(this,i))return!0;return!1}}(e):function(t){const r=t;return wn(n);function n(o){const i=o;let A;for(A in t)if(i[A]!==r[A])return!1;return!0}}(e);if(typeof e=="string")return function(t){return wn(r);function r(n){return n&&n.type===t}}(e);throw new Error("Expected function, string, or object as test")};function wn(e){return function(t,r,n){return!(!function(o){return o!==null&&typeof o=="object"&&"type"in o}(t)||!e.call(this,t,typeof r=="number"?r:void 0,n||void 0))}}function yl(){return!0}const Di=[],bl=!0,Ii=!1;function vl(e,t,r,n){let o;typeof t=="function"&&typeof r!="function"?(n=r,r=t):o=t;const i=Bi(o),A=n?-1:1;(function s(a,l,c){const d=a&&typeof a=="object"?a:{};if(typeof d.type=="string"){const p=typeof d.tagName=="string"?d.tagName:typeof d.name=="string"?d.name:void 0;Object.defineProperty(u,"name",{value:"node ("+a.type+(p?"<"+p+">":"")+")"})}return u;function u(){let p,g,v,h=Di;if((!t||i(a,l,c[c.length-1]||void 0))&&(h=function(w){return Array.isArray(w)?w:typeof w=="number"?[bl,w]:w==null?Di:[w]}(r(a,c)),h[0]===Ii))return h;if("children"in a&&a.children){const w=a;if(w.children&&h[0]!=="skip")for(g=(n?w.children.length:-1)+A,v=c.concat(w);g>-1&&g<w.children.length;){const x=w.children[g];if(p=s(x,g,v)(),p[0]===Ii)return p;g=typeof p[1]=="number"?p[1]:g+A}}return h}})(e,void 0,[])()}function Ti(e,t,r,n){let o,i,A;typeof t=="function"?(i=void 0,A=t,o=r):(i=t,A=r,o=n),vl(e,i,function(s,a){const l=a[a.length-1],c=l?l.children.indexOf(s):void 0;return A(s,c,l)},o)}const pr={}.hasOwnProperty,wl={};function xl(e,t){const r=t||wl,n=new Map,o=new Map,i=new Map,A={...pl,...r.handlers},s={all:function(a){const l=[];if("children"in a){const c=a.children;let d=-1;for(;++d<c.length;){const u=s.one(c[d],a);if(u){if(d&&c[d-1].type==="break"&&(!Array.isArray(u)&&u.type==="text"&&(u.value=Qi(u.value)),!Array.isArray(u)&&u.type==="element")){const p=u.children[0];p&&p.type==="text"&&(p.value=Qi(p.value))}Array.isArray(u)?l.push(...u):l.push(u)}}}return l},applyData:kl,definitionById:n,footnoteById:o,footnoteCounts:i,footnoteOrder:[],handlers:A,one:function(a,l){const c=a.type,d=s.handlers[c];if(pr.call(s.handlers,c)&&d)return d(s,a,l);if(s.options.passThrough&&s.options.passThrough.includes(c)){if("children"in a){const{children:u,...p}=a,g=vn(p);return g.children=s.all(a),g}return vn(a)}return(s.options.unknownHandler||Cl)(s,a,l)},options:r,patch:El,wrap:Pl};return Ti(e,function(a){if(a.type==="definition"||a.type==="footnoteDefinition"){const l=a.type==="definition"?n:o,c=String(a.identifier).toUpperCase();l.has(c)||l.set(c,a)}}),s}function El(e,t){e.position&&(t.position=function(r){const n=$n(r),o=jo(r);if(n&&o)return{start:n,end:o}}(e))}function kl(e,t){let r=t;if(e&&e.data){const n=e.data.hName,o=e.data.hChildren,i=e.data.hProperties;typeof n=="string"&&(r.type==="element"?r.tagName=n:r={type:"element",tagName:n,properties:{},children:"children"in r?r.children:[r]}),r.type==="element"&&i&&Object.assign(r.properties,vn(i)),"children"in r&&r.children&&o!=null&&(r.children=o)}return r}function Cl(e,t){const r=t.data||{},n=!("value"in t)||pr.call(r,"hProperties")||pr.call(r,"hChildren")?{type:"element",tagName:"div",properties:{},children:e.all(t)}:{type:"text",value:t.value};return e.patch(t,n),e.applyData(t,n)}function Pl(e,t){const r=[];let n=-1;for(t&&r.push({type:"text",value:`
|
|
28
28
|
`});++n<e.length;)n&&r.push({type:"text",value:`
|
|
29
29
|
`}),r.push(e[n]);return t&&e.length>0&&r.push({type:"text",value:`
|
|
30
|
-
`}),r}function
|
|
30
|
+
`}),r}function Qi(e){let t=0,r=e.charCodeAt(t);for(;r===9||r===32;)t++,r=e.charCodeAt(t);return e.slice(t)}function Mi(e,t){const r=xl(e,t),n=r.one(e,void 0),o=function(A){const s=typeof A.options.clobberPrefix=="string"?A.options.clobberPrefix:"user-content-",a=A.options.footnoteBackContent||gl,l=A.options.footnoteBackLabel||ml,c=A.options.footnoteLabel||"Footnotes",d=A.options.footnoteLabelTagName||"h2",u=A.options.footnoteLabelProperties||{className:["sr-only"]},p=[];let g=-1;for(;++g<A.footnoteOrder.length;){const v=A.footnoteById.get(A.footnoteOrder[g]);if(!v)continue;const h=A.all(v),w=String(v.identifier).toUpperCase(),x=Ot(w.toLowerCase());let m=0;const k=[],P=A.footnoteCounts.get(w);for(;P!==void 0&&++m<=P;){k.length>0&&k.push({type:"text",value:" "});let I=typeof a=="string"?a:a(g,m);typeof I=="string"&&(I={type:"text",value:I}),k.push({type:"element",tagName:"a",properties:{href:"#"+s+"fnref-"+x+(m>1?"-"+m:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(g,m),className:["data-footnote-backref"]},children:Array.isArray(I)?I:[I]})}const C=h[h.length-1];if(C&&C.type==="element"&&C.tagName==="p"){const I=C.children[C.children.length-1];I&&I.type==="text"?I.value+=" ":C.children.push({type:"text",value:" "}),C.children.push(...k)}else h.push(...k);const S={type:"element",tagName:"li",properties:{id:s+"fn-"+x},children:A.wrap(h,!0)};A.patch(v,S),p.push(S)}if(p.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:d,properties:{...vn(u),id:"footnote-label"},children:[{type:"text",value:c}]},{type:"text",value:`
|
|
31
31
|
`},{type:"element",tagName:"ol",properties:{},children:A.wrap(p,!0)},{type:"text",value:`
|
|
32
|
-
`}]}}(r),
|
|
33
|
-
`},o),a}function ol(e,t){return e&&"run"in e?async function(r,n){const o=pa(r,{file:n,...t});await e.run(o,n)}:function(r,n){return pa(r,{file:n,...e||t})}}function fa(e){if(e)throw e}var Kn,ha,al=function(){if(ha)return Kn;ha=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,o=function(i){return typeof Array.isArray=="function"?Array.isArray(i):t.call(i)==="[object Array]"},a=function(i){if(!i||t.call(i)!=="[object Object]")return!1;var c,l=e.call(i,"constructor"),d=i.constructor&&i.constructor.prototype&&e.call(i.constructor.prototype,"isPrototypeOf");if(i.constructor&&!l&&!d)return!1;for(c in i);return typeof c>"u"||e.call(i,c)},A=function(i,c){r&&c.name==="__proto__"?r(i,c.name,{enumerable:!0,configurable:!0,value:c.newValue,writable:!0}):i[c.name]=c.newValue},s=function(i,c){if(c==="__proto__"){if(!e.call(i,c))return;if(n)return n(i,c).value}return i[c]};return Kn=function i(){var c,l,d,u,p,f,y=arguments[0],g=1,v=arguments.length,x=!1;for(typeof y=="boolean"&&(x=y,y=arguments[1]||{},g=2),(y==null||typeof y!="object"&&typeof y!="function")&&(y={});g<v;++g)if((c=arguments[g])!=null)for(l in c)d=s(y,l),y!==(u=s(c,l))&&(x&&u&&(a(u)||(p=o(u)))?(p?(p=!1,f=d&&o(d)?d:[]):f=d&&a(d)?d:{},A(y,{name:l,newValue:i(x,f,u)})):typeof u<"u"&&A(y,{name:l,newValue:u}));return y},Kn}();const Jn=bo(al);function Zn(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return!(t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.toStringTag in e||Symbol.iterator in e)}function il(){const e=[],t={run:function(...r){let n=-1;const o=r.pop();if(typeof o!="function")throw new TypeError("Expected function as last argument, not "+o);(function a(A,...s){const i=e[++n];let c=-1;if(A)o(A);else{for(;++c<r.length;)(s[c]===null||s[c]===void 0)&&(s[c]=r[c]);r=s,i?function(l,d){let u;return p;function p(...g){const v=l.length>g.length;let x;v&&g.push(f);try{x=l.apply(this,g)}catch(m){if(v&&u)throw m;return f(m)}v||(x&&x.then&&typeof x.then=="function"?x.then(y,f):x instanceof Error?f(x):y(x))}function f(g,...v){u||(u=!0,d(g,...v))}function y(g){f(null,g)}}(i,a)(...s):o(null,...s)}})(null,...r)},use:function(r){if(typeof r!="function")throw new TypeError("Expected `middelware` to be a function, not "+r);return e.push(r),t}};return t}const qe={basename:function(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Mt(e);let r,n=0,o=-1,a=e.length;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(r){n=a+1;break}}else o<0&&(r=!0,o=a+1);return o<0?"":e.slice(n,o)}if(t===e)return"";let A=-1,s=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(r){n=a+1;break}}else A<0&&(r=!0,A=a+1),s>-1&&(e.codePointAt(a)===t.codePointAt(s--)?s<0&&(o=a):(s=-1,o=A));return n===o?o=A:o<0&&(o=e.length),e.slice(n,o)},dirname:function(e){if(Mt(e),e.length===0)return".";let t,r=-1,n=e.length;for(;--n;)if(e.codePointAt(n)===47){if(t){r=n;break}}else t||(t=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)},extname:function(e){Mt(e);let t,r=e.length,n=-1,o=0,a=-1,A=0;for(;r--;){const s=e.codePointAt(r);if(s!==47)n<0&&(t=!0,n=r+1),s===46?a<0?a=r:A!==1&&(A=1):a>-1&&(A=-1);else if(t){o=r+1;break}}return a<0||n<0||A===0||A===1&&a===n-1&&a===o+1?"":e.slice(a,n)},join:function(...e){let t,r=-1;for(;++r<e.length;)Mt(e[r]),e[r]&&(t=t===void 0?e[r]:t+"/"+e[r]);return t===void 0?".":function(n){Mt(n);const o=n.codePointAt(0)===47;let a=function(A,s){let i,c,l="",d=0,u=-1,p=0,f=-1;for(;++f<=A.length;){if(f<A.length)i=A.codePointAt(f);else{if(i===47)break;i=47}if(i===47){if(u!==f-1&&p!==1)if(u!==f-1&&p===2){if(l.length<2||d!==2||l.codePointAt(l.length-1)!==46||l.codePointAt(l.length-2)!==46){if(l.length>2){if(c=l.lastIndexOf("/"),c!==l.length-1){c<0?(l="",d=0):(l=l.slice(0,c),d=l.length-1-l.lastIndexOf("/")),u=f,p=0;continue}}else if(l.length>0){l="",d=0,u=f,p=0;continue}}s&&(l=l.length>0?l+"/..":"..",d=2)}else l.length>0?l+="/"+A.slice(u+1,f):l=A.slice(u+1,f),d=f-u-1;u=f,p=0}else i===46&&p>-1?p++:p=-1}return l}(n,!o);return a.length===0&&!o&&(a="."),a.length>0&&n.codePointAt(n.length-1)===47&&(a+="/"),o?"/"+a:a}(t)},sep:"/"};function Mt(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const sl={cwd:function(){return"/"}};function $n(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Al(e){if(typeof e=="string")e=new URL(e);else if(!$n(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return function(t){if(t.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=t.pathname;let n=-1;for(;++n<r.length;)if(r.codePointAt(n)===37&&r.codePointAt(n+1)===50){const o=r.codePointAt(n+2);if(o===70||o===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(r)}(e)}const er=["history","path","basename","stem","extname","dirname"];class ga{constructor(t){let r;var n;r=t?$n(t)?{path:t}:typeof t=="string"||(n=t)&&typeof n=="object"&&"byteLength"in n&&"byteOffset"in n?{value:t}:t:{},this.cwd="cwd"in r?"":sl.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let o,a=-1;for(;++a<er.length;){const A=er[a];A in r&&r[A]!==void 0&&r[A]!==null&&(this[A]=A==="history"?[...r[A]]:r[A])}for(o in r)er.includes(o)||(this[o]=r[o])}get basename(){return typeof this.path=="string"?qe.basename(this.path):void 0}set basename(t){nr(t,"basename"),tr(t,"basename"),this.path=qe.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?qe.dirname(this.path):void 0}set dirname(t){ma(this.basename,"dirname"),this.path=qe.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?qe.extname(this.path):void 0}set extname(t){if(tr(t,"extname"),ma(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=qe.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){$n(t)&&(t=Al(t)),nr(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?qe.basename(this.path,this.extname):void 0}set stem(t){nr(t,"stem"),tr(t,"stem"),this.path=qe.join(this.dirname||"",t+(this.extname||""))}fail(t,r,n){const o=this.message(t,r,n);throw o.fatal=!0,o}info(t,r,n){const o=this.message(t,r,n);return o.fatal=void 0,o}message(t,r,n){const o=new ve(t,r,n);return this.path&&(o.name=this.path+":"+o.name,o.file=this.path),o.fatal=!1,this.messages.push(o),o}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function tr(e,t){if(e&&e.includes(qe.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+qe.sep+"`")}function nr(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function ma(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}const ll=function(e){const t=this.constructor.prototype,r=t[e],n=function(){return r.apply(n,arguments)};return Object.setPrototypeOf(n,t),n},cl={}.hasOwnProperty;class rr extends ll{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=il()}copy(){const t=new rr;let r=-1;for(;++r<this.attachers.length;){const n=this.attachers[r];t.use(...n)}return t.data(Jn(!0,{},this.namespace)),t}data(t,r){return typeof t=="string"?arguments.length===2?(ir("data",this.frozen),this.namespace[t]=r,this):cl.call(this.namespace,t)&&this.namespace[t]||void 0:t?(ir("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[r,...n]=this.attachers[this.freezeIndex];if(n[0]===!1)continue;n[0]===!0&&(n[0]=void 0);const o=r.call(t,...n);typeof o=="function"&&this.transformers.use(o)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const r=rn(t),n=this.parser||this.Parser;return or("parse",n),n(String(r),r)}process(t,r){const n=this;return this.freeze(),or("process",this.parser||this.Parser),ar("process",this.compiler||this.Compiler),r?o(void 0,r):new Promise(o);function o(a,A){const s=rn(t),i=n.parse(s);function c(l,d){l||!d?A(l):a?a(d):r(void 0,d)}n.run(i,s,function(l,d,u){if(l||!d||!u)return c(l);const p=d,f=n.stringify(p,u);var y;typeof(y=f)=="string"||function(g){return!!(g&&typeof g=="object"&&"byteLength"in g&&"byteOffset"in g)}(y)?u.value=f:u.result=f,c(l,u)})}}processSync(t){let r,n=!1;return this.freeze(),or("processSync",this.parser||this.Parser),ar("processSync",this.compiler||this.Compiler),this.process(t,function(o,a){n=!0,fa(o),r=a}),ba("processSync","process",n),r}run(t,r,n){ya(t),this.freeze();const o=this.transformers;return!n&&typeof r=="function"&&(n=r,r=void 0),n?a(void 0,n):new Promise(a);function a(A,s){const i=rn(r);o.run(t,i,function(c,l,d){const u=l||t;c?s(c):A?A(u):n(void 0,u,d)})}}runSync(t,r){let n,o=!1;return this.run(t,r,function(a,A){fa(a),n=A,o=!0}),ba("runSync","run",o),n}stringify(t,r){this.freeze();const n=rn(r),o=this.compiler||this.Compiler;return ar("stringify",o),ya(t),o(t,n)}use(t,...r){const n=this.attachers,o=this.namespace;if(ir("use",this.frozen),t!=null)if(typeof t=="function")i(t,r);else{if(typeof t!="object")throw new TypeError("Expected usable value, not `"+t+"`");Array.isArray(t)?s(t):A(t)}return this;function a(c){if(typeof c=="function")i(c,[]);else{if(typeof c!="object")throw new TypeError("Expected usable value, not `"+c+"`");if(Array.isArray(c)){const[l,...d]=c;i(l,d)}else A(c)}}function A(c){if(!("plugins"in c)&&!("settings"in c))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");s(c.plugins),c.settings&&(o.settings=Jn(!0,o.settings,c.settings))}function s(c){let l=-1;if(c!=null){if(!Array.isArray(c))throw new TypeError("Expected a list of plugins, not `"+c+"`");for(;++l<c.length;)a(c[l])}}function i(c,l){let d=-1,u=-1;for(;++d<n.length;)if(n[d][0]===c){u=d;break}if(u===-1)n.push([c,...l]);else if(l.length>0){let[p,...f]=l;const y=n[u][1];Zn(y)&&Zn(p)&&(p=Jn(!0,y,p)),n[u]=[c,p,...f]}}}}const ul=new rr().freeze();function or(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function ar(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function ir(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function ya(e){if(!Zn(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function ba(e,t,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function rn(e){return function(t){return!!(t&&typeof t=="object"&&"message"in t&&"messages"in t)}(e)?e:new ga(e)}const va=[],wa={allowDangerousHtml:!0},dl=/^(https?|ircs?|mailto|xmpp)$/i,pl=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function fl(e){const t=e.allowedElements,r=e.allowElement,n=e.children||"",o=e.className,a=e.components,A=e.disallowedElements,s=e.rehypePlugins||va,i=e.remarkPlugins||va,c=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...wa}:wa,l=e.skipHtml,d=e.unwrapDisallowed,u=e.urlTransform||hl,p=ul().use(RA).use(i).use(ol,c).use(s),f=new ga;typeof n=="string"&&(f.value=n);for(const v of pl)Object.hasOwn(e,v.from)&&(v.from,v.to&&v.to,v.id);const y=p.parse(f);let g=p.runSync(y,f);return o&&(g={type:"element",tagName:"div",properties:{className:o},children:g.type==="root"?g.children:[g]}),ua(g,function(v,x,m){if(v.type==="raw"&&m&&typeof x=="number")return l?m.children.splice(x,1):m.children[x]={type:"text",value:v.value},x;if(v.type==="element"){let E;for(E in Fn)if(Object.hasOwn(Fn,E)&&Object.hasOwn(v.properties,E)){const P=v.properties[E],C=Fn[E];(C===null||C.includes(v.tagName))&&(v.properties[E]=u(String(P||""),E,v))}}if(v.type==="element"){let E=t?!t.includes(v.tagName):!!A&&A.includes(v.tagName);if(!E&&r&&typeof x=="number"&&(E=!r(v,x,m)),E&&m&&typeof x=="number")return d&&v.children?m.children.splice(x,1,...v.children):m.children.splice(x,1),x}}),Fs(g,{Fragment:k.Fragment,components:a,ignoreInvalidStyle:!0,jsx:k.jsx,jsxs:k.jsxs,passKeys:!0,passNode:!0})}function hl(e){const t=e.indexOf(":"),r=e.indexOf("?"),n=e.indexOf("#"),o=e.indexOf("/");return t===-1||o!==-1&&t>o||r!==-1&&t>r||n!==-1&&t>n||dl.test(e.slice(0,t))?e:""}const gl=({children:e})=>k.jsx("div",{style:{whiteSpace:"normal"},children:k.jsx(fl,{components:{p:({...t})=>k.jsx("p",{style:{margin:0,marginBottom:"0.5em",lineHeight:1.4,textAlign:"left"},children:t.children}),ul:({...t})=>k.jsx("ul",{style:{paddingLeft:"clamp(8px, 3.5vw, 16px)",margin:0,listStylePosition:"inside"},children:t.children}),ol:({...t})=>k.jsx("ol",{style:{paddingLeft:"clamp(8px, 3.5vw, 16px)",margin:0,listStylePosition:"inside"},children:t.children}),li:({...t})=>k.jsx("li",{style:{marginBottom:"1px",lineHeight:1.4},children:t.children}),code:({inline:t,children:r})=>t?k.jsx("code",{style:{backgroundColor:"rgba(0, 0, 0, 0.3)",padding:"2px 4px",borderRadius:"4px",fontFamily:"inherit",fontSize:"0.95em"},children:r}):k.jsx("pre",{style:{backgroundColor:"rgba(0, 0, 0, 0.3)",padding:"8px",borderRadius:"4px",overflowX:"auto",margin:"0.5em 0",whiteSpace:"pre-wrap"},children:k.jsx("code",{children:r})}),blockquote:({...t})=>k.jsx("blockquote",{style:{margin:0,paddingLeft:"10px",borderLeft:"2px solid #ccc",color:"#666",fontStyle:"italic"},children:t.children})},children:typeof e=="string"?e:""})}),ml={autoConfig:!0},yl=e=>()=>(t=>{const{getFlow:r}=Vt(),{messages:n,replaceMessages:o}=Pt(),{settings:a}=Jr(),{hasChatHistoryLoaded:A}=$r(),s={...t,...ml},i=s.markdownComponent?s.markdownComponent:gl;h.useEffect(()=>{var d,u;if(A){const p=[...n];for(let f=0;f<p.length&&f<(((d=a.chatHistory)==null?void 0:d.maxEntries)??30);f++){const y=p[f];(u=y.tags)!=null&&u.includes("rcb-markdown-renderer-plugin:parsed")&&(y.contentWrapper=i)}o(p)}},[A]);const c=async d=>{var u;const p=(u=d.data.message)==null?void 0:u.sender.toUpperCase();((f,y,g)=>{var v;if(typeof f.data.message.content!="string"||!f.detail.currPath)return!1;const x=y[f.detail.currPath];return!!x&&(((v=x.renderMarkdown)==null?void 0:v.map(m=>m.toUpperCase()).includes(g))??!1)})(d,r(),p)&&(d.data.message.contentWrapper=i,d.data.message.tags||(d.data.message.tags=[]),d.data.message.tags.push("rcb-markdown-renderer-plugin:parsed"))};Qe(j.PRE_INJECT_MESSAGE,c),Qe(j.CHUNK_STREAM_MESSAGE,c),Qe(j.START_STREAM_MESSAGE,c),Qe(j.START_SIMULATE_STREAM_MESSAGE,c);const l={name:"@rcb-plugins/markdown-renderer"};return s!=null&&s.autoConfig&&(l.settings={event:{rcbPreInjectMessage:!0,rcbChunkStreamMessage:!0,rcbStartSimulateStreamMessage:!0,rcbStartStreamMessage:!0}}),l})(e),on={autoConfig:!0,promptBaseColors:{info:"#007bff",warning:"#ffc107",error:"#dc3545",success:"#28a745"},promptHoveredColors:{info:"#0056b3",warning:"#d39e00",error:"#c82333",success:"#218838"},textAreaHighlightColors:{info:"#007bff",warning:"#ffc107",error:"#dc3545",success:"#28a745"}},xa=(e,t,r="validateTextInput")=>{var n;if((n=e.detail)==null||!n.currPath)return;const o=t[e.detail.currPath];if(!o)return;const a=o[r];return typeof a=="function"?a:void 0},bl=e=>{const{showToast:t}=(()=>{const{showToast:d,dismissToast:u,toasts:p,replaceToasts:f}=pt();return{showToast:d,dismissToast:u,toasts:p,replaceToasts:f}})(),{getFlow:r}=Vt(),{styles:n,updateStyles:o,replaceStyles:a}=(()=>{const{styles:d,replaceStyles:u,updateStyles:p}=Wr();return{styles:d,replaceStyles:u,updateStyles:p}})(),A=(d=>({...on,...d,promptBaseColors:{...on.promptBaseColors},promptHoveredColors:{...on.promptHoveredColors},textAreaHighlightColors:{...on.textAreaHighlightColors}}))(e),[s,i]=h.useState(0),c=h.useRef({});Qe(j.USER_SUBMIT_TEXT,d=>{const u=d,p=xa(u,r(),"validateTextInput");if(!p)return;const f=p(u.data.inputText);if(f!=null&&f.success||d.preventDefault(),!f.promptContent)return;s===0&&(c.current=structuredClone(n));const y=((g,v)=>{const x=g.promptType??"info";let m={};return v.advancedStyles&&(m=v.advancedStyles[x]),v.promptBaseColors&&(m.toastPromptStyle={color:v.promptBaseColors[x],borderColor:v.promptBaseColors[x]}),v.promptHoveredColors&&(m.toastPromptHoveredStyle={color:v.promptHoveredColors[x],borderColor:v.promptHoveredColors[x]}),v.textAreaHighlightColors&&(g.highlightTextArea??!0)&&(m.chatInputAreaStyle={boxShadow:`${v.textAreaHighlightColors[x]} 0px 0px 5px`}),m})(f,A);o(y),t(f.promptContent,f.promptDuration??3e3),i(g=>g+1)}),Qe(j.USER_UPLOAD_FILE,d=>{var u,p;const f=d,y=(p=(u=f.data)==null?void 0:u.files)==null?void 0:p[0];if(!y)return console.error("No file uploaded."),void d.preventDefault();const g=xa(f,r(),"validateFileInput");if(!g)return void console.error("Validator not found for file input.");const v=g(y);if(!v.success)return console.error("Validation failed:",v),v.promptContent&&t(v.promptContent,v.promptDuration??3e3),void d.preventDefault();console.log("Validation successful:",v)}),Qe(j.DISMISS_TOAST,()=>{i(d=>d-1)}),h.useEffect(()=>{s===0&&setTimeout(()=>{a(c.current)})},[s,a]);const l={name:"@rcb-plugins/input-validator"};return A.autoConfig&&(l.settings={event:{rcbUserSubmitText:!0,rcbUserUploadFile:!0,rcbDismissToast:!0}}),l},Ea=h.forwardRef((e,t)=>{let{embedded:r,currentOpen:n,enabled:o,onSetEnabled:a}=e;const A=Pt(),s=(()=>{const{isChatWindowOpen:l,toggleChatWindow:d,toggleIsBotTyping:u,scrollToBottom:p,getIsChatBotVisible:f}=De();return{isChatWindowOpen:l,toggleChatWindow:d,toggleIsBotTyping:u,scrollToBottom:p,getIsChatBotVisible:f}})(),i=h.useRef(!1),c=h.useRef(!1);return h.useEffect(()=>{!r&&s&&s.toggleChatWindow&&(i.current===n||c.current||(setTimeout(()=>{s&&s.toggleChatWindow&&s.toggleChatWindow(n)},0),i.current=n!=null&&n),c.current=!1)},[n,r,s]),h.useEffect(()=>{const l=()=>{c.current=!0};return window.addEventListener("rcb-toggle-chat-window",l),()=>window.removeEventListener("rcb-toggle-chat-window",l)}),h.useImperativeHandle(t,()=>({addMessage:l=>{A&&A.injectMessage&&A.injectMessage(l)},openChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow(!0)},closeChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow(!1)},toggleChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow()},setBotEnabled:l=>{a&&a(l)}}),[A,s,r,a]),null});Ea.displayName="BotController";const ka=h.createContext(null),vl=e=>{let{trackEvent:t,children:r}=e;const n=h.useRef(t);return n.current=t,h.createElement(ka.Provider,{value:{trackEvent:o=>n.current(o)}},r)},Ca=()=>h.useContext(ka)||{trackEvent:()=>{}},Pa=e=>{let{loginUrl:t,className:r="",style:n,isHeaderButton:o=!1}=e;const{trackEvent:a}=Ca(),A=o?{display:"inline-block",padding:"6px 12px",backgroundColor:"transparent",border:"1px solid #ccc",color:"white",textDecoration:"none",borderRadius:"4px",fontWeight:"normal",textAlign:"center",margin:"8px",fontSize:"12px",opacity:.8,transition:"all 0.2s ease"}:{display:"inline-block",padding:"10px 20px",backgroundColor:"white",border:"1px solid var(--primaryColor, #107180)",color:"var(--primaryColor, #107180)",textDecoration:"none",borderRadius:"4px",fontWeight:"bold",textAlign:"center",margin:"18px",boxShadow:"0 2px 4px rgba(0, 0, 0, 0.2)"};return h.createElement(h.Fragment,null,o&&h.createElement("style",null,`
|
|
32
|
+
`}]}}(r),i=Array.isArray(n)?{type:"root",children:n}:n||{type:"root",children:[]};return o&&i.children.push({type:"text",value:`
|
|
33
|
+
`},o),i}function Sl(e,t){return e&&"run"in e?async function(r,n){const o=Mi(r,{file:n,...t});await e.run(o,n)}:function(r,n){return Mi(r,{file:n,...e||t})}}function Oi(e){if(e)throw e}var fr,_i,Bl=function(){if(_i)return fr;_i=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,o=function(a){return typeof Array.isArray=="function"?Array.isArray(a):t.call(a)==="[object Array]"},i=function(a){if(!a||t.call(a)!=="[object Object]")return!1;var l,c=e.call(a,"constructor"),d=a.constructor&&a.constructor.prototype&&e.call(a.constructor.prototype,"isPrototypeOf");if(a.constructor&&!c&&!d)return!1;for(l in a);return typeof l>"u"||e.call(a,l)},A=function(a,l){r&&l.name==="__proto__"?r(a,l.name,{enumerable:!0,configurable:!0,value:l.newValue,writable:!0}):a[l.name]=l.newValue},s=function(a,l){if(l==="__proto__"){if(!e.call(a,l))return;if(n)return n(a,l).value}return a[l]};return fr=function a(){var l,c,d,u,p,g,v=arguments[0],h=1,w=arguments.length,x=!1;for(typeof v=="boolean"&&(x=v,v=arguments[1]||{},h=2),(v==null||typeof v!="object"&&typeof v!="function")&&(v={});h<w;++h)if((l=arguments[h])!=null)for(c in l)d=s(v,c),v!==(u=s(l,c))&&(x&&u&&(i(u)||(p=o(u)))?(p?(p=!1,g=d&&o(d)?d:[]):g=d&&i(d)?d:{},A(v,{name:c,newValue:a(x,g,u)})):typeof u<"u"&&A(v,{name:c,newValue:u}));return v},fr}();const hr=Uo(Bl);function gr(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return!(t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.toStringTag in e||Symbol.iterator in e)}function Dl(){const e=[],t={run:function(...r){let n=-1;const o=r.pop();if(typeof o!="function")throw new TypeError("Expected function as last argument, not "+o);(function i(A,...s){const a=e[++n];let l=-1;if(A)o(A);else{for(;++l<r.length;)(s[l]===null||s[l]===void 0)&&(s[l]=r[l]);r=s,a?function(c,d){let u;return p;function p(...h){const w=c.length>h.length;let x;w&&h.push(g);try{x=c.apply(this,h)}catch(m){if(w&&u)throw m;return g(m)}w||(x&&x.then&&typeof x.then=="function"?x.then(v,g):x instanceof Error?g(x):v(x))}function g(h,...w){u||(u=!0,d(h,...w))}function v(h){g(null,h)}}(a,i)(...s):o(null,...s)}})(null,...r)},use:function(r){if(typeof r!="function")throw new TypeError("Expected `middelware` to be a function, not "+r);return e.push(r),t}};return t}const at={basename:function(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Jt(e);let r,n=0,o=-1,i=e.length;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(r){n=i+1;break}}else o<0&&(r=!0,o=i+1);return o<0?"":e.slice(n,o)}if(t===e)return"";let A=-1,s=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(r){n=i+1;break}}else A<0&&(r=!0,A=i+1),s>-1&&(e.codePointAt(i)===t.codePointAt(s--)?s<0&&(o=i):(s=-1,o=A));return n===o?o=A:o<0&&(o=e.length),e.slice(n,o)},dirname:function(e){if(Jt(e),e.length===0)return".";let t,r=-1,n=e.length;for(;--n;)if(e.codePointAt(n)===47){if(t){r=n;break}}else t||(t=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)},extname:function(e){Jt(e);let t,r=e.length,n=-1,o=0,i=-1,A=0;for(;r--;){const s=e.codePointAt(r);if(s!==47)n<0&&(t=!0,n=r+1),s===46?i<0?i=r:A!==1&&(A=1):i>-1&&(A=-1);else if(t){o=r+1;break}}return i<0||n<0||A===0||A===1&&i===n-1&&i===o+1?"":e.slice(i,n)},join:function(...e){let t,r=-1;for(;++r<e.length;)Jt(e[r]),e[r]&&(t=t===void 0?e[r]:t+"/"+e[r]);return t===void 0?".":function(n){Jt(n);const o=n.codePointAt(0)===47;let i=function(A,s){let a,l,c="",d=0,u=-1,p=0,g=-1;for(;++g<=A.length;){if(g<A.length)a=A.codePointAt(g);else{if(a===47)break;a=47}if(a===47){if(u!==g-1&&p!==1)if(u!==g-1&&p===2){if(c.length<2||d!==2||c.codePointAt(c.length-1)!==46||c.codePointAt(c.length-2)!==46){if(c.length>2){if(l=c.lastIndexOf("/"),l!==c.length-1){l<0?(c="",d=0):(c=c.slice(0,l),d=c.length-1-c.lastIndexOf("/")),u=g,p=0;continue}}else if(c.length>0){c="",d=0,u=g,p=0;continue}}s&&(c=c.length>0?c+"/..":"..",d=2)}else c.length>0?c+="/"+A.slice(u+1,g):c=A.slice(u+1,g),d=g-u-1;u=g,p=0}else a===46&&p>-1?p++:p=-1}return c}(n,!o);return i.length===0&&!o&&(i="."),i.length>0&&n.codePointAt(n.length-1)===47&&(i+="/"),o?"/"+i:i}(t)},sep:"/"};function Jt(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const Il={cwd:function(){return"/"}};function mr(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Tl(e){if(typeof e=="string")e=new URL(e);else if(!mr(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return function(t){if(t.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=t.pathname;let n=-1;for(;++n<r.length;)if(r.codePointAt(n)===37&&r.codePointAt(n+1)===50){const o=r.codePointAt(n+2);if(o===70||o===102){const i=new TypeError("File URL path must not include encoded / characters");throw i.code="ERR_INVALID_FILE_URL_PATH",i}}return decodeURIComponent(r)}(e)}const yr=["history","path","basename","stem","extname","dirname"];class Ni{constructor(t){let r;var n;r=t?mr(t)?{path:t}:typeof t=="string"||(n=t)&&typeof n=="object"&&"byteLength"in n&&"byteOffset"in n?{value:t}:t:{},this.cwd="cwd"in r?"":Il.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let o,i=-1;for(;++i<yr.length;){const A=yr[i];A in r&&r[A]!==void 0&&r[A]!==null&&(this[A]=A==="history"?[...r[A]]:r[A])}for(o in r)yr.includes(o)||(this[o]=r[o])}get basename(){return typeof this.path=="string"?at.basename(this.path):void 0}set basename(t){vr(t,"basename"),br(t,"basename"),this.path=at.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?at.dirname(this.path):void 0}set dirname(t){Li(this.basename,"dirname"),this.path=at.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?at.extname(this.path):void 0}set extname(t){if(br(t,"extname"),Li(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=at.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){mr(t)&&(t=Tl(t)),vr(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?at.basename(this.path,this.extname):void 0}set stem(t){vr(t,"stem"),br(t,"stem"),this.path=at.join(this.dirname||"",t+(this.extname||""))}fail(t,r,n){const o=this.message(t,r,n);throw o.fatal=!0,o}info(t,r,n){const o=this.message(t,r,n);return o.fatal=void 0,o}message(t,r,n){const o=new Ie(t,r,n);return this.path&&(o.name=this.path+":"+o.name,o.file=this.path),o.fatal=!1,this.messages.push(o),o}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function br(e,t){if(e&&e.includes(at.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+at.sep+"`")}function vr(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function Li(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}const Ql=function(e){const t=this.constructor.prototype,r=t[e],n=function(){return r.apply(n,arguments)};return Object.setPrototypeOf(n,t),n},Ml={}.hasOwnProperty;class wr extends Ql{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Dl()}copy(){const t=new wr;let r=-1;for(;++r<this.attachers.length;){const n=this.attachers[r];t.use(...n)}return t.data(hr(!0,{},this.namespace)),t}data(t,r){return typeof t=="string"?arguments.length===2?(kr("data",this.frozen),this.namespace[t]=r,this):Ml.call(this.namespace,t)&&this.namespace[t]||void 0:t?(kr("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[r,...n]=this.attachers[this.freezeIndex];if(n[0]===!1)continue;n[0]===!0&&(n[0]=void 0);const o=r.call(t,...n);typeof o=="function"&&this.transformers.use(o)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const r=xn(t),n=this.parser||this.Parser;return xr("parse",n),n(String(r),r)}process(t,r){const n=this;return this.freeze(),xr("process",this.parser||this.Parser),Er("process",this.compiler||this.Compiler),r?o(void 0,r):new Promise(o);function o(i,A){const s=xn(t),a=n.parse(s);function l(c,d){c||!d?A(c):i?i(d):r(void 0,d)}n.run(a,s,function(c,d,u){if(c||!d||!u)return l(c);const p=d,g=n.stringify(p,u);var v;typeof(v=g)=="string"||function(h){return!!(h&&typeof h=="object"&&"byteLength"in h&&"byteOffset"in h)}(v)?u.value=g:u.result=g,l(c,u)})}}processSync(t){let r,n=!1;return this.freeze(),xr("processSync",this.parser||this.Parser),Er("processSync",this.compiler||this.Compiler),this.process(t,function(o,i){n=!0,Oi(o),r=i}),Ui("processSync","process",n),r}run(t,r,n){Hi(t),this.freeze();const o=this.transformers;return!n&&typeof r=="function"&&(n=r,r=void 0),n?i(void 0,n):new Promise(i);function i(A,s){const a=xn(r);o.run(t,a,function(l,c,d){const u=c||t;l?s(l):A?A(u):n(void 0,u,d)})}}runSync(t,r){let n,o=!1;return this.run(t,r,function(i,A){Oi(i),n=A,o=!0}),Ui("runSync","run",o),n}stringify(t,r){this.freeze();const n=xn(r),o=this.compiler||this.Compiler;return Er("stringify",o),Hi(t),o(t,n)}use(t,...r){const n=this.attachers,o=this.namespace;if(kr("use",this.frozen),t!=null)if(typeof t=="function")a(t,r);else{if(typeof t!="object")throw new TypeError("Expected usable value, not `"+t+"`");Array.isArray(t)?s(t):A(t)}return this;function i(l){if(typeof l=="function")a(l,[]);else{if(typeof l!="object")throw new TypeError("Expected usable value, not `"+l+"`");if(Array.isArray(l)){const[c,...d]=l;a(c,d)}else A(l)}}function A(l){if(!("plugins"in l)&&!("settings"in l))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");s(l.plugins),l.settings&&(o.settings=hr(!0,o.settings,l.settings))}function s(l){let c=-1;if(l!=null){if(!Array.isArray(l))throw new TypeError("Expected a list of plugins, not `"+l+"`");for(;++c<l.length;)i(l[c])}}function a(l,c){let d=-1,u=-1;for(;++d<n.length;)if(n[d][0]===l){u=d;break}if(u===-1)n.push([l,...c]);else if(c.length>0){let[p,...g]=c;const v=n[u][1];gr(v)&&gr(p)&&(p=hr(!0,v,p)),n[u]=[l,p,...g]}}}}const Ol=new wr().freeze();function xr(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Er(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function kr(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Hi(e){if(!gr(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Ui(e,t,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function xn(e){return function(t){return!!(t&&typeof t=="object"&&"message"in t&&"messages"in t)}(e)?e:new Ni(e)}const Fi=[],zi={allowDangerousHtml:!0},_l=/^(https?|ircs?|mailto|xmpp)$/i,Nl=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function Ll(e){const t=e.allowedElements,r=e.allowElement,n=e.children||"",o=e.className,i=e.components,A=e.disallowedElements,s=e.rehypePlugins||Fi,a=e.remarkPlugins||Fi,l=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...zi}:zi,c=e.skipHtml,d=e.unwrapDisallowed,u=e.urlTransform||Hl,p=Ol().use(ul).use(a).use(Sl,l).use(s),g=new Ni;typeof n=="string"&&(g.value=n);for(const w of Nl)Object.hasOwn(e,w.from)&&(w.from,w.to&&w.to,w.id);const v=p.parse(g);let h=p.runSync(v,g);return o&&(h={type:"element",tagName:"div",properties:{className:o},children:h.type==="root"?h.children:[h]}),Ti(h,function(w,x,m){if(w.type==="raw"&&m&&typeof x=="number")return c?m.children.splice(x,1):m.children[x]={type:"text",value:w.value},x;if(w.type==="element"){let k;for(k in or)if(Object.hasOwn(or,k)&&Object.hasOwn(w.properties,k)){const P=w.properties[k],C=or[k];(C===null||C.includes(w.tagName))&&(w.properties[k]=u(String(P||""),k,w))}}if(w.type==="element"){let k=t?!t.includes(w.tagName):!!A&&A.includes(w.tagName);if(!k&&r&&typeof x=="number"&&(k=!r(w,x,m)),k&&m&&typeof x=="number")return d&&w.children?m.children.splice(x,1,...w.children):m.children.splice(x,1),x}}),lA(h,{Fragment:E.Fragment,components:i,ignoreInvalidStyle:!0,jsx:E.jsx,jsxs:E.jsxs,passKeys:!0,passNode:!0})}function Hl(e){const t=e.indexOf(":"),r=e.indexOf("?"),n=e.indexOf("#"),o=e.indexOf("/");return t===-1||o!==-1&&t>o||r!==-1&&t>r||n!==-1&&t>n||_l.test(e.slice(0,t))?e:""}const Ul=({children:e})=>E.jsx("div",{style:{whiteSpace:"normal"},children:E.jsx(Ll,{components:{p:({...t})=>E.jsx("p",{style:{margin:0,marginBottom:"0.5em",lineHeight:1.4,textAlign:"left"},children:t.children}),ul:({...t})=>E.jsx("ul",{style:{paddingLeft:"clamp(8px, 3.5vw, 16px)",margin:0,listStylePosition:"inside"},children:t.children}),ol:({...t})=>E.jsx("ol",{style:{paddingLeft:"clamp(8px, 3.5vw, 16px)",margin:0,listStylePosition:"inside"},children:t.children}),li:({...t})=>E.jsx("li",{style:{marginBottom:"1px",lineHeight:1.4},children:t.children}),code:({inline:t,children:r})=>t?E.jsx("code",{style:{backgroundColor:"rgba(0, 0, 0, 0.3)",padding:"2px 4px",borderRadius:"4px",fontFamily:"inherit",fontSize:"0.95em"},children:r}):E.jsx("pre",{style:{backgroundColor:"rgba(0, 0, 0, 0.3)",padding:"8px",borderRadius:"4px",overflowX:"auto",margin:"0.5em 0",whiteSpace:"pre-wrap"},children:E.jsx("code",{children:r})}),blockquote:({...t})=>E.jsx("blockquote",{style:{margin:0,paddingLeft:"10px",borderLeft:"2px solid #ccc",color:"#666",fontStyle:"italic"},children:t.children})},children:typeof e=="string"?e:""})}),Fl={autoConfig:!0},zl=e=>()=>(t=>{const{getFlow:r}=pn(),{messages:n,replaceMessages:o}=qt(),{settings:i}=yo(),{hasChatHistoryLoaded:A}=vo(),s={...t,...Fl},a=s.markdownComponent?s.markdownComponent:Ul;f.useEffect(()=>{var d,u;if(A){const p=[...n];for(let g=0;g<p.length&&g<(((d=i.chatHistory)==null?void 0:d.maxEntries)??30);g++){const v=p[g];(u=v.tags)!=null&&u.includes("rcb-markdown-renderer-plugin:parsed")&&(v.contentWrapper=a)}o(p)}},[A]);const l=async d=>{var u;const p=(u=d.data.message)==null?void 0:u.sender.toUpperCase();((g,v,h)=>{var w;if(typeof g.data.message.content!="string"||!g.detail.currPath)return!1;const x=v[g.detail.currPath];return!!x&&(((w=x.renderMarkdown)==null?void 0:w.map(m=>m.toUpperCase()).includes(h))??!1)})(d,r(),p)&&(d.data.message.contentWrapper=a,d.data.message.tags||(d.data.message.tags=[]),d.data.message.tags.push("rcb-markdown-renderer-plugin:parsed"))};We(j.PRE_INJECT_MESSAGE,l),We(j.CHUNK_STREAM_MESSAGE,l),We(j.START_STREAM_MESSAGE,l),We(j.START_SIMULATE_STREAM_MESSAGE,l);const c={name:"@rcb-plugins/markdown-renderer"};return s!=null&&s.autoConfig&&(c.settings={event:{rcbPreInjectMessage:!0,rcbChunkStreamMessage:!0,rcbStartSimulateStreamMessage:!0,rcbStartStreamMessage:!0}}),c})(e),En={autoConfig:!0,promptBaseColors:{info:"#007bff",warning:"#ffc107",error:"#dc3545",success:"#28a745"},promptHoveredColors:{info:"#0056b3",warning:"#d39e00",error:"#c82333",success:"#218838"},textAreaHighlightColors:{info:"#007bff",warning:"#ffc107",error:"#dc3545",success:"#28a745"}},Ri=(e,t,r="validateTextInput")=>{var n;if((n=e.detail)==null||!n.currPath)return;const o=t[e.detail.currPath];if(!o)return;const i=o[r];return typeof i=="function"?i:void 0},Rl=e=>{const{showToast:t}=(()=>{const{showToast:d,dismissToast:u,toasts:p,replaceToasts:g}=Bt();return{showToast:d,dismissToast:u,toasts:p,replaceToasts:g}})(),{getFlow:r}=pn(),{styles:n,updateStyles:o,replaceStyles:i}=(()=>{const{styles:d,replaceStyles:u,updateStyles:p}=fo();return{styles:d,replaceStyles:u,updateStyles:p}})(),A=(d=>({...En,...d,promptBaseColors:{...En.promptBaseColors},promptHoveredColors:{...En.promptHoveredColors},textAreaHighlightColors:{...En.textAreaHighlightColors}}))(e),[s,a]=f.useState(0),l=f.useRef({});We(j.USER_SUBMIT_TEXT,d=>{const u=d,p=Ri(u,r(),"validateTextInput");if(!p)return;const g=p(u.data.inputText);if(g!=null&&g.success||d.preventDefault(),!g.promptContent)return;s===0&&(l.current=structuredClone(n));const v=((h,w)=>{const x=h.promptType??"info";let m={};return w.advancedStyles&&(m=w.advancedStyles[x]),w.promptBaseColors&&(m.toastPromptStyle={color:w.promptBaseColors[x],borderColor:w.promptBaseColors[x]}),w.promptHoveredColors&&(m.toastPromptHoveredStyle={color:w.promptHoveredColors[x],borderColor:w.promptHoveredColors[x]}),w.textAreaHighlightColors&&(h.highlightTextArea??!0)&&(m.chatInputAreaStyle={boxShadow:`${w.textAreaHighlightColors[x]} 0px 0px 5px`}),m})(g,A);o(v),t(g.promptContent,g.promptDuration??3e3),a(h=>h+1)}),We(j.USER_UPLOAD_FILE,d=>{var u,p;const g=d,v=(p=(u=g.data)==null?void 0:u.files)==null?void 0:p[0];if(!v)return console.error("No file uploaded."),void d.preventDefault();const h=Ri(g,r(),"validateFileInput");if(!h)return void console.error("Validator not found for file input.");const w=h(v);if(!w.success)return console.error("Validation failed:",w),w.promptContent&&t(w.promptContent,w.promptDuration??3e3),void d.preventDefault();console.log("Validation successful:",w)}),We(j.DISMISS_TOAST,()=>{a(d=>d-1)}),f.useEffect(()=>{s===0&&setTimeout(()=>{i(l.current)})},[s,i]);const c={name:"@rcb-plugins/input-validator"};return A.autoConfig&&(c.settings={event:{rcbUserSubmitText:!0,rcbUserUploadFile:!0,rcbDismissToast:!0}}),c},ji=f.forwardRef((e,t)=>{let{embedded:r,currentOpen:n,enabled:o,onSetEnabled:i}=e;const A=qt(),s=(()=>{const{isChatWindowOpen:c,toggleChatWindow:d,toggleIsBotTyping:u,scrollToBottom:p,getIsChatBotVisible:g}=Ue();return{isChatWindowOpen:c,toggleChatWindow:d,toggleIsBotTyping:u,scrollToBottom:p,getIsChatBotVisible:g}})(),a=f.useRef(!1),l=f.useRef(!1);return f.useEffect(()=>{!r&&s&&s.toggleChatWindow&&(a.current===n||l.current||(setTimeout(()=>{s&&s.toggleChatWindow&&s.toggleChatWindow(n)},0),a.current=n!=null&&n),l.current=!1)},[n,r,s]),f.useEffect(()=>{const c=()=>{l.current=!0};return window.addEventListener("rcb-toggle-chat-window",c),()=>window.removeEventListener("rcb-toggle-chat-window",c)}),f.useImperativeHandle(t,()=>({addMessage:c=>{A&&A.injectMessage&&A.injectMessage(c)},openChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow(!0)},closeChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow(!1)},toggleChat:()=>{!r&&s&&s.toggleChatWindow&&s.toggleChatWindow()},setBotEnabled:c=>{i&&i(c)}}),[A,s,r,i]),null});ji.displayName="BotController";const qi=f.createContext(null),jl=e=>{let{trackEvent:t,children:r}=e;const n=f.useRef(t);return n.current=t,f.createElement(qi.Provider,{value:{trackEvent:o=>n.current(o)}},r)},Gi=()=>f.useContext(qi)||{trackEvent:()=>{}},Yi=e=>{let{loginUrl:t,className:r="",style:n,isHeaderButton:o=!1}=e;const{trackEvent:i}=Gi(),A=o?{display:"inline-block",padding:"6px 12px",backgroundColor:"transparent",border:"1px solid #ccc",color:"white",textDecoration:"none",borderRadius:"4px",fontWeight:"normal",textAlign:"center",margin:"8px",fontSize:"12px",opacity:.8,transition:"all 0.2s ease"}:{display:"inline-block",padding:"10px 20px",backgroundColor:"white",border:"1px solid var(--primaryColor, #107180)",color:"var(--primaryColor, #107180)",textDecoration:"none",borderRadius:"4px",fontWeight:"bold",textAlign:"center",margin:"18px",boxShadow:"0 2px 4px rgba(0, 0, 0, 0.2)"};return f.createElement(f.Fragment,null,o&&f.createElement("style",null,`
|
|
34
34
|
.rcb-chat-header-container .qa-bot-header-login-button:hover {
|
|
35
35
|
background-color: #0000001a !important;
|
|
36
36
|
opacity: 1 !important;
|
|
37
37
|
}
|
|
38
|
-
`),h.createElement("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"qa-bot-login-button ".concat(o?"qa-bot-header-login-button":""," ").concat(r),style:Object.assign(Object.assign({},A),n),onClick:()=>{a({type:"chatbot_login_clicked",loginUrl:t})}},"Log In"))},wl=()=>h.createElement("div",{className:"user-login-icon",style:{alignItems:"center",justifyContent:"center",width:"30px",height:"30px",borderRadius:"50%",backgroundColor:"var(--primaryColor, #1a5b6e)",marginRight:"5px",display:"flex"},role:"img","aria-label":"User logged in",title:"User logged in"},h.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},h.createElement("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),h.createElement("circle",{cx:"12",cy:"7",r:"4"}))),me=[];for(let e=0;e<256;++e)me.push((e+256).toString(16).slice(1));let sr;const xl=new Uint8Array(16);var Sa={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function Da(e,t,r){var o;if(Sa.randomUUID&&!e)return Sa.randomUUID();const n=(e=e||{}).random??((o=e.rng)==null?void 0:o.call(e))??function(){if(!sr){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");sr=crypto.getRandomValues.bind(crypto)}return sr(xl)}();if(n.length<16)throw new Error("Random bytes length must be >= 16");return n[6]=15&n[6]|64,n[8]=63&n[8]|128,function(a,A=0){return(me[a[A+0]]+me[a[A+1]]+me[a[A+2]]+me[a[A+3]]+"-"+me[a[A+4]]+me[a[A+5]]+"-"+me[a[A+6]]+me[a[A+7]]+"-"+me[a[A+8]]+me[a[A+9]]+"-"+me[a[A+10]]+me[a[A+11]]+me[a[A+12]]+me[a[A+13]]+me[a[A+14]]+me[a[A+15]]).toLowerCase()}(n)}function an(){return typeof localStorage<"u"&&localStorage.getItem("QA_BOT_DEBUG")==="true"}const El="background: #1a5b6e; color: white; padding: 2px 6px; border-radius: 3px;",kl="background: #7c3aed; color: white; padding: 2px 6px; border-radius: 3px;",Cl="background: #059669; color: white; padding: 2px 6px; border-radius: 3px;",Pl="background: #f59e0b; color: #000; padding: 2px 6px; border-radius: 3px 0 0 3px; font-weight: bold;",Sl="background: #fbbf24; color: #000; padding: 2px 6px; border-radius: 0 3px 3px 0;",Dl=()=>{an()&&console.log("%c QA Bot Core %c v".concat("0.2.19"," "),Pl,Sl)},sn=function(e){if(an()){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];console.log("%c[Session]%c ".concat(e),El,"",...r)}},Ge=function(e){if(an()){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];console.log("%c[History]%c ".concat(e),kl,"",...r)}},Bl=(e,t)=>{an()&&console.log("%c[Message]%c ".concat(e),Cl,"",t)},Il=function(){console.warn(...arguments)},lt=function(){console.error(...arguments)},Ba="qa_bot_session_messages",Ia=()=>"qa_bot_session_".concat(Da()),Ot=()=>{try{const e=localStorage.getItem(Ba);return e?JSON.parse(e):{}}catch{return{}}},Tl=(e,t,r,n,o)=>{const a=Ot();if(!a[e]&&(a[e]={messages:[],startedAt:new Date().toISOString(),preview:""},Ge("NEW session created",{sessionId:e.slice(-12)})),a[e].messages.some(c=>c.id===t))return void Ge("DUPLICATE message skipped",{sessionId:e.slice(-12),messageId:t.slice(-8),sender:n});const A={id:t,content:r,sender:n,type:o,timestamp:Date.now()};a[e].messages.push(A),Ge("MESSAGE added",{sessionId:e.slice(-12),messageId:t.slice(-8),sender:n,totalInSession:a[e].messages.length});const s=a[e].messages,i=s.find(c=>{var l;return c.sender.toLowerCase()==="bot"&&((l=c.content)===null||l===void 0?void 0:l.trim())&&c.content.length>=100});if(i){const c=i.content;a[e].preview=c.slice(0,50)+(c.length>50?"...":"")}else{const c=s.find(l=>{var d;return l.sender.toLowerCase()==="user"&&((d=l.content)===null||d===void 0?void 0:d.trim())});if(c&&!a[e].preview){const l=c.content;a[e].preview=l.slice(0,50)+(l.length>50?"...":"")}}(c=>{var l;const d=()=>Object.values(c).reduce((u,p)=>u+p.messages.length,0);for(;d()>100&&Object.keys(c).length>1;){const u=(l=Object.entries(c).sort((p,f)=>{let[,y]=p,[,g]=f;return new Date(y.startedAt).getTime()-new Date(g.startedAt).getTime()})[0])===null||l===void 0?void 0:l[0];if(!u)break;delete c[u]}localStorage.setItem(Ba,JSON.stringify(c))})(a),Ge("STORAGE state",{ourSessions:Object.keys(a).length,ourTotalMessages:Object.values(a).reduce((c,l)=>c+l.messages.length,0)})},Ta=e=>{var t,r;return(r=(t=Ot()[e])===null||t===void 0?void 0:t.messages.length)!==null&&r!==void 0?r:0},Ql=e=>{const t=Ot()[e];return t!=null&&t.startedAt?Date.now()-new Date(t.startedAt).getTime():0},Qa=h.createContext(void 0),Ml=e=>{let{children:t,getSessionId:r,setSessionId:n,resetSession:o,clearResettingFlag:a}=e;return h.createElement(Qa.Provider,{value:{getSessionId:r,setSessionId:n,resetSession:o,clearResettingFlag:a}},t)},Ar=()=>{const e=h.useContext(Qa);if(!e)throw new Error("useSession must be used within a SessionProvider");return e},Ol=()=>{const[e,t]=h.useState(!1),[r,n]=h.useState([]),[o,a]=h.useState(null),[A,s]=h.useState(0),i=h.useRef(null),c=h.useRef(null),{replaceMessages:l}=Pt(),{toggleTextAreaDisabled:d}=Zr(),{setSessionId:u,getSessionId:p}=Ar();h.useEffect(()=>{var y,g;const v=m=>{i.current&&!i.current.contains(m.target)&&c.current&&!c.current.contains(m.target)&&t(!1)},x=(g=(y=i.current)===null||y===void 0?void 0:y.getRootNode())!==null&&g!==void 0?g:document;return e&&x.addEventListener("mousedown",v),()=>{x.removeEventListener("mousedown",v)}},[e]);const f=y=>{var g;const v=p();if(Ge("RESTORE requested",{targetSession:y.slice(-12),currentSession:v==null?void 0:v.slice(-12)}),y===v)return Ge("RESTORE skipped - already on this session"),void t(!1);const x=(P=>{var C;return((C=Ot()[P])===null||C===void 0?void 0:C.messages)||[]})(y).filter(P=>{var C;return(C=P.content)===null||C===void 0?void 0:C.trim()});Ge("Stored messages from our localStorage",{count:x.length,ids:x.map(P=>P.id.slice(-8))});const m=x.map(P=>({id:P.id,content:P.content,sender:P.sender.toUpperCase(),type:P.type||"string",timestamp:new Date(P.timestamp).toISOString()}));var E;u(y),Ge("Session ID updated",{newSession:y.slice(-12)}),l(m),Ge("replaceMessages called",{count:m.length}),E=(g=c.current)===null||g===void 0?void 0:g.getRootNode(),setTimeout(()=>{const P=(E||document).querySelector(".rcb-chat-body-container");P&&P.querySelectorAll(".rcb-bot-message").forEach(C=>{var S;let I=C.innerHTML,Q=!1;I.includes("](")&&(I=I.replace(/\[([^\]]+)\]\(([^)]+)\)/g,'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>'),Q=!0),I.includes("<a href=")&&(I=I.replace(/<a\s+href=["']([^"']+)["'][^&]*>([^&]+)<\/a>/gi,'<a href="$1" target="_blank" rel="noopener noreferrer">$2</a>'),Q=!0),(I.includes("<a ")||!((S=C.textContent)===null||S===void 0)&&S.includes("<a href="))&&(C.textContent||"").includes("<a href=")&&(I=I.replace(/<a\s+href="([^"]+)"[^&]*>([^&]+)<\/a>/gi,'<a href="$1" target="_blank" rel="noopener noreferrer">$2</a>'),Q=!0),Q&&(C.innerHTML=I)})},50),d(!1),Ge("Chat input enabled after restore"),t(!1)};return h.createElement("div",{style:{position:"relative"}},h.createElement("button",{ref:c,className:"history-button",onClick:()=>{if(!e&&(n((()=>{const y=Ot();return Object.entries(y).map(g=>{let[v,x]=g;return Object.assign({sessionId:v},x)}).sort((g,v)=>new Date(v.startedAt).getTime()-new Date(g.startedAt).getTime())})()),c.current)){const y=c.current.closest(".rcb-chat-window");if(y){const g=y.getBoundingClientRect(),v=c.current.getBoundingClientRect();a(g.width+3),s(g.right-v.right-18+4)}}t(!e)},style:{alignItems:"center",justifyContent:"center",width:"30px",height:"30px",borderRadius:"50%",backgroundColor:"var(--primaryColor, #1a5b6e)",marginRight:"18px",display:"flex",border:"none",cursor:"pointer",padding:0},"aria-label":"View chat history",title:"View chat history","aria-expanded":e,"aria-haspopup":"menu"},h.createElement("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},h.createElement("circle",{cx:"12",cy:"12",r:"10"}),h.createElement("polyline",{points:"12 6 12 12 16 14"}))),e&&h.createElement("div",{ref:i,role:"menu",style:{position:"absolute",right:A?"-".concat(A,"px"):"-18px",top:"100%",marginTop:"8px",width:o?"".concat(o,"px"):"550px",backgroundColor:"white",borderRadius:0,borderBottom:"3px solid var(--primaryColor, #1a5b6e)",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)",maxHeight:"250px",overflowY:"auto",zIndex:1e3}},r.length===0?h.createElement("div",{style:{padding:"12px 16px",color:"#666",fontSize:"14px",textAlign:"center"}},"No chat history"):r.map(y=>h.createElement("button",{key:y.sessionId,role:"menuitem",onClick:()=>f(y.sessionId),style:{width:"100%",padding:"10px 14px",border:"none",backgroundColor:"transparent",cursor:"pointer",textAlign:"left",display:"flex",flexDirection:"column",gap:"2px",borderBottom:"1px solid #eee"},onMouseEnter:g=>{g.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:g=>{g.currentTarget.style.backgroundColor="transparent"}},h.createElement("span",{style:{fontSize:"14px",color:"#333",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},y.preview||"New conversation"),h.createElement("span",{style:{fontSize:"12px",color:"#888"}},(g=>{const v=new Date(g),x=new Date().getTime()-v.getTime(),m=Math.floor(x/864e5);return m===0?v.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):m===1?"Yesterday":m<7?v.toLocaleDateString([],{weekday:"short"}):v.toLocaleDateString([],{month:"short",day:"numeric"})})(y.startedAt))))))};function lr(){return lr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},lr.apply(null,arguments)}const Ma=({width:e=24,height:t=24,color:r="currentColor",children:n,...o})=>h.createElement("svg",lr({xmlns:"http://www.w3.org/2000/svg",width:e,height:t,viewBox:"0 0 24 24",fill:"none",stroke:r,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},o),n),_l=e=>h.createElement(Ma,e,h.createElement("path",{d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})),Ll=()=>{const{restartFlow:e}=Vt(),{setTextAreaValue:t}=Zr(),{messages:r}=Pt(),{getSessionId:n,resetSession:o,clearResettingFlag:a}=Ar(),{trackEvent:A}=Ca();return h.createElement("button",{onClick:async()=>{const s=n(),i=s?Ta(s):0;A({type:"chatbot_new_chat",previousMessageCount:i}),o(),await t(""),await e(),setTimeout(()=>{a()},100)},tabIndex:0,"aria-label":"New chat conversation",style:{backgroundColor:"var(--primaryColor, #107180)",border:"none",color:"#ffffff",fontSize:"14px",cursor:"pointer",padding:"8px 12px",borderRadius:"4px",transition:"all 0.2s ease",display:"flex",alignItems:"center",gap:"6px",fontWeight:"500"},onMouseEnter:s=>{s.target.style.backgroundColor="var(--secondaryColor, #0d5f6b)"},onMouseLeave:s=>{s.target.style.backgroundColor="var(--primaryColor, #107180)"}},h.createElement(_l,{width:16,height:16}),"New Chat")};function cr(e){if(typeof e=="string")return e;if(typeof e=="number")return String(e);if(!e)return"";if(Array.isArray(e))return e.map(cr).join("");if(typeof e=="object"&&e!==null&&"props"in e){const t=e.props;if(t&&"children"in t)return cr(t.children)}return""}const Nl=()=>{const{getSessionId:e}=Ar(),t=h.useCallback(r=>{var n;const o=(n=r.data)===null||n===void 0?void 0:n.message;if(!(o!=null&&o.id))return;const a=o.sender,A=o.type||"string";let s;if(s=typeof o.content=="string"?o.content:cr(o.content),Bl("TRACKED",{id:o.id,sender:a,content:s.substring(0,50)+(s.length>50?"...":"")}),s.includes("rcb-options-container")||!s.trim())return;const i=e();Tl(i,o.id,s,a,A)},[e]);return h.useEffect(()=>(window.addEventListener("rcb-pre-inject-message",t),()=>{window.removeEventListener("rcb-pre-inject-message",t)}),[t]),null},Hl=()=>(h.useEffect(()=>{const e=A=>{if(!["ArrowDown","ArrowUp","ArrowLeft","ArrowRight","Enter"," ","Home","End"].includes(A.key))return;const s=document.activeElement;if(s&&(s.tagName==="INPUT"||s.tagName==="TEXTAREA"||s.contentEditable==="true"||s.classList.contains("rcb-chat-input-textarea")))return;const i=document.querySelector(".rcb-chat-window");if(!i)return;const c=Array.from(i.querySelectorAll(".rcb-message-container, .rcb-bot-message-container, .rcb-user-message-container")).filter(u=>u.offsetParent!==null);if(c.length>0){const u=c[c.length-1].querySelector(".rcb-checkbox-container");if(u&&u.offsetParent!==null){const p=Array.from(u.querySelectorAll(".rcb-checkbox-row-container")),f=u.querySelector(".rcb-checkbox-next-button");if(p.length>0){const y=[...p];return f&&y.push(f),void((g,v)=>{g.preventDefault();let x=-1;for(let E=0;E<v.length;E++)if(v[E]===document.activeElement||v[E].contains(document.activeElement)){x=E;break}x===-1&&(x=0);let m=x;switch(g.key){case"ArrowDown":case"ArrowRight":m=x<v.length-1?x+1:0;break;case"ArrowUp":case"ArrowLeft":m=x>0?x-1:v.length-1;break;case"Home":m=0;break;case"End":m=v.length-1;break;case"Enter":case" ":{const E=v[x],P=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});return void E.dispatchEvent(P)}default:return}v[m].focus(),v[m].setAttribute("tabindex","0"),v[m].classList.add("keyboard-focused"),v.forEach((E,P)=>{P!==m&&(E.setAttribute("tabindex","-1"),E.classList.remove("keyboard-focused"))})})(A,y)}}}let l=[];if(c.length>0){const u=c[c.length-1],p=Array.from(u.querySelectorAll(".rcb-options-container")).filter(f=>f.offsetParent!==null);if(p.length>0){const f=p[p.length-1];l=Array.from(f.querySelectorAll(".rcb-options"))}}if(l.length===0)return;const d=l.findIndex(u=>u===document.activeElement);switch(A.key){case"ArrowDown":case"ArrowRight":{let u;A.preventDefault(),u=d<l.length-1?d+1:0,l[u].setAttribute("tabindex","0"),l.forEach((p,f)=>{f!==u&&(p.setAttribute("tabindex","-1"),p.classList.remove("keyboard-focused"))}),l[u].classList.add("keyboard-focused"),l[u].focus();break}case"ArrowUp":case"ArrowLeft":{let u;A.preventDefault(),u=d>0?d-1:l.length-1,l[u].setAttribute("tabindex","0"),l.forEach((p,f)=>{f!==u&&(p.setAttribute("tabindex","-1"),p.classList.remove("keyboard-focused"))}),l[u].classList.add("keyboard-focused"),l[u].focus();break}case"Enter":case" ":if(A.preventDefault(),document.activeElement&&l.includes(document.activeElement)){const u=document.activeElement;if(u.classList.contains("rcb-checkbox-row-container")||u.closest(".rcb-checkbox-row-container")){const p=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});u.dispatchEvent(p);const f=u.querySelector(".rcb-checkbox-label"),y=f?f.textContent:u.textContent||"checkbox",g=u.querySelector(".rcb-checkbox-mark"),v=g&&g.style.backgroundColor?"checked":"unchecked";t(`${y} ${v}`)}else{const p=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});u.dispatchEvent(p);const f=u.textContent||u.innerText;t(`Selected: ${f}`)}}break;case"Home":A.preventDefault(),l.length>0&&(l[0].setAttribute("tabindex","0"),l.forEach((u,p)=>{p!==0&&(u.setAttribute("tabindex","-1"),u.classList.remove("keyboard-focused"))}),l[0].classList.add("keyboard-focused"),l[0].focus());break;case"End":if(A.preventDefault(),l.length>0){const u=l.length-1;l[u].setAttribute("tabindex","0"),l.forEach((p,f)=>{f!==u&&(p.setAttribute("tabindex","-1"),p.classList.remove("keyboard-focused"))}),l[u].classList.add("keyboard-focused"),l[u].focus()}}},t=A=>{const s=document.createElement("div");s.setAttribute("aria-live","assertive"),s.setAttribute("aria-atomic","true"),s.className="sr-only",s.textContent=A,document.body.appendChild(s),setTimeout(()=>{document.body.contains(s)&&document.body.removeChild(s)},1e3)},r=(A=null)=>{let s=A;if(s||(s=document.querySelector(".rcb-chat-window"),s||(s=document.querySelector('[class*="rcb-chat"]')),s||(s=document.querySelector(".qa-bot"))),!s)return;const i=s.closest(".embedded-qa-bot")!==null,c=Array.from(s.querySelectorAll(".rcb-message-container, .rcb-bot-message-container, .rcb-user-message-container")).filter(p=>p.offsetParent!==null);if(c.length===0)return;const l=c[c.length-1],d=Array.from(l.querySelectorAll(".rcb-options-container")).filter(p=>p.offsetParent!==null);let u=[];if(d.length>0){const p=d[d.length-1];u=Array.from(p.querySelectorAll(".rcb-options"))}if(u.length===0){let p=l.querySelector(".rcb-checkbox-container");if(!p&&s&&(p=s.querySelector(".rcb-checkbox-container")),p&&p.offsetParent!==null){const f=Array.from(p.querySelectorAll(".rcb-checkbox-row-container")).filter(y=>y.offsetParent!==null&&y.style.display!=="none");if(f.length>0){const y=p.querySelector(".rcb-checkbox-next-button"),g=[...f];if(y&&y.offsetParent!==null&&g.push(y),g.forEach((v,x)=>{v.setAttribute("tabindex",x===0?"0":"-1"),x===0?v.classList.add("keyboard-focused"):v.classList.remove("keyboard-focused")}),f.length>1){p.querySelectorAll(".keyboard-nav-hint").forEach(x=>x.remove());const v=document.createElement("div");v.className="keyboard-nav-hint",v.textContent="Use arrow keys ↕ to navigate, Enter to select/deselect, or click any option",v.style.cssText="font-size: 12px !important; color: #666 !important; margin-bottom: 8px !important; font-style: italic !important; display: block !important;",p.insertBefore(v,p.firstChild)}return void setTimeout(()=>{g[0]&&g[0].offsetParent!==null&&!i&&g[0].focus()},150)}}}if(u.length>0){if(u.forEach((p,f)=>{const y=f===0?"0":"-1";p.setAttribute("tabindex",y),p.setAttribute("role","option"),p.setAttribute("aria-posinset",f+1),p.setAttribute("aria-setsize",u.length),f===0?p.classList.add("keyboard-focused"):p.classList.remove("keyboard-focused")}),u.length>1){const p=d.length>0?d[d.length-1]:null;if(p){p.querySelectorAll(".keyboard-nav-hint").forEach(y=>y.remove());const f=document.createElement("div");f.className="keyboard-nav-hint",f.textContent="Use arrow keys ↕ to navigate, Enter to select, or click any option",f.style.cssText="font-size: 12px !important; color: #666 !important; margin-bottom: 8px !important; font-style: italic !important; display: block !important;",p.insertBefore(f,p.firstChild)}}else{const p=d.length>0?d[d.length-1]:null;p&&p.querySelectorAll(".keyboard-nav-hint").forEach(f=>f.remove())}setTimeout(()=>{u[0]&&u[0].offsetParent!==null&&!i&&(u[0].focus(),u.length>1&&t(`${u.length} options available. Use arrow keys to navigate.`))},200)}},n=A=>{const s=A.querySelectorAll(".rcb-options");s.forEach((i,c)=>{i.hasAttribute("role")||(i.setAttribute("role","button"),i.setAttribute("tabindex",c===0?"0":"-1"),i.setAttribute("aria-posinset",c+1),i.setAttribute("aria-setsize",s.length))}),A.querySelectorAll(".rcb-checkbox-row-container").forEach((i,c)=>{i.hasAttribute("role")||(i.setAttribute("role","checkbox"),i.setAttribute("tabindex",c===0?"0":"-1"))})},o=new MutationObserver(A=>{A.forEach(s=>{var i,c;if(s.type==="childList"){const l=Array.from(s.addedNodes),d=l.some(p=>{var f,y,g,v;return p.nodeType===Node.ELEMENT_NODE&&(((f=p.classList)==null?void 0:f.contains("rcb-options-container"))||((y=p.classList)==null?void 0:y.contains("rcb-options"))||((g=p.querySelector)==null?void 0:g.call(p,".rcb-options-container"))||((v=p.querySelector)==null?void 0:v.call(p,".rcb-options")))}),u=l.some(p=>{var f,y;return p.nodeType===Node.ELEMENT_NODE&&(((f=p.classList)==null?void 0:f.contains("rcb-checkbox-container"))||((y=p.querySelector)==null?void 0:y.call(p,".rcb-checkbox-container")))});if(d||u){let p=s.target;for(;p&&!((i=p.classList)!=null&&i.contains("qa-bot"))&&!((c=p.classList)!=null&&c.contains("rcb-chat-window"));)p=p.parentElement;const f=p||document;n(f),f.querySelectorAll(".rcb-options[tabindex], .rcb-checkbox-row-container[tabindex], .rcb-checkbox-next-button[tabindex]").forEach(y=>{y.setAttribute("tabindex","-1"),y.classList.remove("keyboard-focused")}),setTimeout(()=>r(p),100)}}})});o.observe(document.body,{childList:!0,subtree:!0}),document.addEventListener("keydown",e),n(document),r();const a=setInterval(()=>{document.querySelectorAll(".qa-bot").forEach(A=>{const s=A.querySelectorAll(".rcb-options-container .rcb-options").length>0,i=A.querySelectorAll(".rcb-checkbox-row-container").length>0;if(s){n(A);const c=A.querySelectorAll(".rcb-options[tabindex]").length;A.querySelectorAll(".rcb-options").length>c&&r(A)}if(i){n(A);const c=A.querySelectorAll(".rcb-checkbox-row-container[tabindex]").length;A.querySelectorAll(".rcb-checkbox-row-container").length>c&&r(A)}})},1e3);return()=>{document.removeEventListener("keydown",e),o.disconnect(),clearInterval(a)}},[]),null),Ul="#1a5b6e",Fl="#107180",zl="Arial, sans-serif",Oa="Q&A Bot",Rl="/chat-icon.svg",jl="Type your question here...",ql="Select an option to continue",Gl=!1,Yl="Ask me a question!",_a="/login",Wl={general:{showHeader:!0,showFooter:!0},tooltip:{mode:"CLOSE"},chatInput:{disabled:!1,characterLimit:1e3,showCharacterCount:!1,allowNewline:!0,blockSpam:!1},chatWindow:{defaultOpen:!1,showScrollbar:!1},botBubble:{simulateStream:!0,streamSpeed:10,showAvatar:!1},userBubble:{showAvatar:!1},notification:{disabled:!0,showCount:!1},audio:{disabled:!0},emoji:{disabled:!0},fileAttachment:{disabled:!0}},ur=h.forwardRef((e,t)=>{var r,n;const{apiKey:o,qaEndpoint:a,ratingEndpoint:A,welcomeMessage:s,open:i,onOpenChange:c,isLoggedIn:l,allowAnonAccess:d=!1,actingUser:u,primaryColor:p,secondaryColor:f,botName:y,logo:g,placeholder:v,errorMessage:x,embedded:m,footerText:E,footerLink:P,tooltipText:C,loginUrl:S,customFlow:I,onAnalyticsEvent:Q}=e,B=h.useRef("bot_".concat(Math.random().toString(36).substr(2,9)));h.useEffect(()=>{Dl()},[]);const O=h.useRef(null);O.current===null&&(O.current=Ia(),sn("CREATED",O.current));const D=h.useRef(!1),M=h.useRef({getSessionId:()=>O.current,isResetting:()=>D.current}),[U,L]=h.useState(l);h.useEffect(()=>{L(l)},[l]);const F=m!==void 0?m:Gl,_=h.useCallback(R=>{var z;Q&&Q(Object.assign(Object.assign({},R),{timestamp:Date.now(),sessionId:(z=O.current)!==null&&z!==void 0?z:void 0,pageUrl:typeof window<"u"?window.location.href:void 0,isEmbedded:F}))},[Q,F]),H=h.useMemo(()=>{const R=Object.assign({},Wl);R.general=Object.assign(Object.assign({},R.general),{primaryColor:p||Ul,secondaryColor:f||Fl,fontFamily:zl,embedded:F});const z=U===!1?[h.createElement(Pa,{key:"login-button",loginUrl:S||_a,isHeaderButton:!0})]:[h.createElement(Ol,{key:"history-button"}),h.createElement(wl,{key:"user-icon"})];R.header={title:h.createElement("span",{style:{fontSize:14,fontWeight:500}},y||Oa),showAvatar:!0,avatar:g||Rl,buttons:[...z,ue.CLOSE_CHAT_BUTTON]},R.chatInput=Object.assign(Object.assign({},R.chatInput),{disabled:!1,enabledPlaceholderText:v||jl,disabledPlaceholderText:x||ql}),R.tooltip=Object.assign(Object.assign({},R.tooltip),{text:C||Yl});const q=E?P?h.createElement("a",{href:P,target:"_blank",rel:"noopener noreferrer",key:"footer-link"},E):h.createElement("span",{key:"footer-text"},E):null;return R.footer={text:q,buttons:[h.createElement(Ll,{key:"new-chat-button"})]},R.chatWindow=Object.assign(Object.assign({},R.chatWindow),{defaultOpen:!!F}),R.event={rcbPreInjectMessage:!0,rcbPostInjectMessage:!0,rcbUserSubmitText:!0,rcbChangePath:!0,rcbToggleChatWindow:!0},R},[p,f,y,g,v,x,F,C,U,S,E,P]),b=h.useRef(null),X=function(R){let z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return h.useMemo(()=>{const q=(Z,J)=>{if(R.current){const ae=getComputedStyle(R.current).getPropertyValue(Z);if(ae&&ae.trim()!=="")return ae.trim();if(R.current.parentElement){const re=getComputedStyle(R.current.parentElement).getPropertyValue(Z);if(re&&re.trim()!=="")return re.trim()}}return J};return{primaryColor:q("--primaryColor",z.primaryColor),secondaryColor:q("--secondaryColor",z.secondaryColor),fontFamily:q("--fontFamily",z.fontFamily)}},[R,z])}(b,H.general);((R,z)=>{h.useEffect(()=>{z.current&&(R?z.current.classList.add("bot-logged-in"):z.current.classList.remove("bot-logged-in"))},[R,z])})(U!==!1,b),(R=>{let{settings:z,themeColors:q}=R;h.useEffect(()=>{q&&(Object.entries(q).forEach(Z=>{let[J,ae]=Z;ae&&document.documentElement.style.setProperty("--".concat(J),ae)}),q.primaryColor&&document.documentElement.style.setProperty("--rcb-header-background",q.primaryColor),q.secondaryColor&&document.documentElement.style.setProperty("--rcb-header-background-hover",q.secondaryColor))},[q]),h.useEffect(()=>{var Z,J;!((Z=z.header)===null||Z===void 0)&&Z.title&&typeof z.header.title=="string"&&(z.header.title=h.createElement("div",{key:"header-title"},h.createElement("h1",{className:"sr-only"},z.header.title),h.createElement("span",{"aria-hidden":"true"},z.header.title))),z.device={desktopEnabled:!0,mobileEnabled:!0,applyMobileOptimizations:!1},z.chatHistory={disabled:!0},z.chatButton=Object.assign(Object.assign({},z.chatButton),{icon:(J=z.header)===null||J===void 0?void 0:J.avatar}),z.event=Object.assign(Object.assign({},z.event),{rcbToggleChatWindow:!0})},[z])})({settings:H,themeColors:X});const w=h.useMemo(()=>{const R=(q=>{let{endpoint:Z,ratingEndpoint:J,apiKey:ae,sessionId:re,isResetting:le=()=>!1,isLoggedIn:we,allowAnonAccess:Ye=!1,loginUrl:ut="/login",trackEvent:xe}=q;if(we===!1&&!Ye)return xe==null||xe({type:"chatbot_login_prompt_shown"}),{qa_loop:{message:"To ask questions, please log in first.",component:h.createElement(Pa,{loginUrl:ut}),chatDisabled:!0,path:"qa_loop"}};let Ne=null,xt=!1;if(!Z)throw new Error("Q&A endpoint is required");return{qa_loop:{message:async ot=>{const{userInput:We}=ot;if(le&&le()||!We||We.trim()==="")return null;if(We==="👍 Helpful"||We==="👎 Not helpful"){if(J&&Ne)try{const ge=We==="👍 Helpful",_e={"Content-Type":"application/json"};ae&&(_e["X-API-KEY"]=ae);const Ve=re();Ve&&(_e["X-Session-ID"]=Ve,_e["X-Query-ID"]=Ne),await fetch(J,{method:"POST",headers:_e,credentials:"include",body:JSON.stringify({sessionId:Ve,queryId:Ne,rating:ge?1:0})}),xe==null||xe({type:"chatbot_rating_sent",queryId:Ne,rating:ge?"helpful":"not_helpful"})}catch(ge){lt("Error sending feedback:",ge)}return"Thanks for the feedback! Feel free to ask another question."}try{const ge=Da();Ne=ge,xe==null||xe({type:"chatbot_question_sent",queryId:ge,questionLength:We.length});const _e={"Content-Type":"application/json"};ae&&(_e["X-API-KEY"]=ae);const Ve=re();Ve&&(_e["X-Session-ID"]=Ve,_e["X-Query-ID"]=ge);const dn={query:We,session_id:Ve,question_id:ge};sn("SENT to API",{session_id:Ve,question_id:ge});const pn=Date.now(),Nt=await fetch(Z,{method:"POST",headers:_e,credentials:"include",body:JSON.stringify(dn)}),yr=Date.now()-pn;if(!Nt.ok)throw new Error("API returned ".concat(Nt.status));const dt=await Nt.json(),Ht=dt.response||dt.answer||dt.text||dt.message;if(!Ht)throw new Error("Invalid response format from API");const fn=(Y=>{if(!Y||typeof Y!="string")return Y;let te=Y.replace(/\[(https?:\/\/[^\s]+?)\]/gi,"[$1]($1)");return te=te.replace(new RegExp(`(?<!\\]\\(|href=["']|\\[)https?:\\/\\/[^\\s[\\]()]+`,"gi"),ne=>{let de=ne,Ce="";const He=de.match(/([.,;:!?]+)$/);return He&&(Ce=He[1],de=de.slice(0,-Ce.length)),"[".concat(de,"](").concat(de,")").concat(Ce)}),te})(Ht),T=function(Y){const{confidence:te,tools_used:ne,metadata:de}=Y;if(!(te||ne&&ne.length!==0))return"";const Ce=[];return te&&Ce.push("• Confidence: ".concat(te)),ne&&ne.length>0&&Ce.push("• Tools used: ".concat(ne.join(", "))),de!=null&&de.agent&&Ce.push("• Agent: ".concat(de.agent)),`---
|
|
39
|
-
`.concat(
|
|
40
|
-
`))}(
|
|
38
|
+
`),f.createElement("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"qa-bot-login-button ".concat(o?"qa-bot-header-login-button":""," ").concat(r),style:Object.assign(Object.assign({},A),n),onClick:()=>{i({type:"chatbot_login_clicked",loginUrl:t})}},"Log In"))},ql=()=>f.createElement("div",{className:"user-login-icon",style:{alignItems:"center",justifyContent:"center",width:"30px",height:"30px",borderRadius:"50%",backgroundColor:"var(--primaryColor, #1a5b6e)",marginRight:"5px",display:"flex"},role:"img","aria-label":"User logged in",title:"User logged in"},f.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},f.createElement("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),f.createElement("circle",{cx:"12",cy:"7",r:"4"}))),Pe=[];for(let e=0;e<256;++e)Pe.push((e+256).toString(16).slice(1));let Cr;const Gl=new Uint8Array(16);var Wi={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function Ki(e,t,r){var o;if(Wi.randomUUID&&!e)return Wi.randomUUID();const n=(e=e||{}).random??((o=e.rng)==null?void 0:o.call(e))??function(){if(!Cr){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Cr=crypto.getRandomValues.bind(crypto)}return Cr(Gl)}();if(n.length<16)throw new Error("Random bytes length must be >= 16");return n[6]=15&n[6]|64,n[8]=63&n[8]|128,function(i,A=0){return(Pe[i[A+0]]+Pe[i[A+1]]+Pe[i[A+2]]+Pe[i[A+3]]+"-"+Pe[i[A+4]]+Pe[i[A+5]]+"-"+Pe[i[A+6]]+Pe[i[A+7]]+"-"+Pe[i[A+8]]+Pe[i[A+9]]+"-"+Pe[i[A+10]]+Pe[i[A+11]]+Pe[i[A+12]]+Pe[i[A+13]]+Pe[i[A+14]]+Pe[i[A+15]]).toLowerCase()}(n)}function xt(){return typeof localStorage<"u"&&localStorage.getItem("QA_BOT_DEBUG")==="true"}const Yl="background: #1a5b6e; color: white; padding: 2px 6px; border-radius: 3px;",Wl="background: #7c3aed; color: white; padding: 2px 6px; border-radius: 3px;",Kl="background: #059669; color: white; padding: 2px 6px; border-radius: 3px;",Vl="background: #f97316; color: white; padding: 2px 6px; border-radius: 3px;",Xl="background: #f59e0b; color: #000; padding: 2px 6px; border-radius: 3px 0 0 3px; font-weight: bold;",Jl="background: #fbbf24; color: #000; padding: 2px 6px; border-radius: 0 3px 3px 0;",Zl=()=>{xt()&&console.log("%c QA Bot Core %c v".concat("0.2.31"," "),Xl,Jl)},kn=function(e){if(xt()){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];console.log("%c[Session]%c ".concat(e),Yl,"",...r)}},st=function(e){if(xt()){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];console.log("%c[History]%c ".concat(e),Wl,"",...r)}},$l=(e,t)=>{xt()&&console.log("%c[Message]%c ".concat(e),Kl,"",t)},Cn=function(e){if(xt()){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];console.log("%c[Turnstile]%c ".concat(e),Vl,"",...r)}},Pr=function(){console.warn(...arguments)},Se=function(){console.error(...arguments)},Vi="qa_bot_session_messages",Xi=()=>"qa_bot_session_".concat(Ki()),Zt=()=>{try{const e=localStorage.getItem(Vi);return e?JSON.parse(e):{}}catch{return{}}},ec=(e,t,r,n,o)=>{const i=Zt();if(!i[e]&&(i[e]={messages:[],startedAt:new Date().toISOString(),preview:""},st("NEW session created",{sessionId:e.slice(-12)})),i[e].messages.some(l=>l.id===t))return void st("DUPLICATE message skipped",{sessionId:e.slice(-12),messageId:t.slice(-8),sender:n});const A={id:t,content:r,sender:n,type:o,timestamp:Date.now()};i[e].messages.push(A),st("MESSAGE added",{sessionId:e.slice(-12),messageId:t.slice(-8),sender:n,totalInSession:i[e].messages.length});const s=i[e].messages,a=s.find(l=>{var c;return l.sender.toLowerCase()==="bot"&&((c=l.content)===null||c===void 0?void 0:c.trim())&&l.content.length>=100});if(a){const l=a.content;i[e].preview=l.slice(0,50)+(l.length>50?"...":"")}else{const l=s.find(c=>{var d;return c.sender.toLowerCase()==="user"&&((d=c.content)===null||d===void 0?void 0:d.trim())});if(l&&!i[e].preview){const c=l.content;i[e].preview=c.slice(0,50)+(c.length>50?"...":"")}}(l=>{var c;const d=()=>Object.values(l).reduce((u,p)=>u+p.messages.length,0);for(;d()>100&&Object.keys(l).length>1;){const u=(c=Object.entries(l).sort((p,g)=>{let[,v]=p,[,h]=g;return new Date(v.startedAt).getTime()-new Date(h.startedAt).getTime()})[0])===null||c===void 0?void 0:c[0];if(!u)break;delete l[u]}localStorage.setItem(Vi,JSON.stringify(l))})(i),st("STORAGE state",{ourSessions:Object.keys(i).length,ourTotalMessages:Object.values(i).reduce((l,c)=>l+c.messages.length,0)})},Ji=e=>{var t,r;return(r=(t=Zt()[e])===null||t===void 0?void 0:t.messages.length)!==null&&r!==void 0?r:0},tc=e=>{const t=Zt()[e];return t!=null&&t.startedAt?Date.now()-new Date(t.startedAt).getTime():0},Zi=f.createContext(void 0),nc=e=>{let{children:t,getSessionId:r,setSessionId:n,resetSession:o,clearResettingFlag:i}=e;return f.createElement(Zi.Provider,{value:{getSessionId:r,setSessionId:n,resetSession:o,clearResettingFlag:i}},t)},Sr=()=>{const e=f.useContext(Zi);if(!e)throw new Error("useSession must be used within a SessionProvider");return e},rc=()=>{const[e,t]=f.useState(!1),[r,n]=f.useState([]),[o,i]=f.useState(null),[A,s]=f.useState(0),a=f.useRef(null),l=f.useRef(null),{replaceMessages:c}=qt(),{toggleTextAreaDisabled:d}=bo(),{setSessionId:u,getSessionId:p}=Sr();f.useEffect(()=>{var v,h;const w=m=>{a.current&&!a.current.contains(m.target)&&l.current&&!l.current.contains(m.target)&&t(!1)},x=(h=(v=a.current)===null||v===void 0?void 0:v.getRootNode())!==null&&h!==void 0?h:document;return e&&x.addEventListener("mousedown",w),()=>{x.removeEventListener("mousedown",w)}},[e]);const g=v=>{var h;const w=p();if(st("RESTORE requested",{targetSession:v.slice(-12),currentSession:w==null?void 0:w.slice(-12)}),v===w)return st("RESTORE skipped - already on this session"),void t(!1);const x=(P=>{var C;return((C=Zt()[P])===null||C===void 0?void 0:C.messages)||[]})(v).filter(P=>{var C;return(C=P.content)===null||C===void 0?void 0:C.trim()});st("Stored messages from our localStorage",{count:x.length,ids:x.map(P=>P.id.slice(-8))});const m=x.map(P=>({id:P.id,content:P.content,sender:P.sender.toUpperCase(),type:P.type||"string",timestamp:new Date(P.timestamp).toISOString()}));var k;u(v),st("Session ID updated",{newSession:v.slice(-12)}),c(m),st("replaceMessages called",{count:m.length}),k=(h=l.current)===null||h===void 0?void 0:h.getRootNode(),setTimeout(()=>{const P=(k||document).querySelector(".rcb-chat-body-container");P&&P.querySelectorAll(".rcb-bot-message").forEach(C=>{var S;let I=C.innerHTML,Q=!1;I.includes("](")&&(I=I.replace(/\[([^\]]+)\]\(([^)]+)\)/g,'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>'),Q=!0),I.includes("<a href=")&&(I=I.replace(/<a\s+href=["']([^"']+)["'][^&]*>([^&]+)<\/a>/gi,'<a href="$1" target="_blank" rel="noopener noreferrer">$2</a>'),Q=!0),(I.includes("<a ")||!((S=C.textContent)===null||S===void 0)&&S.includes("<a href="))&&(C.textContent||"").includes("<a href=")&&(I=I.replace(/<a\s+href="([^"]+)"[^&]*>([^&]+)<\/a>/gi,'<a href="$1" target="_blank" rel="noopener noreferrer">$2</a>'),Q=!0),Q&&(C.innerHTML=I)})},50),d(!1),st("Chat input enabled after restore"),t(!1)};return f.createElement("div",{style:{position:"relative"}},f.createElement("button",{ref:l,className:"history-button",onClick:()=>{if(!e&&(n((()=>{const v=Zt();return Object.entries(v).map(h=>{let[w,x]=h;return Object.assign({sessionId:w},x)}).sort((h,w)=>new Date(w.startedAt).getTime()-new Date(h.startedAt).getTime())})()),l.current)){const v=l.current.closest(".rcb-chat-window");if(v){const h=v.getBoundingClientRect(),w=l.current.getBoundingClientRect();i(h.width+3),s(h.right-w.right-18+4)}}t(!e)},style:{alignItems:"center",justifyContent:"center",width:"30px",height:"30px",borderRadius:"50%",backgroundColor:"var(--primaryColor, #1a5b6e)",marginRight:"18px",display:"flex",border:"none",cursor:"pointer",padding:0},"aria-label":"View chat history",title:"View chat history","aria-expanded":e,"aria-haspopup":"menu"},f.createElement("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},f.createElement("circle",{cx:"12",cy:"12",r:"10"}),f.createElement("polyline",{points:"12 6 12 12 16 14"}))),e&&f.createElement("div",{ref:a,role:"menu",style:{position:"absolute",right:A?"-".concat(A,"px"):"-18px",top:"100%",marginTop:"8px",width:o?"".concat(o,"px"):"550px",backgroundColor:"white",borderRadius:0,borderBottom:"3px solid var(--primaryColor, #1a5b6e)",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)",maxHeight:"250px",overflowY:"auto",zIndex:1e3}},r.length===0?f.createElement("div",{style:{padding:"12px 16px",color:"#666",fontSize:"14px",textAlign:"center"}},"No chat history"):r.map(v=>f.createElement("button",{key:v.sessionId,role:"menuitem",onClick:()=>g(v.sessionId),style:{width:"100%",padding:"10px 14px",border:"none",backgroundColor:"transparent",cursor:"pointer",textAlign:"left",display:"flex",flexDirection:"column",gap:"2px",borderBottom:"1px solid #eee"},onMouseEnter:h=>{h.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:h=>{h.currentTarget.style.backgroundColor="transparent"}},f.createElement("span",{style:{fontSize:"14px",color:"#333",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},v.preview||"New conversation"),f.createElement("span",{style:{fontSize:"12px",color:"#888"}},(h=>{const w=new Date(h),x=new Date().getTime()-w.getTime(),m=Math.floor(x/864e5);return m===0?w.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):m===1?"Yesterday":m<7?w.toLocaleDateString([],{weekday:"short"}):w.toLocaleDateString([],{month:"short",day:"numeric"})})(v.startedAt))))))};function Br(){return Br=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Br.apply(null,arguments)}const $i=({width:e=24,height:t=24,color:r="currentColor",children:n,...o})=>f.createElement("svg",Br({xmlns:"http://www.w3.org/2000/svg",width:e,height:t,viewBox:"0 0 24 24",fill:"none",stroke:r,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false"},o),n),oc=e=>f.createElement($i,e,f.createElement("path",{d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})),ic=()=>{const{restartFlow:e}=pn(),{setTextAreaValue:t}=bo(),{messages:r}=qt(),{getSessionId:n,resetSession:o,clearResettingFlag:i}=Sr(),{trackEvent:A}=Gi();return f.createElement("button",{onClick:async()=>{const s=n(),a=s?Ji(s):0;A({type:"chatbot_new_chat",previousMessageCount:a}),o(),await t(""),await e(),setTimeout(()=>{i()},100)},tabIndex:0,"aria-label":"New chat conversation",style:{backgroundColor:"var(--primaryColor, #107180)",border:"none",color:"#ffffff",fontSize:"14px",cursor:"pointer",padding:"8px 12px",borderRadius:"4px",transition:"all 0.2s ease",display:"flex",alignItems:"center",gap:"6px",fontWeight:"500"},onMouseEnter:s=>{s.target.style.backgroundColor="var(--secondaryColor, #0d5f6b)"},onMouseLeave:s=>{s.target.style.backgroundColor="var(--primaryColor, #107180)"}},f.createElement(oc,{width:16,height:16}),"New Chat")};function Dr(e){if(typeof e=="string")return e;if(typeof e=="number")return String(e);if(!e)return"";if(Array.isArray(e))return e.map(Dr).join("");if(typeof e=="object"&&e!==null&&"props"in e){const t=e.props;if(t&&"children"in t)return Dr(t.children)}return""}const ac=()=>{const{getSessionId:e}=Sr(),t=f.useCallback(r=>{var n;const o=(n=r.data)===null||n===void 0?void 0:n.message;if(!(o!=null&&o.id))return;const i=o.sender,A=o.type||"string";let s;if(s=typeof o.content=="string"?o.content:Dr(o.content),$l("TRACKED",{id:o.id,sender:i,content:s.substring(0,50)+(s.length>50?"...":"")}),s.includes("rcb-options-container")||!s.trim())return;const a=e();ec(a,o.id,s,i,A)},[e]);return f.useEffect(()=>(window.addEventListener("rcb-pre-inject-message",t),()=>{window.removeEventListener("rcb-pre-inject-message",t)}),[t]),null},sc=()=>(f.useEffect(()=>{const e=i=>{if(!["ArrowDown","ArrowUp","ArrowLeft","ArrowRight","Enter"," ","Home","End"].includes(i.key))return;const A=document.activeElement;if(A&&(A.tagName==="INPUT"||A.tagName==="TEXTAREA"||A.contentEditable==="true"||A.classList.contains("rcb-chat-input-textarea")))return;const s=document.querySelector(".rcb-chat-window");if(!s)return;const a=Array.from(s.querySelectorAll(".rcb-message-container, .rcb-bot-message-container, .rcb-user-message-container")).filter(d=>d.offsetParent!==null);if(a.length>0){const d=a[a.length-1].querySelector(".rcb-checkbox-container");if(d&&d.offsetParent!==null){const u=Array.from(d.querySelectorAll(".rcb-checkbox-row-container")),p=d.querySelector(".rcb-checkbox-next-button");if(u.length>0){const g=[...u];return p&&g.push(p),void((v,h)=>{v.preventDefault();let w=-1;for(let m=0;m<h.length;m++)if(h[m]===document.activeElement||h[m].contains(document.activeElement)){w=m;break}w===-1&&(w=0);let x=w;switch(v.key){case"ArrowDown":case"ArrowRight":x=w<h.length-1?w+1:0;break;case"ArrowUp":case"ArrowLeft":x=w>0?w-1:h.length-1;break;case"Home":x=0;break;case"End":x=h.length-1;break;case"Enter":case" ":{const m=h[w],k=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});return void m.dispatchEvent(k)}default:return}h[x].focus(),h[x].setAttribute("tabindex","0"),h[x].classList.add("keyboard-focused"),h.forEach((m,k)=>{k!==x&&(m.setAttribute("tabindex","-1"),m.classList.remove("keyboard-focused"))})})(i,g)}}}let l=[];if(a.length>0){const d=a[a.length-1],u=Array.from(d.querySelectorAll(".rcb-options-container")).filter(p=>p.offsetParent!==null);if(u.length>0){const p=u[u.length-1];l=Array.from(p.querySelectorAll(".rcb-options"))}}if(l.length===0)return;const c=l.findIndex(d=>d===document.activeElement);switch(i.key){case"ArrowDown":case"ArrowRight":{let d;i.preventDefault(),d=c<l.length-1?c+1:0,l[d].setAttribute("tabindex","0"),l.forEach((u,p)=>{p!==d&&(u.setAttribute("tabindex","-1"),u.classList.remove("keyboard-focused"))}),l[d].classList.add("keyboard-focused"),l[d].focus();break}case"ArrowUp":case"ArrowLeft":{let d;i.preventDefault(),d=c>0?c-1:l.length-1,l[d].setAttribute("tabindex","0"),l.forEach((u,p)=>{p!==d&&(u.setAttribute("tabindex","-1"),u.classList.remove("keyboard-focused"))}),l[d].classList.add("keyboard-focused"),l[d].focus();break}case"Enter":case" ":if(i.preventDefault(),document.activeElement&&l.includes(document.activeElement)){const d=document.activeElement;if(d.classList.contains("rcb-checkbox-row-container")||d.closest(".rcb-checkbox-row-container")){const u=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});d.dispatchEvent(u);const p=d.querySelector(".rcb-checkbox-label"),g=p?p.textContent:d.textContent||"checkbox",v=d.querySelector(".rcb-checkbox-mark"),h=v&&v.style.backgroundColor?"checked":"unchecked";t(`${g} ${h}`)}else{const u=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});d.dispatchEvent(u);const p=d.textContent||d.innerText;t(`Selected: ${p}`)}}break;case"Home":i.preventDefault(),l.length>0&&(l[0].setAttribute("tabindex","0"),l.forEach((d,u)=>{u!==0&&(d.setAttribute("tabindex","-1"),d.classList.remove("keyboard-focused"))}),l[0].classList.add("keyboard-focused"),l[0].focus());break;case"End":if(i.preventDefault(),l.length>0){const d=l.length-1;l[d].setAttribute("tabindex","0"),l.forEach((u,p)=>{p!==d&&(u.setAttribute("tabindex","-1"),u.classList.remove("keyboard-focused"))}),l[d].classList.add("keyboard-focused"),l[d].focus()}}},t=i=>{const A=document.createElement("div");A.setAttribute("aria-live","assertive"),A.setAttribute("aria-atomic","true"),A.className="sr-only",A.textContent=i,document.body.appendChild(A),setTimeout(()=>{document.body.contains(A)&&document.body.removeChild(A)},1e3)},r=(i=null)=>{let A=i;if(A||(A=document.querySelector(".rcb-chat-window"),A||(A=document.querySelector('[class*="rcb-chat"]')),A||(A=document.querySelector(".qa-bot"))),!A)return;const s=A.closest(".embedded-qa-bot")!==null,a=Array.from(A.querySelectorAll(".rcb-message-container, .rcb-bot-message-container, .rcb-user-message-container")).filter(u=>u.offsetParent!==null);if(a.length===0)return;const l=a[a.length-1],c=Array.from(l.querySelectorAll(".rcb-options-container")).filter(u=>u.offsetParent!==null);let d=[];if(c.length>0){const u=c[c.length-1];d=Array.from(u.querySelectorAll(".rcb-options"))}if(d.length===0){let u=l.querySelector(".rcb-checkbox-container");if(!u&&A&&(u=A.querySelector(".rcb-checkbox-container")),u&&u.offsetParent!==null){const p=Array.from(u.querySelectorAll(".rcb-checkbox-row-container")).filter(g=>g.offsetParent!==null&&g.style.display!=="none");if(p.length>0){const g=u.querySelector(".rcb-checkbox-next-button"),v=[...p];if(g&&g.offsetParent!==null&&v.push(g),v.forEach((h,w)=>{h.setAttribute("tabindex",w===0?"0":"-1"),w===0?h.classList.add("keyboard-focused"):h.classList.remove("keyboard-focused")}),p.length>1){u.querySelectorAll(".keyboard-nav-hint").forEach(w=>w.remove());const h=document.createElement("div");h.className="keyboard-nav-hint",h.textContent="Use arrow keys ↕ to navigate, Enter to select/deselect, or click any option",h.style.cssText="font-size: 12px !important; color: #666 !important; margin-bottom: 8px !important; font-style: italic !important; display: block !important;",u.insertBefore(h,u.firstChild)}return void setTimeout(()=>{v[0]&&v[0].offsetParent!==null&&!s&&v[0].focus()},150)}}}if(d.length>0){if(d.forEach((u,p)=>{const g=p===0?"0":"-1";u.setAttribute("tabindex",g),u.setAttribute("role","option"),u.setAttribute("aria-posinset",p+1),u.setAttribute("aria-setsize",d.length),p===0?u.classList.add("keyboard-focused"):u.classList.remove("keyboard-focused")}),d.length>1){const u=c.length>0?c[c.length-1]:null;if(u){u.querySelectorAll(".keyboard-nav-hint").forEach(g=>g.remove());const p=document.createElement("div");p.className="keyboard-nav-hint",p.textContent="Use arrow keys ↕ to navigate, Enter to select, or click any option",p.style.cssText="font-size: 12px !important; color: #666 !important; margin-bottom: 8px !important; font-style: italic !important; display: block !important;",u.insertBefore(p,u.firstChild)}}else{const u=c.length>0?c[c.length-1]:null;u&&u.querySelectorAll(".keyboard-nav-hint").forEach(p=>p.remove())}setTimeout(()=>{d[0]&&d[0].offsetParent!==null&&!s&&(d[0].focus(),d.length>1&&t(`${d.length} options available. Use arrow keys to navigate.`))},200)}},n=new MutationObserver(i=>{i.forEach(A=>{var s,a;if(A.type==="childList"){const l=Array.from(A.addedNodes),c=l.some(u=>{var p,g,v,h;return u.nodeType===Node.ELEMENT_NODE&&(((p=u.classList)==null?void 0:p.contains("rcb-options-container"))||((g=u.classList)==null?void 0:g.contains("rcb-options"))||((v=u.querySelector)==null?void 0:v.call(u,".rcb-options-container"))||((h=u.querySelector)==null?void 0:h.call(u,".rcb-options")))}),d=l.some(u=>{var p,g;return u.nodeType===Node.ELEMENT_NODE&&(((p=u.classList)==null?void 0:p.contains("rcb-checkbox-container"))||((g=u.querySelector)==null?void 0:g.call(u,".rcb-checkbox-container")))});if(c||d){let u=A.target;for(;u&&!((s=u.classList)!=null&&s.contains("qa-bot"))&&!((a=u.classList)!=null&&a.contains("rcb-chat-window"));)u=u.parentElement;(u||document).querySelectorAll(".rcb-options[tabindex], .rcb-checkbox-row-container[tabindex], .rcb-checkbox-next-button[tabindex]").forEach(p=>{p.setAttribute("tabindex","-1"),p.classList.remove("keyboard-focused")}),setTimeout(()=>r(u),100)}}})});n.observe(document.body,{childList:!0,subtree:!0}),document.addEventListener("keydown",e),r();const o=setInterval(()=>{document.querySelectorAll(".qa-bot").forEach(i=>{const A=i.querySelectorAll(".rcb-options-container .rcb-options").length>0,s=i.querySelectorAll(".rcb-checkbox-row-container").length>0;if(A){const a=i.querySelectorAll(".rcb-options[tabindex]").length;i.querySelectorAll(".rcb-options").length>a&&r(i)}if(s){const a=i.querySelectorAll(".rcb-checkbox-row-container[tabindex]").length;i.querySelectorAll(".rcb-checkbox-row-container").length>a&&r(i)}})},1e3);return()=>{document.removeEventListener("keydown",e),n.disconnect(),clearInterval(o)}},[]),null);let ea=!1,Pn=null;function ta(){return ea?Promise.resolve():Pn||(Pn=new Promise((e,t)=>{const r=document.createElement("script");r.src="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",r.async=!0,r.onload=()=>{ea=!0,Cn("Script loaded"),e()},r.onerror=()=>{Pn=null,t(new Error("Failed to load Turnstile script"))},document.head.appendChild(r)}),Pn)}const $t=e=>{if(!e||typeof e!="string")return e;let t=e.replace(/\[(https?:\/\/[^\s]+?)\]/gi,"[$1]($1)");return t=t.replace(new RegExp(`(?<!\\]\\(|href=["']|\\[)https?:\\/\\/[^\\s[\\]()]+`,"gi"),r=>{let n=r,o="";const i=n.match(/([.,;:!?]+)$/);return i&&(o=i[1],n=n.slice(0,-o.length)),"[".concat(n,"](").concat(n,")").concat(o)}),t},Ac=e=>{let{siteKey:t,onVerify:r,onError:n}=e;const o=f.useRef(null),i=f.useRef(!1);return f.useEffect(()=>{!i.current&&o.current&&(i.current=!0,ta().then(()=>{const A=window.turnstile;if(!A||!o.current)return Se("Turnstile API not available after script load"),void(n==null||n());A.render(o.current,{sitekey:t,callback:s=>{Cn("Visible challenge completed"),r(s)},"error-callback":()=>{Se("Turnstile challenge failed"),n==null||n()},"expired-callback":()=>{Se("Turnstile token expired"),n==null||n()}})}).catch(A=>{Se("Failed to load Turnstile script:",A),n==null||n()}))},[t,r,n]),f.createElement("div",{style:{padding:"8px 16px"}},f.createElement("div",{ref:o,style:{borderRadius:"8px",overflow:"hidden"}}))};function na(e){const{confidence:t,tools_used:r,metadata:n}=e;if(!(t||r&&r.length!==0))return"";const o=[];return t&&o.push("• Confidence: ".concat(t)),r&&r.length>0&&o.push("• Tools used: ".concat(r.join(", "))),n!=null&&n.agent&&o.push("• Agent: ".concat(n.agent)),`---
|
|
39
|
+
`.concat(o.join(`
|
|
40
|
+
`))}function lc(e){let{getState:t,onResubmit:r,trackEvent:n,loginUrl:o}=e;const[i,A]=f.useState(!1),s=t();return f.useEffect(()=>{if(!s.siteKey)return;A(!1);const a=setTimeout(()=>{s.token||(A(!0),n==null||n({type:"chatbot_turnstile_error"}))},5e3);return()=>clearTimeout(a)},[s.siteKey]),s.siteKey?i?f.createElement("div",{style:{padding:"8px 16px",fontSize:"14px",lineHeight:"1.5"}},f.createElement("p",{style:{margin:0}},"I'm having trouble verifying your session. Please try"," ",f.createElement("a",{href:"",onClick:a=>{a.preventDefault(),window.location.reload()},style:{color:"var(--primaryColor, #107180)"}},"refreshing the page"),", or"," ",f.createElement("a",{href:o,target:"_blank",rel:"noopener noreferrer",style:{color:"var(--primaryColor, #107180)",fontWeight:"bold"}},"log in")," ","to continue.")):f.createElement(Ac,{siteKey:s.siteKey,onVerify:a=>{s.token=a,n==null||n({type:"chatbot_turnstile_completed"}),r(a)},onError:()=>{Pr("Turnstile widget error (may auto-recover)")}}):null}const cc="#1a5b6e",uc="#107180",dc="Arial, sans-serif",ra="Q&A Bot",pc="/chat-icon.svg",fc="Type your question here...",hc="Select an option to continue",gc=!1,mc="Ask me a question!",oa="/login",yc={general:{showHeader:!0,showFooter:!0},tooltip:{mode:"CLOSE"},chatInput:{disabled:!1,characterLimit:5e3,showCharacterCount:!1,allowNewline:!0,blockSpam:!1},chatWindow:{defaultOpen:!1,showScrollbar:!1},botBubble:{simulateStream:!0,streamSpeed:10,showAvatar:!1},userBubble:{showAvatar:!1},notification:{disabled:!0,showCount:!1},audio:{disabled:!0},emoji:{disabled:!0},fileAttachment:{disabled:!0}},Ir=f.forwardRef((e,t)=>{var r,n,o;const{apiKey:i,qaEndpoint:A,ratingEndpoint:s,capabilitiesEndpoint:a,agentRatingEndpoint:l,welcomeMessage:c,open:d,onOpenChange:u,isLoggedIn:p,allowAnonAccess:g=!1,actingUser:v,primaryColor:h,secondaryColor:w,botName:x,logo:m,placeholder:k,errorMessage:P,embedded:C,footerText:S,footerLink:I,tooltipText:Q,loginUrl:D,turnstileSiteKey:O,customFlow:B,onAnalyticsEvent:_}=e,F=f.useRef("bot_".concat(Math.random().toString(36).substr(2,9)));f.useEffect(()=>{Zl()},[]);const M=f.useRef(null);M.current===null&&(M.current=Xi(),kn("CREATED",M.current));const U=f.useRef(!1),N=f.useRef({getSessionId:()=>M.current,isResetting:()=>U.current}),H=function(z){const[Y,re]=f.useState(null),[ee,ie]=f.useState("idle"),Ae=f.useRef(null),le=f.useRef(null),Ee=f.useRef(!0),je=f.useCallback(()=>{const Ce=window.turnstile;if(le.current&&(Ce!=null&&Ce.remove)){try{Ce.remove(le.current)}catch{}le.current=null}Ae.current&&(Ae.current.remove(),Ae.current=null)},[]);return f.useEffect(()=>{if(Ee.current=!0,!z)return ie("idle"),void re(null);ie("loading");const Ce=document.createElement("div");return Ce.style.position="fixed",Ce.style.left="-9999px",Ce.style.top="-9999px",Ce.style.width="0",Ce.style.height="0",Ce.style.overflow="hidden",Ce.setAttribute("aria-hidden","true"),document.body.appendChild(Ce),Ae.current=Ce,ta().then(()=>{if(!Ee.current)return;const At=window.turnstile;if(!At||!Ae.current)return Se("Turnstile API not available for silent verification"),void ie("failed");const kt=At.render(Ae.current,{sitekey:z,execution:"render","refresh-expired":"auto",callback:me=>{Ee.current&&(Cn("Silent verification succeeded"),re(me),ie("verified"))},"error-callback":()=>{Ee.current&&(Se("Turnstile silent verification failed"),ie("failed"))},"expired-callback":()=>{Ee.current&&(Cn("Token expired, awaiting refresh"),re(null),ie("loading"))}});le.current=kt}).catch(At=>{Ee.current&&(Se("Failed to load Turnstile script for silent verification:",At),ie("failed"))}),()=>{Ee.current=!1,je()}},[z,je]),{token:Y,status:ee}}(O),y=f.useRef(null);y.current=H.token;const[q,b]=f.useState(p);f.useEffect(()=>{b(p)},[p]);const W=C!==void 0?C:gc,Z=f.useCallback(z=>{var Y;_&&_(Object.assign(Object.assign({},z),{timestamp:Date.now(),sessionId:(Y=M.current)!==null&&Y!==void 0?Y:void 0,pageUrl:typeof window<"u"?window.location.href:void 0,isEmbedded:W}))},[_,W]),J=f.useMemo(()=>{const z=Object.assign({},yc);z.general=Object.assign(Object.assign({},z.general),{primaryColor:h||cc,secondaryColor:w||uc,fontFamily:dc,embedded:W});const Y=q===!1?[f.createElement(Yi,{key:"login-button",loginUrl:D||oa,isHeaderButton:!0})]:[f.createElement(rc,{key:"history-button"}),f.createElement(ql,{key:"user-icon"})];z.header={title:f.createElement("span",{style:{fontSize:14,fontWeight:500}},x||ra),showAvatar:!0,avatar:m||pc,buttons:[...Y,ge.CLOSE_CHAT_BUTTON]},z.chatInput=Object.assign(Object.assign({},z.chatInput),{disabled:!1,enabledPlaceholderText:k||fc,disabledPlaceholderText:P||hc}),z.tooltip=Object.assign(Object.assign({},z.tooltip),{text:Q||mc});const re=S?I?f.createElement("a",{href:I,target:"_blank",rel:"noopener noreferrer",key:"footer-link"},S):f.createElement("span",{key:"footer-text"},S):null;return z.footer={text:re,buttons:[f.createElement(ic,{key:"new-chat-button"})]},z.chatWindow=Object.assign(Object.assign({},z.chatWindow),{defaultOpen:!!W}),z.event={rcbPreInjectMessage:!0,rcbPostInjectMessage:!0,rcbUserSubmitText:!0,rcbChangePath:!0,rcbToggleChatWindow:!0},z},[h,w,x,m,k,P,W,Q,q,D,S,I]),oe=f.useRef(null),Te=function(z){let Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return f.useMemo(()=>{const re=(ee,ie)=>{if(z.current){const Ae=getComputedStyle(z.current).getPropertyValue(ee);if(Ae&&Ae.trim()!=="")return Ae.trim();if(z.current.parentElement){const le=getComputedStyle(z.current.parentElement).getPropertyValue(ee);if(le&&le.trim()!=="")return le.trim()}}return ie};return{primaryColor:re("--primaryColor",Y.primaryColor),secondaryColor:re("--secondaryColor",Y.secondaryColor),fontFamily:re("--fontFamily",Y.fontFamily)}},[z,Y])}(oe,J.general);((z,Y)=>{f.useEffect(()=>{Y.current&&(z?Y.current.classList.add("bot-logged-in"):Y.current.classList.remove("bot-logged-in"))},[z,Y])})(q!==!1,oe),(z=>{let{settings:Y,themeColors:re}=z;f.useEffect(()=>{re&&(Object.entries(re).forEach(ee=>{let[ie,Ae]=ee;Ae&&document.documentElement.style.setProperty("--".concat(ie),Ae)}),re.primaryColor&&document.documentElement.style.setProperty("--rcb-header-background",re.primaryColor),re.secondaryColor&&document.documentElement.style.setProperty("--rcb-header-background-hover",re.secondaryColor))},[re]),f.useEffect(()=>{var ee,ie;!((ee=Y.header)===null||ee===void 0)&&ee.title&&typeof Y.header.title=="string"&&(Y.header.title=f.createElement("div",{key:"header-title"},f.createElement("h1",{className:"sr-only"},Y.header.title),f.createElement("span",{"aria-hidden":"true"},Y.header.title))),Y.device={desktopEnabled:!0,mobileEnabled:!0,applyMobileOptimizations:!1},Y.chatHistory={disabled:!0},Y.chatButton=Object.assign(Object.assign({},Y.chatButton),{icon:(ie=Y.header)===null||ie===void 0?void 0:ie.avatar}),Y.event=Object.assign(Object.assign({},Y.event),{rcbToggleChatWindow:!0})},[Y])})({settings:J,themeColors:Te});const ce=f.useMemo(()=>{const z=(re=>{let{endpoint:ee,ratingEndpoint:ie,agentRatingEndpoint:Ae,apiKey:le,sessionId:Ee,isResetting:je=()=>!1,isLoggedIn:Ce,allowAnonAccess:At=!1,loginUrl:kt="/login",trackEvent:me,getTurnstileToken:nn}=re;if(Ce===!1&&!At)return me==null||me({type:"chatbot_login_prompt_shown"}),{qa_loop:{message:"To ask questions, please log in first.",component:f.createElement(Yi,{loginUrl:kt}),chatDisabled:!0,path:"qa_loop"}};let qe=null,lt=null,Ct=!1;const pe={siteKey:null,token:null,pendingQuery:null,needsChallenge:!1};let ut=null;if(!ee)throw new Error("Q&A endpoint is required");return{qa_loop:{message:async be=>{var T;ut=be.injectMessage.bind(be);const{userInput:G}=be;if(je&&je()||!G||G.trim()==="")return null;if(G==="👍 Helpful"||G==="👎 Not helpful"){if(qe){const R=G==="👍 Helpful",ne=lt==="agent"?Ae:ie;if(ne)try{const K={"Content-Type":"application/json"};le&&(K["X-API-KEY"]=le);const ye=Ee();ye&&(K["X-Session-ID"]=ye,K["X-Query-ID"]=qe),await fetch(ne,{method:"POST",headers:K,credentials:"include",body:JSON.stringify(lt==="agent"?{query_id:qe,rating:R?"helpful":"not_helpful",session_id:ye}:{sessionId:ye,queryId:qe,rating:R?1:0})}),me==null||me({type:"chatbot_rating_sent",queryId:qe,rating:R?"helpful":"not_helpful"})}catch(K){Se("Error sending feedback:",K)}}return"Thanks for the feedback!"}try{const R=Ki();qe=R,me==null||me({type:"chatbot_question_sent",queryId:R,questionLength:G.length});const ne={"Content-Type":"application/json"};le&&(ne["X-API-KEY"]=le);const K=Ee();K&&(ne["X-Session-ID"]=K,ne["X-Query-ID"]=R);const ye={query:G,session_id:K,question_id:R},Je=nn==null?void 0:nn();Je&&(ye.turnstile_token=Je),kn("SENT to API",{session_id:K,question_id:R});const _e=Date.now(),Ne=await fetch(ee,{method:"POST",headers:ne,credentials:"include",body:JSON.stringify(ye)});if(!Ne.ok)throw new Error("API returned ".concat(Ne.status));if((Ne.headers.get("content-type")||"").includes("text/event-stream")){const Tn=(T=Ne.body)===null||T===void 0?void 0:T.getReader();if(!Tn)throw new Error("Response body is not readable");const Hr=new TextDecoder;let Ge="",Ht="",et=!1;try{for(;;){const{done:Ye,value:Wc}=await Tn.read();if(Ye)break;Ge+=Hr.decode(Wc,{stream:!0});let Ut=Ge.indexOf(`
|
|
41
41
|
|
|
42
|
-
`).concat(T):fn;return await ot.injectMessage(G),xe==null||xe({type:"chatbot_answer_received",queryId:ge,responseTimeMs:yr,success:!0,responseLength:Ht.length,hasMetadata:!!T}),xt=!0,setTimeout(async()=>{await ot.injectMessage("Feel free to ask another question.")},100),null}catch(ge){return lt("Error in Q&A flow:",ge),xe==null||xe({type:"chatbot_answer_error",queryId:Ne??void 0,errorType:ge instanceof Error?ge.message:"unknown"}),"I apologize, but I'm having trouble processing your question. Please try again later."}},options:ot=>le&&le()||ot.userInput==="👍 Helpful"||ot.userInput==="👎 Not helpful"?[]:J&&xt?["👍 Helpful","👎 Not helpful"]:[],renderMarkdown:["BOT"],chatDisabled:!1,path:"qa_loop"}}})({endpoint:a,ratingEndpoint:A,apiKey:o,sessionId:M.current.getSessionId,isResetting:M.current.isResetting,isLoggedIn:U,allowAnonAccess:d,loginUrl:S||_a,trackEvent:_});return Object.assign(Object.assign({start:{message:s,renderMarkdown:["BOT"],transition:{duration:0},path:"qa_loop"}},R),I||{})},[o,a,A,s,U,d,S,I,u,_]),K=h.useMemo(()=>{return[()=>ys(z),yl(),()=>bl(R)];var R,z},[]);return h.useEffect(()=>{const R=()=>{const q=document.querySelector(".rcb-chat-window");if(!q)return;const Z=q.querySelector(".rcb-send-button");Z&&(Z.hasAttribute("tabindex")||Z.setAttribute("tabindex","0"),Z.hasAttribute("data-keyboard-enabled")||(Z.setAttribute("data-keyboard-enabled","true"),Z.addEventListener("keydown",J=>{if(J.key==="Enter"||J.key===" "){J.preventDefault();const ae=Z&&Object.keys(Z).find(le=>le.startsWith("__reactProps"));if(ae){const le=Z[ae],we=le==null?void 0:le.onMouseDown;if(we&&typeof we=="function")return void we(J)}const re=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});Z.dispatchEvent(re)}})))},z=setInterval(R,1e3);return R(),()=>clearInterval(z)},[]),Hl(),h.useEffect(()=>{const R=b.current;if(!R)return;const z=q=>{var Z,J,ae;const re=(J=(Z=q.target).closest)===null||J===void 0?void 0:J.call(Z,"a");re&&re.closest(".rcb-chat-body-container")&&(re.classList.contains("qa-bot-login-button")||re.closest(".rcb-options-container")||_({type:"chatbot_link_clicked",linkUrl:re.href,linkText:((ae=re.textContent)===null||ae===void 0?void 0:ae.trim())||""}))};return R.addEventListener("click",z),()=>R.removeEventListener("click",z)},[_]),h.useEffect(()=>{if(!F){const R=z=>{const q=z.data.newState;c==null||c(q);const Z=O.current;_(q?{type:"chatbot_open"}:{type:"chatbot_close",messageCount:Z?Ta(Z):0,durationMs:Z?Ql(Z):0})};return window.addEventListener("rcb-toggle-chat-window",R),()=>{window.removeEventListener("rcb-toggle-chat-window",R)}}},[F,c,_]),h.createElement("div",{className:"qa-bot ".concat(!((r=H.general)===null||r===void 0)&&r.embedded?"embedded-qa-bot":""),ref:b,role:"region","aria-label":y||Oa},h.createElement(Ml,{getSessionId:()=>O.current,setSessionId:R=>{const z=O.current;O.current=R,sn("RESTORED","".concat(z==null?void 0:z.slice(-12)," -> ").concat(R.slice(-12)))},resetSession:()=>{const R=O.current;D.current=!0,O.current=Ia(),sn("RESET","".concat(R==null?void 0:R.slice(-12)," -> ").concat(O.current.slice(-12)))},clearResettingFlag:()=>{D.current=!1}},h.createElement(vl,{trackEvent:_},h.createElement(Kr,null,h.createElement("div",null,h.createElement(Nl,null),h.createElement(Ea,{ref:t,embedded:((n=H.general)===null||n===void 0?void 0:n.embedded)||!1,currentOpen:i||!1,enabled:U!==!1,onSetEnabled:R=>L(!!R&&void 0)}),h.createElement($i,{key:"chatbot-".concat(B.current,"-").concat(U),settings:H,flow:w,plugins:K}),h.createElement("div",{role:"status","aria-live":"polite","aria-label":"Bot response updates",className:"sr-only",id:"bot-live-region",style:{position:"absolute",width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0}}),h.createElement("div",{id:"chat-input-help",className:"sr-only",style:{position:"absolute",width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0}},"Type your message and press Enter to send. Use arrow keys to navigate through response options."))))))});ur.displayName="QABot",br('.rcb-chat-window{height:800px!important;max-height:80vh!important;max-width:100%;width:550px!important}.rcb-chat-window .rcb-chat-header{align-items:center;display:flex;flex-direction:row;font-weight:700}.rcb-chat-window a{color:#000;font-weight:700;text-decoration:underline}.rcb-chat-window a:hover{color:var(--primaryColor,#107180)}.rcb-chat-window .rcb-bot-message a,.rcb-chat-window .rcb-bot-message a:link,.rcb-chat-window .rcb-bot-message a:visited{color:#fff!important;text-decoration:underline!important}.rcb-chat-window .rcb-bot-message a:hover{opacity:.85;text-decoration:underline!important}.rcb-chat-window .rcb-chat-input-textarea{overflow-y:auto}.rcb-chat-window .rcb-chat-footer-container{font-size:10px}.qa-bot .history-button,.qa-bot .user-login-icon{display:none!important}.qa-bot.bot-logged-in .history-button,.qa-bot.bot-logged-in .user-login-icon{display:flex!important;transform:scale(1.3) translateY(-2px)}.qa-bot.bot-logged-in .history-button:hover{opacity:.8}.qa-bot.bot-logged-in .history-button:focus{outline:2px solid #fff;outline-offset:2px}.embedded-qa-bot .rcb-chat-window{max-width:100%;width:100%!important}.qa-bot.hidden{display:none}.embedded-qa-bot .rcb-bot-message,.embedded-qa-bot .rcb-user-message{max-width:90%!important;word-break:break-word}.embedded-qa-bot .rcb-chat-input-textarea{width:100%!important}.qa-bot-container{max-width:100%;width:100%}@keyframes phone-ring{0%{transform:translateX(0) translateY(0) rotate(0deg)}2%{transform:translateX(0) translateY(-8px) rotate(-2deg)}4%{transform:translateX(0) translateY(-6px) rotate(2deg)}6%{transform:translateX(0) translateY(-8px) rotate(-1deg)}8%{transform:translateX(0) translateY(-6px) rotate(1deg)}10%{transform:translateX(0) translateY(-8px) rotate(-2deg)}12%{transform:translateX(0) translateY(-6px) rotate(2deg)}20%{transform:translateX(0) translateY(0) rotate(0deg)}30%{transform:translateX(0) translateY(0) rotate(0deg)}40%{transform:translateX(0) translateY(0) rotate(0deg)}49%{transform:translateX(0) translateY(0) rotate(0deg)}50%{transform:translateX(0) translateY(-8px) rotate(-2deg)}52%{transform:translateX(0) translateY(-6px) rotate(2deg)}54%{transform:translateX(0) translateY(-8px) rotate(-1deg)}56%{transform:translateX(0) translateY(-6px) rotate(1deg)}58%{transform:translateX(0) translateY(-8px) rotate(-2deg)}60%{transform:translateX(0) translateY(-6px) rotate(2deg)}70%{transform:translateX(0) translateY(0) rotate(0deg)}to{transform:translateX(0) translateY(0) rotate(0deg)}}@media (max-width:768px){.rcb-chat-window{max-height:calc(100vh - 100px)!important;max-width:calc(100vw - 40px)!important;width:550px!important}.embedded-chat-container.open{height:400px}.embedded-chat-closed{font-size:14px;height:40px}.embedded-chat-open-btn{font-size:12px;padding:3px 10px}.rcb-bot-message,.rcb-user-message{max-width:85%!important}.rcb-chat-input-textarea{font-size:16px!important;min-height:44px!important}.rcb-chat-header{padding:12px 16px!important}}@media (max-width:480px){.rcb-chat-window{bottom:10px!important;left:10px!important;max-height:calc(100vh - 80px)!important;max-width:calc(100vw - 20px)!important;right:10px!important;width:calc(100vw - 20px)!important}.embedded-chat-container.open{height:350px}.rcb-bot-message,.rcb-user-message{margin-bottom:8px!important;max-width:90%!important}.rcb-chat-header{font-size:14px!important;padding:8px 12px!important}.rcb-chat-button{bottom:20px!important;height:50px!important;right:20px!important;width:50px!important}.rcb-chat-footer-container{font-size:9px!important;padding:8px 12px!important}}@media (max-width:360px){.rcb-chat-window{left:5px!important;max-width:calc(100vw - 10px)!important;right:5px!important;width:calc(100vw - 10px)!important}.rcb-chat-header{font-size:13px!important;padding:6px 8px!important}}.rcb-checkbox-container{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-left:16px!important;max-width:100%!important;padding-top:12px!important}.rcb-checkbox-row-container{align-items:center!important;background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--primaryColor,#107180)!important;cursor:pointer!important;display:flex!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;margin:0!important;max-height:auto!important;min-height:auto!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-checkbox-row-container:hover{background-color:#e8f4f8!important;border-color:var(--primaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.rcb-checkbox-row-container[data-checked=true]{background-color:var(--primaryColor,#107180)!important;border-color:var(--primaryColor,#107180)!important;color:#fff!important}.rcb-checkbox-row{margin-left:0!important}.rcb-checkbox-mark{height:14px!important;margin-right:6px!important;width:14px!important}.rcb-checkbox-label{font-size:13px!important;margin:0!important;white-space:nowrap!important}.rcb-checkbox-next-button{align-items:center!important;background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--secondaryColor,#107180)!important;cursor:pointer!important;display:flex!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;justify-content:center!important;line-height:24px!important;margin:0!important;max-height:auto!important;min-height:auto!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-checkbox-next-button:hover{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.rcb-chat-input-send-button:focus,.rcb-chat-input-textarea:focus{outline:2px solid var(--primaryColor,#107180)!important;outline-offset:2px!important}.rcb-user-message{word-wrap:break-word!important;overflow:hidden!important;word-break:break-word!important}:focus-visible{outline:2px solid var(--primaryColor,#107180)!important;outline-offset:2px!important}.rcb-options-container{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;margin:16px!important;padding:0!important}.rcb-options{background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--secondaryColor,#107180)!important;cursor:pointer!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;outline:none!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-options:hover{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.rcb-checkbox-next-button.keyboard-focused,.rcb-checkbox-next-button:focus,.rcb-checkbox-next-button:focus-visible,.rcb-checkbox-row-container.keyboard-focused,.rcb-checkbox-row-container:focus,.rcb-checkbox-row-container:focus-visible,.rcb-options.keyboard-focused,.rcb-options:focus,.rcb-options:focus-visible{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;outline:none!important}.rcb-options:active{background-color:var(--secondaryColor,#107180)!important;border-color:var(--secondaryColor,#107180)!important;color:#fff!important;transform:translateY(0)!important}.keyboard-nav-hint{color:#666!important;font-size:12px!important;font-style:italic!important;margin-bottom:8px!important}@media (prefers-reduced-motion:reduce){.keyboard-nav-hint{display:none!important}}.rcb-options-container [role=button][tabindex="0"],.rcb-options-container button[tabindex="0"]{position:relative!important}.rcb-options-container [role=button][tabindex="0"]:after,.rcb-options-container button[tabindex="0"]:after{color:var(--secondaryColor,#107180)!important;content:"←"!important;font-size:16px!important;opacity:0!important;position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;transition:opacity .2s ease!important}.rcb-options-container [role=button][tabindex="0"]:focus:after,.rcb-options-container button[tabindex="0"]:focus:after{opacity:1!important}.rcb-chat-input-send-button{cursor:pointer!important;opacity:1!important;pointer-events:auto!important;visibility:visible!important}.rcb-chat-input-send-button:not([tabindex]){-webkit-user-select:none;-moz-user-select:none;user-select:none}.rcb-chat-input-container [onclick],.rcb-chat-input-container [role=button],.rcb-chat-input-container div[style*=cursor],.rcb-chat-input-container svg:last-child,.rcb-chat-input-container>div:last-child{tabindex:0!important;cursor:pointer!important}.rcb-chat-footer{margin-top:4px!important;padding-top:0!important}.rcb-chat-footer-container{align-items:center!important;display:flex!important;margin-top:4px!important;padding-top:4px!important}.rcb-chat-footer-container button{order:1!important}.rcb-chat-footer-container a[href*=qa-bot-core]{tab-index:0!important;order:2!important}.rcb-chat-footer-container a[href*=feedback]{tab-index:0!important;order:3!important}@media (prefers-contrast:high){.rcb-chat-window a{background-color:#fff!important;border:1px solid #000!important;color:#000!important}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.rcb-chat-input-textarea{user-select:text!important}.rcb-chat-body-container,.rcb-chat-input-textarea,.rcb-chat-window{touch-action:pan-y!important}.embedded-qa-bot,.rcb-chat-window{-webkit-overflow-scrolling:touch!important}.embedded-qa-bot .rcb-chat-input-textarea{touch-action:pan-y!important;user-select:text!important}.embedded-qa-bot .rcb-chat-body-container,.embedded-qa-bot .rcb-chat-window{touch-action:pan-y!important}.rcb-chat-header-container{background:var(--primaryColor,#1a5b6e)!important;background:linear-gradient(135deg,var(--primaryColor,#1a5b6e) 0,var(--secondaryColor,#107180) 100%)!important}.rcb-toggle-button{align-items:center!important;background:var(--primaryColor,#1a5b6e)!important;display:flex!important;justify-content:center!important}.rcb-toggle-button svg{stroke:#fff!important;color:#fff!important}.rcb-toggle-button *,.rcb-toggle-button img,.rcb-toggle-button svg,.rcb-toggle-button>*{box-sizing:border-box!important;height:50px!important;left:0!important;margin:0 auto!important;max-height:50px!important;max-width:50px!important;min-height:50px!important;min-width:50px!important;padding:2px!important;position:relative!important;top:0!important;width:50px!important}.rcb-send-button{background-color:var(--primaryColor,#1a5b6e)!important}',{insertAt:"top"});const Vl=()=>{const[e,t]=h.useState(!1),r=()=>typeof navigator<"u"&&navigator.mediaDevices!==void 0&&typeof navigator.mediaDevices.getDisplayMedia=="function";return{captureScreenshot:async()=>{if(!r())throw new Error("Screen capture is not available in this environment");try{t(!0);const n=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser",cursor:"always",width:{ideal:1920},height:{ideal:1080}},audio:!1}),o=document.createElement("video");o.srcObject=n,await new Promise(l=>{o.onloadedmetadata=()=>{o.play(),l()}});const a=document.createElement("canvas");a.width=o.videoWidth,a.height=o.videoHeight;const A=a.getContext("2d");if(!A)throw new Error("Could not get canvas context");A.drawImage(o,0,0,a.width,a.height);const s=await new Promise(l=>a.toBlob(l,"image/png"));if(!s)throw new Error("Could not create image blob");const i=new Date().toISOString().replace(/[:.]/g,"-"),c=new File([s],"screenshot-".concat(i,".png"),{type:"image/png"});return n.getTracks().forEach(l=>l.stop()),t(!1),c}catch(n){throw lt("Error capturing screenshot:",n),t(!1),n}},isCapturing:e,isScreenCaptureAvailable:r()}},Xl=e=>h.createElement(Ma,e,h.createElement("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),h.createElement("polyline",{points:"17 8 12 3 7 8"}),h.createElement("line",{x1:"12",y1:"3",x2:"12",y2:"15"})),Kl=e=>new Promise((t,r)=>{const n=new FileReader;n.onload=()=>{if(typeof n.result!="string")return void r(new Error("Failed to read file ".concat(e.name)));const o=n.result.split(",")[1];t({fileName:e.name,contentType:e.type,size:e.size,fileData:o})},n.onerror=()=>r(new Error("Failed to read file ".concat(e.name))),n.readAsDataURL(e)}),Jl=e=>Promise.all(e.map(Kl)),Zl=e=>e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB"),An=e=>{let{onFileUpload:t,maxSizeMB:r=10,acceptedTypes:n="image/*,application/pdf,text/*,.doc,.docx",enableScreenshot:o=!1,className:a}=e;const[A,s]=h.useState(!1),[i,c]=h.useState([]),[l,d]=h.useState(null),u=h.useRef(null),{captureScreenshot:p,isCapturing:f,isScreenCaptureAvailable:y}=Vl(),g=C=>{const S=document.createElement("div");S.setAttribute("aria-live","assertive"),S.setAttribute("aria-atomic","true"),S.className="sr-only",S.textContent=C,document.body.appendChild(S),setTimeout(()=>document.body.removeChild(S),1e3)},v=C=>{if(!C||C.length===0)return void Il("FileUploadComponent: No valid files provided to handleFiles");let S;try{S=Array.from(C)}catch(O){return lt("FileUploadComponent: Error converting files to array:",O),void g("Error processing selected files. Please try again.")}const I=[...i,...S];c(I);const Q=S.length,B=S.map(O=>O.name).join(", ");g("".concat(Q," file").concat(Q>1?"s":""," selected: ").concat(B)),setTimeout(()=>{const O=document.querySelector(".rcb-chat-content");O&&(O.scrollTop=O.scrollHeight)},100),t&&t(I)},x=C=>{C.preventDefault(),C.stopPropagation(),C.type==="dragenter"||C.type==="dragover"?s(!0):C.type==="dragleave"&&s(!1)},m=()=>{try{u.current&&u.current.click()}catch(C){lt("FileUploadComponent: Error in handleButtonClick:",C),g("Error opening file selection dialog. Please try again.")}},E=()=>{d(null)},P=o&&y;return h.createElement("div",{className:"file-upload-container ".concat(a||""),style:{padding:"16px",margin:"8px 0"}},P&&h.createElement("div",{style:{display:"flex",justifyContent:"center",marginBottom:"10px"}},h.createElement("button",{onClick:C=>{C.preventDefault(),(async()=>{try{const S=await p();v([S]),g("Screenshot captured successfully")}catch{g("Error capturing screenshot. Please try again.")}})()},disabled:f,"aria-describedby":"screenshot-help","aria-label":f?"Taking screenshot, please wait":"Take a screenshot to attach",style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:"#107180",color:"white",border:"none",borderRadius:"5px",padding:"8px 12px",cursor:f?"not-allowed":"pointer",fontSize:"14px",fontWeight:"500",boxShadow:"0 1px 3px rgba(0,0,0,0.2)"}},h.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},h.createElement("path",{d:"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"}),h.createElement("circle",{cx:"12",cy:"13",r:"4"})),f?"Taking screenshot...":"Take screenshot..."),h.createElement("span",{id:"screenshot-help",className:"sr-only"},"Captures the current screen and adds it as an attachment")),h.createElement("div",{className:"file-upload-dropzone ".concat(A?"active":""),onDragEnter:x,onDragLeave:x,onDragOver:x,onDrop:C=>{var S;C.preventDefault(),C.stopPropagation(),s(!1);try{!((S=C.dataTransfer)===null||S===void 0)&&S.files&&C.dataTransfer.files.length>0&&v(C.dataTransfer.files)}catch(I){lt("FileUploadComponent: Error in handleDrop:",I),g("Error processing dropped files. Please try again.")}},role:"button",tabIndex:0,"aria-label":"File upload area. Click to select files or drag and drop files here.","aria-describedby":"upload-instructions",onKeyDown:C=>{C.key!=="Enter"&&C.key!==" "||(C.preventDefault(),m())},style:{padding:"20px",border:"2px dashed #ccc",borderRadius:"8px",backgroundColor:A?"#f0f8ff":"#fafafa",transition:"all 0.3s ease"}},h.createElement("input",{ref:u,type:"file",className:"file-input",onChange:C=>{var S;try{!((S=C.target)===null||S===void 0)&&S.files&&C.target.files.length>0&&v(C.target.files)}catch(I){lt("FileUploadComponent: Error in handleFileSelect:",I),g("Error processing selected files. Please try again.")}},multiple:!0,style:{display:"none"},"aria-label":"Select files to upload",accept:n}),h.createElement("div",{className:"upload-content",onClick:m,style:{cursor:"pointer",flexDirection:"column",alignItems:"center",display:"flex",textAlign:"center",padding:"12px"}},h.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"8px"}},h.createElement("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",gap:"10px"}},h.createElement(Xl,null),h.createElement("p",{style:{margin:0,fontWeight:"bold"}},"Upload Files")),h.createElement("p",{id:"upload-instructions",style:{margin:0,fontSize:"14px",color:"#666"}},"Drag and drop files here or click to select. (Max ",r,"MB each)")),i.length>0&&h.createElement("div",{className:"selected-files",style:{display:"flex",flexWrap:"wrap",gap:"8px",marginTop:"12px",alignItems:"center"}},h.createElement("span",{style:{fontWeight:400,color:"#888",fontSize:"13px",marginRight:"8px",alignSelf:"center"}},"Selected files:"),i.map((C,S)=>h.createElement("span",{key:S,style:{background:"#fff",color:"#107180",borderRadius:"5px",padding:"4px 12px",fontSize:"14px",marginRight:"4px",marginBottom:"4px",border:"1px solid #ccc",display:"flex",alignItems:"center",gap:"6px",cursor:"pointer"},onClick:I=>{I.stopPropagation(),(Q=>{d(Q)})(C)}},h.createElement("span",{onClick:I=>{I.stopPropagation(),(Q=>{const B=i.filter((O,D)=>D!==Q);c(B),t&&t(B)})(S)},style:{cursor:"pointer",color:"#888",fontWeight:"bold",fontSize:"15px",marginRight:"4px",userSelect:"none",lineHeight:1},title:"Remove file","aria-label":"Remove ".concat(C.name)},"×"),C.name," (",Zl(C.size),")"))))),(()=>{if(!l)return null;const C=l.type.startsWith("image/"),S=l.type.startsWith("text/"),I=l.type==="application/pdf";return h.createElement("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.7)",display:"flex",justifyContent:"center",alignItems:"center",zIndex:1e3},onClick:E},h.createElement("div",{style:{backgroundColor:"white",padding:"20px",borderRadius:"8px",maxWidth:"90%",maxHeight:"90%",overflow:"auto",position:"relative"},onClick:Q=>Q.stopPropagation()},h.createElement("button",{onClick:E,style:{position:"absolute",top:"10px",right:"10px",background:"none",border:"none",fontSize:"24px",cursor:"pointer",color:"#666"}},"×"),h.createElement("h3",{style:{marginTop:0,marginBottom:"16px"}},l.name),C&&h.createElement("img",{src:URL.createObjectURL(l),alt:l.name,style:{maxWidth:"100%",maxHeight:"70vh"}}),S&&h.createElement("pre",{style:{whiteSpace:"pre-wrap",wordWrap:"break-word",maxHeight:"70vh",overflow:"auto",padding:"16px",backgroundColor:"#f5f5f5",borderRadius:"4px"}},URL.createObjectURL(l)),I&&h.createElement("iframe",{src:URL.createObjectURL(l),style:{width:"100%",height:"70vh",border:"none"},title:l.name}),!C&&!S&&!I&&h.createElement("div",{style:{padding:"20px",textAlign:"center"}},"Preview not available for this file type")))})())};function $l(e,t){if(!t||Object.keys(t).length===0)return e;const r={};for(const[n,o]of Object.entries(e)){let a=Object.assign({},o);if(a.chatDisabled===void 0){const A=!(!a.options&&!a.checkboxes);a.chatDisabled=A}r[n]=a}return r}function ln(e){return async t=>{const r=await e(t);await t.injectMessage(r)}}const ec=h.forwardRef((e,t)=>{const[r,n]=h.useState(e.defaultOpen||!1),o=h.useRef(null);return h.useImperativeHandle(t,()=>({addMessage:a=>{var A;(A=o.current)===null||A===void 0||A.addMessage(a)},setBotEnabled:a=>{var A;(A=o.current)===null||A===void 0||A.setBotEnabled(a)},openChat:()=>{var a;n(!0),(a=o.current)===null||a===void 0||a.openChat()},closeChat:()=>{var a;n(!1),(a=o.current)===null||a===void 0||a.closeChat()},toggleChat:()=>{var a;n(A=>!A),(a=o.current)===null||a===void 0||a.toggleChat()}}),[]),h.createElement(ur,{ref:o,apiKey:e.apiKey,qaEndpoint:e.qaEndpoint,ratingEndpoint:e.ratingEndpoint,welcomeMessage:e.welcomeMessage,primaryColor:e.primaryColor,secondaryColor:e.secondaryColor,botName:e.botName,logo:e.logo,placeholder:e.placeholder,errorMessage:e.errorMessage,embedded:e.embedded,isLoggedIn:e.isLoggedIn,allowAnonAccess:e.allowAnonAccess,open:r,onOpenChange:n,footerText:e.footerText,footerLink:e.footerLink,tooltipText:e.tooltipText,onAnalyticsEvent:e.onAnalyticsEvent})});ec.displayName="ProgrammaticQABot";const rt={QA_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/chat/api/",RATING_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/chat/rating/",METRICS_API_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/xdmod/chat/api/",METRICS_RATING_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/xdmod/chat/rating/",METRICS_QUESTIONS_URL:"https://metrics.access-ci.org/qa_bot_faq",NETLIFY_BASE_URL:"https://access-jsm-api.netlify.app",DEFAULT_API_KEY:"demo-key"},Ke={BOT_NAME:"ACCESS Q&A",LOGO:"https://support.access-ci.org/themes/contrib/asp-theme/images/icons/ACCESS-arrrow.svg",WELCOME_MESSAGE:"Hello! What can I help you with?",WELCOME_MESSAGE_LOGGED_OUT:"To ask questions, please log in.",LOGIN_URL:"/login",PRIMARY_COLOR:"#1a5b6e",SECONDARY_COLOR:"#107180",TOOLTIP:"Ask me about ACCESS! 😊"},La={SESSION_ID:"access-qa-bot-session-id"};function tc({welcome:e,setTicketForm:t,isLoggedIn:r,trackEvent:n}){return{start:{message:e,options:["Ask a question about ACCESS","Open a Help Ticket","Usage and performance of ACCESS resources (XDMoD)","Report a security issue"],path:o=>(n({type:"chatbot_menu_selected",selection:o.userInput}),o.userInput==="Ask a question about ACCESS"?r?"go_ahead_and_ask":"qa_loop":o.userInput==="Open a Help Ticket"?(t({}),"help_ticket"):o.userInput==="Usage and performance of ACCESS resources (XDMoD)"?"metrics_intro":o.userInput==="Report a security issue"?(t({}),n({type:"chatbot_security_started"}),"security_incident"):"start")},go_ahead_and_ask:{message:`Go ahead and ask your question! I'll do my best to help.
|
|
42
|
+
`);for(;Ut!==-1;){const Kc=Ge.slice(0,Ut);Ge=Ge.slice(Ut+2);let Ft,zt="",Qn="";for(const Qe of Kc.split(`
|
|
43
|
+
`))Qe.startsWith("event: ")?zt=Qe.slice(7):Qe.startsWith("data: ")&&(Qn=Qe.slice(6));if(zt&&Qn){try{Ft=JSON.parse(Qn)}catch{Pr("Failed to parse SSE data:",Qn),Ut=Ge.indexOf(`
|
|
43
44
|
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
`);continue}if(zt==="status"){const Qe=Ft.message||"Processing...";await be.streamMessage("_".concat(Qe,"_"),"BOT"),et=!0}else if(zt==="token"){Ht+=Ft.content||"";const Qe=$t(Ht);await be.streamMessage(Qe,"BOT")}else if(zt==="done"){const Qe=Ft.metadata||{};if(lt=Qe.rating_target||null,Ct=Qe.is_final_response===!0,Ht)console.log("[SSE DEBUG] done: tokenContent exists, skipping streamMessage, calling endStreamMessage"),await be.endStreamMessage("BOT");else{const Aa=Ft.response||"";if(Aa){const Vc=$t(Aa);await be.streamMessage(Vc,"BOT"),et=!0}et&&await be.endStreamMessage("BOT")}}else if(zt==="error"){const Qe=Ft.message||"An error occurred";Se("SSE error event:",Qe),et?(await be.streamMessage(Qe,"BOT"),await be.endStreamMessage("BOT")):await be.injectMessage(Qe)}Ut=Ge.indexOf(`
|
|
46
|
+
|
|
47
|
+
`)}else Ut=Ge.indexOf(`
|
|
48
|
+
|
|
49
|
+
`)}}et&&await be.endStreamMessage("BOT")}catch(Ye){if(Se("Error reading SSE stream:",Ye),!et)throw Ye;await be.streamMessage("I had trouble completing the response. Please try again.","BOT"),await be.endStreamMessage("BOT")}const rn=Date.now()-_e;return me==null||me({type:"chatbot_answer_received",queryId:R,responseTimeMs:rn,success:!0,responseLength:Ht.length}),null}const Lt=Date.now()-_e,fe=await Ne.json();if(fe.requires_turnstile)return me==null||me({type:"chatbot_turnstile_shown",queryId:R}),pe.siteKey=fe.site_key,pe.pendingQuery={query:G,sessionId:K,queryId:R},pe.needsChallenge=!0,"One moment — verifying your session…";const Ze=fe.response||fe.answer||fe.text||fe.message;if(!Ze)throw new Error("Invalid response format from API");const ke=fe.metadata||{};lt=ke.rating_target||null,Ct=ke.is_final_response===!0;const Pt=$t(Ze),St=xt()?na(fe):"",Lr=St?"".concat(Pt,`
|
|
50
|
+
|
|
51
|
+
`).concat(St):Pt;return await be.injectMessage(Lr),me==null||me({type:"chatbot_answer_received",queryId:R,responseTimeMs:Lt,success:!0,responseLength:Ze.length,hasMetadata:!!St}),null}catch(R){return Se("Error in Q&A flow:",R),me==null||me({type:"chatbot_answer_error",queryId:qe??void 0,errorType:R instanceof Error?R.message:"unknown"}),"I apologize, but I'm having trouble processing your question. Please try again later."}},options:be=>je&&je()||be.userInput==="👍 Helpful"||be.userInput==="👎 Not helpful"||pe.needsChallenge?[]:Ct&<&&(lt==="agent"?Ae:ie)?["👍 Helpful","👎 Not helpful"]:[],renderMarkdown:["BOT"],chatDisabled:!1,component:f.createElement(lc,{getState:()=>pe,onResubmit:async be=>{var T;if(pe.pendingQuery&&ut)try{const G={"Content-Type":"application/json"};le&&(G["X-API-KEY"]=le);const R=await fetch(ee,{method:"POST",headers:G,credentials:"include",body:JSON.stringify({query:pe.pendingQuery.query,session_id:pe.pendingQuery.sessionId,question_id:pe.pendingQuery.queryId,turnstile_token:be})}),ne=pe.pendingQuery.queryId;if(!R.ok)throw new Error("API returned ".concat(R.status," after Turnstile"));if((R.headers.get("content-type")||"").includes("text/event-stream")){const fe=(T=R.body)===null||T===void 0?void 0:T.getReader();if(!fe)throw new Error("Response body is not readable");const Ze=new TextDecoder;let ke="",Pt="",St={};for(;;){const{done:Tn,value:Hr}=await fe.read();if(Tn)break;ke+=Ze.decode(Hr,{stream:!0});let Ge=ke.indexOf(`
|
|
52
|
+
|
|
53
|
+
`);for(;Ge!==-1;){const Ht=ke.slice(0,Ge);ke=ke.slice(Ge+2);let et="",rn="";for(const Ye of Ht.split(`
|
|
54
|
+
`))Ye.startsWith("event: ")?et=Ye.slice(7):Ye.startsWith("data: ")&&(rn=Ye.slice(6));if(et&&rn)try{const Ye=JSON.parse(rn);et==="token"?Pt+=Ye.content||"":et==="done"&&(St=Ye.metadata||{})}catch{}Ge=ke.indexOf(`
|
|
55
|
+
|
|
56
|
+
`)}}if(pe.token=null,pe.pendingQuery=null,pe.needsChallenge=!1,pe.siteKey=null,!Pt)throw new Error("No content received from stream");lt=St.rating_target||null,Ct=St.is_final_response===!0,qe=ne;const Lr=$t(Pt);return await ut(Lr),void(me==null||me({type:"chatbot_answer_received",queryId:ne,success:!0,responseLength:Pt.length}))}const K=await R.json();if(K.requires_turnstile)return pe.siteKey=K.site_key,pe.token=null,void await ut("Still verifying — please complete the challenge again.");pe.token=null,pe.pendingQuery=null,pe.needsChallenge=!1,pe.siteKey=null;const ye=K.response||K.answer||K.text||K.message;if(!ye)throw new Error("Invalid response format from API");const Je=K.metadata||{};lt=Je.rating_target||null,Ct=Je.is_final_response===!0,qe=ne;const _e=$t(ye),Ne=xt()?na(K):"",Lt=Ne?"".concat(_e,`
|
|
57
|
+
|
|
58
|
+
`).concat(Ne):_e;await ut(Lt),me==null||me({type:"chatbot_answer_received",queryId:ne,success:!0,responseLength:ye.length})}catch(G){Se("Error resubmitting after Turnstile:",G),pe.token=null,pe.pendingQuery=null,pe.needsChallenge=!1,pe.siteKey=null,await(ut==null?void 0:ut("I had trouble processing your question after verification. Please try again."))}},trackEvent:me,loginUrl:kt}),path:"qa_loop"}}})({endpoint:A,ratingEndpoint:s,agentRatingEndpoint:l,apiKey:i,sessionId:N.current.getSessionId,isResetting:N.current.isResetting,isLoggedIn:q,allowAnonAccess:g,loginUrl:D||oa,trackEvent:Z,getTurnstileToken:()=>y.current});return Object.assign(Object.assign({start:{message:c,renderMarkdown:["BOT"],transition:{duration:0},path:"qa_loop"}},z),B||{})},[i,A,s,l,c,q,g,D,B,v,Z]),Xe=f.useMemo(()=>{return[()=>zs(Y),zl(),()=>Rl(z)];var z,Y},[]);return f.useEffect(()=>{const z=()=>{const re=document.querySelector(".rcb-chat-window");if(!re)return;const ee=re.querySelector(".rcb-send-button");ee&&(ee.hasAttribute("tabindex")||ee.setAttribute("tabindex","0"),ee.hasAttribute("data-keyboard-enabled")||(ee.setAttribute("data-keyboard-enabled","true"),ee.addEventListener("keydown",ie=>{if(ie.key==="Enter"||ie.key===" "){ie.preventDefault();const Ae=ee&&Object.keys(ee).find(Ee=>Ee.startsWith("__reactProps"));if(Ae){const Ee=ee[Ae],je=Ee==null?void 0:Ee.onMouseDown;if(je&&typeof je=="function")return void je(ie)}const le=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});ee.dispatchEvent(le)}})))},Y=setInterval(z,1e3);return z(),()=>clearInterval(Y)},[]),sc(),f.useEffect(()=>{const z=oe.current;if(!z)return;const Y=re=>{var ee,ie,Ae;const le=(ie=(ee=re.target).closest)===null||ie===void 0?void 0:ie.call(ee,"a");le&&le.closest(".rcb-chat-body-container")&&(le.classList.contains("qa-bot-login-button")||le.closest(".rcb-options-container")||Z({type:"chatbot_link_clicked",linkUrl:le.href,linkText:((Ae=le.textContent)===null||Ae===void 0?void 0:Ae.trim())||""}))};return z.addEventListener("click",Y),()=>z.removeEventListener("click",Y)},[Z]),f.useEffect(()=>{if(!W){const z=Y=>{const re=Y.data.newState;u==null||u(re);const ee=M.current;Z(re?{type:"chatbot_open"}:{type:"chatbot_close",messageCount:ee?Ji(ee):0,durationMs:ee?tc(ee):0})};return window.addEventListener("rcb-toggle-chat-window",z),()=>{window.removeEventListener("rcb-toggle-chat-window",z)}}},[W,u,Z]),f.createElement("div",{className:"qa-bot ".concat(!((r=J.general)===null||r===void 0)&&r.embedded?"embedded-qa-bot":""),ref:oe,role:"region","aria-label":"".concat(x||ra).concat(!((n=J.general)===null||n===void 0)&&n.embedded?" - Embedded":"")},f.createElement(nc,{getSessionId:()=>M.current,setSessionId:z=>{const Y=M.current;M.current=z,kn("RESTORED","".concat(Y==null?void 0:Y.slice(-12)," -> ").concat(z.slice(-12)))},resetSession:()=>{const z=M.current;U.current=!0,M.current=Xi(),kn("RESET","".concat(z==null?void 0:z.slice(-12)," -> ").concat(M.current.slice(-12)))},clearResettingFlag:()=>{U.current=!1}},f.createElement(jl,{trackEvent:Z},f.createElement(mo,null,f.createElement("div",null,f.createElement(ac,null),f.createElement(ji,{ref:t,embedded:((o=J.general)===null||o===void 0?void 0:o.embedded)||!1,currentOpen:d||!1,enabled:q!==!1,onSetEnabled:z=>b(!!z&&void 0)}),f.createElement(xs,{key:"chatbot-".concat(F.current,"-").concat(q),settings:J,flow:ce,plugins:Xe}),f.createElement("div",{role:"status","aria-live":"polite","aria-label":"Bot response updates",className:"sr-only",id:"bot-live-region",style:{position:"absolute",width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0}}),f.createElement("div",{id:"chat-input-help",className:"sr-only",style:{position:"absolute",width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0}},"Type your message and press Enter to send. Use arrow keys to navigate through response options."))))))});Ir.displayName="QABot",Ur('.rcb-chat-window{height:800px!important;max-height:80vh!important;max-width:100%;width:550px!important}.rcb-chat-window .rcb-chat-header{align-items:center;display:flex;flex-direction:row;font-weight:700}.rcb-chat-window a{color:#000;font-weight:700;text-decoration:underline}.rcb-chat-window a:hover{color:var(--primaryColor,#107180)}.rcb-chat-window .rcb-bot-message a,.rcb-chat-window .rcb-bot-message a:link,.rcb-chat-window .rcb-bot-message a:visited{color:#fff!important;text-decoration:underline!important}.rcb-chat-window .rcb-bot-message a:hover{opacity:.85;text-decoration:underline!important}.rcb-chat-window .rcb-chat-input-textarea{overflow-y:auto}.rcb-chat-window .rcb-chat-footer-container{font-size:10px}.qa-bot .history-button,.qa-bot .user-login-icon{display:none!important}.qa-bot.bot-logged-in .history-button,.qa-bot.bot-logged-in .user-login-icon{display:flex!important;transform:scale(1.3) translateY(-2px)}.qa-bot.bot-logged-in .history-button:hover{opacity:.8}.qa-bot.bot-logged-in .history-button:focus{outline:2px solid #fff;outline-offset:2px}.embedded-qa-bot .rcb-chat-window{max-width:100%;width:100%!important}.qa-bot.hidden{display:none}.embedded-qa-bot .rcb-bot-message,.embedded-qa-bot .rcb-user-message{max-width:90%!important;word-break:break-word}.embedded-qa-bot .rcb-chat-input-textarea{width:100%!important}.qa-bot-container{max-width:100%;width:100%}.rcb-chat-tooltip{background-color:#1a5b6e;color:#fff}.rcb-chat-tooltip-tail{border-color:#0000 #0000 #0000 #1a5b6e}@keyframes phone-ring{0%{transform:translateX(0) translateY(0) rotate(0deg)}2%{transform:translateX(0) translateY(-8px) rotate(-2deg)}4%{transform:translateX(0) translateY(-6px) rotate(2deg)}6%{transform:translateX(0) translateY(-8px) rotate(-1deg)}8%{transform:translateX(0) translateY(-6px) rotate(1deg)}10%{transform:translateX(0) translateY(-8px) rotate(-2deg)}12%{transform:translateX(0) translateY(-6px) rotate(2deg)}20%{transform:translateX(0) translateY(0) rotate(0deg)}30%{transform:translateX(0) translateY(0) rotate(0deg)}40%{transform:translateX(0) translateY(0) rotate(0deg)}49%{transform:translateX(0) translateY(0) rotate(0deg)}50%{transform:translateX(0) translateY(-8px) rotate(-2deg)}52%{transform:translateX(0) translateY(-6px) rotate(2deg)}54%{transform:translateX(0) translateY(-8px) rotate(-1deg)}56%{transform:translateX(0) translateY(-6px) rotate(1deg)}58%{transform:translateX(0) translateY(-8px) rotate(-2deg)}60%{transform:translateX(0) translateY(-6px) rotate(2deg)}70%{transform:translateX(0) translateY(0) rotate(0deg)}to{transform:translateX(0) translateY(0) rotate(0deg)}}@media (max-width:768px){.rcb-chat-window{max-height:calc(100vh - 100px)!important;max-width:calc(100vw - 40px)!important;width:550px!important}.embedded-chat-container.open{height:400px}.embedded-chat-closed{font-size:14px;height:40px}.embedded-chat-open-btn{font-size:12px;padding:3px 10px}.rcb-bot-message,.rcb-user-message{max-width:85%!important}.rcb-chat-input-textarea{font-size:16px!important;min-height:44px!important}.rcb-chat-header{padding:12px 16px!important}}@media (max-width:480px){.rcb-chat-window{bottom:10px!important;left:10px!important;max-height:calc(100vh - 80px)!important;max-width:calc(100vw - 20px)!important;right:10px!important;width:calc(100vw - 20px)!important}.embedded-chat-container.open{height:350px}.rcb-bot-message,.rcb-user-message{margin-bottom:8px!important;max-width:90%!important}.rcb-chat-header{font-size:14px!important;padding:8px 12px!important}.rcb-chat-button{bottom:20px!important;height:50px!important;right:20px!important;width:50px!important}.rcb-chat-footer-container{font-size:9px!important;padding:8px 12px!important}}@media (max-width:360px){.rcb-chat-window{left:5px!important;max-width:calc(100vw - 10px)!important;right:5px!important;width:calc(100vw - 10px)!important}.rcb-chat-header{font-size:13px!important;padding:6px 8px!important}}.rcb-checkbox-container{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-left:16px!important;max-width:100%!important;padding-top:12px!important}.rcb-checkbox-row-container{align-items:center!important;background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--primaryColor,#107180)!important;cursor:pointer!important;display:flex!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;margin:0!important;max-height:auto!important;min-height:auto!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-checkbox-row-container:hover{background-color:#e8f4f8!important;border-color:var(--primaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.rcb-checkbox-row-container[data-checked=true]{background-color:var(--primaryColor,#107180)!important;border-color:var(--primaryColor,#107180)!important;color:#fff!important}.rcb-checkbox-row{margin-left:0!important}.rcb-checkbox-mark{height:14px!important;margin-right:6px!important;width:14px!important}.rcb-checkbox-label{font-size:13px!important;margin:0!important;white-space:nowrap!important}.rcb-checkbox-next-button{align-items:center!important;background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--secondaryColor,#107180)!important;cursor:pointer!important;display:flex!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;justify-content:center!important;line-height:24px!important;margin:0!important;max-height:auto!important;min-height:auto!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-checkbox-next-button:hover{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.rcb-chat-input-send-button:focus,.rcb-chat-input-textarea:focus{outline:2px solid var(--primaryColor,#107180)!important;outline-offset:2px!important}.rcb-user-message{word-wrap:break-word!important;overflow:hidden!important;word-break:break-word!important}:focus-visible{outline:2px solid var(--primaryColor,#107180)!important;outline-offset:2px!important}.rcb-options-container{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;margin:16px!important;padding:0!important}.rcb-options{background-color:#fff!important;border:1px solid #d0d0d0!important;border-radius:6px!important;box-sizing:border-box!important;color:var(--secondaryColor,#107180)!important;cursor:pointer!important;flex:0 0 auto!important;font-size:14px!important;font-weight:400!important;outline:none!important;padding:8px 12px!important;text-align:center!important;transition:all .2s ease!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto!important}.rcb-options:hover{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;box-shadow:0 2px 4px #10718033!important;transform:translateY(-1px)!important}.rcb-checkbox-next-button.keyboard-focused,.rcb-checkbox-next-button:focus,.rcb-checkbox-next-button:focus-visible,.rcb-checkbox-row-container.keyboard-focused,.rcb-checkbox-row-container:focus,.rcb-checkbox-row-container:focus-visible,.rcb-options.keyboard-focused,.rcb-options:focus,.rcb-options:focus-visible{background-color:#e8f4f8!important;border-color:var(--secondaryColor,#107180)!important;outline:none!important}.rcb-options:active{background-color:var(--secondaryColor,#107180)!important;border-color:var(--secondaryColor,#107180)!important;color:#fff!important;transform:translateY(0)!important}.keyboard-nav-hint{color:#666!important;font-size:12px!important;font-style:italic!important;margin-bottom:8px!important}@media (prefers-reduced-motion:reduce){.keyboard-nav-hint{display:none!important}}.rcb-options-container [role=button][tabindex="0"],.rcb-options-container button[tabindex="0"]{position:relative!important}.rcb-options-container [role=button][tabindex="0"]:after,.rcb-options-container button[tabindex="0"]:after{color:var(--secondaryColor,#107180)!important;content:"←"!important;font-size:16px!important;opacity:0!important;position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;transition:opacity .2s ease!important}.rcb-options-container [role=button][tabindex="0"]:focus:after,.rcb-options-container button[tabindex="0"]:focus:after{opacity:1!important}.rcb-chat-input-send-button{cursor:pointer!important;opacity:1!important;pointer-events:auto!important;visibility:visible!important}.rcb-chat-input-send-button:not([tabindex]){-webkit-user-select:none;-moz-user-select:none;user-select:none}.rcb-chat-input-container [onclick],.rcb-chat-input-container [role=button],.rcb-chat-input-container div[style*=cursor],.rcb-chat-input-container svg:last-child,.rcb-chat-input-container>div:last-child{tabindex:0!important;cursor:pointer!important}.rcb-chat-footer{margin-top:4px!important;padding-top:0!important}.rcb-chat-footer-container{align-items:center!important;display:flex!important;margin-top:4px!important;padding-top:4px!important}.rcb-chat-footer-container button{order:1!important}.rcb-chat-footer-container a[href*=qa-bot-core]{tab-index:0!important;order:2!important}.rcb-chat-footer-container a[href*=feedback]{tab-index:0!important;order:3!important}@media (prefers-contrast:high){.rcb-chat-window a{background-color:#fff!important;border:1px solid #000!important;color:#000!important}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.rcb-chat-input-textarea{user-select:text!important}.rcb-chat-body-container,.rcb-chat-input-textarea,.rcb-chat-window{touch-action:pan-y!important}.embedded-qa-bot,.rcb-chat-window{-webkit-overflow-scrolling:touch!important}.embedded-qa-bot .rcb-chat-input-textarea{touch-action:pan-y!important;user-select:text!important}.embedded-qa-bot .rcb-chat-body-container,.embedded-qa-bot .rcb-chat-window{touch-action:pan-y!important}.rcb-chat-header-container{background:var(--primaryColor,#1a5b6e)!important;background:linear-gradient(135deg,var(--primaryColor,#1a5b6e) 0,var(--secondaryColor,#107180) 100%)!important}.rcb-toggle-button{align-items:center!important;background:var(--primaryColor,#1a5b6e)!important;display:flex!important;justify-content:center!important}.rcb-toggle-button svg{stroke:#fff!important;color:#fff!important}.rcb-toggle-button *,.rcb-toggle-button img,.rcb-toggle-button svg,.rcb-toggle-button>*{box-sizing:border-box!important;height:50px!important;left:0!important;margin:0 auto!important;max-height:50px!important;max-width:50px!important;min-height:50px!important;min-width:50px!important;padding:2px!important;position:relative!important;top:0!important;width:50px!important}.rcb-send-button{background-color:var(--primaryColor,#1a5b6e)!important}',{insertAt:"top"});const bc=()=>{const[e,t]=f.useState(!1),r=()=>typeof navigator<"u"&&navigator.mediaDevices!==void 0&&typeof navigator.mediaDevices.getDisplayMedia=="function";return{captureScreenshot:async()=>{if(!r())throw new Error("Screen capture is not available in this environment");try{t(!0);const n=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser",cursor:"always",width:{ideal:1920},height:{ideal:1080}},audio:!1}),o=document.createElement("video");o.srcObject=n,await new Promise(c=>{o.onloadedmetadata=()=>{o.play(),c()}});const i=document.createElement("canvas");i.width=o.videoWidth,i.height=o.videoHeight;const A=i.getContext("2d");if(!A)throw new Error("Could not get canvas context");A.drawImage(o,0,0,i.width,i.height);const s=await new Promise(c=>i.toBlob(c,"image/png"));if(!s)throw new Error("Could not create image blob");const a=new Date().toISOString().replace(/[:.]/g,"-"),l=new File([s],"screenshot-".concat(a,".png"),{type:"image/png"});return n.getTracks().forEach(c=>c.stop()),t(!1),l}catch(n){throw Se("Error capturing screenshot:",n),t(!1),n}},isCapturing:e,isScreenCaptureAvailable:r()}},vc=e=>f.createElement($i,e,f.createElement("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),f.createElement("polyline",{points:"17 8 12 3 7 8"}),f.createElement("line",{x1:"12",y1:"3",x2:"12",y2:"15"})),wc=e=>new Promise((t,r)=>{const n=new FileReader;n.onload=()=>{if(typeof n.result!="string")return void r(new Error("Failed to read file ".concat(e.name)));const o=n.result.split(",")[1];t({fileName:e.name,contentType:e.type,size:e.size,fileData:o})},n.onerror=()=>r(new Error("Failed to read file ".concat(e.name))),n.readAsDataURL(e)}),xc=e=>Promise.all(e.map(wc)),Ec=e=>e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB"),Sn=e=>{let{onFileUpload:t,maxSizeMB:r=10,acceptedTypes:n="image/*,application/pdf,text/*,.doc,.docx",enableScreenshot:o=!1,className:i}=e;const[A,s]=f.useState(!1),[a,l]=f.useState([]),[c,d]=f.useState(null),u=f.useRef(null),{captureScreenshot:p,isCapturing:g,isScreenCaptureAvailable:v}=bc(),h=C=>{const S=document.createElement("div");S.setAttribute("aria-live","assertive"),S.setAttribute("aria-atomic","true"),S.className="sr-only",S.textContent=C,document.body.appendChild(S),setTimeout(()=>document.body.removeChild(S),1e3)},w=C=>{if(!C||C.length===0)return void Pr("FileUploadComponent: No valid files provided to handleFiles");let S;try{S=Array.from(C)}catch(O){return Se("FileUploadComponent: Error converting files to array:",O),void h("Error processing selected files. Please try again.")}const I=[...a,...S];l(I);const Q=S.length,D=S.map(O=>O.name).join(", ");h("".concat(Q," file").concat(Q>1?"s":""," selected: ").concat(D)),setTimeout(()=>{const O=document.querySelector(".rcb-chat-content");O&&(O.scrollTop=O.scrollHeight)},100),t&&t(I)},x=C=>{C.preventDefault(),C.stopPropagation(),C.type==="dragenter"||C.type==="dragover"?s(!0):C.type==="dragleave"&&s(!1)},m=()=>{try{u.current&&u.current.click()}catch(C){Se("FileUploadComponent: Error in handleButtonClick:",C),h("Error opening file selection dialog. Please try again.")}},k=()=>{d(null)},P=o&&v;return f.createElement("div",{className:"file-upload-container ".concat(i||""),style:{padding:"16px",margin:"8px 0"}},P&&f.createElement("div",{style:{display:"flex",justifyContent:"center",marginBottom:"10px"}},f.createElement("button",{onClick:C=>{C.preventDefault(),(async()=>{try{const S=await p();w([S]),h("Screenshot captured successfully")}catch{h("Error capturing screenshot. Please try again.")}})()},disabled:g,"aria-describedby":"screenshot-help","aria-label":g?"Taking screenshot, please wait":"Take a screenshot to attach",style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:"#107180",color:"white",border:"none",borderRadius:"5px",padding:"8px 12px",cursor:g?"not-allowed":"pointer",fontSize:"14px",fontWeight:"500",boxShadow:"0 1px 3px rgba(0,0,0,0.2)"}},f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"}),f.createElement("circle",{cx:"12",cy:"13",r:"4"})),g?"Taking screenshot...":"Take screenshot..."),f.createElement("span",{id:"screenshot-help",className:"sr-only"},"Captures the current screen and adds it as an attachment")),f.createElement("div",{className:"file-upload-dropzone ".concat(A?"active":""),onDragEnter:x,onDragLeave:x,onDragOver:x,onDrop:C=>{var S;C.preventDefault(),C.stopPropagation(),s(!1);try{!((S=C.dataTransfer)===null||S===void 0)&&S.files&&C.dataTransfer.files.length>0&&w(C.dataTransfer.files)}catch(I){Se("FileUploadComponent: Error in handleDrop:",I),h("Error processing dropped files. Please try again.")}},role:"button",tabIndex:0,"aria-label":"File upload area. Click to select files or drag and drop files here.","aria-describedby":"upload-instructions",onKeyDown:C=>{C.key!=="Enter"&&C.key!==" "||(C.preventDefault(),m())},style:{padding:"20px",border:"2px dashed #ccc",borderRadius:"8px",backgroundColor:A?"#f0f8ff":"#fafafa",transition:"all 0.3s ease"}},f.createElement("input",{ref:u,type:"file",className:"file-input",onChange:C=>{var S;try{!((S=C.target)===null||S===void 0)&&S.files&&C.target.files.length>0&&w(C.target.files)}catch(I){Se("FileUploadComponent: Error in handleFileSelect:",I),h("Error processing selected files. Please try again.")}},multiple:!0,style:{display:"none"},"aria-label":"Select files to upload",accept:n}),f.createElement("div",{className:"upload-content",onClick:m,style:{cursor:"pointer",flexDirection:"column",alignItems:"center",display:"flex",textAlign:"center",padding:"12px"}},f.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"8px"}},f.createElement("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",gap:"10px"}},f.createElement(vc,null),f.createElement("p",{style:{margin:0,fontWeight:"bold"}},"Upload Files")),f.createElement("p",{id:"upload-instructions",style:{margin:0,fontSize:"14px",color:"#666"}},"Drag and drop files here or click to select. (Max ",r,"MB each)")),a.length>0&&f.createElement("div",{className:"selected-files",style:{display:"flex",flexWrap:"wrap",gap:"8px",marginTop:"12px",alignItems:"center"}},f.createElement("span",{style:{fontWeight:400,color:"#888",fontSize:"13px",marginRight:"8px",alignSelf:"center"}},"Selected files:"),a.map((C,S)=>f.createElement("span",{key:S,style:{background:"#fff",color:"#107180",borderRadius:"5px",padding:"4px 12px",fontSize:"14px",marginRight:"4px",marginBottom:"4px",border:"1px solid #ccc",display:"flex",alignItems:"center",gap:"6px",cursor:"pointer"},onClick:I=>{I.stopPropagation(),(Q=>{d(Q)})(C)}},f.createElement("span",{onClick:I=>{I.stopPropagation(),(Q=>{const D=a.filter((O,B)=>B!==Q);l(D),t&&t(D)})(S)},style:{cursor:"pointer",color:"#888",fontWeight:"bold",fontSize:"15px",marginRight:"4px",userSelect:"none",lineHeight:1},title:"Remove file","aria-label":"Remove ".concat(C.name)},"×"),C.name," (",Ec(C.size),")"))))),(()=>{if(!c)return null;const C=c.type.startsWith("image/"),S=c.type.startsWith("text/"),I=c.type==="application/pdf";return f.createElement("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.7)",display:"flex",justifyContent:"center",alignItems:"center",zIndex:1e3},onClick:k},f.createElement("div",{style:{backgroundColor:"white",padding:"20px",borderRadius:"8px",maxWidth:"90%",maxHeight:"90%",overflow:"auto",position:"relative"},onClick:Q=>Q.stopPropagation()},f.createElement("button",{onClick:k,style:{position:"absolute",top:"10px",right:"10px",background:"none",border:"none",fontSize:"24px",cursor:"pointer",color:"#666"}},"×"),f.createElement("h3",{style:{marginTop:0,marginBottom:"16px"}},c.name),C&&f.createElement("img",{src:URL.createObjectURL(c),alt:c.name,style:{maxWidth:"100%",maxHeight:"70vh"}}),S&&f.createElement("pre",{style:{whiteSpace:"pre-wrap",wordWrap:"break-word",maxHeight:"70vh",overflow:"auto",padding:"16px",backgroundColor:"#f5f5f5",borderRadius:"4px"}},URL.createObjectURL(c)),I&&f.createElement("iframe",{src:URL.createObjectURL(c),style:{width:"100%",height:"70vh",border:"none"},title:c.name}),!C&&!S&&!I&&f.createElement("div",{style:{padding:"20px",textAlign:"center"}},"Preview not available for this file type")))})())};function kc(e,t){if(!t||Object.keys(t).length===0)return e;const r={};for(const[n,o]of Object.entries(e)){let i=Object.assign({},o);if(i.chatDisabled===void 0){const A=!(!i.options&&!i.checkboxes);i.chatDisabled=A}r[n]=i}return r}function Bn(e){return async t=>{const r=await e(t);await t.injectMessage(r)}}const Cc=f.forwardRef((e,t)=>{const[r,n]=f.useState(e.defaultOpen||!1),o=f.useRef(null);return f.useImperativeHandle(t,()=>({addMessage:i=>{var A;(A=o.current)===null||A===void 0||A.addMessage(i)},setBotEnabled:i=>{var A;(A=o.current)===null||A===void 0||A.setBotEnabled(i)},openChat:()=>{var i;n(!0),(i=o.current)===null||i===void 0||i.openChat()},closeChat:()=>{var i;n(!1),(i=o.current)===null||i===void 0||i.closeChat()},toggleChat:()=>{var i;n(A=>!A),(i=o.current)===null||i===void 0||i.toggleChat()}}),[]),f.createElement(Ir,{ref:o,apiKey:e.apiKey,qaEndpoint:e.qaEndpoint,ratingEndpoint:e.ratingEndpoint,welcomeMessage:e.welcomeMessage,primaryColor:e.primaryColor,secondaryColor:e.secondaryColor,botName:e.botName,logo:e.logo,placeholder:e.placeholder,errorMessage:e.errorMessage,embedded:e.embedded,isLoggedIn:e.isLoggedIn,allowAnonAccess:e.allowAnonAccess,turnstileSiteKey:e.turnstileSiteKey,open:r,onOpenChange:n,footerText:e.footerText,footerLink:e.footerLink,tooltipText:e.tooltipText,onAnalyticsEvent:e.onAnalyticsEvent})});Cc.displayName="ProgrammaticQABot";const Re={QA_ENDPOINT:"http://localhost:8000/api/v1/query",RATING_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/chat/rating/",AGENT_ENDPOINT:"http://localhost:8000/api/v1",get CAPABILITIES_ENDPOINT(){return`${this.AGENT_ENDPOINT}/capabilities`},get AGENT_RATING_ENDPOINT(){return`${this.AGENT_ENDPOINT}/rating`},METRICS_API_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/xdmod/chat/api/",METRICS_RATING_ENDPOINT:"https://access-ai-grace1-external.ccs.uky.edu/access/xdmod/chat/rating/",METRICS_QUESTIONS_URL:"https://metrics.access-ci.org/qa_bot_faq",NETLIFY_BASE_URL:"https://access-jsm-api.netlify.app",DEFAULT_API_KEY:"4nn5l4T4TnkMdzsK0AwAtnGRcheBDnjawuAT42LaOLc",TURNSTILE_SITE_KEY:"1x00000000000000000000BB",ALLOW_ANON_ACCESS:!0},mt={BOT_NAME:"ACCESS Q&A",LOGO:"https://support.access-ci.org/themes/contrib/asp-theme/images/icons/ACCESS-arrrow.svg",WELCOME_MESSAGE:`Hello! What can I help you with?
|
|
59
|
+
|
|
60
|
+
<em>This assistant is powered by AI. Responses may not always be accurate. Do not share passwords or secrets.</em> <a href="https://support.access-ci.org/tools/access-qa-tool/privacy">Privacy Notice</a>`,LOGIN_URL:"/login",PRIMARY_COLOR:"#1a5b6e",SECONDARY_COLOR:"#107180",TOOLTIP:"Ask me about ACCESS! 😊"},ia={SESSION_ID:"access-qa-bot-session-id"};function Pc(e){if(!e||!e.categories)return["Show my options"];const t=[];for(const r of e.categories)if(!(!r.capabilities||r.capabilities.length===0)&&r.id!=="general")if(r.capabilities.length===1){const n=r.capabilities[0];t.push(n.locked?`🔒 ${n.label}`:n.label)}else t.push(r.label);return t.push("Show my options"),t}function Sc({welcome:e,trackEvent:t,capabilities:r}){const n=Pc(r);return{start:{message:e,renderHtml:["BOT"],options:n,chatDisabled:!1,path:o=>(t({type:"chatbot_menu_selected",selection:o.userInput}),"qa_loop")}}}let Tr=null;function Bc(e){Tr=e}function V(){return Tr?Tr.ticketForm||{}:(console.warn("Form context not available, returning empty form"),{})}function Be(e={}){const t=V();return{...t,email:e.email||t.email,name:e.name||t.name,accessId:e.accessId||t.accessId}}function Qr(e){return e&&e.length>0?`
|
|
61
|
+
Attachments: ${e.length} file(s) attached`:""}const Nt={SUPPORT:17,LOGIN_ACCESS:30,LOGIN_PROVIDER:31,SECURITY:26};async function Dc(e,t="support",r=[]){const o={support:Nt.SUPPORT,general_help:Nt.SUPPORT,loginAccess:Nt.LOGIN_ACCESS,loginProvider:Nt.LOGIN_PROVIDER,security:Nt.SECURITY}[t]||Nt.SUPPORT,A={serviceDeskId:t==="security"?3:2,requestTypeId:o,requestFieldValues:{...e}};return r.length>0&&(A.attachments=await xc(r)),A}async function Ic(e,t){var o,i;const n=`${Re.NETLIFY_BASE_URL}/api/v1/${t}`;try{const A=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!A.ok){let a="";try{const l=await A.text();try{const c=JSON.parse(l);a=c.message||c.error||l}catch{a=l}}catch{a=`HTTP ${A.status} ${A.statusText}`}return A.status===403?a="The ticket service is temporarily unavailable. Please try again later or contact support directly.":A.status===404?a="Ticket service not found. Please try again later.":A.status===500?a="Server error. Please try again later.":A.status===401&&(a="Authentication error with the ticket service. Please contact support."),{success:!1,status:A.status,error:a}}const s=await A.json();return{success:!0,ticketKey:(o=s.data)==null?void 0:o.ticketKey,ticketUrl:(i=s.data)==null?void 0:i.ticketUrl}}catch(A){return{success:!1,error:A instanceof Error?A.message:"Unknown error"}}}async function Dn(e,t,r=[]){try{const n=await Dc(e,t,r);return await Ic(n,t==="security"?"security-incidents":"tickets")}catch(n){return{success:!1,error:n instanceof Error?n.message:"Unknown error"}}}function Mr(e,t="ticket"){return e?e.success?e.ticketUrl&&e.ticketKey?`Your ${t} has been submitted successfully.
|
|
46
62
|
|
|
47
63
|
Ticket: <a href="${e.ticketUrl}" target="_blank">${e.ticketKey}</a>
|
|
48
64
|
|
|
@@ -52,50 +68,50 @@ Our support team will review your request and respond accordingly. Thank you for
|
|
|
52
68
|
|
|
53
69
|
Please try again or contact our support team directly.`:`We apologize, but there was an error submitting your ${t}.
|
|
54
70
|
|
|
55
|
-
Please try again or contact our support team directly.`}function
|
|
71
|
+
Please try again or contact our support team directly.`}function In(e){return!e||e.trim()===""?{success:!1,promptContent:"Email is required",promptDuration:3e3,promptType:"error"}:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)?{success:!0}:{success:!1,promptContent:"Please enter a valid email address",promptDuration:3e3,promptType:"error"}}function en(){return()=>({success:!0})}function tn(e){return!e||e.trim()===""||e.trim().toLowerCase()==="skip"?"":e.trim()}function Tc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){let o=null;const i=async(s,a=[])=>{o=await Dn(s,"loginAccess",a),o.success?(t(l=>({...l,ticketKey:o.ticketKey,ticketUrl:o.ticketUrl})),n({type:"chatbot_ticket_submitted",ticketType:"access_login",success:!0,ticketKey:o.ticketKey})):(t(l=>({...l,submissionError:o.error})),n({type:"chatbot_ticket_error",ticketType:"access_login",errorType:o.error||"unknown"}))};return{access_help:{message:`If you're having trouble logging into the ACCESS website, here are some common issues:
|
|
56
72
|
|
|
57
73
|
• Make sure you're using a supported browser (Chrome, Firefox, Safari)
|
|
58
74
|
• Clear your browser cookies and cache
|
|
59
75
|
• Check if you're using the correct identity provider
|
|
60
76
|
|
|
61
|
-
Would you like to submit a help ticket for ACCESS login issues?`,options:["Yes, let's create a ticket","Back to Main Menu"],path:s=>s.userInput==="Yes, let's create a ticket"?"access_login_description":"start"},access_login_description:{message:"Describe your login issue.",function:s=>{const
|
|
77
|
+
Would you like to submit a help ticket for ACCESS login issues?`,options:["Yes, let's create a ticket","Back to Main Menu"],path:s=>s.userInput==="Yes, let's create a ticket"?"access_login_description":"start"},access_login_description:{message:"Describe your login issue.",function:s=>{const a=V();t({...a,description:s.userInput,email:r.email||a.email,name:r.name||a.name,accessId:r.accessId||a.accessId}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"description"})},path:"access_login_identity"},access_login_identity:{message:"Which identity provider were you using?",options:["ACCESS","Github","Google","Institution","Microsoft","ORCID","Other"],function:s=>{const a=V();t({...a,identityProvider:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"identity_provider"})},path:"access_login_browser"},access_login_browser:{message:"Which browser were you using?",options:["Chrome","Firefox","Edge","Safari","Other"],function:s=>{const a=V();t({...a,browser:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"browser"})},path:"access_login_attachment"},access_login_attachment:{message:"Would you like to attach a screenshot?",options:["Yes","No"],function:s=>{const a=V();t({...a,wantsAttachment:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"attachment_choice"})},path:s=>{if(s.userInput==="Yes")return"access_login_upload";const a=Be(r);return a.email?a.name?a.accessId?"access_login_summary":"access_login_accessid":"access_login_name":"access_login_email"}},access_login_upload:{message:"Please upload your screenshot.",component:E.jsx(Sn,{onFileUpload:s=>{t(a=>({...a,uploadedFiles:s})),s.forEach(a=>{n({type:"chatbot_file_uploaded",fileType:a.type||"unknown",fileSize:a.size})})},enableScreenshot:!0,maxSizeMB:10}),options:["Continue"],function:()=>{const s=V();t({...s,uploadConfirmed:!0}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"file_upload"})},path:()=>{const s=Be(r);return s.email?s.name?s.accessId?"access_login_summary":"access_login_accessid":"access_login_name":"access_login_email"}},access_login_email:{message:"What is your email?",validateTextInput:In,function:s=>{const a=V();t({...a,email:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"email"})},path:()=>{const s=Be(r);return s.name?s.accessId?"access_login_summary":"access_login_accessid":"access_login_name"}},access_login_name:{message:"What is your name?",function:s=>{const a=V();t({...a,name:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"name"})},path:()=>Be(r).accessId?"access_login_summary":"access_login_accessid"},access_login_accessid:{message:"What is your ACCESS ID? (Optional - press Enter to skip)",validateTextInput:en(),function:s=>{const a=V();t({...a,accessId:tn(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"access_login",step:"access_id"})},path:"access_login_summary"},access_login_summary:{message:s=>{const a=V(),l=Be(r),c=Qr(a.uploadedFiles);let d=l.accessId;return s.prevPath==="access_login_accessid"&&s.userInput&&(d=s.userInput),`Thank you for providing your ACCESS login issue details. Here's a summary:
|
|
62
78
|
|
|
63
|
-
Name: ${
|
|
64
|
-
Email: ${
|
|
79
|
+
Name: ${l.name||"Not provided"}
|
|
80
|
+
Email: ${l.email||"Not provided"}
|
|
65
81
|
ACCESS ID: ${d||"Not provided"}
|
|
66
|
-
Identity Provider: ${
|
|
67
|
-
Browser: ${
|
|
68
|
-
Issue Description: ${
|
|
82
|
+
Identity Provider: ${a.identityProvider||"Not provided"}
|
|
83
|
+
Browser: ${a.browser||"Not provided"}
|
|
84
|
+
Issue Description: ${a.description||"Not provided"}${c}
|
|
69
85
|
|
|
70
|
-
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],renderHtml:["BOT","USER"],function:async s=>{if(s.userInput==="Submit Ticket"){const
|
|
86
|
+
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],renderHtml:["BOT","USER"],function:async s=>{if(s.userInput==="Submit Ticket"){const a=V(),l=Be(r),c={email:l.email||"",name:l.name||"",accessId:l.accessId||"",description:a.description||"",identityProvider:a.identityProvider||"",browser:a.browser||""};await i(c,a.uploadedFiles||[])}},path:s=>s.userInput==="Submit Ticket"?"access_login_success":"start"},access_login_success:{message:Bn(()=>Mr(o,"ACCESS login ticket")),options:["Back to Main Menu"],renderHtml:["BOT"],path:"start"}}}function Qc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){let o=null;const i=async(s,a=[])=>{o=await Dn(s,"loginProvider",a),o.success?(t(l=>({...l,ticketKey:o.ticketKey,ticketUrl:o.ticketUrl})),n({type:"chatbot_ticket_submitted",ticketType:"resource_login",success:!0,ticketKey:o.ticketKey})):(t(l=>({...l,submissionError:o.error})),n({type:"chatbot_ticket_error",ticketType:"resource_login",errorType:o.error||"unknown"}))};return{resource_help:{message:`If you're having trouble logging into an affiliated infrastructure or resource provider, here are some common issues:
|
|
71
87
|
|
|
72
88
|
• Ensure your allocation is active
|
|
73
89
|
• Confirm you have the correct username for that resource
|
|
74
90
|
• Check <a href="https://operations.access-ci.org/infrastructure_news_view">System Status News</a> to see if the resource is undergoing maintenance
|
|
75
91
|
|
|
76
|
-
Would you like to submit a help ticket for resource provider login issues?`,options:["Yes, let's create a ticket","Back to Main Menu"],renderHtml:["BOT"],path:s=>s.userInput==="Yes, let's create a ticket"?"resource_login_resource":"start"},resource_login_resource:{message:"Which ACCESS Resource are you trying to access?",options:["ACES","Anvil","Bridges-2","DARWIN","Delta","DeltaAI","Derecho","Expanse","FASTER","Granite","Jetstream2","KyRIC","Launch","Neocortex","Ookami","Open Science Grid","Open Storage Network","Ranch","Stampede3"],function:s=>{const
|
|
92
|
+
Would you like to submit a help ticket for resource provider login issues?`,options:["Yes, let's create a ticket","Back to Main Menu"],renderHtml:["BOT"],path:s=>s.userInput==="Yes, let's create a ticket"?"resource_login_resource":"start"},resource_login_resource:{message:"Which ACCESS Resource are you trying to access?",options:["ACES","Anvil","Bridges-2","DARWIN","Delta","DeltaAI","Derecho","Expanse","FASTER","Granite","Jetstream2","KyRIC","Launch","Neocortex","Ookami","Open Science Grid","Open Storage Network","Ranch","Stampede3"],function:s=>{const a=V();t({...a,resource:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"resource_selection"})},path:"resource_login_userid"},resource_login_userid:{message:"What is your user ID at the resource?",function:s=>{const a=V();t({...a,userIdResource:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"user_id"})},path:"resource_login_description"},resource_login_description:{message:"Please describe the issue you're having logging in.",function:s=>{const a=V();t({...a,description:s.userInput,email:r.email||a.email,name:r.name||a.name,accessId:r.accessId||a.accessId}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"description"})},path:"resource_login_attachment"},resource_login_attachment:{message:"Would you like to attach a screenshot?",options:["Yes","No"],function:s=>{const a=V();t({...a,wantsAttachment:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"attachment_choice"})},path:s=>{if(s.userInput==="Yes")return"resource_login_upload";const a=Be(r);return a.email?a.name?a.accessId?"resource_login_summary":"resource_login_accessid":"resource_login_name":"resource_login_email"}},resource_login_upload:{message:"Please upload your screenshot.",component:E.jsx(Sn,{onFileUpload:s=>{t(a=>({...a,uploadedFiles:s})),s.forEach(a=>{n({type:"chatbot_file_uploaded",fileType:a.type||"unknown",fileSize:a.size})})},enableScreenshot:!0,maxSizeMB:10}),options:["Continue"],function:()=>{const s=V();t({...s,uploadConfirmed:!0}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"file_upload"})},path:()=>{const s=Be(r);return s.email?s.name?s.accessId?"resource_login_summary":"resource_login_accessid":"resource_login_name":"resource_login_email"}},resource_login_email:{message:"What is your email?",validateTextInput:In,function:s=>{const a=V();t({...a,email:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"email"})},path:()=>{const s=Be(r);return s.name?s.accessId?"resource_login_summary":"resource_login_accessid":"resource_login_name"}},resource_login_name:{message:"What is your name?",function:s=>{const a=V();t({...a,name:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"name"})},path:()=>Be(r).accessId?"resource_login_summary":"resource_login_accessid"},resource_login_accessid:{message:"What is your ACCESS ID? (Optional - press Enter to skip)",validateTextInput:en(),function:s=>{const a=V();t({...a,accessId:tn(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"resource_login",step:"access_id"})},path:"resource_login_summary"},resource_login_summary:{message:s=>{const a=V(),l=Be(r),c=Qr(a.uploadedFiles);let d=l.accessId;return s.prevPath==="resource_login_accessid"&&s.userInput&&(d=s.userInput),`Thank you for providing your resource login issue details. Here's a summary:
|
|
77
93
|
|
|
78
|
-
Name: ${
|
|
79
|
-
Email: ${
|
|
94
|
+
Name: ${l.name||"Not provided"}
|
|
95
|
+
Email: ${l.email||"Not provided"}
|
|
80
96
|
ACCESS ID: ${d||"Not provided"}
|
|
81
|
-
Resource: ${
|
|
82
|
-
Resource User ID: ${
|
|
83
|
-
Issue Description: ${
|
|
97
|
+
Resource: ${a.resource||"Not provided"}
|
|
98
|
+
Resource User ID: ${a.userIdResource||"Not provided"}
|
|
99
|
+
Issue Description: ${a.description||"Not provided"}${c}
|
|
84
100
|
|
|
85
|
-
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],function:async s=>{if(s.userInput==="Submit Ticket"){const i=W(),c=ye(r),l={email:c.email||"",name:c.name||"",accessId:c.accessId||"",accessResource:i.resource||"",description:i.description||"",userIdAtResource:i.userIdResource||""};await a(l,i.uploadedFiles||[])}},path:s=>s.userInput==="Submit Ticket"?"resource_login_success":"start"},resource_login_success:{message:ln(()=>fr(o,"resource login ticket")),options:["Back to Main Menu"],renderHtml:["BOT"],path:"start"}}}const sc=[" C, C++","Abaqus","ACCESS","ACCESS-credits","ACCESS-website","Accounts","ACLS","Adding users","Affiliations","Affinity Groups","AI","Algorithms","Allocation extension","Allocation Management","Allocation proposal","Allocation Time","Allocation users","AMBER","AMIE","Anaconda","Analysis","API","Application Status","ARCGIS","Architecture","Archiving","Astrophysics","ATLAS","Authentication","AWS","AZURE","Backup","BASH","Batch Jobs","Benchmarking","Big Data","Bioinformatics","Biology","Ceph","CFD","cgroups","CHARMM","Checkpoint","cilogon","citation","Cloud","Cloud Computing","Cloud Lab","Cloud Storage","Cluster Management","Cluster Support","CMMC","Community Outreach","Compiling","Composible Systems","Computataional Chemistry","COMSOL","Conda","Condo","Containers","Core dump","Core hours","CP2K","CPU architecture","CPU bound","CUDA","Cybersecurity","CYVERSE","Data","Data Storage","Data-access-protocols","Data-analysis","Data-compliance","Data-lifecycle","Data-management","Data-management-software","Data-provenance","Data-reproducibility","Data-retention","Data-science","Data-sharing","Data-transfer","Data-wrangling","Database-update","Debugging","Debugging, Optimizatio and Profiling","Deep-learning","Dependencies","Deployment","DFT","Distributed-computing","DNS","Docker","Documentation","DOI","DTN","Easybuild","Email","Encryption","Environment-modules","Errors","Extension","FastX","Federated-authentication","File transfers","File-formats","File-limits","File-systems","File-transfer","Finite-element-analysis","Firewall","Fortran","Frameworks and IDE's","GAMESS","Gateways","GATK","Gaussian","GCC","Genomics","GIS","Git","Globus","GPFS","GPU","Gravitational-waves","Gridengine","GROMACS","Hadoop","Hardware","Image-processing","Infiniband","Interactive-mode","Interconnect","IO-Issue","ISILON","Java","Jekyll","Jetstream","Job-accounting","Job-array","Job-charging","Job-failure","Job-sizing","Job-submission","Julia","Jupyterhub","Key-management","Kubernetes","KyRIC","LAMMPS","Library-paths","License","Linear-programming","Linux","LMOD","login","LSF","Lustre","Machine-learning","Management","Materials-science","Mathematica","MATLAB","Memory","Metadata","Modules","Molecular-dynamics","Monte-carlo","MPI","NAMD","NetCDF","Networking","Neural-networks","NFS","NLP","NoMachine","Nvidia","Oceanography","OnDemnad","Open-science-grid","Open-storage-network","OpenCV","Openfoam","OpenMP","OpenMPI","OpenSHIFT","Openstack","Optimization","OS","OSG","Parallelization","Parameter-sweeps","Paraview","Particle-physics","password","PBS","Pegasus","Pending-jobs","Performance-tuning","Permissions","Physiology","PIP","PODMAN","Portals","Pre-emption","Professional and Workforce Development","Professional-development","Profile","Profiling","Programming","Programming Languages","Programming-best-practices","Project-management","Project-renewal","Provisioning","Pthreads","Publication-database","Putty","Python","Pytorch","Quantum-computing","Quantum-mechanics","Quota","R","RDP","React","Reporting","Research-facilitation","Research-grants","Resources","Rstudio-server","S3","Samba","SAS","Scaling","Schedulers","Scheduling","Science DMZ","Science Gateways","Scikit-learn","Scratch","screen","scripting","SDN","Secure Computing and Data","Secure-data-architecture","Serverless-hpc","setup","sftp","SGE","Shell Scripting","Shifter","Singularity","SLURM","SMB","Smrtanalysis","Software Installations","Software-carpentry","SPACK","SPARK","Spectrum-scale","SPSS","SQL","SSH","Stampede2","STATA","Storage","Supplement","Support","TCP","Technical-training-for-hpc","Tensorflow","Terminal-emulation-and-window-management","Tickets","Timing-issue","TMUX","Tools","Training","Transfer SUs","Trinity","Tuning","Unix-environment","Upgrading","Vectorization","Version-control","vim","VNC","VPN","Workflow","Workforce-development","X11","Xalt","XDMoD","XML","XSEDE","I don't see a relevant keyword"],Ac=["ACES","Anvil","Bridges-2","DARWIN","Delta","DeltaAI","Derecho","Expanse","FASTER","Granite","Jetstream2","KyRIC","Launch","Neocortex","Ookami","Open Science Grid","Open Storage Network","Ranch","Stampede3"];function lc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){let o=null;const a=async(s,i=[])=>{o=await cn(s,"support",i),o.success?(t(c=>({...c,ticketKey:o.ticketKey,ticketUrl:o.ticketUrl})),n({type:"chatbot_ticket_submitted",ticketType:"general_help",success:!0,ticketKey:o.ticketKey})):(t(c=>({...c,submissionError:o.error})),n({type:"chatbot_ticket_error",ticketType:"general_help",errorType:o.error||"unknown"}))};return{general_help_summary_subject:{message:"Provide a short title for your ticket.",function:s=>{const i=W();t({...i,summary:s.userInput,email:r.email||i.email,name:r.name||i.name,accessId:r.accessId||i.accessId}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"title"})},path:"general_help_category"},general_help_category:{message:"What type of issue are you experiencing?",options:["User Account Question","Allocation Question","User Support Question","CSSN/CCEP Question","Training Question","Metrics Question","OnDemand Question","Pegasus Question","XDMoD Question","Some Other Question"],function:s=>{const i=W();t({...i,category:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"category"})},path:"general_help_description"},general_help_description:{message:"Please describe your issue.",function:s=>{const i=W();t({...i,description:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"description"})},path:"general_help_attachment"},general_help_attachment:{message:"Would you like to attach a file to your ticket?",options:["Yes","No"],function:s=>{const i=W();t({...i,wantsAttachment:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"attachment_choice"})},path:s=>s.userInput==="Yes"?"general_help_upload":"general_help_resource"},general_help_upload:{message:"Please upload your file.",component:k.jsx(An,{onFileUpload:s=>{t(i=>({...i,uploadedFiles:s})),s.forEach(i=>{n({type:"chatbot_file_uploaded",fileType:i.type||"unknown",fileSize:i.size})})},enableScreenshot:!0,maxSizeMB:10}),options:["Continue"],function:()=>{const s=W();t({...s,uploadConfirmed:!0}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"file_upload"})},path:"general_help_resource"},general_help_resource:{message:"Does your problem involve an ACCESS Resource?",options:["Yes","No"],function:s=>{const i=W();t({...i,involvesResource:s.userInput.toLowerCase()}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_choice"})},path:s=>s.userInput==="Yes"?"general_help_resource_details":"general_help_keywords"},general_help_resource_details:{message:"Please select the ACCESS Resource involved with your issue:",options:Ac,function:s=>{const i=W();t({...i,resourceDetails:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_selection"})},path:"general_help_user_id_at_resource"},general_help_user_id_at_resource:{message:"What is your User ID at the selected resource(s)? (Optional - press Enter to skip)",validateTextInput:_t(),function:s=>{const i=W();t({...i,userIdAtResource:Lt(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_user_id"})},path:"general_help_keywords"},general_help_keywords:{message:"Please add up to 5 keywords to help route your ticket.",checkboxes:{items:sc,min:0,max:5},function:s=>{const i=W();t({...i,keywords:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"keywords"})},path:s=>s.userInput&&s.userInput.includes("I don't see a relevant keyword")?"general_help_additional_keywords":"general_help_priority"},general_help_additional_keywords:{message:"Please enter additional keywords, separated by commas:",function:s=>{const i=W(),c=i.keywords||[],l=s.userInput,u=(Array.isArray(c)?[...c]:String(c).split(",").map(f=>f.trim())).filter(f=>f!=="I don't see a relevant keyword"),p=u.length>0?[...u,l].join(", "):l;t({...i,keywords:p,suggestedKeyword:l}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"additional_keywords"})},path:"general_help_priority"},general_help_priority:{message:"Please select a priority for your issue:",options:["Lowest","Low","Medium","High","Highest"],function:s=>{const i=W();t({...i,priority:s.userInput.toLowerCase()}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"priority"})},path:()=>{const s=ye(r);return s.email?s.name?s.accessId?"general_help_ticket_summary":"general_help_accessid":"general_help_name":"general_help_email"}},general_help_email:{message:"What is your email address?",validateTextInput:un,function:s=>{const i=W();t({...i,email:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"email"})},path:()=>{const s=ye(r);return s.name?s.accessId?"general_help_ticket_summary":"general_help_accessid":"general_help_name"}},general_help_name:{message:"What is your name?",function:s=>{const i=W();t({...i,name:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"name"})},path:()=>ye(r).accessId?"general_help_ticket_summary":"general_help_accessid"},general_help_accessid:{message:"What is your ACCESS ID? (Optional - press Enter to skip)",validateTextInput:_t(),function:s=>{const i=W();t({...i,accessId:Lt(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"access_id"})},path:"general_help_ticket_summary"},general_help_ticket_summary:{message:s=>{const i=W(),c=ye(r),l=pr(i.uploadedFiles);let d=c.accessId;s.prevPath==="general_help_accessid"&&s.userInput&&(d=s.userInput);let u="";return i.involvesResource==="yes"&&(u=`
|
|
86
|
-
Resource: ${
|
|
87
|
-
User ID at Resource: ${
|
|
101
|
+
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],function:async s=>{if(s.userInput==="Submit Ticket"){const a=V(),l=Be(r),c={email:l.email||"",name:l.name||"",accessId:l.accessId||"",accessResource:a.resource||"",description:a.description||"",userIdAtResource:a.userIdResource||""};await i(c,a.uploadedFiles||[])}},path:s=>s.userInput==="Submit Ticket"?"resource_login_success":"start"},resource_login_success:{message:Bn(()=>Mr(o,"resource login ticket")),options:["Back to Main Menu"],renderHtml:["BOT"],path:"start"}}}const Mc=[" C, C++","Abaqus","ACCESS","ACCESS-credits","ACCESS-website","Accounts","ACLS","Adding users","Affiliations","Affinity Groups","AI","Algorithms","Allocation extension","Allocation Management","Allocation proposal","Allocation Time","Allocation users","AMBER","AMIE","Anaconda","Analysis","API","Application Status","ARCGIS","Architecture","Archiving","Astrophysics","ATLAS","Authentication","AWS","AZURE","Backup","BASH","Batch Jobs","Benchmarking","Big Data","Bioinformatics","Biology","Ceph","CFD","cgroups","CHARMM","Checkpoint","cilogon","citation","Cloud","Cloud Computing","Cloud Lab","Cloud Storage","Cluster Management","Cluster Support","CMMC","Community Outreach","Compiling","Composible Systems","Computataional Chemistry","COMSOL","Conda","Condo","Containers","Core dump","Core hours","CP2K","CPU architecture","CPU bound","CUDA","Cybersecurity","CYVERSE","Data","Data Storage","Data-access-protocols","Data-analysis","Data-compliance","Data-lifecycle","Data-management","Data-management-software","Data-provenance","Data-reproducibility","Data-retention","Data-science","Data-sharing","Data-transfer","Data-wrangling","Database-update","Debugging","Debugging, Optimizatio and Profiling","Deep-learning","Dependencies","Deployment","DFT","Distributed-computing","DNS","Docker","Documentation","DOI","DTN","Easybuild","Email","Encryption","Environment-modules","Errors","Extension","FastX","Federated-authentication","File transfers","File-formats","File-limits","File-systems","File-transfer","Finite-element-analysis","Firewall","Fortran","Frameworks and IDE's","GAMESS","Gateways","GATK","Gaussian","GCC","Genomics","GIS","Git","Globus","GPFS","GPU","Gravitational-waves","Gridengine","GROMACS","Hadoop","Hardware","Image-processing","Infiniband","Interactive-mode","Interconnect","IO-Issue","ISILON","Java","Jekyll","Jetstream","Job-accounting","Job-array","Job-charging","Job-failure","Job-sizing","Job-submission","Julia","Jupyterhub","Key-management","Kubernetes","KyRIC","LAMMPS","Library-paths","License","Linear-programming","Linux","LMOD","login","LSF","Lustre","Machine-learning","Management","Materials-science","Mathematica","MATLAB","Memory","Metadata","Modules","Molecular-dynamics","Monte-carlo","MPI","NAMD","NetCDF","Networking","Neural-networks","NFS","NLP","NoMachine","Nvidia","Oceanography","OnDemnad","Open-science-grid","Open-storage-network","OpenCV","Openfoam","OpenMP","OpenMPI","OpenSHIFT","Openstack","Optimization","OS","OSG","Parallelization","Parameter-sweeps","Paraview","Particle-physics","password","PBS","Pegasus","Pending-jobs","Performance-tuning","Permissions","Physiology","PIP","PODMAN","Portals","Pre-emption","Professional and Workforce Development","Professional-development","Profile","Profiling","Programming","Programming Languages","Programming-best-practices","Project-management","Project-renewal","Provisioning","Pthreads","Publication-database","Putty","Python","Pytorch","Quantum-computing","Quantum-mechanics","Quota","R","RDP","React","Reporting","Research-facilitation","Research-grants","Resources","Rstudio-server","S3","Samba","SAS","Scaling","Schedulers","Scheduling","Science DMZ","Science Gateways","Scikit-learn","Scratch","screen","scripting","SDN","Secure Computing and Data","Secure-data-architecture","Serverless-hpc","setup","sftp","SGE","Shell Scripting","Shifter","Singularity","SLURM","SMB","Smrtanalysis","Software Installations","Software-carpentry","SPACK","SPARK","Spectrum-scale","SPSS","SQL","SSH","Stampede2","STATA","Storage","Supplement","Support","TCP","Technical-training-for-hpc","Tensorflow","Terminal-emulation-and-window-management","Tickets","Timing-issue","TMUX","Tools","Training","Transfer SUs","Trinity","Tuning","Unix-environment","Upgrading","Vectorization","Version-control","vim","VNC","VPN","Workflow","Workforce-development","X11","Xalt","XDMoD","XML","XSEDE","I don't see a relevant keyword"],Oc=["ACES","Anvil","Bridges-2","DARWIN","Delta","DeltaAI","Derecho","Expanse","FASTER","Granite","Jetstream2","KyRIC","Launch","Neocortex","Ookami","Open Science Grid","Open Storage Network","Ranch","Stampede3"];function _c({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){let o=null;const i=async(s,a=[])=>{o=await Dn(s,"support",a),o.success?(t(l=>({...l,ticketKey:o.ticketKey,ticketUrl:o.ticketUrl})),n({type:"chatbot_ticket_submitted",ticketType:"general_help",success:!0,ticketKey:o.ticketKey})):(t(l=>({...l,submissionError:o.error})),n({type:"chatbot_ticket_error",ticketType:"general_help",errorType:o.error||"unknown"}))};return{general_help_summary_subject:{message:"Provide a short title for your ticket.",function:s=>{const a=V();t({...a,summary:s.userInput,email:r.email||a.email,name:r.name||a.name,accessId:r.accessId||a.accessId}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"title"})},path:"general_help_category"},general_help_category:{message:"What type of issue are you experiencing?",options:["User Account Question","Allocation Question","User Support Question","CSSN/CCEP Question","Training Question","Metrics Question","OnDemand Question","Pegasus Question","XDMoD Question","Some Other Question"],function:s=>{const a=V();t({...a,category:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"category"})},path:"general_help_description"},general_help_description:{message:"Please describe your issue.",function:s=>{const a=V();t({...a,description:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"description"})},path:"general_help_attachment"},general_help_attachment:{message:"Would you like to attach a file to your ticket?",options:["Yes","No"],function:s=>{const a=V();t({...a,wantsAttachment:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"attachment_choice"})},path:s=>s.userInput==="Yes"?"general_help_upload":"general_help_resource"},general_help_upload:{message:"Please upload your file.",component:E.jsx(Sn,{onFileUpload:s=>{t(a=>({...a,uploadedFiles:s})),s.forEach(a=>{n({type:"chatbot_file_uploaded",fileType:a.type||"unknown",fileSize:a.size})})},enableScreenshot:!0,maxSizeMB:10}),options:["Continue"],function:()=>{const s=V();t({...s,uploadConfirmed:!0}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"file_upload"})},path:"general_help_resource"},general_help_resource:{message:"Does your problem involve an ACCESS Resource?",options:["Yes","No"],function:s=>{const a=V();t({...a,involvesResource:s.userInput.toLowerCase()}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_choice"})},path:s=>s.userInput==="Yes"?"general_help_resource_details":"general_help_keywords"},general_help_resource_details:{message:"Please select the ACCESS Resource involved with your issue:",options:Oc,function:s=>{const a=V();t({...a,resourceDetails:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_selection"})},path:"general_help_user_id_at_resource"},general_help_user_id_at_resource:{message:"What is your User ID at the selected resource(s)? (Optional - press Enter to skip)",validateTextInput:en(),function:s=>{const a=V();t({...a,userIdAtResource:tn(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"resource_user_id"})},path:"general_help_keywords"},general_help_keywords:{message:"Please add up to 5 keywords to help route your ticket.",checkboxes:{items:Mc,min:0,max:5},function:s=>{const a=V();t({...a,keywords:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"keywords"})},path:s=>s.userInput&&s.userInput.includes("I don't see a relevant keyword")?"general_help_additional_keywords":"general_help_priority"},general_help_additional_keywords:{message:"Please enter additional keywords, separated by commas:",function:s=>{const a=V(),l=a.keywords||[],c=s.userInput,u=(Array.isArray(l)?[...l]:String(l).split(",").map(g=>g.trim())).filter(g=>g!=="I don't see a relevant keyword"),p=u.length>0?[...u,c].join(", "):c;t({...a,keywords:p,suggestedKeyword:c}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"additional_keywords"})},path:"general_help_priority"},general_help_priority:{message:"Please select a priority for your issue:",options:["Lowest","Low","Medium","High","Highest"],function:s=>{const a=V();t({...a,priority:s.userInput.toLowerCase()}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"priority"})},path:()=>{const s=Be(r);return s.email?s.name?s.accessId?"general_help_ticket_summary":"general_help_accessid":"general_help_name":"general_help_email"}},general_help_email:{message:"What is your email address?",validateTextInput:In,function:s=>{const a=V();t({...a,email:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"email"})},path:()=>{const s=Be(r);return s.name?s.accessId?"general_help_ticket_summary":"general_help_accessid":"general_help_name"}},general_help_name:{message:"What is your name?",function:s=>{const a=V();t({...a,name:s.userInput}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"name"})},path:()=>Be(r).accessId?"general_help_ticket_summary":"general_help_accessid"},general_help_accessid:{message:"What is your ACCESS ID? (Optional - press Enter to skip)",validateTextInput:en(),function:s=>{const a=V();t({...a,accessId:tn(s.userInput)}),n({type:"chatbot_ticket_step",ticketType:"general_help",step:"access_id"})},path:"general_help_ticket_summary"},general_help_ticket_summary:{message:s=>{const a=V(),l=Be(r),c=Qr(a.uploadedFiles);let d=l.accessId;s.prevPath==="general_help_accessid"&&s.userInput&&(d=s.userInput);let u="";return a.involvesResource==="yes"&&(u=`
|
|
102
|
+
Resource: ${a.resourceDetails||"Not specified"}`,a.userIdAtResource&&(u+=`
|
|
103
|
+
User ID at Resource: ${a.userIdAtResource}`)),`Thank you for providing your issue details. Here's a summary:
|
|
88
104
|
|
|
89
|
-
Name: ${
|
|
90
|
-
Email: ${
|
|
105
|
+
Name: ${l.name||"Not provided"}
|
|
106
|
+
Email: ${l.email||"Not provided"}
|
|
91
107
|
ACCESS ID: ${d||"Not provided"}
|
|
92
|
-
Issue Summary: ${
|
|
93
|
-
Category: ${
|
|
94
|
-
Priority: ${
|
|
95
|
-
Keywords: ${
|
|
96
|
-
Issue Description: ${
|
|
108
|
+
Issue Summary: ${a.summary||"Not provided"}
|
|
109
|
+
Category: ${a.category||"Not provided"}
|
|
110
|
+
Priority: ${a.priority||"Not provided"}
|
|
111
|
+
Keywords: ${a.keywords||"Not provided"}
|
|
112
|
+
Issue Description: ${a.description||"Not provided"}${u}${c}
|
|
97
113
|
|
|
98
|
-
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],function:async s=>{if(s.userInput==="Submit Ticket"){const
|
|
114
|
+
Would you like to submit this ticket?`},options:["Submit Ticket","Back to Main Menu"],function:async s=>{if(s.userInput==="Submit Ticket"){const a=V(),l=Be(r),c={email:l.email||"",summary:a.summary||"General Support Ticket",description:a.description||"",priority:a.priority||"medium",accessId:l.accessId||"",name:l.name||"",issueType:a.category||"",hasResourceProblem:a.involvesResource==="yes"?"Yes":"No",userIdAtResource:a.userIdAtResource||"",resourceName:a.resourceDetails||"",keywords:a.keywords||"",noRelevantKeyword:a.suggestedKeyword?"checked":"",suggestedKeyword:a.suggestedKeyword||""};await i(c,a.uploadedFiles||[])}},path:s=>s.userInput==="Submit Ticket"?"general_help_success":"start"},general_help_success:{message:Bn(()=>Mr(o,"support ticket")),options:["Back to Main Menu"],renderHtml:["BOT"],path:"start"}}}const Nc={"Logging into ACCESS website":"access_login","Logging into a resource":"resource_login","Another question":"general_help"};function Lc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){const o=Tc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}),i=Qc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}),A=_c({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n});return{help_ticket:{message:"What is your help ticket related to?",options:["Logging into ACCESS website","Logging into a resource","Another question"],function:s=>{t(a=>({...a,ticketType:s.userInput})),n({type:"chatbot_ticket_started",ticketType:Nc[s.userInput]||s.userInput})},path:s=>s.userInput==="Logging into ACCESS website"?"access_help":s.userInput==="Logging into a resource"?"resource_help":s.userInput==="Another question"?"general_help_summary_subject":"help_ticket"},...o,...i,...A}}function Et(e){const t=V();return{...t,email:e.email||t.email,name:e.name||t.name,accessId:e.accessId||t.accessId}}function Hc(e){return e?e.success?e.ticketUrl&&e.ticketKey?`Your security incident report has been submitted successfully.
|
|
99
115
|
|
|
100
116
|
Ticket: <a href="${e.ticketUrl}" target="_blank">${e.ticketKey}</a>
|
|
101
117
|
|
|
@@ -105,25 +121,25 @@ Our cybersecurity team will review your report and respond accordingly. Thank yo
|
|
|
105
121
|
|
|
106
122
|
Please try again or contact our cybersecurity team directly.`:`We apologize, but there was an error submitting your security incident report.
|
|
107
123
|
|
|
108
|
-
Please try again or contact our cybersecurity team directly.`}function
|
|
124
|
+
Please try again or contact our cybersecurity team directly.`}function Uc({ticketForm:e,setTicketForm:t,userInfo:r,trackEvent:n}){let o=null,i=null;const A=async(a,l=[],c)=>{i=await Dn(a,"security",l),i.success?(t(d=>({...d,ticketKey:i.ticketKey,ticketUrl:i.ticketUrl})),n({type:"chatbot_security_submitted",success:!0,priority:c||"unknown",ticketKey:i.ticketKey})):(t(d=>({...d,submissionError:i.error})),n({type:"chatbot_ticket_error",ticketType:"security",errorType:i.error||"unknown"}))};return{security_incident:{message:"You're reporting a security incident. Please provide a brief summary of the security concern.",function:a=>{const l=V();t({...l,summary:a.userInput,email:r.email||l.email,name:r.name||l.name,accessId:r.accessId||l.accessId}),n({type:"chatbot_ticket_step",ticketType:"security",step:"summary"})},path:"security_priority"},security_priority:{message:"What is the priority level of this security incident?",options:["Critical","High","Medium","Low"],function:a=>{const l=V();t({...l,priority:a.userInput.toLowerCase()}),n({type:"chatbot_ticket_step",ticketType:"security",step:"priority"})},path:"security_description"},security_description:{message:"Please provide a detailed description of the security incident or concern.",function:a=>{const l=V();t({...l,description:a.userInput}),n({type:"chatbot_ticket_step",ticketType:"security",step:"description"})},path:"security_attachment"},security_attachment:{message:"Do you have any files (screenshots, logs, etc.) that would help with this security incident?",options:["Yes","No"],function:a=>{const l=V();t({...l,wantsAttachment:a.userInput}),n({type:"chatbot_ticket_step",ticketType:"security",step:"attachment_choice"})},path:a=>a.userInput==="Yes"?"security_upload":"security_contact_check"},security_upload:{message:"Please upload your files.",component:E.jsx(Sn,{onFileUpload:a=>{t(l=>({...l,uploadedFiles:a})),a.forEach(l=>{n({type:"chatbot_file_uploaded",fileType:l.type||"unknown",fileSize:l.size})})},enableScreenshot:!0,maxSizeMB:10}),options:["Continue"],function:()=>{const a=V();t({...a,uploadConfirmed:!0}),n({type:"chatbot_ticket_step",ticketType:"security",step:"file_upload"})},path:"security_contact_check"},security_contact_check:{message:()=>{const a=Et(r);return a.name&&a.email&&a.accessId?`I have your contact information:
|
|
109
125
|
|
|
110
|
-
Name: ${
|
|
111
|
-
Email: ${
|
|
112
|
-
ACCESS ID: ${
|
|
126
|
+
Name: ${a.name}
|
|
127
|
+
Email: ${a.email}
|
|
128
|
+
ACCESS ID: ${a.accessId}
|
|
113
129
|
|
|
114
|
-
Is this correct?`:"I need your contact information."},options:()=>{const
|
|
115
|
-
Attachments: ${
|
|
130
|
+
Is this correct?`:"I need your contact information."},options:()=>{const a=Et(r);return a.name&&a.email&&a.accessId?["Yes, that's correct","Let me update it"]:[]},chatDisabled:()=>{const a=Et(r);return!!(a.name&&a.email&&a.accessId)},path:a=>a.userInput==="Yes, that's correct"?"security_summary":a.userInput==="Let me update it"?"security_name":"security_email"},security_email:{message:"What is your email address?",validateTextInput:In,function:a=>{const l=V();t({...l,email:a.userInput}),n({type:"chatbot_ticket_step",ticketType:"security",step:"email"})},path:()=>{const a=Et(r);return a.name?a.accessId?"security_summary":"security_accessid":"security_name"}},security_name:{message:"What is your name?",function:a=>{const l=V();t({...l,name:a.userInput}),n({type:"chatbot_ticket_step",ticketType:"security",step:"name"})},path:()=>{const a=Et(r);return a.email?a.accessId?"security_summary":"security_accessid":"security_email"}},security_accessid:{message:"What is your ACCESS ID? (Optional - press Enter to skip)",validateTextInput:en(),function:a=>{const l=tn(a.userInput);o=l;const c=V();t({...c,accessId:l}),n({type:"chatbot_ticket_step",ticketType:"security",step:"access_id"})},path:"security_summary"},security_summary:{message:()=>{const a=V(),l=Et(r),c={...a,name:l.name||a.name,email:l.email||a.email,accessId:o||l.accessId||a.accessId};let d="";a.uploadedFiles&&a.uploadedFiles.length>0&&(d=`
|
|
131
|
+
Attachments: ${a.uploadedFiles.length} file(s) attached`);const u=c.accessId||"Not provided";return`Here's a summary of your security incident report:
|
|
116
132
|
|
|
117
|
-
Summary: ${
|
|
118
|
-
Priority: ${
|
|
119
|
-
Name: ${
|
|
120
|
-
Email: ${
|
|
133
|
+
Summary: ${c.summary||"Not provided"}
|
|
134
|
+
Priority: ${c.priority||"Not provided"}
|
|
135
|
+
Name: ${c.name||"Not provided"}
|
|
136
|
+
Email: ${c.email||"Not provided"}
|
|
121
137
|
ACCESS ID: ${u}
|
|
122
|
-
Description: ${
|
|
138
|
+
Description: ${c.description||"Not provided"}${d}
|
|
123
139
|
|
|
124
|
-
Would you like to submit this security incident report?`},options:["Submit Security Report","Back to Main Menu"],function:async
|
|
140
|
+
Would you like to submit this security incident report?`},options:["Submit Security Report","Back to Main Menu"],function:async a=>{if(a.userInput==="Submit Security Report"){const l=V(),c=Et(r),d={...l,name:c.name||l.name,email:c.email||l.email,accessId:o||c.accessId||l.accessId},u={summary:d.summary||"",priority:d.priority||"",description:d.description||"",name:d.name||"",email:d.email||"",accessId:d.accessId||""};await A(u,l.uploadedFiles||[],d.priority)}},path:a=>a.userInput==="Submit Security Report"?"security_success":"start"},security_success:{message:Bn(()=>Hc(i)),options:["Back to Main Menu"],renderHtml:["BOT"],path:"start"}}}const De=[];for(let e=0;e<256;++e)De.push((e+256).toString(16).slice(1));function Fc(e,t=0){return(De[e[t+0]]+De[e[t+1]]+De[e[t+2]]+De[e[t+3]]+"-"+De[e[t+4]]+De[e[t+5]]+"-"+De[e[t+6]]+De[e[t+7]]+"-"+De[e[t+8]]+De[e[t+9]]+"-"+De[e[t+10]]+De[e[t+11]]+De[e[t+12]]+De[e[t+13]]+De[e[t+14]]+De[e[t+15]]).toLowerCase()}let Or;const zc=new Uint8Array(16);function Rc(){if(!Or){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Or=crypto.getRandomValues.bind(crypto)}return Or(zc)}const aa={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function _r(e,t,r){var o;if(aa.randomUUID&&!e)return aa.randomUUID();e=e||{};const n=e.random??((o=e.rng)==null?void 0:o.call(e))??Rc();if(n.length<16)throw new Error("Random bytes length must be >= 16");return n[6]=n[6]&15|64,n[8]=n[8]&63|128,Fc(n)}function Zc(e){return e}function jc({sessionId:e,apiKey:t,trackEvent:r}){let n=null;return{metrics_intro:{message:`Please type your question about usage and performance metrics (XDMoD) below. You can see some <a target="_blank" href="${Re.METRICS_QUESTIONS_URL}">examples here</a>.
|
|
125
141
|
|
|
126
|
-
<em>This assistant is powered by AI. Responses may not always be accurate. Do not share passwords or secrets.</em> <a href="https://support.access-ci.org/tools/access-qa-tool/privacy">Privacy Notice</a>`,renderHtml:["BOT"],path:"metrics_loop"},metrics_loop:{message:async o=>{const{userInput:
|
|
142
|
+
<em>This assistant is powered by AI. Responses may not always be accurate. Do not share passwords or secrets.</em> <a href="https://support.access-ci.org/tools/access-qa-tool/privacy">Privacy Notice</a>`,renderHtml:["BOT"],path:"metrics_loop"},metrics_loop:{message:async o=>{const{userInput:i}=o;if(i==="👍 Helpful"||i==="👎 Not helpful"){if(t&&e&&n){const s={"Content-Type":"application/json","X-Origin":"metrics","X-API-KEY":t,"X-Session-ID":e,"X-Query-ID":n,"X-Feedback":i==="👍 Helpful"?"1":"0"};try{await fetch(Re.METRICS_RATING_ENDPOINT,{method:"POST",headers:s})}catch(a){console.error("Error sending metrics feedback:",a)}}return"Thanks for the feedback! Ask another question about usage and performance metrics (XDMoD) or start a new chat."}else try{const A=_r();n=A,r({type:"chatbot_metrics_question_sent",queryId:A});const s={"Content-Type":"application/json","X-Origin":"metrics","X-API-KEY":t,"X-Session-ID":e,"X-Query-ID":A},c=(await(await fetch(Re.METRICS_API_ENDPOINT,{method:"POST",headers:s,body:JSON.stringify({query:i})})).json()).response,d=c;return await o.injectMessage(d),setTimeout(async()=>{await o.injectMessage("Ask another question about usage and performance metrics (XDMoD) or start a new chat.")},100),null}catch(A){return console.error("Error in metrics flow:",A),"I'm sorry, there was an error processing your question. Please try again."}},renderMarkdown:["BOT"],options:o=>o.userInput==="👍 Helpful"||o.userInput==="👎 Not helpful"?[]:["👍 Helpful","👎 Not helpful"],chatDisabled:!1,path:"metrics_loop"}}}function qc(){if(typeof window>"u")return _r();let e=localStorage.getItem(ia.SESSION_ID);return e||(e=_r(),localStorage.setItem(ia.SESSION_ID,e)),e}const sa="access-qa-bot-shadow-overrides",Gc=`
|
|
127
143
|
.rcb-checkbox-container {
|
|
128
144
|
display: flex !important;
|
|
129
145
|
flex-wrap: wrap !important;
|
|
@@ -260,5 +276,5 @@ Would you like to submit this security incident report?`},options:["Submit Secur
|
|
|
260
276
|
opacity: 0.85;
|
|
261
277
|
text-decoration: underline !important;
|
|
262
278
|
}
|
|
263
|
-
`;function
|
|
279
|
+
`;function Yc(e){if(!e)return;const t=e.getRootNode();if(!(t instanceof ShadowRoot)||t.getElementById(sa))return;const r=document.createElement("style");r.id=sa,r.textContent=Gc,t.appendChild(r)}const Nr=f.forwardRef((e,t)=>{const{apiKey:r=Re.DEFAULT_API_KEY,isLoggedIn:n=!1,loginUrl:o=mt.LOGIN_URL,userEmail:i,userName:A,accessId:s,actingUser:a,ringEffect:l,defaultOpen:c,onClose:d,open:u,onOpenChange:p,embedded:g=!1,welcome:v,qaEndpoint:h,ratingEndpoint:w,agentEndpoint:x,onAnalyticsEvent:m}=e,k=f.useRef(null),P=f.useRef(null),[C,S]=f.useState({}),[I,Q]=f.useState(null),D=f.useMemo(()=>({email:i,name:A,accessId:s}),[i,A,s]);f.useEffect(()=>{Yc(P.current)},[]),f.useEffect(()=>{Bc({ticketForm:C,setTicketForm:S})},[C]);const O=x||Re.AGENT_ENDPOINT,B=`${O}/capabilities`,_=`${O}/rating`;f.useEffect(()=>{O.includes("localhost")&&!window.location.hostname.includes("localhost")&&console.warn("[AccessQABot] VITE_AGENT_ENDPOINT not set — agent requests will go to localhost. Set VITE_AGENT_ENDPOINT in your environment."),Re.ALLOW_ANON_ACCESS&&!Re.TURNSTILE_SITE_KEY&&console.warn("[AccessQABot] Anonymous access is enabled without Turnstile. Set VITE_TURNSTILE_SITE_KEY for bot protection, or disable VITE_ALLOW_ANON_ACCESS.")},[O]),f.useEffect(()=>{let y=!1;async function q(){try{const b=await fetch(B,{credentials:"include"});if(!b.ok)throw new Error(`Capabilities API returned ${b.status}`);const W=await b.json();y||Q(W)}catch(b){console.warn("Failed to fetch capabilities:",b),y||Q({categories:[],is_authenticated:!1})}}return q(),()=>{y=!0}},[B,n]),f.useEffect(()=>{if(!n)return;let y=!1;const q=`${O}/capabilities/personalized`;async function b(){try{const W=await fetch(q,{credentials:"include"});if(!W.ok)return;const Z=await W.json();y||console.debug("Personalized context loaded:",Z)}catch{}}return b(),()=>{y=!0}},[O,n]),f.useImperativeHandle(t,()=>({addMessage:y=>{var q,b;(b=(q=k.current)==null?void 0:q.addMessage)==null||b.call(q,y)}}));const F=v||mt.WELCOME_MESSAGE,M=f.useMemo(()=>qc(),[]),U=f.useCallback(y=>{m&&m({...y,type:y.type,timestamp:y.timestamp??Date.now(),sessionId:y.sessionId??M})},[m,M]),N=f.useCallback(y=>{m&&m({...y,type:y.type,timestamp:typeof y.timestamp=="number"?y.timestamp:Date.now(),sessionId:typeof y.sessionId=="string"?y.sessionId:M})},[m,M]),H=f.useMemo(()=>{const y=Sc({welcome:F,trackEvent:U,capabilities:I}),q=Lc({ticketForm:{},setTicketForm:S,userInfo:D,trackEvent:U}),b=Uc({ticketForm:{},setTicketForm:S,userInfo:D,trackEvent:U}),W=jc({sessionId:M,apiKey:r,trackEvent:U}),Z={...y,...q,...b,...W};return kc(Z,{disableOnOptions:!0})},[F,D,M,r,n,U,I]);return I?E.jsx("div",{ref:P,children:E.jsx(Ir,{ref:k,isLoggedIn:n,allowAnonAccess:Re.ALLOW_ANON_ACCESS,actingUser:a,onAnalyticsEvent:N,apiKey:r,qaEndpoint:h||Re.QA_ENDPOINT,ratingEndpoint:w||Re.RATING_ENDPOINT,capabilitiesEndpoint:B,agentRatingEndpoint:_,botName:mt.BOT_NAME,logo:mt.LOGO,primaryColor:mt.PRIMARY_COLOR,secondaryColor:mt.SECONDARY_COLOR,welcomeMessage:F,tooltipText:mt.TOOLTIP,turnstileSiteKey:Re.TURNSTILE_SITE_KEY||void 0,loginUrl:o,open:u,onOpenChange:p,embedded:g,footerText:"AI-powered · Privacy Notice",footerLink:"https://support.access-ci.org/tools/access-qa-tool/privacy",customFlow:H})}):E.jsx("div",{ref:P})});Nr.displayName="AccessQABot",Le.API_CONFIG=Re,Le.AccessQABot=Nr,Le.BOT_CONFIG=mt,Le.QABot=Nr,Object.defineProperty(Le,Symbol.toStringTag,{value:"Module"})});
|
|
264
280
|
//# sourceMappingURL=access-qa-bot.umd.cjs.map
|