@kizenapps/cli 1.1.1-d2d94ec → 1.1.2-590a1f4

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.
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-DF2fYuay.js";import{A as t,D as n,O as r,S as i,T as a,a as o,b as s,i as c,j as l,k as u,o as d,s as f,u as p}from"./fa-core-BoBqCOD3.js";import{n as m}from"./react-csXWLXSE.js";import{n as h,t as g}from"./bundleQuery-CjbA01rb.js";import{t as _}from"./useQuery-5OkVbV1s.js";import{a as v,i as y,n as b,r as x}from"./BootstrapContext-D5ZnMrOp.js";import{a as S,c as C,d as w,f as T,i as E,l as ee,n as te,o as D,p as ne,r as re,s as ie,t as ae,u as oe}from"./useCriticalExceptionDialog-DQOlM11I.js";import{c as se,d as O,l as ce,n as le,o as ue,r as de,s as fe,t as pe}from"./storageKeys-C6c8YF5Y.js";import{a as me,i as he,n as ge,o as _e,r as ve,w as ye}from"./api-BcUybEsl.js";import{n as be}from"./SidebarContext-Cn8QRb77.js";import{t as k}from"./Card-BpDJPrPZ.js";import{t as xe}from"./Tooltip-tpqNw0op.js";import{i as Se,r as Ce,t as we}from"./validIcons-BzGQ4tWD.js";import{t as Te}from"./useLocalStorage-CyZiO78q.js";import{a as Ee,i as De,r as Oe}from"./configStorage-CJZAV_2p.js";import{t as ke}from"./WhenBadge-BcgTLbpu.js";var A=e(l(),1),Ae=m(),j=t(),je=36,Me=20,Ne=9e3,Pe=({frameId:e,side:t,color:n,zIndex:r,onClick:i,CustomIcon:a,circleIcon:o,when:s,whenEnabled:c})=>{let l=document.getElementById(`${e}-trigger-${t}`);if(!l)return null;let d=!a&&o?Se[o]:void 0;return(0,Ae.createPortal)((0,j.jsxs)(`button`,{className:`relative pointer-events-auto flex h-10 w-10 items-center justify-center rounded-full border border-black/10 shadow-lg`,style:{backgroundColor:n,zIndex:r},onClick:i,onPointerDown:e=>{e.stopPropagation()},title:`Open frame`,children:[a?(0,j.jsx)(a,{className:`h-6 w-6 rounded-full object-cover`}):d?(0,j.jsx)(u,{icon:d,className:`text-[16px] text-white`}):(0,j.jsx)(`span`,{className:`font-mono text-[11px] text-white`,children:`▲`}),s&&c!=null?(0,j.jsx)(xe,{text:s,children:(0,j.jsx)(`span`,{className:`absolute -top-0.5 -right-0.5 h-2.5 w-2.5 rounded-full border-2 border-white ${c?`bg-green-500`:`bg-amber-500`}`})}):null]}),l)},Fe=({frame:e,framesEnabled:t,whenState:n})=>{let r=`${e.plugin_api_name}-${e.api_name}`,i=e.when,[a,o]=(0,A.useState)(null);(0,A.useEffect)(()=>{i&&me(i,n??{}).then(o).catch(()=>{o(null)})},[i,n]);let s=be(),[c,l]=(0,A.useState)(window.innerHeight);(0,A.useEffect)(()=>{let e=new ResizeObserver(()=>{l(window.innerHeight)});return e.observe(document.body),()=>{e.disconnect()}},[]);let{circleProps:u,parentProps:d,draggableProps:f,pending:p,indicator:m,outputUIRef:h,scopedCss:g,sanitizedHtml:_,interactableScriptRef:v,hideHeader:y,setMinimized:b,dragHandleClassName:x,isFixed:S,isCircle:C,minimized:w,height:T,dragging:E,frameOffset:ee,scriptUIRef:te}=oe({currentWindow:e,pathname:`/sandbox`,id:r,frameHeaderSize:je,defaultPositionGap:Me,viewportHeight:c,hiddenByModal:!1}),D=Ne+Math.max(0,ee),ne=de(r),re=(()=>{try{let e=localStorage.getItem(ne);return e?JSON.parse(e):null}catch{return null}})(),ie=(0,A.useRef)(null),[ae,se]=(0,A.useState)(re??f.position),O=(0,A.useRef)(re!==null),ce=f.position;(0,A.useEffect)(()=>{O.current||se({x:ce.x,y:ce.y})},[ce.x,ce.y]);let le=(0,A.useCallback)(e=>{if(f.disabled||!e.target.closest(`.${x}`))return;e.preventDefault(),f.onStart();let t=e.clientX,n=e.clientY,r=ae.x,i=ae.y,a=e=>{se({x:r+e.clientX-t,y:i+e.clientY-n})},o=e=>{document.removeEventListener(`pointermove`,a),document.removeEventListener(`pointerup`,o);let s={x:r+e.clientX-t,y:i+e.clientY-n};localStorage.setItem(ne,JSON.stringify(s)),O.current=!0,f.onStop(e,{node:ie.current})};document.addEventListener(`pointermove`,a),document.addEventListener(`pointerup`,o)},[f,x,ae,ne]);return(0,j.jsxs)(j.Fragment,{children:[C&&!u.hidden&&(0,j.jsx)(Pe,{frameId:r,side:u.side,color:u.circleColor,zIndex:D,onClick:u.onClick,CustomIcon:u.CustomIcon,circleIcon:u.circleIcon,...i?{when:i,whenEnabled:a}:{}}),(0,j.jsxs)(`div`,{ref:ie,className:d.className,style:{position:`fixed`,left:Math.min(ae.x,window.innerWidth-s-(e.width??300)),top:ae.y,width:e.width??300,zIndex:D,borderRadius:6,overflow:`hidden`,border:`1px solid rgba(0,0,0,0.1)`,boxShadow:`0 4px 20px rgba(0,0,0,0.1)`,backgroundColor:`white`,opacity:d.hidden||!t?0:1,pointerEvents:d.hidden||!t?`none`:`auto`},onPointerDown:le,children:[(p||m===`block`)&&(0,j.jsx)(`div`,{className:`absolute inset-0 z-10 flex items-center justify-center bg-white/80 font-mono text-[11px] text-neutral-400`,children:`loading…`}),!y&&(0,j.jsxs)(`div`,{className:`flex select-none items-center border-b border-black/8`,style:{height:je,backgroundColor:e.header_color??`#fafafa`,color:e.header_text_color??`#1a1a1a`},children:[(0,j.jsxs)(`div`,{className:`${x} flex h-full flex-1 items-center gap-2 overflow-hidden px-3 ${S?``:`cursor-grab active:cursor-grabbing`}`,children:[!S&&(0,j.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] opacity-30`,children:`⠿`}),(0,j.jsx)(`span`,{className:`truncate font-mono text-[12px] font-medium`,children:e.title})]}),(0,j.jsx)(`button`,{className:`flex h-full shrink-0 items-center px-3 font-mono text-[11px] transition-colors hover:bg-black/5`,onClick:()=>{b(!w)},onMouseDown:e=>{e.stopPropagation()},onPointerDown:e=>{e.stopPropagation()},title:w?`Expand`:`Collapse`,children:w?`↑`:`↓`})]}),(0,j.jsxs)(`div`,{style:{height:w?0:T,overflow:`hidden`,transition:`height ${String(T*5e-4)}s ease`},children:[e.type===`script`&&(0,j.jsxs)(`div`,{className:`h-full w-full`,style:{pointerEvents:E||d.hidden||!t?`none`:`auto`},children:[(0,j.jsx)(`div`,{className:`h-full w-full`,ref:te}),(0,j.jsx)(`style`,{children:g})]}),e.type===`html`&&_&&(0,j.jsxs)(`div`,{ref:v,className:`overflow-auto bg-white`,style:{height:T,pointerEvents:E||d.hidden||!t?`none`:`auto`},children:[(0,j.jsx)(`div`,{dangerouslySetInnerHTML:{__html:_}}),(0,j.jsx)(`div`,{ref:h}),(0,j.jsx)(`style`,{children:g})]}),e.type===`iframe`&&(0,j.jsx)(`div`,{className:`h-full w-full`,style:{pointerEvents:E||d.hidden||!t?`none`:`auto`},children:(0,j.jsx)(`div`,{className:`h-full w-full`,ref:te})})]})]})]})},Ie=({visible:e})=>e?(0,j.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center rounded bg-white/70`,children:(0,j.jsx)(u,{icon:a,spin:!0,className:`text-[11px] text-neutral-400`})}):null;function Le(e){let t=he(),{apiKey:n,businessId:r}=O(),i=b(),[a,o]=Te(e,null),[s,c]=(0,A.useState)(()=>a?.name??``),[l,u]=(0,A.useState)(``),d=(0,A.useRef)(null);(0,A.useEffect)(()=>(d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{u(s)},300),()=>{d.current&&clearTimeout(d.current)}),[s]);let f=_({queryKey:[`custom-objects`,r,l],queryFn:async()=>{let e=new URLSearchParams({page_size:`20`});return l&&e.set(`search`,l),await(await t(`/custom-objects?${e.toString()}`)).json()},enabled:n!==``&&l.length>=1,staleTime:3e4});return{selectedObject:a,setSelectedObject:o,objectSearch:s,setObjectSearch:c,objectsQuery:f,objectOptions:(()=>{let e=f.data?.results.map(e=>({id:e.id,label:e.object_name}))??[],t=i?.business.client_object;return t?.access&&(!l||t.object_name.toLowerCase().includes(l.toLowerCase()))&&e.unshift({id:t.id,label:t.object_name}),e})()}}function Re(e,t){let n=Object.values(e).find(e=>e.name===t);return typeof n?.value==`string`?n.value:``}function ze(e,t){if(t){let t=Re(e.fields,`first_name`),n=Re(e.fields,`last_name`),r=Re(e.fields,`email`),i=[t,n].filter(Boolean).join(` `);return i?`${i} (${r})`:r||e.id}let n=Object.values(e.fields).find(e=>e.name===`display_name`);return typeof n?.value==`string`?n.value:e.id}function Be(e,t=``){let n=Le(se(e,t)),{selectedObject:r}=n,i=he(),{apiKey:a}=O(),o=b(),[s,c]=Te(fe(e,t),null),[l,u]=(0,A.useState)(()=>s?.label??``),[d,f]=(0,A.useState)(``),p=(0,A.useRef)(null);(0,A.useEffect)(()=>(p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{f(l)},300),()=>{p.current&&clearTimeout(p.current)}),[l]);let m=_({queryKey:[`entity-records`,r?.id,d],queryFn:async()=>{let e=new URLSearchParams({page_size:`20`});return d&&e.set(`search`,d),await(await i(`/records/${r?.id??``}/search?${e.toString()}`,{method:`POST`,headers:{"Content-Type":`application/json`},body:`{}`})).json()},enabled:a!==``&&r!==null,staleTime:3e4}),h=r?.id===o?.business.client_object?.id,g=m.data?.results.map(e=>({id:e.id,label:ze(e,h)}))??[];return{...n,selectedEntity:s,setSelectedEntity:c,entitySearch:l,setEntitySearch:u,entitiesQuery:m,entityOptions:g}}var Ve=({action:e,objectId:t,entityId:n,actionObjectId:r,actionEntityId:i,pluginApiName:a,configArgs:o,disabled:s})=>{let[c,{pending:l}]=T({objectId:t,entityId:n,onError:t=>{console.error(`[js-action] ${e.api_name}:`,t)}}),u={id:e.api_name,api_name:e.api_name,plugin_api_name:a};return(0,j.jsxs)(`button`,{onClick:()=>{let a={objectId:t,entityId:n};r&&i&&(a.actionObjectId=r,a.actionEntityId=i),c(e.script,o,u,a)},disabled:s===!0||l,className:`relative flex flex-col items-start rounded border border-black/8 bg-white px-3 py-1.5 text-left transition-colors hover:bg-black/5 disabled:opacity-50`,children:[(0,j.jsx)(`span`,{className:`font-mono text-[12px] text-neutral-800`,children:e.name}),e.hint_object_name&&(0,j.jsxs)(`span`,{className:`font-mono text-[10px] text-neutral-400`,children:[`for: `,e.hint_object_name]}),(0,j.jsx)(Ie,{visible:l})]})},He=({actions:e,pluginApiName:t,configArgs:n})=>{let{apiKey:r}=O(),{selectedObject:i,setSelectedObject:a,objectSearch:o,setObjectSearch:s,objectsQuery:c,objectOptions:l,selectedEntity:u,setSelectedEntity:d,entitySearch:f,setEntitySearch:p,entitiesQuery:m,entityOptions:h}=Be(t),{selectedObject:g,setSelectedObject:_,objectSearch:v,setObjectSearch:y,objectsQuery:b,objectOptions:x,selectedEntity:S,setSelectedEntity:C,entitySearch:w,setEntitySearch:T,entitiesQuery:ee,entityOptions:te}=Be(t,`action`);if(!r)return(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Configure API credentials in Dev Tools to use JS action templates.`});let D=i!==null&&u!==null,ne=g!==null&&S!==null;return(0,j.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,j.jsxs)(`div`,{className:`flex gap-3`,children:[(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Custom Object`,value:o,onChange:e=>{s(e),i&&(a(null),d(null),p(``))},onSelect:(e,t)=>{a({id:e,name:t}),s(t),d(null),p(``)},options:l,loading:c.isFetching,placeholder:`Search custom objects…`})}),(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Record`,value:f,onChange:e=>{p(e),u&&d(null)},onSelect:(e,t)=>{d({id:e,label:t}),p(t)},options:h,loading:m.isFetching,placeholder:`Search records…`,disabled:i===null})})]}),(0,j.jsxs)(`div`,{className:`flex gap-3`,children:[(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Related Object (optional)`,value:v,onChange:e=>{y(e),g&&(_(null),C(null),T(``))},onSelect:(e,t)=>{_({id:e,name:t}),y(t),C(null),T(``)},options:x,loading:b.isFetching,placeholder:`Search custom objects…`})}),(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Action Record (optional)`,value:w,onChange:e=>{T(e),S&&C(null)},onSelect:(e,t)=>{C({id:e,label:t}),T(t)},options:te,loading:ee.isFetching,placeholder:`Search records…`,disabled:g===null})})]}),(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:e.map(e=>(0,j.jsx)(Ve,{action:e,objectId:i?.id??``,entityId:u?.id??``,actionObjectId:g?.id,actionEntityId:S?.id,pluginApiName:t,configArgs:n,disabled:!D},e.api_name))},D?`${i.id}-${u.id}-${ne?`${g.id}-${S.id}`:`-`}`:`no-selection`)]})},Ue=({adornment:e,objectId:t,entityId:n,pluginApiName:r,fieldValue:i,configArgs:a,disabled:o,whenState:s})=>{let[c,{pending:l}]=T({objectId:t,entityId:n,onError:t=>{console.error(`[data-adornment] ${e.field_type}:`,t)}}),d={id:e.config.tooltip||e.field_type,api_name:e.field_type,plugin_api_name:r};return(0,j.jsxs)(`button`,{onClick:()=>{let r={value:i,fieldId:``,fieldType:e.field_type,objectId:t,entityId:n,...a};c(e.script,r,d)},disabled:o===!0||l,className:`relative flex flex-col items-start rounded border border-black/8 bg-white px-3 py-1.5 text-left transition-colors hover:bg-black/5 disabled:opacity-50`,children:[(0,j.jsxs)(`span`,{className:`flex items-center gap-1.5 font-mono text-[12px] text-neutral-800`,children:[e.config.color&&(0,j.jsx)(`span`,{className:`h-3 w-4 shrink-0 rounded-sm border border-black/10`,style:{backgroundColor:e.config.color}}),e.config.icon&&(Se[e.config.icon]?(0,j.jsx)(u,{icon:Se[e.config.icon],className:`text-[12px] text-neutral-500`}):(0,j.jsx)(`span`,{className:`rounded px-1 font-mono text-[10px] ${we.has(e.config.icon)||Ce.has(e.config.icon)?`bg-neutral-100 text-neutral-400`:`bg-amber-100 text-amber-600`}`,children:e.config.icon})),e.config.tooltip||e.field_type]}),(0,j.jsx)(`span`,{className:`font-mono text-[10px] text-neutral-400`,children:e.field_type}),e.when&&s&&(0,j.jsx)(ke,{when:e.when,whenState:s}),(0,j.jsx)(Ie,{visible:l})]})},We=({adornments:e,pluginApiName:t,configArgs:n,whenState:r})=>{let{apiKey:i}=O(),{selectedObject:a,setSelectedObject:o,objectSearch:s,setObjectSearch:c,objectsQuery:l,objectOptions:u,selectedEntity:d,setSelectedEntity:f,entitySearch:p,setEntitySearch:m,entitiesQuery:h,entityOptions:g}=Be(t),[_,v]=(0,A.useState)({});if(!i)return(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Configure API credentials in Dev Tools to use data adornments.`});let y=a!==null&&d!==null,b=e.reduce((e,t)=>{let n=t.field_type;return e[n]??=[],e[n].push(t),e},{});return(0,j.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,j.jsxs)(`div`,{className:`flex gap-3`,children:[(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Custom Object`,value:s,onChange:e=>{c(e),a&&(o(null),f(null),m(``))},onSelect:(e,t)=>{o({id:e,name:t}),c(t),f(null),m(``)},options:u,loading:l.isFetching,placeholder:`Search custom objects…`})}),(0,j.jsx)(`div`,{className:`flex-1`,children:(0,j.jsx)(E,{label:`Record`,value:p,onChange:e=>{m(e),d&&f(null)},onSelect:(e,t)=>{f({id:e,label:t}),m(t)},options:g,loading:h.isFetching,placeholder:`Search records…`,disabled:a===null})})]}),(0,j.jsx)(`div`,{className:`flex flex-col gap-3`,children:Object.entries(b).map(([e,i])=>(0,j.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,j.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(`label`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-500`,children:e}),(0,j.jsx)(`input`,{type:`text`,className:`w-full rounded border border-black/10 bg-white px-2.5 py-1.5 font-mono text-[12px] text-neutral-800 focus:border-neutral-400 focus:outline-none`,placeholder:`${e} value…`,value:_[e]??``,onChange:t=>{v(n=>({...n,[e]:t.target.value}))}})]}),(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:i.map((i,o)=>(0,j.jsx)(Ue,{adornment:i,objectId:a?.id??``,entityId:d?.id??``,pluginApiName:t,fieldValue:_[e]??``,configArgs:n,disabled:!y,...r?{whenState:r}:{}},o))})]},e))},y?`${a.id}-${d.id}`:`no-selection`)]})},Ge=`microphone; speaker-selection; autoplay; camera; display-capture; hid`,Ke=({page:e,isActive:t})=>{let{scriptUIRef:n,outputUIRef:r,scopedCss:i,sanitizedHtml:a,interactableScriptRef:o,iframeURL:s,pending:c}=ie(e);return(0,j.jsxs)(`div`,{style:{display:t?`block`:`none`},className:`relative h-full w-full`,children:[c&&(0,j.jsx)(`div`,{className:`absolute inset-0 z-10 flex items-center justify-center bg-white/80 font-mono text-[11px] text-neutral-400`,children:`loading…`}),e.type===`script`&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`div`,{ref:n,className:`h-full w-full p-3`}),(0,j.jsx)(`style`,{children:i})]}),e.type===`html`&&(0,j.jsxs)(`div`,{ref:o,className:`overflow-auto p-3`,children:[a&&(0,j.jsx)(`div`,{dangerouslySetInnerHTML:{__html:a}}),(0,j.jsx)(`div`,{ref:r}),(0,j.jsx)(`style`,{children:i})]}),e.type===`iframe`&&s&&(0,j.jsx)(`iframe`,{src:s,className:`h-full w-full border-0`,title:e.name,allow:Ge})]})},qe=`integration:route-change`;function Je(e,t){return e.find(e=>e.api_name===t||t.endsWith(`${e.plugin_api_name}/${e.api_name}`))}function Ye(e){try{let t=new URL(e);return t.hostname===``?t.pathname.split(`/`).filter(Boolean).pop()??e:t.hostname}catch{return e.split(`/`).filter(Boolean).pop()??e}}var Xe=(0,A.forwardRef)(({pages:e},t)=>{let[n,r]=(0,A.useState)(`home`),[i,a]=(0,A.useState)({entries:[``],index:0}),[o,s]=(0,A.useState)([]),[c,l]=(0,A.useState)({}),d=(0,A.useRef)(0),f=i.entries[i.index]??``,p=n===`home`?f:n,m=(0,A.useRef)(!0);(0,A.useEffect)(()=>{if(m.current){m.current=!1;return}let e=`/${p}`;window.dispatchEvent(new CustomEvent(qe,{detail:{location:{host:window.location.host,origin:window.location.origin,port:window.location.port,protocol:window.location.protocol,pathname:e,search:``,hash:``,href:`${window.location.origin}${e}`}}}))},[p]);let h=n===`home`&&i.index>0,g=n===`home`&&i.index<i.entries.length-1,_=(0,A.useCallback)((t,n)=>{let i=t.replace(/^\/+/,``),o=Je(e,i);o?(r(o.api_name),l(e=>({...e,[o.api_name]:(e[o.api_name]??0)+1}))):(r(`home`),a(e=>{if(!n?.replace&&e.entries[e.index]===i)return e;if(n?.replace){let t=[...e.entries];return t[e.index]=i,{entries:t,index:e.index}}let t=[...e.entries.slice(0,e.index+1),i];return{entries:t,index:t.length-1}}))},[e]),v=(0,A.useCallback)(t=>{let n=Je(e,t.replace(/^\/+/,``));if(n){r(n.api_name),l(e=>({...e,[n.api_name]:(e[n.api_name]??0)+1}));return}d.current+=1;let i=`__tab_${String(d.current)}`;s(e=>[...e,{id:i,url:t,title:Ye(t)}]),r(i)},[e]),y=(0,A.useCallback)(e=>{s(t=>t.filter(t=>t.id!==e)),n===e&&r(`home`)},[n]);(0,A.useImperativeHandle)(t,()=>({navigate:_,openNewTab:v}),[_,v]);let b=o.find(e=>e.id===n)??null;return(0,j.jsxs)(`div`,{className:`mt-1.5 overflow-hidden rounded border border-black/10 bg-white`,children:[(0,j.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-black/8 bg-neutral-50 px-3 py-1.5`,children:[(0,j.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,j.jsx)(`div`,{className:`h-3 w-3 rounded-full bg-red-400/60`}),(0,j.jsx)(`div`,{className:`h-3 w-3 rounded-full bg-yellow-400/60`}),(0,j.jsx)(`div`,{className:`h-3 w-3 rounded-full bg-green-400/60`})]}),(0,j.jsx)(`button`,{onClick:()=>{a(e=>({...e,index:e.index-1}))},disabled:!h,className:`px-0.5 font-mono text-[15px] leading-none transition-colors ${h?`text-neutral-600 hover:text-neutral-900`:`cursor-default text-neutral-300`}`,children:`‹`}),(0,j.jsx)(`button`,{onClick:()=>{a(e=>({...e,index:e.index+1}))},disabled:!g,className:`px-0.5 font-mono text-[15px] leading-none transition-colors ${g?`text-neutral-600 hover:text-neutral-900`:`cursor-default text-neutral-300`}`,children:`›`}),(0,j.jsx)(`div`,{className:`min-w-0 flex-1 truncate rounded border border-black/8 bg-white px-2 py-0.5 font-mono text-[11px] text-neutral-400`,children:b?b.url:`app://sandbox/${p}`})]}),(0,j.jsxs)(`div`,{className:`flex border-b border-black/8 bg-neutral-50`,children:[(0,j.jsx)(`button`,{onClick:()=>{r(`home`)},className:`border-r border-black/8 px-3 py-1.5 font-mono text-[11px] transition-colors ${n===`home`?`bg-white font-medium text-neutral-900`:`text-neutral-500 hover:bg-black/5`}`,children:`home`}),e.map(e=>(0,j.jsxs)(`button`,{onClick:()=>{r(e.api_name)},className:`border-r border-black/8 px-3 py-1.5 font-mono text-[11px] transition-colors ${n===e.api_name?`bg-white font-medium text-neutral-900`:`text-neutral-500 hover:bg-black/5`}`,children:[e.toolbar_icon&&(Se[e.toolbar_icon]?(0,j.jsx)(u,{icon:Se[e.toolbar_icon],className:`mr-1 text-[10px] text-neutral-400`}):(0,j.jsx)(`span`,{className:`mr-1 rounded px-1 font-mono text-[9px] ${we.has(e.toolbar_icon)||Ce.has(e.toolbar_icon)?`bg-neutral-100 text-neutral-400`:`bg-amber-100 text-amber-600`}`,children:e.toolbar_icon})),e.name]},e.api_name)),o.map(e=>(0,j.jsxs)(`div`,{className:`flex items-center border-r border-black/8 ${n===e.id?`bg-white`:`hover:bg-black/5`}`,children:[(0,j.jsx)(`button`,{onClick:()=>{r(e.id)},className:`py-1.5 pl-3 pr-1 font-mono text-[11px] transition-colors ${n===e.id?`font-medium text-neutral-900`:`text-neutral-500`}`,children:e.title}),(0,j.jsx)(`button`,{onClick:()=>{y(e.id)},className:`px-1.5 py-1.5 font-mono text-[11px] text-neutral-300 transition-colors hover:text-neutral-600`,children:`×`})]},e.id))]}),(0,j.jsxs)(`div`,{className:`h-[500px]`,children:[n===`home`&&f===``&&(0,j.jsxs)(`div`,{className:`flex flex-col gap-2 p-6 font-mono text-[11px]`,children:[(0,j.jsx)(`div`,{className:`text-neutral-400`,children:`app://sandbox/`}),(0,j.jsx)(`div`,{className:`mt-1 text-[13px] font-medium text-neutral-700`,children:`App Homepage`}),(0,j.jsx)(`div`,{className:`text-neutral-400`,children:e.length>0?`This is the index page of your app. Navigate to a routable page using the tabs above.`:`This app has no routable pages defined. Add a routable_page artifact to your plugin to see it here.`})]}),n===`home`&&f!==``&&(0,j.jsxs)(`div`,{className:`flex flex-col gap-2 p-6 font-mono text-[11px]`,children:[(0,j.jsxs)(`div`,{className:`text-neutral-400`,children:[`app://sandbox/`,f]}),(0,j.jsx)(`div`,{className:`mt-1 text-[13px] font-medium text-neutral-500`,children:`Page not found`}),(0,j.jsxs)(`div`,{className:`text-neutral-400`,children:[`No routable page with api_name`,` `,(0,j.jsx)(`code`,{className:`rounded bg-neutral-100 px-1`,children:f}),` is defined in this plugin.`]})]}),e.map(e=>(0,j.jsx)(Ke,{page:e,isActive:n===e.api_name},`${e.api_name}-${String(c[e.api_name]??0)}`)),o.map(e=>(0,j.jsx)(`div`,{style:{display:n===e.id?`block`:`none`},className:`h-full w-full`,children:/^https?:\/\//i.test(e.url)?(0,j.jsx)(`iframe`,{src:e.url,className:`h-full w-full border-0`,title:e.title,allow:Ge}):(0,j.jsxs)(`div`,{className:`flex flex-col gap-2 p-6 font-mono text-[11px]`,children:[(0,j.jsx)(`div`,{className:`text-neutral-400`,children:e.url}),(0,j.jsx)(`div`,{className:`mt-1 text-[13px] font-medium text-neutral-500`,children:`Page not found`}),(0,j.jsxs)(`div`,{className:`text-neutral-400`,children:[`No routable page with path`,` `,(0,j.jsx)(`code`,{className:`rounded bg-neutral-100 px-1`,children:e.url}),` is defined in this plugin.`]})]})},e.id))]})]})});Xe.displayName=`RoutablePageBrowser`;var Ze=({item:e,whenState:t})=>{let[n,{pending:r}]=w({onError:t=>{console.error(`[toolbar] ${e.api_name}:`,t)},plugin:{...e,name:e.label,type:`script`}}),i=e.when;return(0,j.jsxs)(`button`,{onClick:()=>void n(e.script,e.args),disabled:r,className:`relative flex flex-col items-start rounded border border-black/8 bg-white px-3 py-1.5 font-mono text-[12px] text-neutral-800 transition-colors hover:bg-black/5 disabled:opacity-50`,children:[(0,j.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[e.color&&(0,j.jsx)(`span`,{className:`h-3 w-4 shrink-0 rounded-sm border border-black/10`,style:{backgroundColor:e.color}}),e.icon&&(Se[e.icon]?(0,j.jsx)(u,{icon:Se[e.icon],className:`text-[12px] text-neutral-500`}):(0,j.jsx)(`span`,{className:`rounded px-1 font-mono text-[10px] ${we.has(e.icon)||Ce.has(e.icon)?`bg-neutral-100 text-neutral-400`:`bg-amber-100 text-amber-600`}`,children:e.icon})),(0,j.jsx)(`span`,{children:e.label})]}),i&&t&&(0,j.jsx)(ke,{when:i,whenState:t}),(0,j.jsx)(Ie,{visible:r})]})},Qe=({item:e,objectId:t,pluginApiName:n,configArgs:r,disabled:i,whenState:a})=>{let[o,{pending:s}]=T({objectId:t,entityId:``,onError:t=>{console.error(`[object-settings] ${e.api_name}:`,t)}}),c={id:e.api_name,api_name:e.api_name,plugin_api_name:n};return(0,j.jsxs)(`button`,{onClick:()=>{o(e.script,r,c)},disabled:i===!0||s,className:`relative flex flex-col items-start rounded border border-black/8 bg-white px-3 py-1.5 text-left transition-colors hover:bg-black/5 disabled:opacity-50`,children:[(0,j.jsx)(`span`,{className:`font-mono text-[12px] text-neutral-800`,children:e.label}),e.when&&a&&(0,j.jsx)(ke,{when:e.when,whenState:a}),(0,j.jsx)(Ie,{visible:s})]})},$e=({items:e,pluginApiName:t,configArgs:n,whenState:r})=>{let{apiKey:i}=O(),{selectedObject:a,setSelectedObject:o,objectSearch:s,setObjectSearch:c,objectsQuery:l,objectOptions:u}=Le(ue(t));return i?(0,j.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,j.jsx)(`div`,{className:`w-64`,children:(0,j.jsx)(E,{label:`Custom Object`,value:s,onChange:e=>{c(e),a&&o(null)},onSelect:(e,t)=>{o({id:e,name:t}),c(t)},options:u,loading:l.isFetching,placeholder:`Search custom objects…`})}),(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:e.map(e=>(0,j.jsx)(Qe,{item:e,objectId:a?.id??``,pluginApiName:t,configArgs:n,disabled:a===null,...r?{whenState:r}:{}},e.api_name))},a?.id??`no-selection`)]}):(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Configure API credentials in Dev Tools to use object settings menu items.`})},et=`h-8 rounded border border-black/10 bg-white px-2.5 font-mono text-[12px] text-neutral-800 focus:border-neutral-400 focus:outline-none w-full`,tt=`block text-[11px] font-semibold uppercase tracking-widest text-neutral-600 mb-1`,nt=e=>e===`GET`?`bg-green-50 text-green-700`:e===`DELETE`?`bg-red-50 text-red-700`:e===`POST`?`bg-blue-50 text-blue-700`:`bg-amber-50 text-amber-700`;function rt(e,t){try{let n=localStorage.getItem(ce(e,t));return n?JSON.parse(n):[]}catch{return[]}}function it(e,t,n,r){let i=n.path===``||n.path.startsWith(`/`)?n.path:`/${n.path}`,a=`${n.method}:${i}`,o=r.filter(e=>`${e.method}:${e.path}`!==a),s=[{...n,path:i,id:String(Date.now())},...o].slice(0,10);try{localStorage.setItem(ce(e,t),JSON.stringify(s))}catch{}return s}var at=({response:e})=>{let{status:t,elapsedMs:n,contentType:r,body:i}=e,a=t===0?`bg-neutral-100 text-neutral-500`:t<300?`bg-green-50 text-green-700`:t<400?`bg-yellow-50 text-yellow-700`:`bg-red-50 text-red-700`,o=i;if(r.includes(`application/json`))try{o=JSON.stringify(JSON.parse(i),null,2)}catch{}return(0,j.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2`,children:[(0,j.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,j.jsx)(`span`,{className:`rounded px-2 py-0.5 text-[11px] font-semibold ${a}`,children:t===0?`Error`:t}),n>0&&(0,j.jsxs)(`span`,{className:`rounded bg-neutral-100 px-2 py-0.5 text-[11px] text-neutral-500`,children:[n,`ms`]})]}),(0,j.jsx)(`pre`,{className:`max-h-72 overflow-auto rounded border border-black/5 bg-neutral-50 p-3 font-mono text-[11px] leading-relaxed text-neutral-700 whitespace-pre-wrap break-all`,children:o||`(empty response)`})]})},ot=({headers:e,onChange:t})=>{let n=()=>{t([...e,{id:String(Date.now()),key:``,value:``}])},a=n=>{t(e.filter(e=>e.id!==n))},o=(n,r,i)=>{t(e.map(e=>e.id===n?{...e,[r]:i}:e))};return(0,j.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(`label`,{className:tt,children:`Custom Headers`}),e.length>0&&(0,j.jsx)(`div`,{className:`grid grid-cols-[1fr_1fr_auto] gap-1 mb-1`,children:e.map(e=>(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`input`,{className:et,placeholder:`Header name`,value:e.key,onChange:t=>{o(e.id,`key`,t.target.value)}},`${e.id}-key`),(0,j.jsx)(`input`,{className:et,placeholder:`Value`,value:e.value,onChange:t=>{o(e.id,`value`,t.target.value)}},`${e.id}-val`),(0,j.jsx)(`button`,{type:`button`,className:`px-1.5 text-neutral-400 hover:text-red-500`,onClick:()=>{a(e.id)},children:(0,j.jsx)(u,{icon:r,className:`text-[11px]`})},`${e.id}-rm`)]}))}),(0,j.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 text-[11px] text-neutral-400 hover:text-neutral-700 self-start`,onClick:n,children:[(0,j.jsx)(u,{icon:i,className:`text-[10px]`}),`Add header`]})]})},st=({service:e,pluginApiName:t})=>{let n=he(),{environment:r}=O(),i=ge[r],[o,c]=(0,A.useState)(`GET`),[l,d]=(0,A.useState)(``),[p,m]=(0,A.useState)([]),[h,g]=(0,A.useState)(``),[_,v]=(0,A.useState)(!1),[y,b]=(0,A.useState)(null),[S,C]=(0,A.useState)(()=>rt(t,e.service_name)),[w,T]=(0,A.useState)(!1),E=(0,A.useRef)(null);(0,A.useEffect)(()=>{if(!w)return;let e=e=>{E.current&&!E.current.contains(e.target)&&T(!1)};return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[w]);let ee=[`POST`,`PUT`,`PATCH`].includes(o),te=l===``||l.startsWith(`/`)?l:`/${l}`,D=`/external-integrations/proxy/${t}/${e.service_name}${te||`/`}`,ne=`${i}${D}`,re=e=>{c(e.method),d(e.path),m(e.headers),g(e.body),T(!1)},ie=()=>{localStorage.removeItem(ce(t,e.service_name)),C([]),T(!1)},ae=async()=>{if(!_){C(it(t,e.service_name,{method:o,path:l,headers:p,body:h},S)),v(!0),b(null);try{let e=Object.fromEntries(p.filter(e=>e.key.trim()).map(e=>[e.key.trim(),e.value])),t=performance.now(),r=await n(D,{method:o,headers:{...ee&&h.trim()?{"Content-Type":`application/json`}:{},...e},...ee&&h.trim()?{body:h}:{}}),i=Math.round(performance.now()-t),a=r.headers.get(`content-type`)??``,s=await r.text();b({status:r.status,elapsedMs:i,contentType:a,body:s})}catch(e){b({status:0,elapsedMs:0,contentType:``,body:String(e)})}finally{v(!1)}}};return(0,j.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,j.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,j.jsxs)(`div`,{className:`flex flex-col gap-1 shrink-0`,children:[(0,j.jsx)(`label`,{className:tt,children:`Method`}),(0,j.jsx)(`select`,{className:`h-8 w-28 rounded border border-black/10 bg-white px-2 font-mono text-[12px] text-neutral-800 focus:border-neutral-400 focus:outline-none`,value:o,onChange:e=>{c(e.target.value)},children:[`GET`,`POST`,`PUT`,`PATCH`,`DELETE`].map(e=>(0,j.jsx)(`option`,{value:e,children:e},e))})]}),(0,j.jsxs)(`div`,{className:`relative flex flex-col gap-1 flex-1 min-w-0`,ref:E,children:[(0,j.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,j.jsx)(`label`,{className:tt,children:`Path`}),S.length>0&&(0,j.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 text-[11px] text-neutral-400 hover:text-neutral-700`,onClick:()=>{T(e=>!e)},title:`Request history`,children:[(0,j.jsx)(u,{icon:f,className:`text-[10px]`}),(0,j.jsx)(`span`,{children:S.length})]})]}),(0,j.jsx)(`input`,{className:et,placeholder:`/path/to/endpoint`,value:l,onChange:e=>{d(e.target.value)},onKeyDown:e=>{e.key===`Enter`&&ae()}}),(0,j.jsx)(`span`,{className:`font-mono text-[10px] text-neutral-400 truncate`,children:ne}),(0,j.jsxs)(x,{anchorRef:E,open:w&&S.length>0,children:[S.map(e=>(0,j.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left hover:bg-neutral-50`,onClick:()=>{re(e)},children:[(0,j.jsx)(`span`,{className:`shrink-0 rounded px-1.5 py-0.5 font-mono text-[10px] font-semibold ${nt(e.method)}`,children:e.method}),(0,j.jsx)(`span`,{className:`flex-1 truncate font-mono text-[11px] text-neutral-700`,children:e.path||`/`}),e.headers.filter(e=>e.key.trim()).length>0&&(0,j.jsxs)(`span`,{className:`shrink-0 text-[10px] text-neutral-400`,children:[e.headers.filter(e=>e.key.trim()).length,`h`]}),e.body.trim()&&(0,j.jsx)(`span`,{className:`shrink-0 text-[10px] text-neutral-400`,children:`body`})]},e.id)),(0,j.jsx)(`div`,{className:`border-t border-black/5 px-3 py-1.5 text-right`,children:(0,j.jsx)(`button`,{type:`button`,className:`text-[11px] text-neutral-400 hover:text-neutral-700`,onClick:ie,children:`clear history`})})]})]}),(0,j.jsxs)(`div`,{className:`flex flex-col gap-1 shrink-0`,children:[(0,j.jsx)(`span`,{className:`invisible ${tt}`,children:`\xA0`}),(0,j.jsxs)(`button`,{type:`button`,disabled:_,className:`h-8 flex items-center gap-1.5 rounded bg-neutral-800 px-3 text-[12px] font-medium text-white hover:bg-neutral-700 disabled:opacity-50`,onClick:()=>{ae()},children:[_?(0,j.jsx)(u,{icon:a,className:`animate-spin text-[11px]`}):(0,j.jsx)(u,{icon:s,className:`text-[11px]`}),`Send`]})]})]}),(0,j.jsx)(ot,{headers:p,onChange:m}),ee&&(0,j.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(`label`,{className:tt,children:`Request Body`}),(0,j.jsx)(`textarea`,{className:`rounded border border-black/10 bg-white px-2.5 py-1.5 font-mono text-[12px] text-neutral-800 focus:border-neutral-400 focus:outline-none w-full resize-y`,rows:5,placeholder:`{"key": "value"}`,value:h,onChange:e=>{g(e.target.value)}})]}),y!==null&&(0,j.jsx)(at,{response:y})]})},ct=e=>e===`oauth`?`rounded bg-blue-50 px-1.5 py-0.5 text-[11px] font-mono text-blue-700`:e===`no_auth`?`rounded bg-neutral-100 px-1.5 py-0.5 text-[11px] font-mono text-neutral-500`:`rounded bg-amber-50 px-1.5 py-0.5 text-[11px] font-mono text-amber-700`,lt=({label:e,children:t})=>(0,j.jsxs)(`div`,{className:`flex items-baseline gap-2 text-[12px]`,children:[(0,j.jsx)(`span`,{className:`w-28 shrink-0 text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:e}),t]}),ut=({service:e})=>(0,j.jsxs)(`div`,{className:`flex flex-col gap-1.5 pb-4 mb-4 border-b border-black/5`,children:[(0,j.jsxs)(lt,{label:`Name`,children:[(0,j.jsx)(`span`,{className:`text-neutral-800 font-medium`,children:e.display_name}),(0,j.jsx)(`span`,{className:`rounded bg-neutral-100 px-1.5 py-0.5 font-mono text-[11px] text-neutral-500`,children:e.service_name})]}),(0,j.jsxs)(lt,{label:`Auth`,children:[(0,j.jsx)(`span`,{className:ct(e.auth_type),children:e.auth_type}),e.auth_level&&(0,j.jsx)(`span`,{className:`text-[11px] text-neutral-400`,children:e.auth_level})]}),(0,j.jsx)(lt,{label:`Base URL`,children:(0,j.jsx)(`span`,{className:`font-mono text-[11px] text-neutral-600 break-all`,children:e.base_service_url||(0,j.jsx)(`em`,{className:`text-neutral-400`,children:`none`})})}),e.auth_credentials?.scopes&&(0,j.jsx)(lt,{label:`Scopes`,children:(0,j.jsx)(`span`,{className:`font-mono text-[11px] text-neutral-600 break-all leading-relaxed`,children:e.auth_credentials.scopes})}),e.auth_credentials?.authorize_url&&(0,j.jsx)(lt,{label:`Auth URL`,children:(0,j.jsx)(`span`,{className:`font-mono text-[11px] text-neutral-600 break-all`,children:e.auth_credentials.authorize_url})}),e.required_entitlement?(0,j.jsx)(lt,{label:`Entitlement`,children:(0,j.jsx)(`span`,{className:`font-mono text-[11px] text-neutral-500`,children:e.required_entitlement})}):null]}),dt=({services:e,pluginApiName:t,isInstalled:n})=>{let[r,i]=(0,A.useState)(0),a=e[r]??e[0];return a?(0,j.jsxs)(k,{className:`!p-0 overflow-hidden`,children:[(0,j.jsxs)(`div`,{className:`border-b border-black/10 px-5 py-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Services`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Make proxied requests to external services through Kizen's integration layer.`})]}),(0,j.jsx)(`div`,{className:`flex border-b border-black/10 overflow-x-auto`,children:e.map((e,t)=>(0,j.jsx)(`button`,{type:`button`,onClick:()=>{i(t)},className:`shrink-0 px-4 py-2.5 text-[12px] font-medium border-b-2 transition-colors ${t===r?`border-neutral-800 text-neutral-900`:`border-transparent text-neutral-400 hover:text-neutral-700`}`,children:e.display_name},e.service_name))}),(0,j.jsxs)(`div`,{className:`p-5 flex flex-col gap-4`,children:[(0,j.jsx)(ut,{service:a}),n?(0,j.jsx)(st,{service:a,pluginApiName:t},a.service_name):(0,j.jsxs)(`div`,{className:`flex items-start gap-2 rounded border border-amber-200/60 bg-amber-50 px-3 py-2.5 text-[12px] text-amber-800`,children:[(0,j.jsx)(u,{icon:d,className:`mt-0.5 text-[11px]`}),(0,j.jsx)(`span`,{children:`Please install the plugin in order to test.`})]})]})]}):null},ft,M,pt,mt,ht,gt,_t,vt,yt,bt={},xt=[],St=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Ct(e,t){for(var n in t)e[n]=t[n];return e}function wt(e){var t=e.parentNode;t&&t.removeChild(e)}function N(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?ft.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return Tt(e,o,r,i,null)}function Tt(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:i??++pt};return i==null&&M.vnode!=null&&M.vnode(a),a}function P(){return{current:null}}function F(e){return e.children}function Et(e,t,n,r,i){for(var a in n)a===`children`||a===`key`||a in t||Ot(e,a,null,n[a],r);for(a in t)i&&typeof t[a]!=`function`||a===`children`||a===`key`||a===`value`||a===`checked`||n[a]===t[a]||Ot(e,a,t[a],n[a],r)}function Dt(e,t,n){t[0]===`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||St.test(t)?n:n+`px`}function Ot(e,t,n,r,i){var a;n:if(t===`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Dt(e.style,t,``);if(n)for(t in n)r&&n[t]===r[t]||Dt(e.style,t,n[t])}else if(t[0]===`o`&&t[1]===`n`)a=t!==(t=t.replace(/Capture$/,``)),t=t.toLowerCase()in e?t.toLowerCase().slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r||e.addEventListener(t,a?At:kt,a):e.removeEventListener(t,a?At:kt,a);else if(t!==`dangerouslySetInnerHTML`){if(i)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!==`width`&&t!==`height`&&t!==`href`&&t!==`list`&&t!==`form`&&t!==`tabIndex`&&t!==`download`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t.indexOf(`-`)==-1?e.removeAttribute(t):e.setAttribute(t,n))}}function kt(e){ht=!0;try{return this.l[e.type+!1](M.event?M.event(e):e)}finally{ht=!1}}function At(e){ht=!0;try{return this.l[e.type+!0](M.event?M.event(e):e)}finally{ht=!1}}function I(e,t){this.props=e,this.context=t}function jt(e,t){if(t==null)return e.__?jt(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?jt(e):null}function Mt(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=e.__c.base=n.__e;break}return Mt(e)}}function Nt(e){ht?setTimeout(e):vt(e)}function Pt(e){(!e.__d&&(e.__d=!0)&&gt.push(e)&&!Ft.__r++||_t!==M.debounceRendering)&&((_t=M.debounceRendering)||Nt)(Ft)}function Ft(){var e,t,n,r,i,a,o,s;for(gt.sort(function(e,t){return e.__v.__b-t.__v.__b});e=gt.shift();)e.__d&&(t=gt.length,r=void 0,i=void 0,o=(a=(n=e).__v).__e,(s=n.__P)&&(r=[],(i=Ct({},a)).__v=a.__v+1,Vt(s,a,i,n.__n,s.ownerSVGElement!==void 0,a.__h==null?null:[o],r,o??jt(a),a.__h),Ht(r,a),a.__e!=o&&Mt(a)),gt.length>t&&gt.sort(function(e,t){return e.__v.__b-t.__v.__b}));Ft.__r=0}function It(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_=r&&r.__k||xt,v=_.length;for(n.__k=[],u=0;u<t.length;u++)if((p=n.__k[u]=(p=t[u])==null||typeof p==`boolean`?null:typeof p==`string`||typeof p==`number`||typeof p==`bigint`?Tt(null,p,null,null,p):Array.isArray(p)?Tt(F,{children:p},null,null,null):p.__b>0?Tt(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(f=_[u])===null||f&&p.key==f.key&&p.type===f.type)_[u]=void 0;else for(d=0;d<v;d++){if((f=_[d])&&p.key==f.key&&p.type===f.type){_[d]=void 0;break}f=null}Vt(e,p,f||=bt,i,a,o,s,c,l),m=p.__e,(d=p.ref)&&f.ref!=d&&(g||=[],f.ref&&g.push(f.ref,null,p),g.push(d,p.__c||m,p)),m==null?c&&f.__e==c&&c.parentNode!=e&&(c=jt(f)):(h??=m,typeof p.type==`function`&&p.__k===f.__k?p.__d=c=Lt(p,c,e):c=zt(e,p,f,_,m,c),typeof n.type==`function`&&(n.__d=c))}for(n.__e=h,u=v;u--;)_[u]!=null&&(typeof n.type==`function`&&_[u].__e!=null&&_[u].__e==n.__d&&(n.__d=Bt(r).nextSibling),Gt(_[u],_[u]));if(g)for(u=0;u<g.length;u++)Wt(g[u],g[++u],g[++u])}function Lt(e,t,n){for(var r,i=e.__k,a=0;i&&a<i.length;a++)(r=i[a])&&(r.__=e,t=typeof r.type==`function`?Lt(r,t,n):zt(n,r,r,i,r.__e,t));return t}function Rt(e,t){return t||=[],e==null||typeof e==`boolean`||(Array.isArray(e)?e.some(function(e){Rt(e,t)}):t.push(e)),t}function zt(e,t,n,r,i,a){var o,s,c;if(t.__d!==void 0)o=t.__d,t.__d=void 0;else if(n==null||i!=a||i.parentNode==null)n:if(a==null||a.parentNode!==e)e.appendChild(i),o=null;else{for(s=a,c=0;(s=s.nextSibling)&&c<r.length;c+=1)if(s==i)break n;e.insertBefore(i,a),o=a}return o===void 0?i.nextSibling:o}function Bt(e){var t,n,r;if(e.type==null||typeof e.type==`string`)return e.__e;if(e.__k){for(t=e.__k.length-1;t>=0;t--)if((n=e.__k[t])&&(r=Bt(n)))return r}return null}function Vt(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w=t.type;if(t.constructor!==void 0)return null;n.__h!=null&&(c=n.__h,s=t.__e=n.__e,t.__h=null,a=[s]),(l=M.__b)&&l(t);try{n:if(typeof w==`function`){if(g=t.props,_=(l=w.contextType)&&r[l.__c],v=l?_?_.props.value:l.__:r,n.__c?h=(u=t.__c=n.__c).__=u.__E:(`prototype`in w&&w.prototype.render?t.__c=u=new w(g,v):(t.__c=u=new I(g,v),u.constructor=w,u.render=Kt),_&&_.sub(u),u.props=g,u.state||={},u.context=v,u.__n=r,d=u.__d=!0,u.__h=[],u._sb=[]),u.__s??=u.state,w.getDerivedStateFromProps!=null&&(u.__s==u.state&&(u.__s=Ct({},u.__s)),Ct(u.__s,w.getDerivedStateFromProps(g,u.__s))),f=u.props,p=u.state,u.__v=t,d)w.getDerivedStateFromProps==null&&u.componentWillMount!=null&&u.componentWillMount(),u.componentDidMount!=null&&u.__h.push(u.componentDidMount);else{if(w.getDerivedStateFromProps==null&&g!==f&&u.componentWillReceiveProps!=null&&u.componentWillReceiveProps(g,v),!u.__e&&u.shouldComponentUpdate!=null&&!1===u.shouldComponentUpdate(g,u.__s,v)||t.__v===n.__v){for(t.__v!==n.__v&&(u.props=g,u.state=u.__s,u.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.forEach(function(e){e&&(e.__=t)}),y=0;y<u._sb.length;y++)u.__h.push(u._sb[y]);u._sb=[],u.__h.length&&o.push(u);break n}u.componentWillUpdate!=null&&u.componentWillUpdate(g,u.__s,v),u.componentDidUpdate!=null&&u.__h.push(function(){u.componentDidUpdate(f,p,m)})}if(u.context=v,u.props=g,u.__P=e,b=M.__r,x=0,`prototype`in w&&w.prototype.render){for(u.state=u.__s,u.__d=!1,b&&b(t),l=u.render(u.props,u.state,u.context),S=0;S<u._sb.length;S++)u.__h.push(u._sb[S]);u._sb=[]}else do u.__d=!1,b&&b(t),l=u.render(u.props,u.state,u.context),u.state=u.__s;while(u.__d&&++x<25);u.state=u.__s,u.getChildContext!=null&&(r=Ct(Ct({},r),u.getChildContext())),d||u.getSnapshotBeforeUpdate==null||(m=u.getSnapshotBeforeUpdate(f,p)),C=l!=null&&l.type===F&&l.key==null?l.props.children:l,It(e,Array.isArray(C)?C:[C],t,n,r,i,a,o,s,c),u.base=t.__e,t.__h=null,u.__h.length&&o.push(u),h&&(u.__E=u.__=null),u.__e=!1}else a==null&&t.__v===n.__v?(t.__k=n.__k,t.__e=n.__e):t.__e=Ut(n.__e,t,n,r,i,a,o,c);(l=M.diffed)&&l(t)}catch(e){t.__v=null,(c||a!=null)&&(t.__e=s,t.__h=!!c,a[a.indexOf(s)]=null),M.__e(e,t,n)}}function Ht(e,t){M.__c&&M.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){M.__e(e,t.__v)}})}function Ut(e,t,n,r,i,a,o,s){var c,l,u,d=n.props,f=t.props,p=t.type,m=0;if(p===`svg`&&(i=!0),a!=null){for(;m<a.length;m++)if((c=a[m])&&`setAttribute`in c==!!p&&(p?c.localName===p:c.nodeType===3)){e=c,a[m]=null;break}}if(e==null){if(p===null)return document.createTextNode(f);e=i?document.createElementNS(`http://www.w3.org/2000/svg`,p):document.createElement(p,f.is&&f),a=null,s=!1}if(p===null)d===f||s&&e.data===f||(e.data=f);else{if(a&&=ft.call(e.childNodes),l=(d=n.props||bt).dangerouslySetInnerHTML,u=f.dangerouslySetInnerHTML,!s){if(a!=null)for(d={},m=0;m<e.attributes.length;m++)d[e.attributes[m].name]=e.attributes[m].value;(u||l)&&(u&&(l&&u.__html==l.__html||u.__html===e.innerHTML)||(e.innerHTML=u&&u.__html||``))}if(Et(e,f,d,i,s),u)t.__k=[];else if(m=t.props.children,It(e,Array.isArray(m)?m:[m],t,n,r,i&&p!==`foreignObject`,a,o,a?a[0]:n.__k&&jt(n,0),s),a!=null)for(m=a.length;m--;)a[m]!=null&&wt(a[m]);s||(`value`in f&&(m=f.value)!==void 0&&(m!==e.value||p===`progress`&&!m||p===`option`&&m!==d.value)&&Ot(e,`value`,m,d.value,!1),`checked`in f&&(m=f.checked)!==void 0&&m!==e.checked&&Ot(e,`checked`,m,d.checked,!1))}return e}function Wt(e,t,n){try{typeof e==`function`?e(t):e.current=t}catch(e){M.__e(e,n)}}function Gt(e,t,n){var r,i;if(M.unmount&&M.unmount(e),(r=e.ref)&&(r.current&&r.current!==e.__e||Wt(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){M.__e(e,t)}r.base=r.__P=null,e.__c=void 0}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Gt(r[i],t,n||typeof e.type!=`function`);n||e.__e==null||wt(e.__e),e.__=e.__e=e.__d=void 0}function Kt(e,t,n){return this.constructor(e,n)}function qt(e,t,n){var r,i,a;M.__&&M.__(e,t),i=(r=typeof n==`function`)?null:n&&n.__k||t.__k,a=[],Vt(t,e=(!r&&n||t).__k=N(F,null,[e]),i||bt,bt,t.ownerSVGElement!==void 0,!r&&n?[n]:i?null:t.firstChild?ft.call(t.childNodes):null,a,!r&&n?n:i?i.__e:t.firstChild,r),Ht(a,e)}function Jt(e,t){var n={__c:t=`__cC`+ yt++,__:e,Consumer:function(e,t){return e.children(t)},Provider:function(e){var n,r;return this.getChildContext||(n=[],(r={})[t]=this,this.getChildContext=function(){return r},this.shouldComponentUpdate=function(e){this.props.value!==e.value&&n.some(function(e){e.__e=!0,Pt(e)})},this.sub=function(e){n.push(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n.splice(n.indexOf(e),1),t&&t.call(e)}}),e.children}};return n.Provider.__=n.Consumer.contextType=n}ft=xt.slice,M={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},pt=0,mt=function(e){return e!=null&&e.constructor===void 0},ht=!1,I.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Ct({},this.state);typeof e==`function`&&(e=e(Ct({},n),this.props)),e&&Ct(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Pt(this))},I.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Pt(this))},I.prototype.render=F,gt=[],vt=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Ft.__r=0,yt=0;var L,Yt,Xt,Zt=[],Qt=[],$t=M.__b,en=M.__r,tn=M.diffed,nn=M.__c,rn=M.unmount;function an(){for(var e;e=Zt.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(cn),e.__H.__h.forEach(ln),e.__H.__h=[]}catch(t){e.__H.__h=[],M.__e(t,e.__v)}}M.__b=function(e){L=null,$t&&$t(e)},M.__r=function(e){en&&en(e);var t=(L=e.__c).__H;t&&(Yt===L?(t.__h=[],L.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.__V=Qt,e.__N=e.i=void 0})):(t.__h.forEach(cn),t.__h.forEach(ln),t.__h=[])),Yt=L},M.diffed=function(e){tn&&tn(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Zt.push(t)!==1&&Xt===M.requestAnimationFrame||((Xt=M.requestAnimationFrame)||sn)(an)),t.__H.__.forEach(function(e){e.i&&(e.__H=e.i),e.__V!==Qt&&(e.__=e.__V),e.i=void 0,e.__V=Qt})),Yt=L=null},M.__c=function(e,t){t.some(function(e){try{e.__h.forEach(cn),e.__h=e.__h.filter(function(e){return!e.__||ln(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],M.__e(n,e.__v)}}),nn&&nn(e,t)},M.unmount=function(e){rn&&rn(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{cn(e)}catch(e){t=e}}),n.__H=void 0,t&&M.__e(t,n.__v))};var on=typeof requestAnimationFrame==`function`;function sn(e){var t,n=function(){clearTimeout(r),on&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);on&&(t=requestAnimationFrame(n))}function cn(e){var t=L,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),L=t}function ln(e){var t=L;e.__c=e.__(),L=t}function un(e,t){for(var n in t)e[n]=t[n];return e}function dn(e,t){for(var n in e)if(n!==`__source`&&!(n in t))return!0;for(var r in t)if(r!==`__source`&&e[r]!==t[r])return!0;return!1}function fn(e){this.props=e}(fn.prototype=new I).isPureReactComponent=!0,fn.prototype.shouldComponentUpdate=function(e,t){return dn(this.props,e)||dn(this.state,t)};var pn=M.__b;M.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),pn&&pn(e)},typeof Symbol<`u`&&Symbol.for;var mn=M.__e;M.__e=function(e,t,n,r){if(e.then){for(var i,a=t;a=a.__;)if((i=a.__c)&&i.__c)return t.__e??(t.__e=n.__e,t.__k=n.__k),i.__c(e,t)}mn(e,t,n,r)};var hn=M.unmount;function gn(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(e){typeof e.__c==`function`&&e.__c()}),e.__c.__H=null),(e=un({},e)).__c!=null&&(e.__c.__P===n&&(e.__c.__P=t),e.__c=null),e.__k=e.__k&&e.__k.map(function(e){return gn(e,t,n)})),e}function _n(e,t,n){return e&&(e.__v=null,e.__k=e.__k&&e.__k.map(function(e){return _n(e,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.insertBefore(e.__e,e.__d),e.__c.__e=!0,e.__c.__P=n)),e}function vn(){this.__u=0,this.t=null,this.__b=null}function yn(e){var t=e.__.__c;return t&&t.__a&&t.__a(e)}function bn(){this.u=null,this.o=null}M.unmount=function(e){var t=e.__c;t&&t.__R&&t.__R(),t&&!0===e.__h&&(e.type=null),hn&&hn(e)},(vn.prototype=new I).__c=function(e,t){var n=t.__c,r=this;r.t??=[],r.t.push(n);var i=yn(r.__v),a=!1,o=function(){a||(a=!0,n.__R=null,i?i(s):s())};n.__R=o;var s=function(){if(!--r.__u){if(r.state.__a){var e=r.state.__a;r.__v.__k[0]=_n(e,e.__c.__P,e.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}},c=!0===t.__h;r.__u++||c||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(o,o)},vn.prototype.componentWillUnmount=function(){this.t=[]},vn.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement(`div`),r=this.__v.__k[0].__c;this.__v.__k[0]=gn(this.__b,n,r.__O=r.__P)}this.__b=null}var i=t.__a&&N(F,null,e.fallback);return i&&(i.__h=null),[N(F,null,t.__a?null:e.children),i]};var xn=function(e,t,n){if(++n[1]===n[0]&&e.o.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!==`t`||!e.o.size))for(n=e.u;n;){for(;n.length>3;)n.pop()();if(n[1]<n[0])break;e.u=n=n[2]}};function Sn(e){return this.getChildContext=function(){return e.context},e.children}function Cn(e){var t=this,n=e.i;t.componentWillUnmount=function(){qt(null,t.l),t.l=null,t.i=null},t.i&&t.i!==n&&t.componentWillUnmount(),e.__v?(t.l||=(t.i=n,{nodeType:1,parentNode:n,childNodes:[],appendChild:function(e){this.childNodes.push(e),t.i.appendChild(e)},insertBefore:function(e,n){this.childNodes.push(e),t.i.appendChild(e)},removeChild:function(e){this.childNodes.splice(this.childNodes.indexOf(e)>>>1,1),t.i.removeChild(e)}}),qt(N(Sn,{context:t.context},e.__v),t.l)):t.l&&t.componentWillUnmount()}function wn(e,t){var n=N(Cn,{__v:e,i:t});return n.containerInfo=t,n}(bn.prototype=new I).__a=function(e){var t=this,n=yn(t.__v),r=t.o.get(e);return r[0]++,function(i){var a=function(){t.props.revealOrder?(r.push(i),xn(t,e,r)):i()};n?n(a):a()}},bn.prototype.render=function(e){this.u=null,this.o=new Map;var t=Rt(e.children);e.revealOrder&&e.revealOrder[0]===`b`&&t.reverse();for(var n=t.length;n--;)this.o.set(t[n],this.u=[1,0,this.u]);return e.children},bn.prototype.componentDidUpdate=bn.prototype.componentDidMount=function(){var e=this;this.o.forEach(function(t,n){xn(e,n,t)})};var Tn=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.element`)||60103,En=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,Dn=typeof document<`u`,On=function(e){return(typeof Symbol<`u`&&typeof Symbol()==`symbol`?/fil|che|rad/i:/fil|che|ra/i).test(e)};I.prototype.isReactComponent={},[`componentWillMount`,`componentWillReceiveProps`,`componentWillUpdate`].forEach(function(e){Object.defineProperty(I.prototype,e,{configurable:!0,get:function(){return this[`UNSAFE_`+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var kn=M.event;function An(){}function jn(){return this.cancelBubble}function Mn(){return this.defaultPrevented}M.event=function(e){return kn&&(e=kn(e)),e.persist=An,e.isPropagationStopped=jn,e.isDefaultPrevented=Mn,e.nativeEvent=e};var Nn={configurable:!0,get:function(){return this.class}},Pn=M.vnode;M.vnode=function(e){var t=e.type,n=e.props,r=n;if(typeof t==`string`){var i=t.indexOf(`-`)===-1;for(var a in r={},n){var o=n[a];Dn&&a===`children`&&t===`noscript`||a===`value`&&`defaultValue`in n&&o==null||(a===`defaultValue`&&`value`in n&&n.value==null?a=`value`:a===`download`&&!0===o?o=``:/ondoubleclick/i.test(a)?a=`ondblclick`:/^onchange(textarea|input)/i.test(a+t)&&!On(n.type)?a=`oninput`:/^onfocus$/i.test(a)?a=`onfocusin`:/^onblur$/i.test(a)?a=`onfocusout`:/^on(Ani|Tra|Tou|BeforeInp|Compo)/.test(a)?a=a.toLowerCase():i&&En.test(a)?a=a.replace(/[A-Z0-9]/g,`-$&`).toLowerCase():o===null&&(o=void 0),/^oninput$/i.test(a)&&(a=a.toLowerCase(),r[a]&&(a=`oninputCapture`)),r[a]=o)}t==`select`&&r.multiple&&Array.isArray(r.value)&&(r.value=Rt(n.children).forEach(function(e){e.props.selected=r.value.indexOf(e.props.value)!=-1})),t==`select`&&r.defaultValue!=null&&(r.value=Rt(n.children).forEach(function(e){e.props.selected=r.multiple?r.defaultValue.indexOf(e.props.value)!=-1:r.defaultValue==e.props.value})),e.props=r,n.class!=n.className&&(Nn.enumerable=`className`in n,n.className!=null&&(r.class=n.className),Object.defineProperty(r,`className`,Nn))}e.$$typeof=Tn,Pn&&Pn(e)};var Fn=M.__r;M.__r=function(e){Fn&&Fn(e),e.__c};var In=[],Ln=new Map;function Rn(e){In.push(e),Ln.forEach(t=>{Hn(t,e)})}function zn(e){e.isConnected&&e.getRootNode&&Bn(e.getRootNode())}function Bn(e){let t=Ln.get(e);if(!t||!t.isConnected){if(t=e.querySelector(`style[data-fullcalendar]`),!t){t=document.createElement(`style`),t.setAttribute(`data-fullcalendar`,``);let n=Wn();n&&(t.nonce=n);let r=e===document?document.head:e,i=e===document?r.querySelector(`script,link[rel=stylesheet],link[as=style],style`):r.firstChild;r.insertBefore(t,i)}Ln.set(e,t),Vn(t)}}function Vn(e){for(let t of In)Hn(e,t)}function Hn(e,t){let{sheet:n}=e,r=n.cssRules.length;t.split(`}`).forEach((e,t)=>{e=e.trim(),e&&n.insertRule(e+`}`,r+t)})}var Un;function Wn(){return Un===void 0&&(Un=Gn()),Un}function Gn(){let e=document.querySelector(`meta[name="csp-nonce"]`);if(e&&e.hasAttribute(`content`))return e.getAttribute(`content`);let t=document.querySelector(`script[nonce]`);return t&&t.nonce||``}typeof document<`u`&&Bn(document),Rn(`:root{--fc-small-font-size:.85em;--fc-page-bg-color:#fff;--fc-neutral-bg-color:hsla(0,0%,82%,.3);--fc-neutral-text-color:grey;--fc-border-color:#ddd;--fc-button-text-color:#fff;--fc-button-bg-color:#2c3e50;--fc-button-border-color:#2c3e50;--fc-button-hover-bg-color:#1e2b37;--fc-button-hover-border-color:#1a252f;--fc-button-active-bg-color:#1a252f;--fc-button-active-border-color:#151e27;--fc-event-bg-color:#3788d8;--fc-event-border-color:#3788d8;--fc-event-text-color:#fff;--fc-event-selected-overlay-color:rgba(0,0,0,.25);--fc-more-link-bg-color:#d0d0d0;--fc-more-link-text-color:inherit;--fc-event-resizer-thickness:8px;--fc-event-resizer-dot-total-width:8px;--fc-event-resizer-dot-border-width:1px;--fc-non-business-color:hsla(0,0%,84%,.3);--fc-bg-event-color:#8fdf82;--fc-bg-event-opacity:0.3;--fc-highlight-color:rgba(188,232,241,.3);--fc-today-bg-color:rgba(255,220,40,.15);--fc-now-indicator-color:red}.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc{display:flex;flex-direction:column;font-size:1em}.fc,.fc *,.fc :after,.fc :before{box-sizing:border-box}.fc table{border-collapse:collapse;border-spacing:0;font-size:1em}.fc th{text-align:center}.fc td,.fc th{padding:0;vertical-align:top}.fc a[data-navlink]{cursor:pointer}.fc a[data-navlink]:hover{text-decoration:underline}.fc-direction-ltr{direction:ltr;text-align:left}.fc-direction-rtl{direction:rtl;text-align:right}.fc-theme-standard td,.fc-theme-standard th{border:1px solid var(--fc-border-color)}.fc-liquid-hack td,.fc-liquid-hack th{position:relative}@font-face{font-family:fcicons;font-style:normal;font-weight:400;src:url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=") format("truetype")}.fc-icon{speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:fcicons!important;font-style:normal;font-variant:normal;font-weight:400;height:1em;line-height:1;text-align:center;text-transform:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:1em}.fc-icon-chevron-left:before{content:"\\e900"}.fc-icon-chevron-right:before{content:"\\e901"}.fc-icon-chevrons-left:before{content:"\\e902"}.fc-icon-chevrons-right:before{content:"\\e903"}.fc-icon-minus-square:before{content:"\\e904"}.fc-icon-plus-square:before{content:"\\e905"}.fc-icon-x:before{content:"\\e906"}.fc .fc-button{border-radius:0;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible;text-transform:none}.fc .fc-button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.fc .fc-button{-webkit-appearance:button}.fc .fc-button:not(:disabled){cursor:pointer}.fc .fc-button{background-color:transparent;border:1px solid transparent;border-radius:.25em;display:inline-block;font-size:1em;font-weight:400;line-height:1.5;padding:.4em .65em;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle}.fc .fc-button:hover{text-decoration:none}.fc .fc-button:focus{box-shadow:0 0 0 .2rem rgba(44,62,80,.25);outline:0}.fc .fc-button:disabled{opacity:.65}.fc .fc-button-primary{background-color:var(--fc-button-bg-color);border-color:var(--fc-button-border-color);color:var(--fc-button-text-color)}.fc .fc-button-primary:hover{background-color:var(--fc-button-hover-bg-color);border-color:var(--fc-button-hover-border-color);color:var(--fc-button-text-color)}.fc .fc-button-primary:disabled{background-color:var(--fc-button-bg-color);border-color:var(--fc-button-border-color);color:var(--fc-button-text-color)}.fc .fc-button-primary:focus{box-shadow:0 0 0 .2rem rgba(76,91,106,.5)}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background-color:var(--fc-button-active-bg-color);border-color:var(--fc-button-active-border-color);color:var(--fc-button-text-color)}.fc .fc-button-primary:not(:disabled).fc-button-active:focus,.fc .fc-button-primary:not(:disabled):active:focus{box-shadow:0 0 0 .2rem rgba(76,91,106,.5)}.fc .fc-button .fc-icon{font-size:1.5em;vertical-align:middle}.fc .fc-button-group{display:inline-flex;position:relative;vertical-align:middle}.fc .fc-button-group>.fc-button{flex:1 1 auto;position:relative}.fc .fc-button-group>.fc-button.fc-button-active,.fc .fc-button-group>.fc-button:active,.fc .fc-button-group>.fc-button:focus,.fc .fc-button-group>.fc-button:hover{z-index:1}.fc-direction-ltr .fc-button-group>.fc-button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.fc-direction-ltr .fc-button-group>.fc-button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.fc-direction-rtl .fc-button-group>.fc-button:not(:first-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.fc-direction-rtl .fc-button-group>.fc-button:not(:last-child){border-bottom-left-radius:0;border-top-left-radius:0}.fc .fc-toolbar{align-items:center;display:flex;justify-content:space-between}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.5em}.fc .fc-toolbar.fc-footer-toolbar{margin-top:1.5em}.fc .fc-toolbar-title{font-size:1.75em;margin:0}.fc-direction-ltr .fc-toolbar>*>:not(:first-child){margin-left:.75em}.fc-direction-rtl .fc-toolbar>*>:not(:first-child){margin-right:.75em}.fc-direction-rtl .fc-toolbar-ltr{flex-direction:row-reverse}.fc .fc-scroller{-webkit-overflow-scrolling:touch;position:relative}.fc .fc-scroller-liquid{height:100%}.fc .fc-scroller-liquid-absolute{bottom:0;left:0;position:absolute;right:0;top:0}.fc .fc-scroller-harness{direction:ltr;overflow:hidden;position:relative}.fc .fc-scroller-harness-liquid{height:100%}.fc-direction-rtl .fc-scroller-harness>.fc-scroller{direction:rtl}.fc-theme-standard .fc-scrollgrid{border:1px solid var(--fc-border-color)}.fc .fc-scrollgrid,.fc .fc-scrollgrid table{table-layout:fixed;width:100%}.fc .fc-scrollgrid table{border-left-style:hidden;border-right-style:hidden;border-top-style:hidden}.fc .fc-scrollgrid{border-bottom-width:0;border-collapse:separate;border-right-width:0}.fc .fc-scrollgrid-liquid{height:100%}.fc .fc-scrollgrid-section,.fc .fc-scrollgrid-section table,.fc .fc-scrollgrid-section>td{height:1px}.fc .fc-scrollgrid-section-liquid>td{height:100%}.fc .fc-scrollgrid-section>*{border-left-width:0;border-top-width:0}.fc .fc-scrollgrid-section-footer>*,.fc .fc-scrollgrid-section-header>*{border-bottom-width:0}.fc .fc-scrollgrid-section-body table,.fc .fc-scrollgrid-section-footer table{border-bottom-style:hidden}.fc .fc-scrollgrid-section-sticky>*{background:var(--fc-page-bg-color);position:sticky;z-index:3}.fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky>*{top:0}.fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky>*{bottom:0}.fc .fc-scrollgrid-sticky-shim{height:1px;margin-bottom:-1px}.fc-sticky{position:sticky}.fc .fc-view-harness{flex-grow:1;position:relative}.fc .fc-view-harness-active>.fc-view{bottom:0;left:0;position:absolute;right:0;top:0}.fc .fc-col-header-cell-cushion{display:inline-block;padding:2px 4px}.fc .fc-bg-event,.fc .fc-highlight,.fc .fc-non-business{bottom:0;left:0;position:absolute;right:0;top:0}.fc .fc-non-business{background:var(--fc-non-business-color)}.fc .fc-bg-event{background:var(--fc-bg-event-color);opacity:var(--fc-bg-event-opacity)}.fc .fc-bg-event .fc-event-title{font-size:var(--fc-small-font-size);font-style:italic;margin:.5em}.fc .fc-highlight{background:var(--fc-highlight-color)}.fc .fc-cell-shaded,.fc .fc-day-disabled{background:var(--fc-neutral-bg-color)}a.fc-event,a.fc-event:hover{text-decoration:none}.fc-event.fc-event-draggable,.fc-event[href]{cursor:pointer}.fc-event .fc-event-main{position:relative;z-index:2}.fc-event-dragging:not(.fc-event-selected){opacity:.75}.fc-event-dragging.fc-event-selected{box-shadow:0 2px 7px rgba(0,0,0,.3)}.fc-event .fc-event-resizer{display:none;position:absolute;z-index:4}.fc-event-selected .fc-event-resizer,.fc-event:hover .fc-event-resizer{display:block}.fc-event-selected .fc-event-resizer{background:var(--fc-page-bg-color);border-color:inherit;border-radius:calc(var(--fc-event-resizer-dot-total-width)/2);border-style:solid;border-width:var(--fc-event-resizer-dot-border-width);height:var(--fc-event-resizer-dot-total-width);width:var(--fc-event-resizer-dot-total-width)}.fc-event-selected .fc-event-resizer:before{bottom:-20px;content:"";left:-20px;position:absolute;right:-20px;top:-20px}.fc-event-selected,.fc-event:focus{box-shadow:0 2px 5px rgba(0,0,0,.2)}.fc-event-selected:before,.fc-event:focus:before{bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:3}.fc-event-selected:after,.fc-event:focus:after{background:var(--fc-event-selected-overlay-color);bottom:-1px;content:"";left:-1px;position:absolute;right:-1px;top:-1px;z-index:1}.fc-h-event{background-color:var(--fc-event-bg-color);border:1px solid var(--fc-event-border-color);display:block}.fc-h-event .fc-event-main{color:var(--fc-event-text-color)}.fc-h-event .fc-event-main-frame{display:flex}.fc-h-event .fc-event-time{max-width:100%;overflow:hidden}.fc-h-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-width:0}.fc-h-event .fc-event-title{display:inline-block;left:0;max-width:100%;overflow:hidden;right:0;vertical-align:top}.fc-h-event.fc-event-selected:before{bottom:-10px;top:-10px}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end){border-bottom-left-radius:0;border-left-width:0;border-top-left-radius:0}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start){border-bottom-right-radius:0;border-right-width:0;border-top-right-radius:0}.fc-h-event:not(.fc-event-selected) .fc-event-resizer{bottom:0;top:0;width:var(--fc-event-resizer-thickness)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end{cursor:w-resize;left:calc(var(--fc-event-resizer-thickness)*-.5)}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start{cursor:e-resize;right:calc(var(--fc-event-resizer-thickness)*-.5)}.fc-h-event.fc-event-selected .fc-event-resizer{margin-top:calc(var(--fc-event-resizer-dot-total-width)*-.5);top:50%}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-end{left:calc(var(--fc-event-resizer-dot-total-width)*-.5)}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start{right:calc(var(--fc-event-resizer-dot-total-width)*-.5)}.fc .fc-popover{box-shadow:0 2px 6px rgba(0,0,0,.15);position:absolute;z-index:9999}.fc .fc-popover-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding:3px 4px}.fc .fc-popover-title{margin:0 2px}.fc .fc-popover-close{cursor:pointer;font-size:1.1em;opacity:.65}.fc-theme-standard .fc-popover{background:var(--fc-page-bg-color);border:1px solid var(--fc-border-color)}.fc-theme-standard .fc-popover-header{background:var(--fc-neutral-bg-color)}`);var Kn=class{constructor(e){this.drainedOption=e,this.isRunning=!1,this.isDirty=!1,this.pauseDepths={},this.timeoutId=0}request(e){this.isDirty=!0,this.isPaused()||(this.clearTimeout(),e==null?this.tryDrain():this.timeoutId=setTimeout(this.tryDrain.bind(this),e))}pause(e=``){let{pauseDepths:t}=this;t[e]=(t[e]||0)+1,this.clearTimeout()}resume(e=``,t){let{pauseDepths:n}=this;e in n&&(t?delete n[e]:(--n[e],n[e]<=0&&delete n[e]),this.tryDrain())}isPaused(){return Object.keys(this.pauseDepths).length}tryDrain(){if(!this.isRunning&&!this.isPaused()){for(this.isRunning=!0;this.isDirty;)this.isDirty=!1,this.drained();this.isRunning=!1}}clear(){this.clearTimeout(),this.isDirty=!1,this.pauseDepths={}}clearTimeout(){this.timeoutId&&=(clearTimeout(this.timeoutId),0)}drained(){this.drainedOption&&this.drainedOption()}};function qn(e){e.parentNode&&e.parentNode.removeChild(e)}function R(e,t){if(e.closest)return e.closest(t);if(!document.documentElement.contains(e))return null;do{if(Jn(e,t))return e;e=e.parentElement||e.parentNode}while(e!==null&&e.nodeType===1);return null}function Jn(e,t){return(e.matches||e.matchesSelector||e.msMatchesSelector).call(e,t)}function Yn(e,t){let n=e instanceof HTMLElement?[e]:e,r=[];for(let e=0;e<n.length;e+=1){let i=n[e].querySelectorAll(t);for(let e=0;e<i.length;e+=1)r.push(i[e])}return r}var Xn=/(top|left|right|bottom|width|height)$/i;function Zn(e,t){for(let n in t)Qn(e,n,t[n])}function Qn(e,t,n){n==null?e.style[t]=``:typeof n==`number`&&Xn.test(t)?e.style[t]=`${n}px`:e.style[t]=n}function $n(e){return e.composedPath?.call(e)[0]??e.target}var er=0;function tr(){return er+=1,`fc-dom-`+er}function nr(e,t){return n=>{let r=R(n.target,e);r&&t.call(r,n,r)}}function rr(e,t,n,r){let i=nr(n,r);return e.addEventListener(t,i),()=>{e.removeEventListener(t,i)}}function ir(e,t,n,r){let i;return rr(e,`mouseover`,t,(e,t)=>{if(t!==i){i=t,n(e,t);let a=e=>{i=null,r(e,t),t.removeEventListener(`mouseleave`,a)};t.addEventListener(`mouseleave`,a)}})}function ar(e){return Object.assign({onClick:e},or(e))}function or(e){return{tabIndex:0,onKeyDown(t){(t.key===`Enter`||t.key===` `)&&(e(t),t.preventDefault())}}}var sr=0;function cr(){return sr+=1,String(sr)}function lr(e){let t=[],n=[],r,i;for(typeof e==`string`?n=e.split(/\s*,\s*/):typeof e==`function`?n=[e]:Array.isArray(e)&&(n=e),r=0;r<n.length;r+=1)i=n[r],typeof i==`string`?t.push(i.charAt(0)===`-`?{field:i.substring(1),order:-1}:{field:i,order:1}):typeof i==`function`&&t.push({func:i});return t}function ur(e,t,n){let r,i;for(r=0;r<n.length;r+=1)if(i=dr(e,t,n[r]),i)return i;return 0}function dr(e,t,n){return n.func?n.func(e,t):fr(e[n.field],t[n.field])*(n.order||1)}function fr(e,t){return!e&&!t?0:t==null?-1:e==null?1:typeof e==`string`||typeof t==`string`?String(e).localeCompare(String(t)):e-t}function pr(e,t){let n=String(e);return`000`.substr(0,t-n.length)+n}function mr(e,t,n){return typeof e==`function`?e(...t):typeof e==`string`?t.reduce((e,t,n)=>e.replace(`$`+n,t||``),e):n}function hr(e){return e%1==0}function gr(e){let t=e.querySelector(`.fc-scrollgrid-shrink-frame`),n=e.querySelector(`.fc-scrollgrid-shrink-cushion`);if(!t)throw Error(`needs fc-scrollgrid-shrink-frame className`);if(!n)throw Error(`needs fc-scrollgrid-shrink-cushion className`);return e.getBoundingClientRect().width-t.getBoundingClientRect().width+n.getBoundingClientRect().width}var _r=[`years`,`months`,`days`,`milliseconds`],vr=/^(-?)(?:(\d+)\.)?(\d+):(\d\d)(?::(\d\d)(?:\.(\d\d\d))?)?/;function z(e,t){return typeof e==`string`?yr(e):typeof e==`object`&&e?br(e):typeof e==`number`?br({[t||`milliseconds`]:e}):null}function yr(e){let t=vr.exec(e);if(t){let e=t[1]?-1:1;return{years:0,months:0,days:e*(t[2]?parseInt(t[2],10):0),milliseconds:e*((t[3]?parseInt(t[3],10):0)*60*60*1e3+(t[4]?parseInt(t[4],10):0)*60*1e3+(t[5]?parseInt(t[5],10):0)*1e3+(t[6]?parseInt(t[6],10):0))}}return null}function br(e){let t={years:e.years||e.year||0,months:e.months||e.month||0,days:e.days||e.day||0,milliseconds:(e.hours||e.hour||0)*60*60*1e3+(e.minutes||e.minute||0)*60*1e3+(e.seconds||e.second||0)*1e3+(e.milliseconds||e.millisecond||e.ms||0)},n=e.weeks||e.week;return n&&(t.days+=n*7,t.specifiedWeeks=!0),t}function xr(e,t){return e.years===t.years&&e.months===t.months&&e.days===t.days&&e.milliseconds===t.milliseconds}function Sr(e,t){return{years:e.years+t.years,months:e.months+t.months,days:e.days+t.days,milliseconds:e.milliseconds+t.milliseconds}}function Cr(e,t){return{years:e.years-t.years,months:e.months-t.months,days:e.days-t.days,milliseconds:e.milliseconds-t.milliseconds}}function wr(e,t){return{years:e.years*t,months:e.months*t,days:e.days*t,milliseconds:e.milliseconds*t}}function Tr(e){return Dr(e)/365}function Er(e){return Dr(e)/30}function Dr(e){return B(e)/864e5}function B(e){return e.years*(365*864e5)+e.months*(30*864e5)+e.days*864e5+e.milliseconds}function Or(e,t){let n=null;for(let r=0;r<_r.length;r+=1){let i=_r[r];if(t[i]){let r=e[i]/t[i];if(!hr(r)||n!==null&&n!==r)return null;n=r}else if(e[i])return null}return n}function kr(e){let t=e.milliseconds;if(t){if(t%1e3!=0)return{unit:`millisecond`,value:t};if(t%(1e3*60)!=0)return{unit:`second`,value:t/1e3};if(t%(1e3*60*60)!=0)return{unit:`minute`,value:t/(1e3*60)};if(t)return{unit:`hour`,value:t/(1e3*60*60)}}return e.days?e.specifiedWeeks&&e.days%7==0?{unit:`week`,value:e.days/7}:{unit:`day`,value:e.days}:e.months?{unit:`month`,value:e.months}:e.years?{unit:`year`,value:e.years}:{unit:`millisecond`,value:0}}function Ar(e,t,n){if(e===t)return!0;let r=e.length,i;if(r!==t.length)return!1;for(i=0;i<r;i+=1)if(!(n?n(e[i],t[i]):e[i]===t[i]))return!1;return!0}var jr=[`sun`,`mon`,`tue`,`wed`,`thu`,`fri`,`sat`];function Mr(e,t){let n=Xr(e);return n[2]+=t*7,U(n)}function V(e,t){let n=Xr(e);return n[2]+=t,U(n)}function Nr(e,t){let n=Xr(e);return n[6]+=t,U(n)}function Pr(e,t){return Fr(e,t)/7}function Fr(e,t){return(t.valueOf()-e.valueOf())/(1e3*60*60*24)}function Ir(e,t){return(t.valueOf()-e.valueOf())/(1e3*60*60)}function Lr(e,t){return(t.valueOf()-e.valueOf())/(1e3*60)}function Rr(e,t){return(t.valueOf()-e.valueOf())/1e3}function zr(e,t){let n=H(e),r=H(t);return{years:0,months:0,days:Math.round(Fr(n,r)),milliseconds:t.valueOf()-r.valueOf()-(e.valueOf()-n.valueOf())}}function Br(e,t){let n=Vr(e,t);return n!==null&&n%7==0?n/7:null}function Vr(e,t){return Qr(e)===Qr(t)?Math.round(Fr(e,t)):null}function H(e){return U([e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()])}function Hr(e){return U([e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours()])}function Ur(e){return U([e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes()])}function Wr(e){return U([e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds()])}function Gr(e,t,n){let r=e.getUTCFullYear(),i=Kr(e,r,t,n);if(i<1)return Kr(e,r-1,t,n);let a=Kr(e,r+1,t,n);return a>=1?Math.min(i,a):i}function Kr(e,t,n,r){let i=U([t,0,1+qr(t,n,r)]),a=H(e),o=Math.round(Fr(i,a));return Math.floor(o/7)+1}function qr(e,t,n){let r=7+t-n;return-((7+U([e,0,r]).getUTCDay()-t)%7)+r-1}function Jr(e){return[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()]}function Yr(e){return new Date(e[0],e[1]||0,e[2]==null?1:e[2],e[3]||0,e[4]||0,e[5]||0)}function Xr(e){return[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()]}function U(e){return e.length===1&&(e=e.concat([0])),new Date(Date.UTC(...e))}function Zr(e){return!isNaN(e.valueOf())}function Qr(e){return e.getUTCHours()*1e3*60*60+e.getUTCMinutes()*1e3*60+e.getUTCSeconds()*1e3+e.getUTCMilliseconds()}function $r(e,t,n=!1){let r=e.toISOString();return r=r.replace(`.000`,``),n&&(r=r.replace(`T00:00:00Z`,``)),r.length>10&&(t==null?r=r.replace(`Z`,``):t!==0&&(r=r.replace(`Z`,ri(t,!0)))),r}function ei(e){return e.toISOString().replace(/T.*$/,``)}function ti(e){return e.toISOString().match(/^\d{4}-\d{2}/)[0]}function ni(e){return pr(e.getUTCHours(),2)+`:`+pr(e.getUTCMinutes(),2)+`:`+pr(e.getUTCSeconds(),2)}function ri(e,t=!1){let n=e<0?`-`:`+`,r=Math.abs(e),i=Math.floor(r/60),a=Math.round(r%60);return t?`${n+pr(i,2)}:${pr(a,2)}`:`GMT${n}${i}${a?`:${pr(a,2)}`:``}`}function W(e,t,n){let r,i;return function(...a){if(!r)i=e.apply(this,a);else if(!Ar(r,a)){n&&n(i);let r=e.apply(this,a);(!t||!t(r,i))&&(i=r)}return r=a,i}}function ii(e,t,n){let r,i;return a=>{if(!r)i=e.call(this,a);else if(!q(r,a)){n&&n(i);let r=e.call(this,a);(!t||!t(r,i))&&(i=r)}return r=a,i}}var ai={week:3,separator:9,omitZeroMinute:9,meridiem:9,omitCommas:9},oi={timeZoneName:7,era:6,year:5,month:4,day:2,weekday:2,hour:1,minute:1,second:1},si=/\s*([ap])\.?m\.?/i,ci=/,/g,li=/\s+/g,ui=/\u200e/g,di=/UTC|GMT/,fi=class{constructor(e){let t={},n={},r=9;for(let i in e)i in ai?(n[i]=e[i],ai[i]<9&&(r=Math.min(ai[i],r))):(t[i]=e[i],i in oi&&(r=Math.min(oi[i],r)));this.standardDateProps=t,this.extendedSettings=n,this.smallestUnitNum=r,this.buildFormattingFunc=W(pi)}format(e,t){return this.buildFormattingFunc(this.standardDateProps,this.extendedSettings,t)(e)}formatRange(e,t,n,r){let{standardDateProps:i,extendedSettings:a}=this,o=yi(e.marker,t.marker,n.calendarSystem);if(!o)return this.format(e,n);let s=o;s>1&&(i.year===`numeric`||i.year===`2-digit`)&&(i.month===`numeric`||i.month===`2-digit`)&&(i.day===`numeric`||i.day===`2-digit`)&&(s=1);let c=this.format(e,n),l=this.format(t,n);if(c===l)return c;let u=pi(bi(i,s),a,n),d=u(e),f=u(t),p=xi(c,d,l,f),m=a.separator||r||n.defaultSeparator||``;return p?p.before+d+m+f+p.after:c+m+l}getSmallestUnit(){switch(this.smallestUnitNum){case 7:case 6:case 5:return`year`;case 4:return`month`;case 3:return`week`;case 2:return`day`;default:return`time`}}};function pi(e,t,n){let r=Object.keys(e).length;return r===1&&e.timeZoneName===`short`?e=>ri(e.timeZoneOffset):r===0&&t.week?e=>vi(n.computeWeekNumber(e.marker),n.weekText,n.weekTextLong,n.locale,t.week):mi(e,t,n)}function mi(e,t,n){e=Object.assign({},e),t=Object.assign({},t),hi(e,t),e.timeZone=`UTC`;let r=new Intl.DateTimeFormat(n.locale.codes,e),i;if(t.omitZeroMinute){let t=Object.assign({},e);delete t.minute,i=new Intl.DateTimeFormat(n.locale.codes,t)}return a=>{let{marker:o}=a,s;return s=i&&!o.getUTCMinutes()?i:r,gi(s.format(o),a,e,t,n)}}function hi(e,t){e.timeZoneName&&(e.hour||=`2-digit`,e.minute||=`2-digit`),e.timeZoneName===`long`&&(e.timeZoneName=`short`),t.omitZeroMinute&&(e.second||e.millisecond)&&delete t.omitZeroMinute}function gi(e,t,n,r,i){return e=e.replace(ui,``),n.timeZoneName===`short`&&(e=_i(e,i.timeZone===`UTC`||t.timeZoneOffset==null?`UTC`:ri(t.timeZoneOffset))),r.omitCommas&&(e=e.replace(ci,``).trim()),r.omitZeroMinute&&(e=e.replace(`:00`,``)),r.meridiem===!1?e=e.replace(si,``).trim():r.meridiem===`narrow`?e=e.replace(si,(e,t)=>t.toLocaleLowerCase()):r.meridiem===`short`?e=e.replace(si,(e,t)=>`${t.toLocaleLowerCase()}m`):r.meridiem===`lowercase`&&(e=e.replace(si,e=>e.toLocaleLowerCase())),e=e.replace(li,` `),e=e.trim(),e}function _i(e,t){let n=!1;return e=e.replace(di,()=>(n=!0,t)),n||(e+=` ${t}`),e}function vi(e,t,n,r,i){let a=[];return i===`long`?a.push(n):(i===`short`||i===`narrow`)&&a.push(t),(i===`long`||i===`short`)&&a.push(` `),a.push(r.simpleNumberFormat.format(e)),r.options.direction===`rtl`&&a.reverse(),a.join(``)}function yi(e,t,n){return n.getMarkerYear(e)===n.getMarkerYear(t)?n.getMarkerMonth(e)===n.getMarkerMonth(t)?n.getMarkerDay(e)===n.getMarkerDay(t)?Qr(e)===Qr(t)?0:1:2:4:5}function bi(e,t){let n={};for(let r in e)(!(r in oi)||oi[r]<=t)&&(n[r]=e[r]);return n}function xi(e,t,n,r){let i=0;for(;i<e.length;){let a=e.indexOf(t,i);if(a===-1)break;let o=e.substr(0,a);i=a+t.length;let s=e.substr(i),c=0;for(;c<n.length;){let e=n.indexOf(r,c);if(e===-1)break;let t=n.substr(0,e);c=e+r.length;let i=n.substr(c);if(o===t&&s===i)return{before:o,after:s}}}return null}function Si(e,t){let n=t.markerToArray(e.marker);return{marker:e.marker,timeZoneOffset:e.timeZoneOffset,array:n,year:n[0],month:n[1],day:n[2],hour:n[3],minute:n[4],second:n[5],millisecond:n[6]}}function Ci(e,t,n,r){let i=Si(e,n.calendarSystem);return{date:i,start:i,end:t?Si(t,n.calendarSystem):null,timeZone:n.timeZone,localeCodes:n.locale.codes,defaultSeparator:r||n.defaultSeparator}}var wi=class{constructor(e){this.cmdStr=e}format(e,t,n){return t.cmdFormatter(this.cmdStr,Ci(e,null,t,n))}formatRange(e,t,n,r){return n.cmdFormatter(this.cmdStr,Ci(e,t,n,r))}},Ti=class{constructor(e){this.func=e}format(e,t,n){return this.func(Ci(e,null,t,n))}formatRange(e,t,n,r){return this.func(Ci(e,t,n,r))}};function G(e){return typeof e==`object`&&e?new fi(e):typeof e==`string`?new wi(e):typeof e==`function`?new Ti(e):null}var Ei={navLinkDayClick:K,navLinkWeekClick:K,duration:z,bootstrapFontAwesome:K,buttonIcons:K,customButtons:K,defaultAllDayEventDuration:z,defaultTimedEventDuration:z,nextDayThreshold:z,scrollTime:z,scrollTimeReset:Boolean,slotMinTime:z,slotMaxTime:z,dayPopoverFormat:G,slotDuration:z,snapDuration:z,headerToolbar:K,footerToolbar:K,defaultRangeSeparator:String,titleRangeSeparator:String,forceEventDuration:Boolean,dayHeaders:Boolean,dayHeaderFormat:G,dayHeaderClassNames:K,dayHeaderContent:K,dayHeaderDidMount:K,dayHeaderWillUnmount:K,dayCellClassNames:K,dayCellContent:K,dayCellDidMount:K,dayCellWillUnmount:K,initialView:String,aspectRatio:Number,weekends:Boolean,weekNumberCalculation:K,weekNumbers:Boolean,weekNumberClassNames:K,weekNumberContent:K,weekNumberDidMount:K,weekNumberWillUnmount:K,editable:Boolean,viewClassNames:K,viewDidMount:K,viewWillUnmount:K,nowIndicator:Boolean,nowIndicatorSnap:K,nowIndicatorClassNames:K,nowIndicatorContent:K,nowIndicatorDidMount:K,nowIndicatorWillUnmount:K,showNonCurrentDates:Boolean,lazyFetching:Boolean,startParam:String,endParam:String,timeZoneParam:String,timeZone:String,locales:K,locale:K,themeSystem:String,dragRevertDuration:Number,dragScroll:Boolean,allDayMaintainDuration:Boolean,unselectAuto:Boolean,dropAccept:K,eventOrder:lr,eventOrderStrict:Boolean,handleWindowResize:Boolean,windowResizeDelay:Number,longPressDelay:Number,eventDragMinDistance:Number,expandRows:Boolean,height:K,contentHeight:K,direction:String,weekNumberFormat:G,eventResizableFromStart:Boolean,displayEventTime:Boolean,displayEventEnd:Boolean,weekText:String,weekTextLong:String,progressiveEventRendering:Boolean,businessHours:K,initialDate:K,now:K,eventDataTransform:K,stickyHeaderDates:K,stickyFooterScrollbar:K,viewHeight:K,defaultAllDay:Boolean,eventSourceFailure:K,eventSourceSuccess:K,eventDisplay:String,eventStartEditable:Boolean,eventDurationEditable:Boolean,eventOverlap:K,eventConstraint:K,eventAllow:K,eventBackgroundColor:String,eventBorderColor:String,eventTextColor:String,eventColor:String,eventClassNames:K,eventContent:K,eventDidMount:K,eventWillUnmount:K,selectConstraint:K,selectOverlap:K,selectAllow:K,droppable:Boolean,unselectCancel:String,slotLabelFormat:K,slotLaneClassNames:K,slotLaneContent:K,slotLaneDidMount:K,slotLaneWillUnmount:K,slotLabelClassNames:K,slotLabelContent:K,slotLabelDidMount:K,slotLabelWillUnmount:K,dayMaxEvents:K,dayMaxEventRows:K,dayMinWidth:Number,slotLabelInterval:z,allDayText:String,allDayClassNames:K,allDayContent:K,allDayDidMount:K,allDayWillUnmount:K,slotMinWidth:Number,navLinks:Boolean,eventTimeFormat:G,rerenderDelay:Number,moreLinkText:K,moreLinkHint:K,selectMinDistance:Number,selectable:Boolean,selectLongPressDelay:Number,eventLongPressDelay:Number,selectMirror:Boolean,eventMaxStack:Number,eventMinHeight:Number,eventMinWidth:Number,eventShortHeight:Number,slotEventOverlap:Boolean,plugins:K,firstDay:Number,dayCount:Number,dateAlignment:String,dateIncrement:z,hiddenDays:K,fixedWeekCount:Boolean,validRange:K,visibleRange:K,titleFormat:K,eventInteractive:Boolean,noEventsText:String,viewHint:K,navLinkHint:K,closeHint:String,timeHint:String,eventHint:String,moreLinkClick:K,moreLinkClassNames:K,moreLinkContent:K,moreLinkDidMount:K,moreLinkWillUnmount:K,monthStartFormat:G,handleCustomRendering:K,customRenderingMetaMap:K,customRenderingReplaces:Boolean},Di={eventDisplay:`auto`,defaultRangeSeparator:` - `,titleRangeSeparator:` – `,defaultTimedEventDuration:`01:00:00`,defaultAllDayEventDuration:{day:1},forceEventDuration:!1,nextDayThreshold:`00:00:00`,dayHeaders:!0,initialView:``,aspectRatio:1.35,headerToolbar:{start:`title`,center:``,end:`today prev,next`},weekends:!0,weekNumbers:!1,weekNumberCalculation:`local`,editable:!1,nowIndicator:!1,scrollTime:`06:00:00`,scrollTimeReset:!0,slotMinTime:`00:00:00`,slotMaxTime:`24:00:00`,showNonCurrentDates:!0,lazyFetching:!0,startParam:`start`,endParam:`end`,timeZoneParam:`timeZone`,timeZone:`local`,locales:[],locale:``,themeSystem:`standard`,dragRevertDuration:500,dragScroll:!0,allDayMaintainDuration:!1,unselectAuto:!0,dropAccept:`*`,eventOrder:`start,-duration,allDay,title`,dayPopoverFormat:{month:`long`,day:`numeric`,year:`numeric`},handleWindowResize:!0,windowResizeDelay:100,longPressDelay:1e3,eventDragMinDistance:5,expandRows:!1,navLinks:!1,selectable:!1,eventMinHeight:15,eventMinWidth:30,eventShortHeight:30,monthStartFormat:{month:`long`,day:`numeric`},nowIndicatorSnap:`auto`},Oi={datesSet:K,eventsSet:K,eventAdd:K,eventChange:K,eventRemove:K,windowResize:K,eventClick:K,eventMouseEnter:K,eventMouseLeave:K,select:K,unselect:K,loading:K,_unmount:K,_beforeprint:K,_afterprint:K,_noEventDrop:K,_noEventResize:K,_resize:K,_scrollRequest:K},ki={buttonText:K,buttonHints:K,views:K,plugins:K,initialEvents:K,events:K,eventSources:K},Ai={headerToolbar:ji,footerToolbar:ji,buttonText:ji,buttonHints:ji,buttonIcons:ji,dateIncrement:ji,plugins:Mi,events:Mi,eventSources:Mi,resources:Mi};function ji(e,t){return typeof e==`object`&&typeof t==`object`&&e&&t?q(e,t):e===t}function Mi(e,t){return Array.isArray(e)&&Array.isArray(t)?Ar(e,t):e===t}var Ni={type:String,component:K,buttonText:String,buttonTextKey:String,dateProfileGeneratorClass:K,usesMinMaxTime:Boolean,classNames:K,content:K,didMount:K,willUnmount:K};function Pi(e){return Li(e,Ai)}function Fi(e,t){let n={},r={};for(let r in t)r in e&&(n[r]=t[r](e[r]));for(let n in e)n in t||(r[n]=e[n]);return{refined:n,extra:r}}function K(e){return e}var{hasOwnProperty:Ii}=Object.prototype;function Li(e,t){let n={};if(t){for(let r in t)if(t[r]===ji){let t=[];for(let i=e.length-1;i>=0;--i){let a=e[i][r];if(typeof a==`object`&&a)t.unshift(a);else if(a!==void 0){n[r]=a;break}}t.length&&(n[r]=Li(t))}}for(let t=e.length-1;t>=0;--t){let r=e[t];for(let e in r)e in n||(n[e]=r[e])}return n}function Ri(e,t){let n={};for(let r in e)t(e[r],r)&&(n[r]=e[r]);return n}function zi(e,t){let n={};for(let r in e)n[r]=t(e[r],r);return n}function Bi(e){let t={};for(let n of e)t[n]=!0;return t}function Vi(e){let t=[];for(let n in e)t.push(e[n]);return t}function q(e,t){if(e===t)return!0;for(let n in e)if(Ii.call(e,n)&&!(n in t))return!1;for(let n in t)if(Ii.call(t,n)&&e[n]!==t[n])return!1;return!0}var Hi=/^on[A-Z]/;function Ui(e,t){let n=Wi(e,t);for(let e of n)if(!Hi.test(e))return!1;return!0}function Wi(e,t){let n=[];for(let r in e)Ii.call(e,r)&&(r in t||n.push(r));for(let r in t)Ii.call(t,r)&&e[r]!==t[r]&&n.push(r);return n}function Gi(e,t,n={}){if(e===t)return!0;for(let r in t)if(!(r in e&&Ki(e[r],t[r],n[r])))return!1;for(let n in e)if(!(n in t))return!1;return!0}function Ki(e,t,n){return e===t||n===!0?!0:n?n(e,t):!1}function qi(e,t=0,n,r=1){let i=[];n??=Object.keys(e).length;for(let a=t;a<n;a+=r){let t=e[a];t!==void 0&&i.push(t)}return i}var Ji={};function Yi(e,t){Ji[e]=t}function Xi(e){return new Ji[e]}Yi(`gregory`,class{getMarkerYear(e){return e.getUTCFullYear()}getMarkerMonth(e){return e.getUTCMonth()}getMarkerDay(e){return e.getUTCDate()}arrayToMarker(e){return U(e)}markerToArray(e){return Xr(e)}});var Zi=/^\s*(\d{4})(-?(\d{2})(-?(\d{2})([T ](\d{2}):?(\d{2})(:?(\d{2})(\.(\d+))?)?(Z|(([-+])(\d{2})(:?(\d{2}))?))?)?)?)?$/;function Qi(e){let t=Zi.exec(e);if(t){let e=new Date(Date.UTC(Number(t[1]),t[3]?Number(t[3])-1:0,Number(t[5]||1),Number(t[7]||0),Number(t[8]||0),Number(t[10]||0),t[12]?Number(`0.${t[12]}`)*1e3:0));if(Zr(e)){let n=null;return t[13]&&(n=(t[15]===`-`?-1:1)*(Number(t[16]||0)*60+Number(t[18]||0))),{marker:e,isTimeUnspecified:!t[6],timeZoneOffset:n}}}return null}var $i=class{constructor(e){let t=this.timeZone=e.timeZone,n=t!==`local`&&t!==`UTC`;e.namedTimeZoneImpl&&n&&(this.namedTimeZoneImpl=new e.namedTimeZoneImpl(t)),this.canComputeOffset=!!(!n||this.namedTimeZoneImpl),this.calendarSystem=Xi(e.calendarSystem),this.locale=e.locale,this.weekDow=e.locale.week.dow,this.weekDoy=e.locale.week.doy,e.weekNumberCalculation===`ISO`&&(this.weekDow=1,this.weekDoy=4),typeof e.firstDay==`number`&&(this.weekDow=e.firstDay),typeof e.weekNumberCalculation==`function`&&(this.weekNumberFunc=e.weekNumberCalculation),this.weekText=e.weekText==null?e.locale.options.weekText:e.weekText,this.weekTextLong=(e.weekTextLong==null?e.locale.options.weekTextLong:e.weekTextLong)||this.weekText,this.cmdFormatter=e.cmdFormatter,this.defaultSeparator=e.defaultSeparator}createMarker(e){let t=this.createMarkerMeta(e);return t===null?null:t.marker}createNowMarker(){return this.canComputeOffset?this.timestampToMarker(new Date().valueOf()):U(Jr(new Date))}createMarkerMeta(e){if(typeof e==`string`)return this.parse(e);let t=null;return typeof e==`number`?t=this.timestampToMarker(e):e instanceof Date?(e=e.valueOf(),isNaN(e)||(t=this.timestampToMarker(e))):Array.isArray(e)&&(t=U(e)),t===null||!Zr(t)?null:{marker:t,isTimeUnspecified:!1,forcedTzo:null}}parse(e){let t=Qi(e);if(t===null)return null;let{marker:n}=t,r=null;return t.timeZoneOffset!==null&&(this.canComputeOffset?n=this.timestampToMarker(n.valueOf()-t.timeZoneOffset*60*1e3):r=t.timeZoneOffset),{marker:n,isTimeUnspecified:t.isTimeUnspecified,forcedTzo:r}}getYear(e){return this.calendarSystem.getMarkerYear(e)}getMonth(e){return this.calendarSystem.getMarkerMonth(e)}getDay(e){return this.calendarSystem.getMarkerDay(e)}add(e,t){let n=this.calendarSystem.markerToArray(e);return n[0]+=t.years,n[1]+=t.months,n[2]+=t.days,n[6]+=t.milliseconds,this.calendarSystem.arrayToMarker(n)}subtract(e,t){let n=this.calendarSystem.markerToArray(e);return n[0]-=t.years,n[1]-=t.months,n[2]-=t.days,n[6]-=t.milliseconds,this.calendarSystem.arrayToMarker(n)}addYears(e,t){let n=this.calendarSystem.markerToArray(e);return n[0]+=t,this.calendarSystem.arrayToMarker(n)}addMonths(e,t){let n=this.calendarSystem.markerToArray(e);return n[1]+=t,this.calendarSystem.arrayToMarker(n)}diffWholeYears(e,t){let{calendarSystem:n}=this;return Qr(e)===Qr(t)&&n.getMarkerDay(e)===n.getMarkerDay(t)&&n.getMarkerMonth(e)===n.getMarkerMonth(t)?n.getMarkerYear(t)-n.getMarkerYear(e):null}diffWholeMonths(e,t){let{calendarSystem:n}=this;return Qr(e)===Qr(t)&&n.getMarkerDay(e)===n.getMarkerDay(t)?n.getMarkerMonth(t)-n.getMarkerMonth(e)+(n.getMarkerYear(t)-n.getMarkerYear(e))*12:null}greatestWholeUnit(e,t){let n=this.diffWholeYears(e,t);return n===null?(n=this.diffWholeMonths(e,t),n===null?(n=Br(e,t),n===null?(n=Vr(e,t),n===null?(n=Ir(e,t),hr(n)?{unit:`hour`,value:n}:(n=Lr(e,t),hr(n)?{unit:`minute`,value:n}:(n=Rr(e,t),hr(n)?{unit:`second`,value:n}:{unit:`millisecond`,value:t.valueOf()-e.valueOf()}))):{unit:`day`,value:n}):{unit:`week`,value:n}):{unit:`month`,value:n}):{unit:`year`,value:n}}countDurationsBetween(e,t,n){let r;return n.years&&(r=this.diffWholeYears(e,t),r!==null)?r/Tr(n):n.months&&(r=this.diffWholeMonths(e,t),r!==null)?r/Er(n):n.days&&(r=Vr(e,t),r!==null)?r/Dr(n):(t.valueOf()-e.valueOf())/B(n)}startOf(e,t){return t===`year`?this.startOfYear(e):t===`month`?this.startOfMonth(e):t===`week`?this.startOfWeek(e):t===`day`?H(e):t===`hour`?Hr(e):t===`minute`?Ur(e):t===`second`?Wr(e):null}startOfYear(e){return this.calendarSystem.arrayToMarker([this.calendarSystem.getMarkerYear(e)])}startOfMonth(e){return this.calendarSystem.arrayToMarker([this.calendarSystem.getMarkerYear(e),this.calendarSystem.getMarkerMonth(e)])}startOfWeek(e){return this.calendarSystem.arrayToMarker([this.calendarSystem.getMarkerYear(e),this.calendarSystem.getMarkerMonth(e),e.getUTCDate()-(e.getUTCDay()-this.weekDow+7)%7])}computeWeekNumber(e){return this.weekNumberFunc?this.weekNumberFunc(this.toDate(e)):Gr(e,this.weekDow,this.weekDoy)}format(e,t,n={}){return t.format({marker:e,timeZoneOffset:n.forcedTzo==null?this.offsetForMarker(e):n.forcedTzo},this)}formatRange(e,t,n,r={}){return r.isEndExclusive&&(t=Nr(t,-1)),n.formatRange({marker:e,timeZoneOffset:r.forcedStartTzo==null?this.offsetForMarker(e):r.forcedStartTzo},{marker:t,timeZoneOffset:r.forcedEndTzo==null?this.offsetForMarker(t):r.forcedEndTzo},this,r.defaultSeparator)}formatIso(e,t={}){let n=null;return t.omitTimeZoneOffset||(n=t.forcedTzo==null?this.offsetForMarker(e):t.forcedTzo),$r(e,n,t.omitTime)}timestampToMarker(e){return this.timeZone===`local`?U(Jr(new Date(e))):this.timeZone===`UTC`||!this.namedTimeZoneImpl?new Date(e):U(this.namedTimeZoneImpl.timestampToArray(e))}offsetForMarker(e){return this.timeZone===`local`?-Yr(Xr(e)).getTimezoneOffset():this.timeZone===`UTC`?0:this.namedTimeZoneImpl?this.namedTimeZoneImpl.offsetForArray(Xr(e)):null}toDate(e,t){return this.timeZone===`local`?Yr(Xr(e)):this.timeZone===`UTC`?new Date(e.valueOf()):this.namedTimeZoneImpl?new Date(e.valueOf()-this.namedTimeZoneImpl.offsetForArray(Xr(e))*1e3*60):new Date(e.valueOf()-(t||0))}},ea=class{constructor(e){this.iconOverrideOption&&this.setIconOverride(e[this.iconOverrideOption])}setIconOverride(e){let t,n;if(typeof e==`object`&&e){for(n in t=Object.assign({},this.iconClasses),e)t[n]=this.applyIconOverridePrefix(e[n]);this.iconClasses=t}else e===!1&&(this.iconClasses={})}applyIconOverridePrefix(e){let t=this.iconOverridePrefix;return t&&e.indexOf(t)!==0&&(e=t+e),e}getClass(e){return this.classes[e]||``}getIconClass(e,t){let n;return n=t&&this.rtlIconClasses&&this.rtlIconClasses[e]||this.iconClasses[e],n?`${this.baseIconClass} ${n}`:``}getCustomButtonIconClass(e){let t;return this.iconOverrideCustomButtonOption&&(t=e[this.iconOverrideCustomButtonOption],t)?`${this.baseIconClass} ${this.applyIconOverridePrefix(t)}`:``}};ea.prototype.classes={},ea.prototype.iconClasses={},ea.prototype.baseIconClass=``,ea.prototype.iconOverridePrefix=``;function ta(e){e();let t=M.debounceRendering,n=[];function r(e){n.push(e)}for(M.debounceRendering=r,qt(N(na,{}),document.createElement(`div`));n.length;)n.shift()();M.debounceRendering=t}var na=class extends I{render(){return N(`div`,{})}componentDidMount(){this.setState({})}};function ra(e){let t=Jt(e),n=t.Provider;return t.Provider=function(){let e=!this.getChildContext,t=n.apply(this,arguments);if(e){let e=[];this.shouldComponentUpdate=t=>{this.props.value!==t.value&&e.forEach(e=>{e.context=t.value,e.forceUpdate()})},this.sub=t=>{e.push(t);let n=t.componentWillUnmount;t.componentWillUnmount=()=>{e.splice(e.indexOf(t),1),n&&n.call(t)}}}return t},t}var ia=class{constructor(e,t,n,r){this.execFunc=e,this.emitter=t,this.scrollTime=n,this.scrollTimeReset=r,this.handleScrollRequest=e=>{this.queuedRequest=Object.assign({},this.queuedRequest||{},e),this.drain()},t.on(`_scrollRequest`,this.handleScrollRequest),this.fireInitialScroll()}detach(){this.emitter.off(`_scrollRequest`,this.handleScrollRequest)}update(e){e&&this.scrollTimeReset?this.fireInitialScroll():this.drain()}fireInitialScroll(){this.handleScrollRequest({time:this.scrollTime})}drain(){this.queuedRequest&&this.execFunc(this.queuedRequest)&&(this.queuedRequest=null)}},aa=ra({});function oa(e,t,n,r,i,a,o,s,c,l,u,d,f,p){return{dateEnv:i,nowManager:a,options:n,pluginHooks:s,emitter:u,dispatch:c,getCurrentData:l,calendarApi:d,viewSpec:e,viewApi:t,dateProfileGenerator:r,theme:o,isRtl:n.direction===`rtl`,addResizeHandler(e){u.on(`_resize`,e)},removeResizeHandler(e){u.off(`_resize`,e)},createScrollResponder(e){return new ia(e,u,z(n.scrollTime),n.scrollTimeReset)},registerInteractiveComponent:f,unregisterInteractiveComponent:p}}var sa=class extends I{shouldComponentUpdate(e,t){return!Gi(this.props,e,this.propEquality)||!Gi(this.state,t,this.stateEquality)}safeSetState(e){Gi(this.state,Object.assign(Object.assign({},this.state),e),this.stateEquality)||this.setState(e)}};sa.addPropsEquality=ca,sa.addStateEquality=la,sa.contextType=aa,sa.prototype.propEquality={},sa.prototype.stateEquality={};var J=class extends sa{};J.contextType=aa;function ca(e){let t=Object.create(this.prototype.propEquality);Object.assign(t,e),this.prototype.propEquality=t}function la(e){let t=Object.create(this.prototype.stateEquality);Object.assign(t,e),this.prototype.stateEquality=t}function Y(e,t){typeof e==`function`?e(t):e&&(e.current=t)}var ua=class extends J{constructor(){super(...arguments),this.id=cr(),this.queuedDomNodes=[],this.currentDomNodes=[],this.handleEl=e=>{let{options:t}=this.context,{generatorName:n}=this.props;(!t.customRenderingReplaces||!da(n,t))&&this.updateElRef(e)},this.updateElRef=e=>{this.props.elRef&&Y(this.props.elRef,e)}}render(){let{props:e,context:t}=this,{options:n}=t,{customGenerator:r,defaultGenerator:i,renderProps:a}=e,o=fa(e,[],this.handleEl),s=!1,c,l=[],u;if(r!=null){let e=typeof r==`function`?r(a,N):r;if(e===!0)s=!0;else{let t=e&&typeof e==`object`;t&&`html`in e?o.dangerouslySetInnerHTML={__html:e.html}:t&&`domNodes`in e?l=Array.prototype.slice.call(e.domNodes):(t?mt(e):typeof e!=`function`)?c=e:u=e}}else s=!da(e.generatorName,n);return s&&i&&(c=i(a)),this.queuedDomNodes=l,this.currentGeneratorMeta=u,N(e.elTag,o,c)}componentDidMount(){this.applyQueueudDomNodes(),this.triggerCustomRendering(!0)}componentDidUpdate(){this.applyQueueudDomNodes(),this.triggerCustomRendering(!0)}componentWillUnmount(){this.triggerCustomRendering(!1)}triggerCustomRendering(e){let{props:t,context:n}=this,{handleCustomRendering:r,customRenderingMetaMap:i}=n.options;if(r){let n=this.currentGeneratorMeta??i?.[t.generatorName];n&&r(Object.assign(Object.assign({id:this.id,isActive:e,containerEl:this.base,reportNewContainerEl:this.updateElRef,generatorMeta:n},t),{elClasses:(t.elClasses||[]).filter(pa)}))}}applyQueueudDomNodes(){let{queuedDomNodes:e,currentDomNodes:t}=this,n=this.base;if(!Ar(e,t)){t.forEach(qn);for(let t of e)n.appendChild(t);this.currentDomNodes=e}}};ua.addPropsEquality({elClasses:Ar,elStyle:q,elAttrs:Ui,renderProps:q});function da(e,t){return!!(t.handleCustomRendering&&e&&t.customRenderingMetaMap?.[e])}function fa(e,t,n){let r=Object.assign(Object.assign({},e.elAttrs),{ref:n});return(e.elClasses||t)&&(r.className=(e.elClasses||[]).concat(t||[]).concat(r.className||[]).filter(Boolean).join(` `)),e.elStyle&&(r.style=e.elStyle),r}function pa(e){return!!e}var ma=ra(0),X=class extends I{constructor(){super(...arguments),this.InnerContent=ha.bind(void 0,this),this.handleEl=e=>{this.el=e,this.props.elRef&&(Y(this.props.elRef,e),e&&this.didMountMisfire&&this.componentDidMount())}}render(){let{props:e}=this,t=ga(e.classNameGenerator,e.renderProps);if(e.children){let n=fa(e,t,this.handleEl),r=e.children(this.InnerContent,e.renderProps,n);return e.elTag?N(e.elTag,n,r):r}else return N(ua,Object.assign(Object.assign({},e),{elRef:this.handleEl,elTag:e.elTag||`div`,elClasses:(e.elClasses||[]).concat(t),renderId:this.context}))}componentDidMount(){var e,t;this.el?(t=(e=this.props).didMount)==null||t.call(e,Object.assign(Object.assign({},this.props.renderProps),{el:this.el})):this.didMountMisfire=!0}componentWillUnmount(){var e,t;(t=(e=this.props).willUnmount)==null||t.call(e,Object.assign(Object.assign({},this.props.renderProps),{el:this.el}))}};X.contextType=ma;function ha(e,t){let n=e.props;return N(ua,Object.assign({renderProps:n.renderProps,generatorName:n.generatorName,customGenerator:n.customGenerator,defaultGenerator:n.defaultGenerator,renderId:e.context},t))}function ga(e,t){let n=typeof e==`function`?e(t):e||[];return typeof n==`string`?[n]:n}var _a=class extends J{render(){let{props:e,context:t}=this,{options:n}=t,r={view:t.viewApi};return N(X,{elRef:e.elRef,elTag:e.elTag||`div`,elAttrs:e.elAttrs,elClasses:[...va(e.viewSpec),...e.elClasses||[]],elStyle:e.elStyle,renderProps:r,classNameGenerator:n.viewClassNames,generatorName:void 0,didMount:n.viewDidMount,willUnmount:n.viewWillUnmount},()=>e.children)}};function va(e){return[`fc-${e.type}-view`,`fc-view`]}function ya(e,t){let n=null,r=null;return e.start&&(n=t.createMarker(e.start)),e.end&&(r=t.createMarker(e.end)),!n&&!r||n&&r&&r<n?null:{start:n,end:r}}function ba(e,t){let n=[],{start:r}=t,i,a;for(e.sort(xa),i=0;i<e.length;i+=1)a=e[i],a.start>r&&n.push({start:r,end:a.start}),a.end>r&&(r=a.end);return r<t.end&&n.push({start:r,end:t.end}),n}function xa(e,t){return e.start.valueOf()-t.start.valueOf()}function Sa(e,t){let{start:n,end:r}=e,i=null;return t.start!==null&&(n=n===null?t.start:new Date(Math.max(n.valueOf(),t.start.valueOf()))),t.end!=null&&(r=r===null?t.end:new Date(Math.min(r.valueOf(),t.end.valueOf()))),(n===null||r===null||n<r)&&(i={start:n,end:r}),i}function Ca(e,t){return(e.end===null||t.start===null||e.end>t.start)&&(e.start===null||t.end===null||e.start<t.end)}function wa(e,t){return(e.start===null||t>=e.start)&&(e.end===null||t<e.end)}function Ta(e,t){return t.start!=null&&e<t.start?t.start:t.end!=null&&e>=t.end?new Date(t.end.valueOf()-1):e}function Ea(e){let t=Math.floor(Fr(e.start,e.end))||1,n=H(e.start);return{start:n,end:V(n,t)}}function Da(e,t=z(0)){let n=null,r=null;if(e.end){r=H(e.end);let n=e.end.valueOf()-r.valueOf();n&&n>=B(t)&&(r=V(r,1))}return e.start&&(n=H(e.start),r&&r<=n&&(r=V(n,1))),{start:n,end:r}}function Oa(e,t,n,r){return r===`year`?z(n.diffWholeYears(e,t),`year`):r===`month`?z(n.diffWholeMonths(e,t),`month`):zr(e,t)}var ka=class{constructor(e){this.props=e,this.initHiddenDays()}buildPrev(e,t,n){let{dateEnv:r}=this.props,i=r.subtract(r.startOf(t,e.currentRangeUnit),e.dateIncrement);return this.build(i,-1,n)}buildNext(e,t,n){let{dateEnv:r}=this.props,i=r.add(r.startOf(t,e.currentRangeUnit),e.dateIncrement);return this.build(i,1,n)}build(e,t,n=!0){let{props:r}=this,i,a,o,s,c,l;return i=this.buildValidRange(),i=this.trimHiddenDays(i),n&&(e=Ta(e,i)),a=this.buildCurrentRangeInfo(e,t),o=/^(year|month|week|day)$/.test(a.unit),s=this.buildRenderRange(this.trimHiddenDays(a.range),a.unit,o),s=this.trimHiddenDays(s),c=s,r.showNonCurrentDates||(c=Sa(c,a.range)),c=this.adjustActiveRange(c),c=Sa(c,i),l=Ca(a.range,i),wa(s,e)||(e=s.start),{currentDate:e,validRange:i,currentRange:a.range,currentRangeUnit:a.unit,isRangeAllDay:o,activeRange:c,renderRange:s,slotMinTime:r.slotMinTime,slotMaxTime:r.slotMaxTime,isValid:l,dateIncrement:this.buildDateIncrement(a.duration)}}buildValidRange(){let e=this.props.validRangeInput,t=typeof e==`function`?e.call(this.props.calendarApi,this.props.dateEnv.toDate(this.props.nowManager.getDateMarker())):e;return this.refineRange(t)||{start:null,end:null}}buildCurrentRangeInfo(e,t){let{props:n}=this,r=null,i=null,a=null,o;return n.duration?(r=n.duration,i=n.durationUnit,a=this.buildRangeFromDuration(e,t,r,i)):(o=this.props.dayCount)?(i=`day`,a=this.buildRangeFromDayCount(e,t,o)):(a=this.buildCustomVisibleRange(e))?i=n.dateEnv.greatestWholeUnit(a.start,a.end).unit:(r=this.getFallbackDuration(),i=kr(r).unit,a=this.buildRangeFromDuration(e,t,r,i)),{duration:r,unit:i,range:a}}getFallbackDuration(){return z({day:1})}adjustActiveRange(e){let{dateEnv:t,usesMinMaxTime:n,slotMinTime:r,slotMaxTime:i}=this.props,{start:a,end:o}=e;return n&&(Dr(r)<0&&(a=H(a),a=t.add(a,r)),Dr(i)>1&&(o=H(o),o=V(o,-1),o=t.add(o,i))),{start:a,end:o}}buildRangeFromDuration(e,t,n,r){let{dateEnv:i,dateAlignment:a}=this.props,o,s,c;if(!a){let{dateIncrement:e}=this.props;a=e&&B(e)<B(n)?kr(e).unit:r}Dr(n)<=1&&this.isHiddenDay(o)&&(o=this.skipHiddenDays(o,t),o=H(o));function l(){o=i.startOf(e,a),s=i.add(o,n),c={start:o,end:s}}return l(),this.trimHiddenDays(c)||(e=this.skipHiddenDays(e,t),l()),c}buildRangeFromDayCount(e,t,n){let{dateEnv:r,dateAlignment:i}=this.props,a=0,o=e,s;i&&(o=r.startOf(o,i)),o=H(o),o=this.skipHiddenDays(o,t),s=o;do s=V(s,1),this.isHiddenDay(s)||(a+=1);while(a<n);return{start:o,end:s}}buildCustomVisibleRange(e){let{props:t}=this,n=t.visibleRangeInput,r=typeof n==`function`?n.call(t.calendarApi,t.dateEnv.toDate(e)):n,i=this.refineRange(r);return i&&(i.start==null||i.end==null)?null:i}buildRenderRange(e,t,n){return e}buildDateIncrement(e){let{dateIncrement:t}=this.props,n;return t||((n=this.props.dateAlignment)?z(1,n):e||z({days:1}))}refineRange(e){if(e){let t=ya(e,this.props.dateEnv);return t&&=Da(t),t}return null}initHiddenDays(){let e=this.props.hiddenDays||[],t=[],n=0,r;for(this.props.weekends===!1&&e.push(0,6),r=0;r<7;r+=1)(t[r]=e.indexOf(r)!==-1)||(n+=1);if(!n)throw Error(`invalid hiddenDays`);this.isHiddenDayHash=t}trimHiddenDays(e){let{start:t,end:n}=e;return t&&=this.skipHiddenDays(t),n&&=this.skipHiddenDays(n,-1,!0),t==null||n==null||t<n?{start:t,end:n}:null}isHiddenDay(e){return e instanceof Date&&(e=e.getUTCDay()),this.isHiddenDayHash[e]}skipHiddenDays(e,t=1,n=!1){for(;this.isHiddenDayHash[(e.getUTCDay()+(n?t:0)+7)%7];)e=V(e,t);return e}};function Aa(e,t,n,r){return{instanceId:cr(),defId:e,range:t,forcedStartTzo:n??null,forcedEndTzo:r??null}}function ja(e,t,n,r){for(let i=0;i<r.length;i+=1){let a=r[i].parse(e,n);if(a){let{allDay:n}=e;return n??(n=t,n??(n=a.allDayGuess,n??=!1)),{allDay:n,duration:a.duration,typeData:a.typeData,typeId:i}}}return null}function Ma(e,t,n){let{dateEnv:r,pluginHooks:i,options:a}=n,{defs:o,instances:s}=e;s=Ri(s,e=>!o[e.defId].recurringDef);for(let e in o){let n=o[e];if(n.recurringDef){let{duration:o}=n.recurringDef;o||=n.allDay?a.defaultAllDayEventDuration:a.defaultTimedEventDuration;let c=Na(n,o,t,r,i.recurringTypes);for(let t of c){let n=Aa(e,{start:t,end:r.add(t,o)});s[n.instanceId]=n}}}return{defs:o,instances:s}}function Na(e,t,n,r,i){let a=i[e.recurringDef.typeId].expand(e.recurringDef.typeData,{start:r.subtract(n.start,t),end:n.end},r);return e.allDay&&(a=a.map(H)),a}var Pa={id:String,groupId:String,title:String,url:String,interactive:Boolean},Fa={start:K,end:K,date:K,allDay:Boolean},Ia=Object.assign(Object.assign(Object.assign({},Pa),Fa),{extendedProps:K});function La(e,t,n,r,i=za(n),a,o){let{refined:s,extra:c}=Ra(e,n,i),l=Ha(t,n),u=ja(s,l,n.dateEnv,n.pluginHooks.recurringTypes);if(u){let e=Ba(s,c,t?t.sourceId:``,u.allDay,!!u.duration,n,a);return e.recurringDef={typeId:u.typeId,typeData:u.typeData,duration:u.duration},{def:e,instance:null}}let d=Va(s,l,n,r);if(d){let e=Ba(s,c,t?t.sourceId:``,d.allDay,d.hasEnd,n,a),r=Aa(e.defId,d.range,d.forcedStartTzo,d.forcedEndTzo);return o&&e.publicId&&o[e.publicId]&&(r.instanceId=o[e.publicId]),{def:e,instance:r}}return null}function Ra(e,t,n=za(t)){return Fi(e,n)}function za(e){return Object.assign(Object.assign(Object.assign({},$a),Ia),e.pluginHooks.eventRefiners)}function Ba(e,t,n,r,i,a,o){let s={title:e.title||``,groupId:e.groupId||``,publicId:e.id||``,url:e.url||``,recurringDef:null,defId:(o&&e.id?o[e.id]:``)||cr(),sourceId:n,allDay:r,hasEnd:i,interactive:e.interactive,ui:to(e,a),extendedProps:Object.assign(Object.assign({},e.extendedProps||{}),t)};for(let t of a.pluginHooks.eventDefMemberAdders)Object.assign(s,t(e));return Object.freeze(s.ui.classNames),Object.freeze(s.extendedProps),s}function Va(e,t,n,r){let{allDay:i}=e,a,o=null,s=!1,c,l=null,u=e.start==null?e.date:e.start;if(a=n.dateEnv.createMarkerMeta(u),a)o=a.marker;else if(!r)return null;return e.end!=null&&(c=n.dateEnv.createMarkerMeta(e.end)),i??=t??((!a||a.isTimeUnspecified)&&(!c||c.isTimeUnspecified)),i&&o&&(o=H(o)),c&&(l=c.marker,i&&(l=H(l)),o&&l<=o&&(l=null)),l?s=!0:r||(s=n.options.forceEventDuration||!1,l=n.dateEnv.add(o,i?n.options.defaultAllDayEventDuration:n.options.defaultTimedEventDuration)),{allDay:i,hasEnd:s,range:{start:o,end:l},forcedStartTzo:a?a.forcedTzo:null,forcedEndTzo:c?c.forcedTzo:null}}function Ha(e,t){let n=null;return e&&(n=e.defaultAllDay),n??=t.options.defaultAllDay,n}function Ua(e,t,n,r,i,a){let o=qa(),s=za(n);for(let c of e){let e=La(c,t,n,r,s,i,a);e&&Wa(e,o)}return o}function Wa(e,t=qa()){return t.defs[e.def.defId]=e.def,e.instance&&(t.instances[e.instance.instanceId]=e.instance),t}function Ga(e,t){let n=e.instances[t];if(n){let t=e.defs[n.defId],r=Ya(e,e=>Ka(t,e));return r.defs[t.defId]=t,r.instances[n.instanceId]=n,r}return qa()}function Ka(e,t){return!!(e.groupId&&e.groupId===t.groupId)}function qa(){return{defs:{},instances:{}}}function Ja(e,t){return{defs:Object.assign(Object.assign({},e.defs),t.defs),instances:Object.assign(Object.assign({},e.instances),t.instances)}}function Ya(e,t){let n=Ri(e.defs,t);return{defs:n,instances:Ri(e.instances,e=>n[e.defId])}}function Xa(e,t){let{defs:n,instances:r}=e,i={},a={};for(let e in n)t.defs[e]||(i[e]=n[e]);for(let e in r)!t.instances[e]&&i[r[e].defId]&&(a[e]=r[e]);return{defs:i,instances:a}}function Za(e,t){return Array.isArray(e)?Ua(e,null,t,!0):typeof e==`object`&&e?Ua([e],null,t,!0):e==null?null:String(e)}function Qa(e){return Array.isArray(e)?e:typeof e==`string`?e.split(/\s+/):[]}var $a={display:String,editable:Boolean,startEditable:Boolean,durationEditable:Boolean,constraint:K,overlap:K,allow:K,className:Qa,classNames:Qa,color:String,backgroundColor:String,borderColor:String,textColor:String},eo={display:null,startEditable:null,durationEditable:null,constraints:[],overlap:null,allows:[],backgroundColor:``,borderColor:``,textColor:``,classNames:[]};function to(e,t){let n=Za(e.constraint,t);return{display:e.display||null,startEditable:e.startEditable==null?e.editable:e.startEditable,durationEditable:e.durationEditable==null?e.editable:e.durationEditable,constraints:n==null?[]:[n],overlap:e.overlap==null?null:e.overlap,allows:e.allow==null?[]:[e.allow],backgroundColor:e.backgroundColor||e.color||``,borderColor:e.borderColor||e.color||``,textColor:e.textColor||``,classNames:(e.className||[]).concat(e.classNames||[])}}function no(e){return e.reduce(ro,eo)}function ro(e,t){return{display:t.display==null?e.display:t.display,startEditable:t.startEditable==null?e.startEditable:t.startEditable,durationEditable:t.durationEditable==null?e.durationEditable:t.durationEditable,constraints:e.constraints.concat(t.constraints),overlap:typeof t.overlap==`boolean`?t.overlap:e.overlap,allows:e.allows.concat(t.allows),backgroundColor:t.backgroundColor||e.backgroundColor,borderColor:t.borderColor||e.borderColor,textColor:t.textColor||e.textColor,classNames:e.classNames.concat(t.classNames)}}var io={id:String,defaultAllDay:Boolean,url:String,format:String,events:K,eventDataTransform:K,success:K,failure:K};function ao(e,t,n=oo(t)){let r;if(typeof e==`string`?r={url:e}:typeof e==`function`||Array.isArray(e)?r={events:e}:typeof e==`object`&&e&&(r=e),r){let{refined:i,extra:a}=Fi(r,n),o=so(i,t);if(o)return{_raw:e,isFetching:!1,latestFetchId:``,fetchRange:null,defaultAllDay:i.defaultAllDay,eventDataTransform:i.eventDataTransform,success:i.success,failure:i.failure,publicId:i.id||``,sourceId:cr(),sourceDefId:o.sourceDefId,meta:o.meta,ui:to(i,t),extendedProps:a}}return null}function oo(e){return Object.assign(Object.assign(Object.assign({},$a),io),e.pluginHooks.eventSourceRefiners)}function so(e,t){let n=t.pluginHooks.eventSourceDefs;for(let t=n.length-1;t>=0;--t){let r=n[t].parseMeta(e);if(r)return{sourceDefId:t,meta:r}}return null}function co(e,t,n,r,i){switch(t.type){case`RECEIVE_EVENTS`:return lo(e,n[t.sourceId],t.fetchId,t.fetchRange,t.rawEvents,i);case`RESET_RAW_EVENTS`:return uo(e,n[t.sourceId],t.rawEvents,r.activeRange,i);case`ADD_EVENTS`:return mo(e,t.eventStore,r?r.activeRange:null,i);case`RESET_EVENTS`:return t.eventStore;case`MERGE_EVENTS`:return Ja(e,t.eventStore);case`PREV`:case`NEXT`:case`CHANGE_DATE`:case`CHANGE_VIEW_TYPE`:return r?Ma(e,r.activeRange,i):e;case`REMOVE_EVENTS`:return Xa(e,t.eventStore);case`REMOVE_EVENT_SOURCE`:return go(e,t.sourceId);case`REMOVE_ALL_EVENT_SOURCES`:return Ya(e,e=>!e.sourceId);case`REMOVE_ALL_EVENTS`:return qa();default:return e}}function lo(e,t,n,r,i,a){if(t&&n===t.latestFetchId){let n=Ua(fo(i,t,a),t,a);return r&&(n=Ma(n,r,a)),Ja(go(e,t.sourceId),n)}return e}function uo(e,t,n,r,i){let{defIdMap:a,instanceIdMap:o}=_o(e);return Ma(Ua(fo(n,t,i),t,i,!1,a,o),r,i)}function fo(e,t,n){let r=n.options.eventDataTransform,i=t?t.eventDataTransform:null;return i&&(e=po(e,i)),r&&(e=po(e,r)),e}function po(e,t){let n;if(!t)n=e;else{n=[];for(let r of e){let e=t(r);e?n.push(e):e??n.push(r)}}return n}function mo(e,t,n,r){return n&&(t=Ma(t,n,r)),Ja(e,t)}function ho(e,t,n){let{defs:r}=e;return{defs:r,instances:zi(e.instances,e=>r[e.defId].allDay?e:Object.assign(Object.assign({},e),{range:{start:n.createMarker(t.toDate(e.range.start,e.forcedStartTzo)),end:n.createMarker(t.toDate(e.range.end,e.forcedEndTzo))},forcedStartTzo:n.canComputeOffset?null:e.forcedStartTzo,forcedEndTzo:n.canComputeOffset?null:e.forcedEndTzo}))}}function go(e,t){return Ya(e,e=>e.sourceId!==t)}function _o(e){let{defs:t,instances:n}=e,r={},i={};for(let e in t){let{publicId:n}=t[e];n&&(r[n]=e)}for(let e in n){let{publicId:r}=t[n[e].defId];r&&(i[r]=e)}return{defIdMap:r,instanceIdMap:i}}var vo=class{constructor(){this.handlers={},this.thisContext=null}setThisContext(e){this.thisContext=e}setOptions(e){this.options=e}on(e,t){yo(this.handlers,e,t)}off(e,t){bo(this.handlers,e,t)}trigger(e,...t){let n=this.handlers[e]||[],r=this.options&&this.options[e],i=[].concat(r||[],n);for(let e of i)e.apply(this.thisContext,t)}hasHandlers(e){return!!(this.handlers[e]&&this.handlers[e].length||this.options&&this.options[e])}};function yo(e,t,n){(e[t]||(e[t]=[])).push(n)}function bo(e,t,n){n?e[t]&&(e[t]=e[t].filter(e=>e!==n)):delete e[t]}var xo={startTime:`09:00`,endTime:`17:00`,daysOfWeek:[1,2,3,4,5],display:`inverse-background`,classNames:`fc-non-business`,groupId:`_businessHours`};function So(e,t){return Ua(Co(e),null,t)}function Co(e){let t;return t=e===!0?[{}]:Array.isArray(e)?e.filter(e=>e.daysOfWeek):typeof e==`object`&&e?[e]:[],t=t.map(e=>Object.assign(Object.assign({},xo),e)),t}function wo(e,t,n){n.emitter.trigger(`select`,Object.assign(Object.assign({},Eo(e,n)),{jsEvent:t?t.origEvent:null,view:n.viewApi||n.calendarApi.view}))}function To(e,t){t.emitter.trigger(`unselect`,{jsEvent:e?e.origEvent:null,view:t.viewApi||t.calendarApi.view})}function Eo(e,t){let n={};for(let r of t.pluginHooks.dateSpanTransforms)Object.assign(n,r(e,t));return Object.assign(n,$o(e,t.dateEnv)),n}function Do(e,t,n){let{dateEnv:r,options:i}=n,a=t;return e?(a=H(a),a=r.add(a,i.defaultAllDayEventDuration)):a=r.add(a,i.defaultTimedEventDuration),a}function Oo(e,t,n,r){let i=Ro(e.defs,t),a=qa();for(let t in e.defs){let o=e.defs[t];a.defs[t]=ko(o,i[t],n,r)}for(let t in e.instances){let o=e.instances[t],s=a.defs[o.defId];a.instances[t]=Ao(o,s,i[o.defId],n,r)}return a}function ko(e,t,n,r){let i=n.standardProps||{};i.hasEnd==null&&t.durationEditable&&(n.startDelta||n.endDelta)&&(i.hasEnd=!0);let a=Object.assign(Object.assign(Object.assign({},e),i),{ui:Object.assign(Object.assign({},e.ui),i.ui)});n.extendedProps&&(a.extendedProps=Object.assign(Object.assign({},a.extendedProps),n.extendedProps));for(let e of r.pluginHooks.eventDefMutationAppliers)e(a,n,r);return!a.hasEnd&&r.options.forceEventDuration&&(a.hasEnd=!0),a}function Ao(e,t,n,r,i){let{dateEnv:a}=i,o=r.standardProps&&r.standardProps.allDay===!0,s=r.standardProps&&r.standardProps.hasEnd===!1,c=Object.assign({},e);return o&&(c.range=Ea(c.range)),r.datesDelta&&n.startEditable&&(c.range={start:a.add(c.range.start,r.datesDelta),end:a.add(c.range.end,r.datesDelta)}),r.startDelta&&n.durationEditable&&(c.range={start:a.add(c.range.start,r.startDelta),end:c.range.end}),r.endDelta&&n.durationEditable&&(c.range={start:c.range.start,end:a.add(c.range.end,r.endDelta)}),s&&(c.range={start:c.range.start,end:Do(t.allDay,c.range.start,i)}),t.allDay&&(c.range={start:H(c.range.start),end:H(c.range.end)}),c.range.end<c.range.start&&(c.range.end=Do(t.allDay,c.range.start,i)),c}var jo=class{constructor(e,t){this.context=e,this.internalEventSource=t}remove(){this.context.dispatch({type:`REMOVE_EVENT_SOURCE`,sourceId:this.internalEventSource.sourceId})}refetch(){this.context.dispatch({type:`FETCH_EVENT_SOURCES`,sourceIds:[this.internalEventSource.sourceId],isRefetch:!0})}get id(){return this.internalEventSource.publicId}get url(){return this.internalEventSource.meta.url}get format(){return this.internalEventSource.meta.format}},Z=class e{constructor(e,t,n){this._context=e,this._def=t,this._instance=n||null}setProp(e,t){if(e in Fa)console.warn(`Could not set date-related prop 'name'. Use one of the date-related methods instead.`);else if(e===`id`)t=Pa[e](t),this.mutate({standardProps:{publicId:t}});else if(e in Pa)t=Pa[e](t),this.mutate({standardProps:{[e]:t}});else if(e in $a){let n=$a[e](t);n=e===`color`?{backgroundColor:t,borderColor:t}:e===`editable`?{startEditable:t,durationEditable:t}:{[e]:t},this.mutate({standardProps:{ui:n}})}else console.warn(`Could not set prop '${e}'. Use setExtendedProp instead.`)}setExtendedProp(e,t){this.mutate({extendedProps:{[e]:t}})}setStart(e,t={}){let{dateEnv:n}=this._context,r=n.createMarker(e);if(r&&this._instance){let e=this._instance.range,i=Oa(e.start,r,n,t.granularity);t.maintainDuration?this.mutate({datesDelta:i}):this.mutate({startDelta:i})}}setEnd(e,t={}){let{dateEnv:n}=this._context,r;if(!(e!=null&&(r=n.createMarker(e),!r))&&this._instance)if(r){let e=Oa(this._instance.range.end,r,n,t.granularity);this.mutate({endDelta:e})}else this.mutate({standardProps:{hasEnd:!1}})}setDates(e,t,n={}){let{dateEnv:r}=this._context,i={allDay:n.allDay},a=r.createMarker(e),o;if(a&&!(t!=null&&(o=r.createMarker(t),!o))&&this._instance){let e=this._instance.range;n.allDay===!0&&(e=Ea(e));let t=Oa(e.start,a,r,n.granularity);if(o){let a=Oa(e.end,o,r,n.granularity);xr(t,a)?this.mutate({datesDelta:t,standardProps:i}):this.mutate({startDelta:t,endDelta:a,standardProps:i})}else i.hasEnd=!1,this.mutate({datesDelta:t,standardProps:i})}}moveStart(e){let t=z(e);t&&this.mutate({startDelta:t})}moveEnd(e){let t=z(e);t&&this.mutate({endDelta:t})}moveDates(e){let t=z(e);t&&this.mutate({datesDelta:t})}setAllDay(e,t={}){let n={allDay:e},{maintainDuration:r}=t;r??=this._context.options.allDayMaintainDuration,this._def.allDay!==e&&(n.hasEnd=r),this.mutate({standardProps:n})}formatRange(e){let{dateEnv:t}=this._context,n=this._instance,r=G(e);return this._def.hasEnd?t.formatRange(n.range.start,n.range.end,r,{forcedStartTzo:n.forcedStartTzo,forcedEndTzo:n.forcedEndTzo}):t.format(n.range.start,r,{forcedTzo:n.forcedStartTzo})}mutate(t){let n=this._instance;if(n){let r=this._def,i=this._context,{eventStore:a}=i.getCurrentData(),o=Ga(a,n.instanceId);o=Oo(o,{"":{display:``,startEditable:!0,durationEditable:!0,constraints:[],overlap:null,allows:[],backgroundColor:``,borderColor:``,textColor:``,classNames:[]}},t,i);let s=new e(i,r,n);this._def=o.defs[r.defId],this._instance=o.instances[n.instanceId],i.dispatch({type:`MERGE_EVENTS`,eventStore:o}),i.emitter.trigger(`eventChange`,{oldEvent:s,event:this,relatedEvents:No(o,i,n),revert(){i.dispatch({type:`RESET_EVENTS`,eventStore:a})}})}}remove(){let e=this._context,t=Mo(this);e.dispatch({type:`REMOVE_EVENTS`,eventStore:t}),e.emitter.trigger(`eventRemove`,{event:this,relatedEvents:[],revert(){e.dispatch({type:`MERGE_EVENTS`,eventStore:t})}})}get source(){let{sourceId:e}=this._def;return e?new jo(this._context,this._context.getCurrentData().eventSources[e]):null}get start(){return this._instance?this._context.dateEnv.toDate(this._instance.range.start):null}get end(){return this._instance&&this._def.hasEnd?this._context.dateEnv.toDate(this._instance.range.end):null}get startStr(){let e=this._instance;return e?this._context.dateEnv.formatIso(e.range.start,{omitTime:this._def.allDay,forcedTzo:e.forcedStartTzo}):``}get endStr(){let e=this._instance;return e&&this._def.hasEnd?this._context.dateEnv.formatIso(e.range.end,{omitTime:this._def.allDay,forcedTzo:e.forcedEndTzo}):``}get id(){return this._def.publicId}get groupId(){return this._def.groupId}get allDay(){return this._def.allDay}get title(){return this._def.title}get url(){return this._def.url}get display(){return this._def.ui.display||`auto`}get startEditable(){return this._def.ui.startEditable}get durationEditable(){return this._def.ui.durationEditable}get constraint(){return this._def.ui.constraints[0]||null}get overlap(){return this._def.ui.overlap}get allow(){return this._def.ui.allows[0]||null}get backgroundColor(){return this._def.ui.backgroundColor}get borderColor(){return this._def.ui.borderColor}get textColor(){return this._def.ui.textColor}get classNames(){return this._def.ui.classNames}get extendedProps(){return this._def.extendedProps}toPlainObject(e={}){let t=this._def,{ui:n}=t,{startStr:r,endStr:i}=this,a={allDay:t.allDay};return t.title&&(a.title=t.title),r&&(a.start=r),i&&(a.end=i),t.publicId&&(a.id=t.publicId),t.groupId&&(a.groupId=t.groupId),t.url&&(a.url=t.url),n.display&&n.display!==`auto`&&(a.display=n.display),e.collapseColor&&n.backgroundColor&&n.backgroundColor===n.borderColor?a.color=n.backgroundColor:(n.backgroundColor&&(a.backgroundColor=n.backgroundColor),n.borderColor&&(a.borderColor=n.borderColor)),n.textColor&&(a.textColor=n.textColor),n.classNames.length&&(a.classNames=n.classNames),Object.keys(t.extendedProps).length&&(e.collapseExtendedProps?Object.assign(a,t.extendedProps):a.extendedProps=t.extendedProps),a}toJSON(){return this.toPlainObject()}};function Mo(e){let t=e._def,n=e._instance;return{defs:{[t.defId]:t},instances:n?{[n.instanceId]:n}:{}}}function No(e,t,n){let{defs:r,instances:i}=e,a=[],o=n?n.instanceId:``;for(let e in i){let n=i[e],s=r[n.defId];n.instanceId!==o&&a.push(new Z(t,s,n))}return a}function Po(e,t,n,r){let i={},a={},o={},s=[],c=[],l=Ro(e.defs,t);for(let t in e.defs){let n=e.defs[t];l[n.defId].display===`inverse-background`&&(n.groupId?(i[n.groupId]=[],o[n.groupId]||(o[n.groupId]=n)):a[t]=[])}for(let t in e.instances){let o=e.instances[t],u=e.defs[o.defId],d=l[u.defId],f=o.range,p=!u.allDay&&r?Da(f,r):f,m=Sa(p,n);m&&(d.display===`inverse-background`?u.groupId?i[u.groupId].push(m):a[o.defId].push(m):d.display!==`none`&&(d.display===`background`?s:c).push({def:u,ui:d,instance:o,range:m,isStart:p.start&&p.start.valueOf()===m.start.valueOf(),isEnd:p.end&&p.end.valueOf()===m.end.valueOf()}))}for(let e in i){let t=i[e],r=ba(t,n);for(let t of r){let n=o[e],r=l[n.defId];s.push({def:n,ui:r,instance:null,range:t,isStart:!1,isEnd:!1})}}for(let t in a){let r=a[t],i=ba(r,n);for(let n of i)s.push({def:e.defs[t],ui:l[t],instance:null,range:n,isStart:!1,isEnd:!1})}return{bg:s,fg:c}}function Fo(e){return e.ui.display===`background`||e.ui.display===`inverse-background`}function Io(e,t){e.fcSeg=t}function Lo(e){return e.fcSeg||e.parentNode.fcSeg||null}function Ro(e,t){return zi(e,e=>zo(e,t))}function zo(e,t){let n=[];return t[``]&&n.push(t[``]),t[e.defId]&&n.push(t[e.defId]),n.push(e.ui),no(n)}function Bo(e,t){let n=e.map(Vo);return n.sort((e,n)=>ur(e,n,t)),n.map(e=>e._seg)}function Vo(e){let{eventRange:t}=e,n=t.def,r=t.instance?t.instance.range:t.range,i=r.start?r.start.valueOf():0,a=r.end?r.end.valueOf():0;return Object.assign(Object.assign(Object.assign({},n.extendedProps),n),{id:n.publicId,start:i,end:a,duration:a-i,allDay:Number(n.allDay),_seg:e})}function Ho(e,t){let{pluginHooks:n}=t,r=n.isDraggableTransformers,{def:i,ui:a}=e.eventRange,o=a.startEditable;for(let e of r)o=e(o,i,a,t);return o}function Uo(e,t){return e.isStart&&e.eventRange.ui.durationEditable&&t.options.eventResizableFromStart}function Wo(e,t){return e.isEnd&&e.eventRange.ui.durationEditable}function Go(e,t,n,r,i,a,o){let{dateEnv:s,options:c}=n,{displayEventTime:l,displayEventEnd:u}=c,d=e.eventRange.def,f=e.eventRange.instance;l??=r!==!1,u??=i!==!1;let p=f.range.start,m=f.range.end,h=a||e.start||e.eventRange.range.start,g=o||e.end||e.eventRange.range.end,_=H(p).valueOf()===H(h).valueOf(),v=H(Nr(m,-1)).valueOf()===H(Nr(g,-1)).valueOf();return l&&!d.allDay&&(_||v)?(h=_?p:h,g=v?m:g,u&&d.hasEnd?s.formatRange(h,g,t,{forcedStartTzo:a?null:f.forcedStartTzo,forcedEndTzo:o?null:f.forcedEndTzo}):s.format(h,t,{forcedTzo:a?null:f.forcedStartTzo})):``}function Ko(e,t,n){let r=e.eventRange.range;return{isPast:r.end<=(n||t.start),isFuture:r.start>=(n||t.end),isToday:t&&wa(t,r.start)}}function qo(e){let t=[`fc-event`];return e.isMirror&&t.push(`fc-event-mirror`),e.isDraggable&&t.push(`fc-event-draggable`),(e.isStartResizable||e.isEndResizable)&&t.push(`fc-event-resizable`),e.isDragging&&t.push(`fc-event-dragging`),e.isResizing&&t.push(`fc-event-resizing`),e.isSelected&&t.push(`fc-event-selected`),e.isStart&&t.push(`fc-event-start`),e.isEnd&&t.push(`fc-event-end`),e.isPast&&t.push(`fc-event-past`),e.isToday&&t.push(`fc-event-today`),e.isFuture&&t.push(`fc-event-future`),t}function Jo(e){return e.instance?e.instance.instanceId:`${e.def.defId}:${e.range.start.toISOString()}`}function Yo(e,t){let{def:n,instance:r}=e.eventRange,{url:i}=n;if(i)return{href:i};let{emitter:a,options:o}=t,{eventInteractive:s}=o;return s??(s=n.interactive,s??=!!a.hasHandlers(`eventClick`)),s?or(e=>{a.trigger(`eventClick`,{el:e.target,event:new Z(t,n,r),jsEvent:e,view:t.viewApi})}):{}}var Xo={start:K,end:K,allDay:Boolean};function Zo(e,t,n){let r=Qo(e,t),{range:i}=r;if(!i.start)return null;if(!i.end){if(n==null)return null;i.end=t.add(i.start,n)}return r}function Qo(e,t){let{refined:n,extra:r}=Fi(e,Xo),i=n.start?t.createMarkerMeta(n.start):null,a=n.end?t.createMarkerMeta(n.end):null,{allDay:o}=n;return o??=i&&i.isTimeUnspecified&&(!a||a.isTimeUnspecified),Object.assign({range:{start:i?i.marker:null,end:a?a.marker:null},allDay:o},r)}function $o(e,t){return Object.assign(Object.assign({},ts(e.range,t,e.allDay)),{allDay:e.allDay})}function es(e,t,n){return Object.assign(Object.assign({},ts(e,t,n)),{timeZone:t.timeZone})}function ts(e,t,n){return{start:t.toDate(e.start),end:t.toDate(e.end),startStr:t.formatIso(e.start,{omitTime:n}),endStr:t.formatIso(e.end,{omitTime:n})}}function ns(e,t,n){let r=Ra({editable:!1},n),i=Ba(r.refined,r.extra,``,e.allDay,!0,n);return{def:i,ui:zo(i,t),instance:Aa(i.defId,e.range),range:e.range,isStart:!0,isEnd:!0}}function rs(e,t,n){let r=!1,i=function(e){r||(r=!0,t(e))},a=function(e){r||(r=!0,n(e))},o=e(i,a);o&&typeof o.then==`function`&&o.then(i,a)}var is=class extends Error{constructor(e,t){super(e),this.response=t}};function as(e,t,n){e=e.toUpperCase();let r={method:e};return e===`GET`?t+=(t.indexOf(`?`)===-1?`?`:`&`)+new URLSearchParams(n):(r.body=new URLSearchParams(n),r.headers={"Content-Type":`application/x-www-form-urlencoded`}),fetch(t,r).then(e=>{if(e.ok)return e.json().then(t=>[t,e],()=>{throw new is(`Failure parsing JSON`,e)});throw new is(`Request failed`,e)})}var os;function ss(){return os??=cs(),os}function cs(){if(typeof document>`u`)return!0;let e=document.createElement(`div`);e.style.position=`absolute`,e.style.top=`0px`,e.style.left=`0px`,e.innerHTML=`<table><tr><td><div></div></td></tr></table>`,e.querySelector(`table`).style.height=`100px`,e.querySelector(`div`).style.height=`100%`,document.body.appendChild(e);let t=e.querySelector(`div`).offsetHeight>0;return document.body.removeChild(e),t}var ls=class extends J{constructor(){super(...arguments),this.state={forPrint:!1},this.handleBeforePrint=()=>{ta(()=>{this.setState({forPrint:!0})})},this.handleAfterPrint=()=>{ta(()=>{this.setState({forPrint:!1})})}}render(){let{props:e}=this,{options:t}=e,{forPrint:n}=this.state,r=n||t.height===`auto`||t.contentHeight===`auto`,i=!r&&t.height!=null?t.height:``,a=[`fc`,n?`fc-media-print`:`fc-media-screen`,`fc-direction-${t.direction}`,e.theme.getClass(`root`)];return ss()||a.push(`fc-liquid-hack`),e.children(a,i,r,n)}componentDidMount(){let{emitter:e}=this.props;e.on(`_beforeprint`,this.handleBeforePrint),e.on(`_afterprint`,this.handleAfterPrint)}componentWillUnmount(){let{emitter:e}=this.props;e.off(`_beforeprint`,this.handleBeforePrint),e.off(`_afterprint`,this.handleAfterPrint)}},us=class{constructor(e){this.component=e.component,this.isHitComboAllowed=e.isHitComboAllowed||null}destroy(){}};function ds(e,t){return{component:e,el:t.el,useEventCenter:t.useEventCenter==null?!0:t.useEventCenter,isHitComboAllowed:t.isHitComboAllowed||null}}var fs={},ps=class extends I{constructor(e,t){super(e,t),this.handleRefresh=()=>{let e=this.computeTiming();e.state.nowDate.valueOf()!==this.state.nowDate.valueOf()&&this.setState(e.state),this.clearTimeout(),this.setTimeout(e.waitMs)},this.handleVisibilityChange=()=>{document.hidden||this.handleRefresh()},this.state=this.computeTiming().state}render(){let{props:e,state:t}=this;return e.children(t.nowDate,t.todayRange)}componentDidMount(){this.setTimeout(),this.context.nowManager.addResetListener(this.handleRefresh),document.addEventListener(`visibilitychange`,this.handleVisibilityChange)}componentDidUpdate(e){e.unit!==this.props.unit&&(this.clearTimeout(),this.setTimeout())}componentWillUnmount(){this.clearTimeout(),this.context.nowManager.removeResetListener(this.handleRefresh),document.removeEventListener(`visibilitychange`,this.handleVisibilityChange)}computeTiming(){let{props:e,context:t}=this,n=t.nowManager.getDateMarker(),{nowIndicatorSnap:r}=t.options;r===`auto`&&(r=/year|month|week|day/.test(e.unit)||(e.unitValue||1)===1);let i,a;return r?(i=t.dateEnv.startOf(n,e.unit),a=t.dateEnv.add(i,z(1,e.unit)).valueOf()-n.valueOf()):(i=n,a=1e3*60),a=Math.min(1e3*60*60*24,a),{state:{nowDate:i,todayRange:ms(i)},waitMs:a}}setTimeout(e=this.computeTiming().waitMs){this.timeoutId=setTimeout(()=>{let e=this.computeTiming();this.setState(e.state,()=>{this.setTimeout(e.waitMs)})},e)}clearTimeout(){this.timeoutId&&clearTimeout(this.timeoutId)}};ps.contextType=aa;function ms(e){let t=H(e);return{start:t,end:V(t,1)}}var hs=class{getCurrentData(){return this.currentDataManager.getCurrentData()}dispatch(e){this.currentDataManager.dispatch(e)}get view(){return this.getCurrentData().viewApi}batchRendering(e){e()}updateSize(){this.trigger(`_resize`,!0)}setOption(e,t){this.dispatch({type:`SET_OPTION`,optionName:e,rawOptionValue:t})}getOption(e){return this.currentDataManager.currentCalendarOptionsInput[e]}getAvailableLocaleCodes(){return Object.keys(this.getCurrentData().availableRawLocales)}on(e,t){let{currentDataManager:n}=this;n.currentCalendarOptionsRefiners[e]?n.emitter.on(e,t):console.warn(`Unknown listener name '${e}'`)}off(e,t){this.currentDataManager.emitter.off(e,t)}trigger(e,...t){this.currentDataManager.emitter.trigger(e,...t)}changeView(e,t){this.batchRendering(()=>{if(this.unselect(),t)if(t.start&&t.end)this.dispatch({type:`CHANGE_VIEW_TYPE`,viewType:e}),this.dispatch({type:`SET_OPTION`,optionName:`visibleRange`,rawOptionValue:t});else{let{dateEnv:n}=this.getCurrentData();this.dispatch({type:`CHANGE_VIEW_TYPE`,viewType:e,dateMarker:n.createMarker(t)})}else this.dispatch({type:`CHANGE_VIEW_TYPE`,viewType:e})})}zoomTo(e,t){let n=this.getCurrentData(),r;t||=`day`,r=n.viewSpecs[t]||this.getUnitViewSpec(t),this.unselect(),r?this.dispatch({type:`CHANGE_VIEW_TYPE`,viewType:r.type,dateMarker:e}):this.dispatch({type:`CHANGE_DATE`,dateMarker:e})}getUnitViewSpec(e){let{viewSpecs:t,toolbarConfig:n}=this.getCurrentData(),r=[].concat(n.header?n.header.viewsWithButtons:[],n.footer?n.footer.viewsWithButtons:[]),i,a;for(let e in t)r.push(e);for(i=0;i<r.length;i+=1)if(a=t[r[i]],a&&a.singleUnit===e)return a;return null}prev(){this.unselect(),this.dispatch({type:`PREV`})}next(){this.unselect(),this.dispatch({type:`NEXT`})}prevYear(){let e=this.getCurrentData();this.unselect(),this.dispatch({type:`CHANGE_DATE`,dateMarker:e.dateEnv.addYears(e.currentDate,-1)})}nextYear(){let e=this.getCurrentData();this.unselect(),this.dispatch({type:`CHANGE_DATE`,dateMarker:e.dateEnv.addYears(e.currentDate,1)})}today(){let e=this.getCurrentData();this.unselect(),this.dispatch({type:`CHANGE_DATE`,dateMarker:e.nowManager.getDateMarker()})}gotoDate(e){let t=this.getCurrentData();this.unselect(),this.dispatch({type:`CHANGE_DATE`,dateMarker:t.dateEnv.createMarker(e)})}incrementDate(e){let t=this.getCurrentData(),n=z(e);n&&(this.unselect(),this.dispatch({type:`CHANGE_DATE`,dateMarker:t.dateEnv.add(t.currentDate,n)}))}getDate(){let e=this.getCurrentData();return e.dateEnv.toDate(e.currentDate)}formatDate(e,t){let{dateEnv:n}=this.getCurrentData();return n.format(n.createMarker(e),G(t))}formatRange(e,t,n){let{dateEnv:r}=this.getCurrentData();return r.formatRange(r.createMarker(e),r.createMarker(t),G(n),n)}formatIso(e,t){let{dateEnv:n}=this.getCurrentData();return n.formatIso(n.createMarker(e),{omitTime:t})}select(e,t){let n;n=t==null?e.start==null?{start:e,end:null}:e:{start:e,end:t};let r=this.getCurrentData(),i=Zo(n,r.dateEnv,z({days:1}));i&&(this.dispatch({type:`SELECT_DATES`,selection:i}),wo(i,null,r))}unselect(e){let t=this.getCurrentData();t.dateSelection&&(this.dispatch({type:`UNSELECT_DATES`}),To(e,t))}addEvent(e,t){if(e instanceof Z){let t=e._def,n=e._instance;return this.getCurrentData().eventStore.defs[t.defId]||(this.dispatch({type:`ADD_EVENTS`,eventStore:Wa({def:t,instance:n})}),this.triggerEventAdd(e)),e}let n=this.getCurrentData(),r;if(t instanceof jo)r=t.internalEventSource;else if(typeof t==`boolean`)t&&([r]=Vi(n.eventSources));else if(t!=null){let e=this.getEventSourceById(t);if(!e)return console.warn(`Could not find an event source with ID "${t}"`),null;r=e.internalEventSource}let i=La(e,r,n,!1);if(i){let e=new Z(n,i.def,i.def.recurringDef?null:i.instance);return this.dispatch({type:`ADD_EVENTS`,eventStore:Wa(i)}),this.triggerEventAdd(e),e}return null}triggerEventAdd(e){let{emitter:t}=this.getCurrentData();t.trigger(`eventAdd`,{event:e,relatedEvents:[],revert:()=>{this.dispatch({type:`REMOVE_EVENTS`,eventStore:Mo(e)})}})}getEventById(e){let t=this.getCurrentData(),{defs:n,instances:r}=t.eventStore;e=String(e);for(let i in n){let a=n[i];if(a.publicId===e){if(a.recurringDef)return new Z(t,a,null);for(let e in r){let n=r[e];if(n.defId===a.defId)return new Z(t,a,n)}}}return null}getEvents(){let e=this.getCurrentData();return No(e.eventStore,e)}removeAllEvents(){this.dispatch({type:`REMOVE_ALL_EVENTS`})}getEventSources(){let e=this.getCurrentData(),t=e.eventSources,n=[];for(let r in t)n.push(new jo(e,t[r]));return n}getEventSourceById(e){let t=this.getCurrentData(),n=t.eventSources;e=String(e);for(let r in n)if(n[r].publicId===e)return new jo(t,n[r]);return null}addEventSource(e){let t=this.getCurrentData();if(e instanceof jo)return t.eventSources[e.internalEventSource.sourceId]||this.dispatch({type:`ADD_EVENT_SOURCES`,sources:[e.internalEventSource]}),e;let n=ao(e,t);return n?(this.dispatch({type:`ADD_EVENT_SOURCES`,sources:[n]}),new jo(t,n)):null}removeAllEventSources(){this.dispatch({type:`REMOVE_ALL_EVENT_SOURCES`})}refetchEvents(){this.dispatch({type:`FETCH_EVENT_SOURCES`,isRefetch:!0})}scrollToTime(e){let t=z(e);t&&this.trigger(`_scrollRequest`,{time:t})}};function gs(e,t){let n={left:Math.max(e.left,t.left),right:Math.min(e.right,t.right),top:Math.max(e.top,t.top),bottom:Math.min(e.bottom,t.bottom)};return n.left<n.right&&n.top<n.bottom?n:!1}var _s=qa(),vs=class{constructor(){this.getKeysForEventDefs=W(this._getKeysForEventDefs),this.splitDateSelection=W(this._splitDateSpan),this.splitEventStore=W(this._splitEventStore),this.splitIndividualUi=W(this._splitIndividualUi),this.splitEventDrag=W(this._splitInteraction),this.splitEventResize=W(this._splitInteraction),this.eventUiBuilders={}}splitProps(e){let t=this.getKeyInfo(e),n=this.getKeysForEventDefs(e.eventStore),r=this.splitDateSelection(e.dateSelection),i=this.splitIndividualUi(e.eventUiBases,n),a=this.splitEventStore(e.eventStore,n),o=this.splitEventDrag(e.eventDrag),s=this.splitEventResize(e.eventResize),c={};this.eventUiBuilders=zi(t,(e,t)=>this.eventUiBuilders[t]||W(ys));for(let n in t){let l=t[n],u=a[n]||_s,d=this.eventUiBuilders[n];c[n]={businessHours:l.businessHours||e.businessHours,dateSelection:r[n]||null,eventStore:u,eventUiBases:d(e.eventUiBases[``],l.ui,i[n]),eventSelection:u.instances[e.eventSelection]?e.eventSelection:``,eventDrag:o[n]||null,eventResize:s[n]||null}}return c}_splitDateSpan(e){let t={};if(e){let n=this.getKeysForDateSpan(e);for(let r of n)t[r]=e}return t}_getKeysForEventDefs(e){return zi(e.defs,e=>this.getKeysForEventDef(e))}_splitEventStore(e,t){let{defs:n,instances:r}=e,i={};for(let e in n)for(let r of t[e])i[r]||(i[r]=qa()),i[r].defs[e]=n[e];for(let e in r){let n=r[e];for(let r of t[n.defId])i[r]&&(i[r].instances[e]=n)}return i}_splitIndividualUi(e,t){let n={};for(let r in e)if(r)for(let i of t[r])n[i]||(n[i]={}),n[i][r]=e[r];return n}_splitInteraction(e){let t={};if(e){let n=this._splitEventStore(e.affectedEvents,this._getKeysForEventDefs(e.affectedEvents)),r=this._getKeysForEventDefs(e.mutatedEvents),i=this._splitEventStore(e.mutatedEvents,r),a=r=>{t[r]||(t[r]={affectedEvents:n[r]||_s,mutatedEvents:i[r]||_s,isEvent:e.isEvent})};for(let e in n)a(e);for(let e in i)a(e)}return t}};function ys(e,t,n){let r=[];e&&r.push(e),t&&r.push(t);let i={"":no(r)};return n&&Object.assign(i,n),i}function bs(e,t,n,r){return{dow:e.getUTCDay(),isDisabled:!!(r&&(!r.activeRange||!wa(r.activeRange,e))),isOther:!!(r&&!wa(r.currentRange,e)),isToday:!!(t&&wa(t,e)),isPast:!!(n?e<n:t&&e<t.start),isFuture:!!(n?e>n:t&&e>=t.end)}}function xs(e,t){let n=[`fc-day`,`fc-day-${jr[e.dow]}`];return e.isDisabled?n.push(`fc-day-disabled`):(e.isToday&&(n.push(`fc-day-today`),n.push(t.getClass(`today`))),e.isPast&&n.push(`fc-day-past`),e.isFuture&&n.push(`fc-day-future`),e.isOther&&n.push(`fc-day-other`)),n}var Ss=G({year:`numeric`,month:`long`,day:`numeric`}),Cs=G({week:`long`});function ws(e,t,n=`day`,r=!0){let{dateEnv:i,options:a,calendarApi:o}=e,s=i.format(t,n===`week`?Cs:Ss);if(a.navLinks){let e=i.toDate(t),c=e=>{let r=n===`day`?a.navLinkDayClick:n===`week`?a.navLinkWeekClick:null;typeof r==`function`?r.call(o,i.toDate(t),e):(typeof r==`string`&&(n=r),o.zoomTo(t,n))};return Object.assign({title:mr(a.navLinkHint,[s,e],s),"data-navlink":``},r?ar(c):{onClick:c})}return{"aria-label":s}}var Ts;function Es(){return Ts||=Ds(),Ts}function Ds(){let e=document.createElement(`div`);e.style.overflow=`scroll`,e.style.position=`absolute`,e.style.top=`-9999px`,e.style.left=`-9999px`,document.body.appendChild(e);let t=Os(e);return document.body.removeChild(e),t}function Os(e){return{x:e.offsetHeight-e.clientHeight,y:e.offsetWidth-e.clientWidth}}function ks(e){let t=As(e),n=e.getBoundingClientRect();for(let e of t){let t=gs(n,e.getBoundingClientRect());if(t)n=t;else return null}return n}function As(e){let t=[];for(;e instanceof HTMLElement;){let n=window.getComputedStyle(e);if(n.position===`fixed`)break;/(auto|scroll)/.test(n.overflow+n.overflowY+n.overflowX)&&t.push(e),e=e.parentNode}return t}var js=class{constructor(e,t,n,r){this.els=t;let i=this.originClientRect=e.getBoundingClientRect();n&&this.buildElHorizontals(i.left),r&&this.buildElVerticals(i.top)}buildElHorizontals(e){let t=[],n=[];for(let r of this.els){let i=r.getBoundingClientRect();t.push(i.left-e),n.push(i.right-e)}this.lefts=t,this.rights=n}buildElVerticals(e){let t=[],n=[];for(let r of this.els){let i=r.getBoundingClientRect();t.push(i.top-e),n.push(i.bottom-e)}this.tops=t,this.bottoms=n}leftToIndex(e){let{lefts:t,rights:n}=this,r=t.length,i;for(i=0;i<r;i+=1)if(e>=t[i]&&e<n[i])return i}topToIndex(e){let{tops:t,bottoms:n}=this,r=t.length,i;for(i=0;i<r;i+=1)if(e>=t[i]&&e<n[i])return i}getWidth(e){return this.rights[e]-this.lefts[e]}getHeight(e){return this.bottoms[e]-this.tops[e]}similarTo(e){return Ms(this.tops||[],e.tops||[])&&Ms(this.bottoms||[],e.bottoms||[])&&Ms(this.lefts||[],e.lefts||[])&&Ms(this.rights||[],e.rights||[])}};function Ms(e,t){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(Math.round(e[r])!==Math.round(t[r]))return!1;return!0}var Q=class extends J{constructor(){super(...arguments),this.uid=cr()}prepareHits(){}queryHit(e,t,n,r){return null}isValidSegDownEl(e){return!this.props.eventDrag&&!this.props.eventResize&&!R(e,`.fc-event-mirror`)}isValidDateDownEl(e){return!R(e,`.fc-event:not(.fc-bg-event)`)&&!R(e,`.fc-more-link`)&&!R(e,`a[data-navlink]`)&&!R(e,`.fc-popover`)}},Ns=class{constructor(e=e=>e.thickness||1){this.getEntryThickness=e,this.strictOrder=!1,this.allowReslicing=!1,this.maxCoord=-1,this.maxStackCnt=-1,this.levelCoords=[],this.entriesByLevel=[],this.stackCnts={}}addSegs(e){let t=[];for(let n of e)this.insertEntry(n,t);return t}insertEntry(e,t){let n=this.findInsertion(e);this.isInsertionValid(n,e)?this.insertEntryAt(e,n):this.handleInvalidInsertion(n,e,t)}isInsertionValid(e,t){return(this.maxCoord===-1||e.levelCoord+this.getEntryThickness(t)<=this.maxCoord)&&(this.maxStackCnt===-1||e.stackCnt<this.maxStackCnt)}handleInvalidInsertion(e,t,n){if(this.allowReslicing&&e.touchingEntry){let r=Object.assign(Object.assign({},t),{span:Rs(t.span,e.touchingEntry.span)});n.push(r),this.splitEntry(t,e.touchingEntry,n)}else n.push(t)}splitEntry(e,t,n){let r=e.span,i=t.span;r.start<i.start&&this.insertEntry({index:e.index,thickness:e.thickness,span:{start:r.start,end:i.start}},n),r.end>i.end&&this.insertEntry({index:e.index,thickness:e.thickness,span:{start:i.end,end:r.end}},n)}insertEntryAt(e,t){let{entriesByLevel:n,levelCoords:r}=this;t.lateral===-1?(zs(r,t.level,t.levelCoord),zs(n,t.level,[e])):zs(n[t.level],t.lateral,e),this.stackCnts[Fs(e)]=t.stackCnt}findInsertion(e){let{levelCoords:t,entriesByLevel:n,strictOrder:r,stackCnts:i}=this,a=t.length,o=0,s=-1,c=-1,l=null,u=0;for(let d=0;d<a;d+=1){let a=t[d];if(!r&&a>=o+this.getEntryThickness(e))break;let f=n[d],p,m=Bs(f,e.span.start,Ps),h=m[0]+m[1];for(;(p=f[h])&&p.span.start<e.span.end;){let e=a+this.getEntryThickness(p);e>o&&(o=e,l=p,s=d,c=h),e===o&&(u=Math.max(u,i[Fs(p)]+1)),h+=1}}let d=0;if(l)for(d=s+1;d<a&&t[d]<o;)d+=1;let f=-1;return d<a&&t[d]===o&&(f=Bs(n[d],e.span.end,Ps)[0]),{touchingLevel:s,touchingLateral:c,touchingEntry:l,stackCnt:u,levelCoord:o,level:d,lateral:f}}toRects(){let{entriesByLevel:e,levelCoords:t}=this,n=e.length,r=[];for(let i=0;i<n;i+=1){let n=e[i],a=t[i];for(let e of n)r.push(Object.assign(Object.assign({},e),{thickness:this.getEntryThickness(e),levelCoord:a}))}return r}};function Ps(e){return e.span.end}function Fs(e){return e.index+`:`+e.span.start}function Is(e){let t=[];for(let n of e){let e=[],r={span:n.span,entries:[n]};for(let n of t)Rs(n.span,r.span)?r={entries:n.entries.concat(r.entries),span:Ls(n.span,r.span)}:e.push(n);e.push(r),t=e}return t}function Ls(e,t){return{start:Math.min(e.start,t.start),end:Math.max(e.end,t.end)}}function Rs(e,t){let n=Math.max(e.start,t.start),r=Math.min(e.end,t.end);return n<r?{start:n,end:r}:null}function zs(e,t,n){e.splice(t,0,n)}function Bs(e,t,n){let r=0,i=e.length;if(!i||t<n(e[r]))return[0,0];if(t>n(e[i-1]))return[i,0];for(;r<i;){let a=Math.floor(r+(i-r)/2),o=n(e[a]);if(t<o)i=a;else if(t>o)r=a+1;else return[a,1]}return[r,0]}function Vs(e,t){return G(!e||t>10?{weekday:`short`}:t>1?{weekday:`short`,month:`numeric`,day:`numeric`,omitCommas:!0}:{weekday:`long`})}var Hs=`fc-col-header-cell`;function Us(e){return e.text}var Ws=class extends J{render(){let{dateEnv:e,options:t,theme:n,viewApi:r}=this.context,{props:i}=this,{date:a,dateProfile:o}=i,s=bs(a,i.todayRange,null,o),c=[Hs].concat(xs(s,n)),l=e.format(a,i.dayHeaderFormat),u=!s.isDisabled&&i.colCnt>1?ws(this.context,a):{},d=e.toDate(a);e.namedTimeZoneImpl&&(d=Nr(d,36e5));let f=Object.assign(Object.assign(Object.assign({date:d,view:r},i.extraRenderProps),{text:l}),s);return N(X,{elTag:`th`,elClasses:c,elAttrs:Object.assign({role:`columnheader`,colSpan:i.colSpan,"data-date":s.isDisabled?void 0:ei(a)},i.extraDataAttrs),renderProps:f,generatorName:`dayHeaderContent`,customGenerator:t.dayHeaderContent,defaultGenerator:Us,classNameGenerator:t.dayHeaderClassNames,didMount:t.dayHeaderDidMount,willUnmount:t.dayHeaderWillUnmount},e=>N(`div`,{className:`fc-scrollgrid-sync-inner`},!s.isDisabled&&N(e,{elTag:`a`,elAttrs:u,elClasses:[`fc-col-header-cell-cushion`,i.isSticky&&`fc-sticky`]})))}},Gs=G({weekday:`long`}),Ks=class extends J{render(){let{props:e}=this,{dateEnv:t,theme:n,viewApi:r,options:i}=this.context,a=V(new Date(2592e5),e.dow),o={dow:e.dow,isDisabled:!1,isFuture:!1,isPast:!1,isToday:!1,isOther:!1},s=t.format(a,e.dayHeaderFormat),c=Object.assign(Object.assign(Object.assign(Object.assign({date:a},o),{view:r}),e.extraRenderProps),{text:s});return N(X,{elTag:`th`,elClasses:[Hs,...xs(o,n),...e.extraClassNames||[]],elAttrs:Object.assign({role:`columnheader`,colSpan:e.colSpan},e.extraDataAttrs),renderProps:c,generatorName:`dayHeaderContent`,customGenerator:i.dayHeaderContent,defaultGenerator:Us,classNameGenerator:i.dayHeaderClassNames,didMount:i.dayHeaderDidMount,willUnmount:i.dayHeaderWillUnmount},n=>N(`div`,{className:`fc-scrollgrid-sync-inner`},N(n,{elTag:`a`,elClasses:[`fc-col-header-cell-cushion`,e.isSticky&&`fc-sticky`],elAttrs:{"aria-label":t.format(a,Gs)}})))}},qs=class extends J{constructor(){super(...arguments),this.createDayHeaderFormatter=W(Js)}render(){let{context:e}=this,{dates:t,dateProfile:n,datesRepDistinctDays:r,renderIntro:i}=this.props,a=this.createDayHeaderFormatter(e.options.dayHeaderFormat,r,t.length);return N(ps,{unit:`day`},(e,o)=>N(`tr`,{role:`row`},i&&i(`day`),t.map(e=>r?N(Ws,{key:e.toISOString(),date:e,dateProfile:n,todayRange:o,colCnt:t.length,dayHeaderFormat:a}):N(Ks,{key:e.getUTCDay(),dow:e.getUTCDay(),dayHeaderFormat:a}))))}};function Js(e,t,n){return e||Vs(t,n)}var Ys=class{constructor(e,t){let n=e.start,{end:r}=e,i=[],a=[],o=-1;for(;n<r;)t.isHiddenDay(n)?i.push(o+.5):(o+=1,i.push(o),a.push(n)),n=V(n,1);this.dates=a,this.indices=i,this.cnt=a.length}sliceRange(e){let t=this.getDateDayIndex(e.start),n=this.getDateDayIndex(V(e.end,-1)),r=Math.max(0,t),i=Math.min(this.cnt-1,n);return r=Math.ceil(r),i=Math.floor(i),r<=i?{firstIndex:r,lastIndex:i,isStart:t===r,isEnd:n===i}:null}getDateDayIndex(e){let{indices:t}=this,n=Math.floor(Fr(this.dates[0],e));return n<0?t[0]-1:n>=t.length?t[t.length-1]+1:t[n]}},Xs=class{constructor(e,t){let{dates:n}=e,r,i,a;if(t){for(i=n[0].getUTCDay(),r=1;r<n.length&&n[r].getUTCDay()!==i;r+=1);a=Math.ceil(n.length/r)}else a=1,r=n.length;this.rowCnt=a,this.colCnt=r,this.daySeries=e,this.cells=this.buildCells(),this.headerDates=this.buildHeaderDates()}buildCells(){let e=[];for(let t=0;t<this.rowCnt;t+=1){let n=[];for(let e=0;e<this.colCnt;e+=1)n.push(this.buildCell(t,e));e.push(n)}return e}buildCell(e,t){let n=this.daySeries.dates[e*this.colCnt+t];return{key:n.toISOString(),date:n}}buildHeaderDates(){let e=[];for(let t=0;t<this.colCnt;t+=1)e.push(this.cells[0][t].date);return e}sliceRange(e){let{colCnt:t}=this,n=this.daySeries.sliceRange(e),r=[];if(n){let{firstIndex:e,lastIndex:i}=n,a=e;for(;a<=i;){let o=Math.floor(a/t),s=Math.min((o+1)*t,i+1);r.push({row:o,firstCol:a%t,lastCol:(s-1)%t,isStart:n.isStart&&a===e,isEnd:n.isEnd&&s-1===i}),a=s}}return r}},Zs=class{constructor(){this.sliceBusinessHours=W(this._sliceBusinessHours),this.sliceDateSelection=W(this._sliceDateSpan),this.sliceEventStore=W(this._sliceEventStore),this.sliceEventDrag=W(this._sliceInteraction),this.sliceEventResize=W(this._sliceInteraction),this.forceDayIfListItem=!1}sliceProps(e,t,n,r,...i){let{eventUiBases:a}=e,o=this.sliceEventStore(e.eventStore,a,t,n,...i);return{dateSelectionSegs:this.sliceDateSelection(e.dateSelection,t,n,a,r,...i),businessHourSegs:this.sliceBusinessHours(e.businessHours,t,n,r,...i),fgEventSegs:o.fg,bgEventSegs:o.bg,eventDrag:this.sliceEventDrag(e.eventDrag,a,t,n,...i),eventResize:this.sliceEventResize(e.eventResize,a,t,n,...i),eventSelection:e.eventSelection}}sliceNowDate(e,t,n,r,...i){return this._sliceDateSpan({range:{start:e,end:Nr(e,1)},allDay:!1},t,n,{},r,...i)}_sliceBusinessHours(e,t,n,r,...i){return e?this._sliceEventStore(Ma(e,Qs(t,!!n),r),{},t,n,...i).bg:[]}_sliceEventStore(e,t,n,r,...i){if(e){let a=Po(e,t,Qs(n,!!r),r);return{bg:this.sliceEventRanges(a.bg,i),fg:this.sliceEventRanges(a.fg,i)}}return{bg:[],fg:[]}}_sliceInteraction(e,t,n,r,...i){if(!e)return null;let a=Po(e.mutatedEvents,t,Qs(n,!!r),r);return{segs:this.sliceEventRanges(a.fg,i),affectedInstances:e.affectedEvents.instances,isEvent:e.isEvent}}_sliceDateSpan(e,t,n,r,i,...a){if(!e)return[];let o=Qs(t,!!n),s=Sa(e.range,o);if(s){e=Object.assign(Object.assign({},e),{range:s});let t=ns(e,r,i),n=this.sliceRange(e.range,...a);for(let e of n)e.eventRange=t;return n}return[]}sliceEventRanges(e,t){let n=[];for(let r of e)n.push(...this.sliceEventRange(r,t));return n}sliceEventRange(e,t){let n=e.range;this.forceDayIfListItem&&e.ui.display===`list-item`&&(n={start:n.start,end:V(n.start,1)});let r=this.sliceRange(n,...t);for(let t of r)t.eventRange=e,t.isStart=e.isStart&&t.isStart,t.isEnd=e.isEnd&&t.isEnd;return r}};function Qs(e,t){let n=e.activeRange;return t?n:{start:Nr(n.start,e.slotMinTime.milliseconds),end:Nr(n.end,e.slotMaxTime.milliseconds-864e5)}}var $s=/^(visible|hidden)$/,ec=class extends J{constructor(){super(...arguments),this.handleEl=e=>{this.el=e,Y(this.props.elRef,e)}}render(){let{props:e}=this,{liquid:t,liquidIsAbsolute:n}=e,r=t&&n,i=[`fc-scroller`];return t&&(n?i.push(`fc-scroller-liquid-absolute`):i.push(`fc-scroller-liquid`)),N(`div`,{ref:this.handleEl,className:i.join(` `),style:{overflowX:e.overflowX,overflowY:e.overflowY,left:r&&-(e.overcomeLeft||0)||``,right:r&&-(e.overcomeRight||0)||``,bottom:r&&-(e.overcomeBottom||0)||``,marginLeft:!r&&-(e.overcomeLeft||0)||``,marginRight:!r&&-(e.overcomeRight||0)||``,marginBottom:!r&&-(e.overcomeBottom||0)||``,maxHeight:e.maxHeight||``}},e.children)}needsXScrolling(){if($s.test(this.props.overflowX))return!1;let{el:e}=this,t=this.el.getBoundingClientRect().width-this.getYScrollbarWidth(),{children:n}=e;for(let e=0;e<n.length;e+=1)if(n[e].getBoundingClientRect().width>t)return!0;return!1}needsYScrolling(){if($s.test(this.props.overflowY))return!1;let{el:e}=this,t=this.el.getBoundingClientRect().height-this.getXScrollbarWidth(),{children:n}=e;for(let e=0;e<n.length;e+=1)if(n[e].getBoundingClientRect().height>t)return!0;return!1}getXScrollbarWidth(){return $s.test(this.props.overflowX)?0:this.el.offsetHeight-this.el.clientHeight}getYScrollbarWidth(){return $s.test(this.props.overflowY)?0:this.el.offsetWidth-this.el.clientWidth}},$=class{constructor(e){this.masterCallback=e,this.currentMap={},this.depths={},this.callbackMap={},this.handleValue=(e,t)=>{let{depths:n,currentMap:r}=this,i=!1,a=!1;e===null?(--n[t],n[t]||(delete r[t],delete this.callbackMap[t],i=!0)):(i=t in r,r[t]=e,n[t]=(n[t]||0)+1,a=!0),this.masterCallback&&(i&&this.masterCallback(null,String(t)),a&&this.masterCallback(e,String(t)))}}createRef(e){let t=this.callbackMap[e];return t||=this.callbackMap[e]=t=>{this.handleValue(t,String(e))},t}collect(e,t,n){return qi(this.currentMap,e,t,n)}getAll(){return Vi(this.currentMap)}};function tc(e){let t=Yn(e,`.fc-scrollgrid-shrink`),n=0;for(let e of t)n=Math.max(n,gr(e));return Math.ceil(n)}function nc(e,t){return e.liquid&&t.liquid}function rc(e,t){return t.maxHeight!=null||nc(e,t)}function ic(e,t,n,r){let{expandRows:i}=n;return typeof t.content==`function`?t.content(n):N(`table`,{role:`presentation`,className:[t.tableClassName,e.syncRowHeights?`fc-scrollgrid-sync-table`:``].join(` `),style:{minWidth:n.tableMinWidth,width:n.clientWidth,height:i?n.clientHeight:``}},n.tableColGroupNode,N(r?`thead`:`tbody`,{role:`presentation`},typeof t.rowContent==`function`?t.rowContent(n):t.rowContent))}function ac(e,t){return Ar(e,t,q)}function oc(e,t){let n=[];for(let r of e){let e=r.span||1;for(let i=0;i<e;i+=1)n.push(N(`col`,{style:{width:r.width===`shrink`?sc(t):r.width||``,minWidth:r.minWidth||``}}))}return N(`colgroup`,{},...n)}function sc(e){return e??4}function cc(e){for(let t of e)if(t.width===`shrink`)return!0;return!1}function lc(e,t){let n=[`fc-scrollgrid`,t.theme.getClass(`table`)];return e&&n.push(`fc-scrollgrid-liquid`),n}function uc(e,t){let n=[`fc-scrollgrid-section`,`fc-scrollgrid-section-${e.type}`,e.className];return t&&e.liquid&&e.maxHeight==null&&n.push(`fc-scrollgrid-section-liquid`),e.isSticky&&n.push(`fc-scrollgrid-section-sticky`),n}function dc(e){return N(`div`,{className:`fc-scrollgrid-sticky-shim`,style:{width:e.clientWidth,minWidth:e.tableMinWidth}})}function fc(e){let{stickyHeaderDates:t}=e;return(t==null||t===`auto`)&&(t=e.height===`auto`||e.viewHeight===`auto`),t}function pc(e){let{stickyFooterScrollbar:t}=e;return(t==null||t===`auto`)&&(t=e.height===`auto`||e.viewHeight===`auto`),t}var mc=class extends J{constructor(){super(...arguments),this.processCols=W(e=>e,ac),this.renderMicroColGroup=W(oc),this.scrollerRefs=new $,this.scrollerElRefs=new $(this._handleScrollerEl.bind(this)),this.state={shrinkWidth:null,forceYScrollbars:!1,scrollerClientWidths:{},scrollerClientHeights:{}},this.handleSizing=()=>{this.safeSetState(Object.assign({shrinkWidth:this.computeShrinkWidth()},this.computeScrollerDims()))}}render(){let{props:e,state:t,context:n}=this,r=e.sections||[],i=this.processCols(e.cols),a=this.renderMicroColGroup(i,t.shrinkWidth),o=lc(e.liquid,n);e.collapsibleWidth&&o.push(`fc-scrollgrid-collapsible`);let s=r.length,c=0,l,u=[],d=[],f=[];for(;c<s&&(l=r[c]).type===`header`;)u.push(this.renderSection(l,a,!0)),c+=1;for(;c<s&&(l=r[c]).type===`body`;)d.push(this.renderSection(l,a,!1)),c+=1;for(;c<s&&(l=r[c]).type===`footer`;)f.push(this.renderSection(l,a,!0)),c+=1;let p=!ss(),m={role:`rowgroup`};return N(`table`,{role:`grid`,className:o.join(` `),style:{height:e.height}},!!(!p&&u.length)&&N(`thead`,m,...u),!!(!p&&d.length)&&N(`tbody`,m,...d),!!(!p&&f.length)&&N(`tfoot`,m,...f),p&&N(`tbody`,m,...u,...d,...f))}renderSection(e,t,n){return`outerContent`in e?N(F,{key:e.key},e.outerContent):N(`tr`,{key:e.key,role:`presentation`,className:uc(e,this.props.liquid).join(` `)},this.renderChunkTd(e,t,e.chunk,n))}renderChunkTd(e,t,n,r){if(`outerContent`in n)return n.outerContent;let{props:i}=this,{forceYScrollbars:a,scrollerClientWidths:o,scrollerClientHeights:s}=this.state,c=rc(i,e),l=nc(i,e),u=i.liquid?a?`scroll`:c?`auto`:`hidden`:`visible`,d=e.key,f=ic(e,n,{tableColGroupNode:t,tableMinWidth:``,clientWidth:!i.collapsibleWidth&&o[d]!==void 0?o[d]:null,clientHeight:s[d]===void 0?null:s[d],expandRows:e.expandRows,syncRowHeights:!1,rowSyncHeights:[],reportRowHeightChange:()=>{}},r);return N(r?`th`:`td`,{ref:n.elRef,role:`presentation`},N(`div`,{className:`fc-scroller-harness${l?` fc-scroller-harness-liquid`:``}`},N(ec,{ref:this.scrollerRefs.createRef(d),elRef:this.scrollerElRefs.createRef(d),overflowY:u,overflowX:i.liquid?`hidden`:`visible`,maxHeight:e.maxHeight,liquid:l,liquidIsAbsolute:!0},f)))}_handleScrollerEl(e,t){let n=hc(this.props.sections,t);n&&Y(n.chunk.scrollerElRef,e)}componentDidMount(){this.handleSizing(),this.context.addResizeHandler(this.handleSizing)}componentDidUpdate(){this.handleSizing()}componentWillUnmount(){this.context.removeResizeHandler(this.handleSizing)}computeShrinkWidth(){return cc(this.props.cols)?tc(this.scrollerElRefs.getAll()):0}computeScrollerDims(){let e=Es(),{scrollerRefs:t,scrollerElRefs:n}=this,r=!1,i={},a={};for(let e in t.currentMap){let n=t.currentMap[e];if(n&&n.needsYScrolling()){r=!0;break}}for(let t of this.props.sections){let o=t.key,s=n.currentMap[o];if(s){let t=s.parentNode;i[o]=Math.floor(t.getBoundingClientRect().width-(r?e.y:0)),a[o]=Math.floor(t.getBoundingClientRect().height)}}return{forceYScrollbars:r,scrollerClientWidths:i,scrollerClientHeights:a}}};mc.addStateEquality({scrollerClientWidths:q,scrollerClientHeights:q});function hc(e,t){for(let n of e)if(n.key===t)return n;return null}var gc=class extends J{constructor(){super(...arguments),this.buildPublicEvent=W((e,t,n)=>new Z(e,t,n)),this.handleEl=e=>{this.el=e,Y(this.props.elRef,e),e&&Io(e,this.props.seg)}}render(){let{props:e,context:t}=this,{options:n}=t,{seg:r}=e,{eventRange:i}=r,{ui:a}=i,o={event:this.buildPublicEvent(t,i.def,i.instance),view:t.viewApi,timeText:e.timeText,textColor:a.textColor,backgroundColor:a.backgroundColor,borderColor:a.borderColor,isDraggable:!e.disableDragging&&Ho(r,t),isStartResizable:!e.disableResizing&&Uo(r,t),isEndResizable:!e.disableResizing&&Wo(r),isMirror:!!(e.isDragging||e.isResizing||e.isDateSelecting),isStart:!!r.isStart,isEnd:!!r.isEnd,isPast:!!e.isPast,isFuture:!!e.isFuture,isToday:!!e.isToday,isSelected:!!e.isSelected,isDragging:!!e.isDragging,isResizing:!!e.isResizing};return N(X,{elRef:this.handleEl,elTag:e.elTag,elAttrs:e.elAttrs,elClasses:[...qo(o),...r.eventRange.ui.classNames,...e.elClasses||[]],elStyle:e.elStyle,renderProps:o,generatorName:`eventContent`,customGenerator:n.eventContent,defaultGenerator:e.defaultGenerator,classNameGenerator:n.eventClassNames,didMount:n.eventDidMount,willUnmount:n.eventWillUnmount},e.children)}componentDidUpdate(e){this.el&&this.props.seg!==e.seg&&Io(this.el,this.props.seg)}},_c=class extends J{render(){let{props:e,context:t}=this,{options:n}=t,{seg:r}=e,{ui:i}=r.eventRange,a=Go(r,n.eventTimeFormat||e.defaultTimeFormat,t,e.defaultDisplayEventTime,e.defaultDisplayEventEnd);return N(gc,Object.assign({},e,{elTag:`a`,elStyle:{borderColor:i.borderColor,backgroundColor:i.backgroundColor},elAttrs:Yo(r,t),defaultGenerator:vc,timeText:a}),(e,t)=>N(F,null,N(e,{elTag:`div`,elClasses:[`fc-event-main`],elStyle:{color:t.textColor}}),!!t.isStartResizable&&N(`div`,{className:`fc-event-resizer fc-event-resizer-start`}),!!t.isEndResizable&&N(`div`,{className:`fc-event-resizer fc-event-resizer-end`})))}};_c.addPropsEquality({seg:q});function vc(e){return N(`div`,{className:`fc-event-main-frame`},e.timeText&&N(`div`,{className:`fc-event-time`},e.timeText),N(`div`,{className:`fc-event-title-container`},N(`div`,{className:`fc-event-title fc-sticky`},e.event.title||N(F,null,`\xA0`))))}var yc=e=>N(aa.Consumer,null,t=>{let{options:n}=t,r={isAxis:e.isAxis,date:t.dateEnv.toDate(e.date),view:t.viewApi};return N(X,{elRef:e.elRef,elTag:e.elTag||`div`,elAttrs:e.elAttrs,elClasses:e.elClasses,elStyle:e.elStyle,renderProps:r,generatorName:`nowIndicatorContent`,customGenerator:n.nowIndicatorContent,classNameGenerator:n.nowIndicatorClassNames,didMount:n.nowIndicatorDidMount,willUnmount:n.nowIndicatorWillUnmount},e.children)}),bc=G({day:`numeric`}),xc=class extends J{constructor(){super(...arguments),this.refineRenderProps=ii(Cc)}render(){let{props:e,context:t}=this,{options:n}=t,r=this.refineRenderProps({date:e.date,dateProfile:e.dateProfile,todayRange:e.todayRange,isMonthStart:e.isMonthStart||!1,showDayNumber:e.showDayNumber,extraRenderProps:e.extraRenderProps,viewApi:t.viewApi,dateEnv:t.dateEnv,monthStartFormat:n.monthStartFormat});return N(X,{elRef:e.elRef,elTag:e.elTag,elAttrs:Object.assign(Object.assign({},e.elAttrs),r.isDisabled?{}:{"data-date":ei(e.date)}),elClasses:[...xs(r,t.theme),...e.elClasses||[]],elStyle:e.elStyle,renderProps:r,generatorName:`dayCellContent`,customGenerator:n.dayCellContent,defaultGenerator:e.defaultGenerator,classNameGenerator:r.isDisabled?void 0:n.dayCellClassNames,didMount:n.dayCellDidMount,willUnmount:n.dayCellWillUnmount},e.children)}};function Sc(e){return!!(e.dayCellContent||da(`dayCellContent`,e))}function Cc(e){let{date:t,dateEnv:n,dateProfile:r,isMonthStart:i}=e,a=bs(t,e.todayRange,null,r),o=e.showDayNumber?n.format(t,i?e.monthStartFormat:bc):``;return Object.assign(Object.assign(Object.assign({date:n.toDate(t),view:e.viewApi},a),{isMonthStart:i,dayNumberText:o}),e.extraRenderProps)}var wc=class extends J{render(){let{props:e}=this,{seg:t}=e;return N(gc,{elTag:`div`,elClasses:[`fc-bg-event`],elStyle:{backgroundColor:t.eventRange.ui.backgroundColor},defaultGenerator:Tc,seg:t,timeText:``,isDragging:!1,isResizing:!1,isDateSelecting:!1,isSelected:!1,isPast:e.isPast,isFuture:e.isFuture,isToday:e.isToday,disableDragging:!0,disableResizing:!0})}};function Tc(e){let{title:t}=e.event;return t&&N(`div`,{className:`fc-event-title`},e.event.title)}function Ec(e){return N(`div`,{className:`fc-${e}`})}var Dc=e=>N(aa.Consumer,null,t=>{let{dateEnv:n,options:r}=t,{date:i}=e,a=r.weekNumberFormat||e.defaultFormat,o={num:n.computeWeekNumber(i),text:n.format(i,a),date:i};return N(X,{elRef:e.elRef,elTag:e.elTag,elAttrs:e.elAttrs,elClasses:e.elClasses,elStyle:e.elStyle,renderProps:o,generatorName:`weekNumberContent`,customGenerator:r.weekNumberContent,defaultGenerator:Oc,classNameGenerator:r.weekNumberClassNames,didMount:r.weekNumberDidMount,willUnmount:r.weekNumberWillUnmount},e.children)});function Oc(e){return e.text}var kc=10,Ac=class extends J{constructor(){super(...arguments),this.state={titleId:tr()},this.handleRootEl=e=>{this.rootEl=e,this.props.elRef&&Y(this.props.elRef,e)},this.handleDocumentMouseDown=e=>{let t=$n(e);this.rootEl.contains(t)||this.handleCloseClick()},this.handleDocumentKeyDown=e=>{e.key===`Escape`&&this.handleCloseClick()},this.handleCloseClick=()=>{let{onClose:e}=this.props;e&&e()}}render(){let{theme:e,options:t}=this.context,{props:n,state:r}=this,i=[`fc-popover`,e.getClass(`popover`)].concat(n.extraClassNames||[]);return wn(N(`div`,Object.assign({},n.extraAttrs,{id:n.id,className:i.join(` `),"aria-labelledby":r.titleId,ref:this.handleRootEl}),N(`div`,{className:`fc-popover-header `+e.getClass(`popoverHeader`)},N(`span`,{className:`fc-popover-title`,id:r.titleId},n.title),N(`span`,{className:`fc-popover-close `+e.getIconClass(`close`),title:t.closeHint,onClick:this.handleCloseClick})),N(`div`,{className:`fc-popover-body `+e.getClass(`popoverContent`)},n.children)),n.parentEl)}componentDidMount(){document.addEventListener(`mousedown`,this.handleDocumentMouseDown),document.addEventListener(`keydown`,this.handleDocumentKeyDown),this.updateSize()}componentWillUnmount(){document.removeEventListener(`mousedown`,this.handleDocumentMouseDown),document.removeEventListener(`keydown`,this.handleDocumentKeyDown)}updateSize(){let{isRtl:e}=this.context,{alignmentEl:t,alignGridTop:n}=this.props,{rootEl:r}=this,i=ks(t);if(i){let a=r.getBoundingClientRect(),o=n?R(t,`.fc-scrollgrid`).getBoundingClientRect().top:i.top,s=e?i.right-a.width:i.left;o=Math.max(o,kc),s=Math.min(s,document.documentElement.clientWidth-kc-a.width),s=Math.max(s,kc);let c=r.offsetParent.getBoundingClientRect();Zn(r,{top:o-c.top,left:s-c.left})}}},jc=class extends Q{constructor(){super(...arguments),this.handleRootEl=e=>{this.rootEl=e,e?this.context.registerInteractiveComponent(this,{el:e,useEventCenter:!1}):this.context.unregisterInteractiveComponent(this)}}render(){let{options:e,dateEnv:t}=this.context,{props:n}=this,{startDate:r,todayRange:i,dateProfile:a}=n,o=t.format(r,e.dayPopoverFormat);return N(xc,{elRef:this.handleRootEl,date:r,dateProfile:a,todayRange:i},(t,r,i)=>N(Ac,{elRef:i.ref,id:n.id,title:o,extraClassNames:[`fc-more-popover`].concat(i.className||[]),extraAttrs:i,parentEl:n.parentEl,alignmentEl:n.alignmentEl,alignGridTop:n.alignGridTop,onClose:n.onClose},Sc(e)&&N(t,{elTag:`div`,elClasses:[`fc-more-popover-misc`]}),n.children))}queryHit(e,t,n,r){let{rootEl:i,props:a}=this;return e>=0&&e<n&&t>=0&&t<r?{dateProfile:a.dateProfile,dateSpan:Object.assign({allDay:!a.forceTimed,range:{start:a.startDate,end:a.endDate}},a.extraDateSpan),dayEl:i,rect:{left:0,top:0,right:n,bottom:r},layer:1}:null}},Mc=class extends J{constructor(){super(...arguments),this.state={isPopoverOpen:!1,popoverId:tr()},this.handleLinkEl=e=>{this.linkEl=e,this.props.elRef&&Y(this.props.elRef,e)},this.handleClick=e=>{let{props:t,context:n}=this,{moreLinkClick:r}=n.options,i=Pc(t).start;function a(e){let{def:t,instance:r,range:i}=e.eventRange;return{event:new Z(n,t,r),start:n.dateEnv.toDate(i.start),end:n.dateEnv.toDate(i.end),isStart:e.isStart,isEnd:e.isEnd}}typeof r==`function`&&(r=r({date:i,allDay:!!t.allDayDate,allSegs:t.allSegs.map(a),hiddenSegs:t.hiddenSegs.map(a),jsEvent:e,view:n.viewApi})),!r||r===`popover`?this.setState({isPopoverOpen:!0}):typeof r==`string`&&n.calendarApi.zoomTo(i,r)},this.handlePopoverClose=()=>{this.setState({isPopoverOpen:!1})}}render(){let{props:e,state:t}=this;return N(aa.Consumer,null,n=>{let{viewApi:r,options:i,calendarApi:a}=n,{moreLinkText:o}=i,{moreCnt:s}=e,c=Pc(e),l=typeof o==`function`?o.call(a,s):`+${s} ${o}`,u=mr(i.moreLinkHint,[s],l),d={num:s,shortText:`+${s}`,text:l,view:r};return N(F,null,!!e.moreCnt&&N(X,{elTag:e.elTag||`a`,elRef:this.handleLinkEl,elClasses:[...e.elClasses||[],`fc-more-link`],elStyle:e.elStyle,elAttrs:Object.assign(Object.assign(Object.assign({},e.elAttrs),ar(this.handleClick)),{title:u,"aria-expanded":t.isPopoverOpen,"aria-controls":t.isPopoverOpen?t.popoverId:``}),renderProps:d,generatorName:`moreLinkContent`,customGenerator:i.moreLinkContent,defaultGenerator:e.defaultGenerator||Nc,classNameGenerator:i.moreLinkClassNames,didMount:i.moreLinkDidMount,willUnmount:i.moreLinkWillUnmount},e.children),t.isPopoverOpen&&N(jc,{id:t.popoverId,startDate:c.start,endDate:c.end,dateProfile:e.dateProfile,todayRange:e.todayRange,extraDateSpan:e.extraDateSpan,parentEl:this.parentEl,alignmentEl:e.alignmentElRef?e.alignmentElRef.current:this.linkEl,alignGridTop:e.alignGridTop,forceTimed:e.forceTimed,onClose:this.handlePopoverClose},e.popoverContent()))})}componentDidMount(){this.updateParentEl()}componentDidUpdate(){this.updateParentEl()}updateParentEl(){this.linkEl&&(this.parentEl=R(this.linkEl,`.fc-view-harness`))}};function Nc(e){return e.text}function Pc(e){if(e.allDayDate)return{start:e.allDayDate,end:V(e.allDayDate,1)};let{hiddenSegs:t}=e;return{start:Fc(t),end:Lc(t)}}function Fc(e){return e.reduce(Ic).eventRange.range.start}function Ic(e,t){return e.eventRange.range.start<t.eventRange.range.start?e:t}function Lc(e){return e.reduce(Rc).eventRange.range.end}function Rc(e,t){return e.eventRange.range.end>t.eventRange.range.end?e:t}var zc=class{constructor(){this.handlers=[]}set(e){this.currentValue=e;for(let t of this.handlers)t(e)}subscribe(e){this.handlers.push(e),this.currentValue!==void 0&&e(this.currentValue)}},Bc=class extends zc{constructor(){super(...arguments),this.map=new Map}handle(e){let{map:t}=this,n=!1;e.isActive?(t.set(e.id,e),n=!0):t.has(e.id)&&(t.delete(e.id),n=!0),n&&this.set(t)}},Vc=[],Hc={code:`en`,week:{dow:0,doy:4},direction:`ltr`,buttonText:{prev:`prev`,next:`next`,prevYear:`prev year`,nextYear:`next year`,year:`year`,today:`today`,month:`month`,week:`week`,day:`day`,list:`list`},weekText:`W`,weekTextLong:`Week`,closeHint:`Close`,timeHint:`Time`,eventHint:`Event`,allDayText:`all-day`,moreLinkText:`more`,noEventsText:`No events to display`},Uc=Object.assign(Object.assign({},Hc),{buttonHints:{prev:`Previous $0`,next:`Next $0`,today(e,t){return t===`day`?`Today`:`This ${e}`}},viewHint:`$0 view`,navLinkHint:`Go to $0`,moreLinkHint(e){return`Show ${e} more event${e===1?``:`s`}`}});function Wc(e){let t=e.length>0?e[0].code:`en`,n=Vc.concat(e),r={en:Uc};for(let e of n)r[e.code]=e;return{map:r,defaultCode:t}}function Gc(e,t){return typeof e==`object`&&!Array.isArray(e)?Jc(e.code,[e.code],e):Kc(e,t)}function Kc(e,t){let n=[].concat(e||[]);return Jc(e,n,qc(n,t)||Uc)}function qc(e,t){for(let n=0;n<e.length;n+=1){let r=e[n].toLocaleLowerCase().split(`-`);for(let e=r.length;e>0;--e){let n=r.slice(0,e).join(`-`);if(t[n])return t[n]}}return null}function Jc(e,t,n){let r=Li([Hc,n],[`buttonText`]);delete r.code;let{week:i}=r;return delete r.week,{codeArg:e,codes:t,week:i,simpleNumberFormat:new Intl.NumberFormat(e),options:r}}function Yc(e){return{id:cr(),name:e.name,premiumReleaseDate:e.premiumReleaseDate?new Date(e.premiumReleaseDate):void 0,deps:e.deps||[],reducers:e.reducers||[],isLoadingFuncs:e.isLoadingFuncs||[],contextInit:[].concat(e.contextInit||[]),eventRefiners:e.eventRefiners||{},eventDefMemberAdders:e.eventDefMemberAdders||[],eventSourceRefiners:e.eventSourceRefiners||{},isDraggableTransformers:e.isDraggableTransformers||[],eventDragMutationMassagers:e.eventDragMutationMassagers||[],eventDefMutationAppliers:e.eventDefMutationAppliers||[],dateSelectionTransformers:e.dateSelectionTransformers||[],datePointTransforms:e.datePointTransforms||[],dateSpanTransforms:e.dateSpanTransforms||[],views:e.views||{},viewPropsTransformers:e.viewPropsTransformers||[],isPropsValid:e.isPropsValid||null,externalDefTransforms:e.externalDefTransforms||[],viewContainerAppends:e.viewContainerAppends||[],eventDropTransformers:e.eventDropTransformers||[],componentInteractions:e.componentInteractions||[],calendarInteractions:e.calendarInteractions||[],themeClasses:e.themeClasses||{},eventSourceDefs:e.eventSourceDefs||[],cmdFormatter:e.cmdFormatter,recurringTypes:e.recurringTypes||[],namedTimeZonedImpl:e.namedTimeZonedImpl,initialView:e.initialView||``,elementDraggingImpl:e.elementDraggingImpl,optionChangeHandlers:e.optionChangeHandlers||{},scrollGridImpl:e.scrollGridImpl||null,listenerRefiners:e.listenerRefiners||{},optionRefiners:e.optionRefiners||{},propSetHandlers:e.propSetHandlers||{}}}function Xc(e,t){let n={},r={premiumReleaseDate:void 0,reducers:[],isLoadingFuncs:[],contextInit:[],eventRefiners:{},eventDefMemberAdders:[],eventSourceRefiners:{},isDraggableTransformers:[],eventDragMutationMassagers:[],eventDefMutationAppliers:[],dateSelectionTransformers:[],datePointTransforms:[],dateSpanTransforms:[],views:{},viewPropsTransformers:[],isPropsValid:null,externalDefTransforms:[],viewContainerAppends:[],eventDropTransformers:[],componentInteractions:[],calendarInteractions:[],themeClasses:{},eventSourceDefs:[],cmdFormatter:null,recurringTypes:[],namedTimeZonedImpl:null,initialView:``,elementDraggingImpl:null,optionChangeHandlers:{},scrollGridImpl:null,listenerRefiners:{},optionRefiners:{},propSetHandlers:{}};function i(e){for(let t of e){let e=t.name,a=n[e];a===void 0?(n[e]=t.id,i(t.deps),r=Qc(r,t)):a!==t.id&&console.warn(`Duplicate plugin '${e}'`)}}return e&&i(e),i(t),r}function Zc(){let e=[],t=[],n;return(r,i)=>((!n||!Ar(r,e)||!Ar(i,t))&&(n=Xc(r,i)),e=r,t=i,n)}function Qc(e,t){return{premiumReleaseDate:$c(e.premiumReleaseDate,t.premiumReleaseDate),reducers:e.reducers.concat(t.reducers),isLoadingFuncs:e.isLoadingFuncs.concat(t.isLoadingFuncs),contextInit:e.contextInit.concat(t.contextInit),eventRefiners:Object.assign(Object.assign({},e.eventRefiners),t.eventRefiners),eventDefMemberAdders:e.eventDefMemberAdders.concat(t.eventDefMemberAdders),eventSourceRefiners:Object.assign(Object.assign({},e.eventSourceRefiners),t.eventSourceRefiners),isDraggableTransformers:e.isDraggableTransformers.concat(t.isDraggableTransformers),eventDragMutationMassagers:e.eventDragMutationMassagers.concat(t.eventDragMutationMassagers),eventDefMutationAppliers:e.eventDefMutationAppliers.concat(t.eventDefMutationAppliers),dateSelectionTransformers:e.dateSelectionTransformers.concat(t.dateSelectionTransformers),datePointTransforms:e.datePointTransforms.concat(t.datePointTransforms),dateSpanTransforms:e.dateSpanTransforms.concat(t.dateSpanTransforms),views:Object.assign(Object.assign({},e.views),t.views),viewPropsTransformers:e.viewPropsTransformers.concat(t.viewPropsTransformers),isPropsValid:t.isPropsValid||e.isPropsValid,externalDefTransforms:e.externalDefTransforms.concat(t.externalDefTransforms),viewContainerAppends:e.viewContainerAppends.concat(t.viewContainerAppends),eventDropTransformers:e.eventDropTransformers.concat(t.eventDropTransformers),calendarInteractions:e.calendarInteractions.concat(t.calendarInteractions),componentInteractions:e.componentInteractions.concat(t.componentInteractions),themeClasses:Object.assign(Object.assign({},e.themeClasses),t.themeClasses),eventSourceDefs:e.eventSourceDefs.concat(t.eventSourceDefs),cmdFormatter:t.cmdFormatter||e.cmdFormatter,recurringTypes:e.recurringTypes.concat(t.recurringTypes),namedTimeZonedImpl:t.namedTimeZonedImpl||e.namedTimeZonedImpl,initialView:e.initialView||t.initialView,elementDraggingImpl:e.elementDraggingImpl||t.elementDraggingImpl,optionChangeHandlers:Object.assign(Object.assign({},e.optionChangeHandlers),t.optionChangeHandlers),scrollGridImpl:t.scrollGridImpl||e.scrollGridImpl,listenerRefiners:Object.assign(Object.assign({},e.listenerRefiners),t.listenerRefiners),optionRefiners:Object.assign(Object.assign({},e.optionRefiners),t.optionRefiners),propSetHandlers:Object.assign(Object.assign({},e.propSetHandlers),t.propSetHandlers)}}function $c(e,t){return e===void 0?t:t===void 0?e:new Date(Math.max(e.valueOf(),t.valueOf()))}var el=class extends ea{};el.prototype.classes={root:`fc-theme-standard`,tableCellShaded:`fc-cell-shaded`,buttonGroup:`fc-button-group`,button:`fc-button fc-button-primary`,buttonActive:`fc-button-active`},el.prototype.baseIconClass=`fc-icon`,el.prototype.iconClasses={close:`fc-icon-x`,prev:`fc-icon-chevron-left`,next:`fc-icon-chevron-right`,prevYear:`fc-icon-chevrons-left`,nextYear:`fc-icon-chevrons-right`},el.prototype.rtlIconClasses={prev:`fc-icon-chevron-right`,next:`fc-icon-chevron-left`,prevYear:`fc-icon-chevrons-right`,nextYear:`fc-icon-chevrons-left`},el.prototype.iconOverrideOption=`buttonIcons`,el.prototype.iconOverrideCustomButtonOption=`icon`,el.prototype.iconOverridePrefix=`fc-icon-`;function tl(e,t){let n={},r;for(r in e)nl(r,n,e,t);for(r in t)nl(r,n,e,t);return n}function nl(e,t,n,r){if(t[e])return t[e];let i=rl(e,t,n,r);return i&&(t[e]=i),i}function rl(e,t,n,r){let i=n[e],a=r[e],o=e=>i&&i[e]!==null?i[e]:a&&a[e]!==null?a[e]:null,s=o(`component`),c=o(`superType`),l=null;if(c){if(c===e)throw Error(`Can't have a custom view type that references itself`);l=nl(c,t,n,r)}return!s&&l&&(s=l.component),s?{type:e,component:s,defaults:Object.assign(Object.assign({},l?l.defaults:{}),i?i.rawOptions:{}),overrides:Object.assign(Object.assign({},l?l.overrides:{}),a?a.rawOptions:{})}:null}function il(e){return zi(e,al)}function al(e){let t=typeof e==`function`?{component:e}:e,{component:n}=t;return t.content?n=ol(t):n&&!(n.prototype instanceof J)&&(n=ol(Object.assign(Object.assign({},t),{content:n}))),{superType:t.type,component:n,rawOptions:t}}function ol(e){return t=>N(aa.Consumer,null,n=>N(X,{elTag:`div`,elClasses:va(n.viewSpec),renderProps:Object.assign(Object.assign({},t),{nextDayThreshold:n.options.nextDayThreshold}),generatorName:void 0,customGenerator:e.content,classNameGenerator:e.classNames,didMount:e.didMount,willUnmount:e.willUnmount}))}function sl(e,t,n,r){let i=il(e),a=il(t.views);return zi(tl(i,a),e=>cl(e,a,t,n,r))}function cl(e,t,n,r,i){let a=e.overrides.duration||e.defaults.duration||r.duration||n.duration,o=null,s=``,c=``,l={};if(a&&(o=ul(a),o)){let e=kr(o);s=e.unit,e.value===1&&(c=s,l=t[s]?t[s].rawOptions:{})}let u=t=>{let n=t.buttonText||{},r=e.defaults.buttonTextKey;return r!=null&&n[r]!=null?n[r]:n[e.type]==null?n[c]==null?null:n[c]:n[e.type]},d=t=>{let n=t.buttonHints||{},r=e.defaults.buttonTextKey;return r!=null&&n[r]!=null?n[r]:n[e.type]==null?n[c]==null?null:n[c]:n[e.type]};return{type:e.type,component:e.component,duration:o,durationUnit:s,singleUnit:c,optionDefaults:e.defaults,optionOverrides:Object.assign(Object.assign({},l),e.overrides),buttonTextOverride:u(r)||u(n)||e.overrides.buttonText,buttonTextDefault:u(i)||e.defaults.buttonText||u(Di)||e.type,buttonTitleOverride:d(r)||d(n)||e.overrides.buttonHint,buttonTitleDefault:d(i)||e.defaults.buttonHint||d(Di)}}var ll={};function ul(e){let t=JSON.stringify(e),n=ll[t];return n===void 0&&(n=z(e),ll[t]=n),n}function dl(e,t){switch(t.type){case`CHANGE_VIEW_TYPE`:e=t.viewType}return e}function fl(e,t){switch(t.type){case`CHANGE_DATE`:return t.dateMarker;default:return e}}function pl(e,t,n){let r=e.initialDate;return r==null?n.getDateMarker():t.createMarker(r)}function ml(e,t){switch(t.type){case`SET_OPTION`:return Object.assign(Object.assign({},e),{[t.optionName]:t.rawOptionValue});default:return e}}function hl(e,t,n,r){let i;switch(t.type){case`CHANGE_VIEW_TYPE`:return r.build(t.dateMarker||n);case`CHANGE_DATE`:return r.build(t.dateMarker);case`PREV`:if(i=r.buildPrev(e,n),i.isValid)return i;break;case`NEXT`:if(i=r.buildNext(e,n),i.isValid)return i;break}return e}function gl(e,t,n){let r=t?t.activeRange:null;return bl({},Ol(e,n),r,n)}function _l(e,t,n,r){let i=n?n.activeRange:null;switch(t.type){case`ADD_EVENT_SOURCES`:return bl(e,t.sources,i,r);case`REMOVE_EVENT_SOURCE`:return xl(e,t.sourceId);case`PREV`:case`NEXT`:case`CHANGE_DATE`:case`CHANGE_VIEW_TYPE`:return n?Sl(e,i,r):e;case`FETCH_EVENT_SOURCES`:return wl(e,t.sourceIds?Bi(t.sourceIds):Dl(e,r),i,t.isRefetch||!1,r);case`RECEIVE_EVENTS`:case`RECEIVE_EVENT_ERROR`:return El(e,t.sourceId,t.fetchId,t.fetchRange);case`REMOVE_ALL_EVENT_SOURCES`:return{};default:return e}}function vl(e,t,n){let r=t?t.activeRange:null;return wl(e,Dl(e,n),r,!0,n)}function yl(e){for(let t in e)if(e[t].isFetching)return!0;return!1}function bl(e,t,n,r){let i={};for(let e of t)i[e.sourceId]=e;return n&&(i=Sl(i,n,r)),Object.assign(Object.assign({},e),i)}function xl(e,t){return Ri(e,e=>e.sourceId!==t)}function Sl(e,t,n){return wl(e,Ri(e,e=>Cl(e,t,n)),t,!1,n)}function Cl(e,t,n){return kl(e,n)?!n.options.lazyFetching||!e.fetchRange||e.isFetching||t.start<e.fetchRange.start||t.end>e.fetchRange.end:!e.latestFetchId}function wl(e,t,n,r,i){let a={};for(let o in e){let s=e[o];t[o]?a[o]=Tl(s,n,r,i):a[o]=s}return a}function Tl(e,t,n,r){let{options:i,calendarApi:a}=r,o=r.pluginHooks.eventSourceDefs[e.sourceDefId],s=cr();return o.fetch({eventSource:e,range:t,isRefetch:n,context:r},n=>{let{rawEvents:o}=n;i.eventSourceSuccess&&(o=i.eventSourceSuccess.call(a,o,n.response)||o),e.success&&(o=e.success.call(a,o,n.response)||o),r.dispatch({type:`RECEIVE_EVENTS`,sourceId:e.sourceId,fetchId:s,fetchRange:t,rawEvents:o})},n=>{let o=!1;i.eventSourceFailure&&(i.eventSourceFailure.call(a,n),o=!0),e.failure&&(e.failure(n),o=!0),o||console.warn(n.message,n),r.dispatch({type:`RECEIVE_EVENT_ERROR`,sourceId:e.sourceId,fetchId:s,fetchRange:t,error:n})}),Object.assign(Object.assign({},e),{isFetching:!0,latestFetchId:s})}function El(e,t,n,r){let i=e[t];return i&&n===i.latestFetchId?Object.assign(Object.assign({},e),{[t]:Object.assign(Object.assign({},i),{isFetching:!1,fetchRange:r})}):e}function Dl(e,t){return Ri(e,e=>kl(e,t))}function Ol(e,t){let n=oo(t),r=[].concat(e.eventSources||[]),i=[];e.initialEvents&&r.unshift(e.initialEvents),e.events&&r.unshift(e.events);for(let e of r){let r=ao(e,t,n);r&&i.push(r)}return i}function kl(e,t){return!t.pluginHooks.eventSourceDefs[e.sourceDefId].ignoreRange}function Al(e,t){switch(t.type){case`UNSELECT_DATES`:return null;case`SELECT_DATES`:return t.selection;default:return e}}function jl(e,t){switch(t.type){case`UNSELECT_EVENT`:return``;case`SELECT_EVENT`:return t.eventInstanceId;default:return e}}function Ml(e,t){let n;switch(t.type){case`UNSET_EVENT_DRAG`:return null;case`SET_EVENT_DRAG`:return n=t.state,{affectedEvents:n.affectedEvents,mutatedEvents:n.mutatedEvents,isEvent:n.isEvent};default:return e}}function Nl(e,t){let n;switch(t.type){case`UNSET_EVENT_RESIZE`:return null;case`SET_EVENT_RESIZE`:return n=t.state,{affectedEvents:n.affectedEvents,mutatedEvents:n.mutatedEvents,isEvent:n.isEvent};default:return e}}function Pl(e,t,n,r,i){return{header:e.headerToolbar?Fl(e.headerToolbar,e,t,n,r,i):null,footer:e.footerToolbar?Fl(e.footerToolbar,e,t,n,r,i):null}}function Fl(e,t,n,r,i,a){let o={},s=[],c=!1;for(let l in e){let u=e[l],d=Il(u,t,n,r,i,a);o[l]=d.widgets,s.push(...d.viewsWithButtons),c||=d.hasTitle}return{sectionWidgets:o,viewsWithButtons:s,hasTitle:c}}function Il(e,t,n,r,i,a){let o=t.direction===`rtl`,s=t.customButtons||{},c=n.buttonText||{},l=t.buttonText||{},u=n.buttonHints||{},d=t.buttonHints||{},f=e?e.split(` `):[],p=[],m=!1;return{widgets:f.map(e=>e.split(`,`).map(e=>{if(e===`title`)return m=!0,{buttonName:e};let n,f,h,g,_,v;if(n=s[e])h=e=>{n.click&&n.click.call(e.target,e,e.target)},(g=r.getCustomButtonIconClass(n))||(g=r.getIconClass(e,o))||(_=n.text),v=n.hint||n.text;else if(f=i[e]){p.push(e),h=()=>{a.changeView(e)},(_=f.buttonTextOverride)||(g=r.getIconClass(e,o))||(_=f.buttonTextDefault);let n=f.buttonTextOverride||f.buttonTextDefault;v=mr(f.buttonTitleOverride||f.buttonTitleDefault||t.viewHint,[n,e],n)}else if(a[e])if(h=()=>{a[e]()},(_=c[e])||(g=r.getIconClass(e,o))||(_=l[e]),e===`prevYear`||e===`nextYear`){let t=e===`prevYear`?`prev`:`next`;v=mr(u[t]||d[t],[l.year||`year`,`year`],l[e])}else v=t=>mr(u[e]||d[e],[l[t]||t,t],l[e]);return{buttonName:e,buttonClick:h,buttonIcon:g,buttonText:_,buttonHint:v}})),viewsWithButtons:p,hasTitle:m}}var Ll=class{constructor(e,t,n){this.type=e,this.getCurrentData=t,this.dateEnv=n}get calendar(){return this.getCurrentData().calendarApi}get title(){return this.getCurrentData().viewTitle}get activeStart(){return this.dateEnv.toDate(this.getCurrentData().dateProfile.activeRange.start)}get activeEnd(){return this.dateEnv.toDate(this.getCurrentData().dateProfile.activeRange.end)}get currentStart(){return this.dateEnv.toDate(this.getCurrentData().dateProfile.currentRange.start)}get currentEnd(){return this.dateEnv.toDate(this.getCurrentData().dateProfile.currentRange.end)}getOption(e){return this.getCurrentData().options[e]}},Rl=Yc({name:`array-event-source`,eventSourceDefs:[{ignoreRange:!0,parseMeta(e){return Array.isArray(e.events)?e.events:null},fetch(e,t){t({rawEvents:e.eventSource.meta})}}]}),zl=Yc({name:`func-event-source`,eventSourceDefs:[{parseMeta(e){return typeof e.events==`function`?e.events:null},fetch(e,t,n){let{dateEnv:r}=e.context,i=e.eventSource.meta;rs(i.bind(null,es(e.range,r)),e=>t({rawEvents:e}),n)}}]}),Bl=Yc({name:`json-event-source`,eventSourceRefiners:{method:String,extraParams:K,startParam:String,endParam:String,timeZoneParam:String},eventSourceDefs:[{parseMeta(e){return e.url&&(e.format===`json`||!e.format)?{url:e.url,format:`json`,method:(e.method||`GET`).toUpperCase(),extraParams:e.extraParams,startParam:e.startParam,endParam:e.endParam,timeZoneParam:e.timeZoneParam}:null},fetch(e,t,n){let{meta:r}=e.eventSource,i=Vl(r,e.range,e.context);as(r.method,r.url,i).then(([e,n])=>{t({rawEvents:e,response:n})},n)}}]});function Vl(e,t,n){let{dateEnv:r,options:i}=n,a,o,s,c,l={};return a=e.startParam,a??=i.startParam,o=e.endParam,o??=i.endParam,s=e.timeZoneParam,s??=i.timeZoneParam,c=typeof e.extraParams==`function`?e.extraParams():e.extraParams||{},Object.assign(l,c),l[a]=r.formatIso(t.start),l[o]=r.formatIso(t.end),r.timeZone!==`local`&&(l[s]=r.timeZone),l}var Hl=Yc({name:`simple-recurring-event`,recurringTypes:[{parse(e,t){if(e.daysOfWeek||e.startTime||e.endTime||e.startRecur||e.endRecur){let n={daysOfWeek:e.daysOfWeek||null,startTime:e.startTime||null,endTime:e.endTime||null,startRecur:e.startRecur?t.createMarker(e.startRecur):null,endRecur:e.endRecur?t.createMarker(e.endRecur):null,dateEnv:t},r;return e.duration&&(r=e.duration),!r&&e.startTime&&e.endTime&&(r=Cr(e.endTime,e.startTime)),{allDayGuess:!e.startTime&&!e.endTime,duration:r,typeData:n}}return null},expand(e,t,n){let r=Sa(t,{start:e.startRecur,end:e.endRecur});return r?Ul(e.daysOfWeek,e.startTime,e.dateEnv,n,r):[]}}],eventRefiners:{daysOfWeek:K,startTime:z,endTime:z,duration:z,startRecur:K,endRecur:K}});function Ul(e,t,n,r,i){let a=e?Bi(e):null,o=H(i.start),s=i.end,c=[];for(t&&(t.milliseconds<0?s=V(s,1):t.milliseconds>=1e3*60*60*24&&(o=V(o,-1)));o<s;){let e;(!a||a[o.getUTCDay()])&&(e=t?r.add(o,t):o,c.push(r.createMarker(n.toDate(e)))),o=V(o,1)}return c}var Wl=Yc({name:`change-handler`,optionChangeHandlers:{events(e,t){Gl([e],t)},eventSources:Gl}});function Gl(e,t){let n=Vi(t.getCurrentData().eventSources);if(n.length===1&&e.length===1&&Array.isArray(n[0]._raw)&&Array.isArray(e[0])){t.dispatch({type:`RESET_RAW_EVENTS`,sourceId:n[0].sourceId,rawEvents:e[0]});return}let r=[];for(let t of e){let e=!1;for(let r=0;r<n.length;r+=1)if(n[r]._raw===t){n.splice(r,1),e=!0;break}e||r.push(t)}for(let e of n)t.dispatch({type:`REMOVE_EVENT_SOURCE`,sourceId:e.sourceId});for(let e of r)t.calendarApi.addEventSource(e)}function Kl(e,t){t.emitter.trigger(`datesSet`,Object.assign(Object.assign({},es(e.activeRange,t.dateEnv)),{view:t.viewApi}))}function ql(e,t){let{emitter:n}=t;n.hasHandlers(`eventsSet`)&&n.trigger(`eventsSet`,No(e,t))}var Jl=[Rl,zl,Bl,Hl,Wl,Yc({name:`misc`,isLoadingFuncs:[e=>yl(e.eventSources)],propSetHandlers:{dateProfile:Kl,eventStore:ql}})],Yl=class{constructor(e,t){this.runTaskOption=e,this.drainedOption=t,this.queue=[],this.delayedRunner=new Kn(this.drain.bind(this))}request(e,t){this.queue.push(e),this.delayedRunner.request(t)}pause(e){this.delayedRunner.pause(e)}resume(e,t){this.delayedRunner.resume(e,t)}drain(){let{queue:e}=this;for(;e.length;){let t=[],n;for(;n=e.shift();)this.runTask(n),t.push(n);this.drained(t)}}runTask(e){this.runTaskOption&&this.runTaskOption(e)}drained(e){this.drainedOption&&this.drainedOption(e)}};function Xl(e,t,n){let r;return r=/^(year|month)$/.test(e.currentRangeUnit)?e.currentRange:e.activeRange,n.formatRange(r.start,r.end,G(t.titleFormat||Zl(e)),{isEndExclusive:e.isRangeAllDay,defaultSeparator:t.titleRangeSeparator})}function Zl(e){let{currentRangeUnit:t}=e;if(t===`year`)return{year:`numeric`};if(t===`month`)return{year:`numeric`,month:`long`};let n=Vr(e.currentRange.start,e.currentRange.end);return n!==null&&n>1?{year:`numeric`,month:`short`,day:`numeric`}:{year:`numeric`,month:`long`,day:`numeric`}}var Ql=class{constructor(){this.resetListeners=new Set}handleInput(e,t){let n=this.dateEnv;if(e!==n&&(typeof t==`function`?this.nowFn=t:n||(this.nowAnchorDate=e.toDate(t?e.createMarker(t):e.createNowMarker()),this.nowAnchorQueried=Date.now()),this.dateEnv=e,n))for(let e of this.resetListeners.values())e()}getDateMarker(){return this.nowAnchorDate?this.dateEnv.timestampToMarker(this.nowAnchorDate.valueOf()+(Date.now()-this.nowAnchorQueried)):this.dateEnv.createMarker(this.nowFn())}addResetListener(e){this.resetListeners.add(e)}removeResetListener(e){this.resetListeners.delete(e)}},$l=class{constructor(e){this.computeCurrentViewData=W(this._computeCurrentViewData),this.organizeRawLocales=W(Wc),this.buildLocale=W(Gc),this.buildPluginHooks=Zc(),this.buildDateEnv=W(eu),this.buildTheme=W(tu),this.parseToolbars=W(Pl),this.buildViewSpecs=W(sl),this.buildDateProfileGenerator=ii(nu),this.buildViewApi=W(ru),this.buildViewUiProps=ii(ou),this.buildEventUiBySource=W(iu,q),this.buildEventUiBases=W(au),this.parseContextBusinessHours=ii(cu),this.buildTitle=W(Xl),this.nowManager=new Ql,this.emitter=new vo,this.actionRunner=new Yl(this._handleAction.bind(this),this.updateData.bind(this)),this.currentCalendarOptionsInput={},this.currentCalendarOptionsRefined={},this.currentViewOptionsInput={},this.currentViewOptionsRefined={},this.currentCalendarOptionsRefiners={},this.optionsForRefining=[],this.optionsForHandling=[],this.getCurrentData=()=>this.data,this.dispatch=e=>{this.actionRunner.request(e)},this.props=e,this.actionRunner.pause(),this.nowManager=new Ql;let t={},n=this.computeOptionsData(e.optionOverrides,t,e.calendarApi),r=n.calendarOptions.initialView||n.pluginHooks.initialView,i=this.computeCurrentViewData(r,n,e.optionOverrides,t);e.calendarApi.currentDataManager=this,this.emitter.setThisContext(e.calendarApi),this.emitter.setOptions(i.options);let a={nowManager:this.nowManager,dateEnv:n.dateEnv,options:n.calendarOptions,pluginHooks:n.pluginHooks,calendarApi:e.calendarApi,dispatch:this.dispatch,emitter:this.emitter,getCurrentData:this.getCurrentData},o=pl(n.calendarOptions,n.dateEnv,this.nowManager),s=i.dateProfileGenerator.build(o);wa(s.activeRange,o)||(o=s.currentRange.start);for(let e of n.pluginHooks.contextInit)e(a);let c=gl(n.calendarOptions,s,a),l={dynamicOptionOverrides:t,currentViewType:r,currentDate:o,dateProfile:s,businessHours:this.parseContextBusinessHours(a),eventSources:c,eventUiBases:{},eventStore:qa(),renderableEventStore:qa(),dateSelection:null,eventSelection:``,eventDrag:null,eventResize:null,selectionConfig:this.buildViewUiProps(a).selectionConfig},u=Object.assign(Object.assign({},a),l);for(let e of n.pluginHooks.reducers)Object.assign(l,e(null,null,u));su(l,a)&&this.emitter.trigger(`loading`,!0),this.state=l,this.updateData(),this.actionRunner.resume()}resetOptions(e,t){let{props:n}=this;t===void 0?n.optionOverrides=e:(n.optionOverrides=Object.assign(Object.assign({},n.optionOverrides||{}),e),this.optionsForRefining.push(...t)),(t===void 0||t.length)&&this.actionRunner.request({type:`NOTHING`})}_handleAction(e){let{props:t,state:n,emitter:r}=this,i=ml(n.dynamicOptionOverrides,e),a=this.computeOptionsData(t.optionOverrides,i,t.calendarApi),o=dl(n.currentViewType,e),s=this.computeCurrentViewData(o,a,t.optionOverrides,i);t.calendarApi.currentDataManager=this,r.setThisContext(t.calendarApi),r.setOptions(s.options);let c={nowManager:this.nowManager,dateEnv:a.dateEnv,options:a.calendarOptions,pluginHooks:a.pluginHooks,calendarApi:t.calendarApi,dispatch:this.dispatch,emitter:r,getCurrentData:this.getCurrentData},{currentDate:l,dateProfile:u}=n;this.data&&this.data.dateProfileGenerator!==s.dateProfileGenerator&&(u=s.dateProfileGenerator.build(l)),l=fl(l,e),u=hl(u,e,l,s.dateProfileGenerator),(e.type===`PREV`||e.type===`NEXT`||!wa(u.currentRange,l))&&(l=u.currentRange.start);let d=_l(n.eventSources,e,u,c),f=co(n.eventStore,e,d,u,c),p=yl(d)&&!s.options.progressiveEventRendering&&n.renderableEventStore||f,{eventUiSingleBase:m,selectionConfig:h}=this.buildViewUiProps(c),g=this.buildEventUiBySource(d),_=this.buildEventUiBases(p.defs,m,g),v={dynamicOptionOverrides:i,currentViewType:o,currentDate:l,dateProfile:u,eventSources:d,eventStore:f,renderableEventStore:p,selectionConfig:h,eventUiBases:_,businessHours:this.parseContextBusinessHours(c),dateSelection:Al(n.dateSelection,e),eventSelection:jl(n.eventSelection,e),eventDrag:Ml(n.eventDrag,e),eventResize:Nl(n.eventResize,e)},y=Object.assign(Object.assign({},c),v);for(let t of a.pluginHooks.reducers)Object.assign(v,t(n,e,y));let b=su(n,c),x=su(v,c);!b&&x?r.trigger(`loading`,!0):b&&!x&&r.trigger(`loading`,!1),this.state=v,t.onAction&&t.onAction(e)}updateData(){let{props:e,state:t}=this,n=this.data,r=this.computeOptionsData(e.optionOverrides,t.dynamicOptionOverrides,e.calendarApi),i=this.computeCurrentViewData(t.currentViewType,r,e.optionOverrides,t.dynamicOptionOverrides),a=this.data=Object.assign(Object.assign(Object.assign({nowManager:this.nowManager,viewTitle:this.buildTitle(t.dateProfile,i.options,r.dateEnv),calendarApi:e.calendarApi,dispatch:this.dispatch,emitter:this.emitter,getCurrentData:this.getCurrentData},r),i),t),o=r.pluginHooks.optionChangeHandlers,s=n&&n.calendarOptions,c=r.calendarOptions;if(s&&s!==c){s.timeZone!==c.timeZone&&(t.eventSources=a.eventSources=vl(a.eventSources,t.dateProfile,a),t.eventStore=a.eventStore=ho(a.eventStore,n.dateEnv,a.dateEnv),t.renderableEventStore=a.renderableEventStore=ho(a.renderableEventStore,n.dateEnv,a.dateEnv));for(let e in o)(this.optionsForHandling.indexOf(e)!==-1||s[e]!==c[e])&&o[e](c[e],a)}this.optionsForHandling=[],e.onData&&e.onData(a)}computeOptionsData(e,t,n){if(!this.optionsForRefining.length&&e===this.stableOptionOverrides&&t===this.stableDynamicOptionOverrides)return this.stableCalendarOptionsData;let{refinedOptions:r,pluginHooks:i,localeDefaults:a,availableLocaleData:o,extra:s}=this.processRawCalendarOptions(e,t);lu(s);let c=this.buildDateEnv(r.timeZone,r.locale,r.weekNumberCalculation,r.firstDay,r.weekText,i,o,r.defaultRangeSeparator),l=this.buildViewSpecs(i.views,this.stableOptionOverrides,this.stableDynamicOptionOverrides,a),u=this.buildTheme(r,i);return this.stableCalendarOptionsData={calendarOptions:r,pluginHooks:i,dateEnv:c,viewSpecs:l,theme:u,toolbarConfig:this.parseToolbars(r,this.stableOptionOverrides,u,l,n),localeDefaults:a,availableRawLocales:o.map}}processRawCalendarOptions(e,t){let{locales:n,locale:r}=Pi([Di,e,t]),i=this.organizeRawLocales(n),a=i.map,o=this.buildLocale(r||i.defaultCode,a).options,s=this.buildPluginHooks(e.plugins||[],Jl),c=this.currentCalendarOptionsRefiners=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},Ei),Oi),ki),s.listenerRefiners),s.optionRefiners),l={},u=Pi([Di,o,e,t]),d={},f=this.currentCalendarOptionsInput,p=this.currentCalendarOptionsRefined,m=!1;for(let e in u)this.optionsForRefining.indexOf(e)===-1&&(u[e]===f[e]||Ai[e]&&e in f&&Ai[e](f[e],u[e]))?d[e]=p[e]:c[e]?(d[e]=c[e](u[e]),m=!0):l[e]=f[e];return m&&(this.currentCalendarOptionsInput=u,this.currentCalendarOptionsRefined=d,this.stableOptionOverrides=e,this.stableDynamicOptionOverrides=t),this.optionsForHandling.push(...this.optionsForRefining),this.optionsForRefining=[],{rawOptions:this.currentCalendarOptionsInput,refinedOptions:this.currentCalendarOptionsRefined,pluginHooks:s,availableLocaleData:i,localeDefaults:o,extra:l}}_computeCurrentViewData(e,t,n,r){let i=t.viewSpecs[e];if(!i)throw Error(`viewType "${e}" is not available. Please make sure you've loaded all neccessary plugins`);let{refinedOptions:a,extra:o}=this.processRawViewOptions(i,t.pluginHooks,t.localeDefaults,n,r);return lu(o),this.nowManager.handleInput(t.dateEnv,a.now),{viewSpec:i,options:a,dateProfileGenerator:this.buildDateProfileGenerator({dateProfileGeneratorClass:i.optionDefaults.dateProfileGeneratorClass,nowManager:this.nowManager,duration:i.duration,durationUnit:i.durationUnit,usesMinMaxTime:i.optionDefaults.usesMinMaxTime,dateEnv:t.dateEnv,calendarApi:this.props.calendarApi,slotMinTime:a.slotMinTime,slotMaxTime:a.slotMaxTime,showNonCurrentDates:a.showNonCurrentDates,dayCount:a.dayCount,dateAlignment:a.dateAlignment,dateIncrement:a.dateIncrement,hiddenDays:a.hiddenDays,weekends:a.weekends,validRangeInput:a.validRange,visibleRangeInput:a.visibleRange,fixedWeekCount:a.fixedWeekCount}),viewApi:this.buildViewApi(e,this.getCurrentData,t.dateEnv)}}processRawViewOptions(e,t,n,r,i){let a=Pi([Di,e.optionDefaults,n,r,e.optionOverrides,i]),o=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},Ei),Oi),ki),Ni),t.listenerRefiners),t.optionRefiners),s={},c=this.currentViewOptionsInput,l=this.currentViewOptionsRefined,u=!1,d={};for(let e in a)a[e]===c[e]||Ai[e]&&Ai[e](a[e],c[e])?s[e]=l[e]:(a[e]===this.currentCalendarOptionsInput[e]||Ai[e]&&Ai[e](a[e],this.currentCalendarOptionsInput[e])?e in this.currentCalendarOptionsRefined&&(s[e]=this.currentCalendarOptionsRefined[e]):o[e]?s[e]=o[e](a[e]):d[e]=a[e],u=!0);return u&&(this.currentViewOptionsInput=a,this.currentViewOptionsRefined=s),{rawOptions:this.currentViewOptionsInput,refinedOptions:this.currentViewOptionsRefined,extra:d}}};function eu(e,t,n,r,i,a,o,s){let c=Gc(t||o.defaultCode,o.map);return new $i({calendarSystem:`gregory`,timeZone:e,namedTimeZoneImpl:a.namedTimeZonedImpl,locale:c,weekNumberCalculation:n,firstDay:r,weekText:i,cmdFormatter:a.cmdFormatter,defaultSeparator:s})}function tu(e,t){return new(t.themeClasses[e.themeSystem]||el)(e)}function nu(e){return new(e.dateProfileGeneratorClass||ka)(e)}function ru(e,t,n){return new Ll(e,t,n)}function iu(e){return zi(e,e=>e.ui)}function au(e,t,n){let r={"":t};for(let t in e){let i=e[t];i.sourceId&&n[i.sourceId]&&(r[t]=n[i.sourceId])}return r}function ou(e){let{options:t}=e;return{eventUiSingleBase:to({display:t.eventDisplay,editable:t.editable,startEditable:t.eventStartEditable,durationEditable:t.eventDurationEditable,constraint:t.eventConstraint,overlap:typeof t.eventOverlap==`boolean`?t.eventOverlap:void 0,allow:t.eventAllow,backgroundColor:t.eventBackgroundColor,borderColor:t.eventBorderColor,textColor:t.eventTextColor,color:t.eventColor},e),selectionConfig:to({constraint:t.selectConstraint,overlap:typeof t.selectOverlap==`boolean`?t.selectOverlap:void 0,allow:t.selectAllow},e)}}function su(e,t){for(let n of t.pluginHooks.isLoadingFuncs)if(n(e))return!0;return!1}function cu(e){return So(e.options.businessHours,e)}function lu(e,t){for(let n in e)console.warn(`Unknown option '${n}'`+(t?` for view '${t}'`:``))}var uu=class extends J{render(){return N(`div`,{className:`fc-toolbar-chunk`},...this.props.widgetGroups.map(e=>this.renderWidgetGroup(e)))}renderWidgetGroup(e){let{props:t}=this,{theme:n}=this.context,r=[],i=!0;for(let a of e){let{buttonName:e,buttonClick:o,buttonText:s,buttonIcon:c,buttonHint:l}=a;if(e===`title`)i=!1,r.push(N(`h2`,{className:`fc-toolbar-title`,id:t.titleId},t.title));else{let i=e===t.activeButton,a=!t.isTodayEnabled&&e===`today`||!t.isPrevEnabled&&e===`prev`||!t.isNextEnabled&&e===`next`,u=[`fc-${e}-button`,n.getClass(`button`)];i&&u.push(n.getClass(`buttonActive`)),r.push(N(`button`,{type:`button`,title:typeof l==`function`?l(t.navUnit):l,disabled:a,"aria-pressed":i,className:u.join(` `),onClick:o},s||(c?N(`span`,{className:c,role:`img`}):``)))}}return r.length>1?N(`div`,{className:i&&n.getClass(`buttonGroup`)||``},...r):r[0]}},du=class extends J{render(){let{model:e,extraClassName:t}=this.props,n=!1,r,i,a=e.sectionWidgets,o=a.center;return a.left?(n=!0,r=a.left):r=a.start,a.right?(n=!0,i=a.right):i=a.end,N(`div`,{className:[t||``,`fc-toolbar`,n?`fc-toolbar-ltr`:``].join(` `)},this.renderSection(`start`,r||[]),this.renderSection(`center`,o||[]),this.renderSection(`end`,i||[]))}renderSection(e,t){let{props:n}=this;return N(uu,{key:e,widgetGroups:t,title:n.title,navUnit:n.navUnit,activeButton:n.activeButton,isTodayEnabled:n.isTodayEnabled,isPrevEnabled:n.isPrevEnabled,isNextEnabled:n.isNextEnabled,titleId:n.titleId})}},fu=class extends J{constructor(){super(...arguments),this.state={availableWidth:null},this.handleEl=e=>{this.el=e,Y(this.props.elRef,e),this.updateAvailableWidth()},this.handleResize=()=>{this.updateAvailableWidth()}}render(){let{props:e,state:t}=this,{aspectRatio:n}=e,r=[`fc-view-harness`,n||e.liquid||e.height?`fc-view-harness-active`:`fc-view-harness-passive`],i=``,a=``;return n?t.availableWidth===null?a=`${1/n*100}%`:i=t.availableWidth/n:i=e.height||``,N(`div`,{"aria-labelledby":e.labeledById,ref:this.handleEl,className:r.join(` `),style:{height:i,paddingBottom:a}},e.children)}componentDidMount(){this.context.addResizeHandler(this.handleResize)}componentWillUnmount(){this.context.removeResizeHandler(this.handleResize)}updateAvailableWidth(){this.el&&this.props.aspectRatio&&this.setState({availableWidth:this.el.offsetWidth})}},pu=class extends us{constructor(e){super(e),this.handleSegClick=(e,t)=>{let{component:n}=this,{context:r}=n,i=Lo(t);if(i&&n.isValidSegDownEl(e.target)){let a=R(e.target,`.fc-event-forced-url`),o=a?a.querySelector(`a[href]`).href:``;r.emitter.trigger(`eventClick`,{el:t,event:new Z(n.context,i.eventRange.def,i.eventRange.instance),jsEvent:e,view:r.viewApi}),o&&!e.defaultPrevented&&(window.location.href=o)}},this.destroy=rr(e.el,`click`,`.fc-event`,this.handleSegClick)}},mu=class extends us{constructor(e){super(e),this.handleEventElRemove=e=>{e===this.currentSegEl&&this.handleSegLeave(null,this.currentSegEl)},this.handleSegEnter=(e,t)=>{Lo(t)&&(this.currentSegEl=t,this.triggerEvent(`eventMouseEnter`,e,t))},this.handleSegLeave=(e,t)=>{this.currentSegEl&&(this.currentSegEl=null,this.triggerEvent(`eventMouseLeave`,e,t))},this.removeHoverListeners=ir(e.el,`.fc-event`,this.handleSegEnter,this.handleSegLeave)}destroy(){this.removeHoverListeners()}triggerEvent(e,t,n){let{component:r}=this,{context:i}=r,a=Lo(n);(!t||r.isValidSegDownEl(t.target))&&i.emitter.trigger(e,{el:n,event:new Z(i,a.eventRange.def,a.eventRange.instance),jsEvent:t,view:i.viewApi})}},hu=class extends sa{constructor(){super(...arguments),this.buildViewContext=W(oa),this.buildViewPropTransformers=W(_u),this.buildToolbarProps=W(gu),this.headerRef=P(),this.footerRef=P(),this.interactionsStore={},this.state={viewLabelId:tr()},this.registerInteractiveComponent=(e,t)=>{let n=ds(e,t),r=[pu,mu].concat(this.props.pluginHooks.componentInteractions).map(e=>new e(n));this.interactionsStore[e.uid]=r,fs[e.uid]=n},this.unregisterInteractiveComponent=e=>{let t=this.interactionsStore[e.uid];if(t){for(let e of t)e.destroy();delete this.interactionsStore[e.uid]}delete fs[e.uid]},this.resizeRunner=new Kn(()=>{this.props.emitter.trigger(`_resize`,!0),this.props.emitter.trigger(`windowResize`,{view:this.props.viewApi})}),this.handleWindowResize=e=>{let{options:t}=this.props;t.handleWindowResize&&e.target===window&&this.resizeRunner.request(t.windowResizeDelay)}}render(){let{props:e}=this,{toolbarConfig:t,options:n}=e,r=!1,i=``,a;e.isHeightAuto||e.forPrint?i=``:n.height==null?n.contentHeight==null?a=Math.max(n.aspectRatio,.5):i=n.contentHeight:r=!0;let o=this.buildViewContext(e.viewSpec,e.viewApi,e.options,e.dateProfileGenerator,e.dateEnv,e.nowManager,e.theme,e.pluginHooks,e.dispatch,e.getCurrentData,e.emitter,e.calendarApi,this.registerInteractiveComponent,this.unregisterInteractiveComponent),s=t.header&&t.header.hasTitle?this.state.viewLabelId:void 0;return N(aa.Provider,{value:o},N(ps,{unit:`day`},n=>{let o=this.buildToolbarProps(e.viewSpec,e.dateProfile,e.dateProfileGenerator,e.currentDate,n,e.viewTitle);return N(F,null,t.header&&N(du,Object.assign({ref:this.headerRef,extraClassName:`fc-header-toolbar`,model:t.header,titleId:s},o)),N(fu,{liquid:r,height:i,aspectRatio:a,labeledById:s},this.renderView(e),this.buildAppendContent()),t.footer&&N(du,Object.assign({ref:this.footerRef,extraClassName:`fc-footer-toolbar`,model:t.footer,titleId:``},o)))}))}componentDidMount(){let{props:e}=this;this.calendarInteractions=e.pluginHooks.calendarInteractions.map(t=>new t(e)),window.addEventListener(`resize`,this.handleWindowResize);let{propSetHandlers:t}=e.pluginHooks;for(let n in t)t[n](e[n],e)}componentDidUpdate(e){let{props:t}=this,{propSetHandlers:n}=t.pluginHooks;for(let r in n)t[r]!==e[r]&&n[r](t[r],t)}componentWillUnmount(){window.removeEventListener(`resize`,this.handleWindowResize),this.resizeRunner.clear();for(let e of this.calendarInteractions)e.destroy();this.props.emitter.trigger(`_unmount`)}buildAppendContent(){let{props:e}=this;return N(F,{},...e.pluginHooks.viewContainerAppends.map(t=>t(e)))}renderView(e){let{pluginHooks:t}=e,{viewSpec:n}=e,r={dateProfile:e.dateProfile,businessHours:e.businessHours,eventStore:e.renderableEventStore,eventUiBases:e.eventUiBases,dateSelection:e.dateSelection,eventSelection:e.eventSelection,eventDrag:e.eventDrag,eventResize:e.eventResize,isHeightAuto:e.isHeightAuto,forPrint:e.forPrint},i=this.buildViewPropTransformers(t.viewPropsTransformers);for(let t of i)Object.assign(r,t.transform(r,e));let a=n.component;return N(a,Object.assign({},r))}};function gu(e,t,n,r,i,a){let o=n.build(i,void 0,!1),s=n.buildPrev(t,r,!1),c=n.buildNext(t,r,!1);return{title:a,activeButton:e.type,navUnit:e.singleUnit,isTodayEnabled:o.isValid&&!wa(t.currentRange,i),isPrevEnabled:s.isValid,isNextEnabled:c.isValid}}function _u(e){return e.map(e=>new e)}var vu=class extends hs{constructor(e,t={}){super(),this.isRendering=!1,this.isRendered=!1,this.currentClassNames=[],this.customContentRenderId=0,this.handleAction=e=>{switch(e.type){case`SET_EVENT_DRAG`:case`SET_EVENT_RESIZE`:this.renderRunner.tryDrain()}},this.handleData=e=>{this.currentData=e,this.renderRunner.request(e.calendarOptions.rerenderDelay)},this.handleRenderRequest=()=>{if(this.isRendering){this.isRendered=!0;let{currentData:e}=this;ta(()=>{qt(N(ls,{options:e.calendarOptions,theme:e.theme,emitter:e.emitter},(t,n,r,i)=>(this.setClassNames(t),this.setHeight(n),N(ma.Provider,{value:this.customContentRenderId},N(hu,Object.assign({isHeightAuto:r,forPrint:i},e))))),this.el)})}else this.isRendered&&(this.isRendered=!1,qt(null,this.el),this.setClassNames([]),this.setHeight(``))},zn(e),this.el=e,this.renderRunner=new Kn(this.handleRenderRequest),new $l({optionOverrides:t,calendarApi:this,onAction:this.handleAction,onData:this.handleData})}render(){let e=this.isRendering;e?this.customContentRenderId+=1:this.isRendering=!0,this.renderRunner.request(),e&&this.updateSize()}destroy(){this.isRendering&&(this.isRendering=!1,this.renderRunner.request())}updateSize(){ta(()=>{super.updateSize()})}batchRendering(e){this.renderRunner.pause(`batchRendering`),e(),this.renderRunner.resume(`batchRendering`)}pauseRendering(){this.renderRunner.pause(`pauseRendering`)}resumeRendering(){this.renderRunner.resume(`pauseRendering`,!0)}resetOptions(e,t){this.currentDataManager.resetOptions(e,t)}setClassNames(e){if(!Ar(e,this.currentClassNames)){let{classList:t}=this.el;for(let e of this.currentClassNames)t.remove(e);for(let n of e)t.add(n);this.currentClassNames=e}}setHeight(e){Qn(this.el,`height`,e)}},yu=parseInt(`19.2.5`.split(`.`)[0])<18,bu=class extends A.Component{constructor(){super(...arguments),this.elRef=(0,A.createRef)(),this.isUpdating=!1,this.isUnmounting=!1,this.state={customRenderingMap:new Map},this.requestResize=()=>{this.isUnmounting||(this.cancelResize(),this.resizeId=requestAnimationFrame(()=>{this.doResize()}))}}render(){let e=[];for(let t of this.state.customRenderingMap.values())e.push(A.createElement(xu,{key:t.id,customRendering:t}));return A.createElement(`div`,{ref:this.elRef},e)}componentDidMount(){this.isUnmounting=!1;let e=new Bc;this.handleCustomRendering=e.handle.bind(e),this.calendar=new vu(this.elRef.current,Object.assign(Object.assign({},this.props),{handleCustomRendering:this.handleCustomRendering})),this.calendar.render(),this.calendar.on(`_beforeprint`,()=>{(0,Ae.flushSync)(()=>{})});let t;e.subscribe(e=>{let n=Date.now(),r=!t;(yu||r||this.isUpdating||this.isUnmounting||n-t<100?Su:Ae.flushSync)(()=>{this.setState({customRenderingMap:e},()=>{t=n,r?this.doResize():this.requestResize()})})})}componentDidUpdate(){this.isUpdating=!0,this.calendar.resetOptions(Object.assign(Object.assign({},this.props),{handleCustomRendering:this.handleCustomRendering})),this.isUpdating=!1}componentWillUnmount(){this.isUnmounting=!0,this.cancelResize(),this.calendar.destroy()}doResize(){this.calendar.updateSize()}cancelResize(){this.resizeId!==void 0&&(cancelAnimationFrame(this.resizeId),this.resizeId=void 0)}getApi(){return this.calendar}};bu.act=Su;var xu=class extends A.PureComponent{render(){let{customRendering:e}=this.props,{generatorMeta:t}=e;return(0,Ae.createPortal)(typeof t==`function`?t(e.renderProps):t,e.containerEl)}};function Su(e){e()}var Cu=class extends Q{constructor(){super(...arguments),this.headerElRef=P()}renderSimpleLayout(e,t){let{props:n,context:r}=this,i=[],a=fc(r.options);return e&&i.push({type:`header`,key:`header`,isSticky:a,chunk:{elRef:this.headerElRef,tableClassName:`fc-col-header`,rowContent:e}}),i.push({type:`body`,key:`body`,liquid:!0,chunk:{content:t}}),N(_a,{elClasses:[`fc-daygrid`],viewSpec:r.viewSpec},N(mc,{liquid:!n.isHeightAuto&&!n.forPrint,collapsibleWidth:n.forPrint,cols:[],sections:i}))}renderHScrollLayout(e,t,n,r){let i=this.context.pluginHooks.scrollGridImpl;if(!i)throw Error(`No ScrollGrid implementation`);let{props:a,context:o}=this,s=!a.forPrint&&fc(o.options),c=!a.forPrint&&pc(o.options),l=[];return e&&l.push({type:`header`,key:`header`,isSticky:s,chunks:[{key:`main`,elRef:this.headerElRef,tableClassName:`fc-col-header`,rowContent:e}]}),l.push({type:`body`,key:`body`,liquid:!0,chunks:[{key:`main`,content:t}]}),c&&l.push({type:`footer`,key:`footer`,isSticky:!0,chunks:[{key:`main`,content:dc}]}),N(_a,{elClasses:[`fc-daygrid`],viewSpec:o.viewSpec},N(i,{liquid:!a.isHeightAuto&&!a.forPrint,forPrint:a.forPrint,collapsibleWidth:a.forPrint,colGroups:[{cols:[{span:n,minWidth:r}]}],sections:l}))}};function wu(e,t){let n=[];for(let e=0;e<t;e+=1)n[e]=[];for(let t of e)n[t.row].push(t);return n}function Tu(e,t){let n=[];for(let e=0;e<t;e+=1)n[e]=[];for(let t of e)n[t.firstCol].push(t);return n}function Eu(e,t){let n=[];if(e){for(let r=0;r<t;r+=1)n[r]={affectedInstances:e.affectedInstances,isEvent:e.isEvent,segs:[]};for(let t of e.segs)n[t.row].segs.push(t)}else for(let e=0;e<t;e+=1)n[e]=null;return n}var Du=G({hour:`numeric`,minute:`2-digit`,omitZeroMinute:!0,meridiem:`narrow`});function Ou(e){let{display:t}=e.eventRange.ui;return t===`list-item`||t===`auto`&&!e.eventRange.def.allDay&&e.firstCol===e.lastCol&&e.isStart&&e.isEnd}var ku=class extends J{render(){let{props:e}=this;return N(_c,Object.assign({},e,{elClasses:[`fc-daygrid-event`,`fc-daygrid-block-event`,`fc-h-event`],defaultTimeFormat:Du,defaultDisplayEventEnd:e.defaultDisplayEventEnd,disableResizing:!e.seg.eventRange.def.allDay}))}},Au=class extends J{render(){let{props:e,context:t}=this,{options:n}=t,{seg:r}=e,i=Go(r,n.eventTimeFormat||Du,t,!0,e.defaultDisplayEventEnd);return N(gc,Object.assign({},e,{elTag:`a`,elClasses:[`fc-daygrid-event`,`fc-daygrid-dot-event`],elAttrs:Yo(e.seg,t),defaultGenerator:ju,timeText:i,isResizing:!1,isDateSelecting:!1}))}};function ju(e){return N(F,null,N(`div`,{className:`fc-daygrid-event-dot`,style:{borderColor:e.borderColor||e.backgroundColor}}),e.timeText&&N(`div`,{className:`fc-event-time`},e.timeText),N(`div`,{className:`fc-event-title`},e.event.title||N(F,null,`\xA0`)))}var Mu=class extends J{constructor(){super(...arguments),this.compileSegs=W(Nu)}render(){let{props:e}=this,{allSegs:t,invisibleSegs:n}=this.compileSegs(e.singlePlacements);return N(Mc,{elClasses:[`fc-daygrid-more-link`],dateProfile:e.dateProfile,todayRange:e.todayRange,allDayDate:e.allDayDate,moreCnt:e.moreCnt,allSegs:t,hiddenSegs:n,alignmentElRef:e.alignmentElRef,alignGridTop:e.alignGridTop,extraDateSpan:e.extraDateSpan,popoverContent:()=>{let n=(e.eventDrag?e.eventDrag.affectedInstances:null)||(e.eventResize?e.eventResize.affectedInstances:null)||{};return N(F,null,t.map(t=>{let r=t.eventRange.instance.instanceId;return N(`div`,{className:`fc-daygrid-event-harness`,key:r,style:{visibility:n[r]?`hidden`:``}},Ou(t)?N(Au,Object.assign({seg:t,isDragging:!1,isSelected:r===e.eventSelection,defaultDisplayEventEnd:!1},Ko(t,e.todayRange))):N(ku,Object.assign({seg:t,isDragging:!1,isResizing:!1,isDateSelecting:!1,isSelected:r===e.eventSelection,defaultDisplayEventEnd:!1},Ko(t,e.todayRange))))}))}})}};function Nu(e){let t=[],n=[];for(let r of e)t.push(r.seg),r.isVisible||n.push(r.seg);return{allSegs:t,invisibleSegs:n}}var Pu=G({week:`narrow`}),Fu=class extends Q{constructor(){super(...arguments),this.rootElRef=P(),this.state={dayNumberId:tr()},this.handleRootEl=e=>{Y(this.rootElRef,e),Y(this.props.elRef,e)}}render(){let{context:e,props:t,state:n,rootElRef:r}=this,{options:i,dateEnv:a}=e,{date:o,dateProfile:s}=t,c=t.showDayNumber&&Lu(o,s.currentRange,a);return N(xc,{elTag:`td`,elRef:this.handleRootEl,elClasses:[`fc-daygrid-day`,...t.extraClassNames||[]],elAttrs:Object.assign(Object.assign(Object.assign({},t.extraDataAttrs),t.showDayNumber?{"aria-labelledby":n.dayNumberId}:{}),{role:`gridcell`}),defaultGenerator:Iu,date:o,dateProfile:s,todayRange:t.todayRange,showDayNumber:t.showDayNumber,isMonthStart:c,extraRenderProps:t.extraRenderProps},(a,s)=>N(`div`,{ref:t.innerElRef,className:`fc-daygrid-day-frame fc-scrollgrid-sync-inner`,style:{minHeight:t.minHeight}},t.showWeekNumber&&N(Dc,{elTag:`a`,elClasses:[`fc-daygrid-week-number`],elAttrs:ws(e,o,`week`),date:o,defaultFormat:Pu}),!s.isDisabled&&(t.showDayNumber||Sc(i)||t.forceDayTop)?N(`div`,{className:`fc-daygrid-day-top`},N(a,{elTag:`a`,elClasses:[`fc-daygrid-day-number`,c&&`fc-daygrid-month-start`],elAttrs:Object.assign(Object.assign({},ws(e,o)),{id:n.dayNumberId})})):t.showDayNumber?N(`div`,{className:`fc-daygrid-day-top`,style:{visibility:`hidden`}},N(`a`,{className:`fc-daygrid-day-number`},`\xA0`)):void 0,N(`div`,{className:`fc-daygrid-day-events`,ref:t.fgContentElRef},t.fgContent,N(`div`,{className:`fc-daygrid-day-bottom`,style:{marginTop:t.moreMarginTop}},N(Mu,{allDayDate:o,singlePlacements:t.singlePlacements,moreCnt:t.moreCnt,alignmentElRef:r,alignGridTop:!t.showDayNumber,extraDateSpan:t.extraDateSpan,dateProfile:t.dateProfile,eventSelection:t.eventSelection,eventDrag:t.eventDrag,eventResize:t.eventResize,todayRange:t.todayRange}))),N(`div`,{className:`fc-daygrid-day-bg`},t.bgContent)))}};function Iu(e){return e.dayNumberText||N(F,null,`\xA0`)}function Lu(e,t,n){let{start:r,end:i}=t,a=Nr(i,-1),o=n.getYear(r),s=n.getMonth(r),c=n.getYear(a),l=n.getMonth(a);return!(o===c&&s===l)&&(e.valueOf()===r.valueOf()||n.getDay(e)===1&&e.valueOf()<i.valueOf())}function Ru(e){return e.eventRange.instance.instanceId+`:`+e.firstCol}function zu(e){return Ru(e)+`:`+e.lastCol}function Bu(e,t,n,r,i,a,o){let s=new Wu(t=>i[e[t.index].eventRange.instance.instanceId+`:`+t.span.start+`:`+(t.span.end-1)]||1);s.allowReslicing=!0,s.strictOrder=r,t===!0||n===!0?(s.maxCoord=a,s.hiddenConsumes=!0):typeof t==`number`?s.maxStackCnt=t:typeof n==`number`&&(s.maxStackCnt=n,s.hiddenConsumes=!0);let c=[],l=[];for(let t=0;t<e.length;t+=1){let n=e[t];i[zu(n)]==null?l.push(n):c.push({index:t,span:{start:n.firstCol,end:n.lastCol+1}})}let u=s.addSegs(c),{singleColPlacements:d,multiColPlacements:f,leftoverMargins:p}=Vu(s.toRects(),e,o),m=[],h=[];for(let e of l){f[e.firstCol].push({seg:e,isVisible:!1,isAbsolute:!0,absoluteTop:0,marginTop:0});for(let t=e.firstCol;t<=e.lastCol;t+=1)d[t].push({seg:Uu(e,t,t+1,o),isVisible:!1,isAbsolute:!1,absoluteTop:0,marginTop:0})}for(let e=0;e<o.length;e+=1)m.push(0);for(let t of u){let n=e[t.index],r=t.span;f[r.start].push({seg:Uu(n,r.start,r.end,o),isVisible:!1,isAbsolute:!0,absoluteTop:0,marginTop:0});for(let e=r.start;e<r.end;e+=1)m[e]+=1,d[e].push({seg:Uu(n,e,e+1,o),isVisible:!1,isAbsolute:!1,absoluteTop:0,marginTop:0})}for(let e=0;e<o.length;e+=1)h.push(p[e]);return{singleColPlacements:d,multiColPlacements:f,moreCnts:m,moreMarginTops:h}}function Vu(e,t,n){let r=Hu(e,n.length),i=[],a=[],o=[];for(let e=0;e<n.length;e+=1){let s=r[e],c=[],l=0,u=0;for(let r of s){let i=t[r.index];c.push({seg:Uu(i,e,e+1,n),isVisible:!0,isAbsolute:!1,absoluteTop:r.levelCoord,marginTop:r.levelCoord-l}),l=r.levelCoord+r.thickness}let d=[];l=0,u=0;for(let r of s){let i=t[r.index],a=r.span.end-r.span.start>1,o=r.span.start===e;u+=r.levelCoord-l,l=r.levelCoord+r.thickness,a?(u+=r.thickness,o&&d.push({seg:Uu(i,r.span.start,r.span.end,n),isVisible:!0,isAbsolute:!0,absoluteTop:r.levelCoord,marginTop:0})):o&&(d.push({seg:Uu(i,r.span.start,r.span.end,n),isVisible:!0,isAbsolute:!1,absoluteTop:r.levelCoord,marginTop:u}),u=0)}i.push(c),a.push(d),o.push(u)}return{singleColPlacements:i,multiColPlacements:a,leftoverMargins:o}}function Hu(e,t){let n=[];for(let e=0;e<t;e+=1)n.push([]);for(let t of e)for(let e=t.span.start;e<t.span.end;e+=1)n[e].push(t);return n}function Uu(e,t,n,r){if(e.firstCol===t&&e.lastCol===n-1)return e;let i=e.eventRange,a=i.range,o=Sa(a,{start:r[t].date,end:V(r[n-1].date,1)});return Object.assign(Object.assign({},e),{firstCol:t,lastCol:n-1,eventRange:{def:i.def,ui:Object.assign(Object.assign({},i.ui),{durationEditable:!1}),instance:i.instance,range:o},isStart:e.isStart&&o.start.valueOf()===a.start.valueOf(),isEnd:e.isEnd&&o.end.valueOf()===a.end.valueOf()})}var Wu=class extends Ns{constructor(){super(...arguments),this.hiddenConsumes=!1,this.forceHidden={}}addSegs(e){let t=super.addSegs(e),{entriesByLevel:n}=this,r=e=>!this.forceHidden[Fs(e)];for(let e=0;e<n.length;e+=1)n[e]=n[e].filter(r);return t}handleInvalidInsertion(e,t,n){let{entriesByLevel:r,forceHidden:i}=this,{touchingEntry:a,touchingLevel:o,touchingLateral:s}=e;if(this.hiddenConsumes&&a){let e=Fs(a);if(!i[e])if(this.allowReslicing){let e=Object.assign(Object.assign({},a),{span:Rs(a.span,t.span)}),c=Fs(e);i[c]=!0,r[o][s]=e,n.push(e),this.splitEntry(a,t,n)}else i[e]=!0,n.push(a)}super.handleInvalidInsertion(e,t,n)}},Gu=class extends Q{constructor(){super(...arguments),this.cellElRefs=new $,this.frameElRefs=new $,this.fgElRefs=new $,this.segHarnessRefs=new $,this.rootElRef=P(),this.state={framePositions:null,maxContentHeight:null,segHeights:{}},this.handleResize=e=>{e&&this.updateSizing(!0)}}render(){let{props:e,state:t,context:n}=this,{options:r}=n,i=e.cells.length,a=Tu(e.businessHourSegs,i),o=Tu(e.bgEventSegs,i),s=Tu(this.getHighlightSegs(),i),c=Tu(this.getMirrorSegs(),i),{singleColPlacements:l,multiColPlacements:u,moreCnts:d,moreMarginTops:f}=Bu(Bo(e.fgEventSegs,r.eventOrder),e.dayMaxEvents,e.dayMaxEventRows,r.eventOrderStrict,t.segHeights,t.maxContentHeight,e.cells),p=e.eventDrag&&e.eventDrag.affectedInstances||e.eventResize&&e.eventResize.affectedInstances||{};return N(`tr`,{ref:this.rootElRef,role:`row`},e.renderIntro&&e.renderIntro(),e.cells.map((t,n)=>{let r=this.renderFgSegs(n,e.forPrint?l[n]:u[n],e.todayRange,p),i=this.renderFgSegs(n,Ku(c[n],u),e.todayRange,{},!!e.eventDrag,!!e.eventResize,!1);return N(Fu,{key:t.key,elRef:this.cellElRefs.createRef(t.key),innerElRef:this.frameElRefs.createRef(t.key),dateProfile:e.dateProfile,date:t.date,showDayNumber:e.showDayNumbers,showWeekNumber:e.showWeekNumbers&&n===0,forceDayTop:e.showWeekNumbers,todayRange:e.todayRange,eventSelection:e.eventSelection,eventDrag:e.eventDrag,eventResize:e.eventResize,extraRenderProps:t.extraRenderProps,extraDataAttrs:t.extraDataAttrs,extraClassNames:t.extraClassNames,extraDateSpan:t.extraDateSpan,moreCnt:d[n],moreMarginTop:f[n],singlePlacements:l[n],fgContentElRef:this.fgElRefs.createRef(t.key),fgContent:N(F,null,N(F,null,r),N(F,null,i)),bgContent:N(F,null,this.renderFillSegs(s[n],`highlight`),this.renderFillSegs(a[n],`non-business`),this.renderFillSegs(o[n],`bg-event`)),minHeight:e.cellMinHeight})}))}componentDidMount(){this.updateSizing(!0),this.context.addResizeHandler(this.handleResize)}componentDidUpdate(e,t){let n=this.props;this.updateSizing(!q(e,n))}componentWillUnmount(){this.context.removeResizeHandler(this.handleResize)}getHighlightSegs(){let{props:e}=this;return e.eventDrag&&e.eventDrag.segs.length?e.eventDrag.segs:e.eventResize&&e.eventResize.segs.length?e.eventResize.segs:e.dateSelectionSegs}getMirrorSegs(){let{props:e}=this;return e.eventResize&&e.eventResize.segs.length?e.eventResize.segs:[]}renderFgSegs(e,t,n,r,i,a,o){let{context:s}=this,{eventSelection:c}=this.props,{framePositions:l}=this.state,u=this.props.cells.length===1,d=i||a||o,f=[];if(l)for(let e of t){let{seg:t}=e,{instanceId:p}=t.eventRange.instance,m=e.isVisible&&!r[p],h=e.isAbsolute,g=``,_=``;h&&(s.isRtl?(_=0,g=l.lefts[t.lastCol]-l.lefts[t.firstCol]):(g=0,_=l.rights[t.firstCol]-l.rights[t.lastCol])),f.push(N(`div`,{className:`fc-daygrid-event-harness`+(h?` fc-daygrid-event-harness-abs`:``),key:Ru(t),ref:d?null:this.segHarnessRefs.createRef(zu(t)),style:{visibility:m?``:`hidden`,marginTop:h?``:e.marginTop,top:h?e.absoluteTop:``,left:g,right:_}},Ou(t)?N(Au,Object.assign({seg:t,isDragging:i,isSelected:p===c,defaultDisplayEventEnd:u},Ko(t,n))):N(ku,Object.assign({seg:t,isDragging:i,isResizing:a,isDateSelecting:o,isSelected:p===c,defaultDisplayEventEnd:u},Ko(t,n)))))}return f}renderFillSegs(e,t){let{isRtl:n}=this.context,{todayRange:r}=this.props,{framePositions:i}=this.state,a=[];if(i)for(let o of e){let e=n?{right:0,left:i.lefts[o.lastCol]-i.lefts[o.firstCol]}:{left:0,right:i.rights[o.firstCol]-i.rights[o.lastCol]};a.push(N(`div`,{key:Jo(o.eventRange),className:`fc-daygrid-bg-harness`,style:e},t===`bg-event`?N(wc,Object.assign({seg:o},Ko(o,r))):Ec(t)))}return N(F,{},...a)}updateSizing(e){let{props:t,state:n,frameElRefs:r}=this;if(!t.forPrint&&t.clientWidth!==null){if(e){let e=t.cells.map(e=>r.currentMap[e.key]);if(e.length){let t=this.rootElRef.current,r=new js(t,e,!0,!1);(!n.framePositions||!n.framePositions.similarTo(r))&&this.setState({framePositions:new js(t,e,!0,!1)})}}let i=this.state.segHeights,a=this.querySegHeights(),o=t.dayMaxEvents===!0||t.dayMaxEventRows===!0;this.safeSetState({segHeights:Object.assign(Object.assign({},i),a),maxContentHeight:o?this.computeMaxContentHeight():null})}}querySegHeights(){let e=this.segHarnessRefs.currentMap,t={};for(let n in e){let r=Math.round(e[n].getBoundingClientRect().height);t[n]=Math.max(t[n]||0,r)}return t}computeMaxContentHeight(){let e=this.props.cells[0].key,t=this.cellElRefs.currentMap[e],n=this.fgElRefs.currentMap[e];return t.getBoundingClientRect().bottom-n.getBoundingClientRect().top}getCellEls(){let e=this.cellElRefs.currentMap;return this.props.cells.map(t=>e[t.key])}};Gu.addStateEquality({segHeights:q});function Ku(e,t){if(!e.length)return[];let n=qu(t);return e.map(e=>({seg:e,isVisible:!0,isAbsolute:!0,absoluteTop:n[e.eventRange.instance.instanceId],marginTop:0}))}function qu(e){let t={};for(let n of e)for(let e of n)t[e.seg.eventRange.instance.instanceId]=e.absoluteTop;return t}var Ju=class extends Q{constructor(){super(...arguments),this.splitBusinessHourSegs=W(wu),this.splitBgEventSegs=W(Yu),this.splitFgEventSegs=W(wu),this.splitDateSelectionSegs=W(wu),this.splitEventDrag=W(Eu),this.splitEventResize=W(Eu),this.rowRefs=new $}render(){let{props:e,context:t}=this,n=e.cells.length,r=this.splitBusinessHourSegs(e.businessHourSegs,n),i=this.splitBgEventSegs(e.bgEventSegs,n),a=this.splitFgEventSegs(e.fgEventSegs,n),o=this.splitDateSelectionSegs(e.dateSelectionSegs,n),s=this.splitEventDrag(e.eventDrag,n),c=this.splitEventResize(e.eventResize,n),l=n>=7&&e.clientWidth?e.clientWidth/t.options.aspectRatio/6:null;return N(ps,{unit:`day`},(t,u)=>N(F,null,e.cells.map((t,d)=>N(Gu,{ref:this.rowRefs.createRef(d),key:t.length?t[0].date.toISOString():d,showDayNumbers:n>1,showWeekNumbers:e.showWeekNumbers,todayRange:u,dateProfile:e.dateProfile,cells:t,renderIntro:e.renderRowIntro,businessHourSegs:r[d],eventSelection:e.eventSelection,bgEventSegs:i[d],fgEventSegs:a[d],dateSelectionSegs:o[d],eventDrag:s[d],eventResize:c[d],dayMaxEvents:e.dayMaxEvents,dayMaxEventRows:e.dayMaxEventRows,clientWidth:e.clientWidth,clientHeight:e.clientHeight,cellMinHeight:l,forPrint:e.forPrint}))))}componentDidMount(){this.registerInteractiveComponent()}componentDidUpdate(){this.registerInteractiveComponent()}registerInteractiveComponent(){if(!this.rootEl){let e=this.rowRefs.currentMap[0].getCellEls()[0],t=e?e.closest(`.fc-daygrid-body`):null;t&&(this.rootEl=t,this.context.registerInteractiveComponent(this,{el:t,isHitComboAllowed:this.props.isHitComboAllowed}))}}componentWillUnmount(){this.rootEl&&=(this.context.unregisterInteractiveComponent(this),null)}prepareHits(){this.rowPositions=new js(this.rootEl,this.rowRefs.collect().map(e=>e.getCellEls()[0]),!1,!0),this.colPositions=new js(this.rootEl,this.rowRefs.currentMap[0].getCellEls(),!0,!1)}queryHit(e,t){let{colPositions:n,rowPositions:r}=this,i=n.leftToIndex(e),a=r.topToIndex(t);if(a!=null&&i!=null){let e=this.props.cells[a][i];return{dateProfile:this.props.dateProfile,dateSpan:Object.assign({range:this.getCellRange(a,i),allDay:!0},e.extraDateSpan),dayEl:this.getCellEl(a,i),rect:{left:n.lefts[i],right:n.rights[i],top:r.tops[a],bottom:r.bottoms[a]},layer:0}}return null}getCellEl(e,t){return this.rowRefs.currentMap[e].getCellEls()[t]}getCellRange(e,t){let n=this.props.cells[e][t].date;return{start:n,end:V(n,1)}}};function Yu(e,t){return wu(e.filter(Xu),t)}function Xu(e){return e.eventRange.def.allDay}var Zu=class extends Q{constructor(){super(...arguments),this.elRef=P(),this.needsScrollReset=!1}render(){let{props:e}=this,{dayMaxEventRows:t,dayMaxEvents:n,expandRows:r}=e,i=n===!0||t===!0;i&&!r&&(i=!1,t=null,n=null);let a=[`fc-daygrid-body`,i?`fc-daygrid-body-balanced`:`fc-daygrid-body-unbalanced`,r?``:`fc-daygrid-body-natural`];return N(`div`,{ref:this.elRef,className:a.join(` `),style:{width:e.clientWidth,minWidth:e.tableMinWidth}},N(`table`,{role:`presentation`,className:`fc-scrollgrid-sync-table`,style:{width:e.clientWidth,minWidth:e.tableMinWidth,height:r?e.clientHeight:``}},e.colGroupNode,N(`tbody`,{role:`presentation`},N(Ju,{dateProfile:e.dateProfile,cells:e.cells,renderRowIntro:e.renderRowIntro,showWeekNumbers:e.showWeekNumbers,clientWidth:e.clientWidth,clientHeight:e.clientHeight,businessHourSegs:e.businessHourSegs,bgEventSegs:e.bgEventSegs,fgEventSegs:e.fgEventSegs,dateSelectionSegs:e.dateSelectionSegs,eventSelection:e.eventSelection,eventDrag:e.eventDrag,eventResize:e.eventResize,dayMaxEvents:n,dayMaxEventRows:t,forPrint:e.forPrint,isHitComboAllowed:e.isHitComboAllowed}))))}componentDidMount(){this.requestScrollReset()}componentDidUpdate(e){e.dateProfile===this.props.dateProfile?this.flushScrollReset():this.requestScrollReset()}requestScrollReset(){this.needsScrollReset=!0,this.flushScrollReset()}flushScrollReset(){if(this.needsScrollReset&&this.props.clientWidth){let e=Qu(this.elRef.current,this.props.dateProfile);if(e){let t=e.closest(`.fc-daygrid-body`),n=t.closest(`.fc-scroller`),r=e.getBoundingClientRect().top-t.getBoundingClientRect().top;n.scrollTop=r?r+1:0}this.needsScrollReset=!1}}};function Qu(e,t){let n;return t.currentRangeUnit.match(/year|month/)&&(n=e.querySelector(`[data-date="${ti(t.currentDate)}-01"]`)),n||=e.querySelector(`[data-date="${ei(t.currentDate)}"]`),n}var $u=class extends Zs{constructor(){super(...arguments),this.forceDayIfListItem=!0}sliceRange(e,t){return t.sliceRange(e)}},ed=class extends Q{constructor(){super(...arguments),this.slicer=new $u,this.tableRef=P()}render(){let{props:e,context:t}=this;return N(Zu,Object.assign({ref:this.tableRef},this.slicer.sliceProps(e,e.dateProfile,e.nextDayThreshold,t,e.dayTableModel),{dateProfile:e.dateProfile,cells:e.dayTableModel.cells,colGroupNode:e.colGroupNode,tableMinWidth:e.tableMinWidth,renderRowIntro:e.renderRowIntro,dayMaxEvents:e.dayMaxEvents,dayMaxEventRows:e.dayMaxEventRows,showWeekNumbers:e.showWeekNumbers,expandRows:e.expandRows,headerAlignElRef:e.headerAlignElRef,clientWidth:e.clientWidth,clientHeight:e.clientHeight,forPrint:e.forPrint}))}},td=class extends Cu{constructor(){super(...arguments),this.buildDayTableModel=W(nd),this.headerRef=P(),this.tableRef=P()}render(){let{options:e,dateProfileGenerator:t}=this.context,{props:n}=this,r=this.buildDayTableModel(n.dateProfile,t),i=e.dayHeaders&&N(qs,{ref:this.headerRef,dateProfile:n.dateProfile,dates:r.headerDates,datesRepDistinctDays:r.rowCnt===1}),a=t=>N(ed,{ref:this.tableRef,dateProfile:n.dateProfile,dayTableModel:r,businessHours:n.businessHours,dateSelection:n.dateSelection,eventStore:n.eventStore,eventUiBases:n.eventUiBases,eventSelection:n.eventSelection,eventDrag:n.eventDrag,eventResize:n.eventResize,nextDayThreshold:e.nextDayThreshold,colGroupNode:t.tableColGroupNode,tableMinWidth:t.tableMinWidth,dayMaxEvents:e.dayMaxEvents,dayMaxEventRows:e.dayMaxEventRows,showWeekNumbers:e.weekNumbers,expandRows:!n.isHeightAuto,headerAlignElRef:this.headerElRef,clientWidth:t.clientWidth,clientHeight:t.clientHeight,forPrint:n.forPrint});return e.dayMinWidth?this.renderHScrollLayout(i,a,r.colCnt,e.dayMinWidth):this.renderSimpleLayout(i,a)}};function nd(e,t){return new Xs(new Ys(e.renderRange,t),/year|month|week/.test(e.currentRangeUnit))}var rd=class extends ka{buildRenderRange(e,t,n){let r=super.buildRenderRange(e,t,n),{props:i}=this;return id({currentRange:r,snapToWeek:/^(year|month)$/.test(t),fixedWeekCount:i.fixedWeekCount,dateEnv:i.dateEnv})}};function id(e){let{dateEnv:t,currentRange:n}=e,{start:r,end:i}=n,a;if(e.snapToWeek&&(r=t.startOfWeek(r),a=t.startOfWeek(i),a.valueOf()!==i.valueOf()&&(i=Mr(a,1))),e.fixedWeekCount){let e=t.startOfWeek(t.startOfMonth(V(n.end,-1))),r=Math.ceil(Pr(e,i));i=Mr(i,6-r)}return{start:r,end:i}}Rn(`:root{--fc-daygrid-event-dot-width:8px}.fc-daygrid-day-events:after,.fc-daygrid-day-events:before,.fc-daygrid-day-frame:after,.fc-daygrid-day-frame:before,.fc-daygrid-event-harness:after,.fc-daygrid-event-harness:before{clear:both;content:"";display:table}.fc .fc-daygrid-body{position:relative;z-index:1}.fc .fc-daygrid-day.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-daygrid-day-frame{min-height:100%;position:relative}.fc .fc-daygrid-day-top{display:flex;flex-direction:row-reverse}.fc .fc-day-other .fc-daygrid-day-top{opacity:.3}.fc .fc-daygrid-day-number{padding:4px;position:relative;z-index:4}.fc .fc-daygrid-month-start{font-size:1.1em;font-weight:700}.fc .fc-daygrid-day-events{margin-top:1px}.fc .fc-daygrid-body-balanced .fc-daygrid-day-events{left:0;position:absolute;right:0}.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events{min-height:2em;position:relative}.fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom:1em}.fc .fc-daygrid-event-harness{position:relative}.fc .fc-daygrid-event-harness-abs{left:0;position:absolute;right:0;top:0}.fc .fc-daygrid-bg-harness{bottom:0;position:absolute;top:0}.fc .fc-daygrid-day-bg .fc-non-business{z-index:1}.fc .fc-daygrid-day-bg .fc-bg-event{z-index:2}.fc .fc-daygrid-day-bg .fc-highlight{z-index:3}.fc .fc-daygrid-event{margin-top:1px;z-index:6}.fc .fc-daygrid-event.fc-event-mirror{z-index:7}.fc .fc-daygrid-day-bottom{font-size:.85em;margin:0 2px}.fc .fc-daygrid-day-bottom:after,.fc .fc-daygrid-day-bottom:before{clear:both;content:"";display:table}.fc .fc-daygrid-more-link{border-radius:3px;cursor:pointer;line-height:1;margin-top:1px;max-width:100%;overflow:hidden;padding:2px;position:relative;white-space:nowrap;z-index:4}.fc .fc-daygrid-more-link:hover{background-color:rgba(0,0,0,.1)}.fc .fc-daygrid-week-number{background-color:var(--fc-neutral-bg-color);color:var(--fc-neutral-text-color);min-width:1.5em;padding:2px;position:absolute;text-align:center;top:0;z-index:5}.fc .fc-more-popover .fc-popover-body{min-width:220px;padding:10px}.fc-direction-ltr .fc-daygrid-event.fc-event-start,.fc-direction-rtl .fc-daygrid-event.fc-event-end{margin-left:2px}.fc-direction-ltr .fc-daygrid-event.fc-event-end,.fc-direction-rtl .fc-daygrid-event.fc-event-start{margin-right:2px}.fc-direction-ltr .fc-daygrid-more-link{float:left}.fc-direction-ltr .fc-daygrid-week-number{border-radius:0 0 3px 0;left:0}.fc-direction-rtl .fc-daygrid-more-link{float:right}.fc-direction-rtl .fc-daygrid-week-number{border-radius:0 0 0 3px;right:0}.fc-liquid-hack .fc-daygrid-day-frame{position:static}.fc-daygrid-event{border-radius:3px;font-size:var(--fc-small-font-size);position:relative;white-space:nowrap}.fc-daygrid-block-event .fc-event-time{font-weight:700}.fc-daygrid-block-event .fc-event-time,.fc-daygrid-block-event .fc-event-title{padding:1px}.fc-daygrid-dot-event{align-items:center;display:flex;padding:2px 0}.fc-daygrid-dot-event .fc-event-title{flex-grow:1;flex-shrink:1;font-weight:700;min-width:0;overflow:hidden}.fc-daygrid-dot-event.fc-event-mirror,.fc-daygrid-dot-event:hover{background:rgba(0,0,0,.1)}.fc-daygrid-dot-event.fc-event-selected:before{bottom:-10px;top:-10px}.fc-daygrid-event-dot{border:calc(var(--fc-daygrid-event-dot-width)/2) solid var(--fc-event-border-color);border-radius:calc(var(--fc-daygrid-event-dot-width)/2);box-sizing:content-box;height:0;margin:0 4px;width:0}.fc-direction-ltr .fc-daygrid-event .fc-event-time{margin-right:3px}.fc-direction-rtl .fc-daygrid-event .fc-event-time{margin-left:3px}`);var ad=Yc({name:`@fullcalendar/daygrid`,initialView:`dayGridMonth`,views:{dayGrid:{component:td,dateProfileGeneratorClass:rd},dayGridDay:{type:`dayGrid`,duration:{days:1}},dayGridWeek:{type:`dayGrid`,duration:{weeks:1}},dayGridMonth:{type:`dayGrid`,duration:{months:1},fixedWeekCount:!0},dayGridYear:{type:`dayGrid`,duration:{years:1}}}}),od=class extends vs{getKeyInfo(){return{allDay:{},timed:{}}}getKeysForDateSpan(e){return e.allDay?[`allDay`]:[`timed`]}getKeysForEventDef(e){return e.allDay?Fo(e)?[`timed`,`allDay`]:[`allDay`]:[`timed`]}},sd=G({hour:`numeric`,minute:`2-digit`,omitZeroMinute:!0,meridiem:`short`});function cd(e){let t=[`fc-timegrid-slot`,`fc-timegrid-slot-label`,e.isLabeled?`fc-scrollgrid-shrink`:`fc-timegrid-slot-minor`];return N(aa.Consumer,null,n=>{if(!e.isLabeled)return N(`td`,{className:t.join(` `),"data-time":e.isoTimeStr});let{dateEnv:r,options:i,viewApi:a}=n,o=i.slotLabelFormat==null?sd:Array.isArray(i.slotLabelFormat)?G(i.slotLabelFormat[0]):G(i.slotLabelFormat),s={level:0,time:e.time,date:r.toDate(e.date),view:a,text:r.format(e.date,o)};return N(X,{elTag:`td`,elClasses:t,elAttrs:{"data-time":e.isoTimeStr},renderProps:s,generatorName:`slotLabelContent`,customGenerator:i.slotLabelContent,defaultGenerator:ld,classNameGenerator:i.slotLabelClassNames,didMount:i.slotLabelDidMount,willUnmount:i.slotLabelWillUnmount},e=>N(`div`,{className:`fc-timegrid-slot-label-frame fc-scrollgrid-shrink-frame`},N(e,{elTag:`div`,elClasses:[`fc-timegrid-slot-label-cushion`,`fc-scrollgrid-shrink-cushion`]})))})}function ld(e){return e.text}var ud=class extends J{render(){return this.props.slatMetas.map(e=>N(`tr`,{key:e.key},N(cd,Object.assign({},e))))}},dd=G({week:`short`}),fd=5,pd=class extends Q{constructor(){super(...arguments),this.allDaySplitter=new od,this.headerElRef=P(),this.rootElRef=P(),this.scrollerElRef=P(),this.state={slatCoords:null},this.handleScrollTopRequest=e=>{let t=this.scrollerElRef.current;t&&(t.scrollTop=e)},this.renderHeadAxis=(e,t=``)=>{let{options:n}=this.context,{dateProfile:r}=this.props,i=r.renderRange,a=Fr(i.start,i.end)===1?ws(this.context,i.start,`week`):{};return n.weekNumbers&&e===`day`?N(Dc,{elTag:`th`,elClasses:[`fc-timegrid-axis`,`fc-scrollgrid-shrink`],elAttrs:{"aria-hidden":!0},date:i.start,defaultFormat:dd},e=>N(`div`,{className:[`fc-timegrid-axis-frame`,`fc-scrollgrid-shrink-frame`,`fc-timegrid-axis-frame-liquid`].join(` `),style:{height:t}},N(e,{elTag:`a`,elClasses:[`fc-timegrid-axis-cushion`,`fc-scrollgrid-shrink-cushion`,`fc-scrollgrid-sync-inner`],elAttrs:a}))):N(`th`,{"aria-hidden":!0,className:`fc-timegrid-axis`},N(`div`,{className:`fc-timegrid-axis-frame`,style:{height:t}}))},this.renderTableRowAxis=e=>{let{options:t,viewApi:n}=this.context;return N(X,{elTag:`td`,elClasses:[`fc-timegrid-axis`,`fc-scrollgrid-shrink`],elAttrs:{"aria-hidden":!0},renderProps:{text:t.allDayText,view:n},generatorName:`allDayContent`,customGenerator:t.allDayContent,defaultGenerator:md,classNameGenerator:t.allDayClassNames,didMount:t.allDayDidMount,willUnmount:t.allDayWillUnmount},t=>N(`div`,{className:[`fc-timegrid-axis-frame`,`fc-scrollgrid-shrink-frame`,e==null?` fc-timegrid-axis-frame-liquid`:``].join(` `),style:{height:e}},N(t,{elTag:`span`,elClasses:[`fc-timegrid-axis-cushion`,`fc-scrollgrid-shrink-cushion`,`fc-scrollgrid-sync-inner`]})))},this.handleSlatCoords=e=>{this.setState({slatCoords:e})}}renderSimpleLayout(e,t,n){let{context:r,props:i}=this,a=[],o=fc(r.options);return e&&a.push({type:`header`,key:`header`,isSticky:o,chunk:{elRef:this.headerElRef,tableClassName:`fc-col-header`,rowContent:e}}),t&&(a.push({type:`body`,key:`all-day`,chunk:{content:t}}),a.push({type:`body`,key:`all-day-divider`,outerContent:N(`tr`,{role:`presentation`,className:`fc-scrollgrid-section`},N(`td`,{className:`fc-timegrid-divider `+r.theme.getClass(`tableCellShaded`)}))})),a.push({type:`body`,key:`body`,liquid:!0,expandRows:!!r.options.expandRows,chunk:{scrollerElRef:this.scrollerElRef,content:n}}),N(_a,{elRef:this.rootElRef,elClasses:[`fc-timegrid`],viewSpec:r.viewSpec},N(mc,{liquid:!i.isHeightAuto&&!i.forPrint,collapsibleWidth:i.forPrint,cols:[{width:`shrink`}],sections:a}))}renderHScrollLayout(e,t,n,r,i,a,o){let s=this.context.pluginHooks.scrollGridImpl;if(!s)throw Error(`No ScrollGrid implementation`);let{context:c,props:l}=this,u=!l.forPrint&&fc(c.options),d=!l.forPrint&&pc(c.options),f=[];e&&f.push({type:`header`,key:`header`,isSticky:u,syncRowHeights:!0,chunks:[{key:`axis`,rowContent:e=>N(`tr`,{role:`presentation`},this.renderHeadAxis(`day`,e.rowSyncHeights[0]))},{key:`cols`,elRef:this.headerElRef,tableClassName:`fc-col-header`,rowContent:e}]}),t&&(f.push({type:`body`,key:`all-day`,syncRowHeights:!0,chunks:[{key:`axis`,rowContent:e=>N(`tr`,{role:`presentation`},this.renderTableRowAxis(e.rowSyncHeights[0]))},{key:`cols`,content:t}]}),f.push({key:`all-day-divider`,type:`body`,outerContent:N(`tr`,{role:`presentation`,className:`fc-scrollgrid-section`},N(`td`,{colSpan:2,className:`fc-timegrid-divider `+c.theme.getClass(`tableCellShaded`)}))}));let p=c.options.nowIndicator;return f.push({type:`body`,key:`body`,liquid:!0,expandRows:!!c.options.expandRows,chunks:[{key:`axis`,content:e=>N(`div`,{className:`fc-timegrid-axis-chunk`},N(`table`,{"aria-hidden":!0,style:{height:e.expandRows?e.clientHeight:``}},e.tableColGroupNode,N(`tbody`,null,N(ud,{slatMetas:a}))),N(`div`,{className:`fc-timegrid-now-indicator-container`},N(ps,{unit:p?`minute`:`day`},e=>{let t=p&&o&&o.safeComputeTop(e);return typeof t==`number`?N(yc,{elClasses:[`fc-timegrid-now-indicator-arrow`],elStyle:{top:t},isAxis:!0,date:e}):null})))},{key:`cols`,scrollerElRef:this.scrollerElRef,content:n}]}),d&&f.push({key:`footer`,type:`footer`,isSticky:!0,chunks:[{key:`axis`,content:dc},{key:`cols`,content:dc}]}),N(_a,{elRef:this.rootElRef,elClasses:[`fc-timegrid`],viewSpec:c.viewSpec},N(s,{liquid:!l.isHeightAuto&&!l.forPrint,forPrint:l.forPrint,collapsibleWidth:!1,colGroups:[{width:`shrink`,cols:[{width:`shrink`}]},{cols:[{span:r,minWidth:i}]}],sections:f}))}getAllDayMaxEventProps(){let{dayMaxEvents:e,dayMaxEventRows:t}=this.context.options;return(e===!0||t===!0)&&(e=void 0,t=fd),{dayMaxEvents:e,dayMaxEventRows:t}}};function md(e){return e.text}var hd=class{constructor(e,t,n){this.positions=e,this.dateProfile=t,this.slotDuration=n}safeComputeTop(e){let{dateProfile:t}=this;if(wa(t.currentRange,e)){let n=H(e),r=e.valueOf()-n.valueOf();if(r>=B(t.slotMinTime)&&r<B(t.slotMaxTime))return this.computeTimeTop(z(r))}return null}computeDateTop(e,t){return t||=H(e),this.computeTimeTop(z(e.valueOf()-t.valueOf()))}computeTimeTop(e){let{positions:t,dateProfile:n}=this,r=t.els.length,i=(e.milliseconds-B(n.slotMinTime))/B(this.slotDuration),a,o;return i=Math.max(0,i),i=Math.min(r,i),a=Math.floor(i),a=Math.min(a,r-1),o=i-a,t.tops[a]+t.getHeight(a)*o}},gd=class extends J{render(){let{props:e,context:t}=this,{options:n}=t,{slatElRefs:r}=e;return N(`tbody`,null,e.slatMetas.map((i,a)=>{let o={time:i.time,date:t.dateEnv.toDate(i.date),view:t.viewApi};return N(`tr`,{key:i.key,ref:r.createRef(i.key)},e.axis&&N(cd,Object.assign({},i)),N(X,{elTag:`td`,elClasses:[`fc-timegrid-slot`,`fc-timegrid-slot-lane`,!i.isLabeled&&`fc-timegrid-slot-minor`],elAttrs:{"data-time":i.isoTimeStr},renderProps:o,generatorName:`slotLaneContent`,customGenerator:n.slotLaneContent,classNameGenerator:n.slotLaneClassNames,didMount:n.slotLaneDidMount,willUnmount:n.slotLaneWillUnmount}))}))}},_d=class extends J{constructor(){super(...arguments),this.rootElRef=P(),this.slatElRefs=new $}render(){let{props:e,context:t}=this;return N(`div`,{ref:this.rootElRef,className:`fc-timegrid-slots`},N(`table`,{"aria-hidden":!0,className:t.theme.getClass(`table`),style:{minWidth:e.tableMinWidth,width:e.clientWidth,height:e.minHeight}},e.tableColGroupNode,N(gd,{slatElRefs:this.slatElRefs,axis:e.axis,slatMetas:e.slatMetas})))}componentDidMount(){this.updateSizing()}componentDidUpdate(){this.updateSizing()}componentWillUnmount(){this.props.onCoords&&this.props.onCoords(null)}updateSizing(){let{context:e,props:t}=this;t.onCoords&&t.clientWidth!==null&&this.rootElRef.current.offsetHeight&&t.onCoords(new hd(new js(this.rootElRef.current,vd(this.slatElRefs.currentMap,t.slatMetas),!1,!0),this.props.dateProfile,e.options.slotDuration))}};function vd(e,t){return t.map(t=>e[t.key])}function yd(e,t){let n=[],r;for(r=0;r<t;r+=1)n.push([]);if(e)for(r=0;r<e.length;r+=1)n[e[r].col].push(e[r]);return n}function bd(e,t){let n=[];if(e){for(let r=0;r<t;r+=1)n[r]={affectedInstances:e.affectedInstances,isEvent:e.isEvent,segs:[]};for(let t of e.segs)n[t.col].segs.push(t)}else for(let e=0;e<t;e+=1)n[e]=null;return n}var xd=class extends J{render(){let{props:e}=this;return N(Mc,{elClasses:[`fc-timegrid-more-link`],elStyle:{top:e.top,bottom:e.bottom},allDayDate:null,moreCnt:e.hiddenSegs.length,allSegs:e.hiddenSegs,hiddenSegs:e.hiddenSegs,extraDateSpan:e.extraDateSpan,dateProfile:e.dateProfile,todayRange:e.todayRange,popoverContent:()=>Ld(e.hiddenSegs,e),defaultGenerator:Sd,forceTimed:!0},e=>N(e,{elTag:`div`,elClasses:[`fc-timegrid-more-link-inner`,`fc-sticky`]}))}};function Sd(e){return e.shortText}function Cd(e,t,n){let r=new Ns;t!=null&&(r.strictOrder=t),n!=null&&(r.maxStackCnt=n);let i=Is(r.addSegs(e)),a=wd(r);return a=kd(a,1),{segRects:Ad(a),hiddenGroups:i}}function wd(e){let{entriesByLevel:t}=e,n=jd((e,t)=>e+`:`+t,(r,i)=>{let a=Td(Od(e,r,i),n),o=t[r][i];return[Object.assign(Object.assign({},o),{nextLevelNodes:a[0]}),o.thickness+a[1]]});return Td(t.length?{level:0,lateralStart:0,lateralEnd:t[0].length}:null,n)[0]}function Td(e,t){if(!e)return[[],0];let{level:n,lateralStart:r,lateralEnd:i}=e,a=r,o=[];for(;a<i;)o.push(t(n,a)),a+=1;return o.sort(Ed),[o.map(Dd),o[0][1]]}function Ed(e,t){return t[1]-e[1]}function Dd(e){return e[0]}function Od(e,t,n){let{levelCoords:r,entriesByLevel:i}=e,a=i[t][n],o=r[t]+a.thickness,s=r.length,c=t;for(;c<s&&r[c]<o;c+=1);for(;c<s;c+=1){let e=i[c],t,n=Bs(e,a.span.start,Ps),r=n[0]+n[1],o=r;for(;(t=e[o])&&t.span.start<a.span.end;)o+=1;if(r<o)return{level:c,lateralStart:r,lateralEnd:o}}return null}function kd(e,t){let n=jd((e,t,n)=>Fs(e),(e,r,i)=>{let{nextLevelNodes:a,thickness:o}=e,s=o+i,c=o/s,l,u=[];if(!a.length)l=t;else for(let e of a)if(l===void 0){let t=n(e,r,s);l=t[0],u.push(t[1])}else{let t=n(e,l,0);u.push(t[1])}let d=(l-r)*c;return[l-d,Object.assign(Object.assign({},e),{thickness:d,nextLevelNodes:u})]});return e.map(e=>n(e,0,0)[1])}function Ad(e){let t=[],n=jd((e,t,n)=>Fs(e),(e,n,i)=>{let a=Object.assign(Object.assign({},e),{levelCoord:n,stackDepth:i,stackForward:0});return t.push(a),a.stackForward=r(e.nextLevelNodes,n+e.thickness,i+1)+1});function r(e,t,r){let i=0;for(let a of e)i=Math.max(n(a,t,r),i);return i}return r(e,0,0),t}function jd(e,t){let n={};return(...r)=>{let i=e(...r);return i in n?n[i]:n[i]=t(...r)}}function Md(e,t,n=null,r=0){let i=[];if(n)for(let a=0;a<e.length;a+=1){let o=e[a],s=n.computeDateTop(o.start,t),c=Math.max(s+(r||0),n.computeDateTop(o.end,t));i.push({start:Math.round(s),end:Math.round(c)})}return i}function Nd(e,t,n,r){let i=[],a=[];for(let n=0;n<e.length;n+=1){let r=t[n];r?i.push({index:n,thickness:1,span:r}):a.push(e[n])}let{segRects:o,hiddenGroups:s}=Cd(i,n,r),c=[];for(let t of o)c.push({seg:e[t.index],rect:t});for(let e of a)c.push({seg:e,rect:null});return{segPlacements:c,hiddenGroups:s}}var Pd=G({hour:`numeric`,minute:`2-digit`,meridiem:!1}),Fd=class extends J{render(){return N(_c,Object.assign({},this.props,{elClasses:[`fc-timegrid-event`,`fc-v-event`,this.props.isShort&&`fc-timegrid-event-short`],defaultTimeFormat:Pd}))}},Id=class extends J{constructor(){super(...arguments),this.sortEventSegs=W(Bo)}render(){let{props:e,context:t}=this,{options:n}=t,r=n.selectMirror,i=e.eventDrag&&e.eventDrag.segs||e.eventResize&&e.eventResize.segs||r&&e.dateSelectionSegs||[],a=e.eventDrag&&e.eventDrag.affectedInstances||e.eventResize&&e.eventResize.affectedInstances||{},o=this.sortEventSegs(e.fgEventSegs,n.eventOrder);return N(xc,{elTag:`td`,elRef:e.elRef,elClasses:[`fc-timegrid-col`,...e.extraClassNames||[]],elAttrs:Object.assign({role:`gridcell`},e.extraDataAttrs),date:e.date,dateProfile:e.dateProfile,todayRange:e.todayRange,extraRenderProps:e.extraRenderProps},t=>N(`div`,{className:`fc-timegrid-col-frame`},N(`div`,{className:`fc-timegrid-col-bg`},this.renderFillSegs(e.businessHourSegs,`non-business`),this.renderFillSegs(e.bgEventSegs,`bg-event`),this.renderFillSegs(e.dateSelectionSegs,`highlight`)),N(`div`,{className:`fc-timegrid-col-events`},this.renderFgSegs(o,a,!1,!1,!1)),N(`div`,{className:`fc-timegrid-col-events`},this.renderFgSegs(i,{},!!e.eventDrag,!!e.eventResize,!!r,`mirror`)),N(`div`,{className:`fc-timegrid-now-indicator-container`},this.renderNowIndicator(e.nowIndicatorSegs)),Sc(n)&&N(t,{elTag:`div`,elClasses:[`fc-timegrid-col-misc`]})))}renderFgSegs(e,t,n,r,i,a){let{props:o}=this;return o.forPrint?Ld(e,o):this.renderPositionedFgSegs(e,t,n,r,i,a)}renderPositionedFgSegs(e,t,n,r,i,a){let{eventMaxStack:o,eventShortHeight:s,eventOrderStrict:c,eventMinHeight:l}=this.context.options,{date:u,slatCoords:d,eventSelection:f,todayRange:p,nowDate:m}=this.props,h=n||r||i,{segPlacements:g,hiddenGroups:_}=Nd(e,Md(e,u,d,l),c,o);return N(F,null,this.renderHiddenGroups(_,e),g.map(e=>{let{seg:o,rect:c}=e,l=o.eventRange.instance.instanceId,u=h||!!(!t[l]&&c),d=Rd(c&&c.span),g=!h&&c?this.computeSegHStyle(c):{left:0,right:0},_=!!c&&c.stackForward>0,v=!!c&&c.span.end-c.span.start<s;return N(`div`,{className:`fc-timegrid-event-harness`+(_?` fc-timegrid-event-harness-inset`:``),key:a||l,style:Object.assign(Object.assign({visibility:u?``:`hidden`},d),g)},N(Fd,Object.assign({seg:o,isDragging:n,isResizing:r,isDateSelecting:i,isSelected:l===f,isShort:v},Ko(o,p,m))))}))}renderHiddenGroups(e,t){let{extraDateSpan:n,dateProfile:r,todayRange:i,nowDate:a,eventSelection:o,eventDrag:s,eventResize:c}=this.props;return N(F,null,e.map(e=>{let l=Rd(e.span),u=zd(e.entries,t);return N(xd,{key:$r(Fc(u)),hiddenSegs:u,top:l.top,bottom:l.bottom,extraDateSpan:n,dateProfile:r,todayRange:i,nowDate:a,eventSelection:o,eventDrag:s,eventResize:c})}))}renderFillSegs(e,t){let{props:n,context:r}=this;return N(F,null,Md(e,n.date,n.slatCoords,r.options.eventMinHeight).map((r,i)=>{let a=e[i];return N(`div`,{key:Jo(a.eventRange),className:`fc-timegrid-bg-harness`,style:Rd(r)},t===`bg-event`?N(wc,Object.assign({seg:a},Ko(a,n.todayRange,n.nowDate))):Ec(t))}))}renderNowIndicator(e){let{slatCoords:t,date:n}=this.props;return t?e.map((e,r)=>N(yc,{key:r,elClasses:[`fc-timegrid-now-indicator-line`],elStyle:{top:t.computeDateTop(e.start,n)},isAxis:!1,date:n})):null}computeSegHStyle(e){let{isRtl:t,options:n}=this.context,r=n.slotEventOverlap,i=e.levelCoord,a=e.levelCoord+e.thickness,o,s;r&&(a=Math.min(1,i+(a-i)*2)),t?(o=1-a,s=i):(o=i,s=1-a);let c={zIndex:e.stackDepth+1,left:o*100+`%`,right:s*100+`%`};return r&&!e.stackForward&&(c[t?`marginLeft`:`marginRight`]=20),c}};function Ld(e,{todayRange:t,nowDate:n,eventSelection:r,eventDrag:i,eventResize:a}){let o=(i?i.affectedInstances:null)||(a?a.affectedInstances:null)||{};return N(F,null,e.map(e=>{let i=e.eventRange.instance.instanceId;return N(`div`,{key:i,style:{visibility:o[i]?`hidden`:``}},N(Fd,Object.assign({seg:e,isDragging:!1,isResizing:!1,isDateSelecting:!1,isSelected:i===r,isShort:!1},Ko(e,t,n))))}))}function Rd(e){return e?{top:e.start,bottom:-e.end}:{top:``,bottom:``}}function zd(e,t){return e.map(e=>t[e.index])}var Bd=class extends J{constructor(){super(...arguments),this.splitFgEventSegs=W(yd),this.splitBgEventSegs=W(yd),this.splitBusinessHourSegs=W(yd),this.splitNowIndicatorSegs=W(yd),this.splitDateSelectionSegs=W(yd),this.splitEventDrag=W(bd),this.splitEventResize=W(bd),this.rootElRef=P(),this.cellElRefs=new $}render(){let{props:e,context:t}=this,n=t.options.nowIndicator&&e.slatCoords&&e.slatCoords.safeComputeTop(e.nowDate),r=e.cells.length,i=this.splitFgEventSegs(e.fgEventSegs,r),a=this.splitBgEventSegs(e.bgEventSegs,r),o=this.splitBusinessHourSegs(e.businessHourSegs,r),s=this.splitNowIndicatorSegs(e.nowIndicatorSegs,r),c=this.splitDateSelectionSegs(e.dateSelectionSegs,r),l=this.splitEventDrag(e.eventDrag,r),u=this.splitEventResize(e.eventResize,r);return N(`div`,{className:`fc-timegrid-cols`,ref:this.rootElRef},N(`table`,{role:`presentation`,style:{minWidth:e.tableMinWidth,width:e.clientWidth}},e.tableColGroupNode,N(`tbody`,{role:`presentation`},N(`tr`,{role:`row`},e.axis&&N(`td`,{"aria-hidden":!0,className:`fc-timegrid-col fc-timegrid-axis`},N(`div`,{className:`fc-timegrid-col-frame`},N(`div`,{className:`fc-timegrid-now-indicator-container`},typeof n==`number`&&N(yc,{elClasses:[`fc-timegrid-now-indicator-arrow`],elStyle:{top:n},isAxis:!0,date:e.nowDate})))),e.cells.map((t,n)=>N(Id,{key:t.key,elRef:this.cellElRefs.createRef(t.key),dateProfile:e.dateProfile,date:t.date,nowDate:e.nowDate,todayRange:e.todayRange,extraRenderProps:t.extraRenderProps,extraDataAttrs:t.extraDataAttrs,extraClassNames:t.extraClassNames,extraDateSpan:t.extraDateSpan,fgEventSegs:i[n],bgEventSegs:a[n],businessHourSegs:o[n],nowIndicatorSegs:s[n],dateSelectionSegs:c[n],eventDrag:l[n],eventResize:u[n],slatCoords:e.slatCoords,eventSelection:e.eventSelection,forPrint:e.forPrint}))))))}componentDidMount(){this.updateCoords()}componentDidUpdate(){this.updateCoords()}updateCoords(){let{props:e}=this;e.onColCoords&&e.clientWidth!==null&&e.onColCoords(new js(this.rootElRef.current,Vd(this.cellElRefs.currentMap,e.cells),!0,!1))}};function Vd(e,t){return t.map(t=>e[t.key])}var Hd=class extends Q{constructor(){super(...arguments),this.processSlotOptions=W(Ud),this.state={slatCoords:null},this.handleRootEl=e=>{e?this.context.registerInteractiveComponent(this,{el:e,isHitComboAllowed:this.props.isHitComboAllowed}):this.context.unregisterInteractiveComponent(this)},this.handleScrollRequest=e=>{let{onScrollTopRequest:t}=this.props,{slatCoords:n}=this.state;if(t&&n){if(e.time){let r=n.computeTimeTop(e.time);r=Math.ceil(r),r&&(r+=1),t(r)}return!0}return!1},this.handleColCoords=e=>{this.colCoords=e},this.handleSlatCoords=e=>{this.setState({slatCoords:e}),this.props.onSlatCoords&&this.props.onSlatCoords(e)}}render(){let{props:e,state:t}=this;return N(`div`,{className:`fc-timegrid-body`,ref:this.handleRootEl,style:{width:e.clientWidth,minWidth:e.tableMinWidth}},N(_d,{axis:e.axis,dateProfile:e.dateProfile,slatMetas:e.slatMetas,clientWidth:e.clientWidth,minHeight:e.expandRows?e.clientHeight:``,tableMinWidth:e.tableMinWidth,tableColGroupNode:e.axis?e.tableColGroupNode:null,onCoords:this.handleSlatCoords}),N(Bd,{cells:e.cells,axis:e.axis,dateProfile:e.dateProfile,businessHourSegs:e.businessHourSegs,bgEventSegs:e.bgEventSegs,fgEventSegs:e.fgEventSegs,dateSelectionSegs:e.dateSelectionSegs,eventSelection:e.eventSelection,eventDrag:e.eventDrag,eventResize:e.eventResize,todayRange:e.todayRange,nowDate:e.nowDate,nowIndicatorSegs:e.nowIndicatorSegs,clientWidth:e.clientWidth,tableMinWidth:e.tableMinWidth,tableColGroupNode:e.tableColGroupNode,slatCoords:t.slatCoords,onColCoords:this.handleColCoords,forPrint:e.forPrint}))}componentDidMount(){this.scrollResponder=this.context.createScrollResponder(this.handleScrollRequest)}componentDidUpdate(e){this.scrollResponder.update(e.dateProfile!==this.props.dateProfile)}componentWillUnmount(){this.scrollResponder.detach()}queryHit(e,t){let{dateEnv:n,options:r}=this.context,{colCoords:i}=this,{dateProfile:a}=this.props,{slatCoords:o}=this.state,{snapDuration:s,snapsPerSlot:c}=this.processSlotOptions(this.props.slotDuration,r.snapDuration),l=i.leftToIndex(e),u=o.positions.topToIndex(t);if(l!=null&&u!=null){let e=this.props.cells[l],r=o.positions.tops[u],d=o.positions.getHeight(u),f=(t-r)/d,p=Math.floor(f*c),m=u*c+p,h=this.props.cells[l].date,g=Sr(a.slotMinTime,wr(s,m)),_=n.add(h,g),v=n.add(_,s);return{dateProfile:a,dateSpan:Object.assign({range:{start:_,end:v},allDay:!1},e.extraDateSpan),dayEl:i.els[l],rect:{left:i.lefts[l],right:i.rights[l],top:r,bottom:r+d},layer:0}}return null}};function Ud(e,t){let n=t||e,r=Or(e,n);return r===null&&(n=e,r=1),{snapDuration:n,snapsPerSlot:r}}var Wd=class extends Zs{sliceRange(e,t){let n=[];for(let r=0;r<t.length;r+=1){let i=Sa(e,t[r]);i&&n.push({start:i.start,end:i.end,isStart:i.start.valueOf()===e.start.valueOf(),isEnd:i.end.valueOf()===e.end.valueOf(),col:r})}return n}},Gd=class extends Q{constructor(){super(...arguments),this.buildDayRanges=W(Kd),this.slicer=new Wd,this.timeColsRef=P()}render(){let{props:e,context:t}=this,{dateProfile:n,dayTableModel:r}=e,{nowIndicator:i,nextDayThreshold:a}=t.options,o=this.buildDayRanges(r,n,t.dateEnv);return N(ps,{unit:i?`minute`:`day`},(s,c)=>N(Hd,Object.assign({ref:this.timeColsRef},this.slicer.sliceProps(e,n,null,t,o),{forPrint:e.forPrint,axis:e.axis,dateProfile:n,slatMetas:e.slatMetas,slotDuration:e.slotDuration,cells:r.cells[0],tableColGroupNode:e.tableColGroupNode,tableMinWidth:e.tableMinWidth,clientWidth:e.clientWidth,clientHeight:e.clientHeight,expandRows:e.expandRows,nowDate:s,nowIndicatorSegs:i&&this.slicer.sliceNowDate(s,n,a,t,o),todayRange:c,onScrollTopRequest:e.onScrollTopRequest,onSlatCoords:e.onSlatCoords})))}};function Kd(e,t,n){let r=[];for(let i of e.headerDates)r.push({start:n.add(i,t.slotMinTime),end:n.add(i,t.slotMaxTime)});return r}var qd=[{hours:1},{minutes:30},{minutes:15},{seconds:30},{seconds:15}];function Jd(e,t,n,r,i){let a=new Date(0),o=e,s=z(0),c=n||Yd(r),l=[];for(;B(o)<B(t);){let e=i.add(a,o),t=Or(s,c)!==null;l.push({date:e,time:o,key:e.toISOString(),isoTimeStr:ni(e),isLabeled:t}),o=Sr(o,r),s=Sr(s,r)}return l}function Yd(e){let t,n,r;for(t=qd.length-1;t>=0;--t)if(n=z(qd[t]),r=Or(n,e),r!==null&&r>1)return n;return e}var Xd=class extends pd{constructor(){super(...arguments),this.buildTimeColsModel=W(Zd),this.buildSlatMetas=W(Jd)}render(){let{options:e,dateEnv:t,dateProfileGenerator:n}=this.context,{props:r}=this,{dateProfile:i}=r,a=this.buildTimeColsModel(i,n),o=this.allDaySplitter.splitProps(r),s=this.buildSlatMetas(i.slotMinTime,i.slotMaxTime,e.slotLabelInterval,e.slotDuration,t),{dayMinWidth:c}=e,l=!c,u=c,d=e.dayHeaders&&N(qs,{dates:a.headerDates,dateProfile:i,datesRepDistinctDays:!0,renderIntro:l?this.renderHeadAxis:null}),f=e.allDaySlot!==!1&&(t=>N(ed,Object.assign({},o.allDay,{dateProfile:i,dayTableModel:a,nextDayThreshold:e.nextDayThreshold,tableMinWidth:t.tableMinWidth,colGroupNode:t.tableColGroupNode,renderRowIntro:l?this.renderTableRowAxis:null,showWeekNumbers:!1,expandRows:!1,headerAlignElRef:this.headerElRef,clientWidth:t.clientWidth,clientHeight:t.clientHeight,forPrint:r.forPrint},this.getAllDayMaxEventProps()))),p=t=>N(Gd,Object.assign({},o.timed,{dayTableModel:a,dateProfile:i,axis:l,slotDuration:e.slotDuration,slatMetas:s,forPrint:r.forPrint,tableColGroupNode:t.tableColGroupNode,tableMinWidth:t.tableMinWidth,clientWidth:t.clientWidth,clientHeight:t.clientHeight,onSlatCoords:this.handleSlatCoords,expandRows:t.expandRows,onScrollTopRequest:this.handleScrollTopRequest}));return u?this.renderHScrollLayout(d,f,p,a.colCnt,c,s,this.state.slatCoords):this.renderSimpleLayout(d,f,p)}};function Zd(e,t){return new Xs(new Ys(e.renderRange,t),!1)}Rn(`.fc-v-event{background-color:var(--fc-event-bg-color);border:1px solid var(--fc-event-border-color);display:block}.fc-v-event .fc-event-main{color:var(--fc-event-text-color);height:100%}.fc-v-event .fc-event-main-frame{display:flex;flex-direction:column;height:100%}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0}.fc-v-event .fc-event-title{bottom:0;max-height:100%;overflow:hidden;top:0}.fc-v-event:not(.fc-event-start){border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.fc-v-event:not(.fc-event-end){border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-width:0}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px}.fc-v-event .fc-event-resizer-start{cursor:n-resize}.fc-v-event .fc-event-resizer-end{cursor:s-resize}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:var(--fc-event-resizer-thickness);left:0;right:0}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc .fc-timegrid .fc-daygrid-body{z-index:2}.fc .fc-timegrid-divider{padding:0 0 2px}.fc .fc-timegrid-body{min-height:100%;position:relative;z-index:1}.fc .fc-timegrid-axis-chunk{position:relative}.fc .fc-timegrid-axis-chunk>table,.fc .fc-timegrid-slots{position:relative;z-index:1}.fc .fc-timegrid-slot{border-bottom:0;height:1.5em}.fc .fc-timegrid-slot:empty:before{content:"\\00a0"}.fc .fc-timegrid-slot-minor{border-top-style:dotted}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap}.fc .fc-timegrid-slot-label{vertical-align:middle}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px}.fc .fc-timegrid-axis-frame-liquid{height:100%}.fc .fc-timegrid-axis-frame{align-items:center;display:flex;justify-content:flex-end;overflow:hidden}.fc .fc-timegrid-axis-cushion{flex-shrink:0;max-width:60px}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-timegrid-col-frame{min-height:100%;position:relative}.fc-media-screen.fc-liquid-hack .fc-timegrid-col-frame{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols{bottom:0;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols>table{height:100%}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col-bg{z-index:2}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2}.fc .fc-timegrid-col-bg .fc-highlight{z-index:3}.fc .fc-timegrid-bg-harness{left:0;position:absolute;right:0}.fc .fc-timegrid-col-events{z-index:3}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%}.fc-timegrid-event-harness{position:absolute}.fc-timegrid-event-harness>.fc-timegrid-event{bottom:0;left:0;position:absolute;right:0;top:0}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror,.fc-timegrid-more-link{box-shadow:0 0 0 1px var(--fc-page-bg-color)}.fc-timegrid-event,.fc-timegrid-more-link{border-radius:3px;font-size:var(--fc-small-font-size)}.fc-timegrid-event{margin-bottom:1px}.fc-timegrid-event .fc-event-main{padding:1px 1px 0}.fc-timegrid-event .fc-event-time{font-size:var(--fc-small-font-size);margin-bottom:1px;white-space:nowrap}.fc-timegrid-event-short .fc-event-main-frame{flex-direction:row;overflow:hidden}.fc-timegrid-event-short .fc-event-time:after{content:"\\00a0-\\00a0"}.fc-timegrid-event-short .fc-event-title{font-size:var(--fc-small-font-size)}.fc-timegrid-more-link{background:var(--fc-more-link-bg-color);color:var(--fc-more-link-text-color);cursor:pointer;margin-bottom:1px;position:absolute;z-index:9999}.fc-timegrid-more-link-inner{padding:3px 2px;top:0}.fc-direction-ltr .fc-timegrid-more-link{right:0}.fc-direction-rtl .fc-timegrid-more-link{left:0}.fc .fc-timegrid-now-indicator-arrow,.fc .fc-timegrid-now-indicator-line{pointer-events:none}.fc .fc-timegrid-now-indicator-line{border-color:var(--fc-now-indicator-color);border-style:solid;border-width:1px 0 0;left:0;position:absolute;right:0;z-index:4}.fc .fc-timegrid-now-indicator-arrow{border-color:var(--fc-now-indicator-color);border-style:solid;margin-top:-5px;position:absolute;z-index:4}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 0 5px 6px;left:0}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 6px 5px 0;right:0}`);var Qd=Yc({name:`@fullcalendar/timegrid`,initialView:`timeGridWeek`,optionRefiners:{allDaySlot:Boolean},views:{timeGrid:{component:Xd,usesMinMaxTime:!0,allDaySlot:!0,slotDuration:`00:30:00`,slotEventOverlap:!0},timeGridDay:{type:`timeGrid`,duration:{days:1}},timeGridWeek:{type:`timeGrid`,duration:{weeks:1}}}}),$d=e=>`${String(e.getFullYear())}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,ef=e=>{let t=0;for(let n=0;n<e.length;n++)t=t*31+e.charCodeAt(n)|0;return Math.abs(t)%360},tf=e=>`hsl(${String(ef(e))}, 65%, 45%)`,nf=(e,t,n)=>`${e}::${t}::${n}`,rf=le,af=(e,t)=>{let n=new Date(e);return t?n.toLocaleDateString():`${n.toLocaleDateString()} ${n.toLocaleTimeString()}`},of=({event:e,sourceName:t,sourceApiName:n,calendarName:r,onClose:i})=>(0,j.jsx)(y,{open:!0,size:`lg`,onBackdropClick:i,header:(0,j.jsx)(v,{title:e.title,onClose:i}),children:(0,j.jsxs)(`div`,{className:`max-h-[70vh] space-y-3 overflow-y-auto px-5 py-4 text-[12px] text-neutral-700`,children:[(0,j.jsxs)(`div`,{className:`grid grid-cols-[100px_1fr] gap-y-1.5`,children:[(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Start`}),(0,j.jsx)(`span`,{children:af(e.start_time,e.all_day??!1)}),(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`End`}),(0,j.jsx)(`span`,{children:af(e.end_time,e.all_day??!1)}),(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`All day`}),(0,j.jsx)(`span`,{children:e.all_day===!0?`yes`:`no`}),e.busy!==void 0&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Busy`}),(0,j.jsx)(`span`,{children:e.busy?`yes`:`no`})]}),(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Calendar`}),(0,j.jsx)(`span`,{children:r}),(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Source`}),(0,j.jsxs)(`span`,{children:[t,` `,(0,j.jsxs)(`span`,{className:`text-neutral-400`,children:[`(`,n,`)`]})]}),(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Event id`}),(0,j.jsx)(`span`,{className:`truncate`,children:e.id}),e.activity_id!==void 0&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`Activity id`}),(0,j.jsx)(`span`,{className:`truncate`,children:e.activity_id})]}),e.url!==void 0&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`span`,{className:`text-neutral-400`,children:`URL`}),(0,j.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,className:`flex items-center gap-1 truncate text-blue-600 hover:underline`,children:[e.url,(0,j.jsx)(u,{icon:p,className:`text-[10px]`})]})]})]}),(0,j.jsxs)(`div`,{children:[(0,j.jsx)(`div`,{className:`mb-1 text-[11px] font-semibold uppercase tracking-widest text-neutral-400`,children:`Raw payload`}),(0,j.jsx)(`pre`,{className:`max-h-[40vh] overflow-auto rounded bg-neutral-50 p-3 text-[11px] leading-relaxed text-neutral-800`,children:JSON.stringify(e,null,2)})]})]})}),sf=({calendarSources:e,pluginApiName:t,whenState:r})=>{let i=(0,A.useRef)(null),[s,l]=(0,A.useState)(`dayGridMonth`),[d,f]=(0,A.useState)(``),{calendars:p,errorServices:m,isLoading:h}=ee(!0,e),g=(0,A.useMemo)(()=>{let t=new Map;for(let e of Object.values(p))for(let n of e){let e=t.get(n.source.api_name);e?e.calendars.push(n.calendar):t.set(n.source.api_name,{source:n.source,calendars:[n.calendar]})}for(let n of e)t.has(n.api_name)||t.set(n.api_name,{source:n,calendars:[]});return Array.from(t.values())},[p,e]),[_,v]=(0,A.useState)(()=>{try{let e=localStorage.getItem(rf(t));if(e)return new Set(JSON.parse(e))}catch{}return new Set}),y=(0,A.useRef)(!1);(0,A.useEffect)(()=>{if(y.current||h)return;if(localStorage.getItem(rf(t))!==null){y.current=!0;return}let e=new Set;for(let{source:t,calendars:n}of g)for(let r of n)r.default===!0&&e.add(nf(t.plugin_api_name,t.api_name,r.id));e.size>0&&v(e),y.current=!0},[h,g,t]),(0,A.useEffect)(()=>{localStorage.setItem(rf(t),JSON.stringify(Array.from(_)))},[_,t]);let b=(0,A.useCallback)((e,t,n)=>{v(r=>{let i=nf(e,t,n),a=new Set(r);return a.has(i)?a.delete(i):a.add(i),a})},[]),x=(0,A.useMemo)(()=>{let e=[];for(let{source:t,calendars:n}of g)for(let r of n)_.has(nf(t.plugin_api_name,t.api_name,r.id))&&e.push({source:t,calendar:r});return e},[g,_]),[S,w]=(0,A.useState)(()=>{let e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1),n=new Date(e.getFullYear(),e.getMonth()+1,0);return{rangeStart:$d(t),rangeEnd:$d(n)}}),T=(0,A.useCallback)(e=>{let t=new Date(e.end.getTime()-1);w({rangeStart:$d(e.start),rangeEnd:$d(t)}),f(e.view.title),l(e.view.type)},[]),{events:E,sources:te,isLoading:D}=C(x,S),ne=(0,A.useMemo)(()=>{if(!E||typeof E!=`object`)return[];let e=E,t=[];for(let[n,r]of Object.entries(e)){let e=te[n];if(!e)continue;let i=tf(e.source.api_name);for(let a of r??[])t.push({id:`${e.source.api_name}::${n}::${a.id}`,title:a.title,start:new Date(a.start_time),end:new Date(a.end_time),allDay:a.all_day??!1,backgroundColor:i,borderColor:i,extendedProps:{raw:a,sourceName:e.source.name,sourceApiName:e.source.api_name,calendarName:e.calendar.name}})}return t},[E,te]),[re,ie]=(0,A.useState)(null),ae=(0,A.useCallback)(e=>{let t=e.event.extendedProps;ie({event:t.raw,sourceName:t.sourceName,sourceApiName:t.sourceApiName,calendarName:t.calendarName})},[]),oe=h||D,se=(0,A.useCallback)(e=>(0,j.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 overflow-hidden px-1 py-px`,children:[e.timeText&&(0,j.jsx)(`span`,{className:`shrink-0 font-mono text-[9px] opacity-70`,children:e.timeText}),(0,j.jsx)(`span`,{className:`truncate font-mono text-[10px] font-medium leading-none`,children:e.event.title})]}),[]),O=(0,A.useMemo)(()=>new Set(m.filter(e=>!!e)),[m]);return(0,j.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,j.jsx)(`div`,{className:`flex flex-col gap-3`,children:g.map(({source:e,calendars:t})=>{let i=O.has(e.plugin_api_name);return(0,j.jsxs)(`div`,{className:`rounded border border-black/8 bg-neutral-50/60`,children:[(0,j.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-black/5 px-3 py-2`,children:[(0,j.jsx)(`span`,{className:`h-3 w-3 shrink-0 rounded-full`,style:{backgroundColor:tf(e.api_name)}}),(0,j.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,j.jsx)(`div`,{className:`truncate text-[12px] font-semibold text-neutral-800`,children:e.name}),(0,j.jsx)(`div`,{className:`truncate font-mono text-[10px] text-neutral-400`,children:e.api_name}),(()=>{let t=e.when;return t&&r?(0,j.jsx)(ke,{when:t,whenState:r}):null})()]})]}),i&&(0,j.jsxs)(`div`,{className:`flex items-start gap-2 border-b border-amber-200/60 bg-amber-50 px-3 py-2 text-[11px] text-amber-800`,children:[(0,j.jsx)(u,{icon:n,className:`mt-0.5 text-[10px]`}),(0,j.jsx)(`span`,{children:`Auth error — the calendar script returned an authError flag. Check bundle config / credentials.`})]}),(0,j.jsx)(`div`,{className:`divide-y divide-black/5`,children:t.length===0?(0,j.jsx)(`div`,{className:`px-3 py-2 text-[11px] italic text-neutral-400`,children:h?`Loading calendars…`:`No calendars returned.`}):t.map(t=>{let n=nf(e.plugin_api_name,e.api_name,t.id);return(0,j.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 px-3 py-1.5 hover:bg-black/5`,children:[(0,j.jsx)(`input`,{type:`checkbox`,checked:_.has(n),onChange:()=>{b(e.plugin_api_name,e.api_name,t.id)},className:`mt-0.5 h-3.5 w-3.5 accent-neutral-800`}),(0,j.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,j.jsxs)(`div`,{className:`truncate text-[12px] text-neutral-800`,children:[t.name,t.default===!0&&(0,j.jsx)(`span`,{className:`ml-1.5 rounded bg-neutral-200 px-1 py-0.5 text-[9px] uppercase tracking-wider text-neutral-500`,children:`default`})]}),t.description!==void 0&&t.description!==``&&(0,j.jsx)(`div`,{className:`truncate text-[10px] text-neutral-400`,children:t.description}),(0,j.jsx)(`div`,{className:`truncate font-mono text-[10px] text-neutral-400`,children:t.id})]})]},t.id)})})]},`${e.plugin_api_name}::${e.api_name}`)})}),(0,j.jsxs)(`div`,{className:`relative`,children:[(0,j.jsxs)(`div`,{className:`mb-2 flex items-center justify-between font-mono`,children:[(0,j.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,j.jsx)(`button`,{onClick:()=>{i.current?.getApi().prev()},className:`rounded border border-black/10 bg-white px-2 py-1 text-[11px] text-neutral-600 hover:bg-black/5`,"aria-label":`Previous`,children:(0,j.jsx)(u,{icon:c})}),(0,j.jsx)(`button`,{onClick:()=>{i.current?.getApi().next()},className:`rounded border border-black/10 bg-white px-2 py-1 text-[11px] text-neutral-600 hover:bg-black/5`,"aria-label":`Next`,children:(0,j.jsx)(u,{icon:o})}),(0,j.jsx)(`button`,{onClick:()=>{i.current?.getApi().today()},className:`ml-1 rounded border border-black/10 bg-white px-2.5 py-1 text-[11px] text-neutral-600 hover:bg-black/5`,children:`Today`})]}),(0,j.jsx)(`span`,{className:`text-[13px] font-semibold text-neutral-800`,children:d}),(0,j.jsx)(`div`,{className:`flex items-center gap-0.5 rounded border border-black/10 bg-white p-0.5`,children:[{view:`dayGridMonth`,label:`Month`},{view:`timeGridWeek`,label:`Week`},{view:`timeGridDay`,label:`Day`}].map(({view:e,label:t})=>(0,j.jsx)(`button`,{onClick:()=>{i.current?.getApi().changeView(e)},className:`rounded px-2.5 py-0.5 text-[11px] transition-colors ${s===e?`bg-neutral-900 text-white`:`text-neutral-500 hover:text-neutral-800`}`,children:t},e))})]}),oe&&(0,j.jsxs)(`div`,{className:`pointer-events-none absolute right-0 top-0 z-10 flex items-center gap-1.5 rounded bg-white/90 px-2 py-1 text-[10px] text-neutral-500 shadow-sm`,children:[(0,j.jsx)(u,{icon:a,spin:!0}),`Loading…`]}),(0,j.jsx)(`div`,{className:`fc-kizen`,children:(0,j.jsx)(bu,{ref:i,plugins:[ad,Qd],initialView:`dayGridMonth`,headerToolbar:!1,datesSet:T,events:ne,eventContent:se,eventClick:ae,height:800,nowIndicator:!0,dayMaxEvents:4,weekends:!0,firstDay:0})})]}),re&&(0,j.jsx)(of,{event:re.event,sourceName:re.sourceName,sourceApiName:re.sourceApiName,calendarName:re.calendarName,onClose:()=>{ie(null)}})]})},cf=({fields:e,pluginApiName:t,onLoadingChange:n,handleRef:r})=>{let{validateForm:i,inferencePending:a,expressionsIdle:o,initialExpressionsPending:s,state:c}=ne(),l=a||!o||s;return(0,A.useEffect)(()=>{n(l)},[l,n]),(0,A.useImperativeHandle)(r,()=>({validateAndGetValues:async()=>{let{isValid:e}=await i();return{isValid:e,values:c}}}),[i,c]),(0,j.jsx)(`div`,{className:`flex flex-col gap-3`,children:e.map(e=>(0,j.jsx)(re,{field:e,pluginApiName:t},e.key))})},lf=(0,A.forwardRef)(({fields:e,pluginApiName:t,onLoadingChange:n},r)=>{let{getObjectByAPIName:i,getCustomObjectDetails:a}=te(),o=(0,A.useRef)({}),s=(0,A.useCallback)(e=>{o.current=e},[]);return(0,j.jsx)(D,{config:{fields:e},value:{},onStateChange:s,disabledKeys:[],getObjectByAPIName:i,getCustomObjectDetails:a,children:(0,j.jsx)(cf,{fields:e,pluginApiName:t,onLoadingChange:n,handleRef:r})})});lf.displayName=`DynamicModalContent`;var uf=new Set([`custom_object`,`description`,`container`,`field`,`text`,`number`,`select`,`boolean`]),df=e=>e.flatMap(e=>{let t=e.key??e.id;return t===void 0||t===``||!uf.has(e.type)?[]:[{...e,key:t,type:e.type,...e.fields!==void 0&&{fields:df(e.fields)}}]}),ff=e=>e.id??e.key??``,pf=(e,t)=>{let n={},r=e=>{let i=ff(e);if(i)if(e.type===`text`)n[i]={value:t[i]??e.defaultValue??``};else if(e.type===`number`){let r=t[i];n[i]={value:r!==void 0&&r!==``?Number(r):e.default??null}}else if(e.type===`boolean`){let r=t[i];n[i]={value:r===void 0?!!e.default:!!r}}else if(e.type===`select`){let r=t[i]??``;n[i]={value:e.options?.find(e=>e.value===r)??(r?{value:r,label:r}:null)}}else if(e.type===`dropdown`){let r=t[i]??e.defaultValue??``;n[i]={value:e.options?.find(e=>e.value===r)??(r?{value:r,label:r}:null)}}else e.type===`container`&&e.fields?.forEach(r)};return e.forEach(r),n},mf=({label:e,required:t,tooltip:n})=>(0,j.jsxs)(`span`,{className:`flex items-center gap-1 text-[11px] font-medium text-neutral-500`,children:[e,t&&(0,j.jsx)(`span`,{className:`text-red-500`,children:`*`}),n&&(0,j.jsx)(`span`,{className:`cursor-help rounded-full border border-neutral-300 px-1 text-[10px] text-neutral-400`,title:n,children:`i`})]}),hf=({block:e,values:t,onChange:n})=>{let r=ff(e);return e.type===`description`?(0,j.jsx)(`p`,{className:`m-0 text-[13px] text-neutral-700`,children:e.content}):e.type===`spacer`?(0,j.jsx)(`div`,{style:{height:e.height??8}}):e.type===`text`?(0,j.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(mf,{label:e.label,required:e.required,tooltip:e.tooltip}),(0,j.jsx)(`input`,{type:`text`,value:t[r]??e.defaultValue??``,placeholder:e.placeholder,onChange:e=>{n(r,e.target.value)},className:`rounded border border-black/10 px-2 py-1.5 font-mono text-[12px] focus:outline-none focus:ring-1 focus:ring-neutral-400`})]}):e.type===`number`?(0,j.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(mf,{label:e.label,required:e.required,tooltip:e.tooltip}),(0,j.jsx)(`input`,{type:`number`,value:t[r]??``,placeholder:e.placeholder,onChange:e=>{n(r,e.target.value)},className:`rounded border border-black/10 px-2 py-1.5 font-mono text-[12px] focus:outline-none focus:ring-1 focus:ring-neutral-400`})]}):e.type===`boolean`?(0,j.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2`,children:[(0,j.jsx)(`input`,{type:`checkbox`,checked:t[r]===void 0?!!e.default:!!t[r],onChange:e=>{n(r,e.target.checked)},className:`h-3.5 w-3.5 rounded border-black/20 accent-neutral-800`}),(0,j.jsxs)(`span`,{className:`flex items-center gap-1 text-[12px] text-neutral-700`,children:[e.label,e.required&&(0,j.jsx)(`span`,{className:`text-red-500`,children:`*`}),e.tooltip&&(0,j.jsx)(`span`,{className:`cursor-help rounded-full border border-neutral-300 px-1 text-[10px] text-neutral-400`,title:e.tooltip,children:`i`})]})]}):e.type===`select`||e.type===`dropdown`?(0,j.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,j.jsx)(mf,{label:e.label,required:e.required,tooltip:e.tooltip}),(0,j.jsxs)(`select`,{value:t[r]??e.defaultValue??``,onChange:e=>{n(r,e.target.value)},className:`rounded border border-black/10 bg-white px-2 py-1.5 font-mono text-[12px] focus:outline-none`,children:[(e.placeholder!=null||!e.required)&&(0,j.jsx)(`option`,{value:``,children:e.placeholder??`—`}),(e.options??[]).map(e=>(0,j.jsx)(`option`,{value:e.value,children:e.label},e.value))]})]}):e.type===`container`?(0,j.jsx)(`div`,{className:`flex flex-wrap gap-3`,children:(e.fields??[]).map(e=>(0,j.jsx)(`div`,{style:{width:e.widthPercent===50?`calc(50% - 6px)`:`100%`},children:(0,j.jsx)(hf,{block:e,values:t,onChange:n})},ff(e)||e.type))}):null},gf={small:`sm`,medium:`md`,large:`xl`},_f=({show:e,config:t,pluginApiName:n,onConfirm:r,onHide:i})=>{let a=t,o=a.content??[],s=!!a.dynamic,[c,l]=(0,A.useState)({}),[u,d]=(0,A.useState)(!1),f=(0,A.useRef)(null),p=(0,A.useCallback)((e,t)=>{l(n=>({...n,[e]:t}))},[]),m=async()=>{if(s&&f.current){let{isValid:e,values:t}=await f.current.validateAndGetValues();if(!e)return;r(t)}else{let e=pf(o,c);l({}),r(e)}},h=e=>{l({}),d(!1),i(e)},g=t.confirmButton?.label??`Confirm`,_=t.cancelButton?.label??`Cancel`;return(0,j.jsx)(y,{open:e,size:gf[a.size??`medium`]??`md`,onBackdropClick:()=>{h(`close`)},header:t.title?(0,j.jsx)(v,{title:t.title}):void 0,footer:(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`button`,{onClick:()=>{h(`button`)},className:`rounded border border-black/10 px-3 py-1.5 text-[12px] text-neutral-600 transition-colors hover:bg-black/5`,children:_}),(0,j.jsx)(`button`,{onClick:()=>void m(),disabled:s&&u,className:`rounded px-3 py-1.5 text-[12px] text-white transition-colors ${s&&u?`cursor-not-allowed bg-neutral-400`:`bg-neutral-900 hover:bg-neutral-700`}`,children:g})]}),children:s?(0,j.jsxs)(`div`,{className:`relative max-h-[60vh] overflow-y-auto px-5 py-4`,children:[(0,j.jsx)(lf,{ref:f,fields:df(o),pluginApiName:n??a.pluginApiName??``,onLoadingChange:d}),(0,j.jsx)(Ie,{visible:u})]}):o.length>0&&(0,j.jsx)(`div`,{className:`max-h-[60vh] space-y-3 overflow-y-auto px-5 py-4`,children:o.map((e,t)=>(0,j.jsx)(hf,{block:e,values:c,onChange:p},ff(e)||`${e.type}-${String(t)}`))})})},vf=56,yf=()=>(0,j.jsxs)(`div`,{className:`flex items-start gap-2 rounded border border-amber-200/60 bg-amber-50 px-3 py-2.5 text-[12px] text-amber-800`,children:[(0,j.jsx)(u,{icon:d,className:`mt-0.5 text-[11px]`}),(0,j.jsx)(`span`,{children:`Please install the plugin in order to test.`})]}),bf=({showingToast:e,browserRef:t})=>{let{apiName:n}=h({strict:!1}),r=be(),[i,a]=Te(pe.sandboxFramesEnabled,!1),o=a,{data:s,isLoading:c,isError:l}=_(g),u=b(),d=(0,A.useMemo)(()=>!n||!s?null:Ee(n,s.find(e=>e.api_name===n)?.config_template),[n,s]),f=(0,A.useMemo)(()=>{if(!n||!s)return{};let e=s.find(e=>e.api_name===n);if(!e)return{};let t=e.base_config,r=Oe(n),i=De(n),a=_e(r?.__kizen_clean_config??{},[],r?.__kizen_setup_assistant_values??{},t?.setup_assistant?.fields),o=_e(i?.__kizen_clean_config??{},[],i?.__kizen_setup_assistant_values??{},t?.user_setup_assistant?.fields),c={};for(let[e,t]of Object.entries(a))c[`config__${e}`]=t;for(let[e,t]of Object.entries(o))c[`userConfig__${e}`]=t;return c},[n,s]);if(c)return(0,j.jsx)(k,{children:(0,j.jsx)(`p`,{className:`m-0 text-[13px] text-neutral-400`,children:`Fetching bundle.json…`})});if(l)return(0,j.jsx)(k,{children:(0,j.jsx)(`p`,{className:`m-0 text-[13px] text-red-700`,children:`Could not load bundle.json.`})});let p=s?.find(e=>e.api_name===n);if(!p)return(0,j.jsx)(k,{children:(0,j.jsxs)(`p`,{className:`m-0 text-[13px] text-neutral-500`,children:[`No app found with api_name`,` `,(0,j.jsx)(`code`,{className:`rounded bg-neutral-100 px-1 py-0.5`,children:n}),`.`]})});let m=p.base_config,v=(m?.setup_assistant?.fields?.length??0)>0||(m?.user_setup_assistant?.fields?.length??0)>0,y=d?v?{__kizen_clean_config:d}:{...d}:{},x=p.artifacts.floating_frames.map(e=>({...e,plugin_api_name:p.api_name,args:y})),S=p.artifacts.toolbar_items.map(e=>({...e,plugin_api_name:p.api_name,args:y})),C=p.artifacts.js_action_templates.map(e=>({...e,plugin_api_name:p.api_name,args:y})),w=p.artifacts.object_settings_menu_items.map(e=>({...e,plugin_api_name:p.api_name,args:y})),T=p.artifacts.data_adornments.map(e=>({...e,plugin_api_name:p.api_name,args:y})),E=p.artifacts.routable_pages.map(e=>({...e,plugin_api_name:p.api_name,args:y})),ee=p.artifacts.calendar_sources.map(e=>({...e,plugin_api_name:p.api_name,args:y})),te=S.length>0||C.length>0||w.length>0||T.length>0,D=u?.enabled_plugin_apps.some(e=>e.api_name===p.api_name)??!1;return(0,j.jsxs)(j.Fragment,{children:[e&&(0,j.jsx)(`div`,{className:`fixed top-4 left-1/2 -translate-x-1/2 z-20 rounded px-4 py-2 text-sm font-medium ${{success:`bg-green-100 text-green-700`,error:`bg-red-100 text-red-700`,failure:`bg-red-100 text-red-700`,alert:`bg-amber-100 text-amber-700`}[e.variant??`success`]??`bg-green-100 text-green-700`}`,children:e.message}),(0,j.jsx)(`div`,{style:{paddingRight:x.length>0?vf:0},children:(0,j.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,j.jsxs)(`div`,{className:`flex flex-col gap-6 xl:flex-row xl:items-start`,children:[te&&(0,j.jsxs)(`div`,{className:`flex flex-col gap-4 xl:flex-1 xl:min-w-0`,children:[S.length>0&&(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Toolbar Items`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Click a button to run its script in the context of a generic app view.`})]}),(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:S.map(e=>(0,j.jsx)(Ze,{item:e,whenState:f},e.api_name))})]}),C.length>0&&(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`JS Action Templates`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Select a record and trigger a JS action to test its script with real data.`})]}),(0,j.jsx)(He,{actions:C,pluginApiName:p.api_name,configArgs:y})]}),w.length>0&&(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Object Settings Menu Items`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Select a custom object and click an item to run its script against that object.`})]}),(0,j.jsx)($e,{items:w,pluginApiName:p.api_name,configArgs:y,whenState:f})]}),T.length>0&&(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Data Adornments`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:`Select an object and record, then click an adornment to run its script against a specific field value.`})]}),(0,j.jsx)(We,{adornments:T,pluginApiName:p.api_name,configArgs:y,whenState:f})]})]}),(0,j.jsxs)(`div`,{className:`min-w-0 flex-1 flex flex-col gap-4`,children:[(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Routable Pages`}),(0,j.jsx)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:E.length>0?`Navigate between pages as they would appear when embedded in Kizen.`:`No routable pages are defined in this plugin.`})]}),(0,j.jsx)(Xe,{ref:t,pages:E})]}),ee.length>0&&(0,j.jsxs)(k,{children:[(0,j.jsxs)(`div`,{className:`mb-3`,children:[(0,j.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-widest text-neutral-600`,children:`Calendar Sources`}),(0,j.jsxs)(`p`,{className:`mt-1 text-[12px] text-neutral-400`,children:[`Pick calendars from each source and navigate the grid to run its`,` `,(0,j.jsx)(`code`,{className:`rounded bg-neutral-100 px-1 font-mono text-[11px]`,children:`calendars_script`}),` `,`and`,` `,(0,j.jsx)(`code`,{className:`rounded bg-neutral-100 px-1 font-mono text-[11px]`,children:`events_script`}),`. Click an event to inspect the raw payload.`]})]}),D?(0,j.jsx)(sf,{calendarSources:ee,pluginApiName:p.api_name,whenState:f}):(0,j.jsx)(yf,{})]})]})]}),(p.services?.length??0)>0&&(0,j.jsx)(dt,{services:p.services??[],pluginApiName:p.api_name,isInstalled:D})]})}),x.length>0&&(0,j.jsxs)(`div`,{className:`pointer-events-none fixed inset-0`,children:[(0,j.jsxs)(`div`,{className:`absolute inset-y-0 flex w-14 flex-col-reverse items-center gap-2 border-l border-black/8 bg-white/60 pb-4 backdrop-blur-sm`,style:{right:r},children:[x.map(e=>(0,j.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,j.jsx)(`div`,{id:`${e.plugin_api_name}-${e.api_name}-trigger-left`}),(0,j.jsx)(`div`,{id:`${e.plugin_api_name}-${e.api_name}-trigger-right`})]},e.api_name)),(0,j.jsx)(`strong`,{className:`text-[9px] uppercase tracking-widest text-neutral-400`,children:`Frames`}),(0,j.jsxs)(`label`,{className:`flex flex-col items-center gap-0.5 cursor-pointer pointer-events-auto`,children:[(0,j.jsx)(`input`,{type:`checkbox`,className:`h-3 w-3 cursor-pointer accent-neutral-600`,checked:i,onChange:e=>{o(e.target.checked)}}),(0,j.jsxs)(`span`,{className:`text-[8px] uppercase tracking-widest text-neutral-400 text-center leading-tight`,children:[`enable`,(0,j.jsx)(`br`,{}),`frames`]})]})]}),x.map(e=>(0,j.jsx)(Fe,{frame:e,framesEnabled:i,whenState:f},e.api_name))]})]})},xf=()=>{let[e,t]=(0,A.useState)(null),[n,r]=(0,A.useState)(!1),[i,o]=(0,A.useState)(!1),s=(0,A.useRef)(null);(0,A.useEffect)(()=>{let e=window.open;return window.open=e=>(s.current?.openNewTab(String(e??``)),null),()=>{window.open=e}},[]),(0,A.useEffect)(()=>{if(!e)return;let n=setTimeout(()=>{t(null)},5e3);return()=>{clearTimeout(n)}},[e]);let{apiName:c}=h({strict:!1}),l=b(),d=he(),f=(0,A.useMemo)(()=>ye(d),[d]),{environment:p}=O(),m=ge[p],g=(0,A.useMemo)(()=>{if(!c)return[];let e=De(c);return e?.__kizen_clean_config?[{api_name:c,config:{__kizen_clean_config:e.__kizen_clean_config}}]:[]},[c]),_=()=>{r(!0),o(!0)},v=()=>{r(!1),o(!1)},y=()=>{r(!1),o(!1)},{onMonitoringException:x,dialog:C}=ae();return l?(0,j.jsx)(S,{appPath:m,user:{id:l.team.user,crm_client_id:``},business:l.business,userConfigs:g,clientObject:l.business.client_object?{id:l.business.client_object.id,objectName:l.business.client_object.object_name}:void 0,teamMember:l.team,onNavigate:(e,t)=>{s.current?.navigate(e,t)},performFileUpload:({file:e})=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{t({url:r.result})},r.onerror=n,r.readAsDataURL(e)}),monitoringExceptionHelper:x,performRequest:ve(f),modal:{showing:n,show:i,showPrompt:_,onConfirm:v,onHide:y},showToast:({message:e,variant:n})=>{t({message:e,variant:n??`success`})},clearToasts:()=>{t(null)},children:({showPluginModal:t,derivedModalState:n,pluginApiName:r})=>(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(bf,{showingToast:e,browserRef:s}),(0,j.jsx)(_f,{show:t,config:n.config,pluginApiName:r,onConfirm:n.props.onConfirm,onHide:n.props.onHide}),C]})}):(0,j.jsx)(u,{icon:a,className:`animate-spin text-neutral-400`,size:`2x`})};export{xf as SandboxPage};