-
Notifications
You must be signed in to change notification settings - Fork 127
Expand file tree
/
Copy pathcomponents.min.js
More file actions
19 lines (19 loc) · 33.6 KB
/
Copy pathcomponents.min.js
File metadata and controls
19 lines (19 loc) · 33.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/*! bslib 0.11.0.9000 | (c) 2012-2026 RStudio, PBC. | License: MIT + file LICENSE */
"use strict";(()=>{var v=(n,e)=>()=>(n&&(e=n(n=0)),e);var Me=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var re=(n,e,t)=>{if(!e.has(n))throw TypeError("Cannot "+t)};var m=(n,e,t)=>(re(n,e,"read from private field"),t?t.call(n):e.get(n)),y=(n,e,t)=>{if(e.has(n))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(n):e.set(n,t)};var _=(n,e,t)=>(re(n,e,"access private method"),t);var u=(n,e,t)=>new Promise((i,s)=>{var r=a=>{try{c(t.next(a))}catch(h){s(h)}},o=a=>{try{c(t.throw(a))}catch(h){s(h)}},c=a=>a.done?i(a.value):Promise.resolve(a.value).then(r,o);c((t=t.apply(n,e)).next())});function E(n,e){g&&g.inputBindings.register(new n,"bslib."+e)}function N(n,e){window.bslib=window.bslib||{},window.bslib[n]?console.error(`[bslib] Global window.bslib.${n} was already defined, using previous definition.`):window.bslib[n]=e}function B({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}function b(n,e){return Object.prototype.hasOwnProperty.call(n,e)&&n[e]!==void 0}function oe(n){let e=["a[href]","area[href]","button","details summary","input","iframe","select","textarea",'[contentEditable=""]','[contentEditable="true"]','[contentEditable="TRUE"]',"[tabindex]"],t=[':not([tabindex="-1"])',":not([disabled])"],i=e.map(r=>r+t.join("")),s=n.querySelectorAll(i.join(", "));return Array.from(s)}function p(...n){return u(this,null,function*(){if(!g)throw new Error("This function must be called in a Shiny app.");return g.renderContentAsync?yield g.renderContentAsync.apply(null,n):yield g.renderContent.apply(null,n)})}function ae(n,e){return u(this,null,function*(){if(typeof n!="undefined"){if(e.length!==1)throw new Error("labelNode must be of length 1");typeof n=="string"&&(n={html:n,deps:[]}),n.html===""?e.addClass("shiny-label-null"):(yield p(e,n),e.removeClass("shiny-label-null"))}})}var g,f,L=v(()=>{"use strict";g=window.Shiny,f=g?g.InputBinding:class{}});var X,le=v(()=>{"use strict";L();X=class extends f{find(e){return $(e).find(".accordion.bslib-accordion-input")}getValue(e){let i=this._getItemInfo(e).filter(s=>s.isOpen()).map(s=>s.value);return i.length===0?null:i}subscribe(e,t){$(e).on("shown.bs.collapse.accordionInputBinding hidden.bs.collapse.accordionInputBinding",function(i){t(!0)})}unsubscribe(e){$(e).off(".accordionInputBinding")}receiveMessage(e,t){return u(this,null,function*(){let i=t.method;if(i==="set")this._setItems(e,t);else if(i==="open")this._openItems(e,t);else if(i==="close")this._closeItems(e,t);else if(i==="remove")this._removeItem(e,t);else if(i==="insert")yield this._insertItem(e,t);else if(i==="update")yield this._updateItem(e,t);else throw new Error(`Method not yet implemented: ${i}`)})}_setItems(e,t){let i=this._getItemInfo(e),s=this._getValues(e,i,t.values);i.forEach(r=>{s.indexOf(r.value)>-1?r.show():r.hide()})}_openItems(e,t){let i=this._getItemInfo(e),s=this._getValues(e,i,t.values);i.forEach(r=>{s.indexOf(r.value)>-1&&r.show()})}_closeItems(e,t){let i=this._getItemInfo(e),s=this._getValues(e,i,t.values);i.forEach(r=>{s.indexOf(r.value)>-1&&r.hide()})}_insertItem(e,t){return u(this,null,function*(){let i=this._findItem(e,t.target);i||(i=t.position==="before"?e.firstElementChild:e.lastElementChild);let s=t.panel;if(i?yield p(i,s,t.position==="before"?"beforeBegin":"afterEnd"):yield p(e,s),this._isAutoClosing(e)){let r=$(s.html).attr("data-value");$(e).find(`[data-value="${r}"] .accordion-collapse`).attr("data-bs-parent","#"+e.id)}})}_removeItem(e,t){var r;let i=this._getItemInfo(e).filter(o=>t.target.indexOf(o.value)>-1),s=(r=window.Shiny)==null?void 0:r.unbindAll;i.forEach(o=>{s&&s(o.item),o.item.remove()})}_updateItem(e,t){return u(this,null,function*(){let i=this._findItem(e,t.target);if(!i)throw new Error(`Unable to find an accordion_panel() with a value of ${t.target}`);if(b(t,"value")&&(i.dataset.value=t.value),b(t,"body")){let r=i.querySelector(".accordion-body");yield p(r,t.body)}let s=i.querySelector(".accordion-header");if(b(t,"title")){let r=s.querySelector(".accordion-title");yield p(r,t.title)}if(b(t,"icon")){let r=s.querySelector(".accordion-button > .accordion-icon");yield p(r,t.icon)}})}_getItemInfo(e){return Array.from(e.querySelectorAll(":scope > .accordion-item")).map(i=>this._getSingleItemInfo(i))}_getSingleItemInfo(e){let t=e.querySelector(".accordion-collapse"),i=()=>$(t).hasClass("show");return{item:e,value:e.dataset.value,isOpen:i,show:()=>{i()||$(t).collapse("show")},hide:()=>{i()&&$(t).collapse("hide")}}}_getValues(e,t,i){let s=i!==!0?i:t.map(o=>o.value);return this._isAutoClosing(e)&&(s=s.slice(s.length-1,s.length)),s}_findItem(e,t){return e.querySelector(`[data-value="${t}"]`)}_isAutoClosing(e){return e.classList.contains("autoclose")}};E(X,"accordion")});var z,K=v(()=>{"use strict";z=class{constructor(){this.resizeObserverEntries=[],this.resizeObserver=new ResizeObserver(e=>{let t=new Event("resize");if(window.dispatchEvent(t),!window.Shiny)return;let i=[];for(let s of e)s.target instanceof HTMLElement&&s.target.querySelector(".shiny-bound-output")&&s.target.querySelectorAll(".shiny-bound-output").forEach(r=>{if(i.includes(r))return;let{binding:o,onResize:c}=$(r).data("shinyOutputBinding");if(!o||!o.resize)return;let a=r.shinyResizeObserver;if(a&&a!==this||(a||(r.shinyResizeObserver=this),c(r),i.push(r),!r.classList.contains("shiny-plot-output")))return;let h=r.querySelector('img:not([width="100%"])');h&&h.setAttribute("width","100%")})})}observe(e){this.resizeObserver.observe(e),this.resizeObserverEntries.push(e)}unobserve(e){let t=this.resizeObserverEntries.indexOf(e);t<0||(this.resizeObserver.unobserve(e),this.resizeObserverEntries.splice(t,1))}flush(){this.resizeObserverEntries.forEach(e=>{document.body.contains(e)||this.unobserve(e)})}}});var F,de=v(()=>{"use strict";F=class{constructor(e,t){this.watching=new Set,this.observer=new MutationObserver(i=>{let s=new Set;for(let{type:r,removedNodes:o}of i)if(r==="childList"&&o.length!==0)for(let c of o)c instanceof HTMLElement&&(c.matches(e)&&s.add(c),c.querySelector(e)&&c.querySelectorAll(e).forEach(a=>s.add(a)));if(s.size!==0)for(let r of s)try{t(r)}catch(o){console.error(o)}})}observe(e){let t=this._flush();if(this.watching.has(e)){if(!t)return}else this.watching.add(e);t?this._restartObserver():this.observer.observe(e,{childList:!0,subtree:!0})}unobserve(e){this.watching.has(e)&&(this.watching.delete(e),this._flush(),this._restartObserver())}_restartObserver(){this.observer.disconnect();for(let e of this.watching)this.observer.observe(e,{childList:!0,subtree:!0})}_flush(){let e=!1,t=Array.from(this.watching);for(let i of t)document.body.contains(i)||(this.watching.delete(i),e=!0);return e}}});var l,T,ce=v(()=>{"use strict";L();K();de();l=class{constructor(e){var t;e.removeAttribute(l.attr.ATTR_INIT),(t=e.querySelector(`script[${l.attr.ATTR_INIT}]`))==null||t.remove(),this.card=e,l.instanceMap.set(e,this),l.shinyResizeObserver.observe(this.card),l.cardRemovedObserver.observe(document.body),this._addEventListeners(),this.overlay=this._createOverlay(),this._setShinyInput(),this._exitFullScreenOnEscape=this._exitFullScreenOnEscape.bind(this),this._trapFocusExit=this._trapFocusExit.bind(this)}enterFullScreen(e){var t;e&&e.preventDefault(),this.card.id&&this.overlay.anchor.setAttribute("aria-controls",this.card.id),document.addEventListener("keydown",this._exitFullScreenOnEscape,!1),document.addEventListener("keydown",this._trapFocusExit,!0),this.card.setAttribute(l.attr.ATTR_FULL_SCREEN,"true"),document.body.classList.add(l.attr.CLASS_HAS_FULL_SCREEN),this.card.insertAdjacentElement("beforebegin",this.overlay.container),(!this.card.contains(document.activeElement)||(t=document.activeElement)!=null&&t.classList.contains(l.attr.CLASS_FULL_SCREEN_ENTER))&&(this.card.setAttribute("tabindex","-1"),this.card.focus()),this._emitFullScreenEvent(!0),this._setShinyInput()}exitFullScreen(){document.removeEventListener("keydown",this._exitFullScreenOnEscape,!1),document.removeEventListener("keydown",this._trapFocusExit,!0),this.overlay.container.remove(),this.card.setAttribute(l.attr.ATTR_FULL_SCREEN,"false"),this.card.removeAttribute("tabindex"),document.body.classList.remove(l.attr.CLASS_HAS_FULL_SCREEN),this._emitFullScreenEvent(!1),this._setShinyInput()}_setShinyInput(){if(!this.card.classList.contains(l.attr.CLASS_SHINY_INPUT)||!g)return;if(!g.setInputValue){setTimeout(()=>this._setShinyInput(),0);return}let e=this.card.getAttribute(l.attr.ATTR_FULL_SCREEN);g.setInputValue(this.card.id+"_full_screen",e==="true")}_emitFullScreenEvent(e){let t=new CustomEvent("bslib.card",{bubbles:!0,detail:{fullScreen:e}});this.card.dispatchEvent(t)}_addEventListeners(){let e=this.card.querySelector(`:scope > * > .${l.attr.CLASS_FULL_SCREEN_ENTER}`);e&&e.addEventListener("click",t=>this.enterFullScreen(t))}_exitFullScreenOnEscape(e){if(!(e.target instanceof HTMLElement))return;let t=["select[open]","input[aria-expanded='true']"];e.target.matches(t.join(", "))||e.key==="Escape"&&this.exitFullScreen()}_trapFocusExit(e){if(!(e instanceof KeyboardEvent)||e.key!=="Tab")return;let t=e.target===this.card,i=e.target===this.overlay.anchor,s=this.card.contains(e.target),r=()=>{e.preventDefault(),e.stopImmediatePropagation()};if(!(s||t||i)){r(),this.card.focus();return}let o=oe(this.card).filter(C=>!C.classList.contains(l.attr.CLASS_FULL_SCREEN_ENTER));if(!(o.length>0)){r(),this.overlay.anchor.focus();return}if(t)return;let a=o[o.length-1],h=e.target===a;if(i&&e.shiftKey){r(),a.focus();return}if(h&&!e.shiftKey){r(),this.overlay.anchor.focus();return}}_createOverlay(){let e=document.createElement("div");e.id=l.attr.ID_FULL_SCREEN_OVERLAY,e.onclick=this.exitFullScreen.bind(this);let t=this._createOverlayCloseAnchor();return e.appendChild(t),{container:e,anchor:t}}_createOverlayCloseAnchor(){let e=document.createElement("a");return e.classList.add(l.attr.CLASS_FULL_SCREEN_EXIT),e.tabIndex=0,e.setAttribute("aria-expanded","true"),e.setAttribute("aria-label","Close card"),e.setAttribute("role","button"),e.onclick=t=>{this.exitFullScreen(),t.stopPropagation()},e.onkeydown=t=>{(t.key==="Enter"||t.key===" ")&&this.exitFullScreen()},e.innerHTML=this._overlayCloseHtml(),e}_overlayCloseHtml(){return"Close <svg width='20' height='20' fill='currentColor' class='bi bi-x-lg' viewBox='0 0 16 16'><path d='M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z'/></svg>"}static getInstance(e){return l.instanceMap.get(e)}static initializeAllCards(e=!0){if(document.readyState==="loading"){l.onReadyScheduled||(l.onReadyScheduled=!0,document.addEventListener("DOMContentLoaded",()=>{l.initializeAllCards(!1)}));return}e&&l.shinyResizeObserver.flush();let t=`.${l.attr.CLASS_CARD}[${l.attr.ATTR_INIT}]`;if(!document.querySelector(t))return;document.querySelectorAll(t).forEach(s=>new l(s))}},T=l;T.attr={ATTR_INIT:"data-bslib-card-init",CLASS_CARD:"bslib-card",ATTR_FULL_SCREEN:"data-full-screen",CLASS_HAS_FULL_SCREEN:"bslib-has-full-screen",CLASS_FULL_SCREEN_ENTER:"bslib-full-screen-enter",CLASS_FULL_SCREEN_EXIT:"bslib-full-screen-exit",ID_FULL_SCREEN_OVERLAY:"bslib-full-screen-overlay",CLASS_SHINY_INPUT:"bslib-card-input"},T.shinyResizeObserver=new z,T.cardRemovedObserver=new F(`.${l.attr.CLASS_CARD}`,e=>{let t=l.getInstance(e);t&&t.card.getAttribute(l.attr.ATTR_FULL_SCREEN)==="true"&&t.exitFullScreen()}),T.instanceMap=new WeakMap,T.onReadyScheduled=!1;N("Card",T)});function ue(n,e){let t=n();return()=>{let i=n();i!==t&&e(),t=i}}var d,S,G,he=v(()=>{"use strict";L();K();d=class{constructor(e){this.resizeState={isResizing:!1,startX:0,startWidth:0,minWidth:150,maxWidth:()=>window.innerWidth-50,constrainedWidth:e=>Math.max(this.resizeState.minWidth,Math.min(this.resizeState.maxWidth(),e))};this.resizeHandleActivated=!1;this.resizeHandleEngagementX=0;this.resizeHandlePeakDx=0;this.windowSize="";var s;d.instanceMap.set(e,this),this.layout={container:e,main:e.querySelector(":scope > .main"),sidebar:e.querySelector(":scope > .sidebar"),toggle:e.querySelector(":scope > .collapse-toggle")};let t=this.layout.sidebar.querySelector(":scope > .sidebar-content > .accordion");t&&((s=t==null?void 0:t.parentElement)==null||s.classList.add("has-accordion"),t.classList.add("accordion-flush")),this._initSidebarCounters(),this._initSidebarState(),(this._isCollapsible("desktop")||this._isCollapsible("mobile"))&&this._initEventListeners(),this._initResizeHandle(),d.shinyResizeObserver.observe(this.layout.main),e.removeAttribute("data-bslib-sidebar-init");let i=e.querySelector(":scope > script[data-bslib-sidebar-init]");i&&e.removeChild(i)}get isClosed(){return this.layout.container.classList.contains(d.classes.COLLAPSE)}static getInstance(e){return d.instanceMap.get(e)}_isCollapsible(e="desktop"){let{container:t}=this.layout,i=e==="desktop"?"collapsibleDesktop":"collapsibleMobile",s=t.dataset[i];return s===void 0?!0:s.trim().toLowerCase()!=="false"}static initCollapsibleAll(e=!0){if(document.readyState==="loading"){d.onReadyScheduled||(d.onReadyScheduled=!0,document.addEventListener("DOMContentLoaded",()=>{d.initCollapsibleAll(!1)}));return}let t=`.${d.classes.LAYOUT}[data-bslib-sidebar-init]`;if(!document.querySelector(t))return;e&&d.shinyResizeObserver.flush(),document.querySelectorAll(t).forEach(s=>new d(s))}_initResizeHandle(){if(this.layout.sidebar.hasAttribute("data-resizable")){if(!this.layout.resizeHandle){let e=this._createResizeHandle();this.layout.container.appendChild(e),this.layout.resizeHandle=e,this._attachResizeEventListeners(e)}this._updateResizeAvailability()}}_createResizeHandle(){let e=document.createElement("div");e.className=d.classes.RESIZE_HANDLE,e.setAttribute("role","separator"),e.setAttribute("aria-orientation","vertical"),e.setAttribute("aria-label","Resize sidebar"),e.setAttribute("tabindex","0"),e.setAttribute("aria-keyshortcuts","ArrowLeft ArrowRight Home End"),e.title="Drag to resize sidebar";let t=document.createElement("div");t.className="resize-indicator",e.appendChild(t);let i=document.createElement("div");return i.className="visually-hidden",i.textContent="Use arrow keys to resize the sidebar, Shift for larger steps, Home/End for min/max width.",e.appendChild(i),e}_attachResizeEventListeners(e){e.addEventListener("mousedown",this._onResizeStart.bind(this)),e.addEventListener("mousemove",this._onResizeHandlePointerMove.bind(this)),e.addEventListener("mouseleave",this._onResizeHandlePointerLeave.bind(this)),document.addEventListener("mousemove",this._onResizeMove.bind(this)),document.addEventListener("mouseup",this._onResizeEnd.bind(this)),e.addEventListener("touchstart",this._onResizeStart.bind(this),{passive:!1}),document.addEventListener("touchmove",this._onResizeMove.bind(this),{passive:!1}),document.addEventListener("touchend",this._onResizeEnd.bind(this)),e.addEventListener("keydown",this._onResizeKeyDown.bind(this)),window.addEventListener("resize",ue(()=>this._getWindowSize(),()=>this._updateResizeAvailability()))}_shouldEnableResize(){let e=this._getWindowSize()==="desktop",t=!this.layout.container.classList.contains(d.classes.TRANSITIONING),i=!this.isClosed;return e&&t&&i}_onResizeStart(e){if(!this._shouldEnableResize()||!("touches"in e)&&!this.resizeHandleActivated)return;e.preventDefault();let t="touches"in e?e.touches[0].clientX:e.clientX;this.resizeState.isResizing=!0,this.resizeState.startX=t,this.resizeState.startWidth=this._getCurrentSidebarWidth(),this.layout.container.style.setProperty("--_transition-duration","0ms"),this.layout.container.classList.add(d.classes.RESIZING),document.documentElement.setAttribute(`data-bslib-${d.classes.RESIZING}`,"true"),this._dispatchResizeEvent("start",this.resizeState.startWidth)}_onResizeMove(e){if(!this.resizeState.isResizing)return;e.preventDefault();let i=("touches"in e?e.touches[0].clientX:e.clientX)-this.resizeState.startX,r=this._isRightSidebar()?this.resizeState.startWidth-i:this.resizeState.startWidth+i,o=this.resizeState.constrainedWidth(r);this._updateSidebarWidth(o),this._dispatchResizeEvent("move",o)}_onResizeEnd(){this.resizeState.isResizing&&(this.resizeState.isResizing=!1,this.layout.container.style.removeProperty("--_transition-duration"),this.layout.container.classList.remove(d.classes.RESIZING),document.documentElement.removeAttribute(`data-bslib-${d.classes.RESIZING}`),this._deactivateResizeHandle(),d.shinyResizeObserver.flush(),this._dispatchResizeEvent("end",this._getCurrentSidebarWidth()))}_onResizeKeyDown(e){if(!this._shouldEnableResize())return;let t=e.shiftKey?50:10,i=this._getCurrentSidebarWidth();switch(e.key){case"ArrowLeft":i=this._isRightSidebar()?i+t:i-t;break;case"ArrowRight":i=this._isRightSidebar()?i-t:i+t;break;case"Home":i=this.resizeState.minWidth;break;case"End":i=this.resizeState.maxWidth();break;default:return}e.preventDefault(),i=this.resizeState.constrainedWidth(i),this._updateSidebarWidth(i),d.shinyResizeObserver.flush(),this._dispatchResizeEvent("keyboard",i)}_getCurrentSidebarWidth(){return this.layout.sidebar.getBoundingClientRect().width||250}_updateSidebarWidth(e){let{container:t,resizeHandle:i}=this.layout;t.style.setProperty("--_sidebar-width",`${e}px`),i&&(i.setAttribute("aria-valuenow",e.toString()),i.setAttribute("aria-valuemin",this.resizeState.minWidth.toString()),i.setAttribute("aria-valuemax",this.resizeState.maxWidth().toString()))}_isRightSidebar(){return this.layout.container.classList.contains("sidebar-right")}_onResizeHandlePointerMove(e){if(this.resizeState.isResizing)return;let t=this.layout.resizeHandle;if(!t)return;if(!this.resizeHandleActivated){let s=this.layout.sidebar.getBoundingClientRect(),r=this._isRightSidebar()?s.left:s.right;Math.abs(e.clientX-r)<=2&&(this.resizeHandleActivated=!0,this.resizeHandleEngagementX=e.clientX,this.resizeHandlePeakDx=0,t.classList.add(d.classes.HANDLE_ACTIVE));return}let i=e.clientX-this.resizeHandleEngagementX;Math.abs(i)>Math.abs(this.resizeHandlePeakDx)&&(this.resizeHandlePeakDx=i),Math.abs(this.resizeHandlePeakDx)>3&&Math.sign(i)!==Math.sign(this.resizeHandlePeakDx)&&this._deactivateResizeHandle()}_deactivateResizeHandle(){var e;this.resizeHandleActivated=!1,this.resizeHandlePeakDx=0,(e=this.layout.resizeHandle)==null||e.classList.remove(d.classes.HANDLE_ACTIVE)}_onResizeHandlePointerLeave(){this.resizeState.isResizing||this._deactivateResizeHandle()}_updateResizeAvailability(){if(!this.layout.resizeHandle)return;let e=this._shouldEnableResize();this.layout.resizeHandle.style.display=e?"":"none",this.layout.resizeHandle.setAttribute("aria-hidden",e?"false":"true"),e?this.layout.resizeHandle.setAttribute("tabindex","0"):this.layout.resizeHandle.removeAttribute("tabindex")}_dispatchResizeEvent(e,t){let i=new CustomEvent("bslib.sidebar.resize",{bubbles:!0,detail:{phase:e,width:t,sidebar:this}});this.layout.sidebar.dispatchEvent(i)}_initEventListeners(){var t;let{toggle:e}=this.layout;e.addEventListener("click",i=>{i.preventDefault(),this.toggle("toggle")}),(t=e.querySelector(".collapse-icon"))==null||t.addEventListener("transitionend",()=>{this._finalizeState()}),!(this._isCollapsible("desktop")&&this._isCollapsible("mobile"))&&window.addEventListener("resize",ue(()=>this._getWindowSize(),()=>this._initSidebarState()))}_initSidebarCounters(){let{container:e}=this.layout,t=`.${d.classes.LAYOUT}> .main > .${d.classes.LAYOUT}:not([data-bslib-sidebar-open="always"])`;if(!(e.querySelector(t)===null))return;function s(a){return a=a?a.parentElement:null,a&&a.classList.contains("main")&&(a=a.parentElement),a&&a.classList.contains(d.classes.LAYOUT)?a:null}let r=[e],o=s(e);for(;o;)r.unshift(o),o=s(o);let c={left:0,right:0};r.forEach(function(a){let C=a.classList.contains("sidebar-right")?c.right++:c.left++;a.style.setProperty("--_js-toggle-count-this-side",C.toString()),a.style.setProperty("--_js-toggle-count-max-side",Math.max(c.right,c.left).toString())})}_getWindowSize(){let{container:e}=this.layout;return window.getComputedStyle(e).getPropertyValue("--bslib-sidebar-js-window-size").trim()}_initialToggleState(){var s,r;let{container:e}=this.layout,t=this.windowSize==="desktop"?"openDesktop":"openMobile",i=(r=(s=e.dataset[t])==null?void 0:s.trim())==null?void 0:r.toLowerCase();return i===void 0||["open","always"].includes(i)?"open":["close","closed"].includes(i)?"close":"open"}_initSidebarState(){this.windowSize=this._getWindowSize();let e=this._initialToggleState();this.toggle(e,!0)}toggle(e,t=!1){typeof e=="undefined"?e="toggle":e==="closed"&&(e="close");let{container:i,sidebar:s}=this.layout,r=this.isClosed;if(["open","close","toggle"].indexOf(e)===-1)throw new Error(`Unknown method ${e}`);if(e==="toggle"&&(e=r?"open":"close"),r&&e==="close"||!r&&e==="open"){t&&this._finalizeState();return}e==="open"&&(s.hidden=!1),i.classList.toggle(d.classes.TRANSITIONING,!t),i.classList.toggle(d.classes.COLLAPSE),t&&this._finalizeState()}_finalizeState(){let{container:e,sidebar:t,toggle:i}=this.layout;e.classList.remove(d.classes.TRANSITIONING),t.hidden=this.isClosed,i.setAttribute("aria-expanded",this.isClosed?"false":"true"),this._updateResizeAvailability();let s=new CustomEvent("bslib.sidebar",{bubbles:!0,detail:{open:!this.isClosed}});t.dispatchEvent(s),$(t).trigger("toggleCollapse.sidebarInputBinding"),$(t).trigger(this.isClosed?"hidden":"shown")}},S=d;S.shinyResizeObserver=new z,S.classes={LAYOUT:"bslib-sidebar-layout",COLLAPSE:"sidebar-collapsed",TRANSITIONING:"transitioning",RESIZE_HANDLE:"bslib-sidebar-resize-handle",RESIZING:"sidebar-resizing",HANDLE_ACTIVE:"handle-active"},S.onReadyScheduled=!1,S.instanceMap=new WeakMap;G=class extends f{find(e){return $(e).find(`.${S.classes.LAYOUT} > .bslib-sidebar-input`)}getValue(e){let t=S.getInstance(e.parentElement);return t?!t.isClosed:!1}setValue(e,t){let i=t?"open":"close";this.receiveMessage(e,{method:i})}subscribe(e,t){$(e).on("toggleCollapse.sidebarInputBinding",function(i){t(!0)})}unsubscribe(e){$(e).off(".sidebarInputBinding")}receiveMessage(e,t){let i=S.getInstance(e.parentElement);i&&i.toggle(t.method)}};E(G,"sidebar");N("Sidebar",S)});var A,I,k,Y,j,be=v(()=>{"use strict";L();j=class extends f{constructor(){super(...arguments);y(this,k);y(this,A,new WeakMap);y(this,I,new WeakMap)}find(t){return $(t).find(".bslib-task-button")}getValue(t){var i;return{value:(i=m(this,A).get(t))!=null?i:0,autoReset:t.hasAttribute("data-auto-reset")}}getType(){return"bslib.taskbutton"}subscribe(t,i){m(this,I).has(t)&&this.unsubscribe(t);let s=()=>{var r;m(this,A).set(t,((r=m(this,A).get(t))!=null?r:0)+1),i(!0),_(this,k,Y).call(this,t,"busy")};m(this,I).set(t,s),t.addEventListener("click",s)}unsubscribe(t){let i=m(this,I).get(t);i&&t.removeEventListener("click",i)}receiveMessage(s,r){return u(this,arguments,function*(t,{state:i}){_(this,k,Y).call(this,t,i)})}};A=new WeakMap,I=new WeakMap,k=new WeakSet,Y=function(t,i){t.disabled=i==="busy";let s=t.querySelector("bslib-switch-inline");s&&(s.case=i)};E(j,"task-button")});var R,x,W,pe,Z,me=v(()=>{"use strict";L();Z=class extends f{constructor(){super(...arguments);y(this,W);y(this,R,new WeakMap);y(this,x,new WeakMap)}find(t){return $(t).find(".bslib-toolbar-input-button")}getValue(t){var i;return(i=m(this,R).get(t))!=null?i:0}getType(){return"bslib.toolbar.button"}subscribe(t,i){m(this,x).has(t)&&this.unsubscribe(t);let s=()=>{var r;m(this,R).set(t,((r=m(this,R).get(t))!=null?r:0)+1),_(this,W,pe).call(this,t),i(!0)};m(this,x).set(t,s),t.addEventListener("click",s)}unsubscribe(t){let i=m(this,x).get(t);i&&t.removeEventListener("click",i)}receiveMessage(t,i){return u(this,null,function*(){if(b(i,"disabled")&&(t.disabled=i.disabled),b(i,"label")&&i.label!==void 0){let s=t.querySelector(".bslib-toolbar-label");yield p(s,i.label)}if(b(i,"showLabel")){let s=t.querySelector(".bslib-toolbar-label");i.showLabel===!1?(s.setAttribute("hidden",""),t.setAttribute("data-type","icon")):(s.removeAttribute("hidden"),t.setAttribute("data-type","both"))}if(b(i,"icon")&&i.icon!==void 0){let s=t.querySelector(".bslib-toolbar-icon");yield p(s,i.icon)}})}};R=new WeakMap,x=new WeakMap,W=new WeakSet,pe=function(t){let i=t.closest("bslib-tooltip");i&&i.hide()};E(Z,"toolbar-input-button")});var q,fe,J,ve=v(()=>{"use strict";L();J=class extends f{constructor(){super(...arguments);y(this,q)}find(t){return $(t).find(".bslib-toolbar-input-select")}getId(t){return t.id||""}getValue(t){let i=t.querySelector("select");return i==null?void 0:i.value}subscribe(t,i){let s=t.querySelector("select");s&&$(s).on("change.bslibToolbarInputSelect",()=>{_(this,q,fe).call(this,t),i(!1)})}unsubscribe(t){let i=t.querySelector("select");i&&$(i).off(".bslibToolbarInputSelect")}receiveMessage(t,i){return u(this,null,function*(){let s=t.querySelector("select");if(b(i,"label")&&i.label!==void 0){let r=t.querySelector(".bslib-toolbar-label");yield p(r,i.label)}if(b(i,"showLabel")){let r=t.querySelector(".bslib-toolbar-label");i.showLabel===!1?r.classList.add("visually-hidden"):r.classList.remove("visually-hidden")}if(b(i,"icon")&&i.icon!==void 0){let r=t.querySelector(".bslib-toolbar-icon");yield p(r,i.icon)}b(i,"options")&&s&&i.options&&(s.innerHTML=i.options),b(i,"value")&&s&&i.value!==void 0&&(s.value=i.value,$(s).trigger("change"))})}};q=new WeakSet,fe=function(t){let i=t.closest("bslib-tooltip");i&&i.hide()};E(J,"toolbar-input-select")});function Ee(n){let e=U(n),t=!n.value;e.classList.toggle("disabled",t),e.setAttribute("aria-disabled",t.toString()),t?e.setAttribute("tabindex","-1"):e.removeAttribute("tabindex")}function ee(n){n.scrollHeight!==0&&(n.style.height="auto",n.style.height=n.scrollHeight+"px")}function He(n){if(!n.hasAttribute("data-needs-modifier"))return;let e=U(n);if(!e.querySelector(`.${H.submitKey}`))return;let t=navigator.userAgent.indexOf("Mac")!==-1;e.querySelectorAll(`.${H.submitKey}`).forEach(r=>{let o=t?"\u2318":"Ctrl";r.textContent=`${o} \u23CE`});let i=t?"Command":"Ctrl";e.title=e.title.replace("Press Enter",`Press ${i}+Enter`);let s=e.getAttribute("aria-label");s&&e.setAttribute("aria-label",s.replace("Press Enter",`Press ${i}+Enter`))}function U(n){var t;let e=(t=n.parentElement)==null?void 0:t.querySelector(`.${H.button}`);if(e instanceof HTMLButtonElement)return e;throw new Error("Expected input_submit_textarea()'s container to have a button with class of 'bslib-submit-textarea-btn'")}function we(n){let e=n.selectionStart,t=n.selectionEnd;n.value=n.value.substring(0,e)+`
`+n.value.substring(t),n.selectionStart=n.selectionEnd=e+1,n.dispatchEvent(new Event("input",{bubbles:!0}))}var M,H,ge,Q,ye=v(()=>{"use strict";L();M="textSubmitInputBinding",H={input:"bslib-input-submit-textarea",container:"bslib-submit-textarea-container",button:"bslib-submit-textarea-btn",submitKey:"bslib-submit-key"},ge=new IntersectionObserver(n=>{n.forEach(e=>{e.isIntersecting&&ee(e.target)})}),Q=class extends f{find(e){return $(e).find(`.${H.input} textarea`)}initialize(e){Ee(e),ee(e),He(e)}getValue(e){return $(e).data("val")}setValue(e,t){e.value=t}subscribe(e,t){function i(){$(e).data("val",e.value),e.value="",e.dispatchEvent(new Event("input",{bubbles:!0})),t("event")}let s=U(e);s.classList.contains("shiny-bound-input")?$(s).on(`shiny:inputchanged.${M}`,i):$(s).on(`click.${M}`,i),$(e).on(`input.${M}`,function(){Ee(e),ee(e)}),$(e).on(`keydown.${M}`,function(o){if(o.key!=="Enter")return;if(!e.value){o.preventDefault();return}if(o.shiftKey)return;if(o.altKey){o.preventDefault(),we(e);return}let c=e.hasAttribute("data-needs-modifier");if(!c){o.preventDefault(),s.click();return}let a=o.ctrlKey||o.metaKey;if(c&&a){o.preventDefault(),s.click();return}});let r=e.closest(`.${H.container}`);$(r).on(`click.${M}`,o=>{o.target.classList.contains(H.container)&&e.focus()}),ge.observe(e)}unsubscribe(e){$(e).off(`.${M}`);let t=e.nextElementSibling;$(t).off(`.${M}`);let i=e.closest(`.${H.container}`);$(i).off(`.${M}`),ge.unobserve(e)}receiveMessage(e,t){return u(this,null,function*(){let i=e.value;if(t.value!==void 0&&(e.value=t.value,e.dispatchEvent(new Event("input",{bubbles:!0}))),t.placeholder!==void 0&&(e.placeholder=t.placeholder),t.label!==void 0){let s=$(e).closest(`.${H.input}`).find("label");yield ae(t.label,s)}t.submit&&(U(e).click(),e.value=i),t.focus&&e.focus()})}};E(Q,"submit-text-area")});function V(n){if(window.Shiny)for(let[e,t]of Object.entries(n))window.Shiny.addCustomMessageHandler(e,t)}var te=v(()=>{"use strict"});function ze(n){return u(this,null,function*(){var D,se;let{html:e,deps:t,autohide:i,duration:s,position:r,id:o}=n;if(!window.bootstrap||!window.bootstrap.Toast){B({headline:"Bootstrap 5 Required",message:"Toast notifications require Bootstrap 5.",status:"error"});return}let c=document.getElementById(o);if(c){let w=P.get(c);w&&(w.hide(),P.delete(c)),(se=(D=window==null?void 0:window.Shiny)==null?void 0:D.unbindAll)==null||se.call(D,c),c.remove()}let a=Ce.getOrCreateToaster(r);yield p(a,{html:e,deps:t},"beforeEnd");let h=document.getElementById(o);if(!h){B({headline:"Toast Creation Failed",message:`Failed to create toast with id "${o}".`,status:"error"});return}let C=new ie(h,{autohide:i,duration:s});P.set(h,C),C.show(),h.addEventListener("hidden.bs.toast",()=>{var w,ne;(ne=(w=window==null?void 0:window.Shiny)==null?void 0:w.unbindAll)==null||ne.call(w,h),h.remove(),P.delete(h),a.children.length===0&&a.remove()})})}function Ae(n){let{id:e}=n,t=document.getElementById(e);if(!t){B({headline:"Toast Not Found",message:`No toast with id "${e}" was found.`,status:"warning"});return}let i=P.get(t);i&&i.hide()}var _e,O,Ce,ie,P,Le=v(()=>{"use strict";te();L();_e=window.bootstrap?window.bootstrap.Toast:class{},O=class{constructor(){this.containers=new Map}getOrCreateToaster(e){let t=this.containers.get(e);return(!t||!document.body.contains(t))&&(t=O._createToaster(e),document.body.appendChild(t),this.containers.set(e,t)),t}static _createToaster(e){let t=document.createElement("div");return t.className="toast-container position-fixed p-1 p-md-2",t.setAttribute("data-bslib-toast-container",e),t.classList.add(...O._positionClasses(e)),t}static _positionClasses(e){return{"top-left":["top-0","start-0"],"top-center":["top-0","start-50","translate-middle-x"],"top-right":["top-0","end-0"],"middle-left":["top-50","start-0","translate-middle-y"],"middle-center":["top-50","start-50","translate-middle"],"middle-right":["top-50","end-0","translate-middle-y"],"bottom-left":["bottom-0","start-0"],"bottom-center":["bottom-0","start-50","translate-middle-x"],"bottom-right":["bottom-0","end-0"]}[e]}},Ce=new O,ie=class{constructor(e,t){this.progressBar=null;this.timeStart=0;this.timeRemaining=0;this.hideTimeoutId=null;this.isPaused=!1;this.isPointerOver=!1;this.hasFocus=!1;this.element=e,this.timeRemaining=t.duration||5e3;let i={animation:!0,autohide:!1};this.bsToast=new _e(e,i),t.autohide&&(this._addProgressBar(),this._setupInteractionPause())}show(){this.bsToast.show()}hide(){this.hideTimeoutId!==null&&(clearTimeout(this.hideTimeoutId),this.hideTimeoutId=null),this.bsToast.hide()}_addProgressBar(){this.progressBar=document.createElement("div"),this.progressBar.className="bslib-toast-progress-bar",this.progressBar.style.cssText=`
animation: bslib-toast-progress ${this.timeRemaining}ms linear forwards;
animation-play-state: running;
`;let e=this.element.querySelector(".toast-header");e?e.insertBefore(this.progressBar,e.firstChild):this.element.insertBefore(this.progressBar,this.element.firstChild)}_setupInteractionPause(){this.timeStart=Date.now(),this._startHideTimeout(this.timeRemaining),this.element.addEventListener("pointerenter",()=>this._handlePointerEnter()),this.element.addEventListener("pointerleave",()=>this._handlePointerLeave()),this.element.addEventListener("focusin",()=>this._handleFocusIn()),this.element.addEventListener("focusout",()=>this._handleFocusOut())}_handlePointerEnter(){this.isPointerOver=!0,this._pause()}_handlePointerLeave(){this.isPointerOver=!1,this.hasFocus||this._resume()}_handleFocusIn(){this.hasFocus=!0,this._pause()}_handleFocusOut(){this.hasFocus=!1,this.isPointerOver||this._resume()}_pause(){if(this.isPaused)return;this.isPaused=!0;let e=Date.now()-this.timeStart;this.timeRemaining=Math.max(100,this.timeRemaining-e),this.hideTimeoutId!==null&&clearTimeout(this.hideTimeoutId),this.progressBar&&(this.progressBar.style.animationPlayState="paused")}_resume(){this.isPaused&&(this.isPaused=!1,this.timeStart=Date.now(),this._startHideTimeout(this.timeRemaining),this.progressBar&&(this.progressBar.style.animationPlayState="running"))}_startHideTimeout(e){this.hideTimeoutId!==null&&clearTimeout(this.hideTimeoutId),this.hideTimeoutId=window.setTimeout(()=>{this.bsToast.hide()},e)}},P=new WeakMap;V({"bslib.show-toast":ze,"bslib.hide-toast":Ae})});var Re=Me(Te=>{le();ce();he();be();me();ve();ye();Le();L();te();var Ie={"bslib.toggle-input-binary":n=>u(Te,null,function*(){let e=document.getElementById(n.id);e||console.warn("[bslib.toggle-input-binary] No element found",n);let t=$(e).data("shiny-input-binding");if(!(t instanceof f)){console.warn("[bslib.toggle-input-binary] No input binding found",n);return}let i=n.value;typeof i=="undefined"&&(i=!t.getValue(e)),yield t.receiveMessage(e,{value:i})})};window.Shiny&&V(Ie);function Se(){let n=document.createElement("div");n.innerHTML=`
<svg aria-hidden="true" focusable="false" style="width:0;height:0;position:absolute;">
<!-- ref: https://fvsch.com/svg-gradient-fill -->
<linearGradient id='bslib---icon-gradient' x1='0' y1='0' x2='1.6' y2='2.4'>
<stop offset='0%' stop-color='var(--bslib-icon-gradient-0, #007bc2)' />
<stop offset='14.29%' stop-color='var(--bslib-icon-gradient-1, #0770c9)' />
<stop offset='28.57%' stop-color='var(--bslib-icon-gradient-2, #0d63da)' />
<stop offset='42.86%' stop-color='var(--bslib-icon-gradient-3, #2b4af9)' />
<stop offset='57.14%' stop-color='var(--bslib-icon-gradient-4, #5e29f7)' />
<stop offset='71.43%' stop-color='var(--bslib-icon-gradient-5, #7217d7)' />
<stop offset='100%' stop-color='var(--bslib-icon-gradient-6, #74149c)' />
</linearGradient>
</svg>`,document.body.appendChild(n.children[0])}document.readyState==="complete"?Se():document.addEventListener("DOMContentLoaded",Se)});Re();})();
//# sourceMappingURL=components.min.js.map