diff --git a/cypress/e2e/navigation.cy.ts b/cypress/e2e/navigation.cy.ts
new file mode 100644
index 000000000..f5dc1d3c6
--- /dev/null
+++ b/cypress/e2e/navigation.cy.ts
@@ -0,0 +1,29 @@
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+describe('Browser navigation', function() {
+ before(function() {
+ // Init user
+ cy.createRandomUser().then(user => {
+ // Upload test files
+ cy.uploadFile(user, 'image.png', 'image/png', '/image1.png')
+
+ // Visit nextcloud
+ cy.login(user)
+ cy.visit('/apps/files')
+ })
+ })
+ after(function() {
+ cy.logout()
+ })
+
+ it('Navigating back to the files overview', function() {
+ cy.getFile('image1.png', { timeout: 10000 })
+ cy.openFile('image1.png')
+ cy.get('body > .viewer').should('be.visible')
+ cy.go('back')
+ cy.get('body > .viewer').should('not.exist')
+ })
+})
diff --git a/js/vendor.LICENSE.txt b/js/vendor.LICENSE.txt
index 6a1d5becc..aa6cc8828 100644
--- a/js/vendor.LICENSE.txt
+++ b/js/vendor.LICENSE.txt
@@ -21,11 +21,11 @@ version: 0.7.5
license: MIT
@floating-ui/core
-version: 0.3.1
+version: 1.6.8
license: MIT
@floating-ui/dom
-version: 0.1.10
+version: 1.6.11
license: MIT
@floating-ui/utils
diff --git a/js/viewer-init.mjs b/js/viewer-init.mjs
index 92918b6a2..3f6eda9bb 100644
--- a/js/viewer-init.mjs
+++ b/js/viewer-init.mjs
@@ -1,13 +1,13 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('viewer', '', 'js/index-CZ02cfFW.chunk.mjs'),window.OC.filePath('viewer', '', 'js/previewUtils-CJwEM1N6.chunk.mjs'),window.OC.filePath('viewer', '', 'css/previewUtils-DUmElXST.chunk.css')])))=>i.map(i=>d[i]);
/*! third party licenses: js/vendor.LICENSE.txt */
-import{s as Xt,E as ie,o as Ll,N as Zl,G as Ws,H as Ia,I as Qs,J as Ea,K as ft,L as Il,M as Hl,D as N,O as Pl,P as Gl,n as _i,Q as oe,R as Ul,V as Sa,S as ja,T as zl,U as Vl,W as x,c as pa,X as Va,Y as $l,l as Ks,_ as Js,Z as So,$ as Wl,a0 as vo,a1 as Ri,a2 as Fn,a3 as Ln,a4 as Ql,a5 as Pt,a6 as Kl,a7 as Jl,a8 as Xs,a9 as Zn,aa as Xl,ab as In,ac as er,ad as Ja,ae as Hn,af as O0,ag as un,u as z0,v as V0,ah as Pn,ai as e1,aj as a1,ak as t1,al as ar,am as i1,an as Gn,ao as n1,ap as o1,aq as s1,ar as r1,as as l1,at as _1,au as d1,m as Un,av as f1,aw as tr,ax as g1,ay as ir,az as h1,aA as F1,aB as u1,aC as c1,aD as m1,aG as p1,aH as nr,aI as b1,aJ as D1,aL as T1,aM as y1,aN as E1,aO as k1,aP as A1,aQ as w1,aR as S1,aS as v1,aT as or,aU as sr,aV as R1,aW as C1,aX as O1,aY as B1,aZ as N1,a_ as x1,a$ as V2,b0 as rr,b1 as M1,b2 as j1,b3 as Y1,b4 as lr,b5 as q1,b6 as L1,b7 as Z1,b8 as I1,B as Ci,b9 as H1,ba as P1,bb as G1,bc as $2,bd as U1,be as z1,bf as V1,bg as qt,w as zn,t as Ha,bh as $1,bi as W1,bj as Q1,y as K1,g as J1,bk as X1,k as e_}from"./previewUtils-CJwEM1N6.chunk.mjs";import{C as Vn,N as a_}from"./NcActionButton-CsUrCpx5.chunk.mjs";import t_ from"./NcActionLink-BBLUiM84.chunk.mjs";import{A as _r,a as i_}from"./actionText-fFcUPi2g-1UIVDoW6.chunk.mjs";const Yl="viewer",ql="3.0.0";function dr(){try{return Xt("core","capabilities")}catch{return console.debug("Could not find capabilities initial state fall back to _oc_capabilities"),"_oc_capabilities"in window?window._oc_capabilities:{}}}const n_=Ll({name:"NcDialog",components:{NcDialogButton:Zl,NcModal:Ws},props:{name:{type:String,required:!0},message:{type:String,default:""},additionalTrapElements:{type:Array,validator:e=>Array.isArray(e)&&e.every(a=>typeof a=="string"||a instanceof HTMLElement),default:()=>[]},container:{type:String,required:!1,default:"body"},open:{type:Boolean,default:!0},size:{type:String,required:!1,default:"small",validator:e=>typeof e=="string"&&["small","normal","large","full"].includes(e)},buttons:{type:Array,required:!1,default:()=>[],validator:e=>Array.isArray(e)&&e.every(a=>typeof a=="object")},canClose:{type:Boolean,default:!0},closeOnClickOutside:{type:Boolean,default:!1},isForm:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},navigationClasses:{type:[String,Array,Object],required:!1,default:""},navigationAriaLabel:{type:String,required:!1,default:""},navigationAriaLabelledby:{type:String,required:!1,default:""},contentClasses:{type:[String,Array,Object],required:!1,default:""},dialogClasses:{type:[String,Array,Object],required:!1,default:""}},emits:["closing","update:open","submit"],setup(e,{emit:a,slots:i}){const n=Ia(),{width:o}=Qs(n,{width:900}),s=Ea(()=>o.value<876),l=Ea(()=>i?.navigation!==void 0),_=ft(),r=Ea(()=>e.navigationAriaLabel||void 0),f=Ea(()=>{if(!e.navigationAriaLabel)return e.navigationAriaLabelledby||_}),d=Ia(),g=Ea(()=>e.isForm&&!l.value?"form":"div"),h=Ea(()=>g.value==="form"?{submit(w){w.preventDefault(),a("submit",w)}}:{}),F=Ia(!0),m=(w,v)=>{g.value==="form"&&!d.value.reportValidity()||(p(v),window.setTimeout(()=>T(),300))},p=w=>{F.value=!1,a("closing",w)},T=()=>{F.value=!0,a("update:open",!1)},k=Ea(()=>({canClose:e.canClose,container:e.container===void 0?"body":e.container,labelId:_,size:e.size,show:e.open&&F.value,outTransition:e.outTransition,closeOnClickOutside:e.closeOnClickOutside,additionalTrapElements:e.additionalTrapElements}));return{dialogElement:d,dialogListeners:h,dialogTagName:g,handleButtonClose:m,handleClosing:p,handleClosed:T,hasNavigation:l,navigationId:_,navigationAriaLabelAttr:r,navigationAriaLabelledbyAttr:f,isNavigationCollapsed:s,modalProps:k,wrapper:n}}});var o_=function(){var e=this,a=e._self._c;return e._self._setupProxy,e.open?a("NcModal",e._b({staticClass:"dialog__modal",attrs:{"enable-slideshow":!1,"enable-swipe":!1},on:{close:e.handleClosed,"update:show":function(i){return e.handleClosing()}}},"NcModal",e.modalProps,!1),[a("h2",{staticClass:"dialog__name",attrs:{id:e.navigationId},domProps:{textContent:e._s(e.name)}}),a(e.dialogTagName,e._g({ref:"dialogElement",tag:"component",staticClass:"dialog",class:e.dialogClasses},e.dialogListeners),[a("div",{ref:"wrapper",class:["dialog__wrapper",{"dialog__wrapper--collapsed":e.isNavigationCollapsed}]},[e.hasNavigation?a("nav",{staticClass:"dialog__navigation",class:e.navigationClasses,attrs:{"aria-label":e.navigationAriaLabelAttr,"aria-labelledby":e.navigationAriaLabelledbyAttr}},[e._t("navigation",null,{isCollapsed:e.isNavigationCollapsed})],2):e._e(),a("div",{staticClass:"dialog__content",class:e.contentClasses},[e._t("default",function(){return[a("p",{staticClass:"dialog__text"},[e._v(" "+e._s(e.message)+" ")])]})],2)]),a("div",{staticClass:"dialog__actions"},[e._t("actions",function(){return e._l(e.buttons,function(i,n){return a("NcDialogButton",e._b({key:n,on:{click:e.handleButtonClose}},"NcDialogButton",i,!1))})})],2)])],1):e._e()},s_=[],r_=ie(n_,o_,s_,!1,null,"e79a4708");const J2=r_.exports,l_='';function $0(e,a,i){window.OCP.Files.Router.goToRoute(null,{view:a.id,fileid:String(e.fileid)},{dir:i,openfile:"true"},!0)}async function __(e,a,i){const n=()=>{const o={...window.OCP.Files.Router.query};delete o.openfile,window.OCP.Files.Router.goToRoute(null,window.OCP.Files.Router.params,o)};return $0(e,a,i),window.OCA.Viewer.open({path:e.path,onPrev(o){$0(o,a,i)},onNext(o){$0(o,a,i)},onClose:n}),null}function d_(){Il(new Hl({id:"view",displayName:()=>N("viewer","View"),iconSvgInline:()=>l_,default:Pl.DEFAULT,enabled:e=>e.some(a=>!(a.isDavRessource&&a.root?.startsWith("/files")))?!1:e.every(a=>!!(a.permissions&Gl.READ)&&window.OCA.Viewer.mimetypes.includes(a.mime)),exec:__}))}function gi(e,a,i){e.$set(e.$data._asyncComputed[a],"state",i),e.$set(e.$data._asyncComputed[a],"updating",i==="updating"),e.$set(e.$data._asyncComputed[a],"error",i==="error"),e.$set(e.$data._asyncComputed[a],"success",i==="success")}function f_(e){return typeof e=="function"?e:e.get}function cn(e,a){return Object.prototype.hasOwnProperty.call(e,a)}function $n(e){return cn(e,"lazy")&&e.lazy}function g_(e,a){return e[Wn+a]}var Wn="async_computed$lazy_active$",ei="async_computed$lazy_data$";function h_(e,a,i){e[Wn+a]=!1,e[ei+a]=i}function F_(e){return{get:function(){return this[Wn+e]=!0,this[ei+e]},set:function(a){this[ei+e]=a}}}function u_(e,a,i){e[ei+a]=i}function c_(e,a){return e[ei+a]}var m_=function(e){return function(){var a=this;return e.watch.forEach(function(i){var n=i.split(".");if(n.length===1)a[i];else try{var o=a;n.forEach(function(s){o=o[s]})}catch(s){throw console.error("AsyncComputed: bad path: ",i),s}}),e.get.call(this)}},p_=function(e){return function(){return e.watch.call(this),e.get.call(this)}};function b_(e){if(typeof e.watch=="function")return p_(e);if(Array.isArray(e.watch))return e.watch.forEach(function(a){if(typeof a!="string")throw new Error("AsyncComputed: watch elemnts must be strings")}),m_(e);throw Error("AsyncComputed: watch should be function or an array")}var fr=typeof Symbol=="function"?Symbol("did-not-update"):{},D_=function(e,a){return function(){return e.shouldUpdate.call(this)?a.call(this):fr}},T_=function(e){return fr===e},gr="_async_computed$",hr={install:function(e,a){a=a||{},e.config.optionMergeStrategies.asyncComputed=e.config.optionMergeStrategies.computed,e.mixin({data:function(){return{_asyncComputed:{}}},computed:{$asyncComputed:function(){return this.$data._asyncComputed}},beforeCreate:function(){var i=this.$options.asyncComputed||{};if(Object.keys(i).length){for(var n in i){var o=k_(n,i[n]);this.$options.computed[gr+n]=o}this.$options.data=E_(this.$options,a)}},created:function(){for(var i in this.$options.asyncComputed||{}){var n=this.$options.asyncComputed[i],o=Fr.call(this,n,a);$n(n)?u_(this,i,o):this[i]=o}for(var s in this.$options.asyncComputed||{})y_(this,s,a,e)}})}};function y_(e,a,i,n){var o=0,s=function(l){var _=++o;T_(l)||((!l||!l.then)&&(l=Promise.resolve(l)),gi(e,a,"updating"),l.then(function(r){_===o&&(gi(e,a,"success"),e[a]=r)}).catch(function(r){if(_===o&&(gi(e,a,"error"),n.set(e.$data._asyncComputed[a],"exception",r),i.errorHandler!==!1)){var f=i.errorHandler===void 0?console.error.bind(console,"Error evaluating async computed property:"):i.errorHandler;i.useRawError?f(r,e,r.stack):f(r.stack)}}))};n.set(e.$data._asyncComputed,a,{exception:null,update:function(){e._isDestroyed||s(f_(e.$options.asyncComputed[a]).apply(e))}}),gi(e,a,"updating"),e.$watch(gr+a,s,{immediate:!0})}function E_(e,a){var i=e.data,n=e.asyncComputed||{};return function(o){var s=(typeof i=="function"?i.call(this,o):i)||{};for(var l in n){var _=this.$options.asyncComputed[l],r=Fr.call(this,_,a);$n(_)?(h_(s,l,r),this.$options.computed[l]=F_(l)):s[l]=r}return s}}function k_(e,a){if(typeof a=="function")return a;var i=a.get;if(cn(a,"watch")&&(i=b_(a)),cn(a,"shouldUpdate")&&(i=D_(a,i)),$n(a)){var n=i;i=function(){return g_(this,e)?n.call(this):c_(this,e)}}return i}function Fr(e,a){var i=null;return"default"in e?i=e.default:"default"in a&&(i=a.default),typeof i=="function"?i.call(this):i}typeof window<"u"&&window.Vue&&window.Vue.use(hr);const A_={name:"PlayCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var w_=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon play-circle-outline-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M10,16.5L16,12L10,7.5V16.5Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},S_=[],v_=_i(A_,w_,S_,!1,null,null);const R_=v_.exports;oe();function Xa(e,a,i=!1){const n=Ul().proxy;return i&&n.$props[e]===void 0&&n.$props.modelValue===void 0&&Sa.util.warn(`Missing required prop: "modelValue" or old "${e}"`),Ea({get(){return n.$props[e]!==void 0?n.$props[e]:n.$props.modelValue},set(o){n.$emit("update:modelValue",o),n.$emit("update:model-value",o),n.$emit(a,o)}})}class B0{static fromString(a){return new B0(a)}constructor(a){this.value=a}icaltype="binary";decodeValue(){return this._b64_decode(this.value)}setEncodedValue(a){this.value=this._b64_encode(a)}_b64_encode(a){let i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n,o,s,l,_,r,f,d,g=0,h=0,F="",m=[];if(!a)return a;do n=a.charCodeAt(g++),o=a.charCodeAt(g++),s=a.charCodeAt(g++),d=n<<16|o<<8|s,l=d>>18&63,_=d>>12&63,r=d>>6&63,f=d&63,m[h++]=i.charAt(l)+i.charAt(_)+i.charAt(r)+i.charAt(f);while(g>16&255,o=d>>8&255,s=d&255,r==64?m[h++]=String.fromCharCode(n):f==64?m[h++]=String.fromCharCode(n,o):m[h++]=String.fromCharCode(n,o,s);while(gn)-(i12||(o=n[a],a==2&&(o+=X.isLeapYear(i))),o}static isLeapYear(a){return a<=1752?a%4==0:a%4==0&&a%100!=0||a%400==0}static fromDayOfYear(a,i){let n=i,o=a,s=new X;s.auto_normalize=!1;let l=X.isLeapYear(n)?1:0;if(o<1)return n--,l=X.isLeapYear(n)?1:0,o+=X.daysInYearPassedMonth[l][12],X.fromDayOfYear(o,n);if(o>X.daysInYearPassedMonth[l][12])return l=X.isLeapYear(n)?1:0,o-=X.daysInYearPassedMonth[l][12],n++,X.fromDayOfYear(o,n);s.year=n,s.isDate=!0;for(let _=11;_>=0;_--)if(o>X.daysInYearPassedMonth[l][_]){s.month=_+1,s.day=o-X.daysInYearPassedMonth[l][_];break}return s.auto_normalize=!0,s}static fromStringv2(a){return new X({year:parseInt(a.slice(0,4),10),month:parseInt(a.slice(5,7),10),day:parseInt(a.slice(8,10),10),isDate:!0})}static fromDateString(a){return new X({year:Ie(a.slice(0,4)),month:Ie(a.slice(5,7)),day:Ie(a.slice(8,10)),isDate:!0})}static fromDateTimeString(a,i){if(a.length<19)throw new Error('invalid date-time value: "'+a+'"');let n,o;a[19]&&a[19]==="Z"?n=ce.utcTimezone:i&&(o=i.getParameter("tzid"),i.parent&&(i.parent.name==="standard"||i.parent.name==="daylight"?n=ce.localTimezone:o&&(n=i.parent.getTimeZoneByID(o))));const s={year:Ie(a.slice(0,4)),month:Ie(a.slice(5,7)),day:Ie(a.slice(8,10)),hour:Ie(a.slice(11,13)),minute:Ie(a.slice(14,16)),second:Ie(a.slice(17,19))};return o&&!n&&(s.timezone=o),new X(s,n)}static fromString(a,i){return a.length>10?X.fromDateTimeString(a,i):X.fromDateString(a)}static fromJSDate(a,i){return new X().fromJSDate(a,i)}static fromData=function(a,i){return new X().fromData(a,i)};static now(){return X.fromJSDate(new Date,!1)}static weekOneStarts(a,i){let n=X.fromData({year:a,month:1,day:1,isDate:!0}),o=n.dayOfWeek(),s=i||X.DEFAULT_WEEK_START;return o>X.THURSDAY&&(n.day+=7),s>X.THURSDAY&&(n.day-=7),n.day-=o-s,n}static getDominicalLetter(a){let i="GFEDCBA",n=(a+(a/4|0)+(a/400|0)-(a/100|0)-1)%7;return X.isLeapYear(a)?i[(n+6)%7]+i[n]:i[n]}static#e=null;static get epochTime(){return this.#e||(this.#e=X.fromData({year:1970,month:1,day:1,hour:0,minute:0,second:0,isDate:!1,timezone:"Z"})),this.#e}static _cmp_attr(a,i,n){return a[n]>i[n]?1:a[n]=0){_.day=1,s!=0&&s--,l=_.day;let r=_.dayOfWeek(),f=a-r;f<0&&(f+=7),l+=f,l-=a,o=a}else{_.day=n;let r=_.dayOfWeek();s++,o=r-a,o<0&&(o+=7),o=n-o}return o+=s*7,l+o}isNthWeekDay(a,i){let n=this.dayOfWeek();return i===0&&n===a||this.nthWeekDay(a,i)===this.day}weekNumber(a){let i=(this.year<<12)+(this.month<<8)+(this.day<<3)+a;if(i in X._wnCache)return X._wnCache[i];let n,o=this.clone();o.isDate=!0;let s=this.year;o.month==12&&o.day>25?(n=X.weekOneStarts(s+1,a),o.compare(n)<0?n=X.weekOneStarts(s,a):s++):(n=X.weekOneStarts(s,a),o.compare(n)<0&&(n=X.weekOneStarts(--s,a)));let l=o.subtractDate(n).toSeconds()/86400,_=xe(l/7)+1;return X._wnCache[i]=_,_}addDuration(a){let i=a.isNegative?-1:1,n=this.second,o=this.minute,s=this.hour,l=this.day;n+=i*a.seconds,o+=i*a.minutes,s+=i*a.hours,l+=i*a.days,l+=i*7*a.weeks,this.second=n,this.minute=o,this.hour=s,this.day=l,this._cachedUnixTime=null}subtractDate(a){let i=this.toUnixTime()+this.utcOffset(),n=a.toUnixTime()+a.utcOffset();return Pe.fromSeconds(i-n)}subtractDateTz(a){let i=this.toUnixTime(),n=a.toUnixTime();return Pe.fromSeconds(i-n)}compare(a){let i=this.toUnixTime(),n=a.toUnixTime();return i>n?1:n>i?-1:0}compareDateOnlyTz(a,i){let n=this.convertToZone(i),o=a.convertToZone(i),s=0;return(s=X._cmp_attr(n,o,"year"))!=0||(s=X._cmp_attr(n,o,"month"))!=0||(s=X._cmp_attr(n,o,"day"))!=0,s}convertToZone(a){let i=this.clone(),n=this.zone.tzid==a.tzid;return!this.isDate&&!n&&ce.convert_time(i,this.zone,a),i.zone=a,i}utcOffset(){return this.zone==ce.localTimezone||this.zone==ce.utcTimezone?0:this.zone.utcOffset(this)}toICALString(){let a=this.toString();return a.length>10?Me.icalendar.value["date-time"].toICAL(a):Me.icalendar.value.date.toICAL(a)}toString(){let a=this.year+"-"+Qe(this.month)+"-"+Qe(this.day);return this.isDate||(a+="T"+Qe(this.hour)+":"+Qe(this.minute)+":"+Qe(this.second),this.zone===ce.utcTimezone&&(a+="Z")),a}toJSDate(){return this.zone==ce.localTimezone?this.isDate?new Date(this.year,this.month-1,this.day):new Date(this.year,this.month-1,this.day,this.hour,this.minute,this.second,0):new Date(this.toUnixTime()*1e3)}_normalize(){return this._time.isDate&&(this._time.hour=0,this._time.minute=0,this._time.second=0),this.adjust(0,0,0,0),this}adjust(a,i,n,o,s){let l,_,r=0,f=0,d,g,h,F,m,p=s||this._time;if(p.isDate||(d=p.second+o,p.second=d%60,l=xe(d/60),p.second<0&&(p.second+=60,l--),g=p.minute+n+l,p.minute=g%60,_=xe(g/60),p.minute<0&&(p.minute+=60,_--),h=p.hour+i+_,p.hour=h%24,r=xe(h/24),p.hour<0&&(p.hour+=24,r--)),p.month>12?f=xe((p.month-1)/12):p.month<1&&(f=xe(p.month/12)-1),p.year+=f,p.month-=12*f,F=p.day+a+r,F>0)for(;m=X.daysInMonth(p.month,p.year),!(F<=m);)p.month++,p.month>12&&(p.year++,p.month=1),F-=m;else for(;F<=0;)p.month==1?(p.year--,p.month=12):p.month--,F+=X.daysInMonth(p.month,p.year);return p.day=F,this._cachedUnixTime=null,this}fromUnixTime(a){this.zone=ce.utcTimezone;let i=new Date(a*1e3);this.year=i.getUTCFullYear(),this.month=i.getUTCMonth()+1,this.day=i.getUTCDate(),this._time.isDate?(this.hour=0,this.minute=0,this.second=0):(this.hour=i.getUTCHours(),this.minute=i.getUTCMinutes(),this.second=i.getUTCSeconds()),this._cachedUnixTime=null}toUnixTime(){if(this._cachedUnixTime!==null)return this._cachedUnixTime;let a=this.utcOffset(),i=Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second-a);return this._cachedUnixTime=i/1e3,this._cachedUnixTime}toJSON(){let a=["year","month","day","hour","minute","second","isDate"],i=Object.create(null),n=0,o=a.length,s;for(;n1)throw new it("invalid ical body. component began but did not end");return a=null,i.length==1?i[0]:i}he.property=function(e,a){let i={component:[[],[]],designSet:a||Me.defaultSet};return he._handleContentLine(e,i),i.component[1][0]},he.component=function(e){return he(e)};class it extends Error{name=this.constructor.name}he.ParserError=it,he._handleContentLine=function(e,a){let i=e.indexOf(hi),n=e.indexOf(W0),o,s,l,_,r={};n!==-1&&i!==-1&&n>i&&(n=-1);let f;if(n!==-1){if(l=e.slice(0,Math.max(0,n)).toLowerCase(),f=he._parseParameters(e.slice(Math.max(0,n)),0,a.designSet),f[2]==-1)throw new it("Invalid parameters in '"+e+"'");if(r=f[0],o=f[1].length+f[2]+n,(s=e.slice(Math.max(0,o)).indexOf(hi))!==-1)_=e.slice(Math.max(0,o+s+1));else throw new it("Missing parameter value in '"+e+"'")}else if(i!==-1){if(l=e.slice(0,Math.max(0,i)).toLowerCase(),_=e.slice(Math.max(0,i+1)),l==="begin"){let k=[_.toLowerCase(),[],[]];a.stack.length===1?a.component.push(k):a.component[2].push(k),a.stack.push(a.component),a.component=k,a.designSet||(a.designSet=Me.getDesignSet(a.component[0]));return}else if(l==="end"){a.component=a.stack.pop();return}}else throw new it('invalid line (no token ";" or ":") "'+e+'"');let d,g=!1,h=!1,F,m,p;a.designSet.propertyGroups&&l.indexOf(".")!==-1?(m=l.split("."),r.group=m[0],p=m[1]):p=l,p in a.designSet.property&&(F=a.designSet.property[p],"multiValue"in F&&(g=F.multiValue),"structuredValue"in F&&(h=F.structuredValue),_&&"detectType"in F&&(d=F.detectType(_))),d||("value"in r?d=r.value.toLowerCase():F?d=F.defaultType:d=M_),delete r.value;let T;g&&h?(_=he._parseMultiValue(_,h,d,[],g,a.designSet,h),T=[p,r,d,_]):g?(T=[p,r,d],he._parseMultiValue(_,g,d,T,null,a.designSet,!1)):h?(_=he._parseMultiValue(_,h,d,[],null,a.designSet,h),T=[p,r,d,_]):(_=he._parseValue(_,d,a.designSet,!1),T=[p,r,d,_]),a.component[0]==="vcard"&&a.component[1].length===0&&!(l==="version"&&_==="4.0")&&(a.designSet=Me.getDesignSet("vcard3")),a.component[1].push(T)},he._parseValue=function(e,a,i,n){return a in i.value&&"fromICAL"in i.value[a]?i.value[a].fromICAL(e,n):e},he._parseParameters=function(e,a,i){let n=a,o=0,s=x_,l={},_,r,f,d=-1,g,h,F;for(;o!==!1&&(o=e.indexOf(s,o+1))!==-1;){if(_=e.slice(n+1,o),_.length==0)throw new it("Empty parameter name in '"+e+"'");if(r=_.toLowerCase(),F=!1,h=!1,r in i.param&&i.param[r].valueType?g=i.param[r].valueType:g=j_,r in i.param&&(h=i.param[r].multiValue,i.param[r].multiValueSeparateDQuote&&(F=he._rfc6868Escape('"'+h+'"'))),e[o+1]==='"'){if(d=o+2,o=e.indexOf('"',d),h&&o!=-1){let T=!0;for(;T;)e[o+1]==h&&e[o+2]=='"'?o=e.indexOf('"',o+3):T=!1}if(o===-1)throw new it('invalid line (no matching double quote) "'+e+'"');f=e.slice(d,o),n=e.indexOf(W0,o);let p=e.indexOf(hi,o);(n===-1||p!==-1&&n>p)&&(o=!1)}else{d=o+1;let p=e.indexOf(W0,d),T=e.indexOf(hi,d);T!==-1&&p>T?(p=T,o=!1):p===-1?(T===-1?p=e.length:p=T,o=!1):(n=p,o=p),f=e.slice(d,p)}const m=f.length;if(f=he._rfc6868Escape(f),d+=m-f.length,h){let p=F||h;f=he._parseMultiValue(f,p,g,[],null,i)}else f=he._parseValue(f,g,i);h&&r in l?Array.isArray(l[r])?l[r].push(f):l[r]=[l[r],f]:l[r]=f}return[l,f,d]},he._rfc6868Escape=function(e){return e.replace(/\^['n^]/g,function(a){return Y_[a]})},he._parseMultiValue=function(e,a,i,n,o,s,l){let _=0,r=0,f;if(a.length===0)return e;for(;(_=ur(e,a,r))!==-1;)f=e.slice(r,_),o?f=he._parseMultiValue(f,o,i,[],null,s,l):f=he._parseValue(f,i,s,l),n.push(f),r=_+a.length;return f=e.slice(r),o?f=he._parseMultiValue(f,o,i,[],null,s,l):f=he._parseValue(f,i,s,l),n.push(f),n.length==1?n[0]:n},he._eachLine=function(e,a){let i=e.length,n=e.search(N_),o=n,s,l,_;do o=e.indexOf(`
-`,n)+1,o>1&&e[o-2]==="\r"?_=2:_=1,o===0&&(o=i,_=0),l=e[n],l===" "||l===" "?s+=e.slice(n+1,o-_):(s&&a(null,s),s=e.slice(n,o-_)),n=o;while(o!==i);s=s.trim(),s.length&&a(null,s)};const q_=["tzid","location","tznames","latitude","longitude"];let ce=class Fe{static _compare_change_fn(a,i){return a.yeari.year?1:a.monthi.month?1:a.dayi.day?1:a.houri.hour?1:a.minutei.minute?1:a.secondi.second?1:0}static convert_time(a,i,n){if(a.isDate||i.tzid==n.tzid||i==Fe.localTimezone||n==Fe.localTimezone)return a.zone=n,a;let o=i.utcOffset(a);return a.adjust(0,0,0,-o),o=n.utcOffset(a),a.adjust(0,0,0,o),null}static fromData(a){return new Fe().fromData(a)}static#e=null;static get utcTimezone(){return this.#e||(this.#e=Fe.fromData({tzid:"UTC"})),this.#e}static#a=null;static get localTimezone(){return this.#a||(this.#a=Fe.fromData({tzid:"floating"})),this.#a}static adjust_change(a,i,n,o,s){return K.prototype.adjust.call(a,i,n,o,s,a)}static _minimumExpansionYear=-1;static EXTRA_COVERAGE=5;constructor(a){this.wrappedJSObject=this,this.fromData(a)}tzid="";location="";tznames="";latitude=0;longitude=0;component=null;expandedUntilYear=0;icalclass="icaltimezone";fromData(a){if(this.expandedUntilYear=0,this.changes=[],a instanceof ea)this.component=a;else{if(a&&"component"in a)if(typeof a.component=="string"){let i=he(a.component);this.component=new ea(i)}else a.component instanceof ea?this.component=a.component:this.component=null;for(let i of q_)a&&i in a&&(this[i]=a[i])}return this.component instanceof ea&&!this.tzid&&(this.tzid=this.component.getFirstPropertyValue("tzid")),this}utcOffset(a){if(this==Fe.utcTimezone||this==Fe.localTimezone||(this._ensureCoverage(a.year),!this.changes.length))return 0;let i={year:a.year,month:a.month,day:a.day,hour:a.hour,minute:a.minute,second:a.second},n=this._findNearbyChange(i),o=-1,s=1;for(;;){let _=gt(this.changes[n],!0);if(_.utcOffset<_.prevUtcOffset?Fe.adjust_change(_,0,0,0,_.utcOffset):Fe.adjust_change(_,0,0,0,_.prevUtcOffset),Fe._compare_change_fn(i,_)>=0?o=n:s=-1,s==-1&&o!=-1)break;if(n+=s,n<0)return 0;if(n>=this.changes.length)break}let l=this.changes[o];if(l.utcOffset-l.prevUtcOffset<0&&o>0){let _=gt(l,!0);if(Fe.adjust_change(_,0,0,0,_.prevUtcOffset),Fe._compare_change_fn(i,_)<0){let r=this.changes[o-1],f=!1;l.is_daylight!=f&&r.is_daylight==f&&(l=r)}}return l.utcOffset}_findNearbyChange(a){let i=rt(this.changes,a,Fe._compare_change_fn);return i>=this.changes.length?this.changes.length-1:i}_ensureCoverage(a){if(Fe._minimumExpansionYear==-1){let n=K.now();Fe._minimumExpansionYear=n.year}let i=a;if(ii||!g));)s.year=g.year,s.month=g.month,s.day=g.day,s.hour=g.hour,s.minute=g.minute,s.second=g.second,s.isDate=g.isDate,Fe.adjust_change(s,0,0,0,-s.prevUtcOffset),n.push(s)}}return n}toString(){return this.tznames?this.tznames:this.tzid}},Ge=null;const Hi={get count(){return Ge===null?0:Object.keys(Ge).length},reset:function(){Ge=Object.create(null);let e=ce.utcTimezone;Ge.Z=e,Ge.UTC=e,Ge.GMT=e},_hard_reset:function(){Ge=null},has:function(e){return Ge===null?!1:!!Ge[e]},get:function(e){return Ge===null&&this.reset(),Ge[e]},register:function(e,a){if(Ge===null&&this.reset(),typeof e=="string"&&a instanceof ce&&([e,a]=[a,e]),a||(e instanceof ce?a=e.tzid:e.name==="vtimezone"&&(e=new ce(e),a=e.tzid)),!a)throw new TypeError("Neither a timezone nor a name was passed");if(e instanceof ce)Ge[a]=e;else throw new TypeError("timezone must be ICAL.Timezone or ICAL.Component")},remove:function(e){return Ge===null?null:delete Ge[e]}};function L_(e){let a,i,n,o,s;if(!e||e.name!=="vcalendar")return e;for(a=e.getAllSubcomponents(),i=[],n={},s=0;s"u"))return e instanceof a?e:new a(e)}function ur(e,a,i){for(;(i=e.indexOf(a,i))!==-1;)if(i>0&&e[i-1]==="\\")i+=1;else return i;return-1}function rt(e,a,i){if(!e.length)return 0;let n=0,o=e.length-1,s,l;for(;n<=o;)if(s=n+Math.floor((o-n)/2),l=i(a,e[s]),l<0)o=s-1;else if(l>0)n=s+1;else break;return l<0?s:l>0?s+1:s}function gt(e,a){if(!e||typeof e!="object")return e;if(e instanceof Date)return new Date(e.getTime());if("clone"in e)return e.clone();if(Array.isArray(e)){let i=[];for(let n=0;n65535?2:1:(a+=Oe.newLineChar+" "+i.slice(0,Math.max(0,n)),i=i.slice(Math.max(0,n)),n=o=0)}return a.slice(Oe.newLineChar.length+1)}function Qe(e){switch(typeof e!="string"&&(typeof e=="number"&&(e=parseInt(e)),e=String(e)),e.length){case 0:return"00";case 1:return"0"+e;default:return e}}function xe(e){return e<0?Math.ceil(e):Math.floor(e)}function ut(e,a){for(let i in e){let n=Object.getOwnPropertyDescriptor(e,i);n&&!Object.getOwnPropertyDescriptor(a,i)&&Object.defineProperty(a,i,n)}return a}var Z_=Object.freeze({__proto__:null,updateTimezones:L_,isStrictlyNaN:ai,strictParseInt:Ie,formatClassType:ka,unescapedIndexOf:ur,binsearchInsert:rt,clone:gt,foldline:cr,pad2:Qe,trunc:xe,extend:ut});class la{static fromString(a){let i={};return i.factor=a[0]==="+"?1:-1,i.hours=Ie(a.slice(1,3)),i.minutes=Ie(a.slice(4,6)),new la(i)}static fromSeconds(a){let i=new la;return i.fromSeconds(a),i}constructor(a){this.fromData(a)}hours=0;minutes=0;factor=1;icaltype="utc-offset";clone(){return la.fromSeconds(this.toSeconds())}fromData(a){if(a)for(let[i,n]of Object.entries(a))this[i]=n;this._normalize()}fromSeconds(a){let i=Math.abs(a);return this.factor=a<0?-1:1,this.hours=xe(i/3600),i-=this.hours*3600,this.minutes=xe(i/60),this}toSeconds(){return this.factor*(60*this.minutes+3600*this.hours)}compare(a){let i=this.toSeconds(),n=a.toSeconds();return(i>n)-(n>i)}_normalize(){let a=this.toSeconds(),i=this.factor;for(;a<-43200;)a+=97200;for(;a>50400;)a-=97200;this.fromSeconds(a),a==0&&(this.factor=i)}toICALString(){return Me.icalendar.value["utc-offset"].toICAL(this.toString())}toString(){return(this.factor==1?"+":"-")+Qe(this.hours)+":"+Qe(this.minutes)}}class Za extends K{static fromDateAndOrTimeString(a,i){function n(p,T,k){return p?Ie(p.slice(T,T+k)):null}let o=a.split("T"),s=o[0],l=o[1],_=l?Me.vcard.value.time._splitZone(l):[],r=_[0],f=_[1],d=s?s.length:0,g=f?f.length:0,h=s&&s[0]=="-"&&s[1]=="-",F=f&&f[0]=="-",m={year:h?null:n(s,0,4),month:h&&(d==4||d==7)?n(s,2,2):d==7||d==10?n(s,5,2):null,day:d==5?n(s,3,2):d==7&&h?n(s,5,2):d==10?n(s,8,2):null,hour:F?null:n(f,0,2),minute:F&&g==3?n(f,1,2):g>4?F?n(f,1,2):n(f,3,2):null,second:g==4?n(f,2,2):g==6?n(f,4,2):g==8?n(f,6,2):null};return r=="Z"?r=ce.utcTimezone:r&&r[3]==":"?r=la.fromString(r):r=null,new Za(m,r,i)}constructor(a,i,n){super(a,i),this.icaltype=n||"date-and-or-time"}icalclass="vcardtime";icaltype="date-and-or-time";clone(){return new Za(this._time,this.zone,this.icaltype)}_normalize(){return this}utcOffset(){return this.zone instanceof la?this.zone.toSeconds():K.prototype.utcOffset.apply(this,arguments)}toICALString(){return Me.vcard.value[this.icaltype].toICAL(this.toString())}toString(){let a=this.year,i=this.month,n=this.day,o=this.hour,s=this.minute,l=this.second,_=a!==null,r=i!==null,f=n!==null,d=o!==null,g=s!==null,h=l!==null,F=(_?Qe(a)+(r||f?"-":""):r||f?"--":"")+(r?Qe(i):"")+(f?"-"+Qe(n):""),m=(d?Qe(o):"-")+(d&&g?":":"")+(g?Qe(s):"")+(!d&&!g?"-":"")+(g&&h?":":"")+(h?Qe(l):""),p;switch(this.zone===ce.utcTimezone?p="Z":this.zone instanceof la?p=this.zone.toString():this.zone===ce.localTimezone?p="":this.zone instanceof ce?p=la.fromSeconds(this.zone.utcOffset(this)).toString():p="",this.icaltype){case"time":return m+p;case"date-and-or-time":case"date-time":return F+(m=="--"?"":"T"+m+p);case"date":return F}return null}}class ua{static _indexMap={BYSECOND:0,BYMINUTE:1,BYHOUR:2,BYDAY:3,BYMONTHDAY:4,BYYEARDAY:5,BYWEEKNO:6,BYMONTH:7,BYSETPOS:8};static _expandMap={SECONDLY:[1,1,1,1,1,1,1,1],MINUTELY:[2,1,1,1,1,1,1,1],HOURLY:[2,2,1,1,1,1,1,1],DAILY:[2,2,2,1,1,1,1,1],WEEKLY:[2,2,2,2,3,3,1,1],MONTHLY:[2,2,2,2,2,3,3,1],YEARLY:[2,2,2,2,2,2,2,2]};static UNKNOWN=0;static CONTRACT=1;static EXPAND=2;static ILLEGAL=3;constructor(a){this.fromData(a)}completed=!1;rule=null;dtstart=null;last=null;occurrence_number=0;by_indices=null;initialized=!1;by_data=null;days=null;days_index=0;fromData(a){if(this.rule=ka(a.rule,He),!this.rule)throw new Error("iterator requires a (ICAL.Recur) rule");if(this.dtstart=ka(a.dtstart,K),!this.dtstart)throw new Error("iterator requires a (ICAL.Time) dtstart");if(a.by_data?this.by_data=a.by_data:this.by_data=gt(this.rule.parts,!0),a.occurrence_number&&(this.occurrence_number=a.occurrence_number),this.days=a.days||[],a.last&&(this.last=ka(a.last,K)),this.by_indices=a.by_indices,this.by_indices||(this.by_indices={BYSECOND:0,BYMINUTE:0,BYHOUR:0,BYDAY:0,BYMONTH:0,BYWEEKNO:0,BYMONTHDAY:0}),this.initialized=a.initialized||!1,!this.initialized)try{this.init()}catch(i){if(i instanceof Ro)this.completed=!0;else throw i}}init(){this.initialized=!0,this.last=this.dtstart.clone();let a=this.by_data;if("BYDAY"in a&&this.sort_byday_rules(a.BYDAY),"BYYEARDAY"in a&&("BYMONTH"in a||"BYWEEKNO"in a||"BYMONTHDAY"in a||"BYDAY"in a))throw new Error("Invalid BYYEARDAY rule");if("BYWEEKNO"in a&&"BYMONTHDAY"in a)throw new Error("BYWEEKNO does not fit to BYMONTHDAY");if(this.rule.freq=="MONTHLY"&&("BYYEARDAY"in a||"BYWEEKNO"in a))throw new Error("For MONTHLY recurrences neither BYYEARDAY nor BYWEEKNO may appear");if(this.rule.freq=="WEEKLY"&&("BYYEARDAY"in a||"BYMONTHDAY"in a))throw new Error("For WEEKLY recurrences neither BYMONTHDAY nor BYYEARDAY may appear");if(this.rule.freq!="YEARLY"&&"BYYEARDAY"in a)throw new Error("BYYEARDAY may only appear in YEARLY rules");if(this.last.second=this.setup_defaults("BYSECOND","SECONDLY",this.dtstart.second),this.last.minute=this.setup_defaults("BYMINUTE","MINUTELY",this.dtstart.minute),this.last.hour=this.setup_defaults("BYHOUR","HOURLY",this.dtstart.hour),this.last.day=this.setup_defaults("BYMONTHDAY","DAILY",this.dtstart.day),this.last.month=this.setup_defaults("BYMONTH","MONTHLY",this.dtstart.month),this.rule.freq=="WEEKLY")if("BYDAY"in a){let[,i]=this.ruleDayOfWeek(a.BYDAY[0],this.rule.wkst),n=i-this.last.dayOfWeek(this.rule.wkst);(this.last.dayOfWeek(this.rule.wkst)=0||n<0)&&(this.last.day+=n)}else{let i=He.numericDayToIcalDay(this.dtstart.dayOfWeek());a.BYDAY=[i]}if(this.rule.freq=="YEARLY"){const i=this.rule.until?this.rule.until.year:2e4;for(;this.last.year<=i&&(this.expand_year_days(this.last.year),!(this.days.length>0));)this.increment_year(this.rule.interval);if(this.days.length==0)throw new Ro;this._nextByYearDay()}if(this.rule.freq=="MONTHLY"){if(this.has_by_data("BYDAY")){let i=null,n=this.last.clone(),o=K.daysInMonth(this.last.month,this.last.year);for(let s of this.by_data.BYDAY){this.last=n.clone();let[l,_]=this.ruleDayOfWeek(s),r=this.last.nthWeekDay(_,l);if(l>=6||l<=-6)throw new Error("Malformed values in BYDAY part");if(r>o||r<=0){if(i&&i.month==n.month)continue;for(;r>o||r<=0;)this.increment_month(),o=K.daysInMonth(this.last.month,this.last.year),r=this.last.nthWeekDay(_,l)}this.last.day=r,(!i||this.last.compare(i)<0)&&(i=this.last.clone())}if(this.last=i.clone(),this.has_by_data("BYMONTHDAY")&&this._byDayAndMonthDay(!0),this.last.day>o||this.last.day==0)throw new Error("Malformed values in BYDAY part")}else if(this.has_by_data("BYMONTHDAY")){this.last.day=1;let i=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY).filter(n=>n>=this.last.day);if(i.length)this.last.day=i[0],this.by_data.BYMONTHDAY=i;else if(!this.next_month()&&!this.next_month()&&!this.next_month())throw new Error("No possible occurrences")}}}next(a=!1){let i=this.last?this.last.clone():null;if((this.rule.count&&this.occurrence_number>=this.rule.count||this.rule.until&&this.last.compare(this.rule.until)>0)&&(this.completed=!0),this.completed)return null;if(this.occurrence_number==0&&this.last.compare(this.dtstart)>=0)return this.occurrence_number++,this.last;let n;do switch(n=1,this.rule.freq){case"SECONDLY":this.next_second();break;case"MINUTELY":this.next_minute();break;case"HOURLY":this.next_hour();break;case"DAILY":this.next_day();break;case"WEEKLY":this.next_week();break;case"MONTHLY":n=this.next_month();break;case"YEARLY":this.next_year();break;default:return null}while(!this.check_contracting_rules()||this.last.compare(this.dtstart)<0||!n);if(this.last.compare(i)==0){if(a)throw new Error("Same occurrence found twice, protecting you from death by recursion");this.next(!0)}return this.rule.until&&this.last.compare(this.rule.until)>0?(this.completed=!0,null):(this.occurrence_number++,this.last)}next_second(){return this.next_generic("BYSECOND","SECONDLY","second","minute")}increment_second(a){return this.increment_generic(a,"second",60,"minute")}next_minute(){return this.next_generic("BYMINUTE","MINUTELY","minute","hour","next_second")}increment_minute(a){return this.increment_generic(a,"minute",60,"hour")}next_hour(){return this.next_generic("BYHOUR","HOURLY","hour","monthday","next_minute")}increment_hour(a){this.increment_generic(a,"hour",24,"monthday")}next_day(){let a=this.rule.freq=="DAILY";return this.next_hour()==0||(a?this.increment_monthday(this.rule.interval):this.increment_monthday(1)),0}next_week(){let a=0;if(this.next_weekday_by_week()==0)return a;if(this.has_by_data("BYWEEKNO")){this.by_indices.BYWEEKNO++,this.by_indices.BYWEEKNO==this.by_data.BYWEEKNO.length&&(this.by_indices.BYWEEKNO=0,a=1),this.last.month=1,this.last.day=1;let i=this.by_data.BYWEEKNO[this.by_indices.BYWEEKNO];this.last.day+=7*i,a&&this.increment_year(1)}else this.increment_monthday(7*this.rule.interval);return a}normalizeByMonthDayRules(a,i,n){let o=K.daysInMonth(i,a),s=[],l=0,_=n.length,r;for(;l<_;l++){if(r=parseInt(n[l],10),isNaN(r))throw new Error("Invalid BYMONTHDAY value");if(!(Math.abs(r)>o)){if(r<0)r=o+(r+1);else if(r===0)continue;s.indexOf(r)===-1&&s.push(r)}}return s.sort(function(f,d){return f-d})}_byDayAndMonthDay(a){let i,n=this.by_data.BYDAY,o,s=0,l,_=n.length,r=0,f,d=this,g=this.last.day;function h(){for(f=K.daysInMonth(d.last.month,d.last.year),i=d.normalizeByMonthDayRules(d.last.year,d.last.month,d.by_data.BYMONTHDAY),l=i.length;i[s]<=g&&!(a&&i[s]==g)&&sf){F();continue}let p=i[s++];if(p>=o)g=p;else{F();continue}for(let T=0;T<_;T++){let k=this.ruleDayOfWeek(n[T]),w=k[0],v=k[1];if(this.last.day=g,this.last.isNthWeekDay(v,w)){r=1;break}}if(!r&&s===l){F();continue}}if(m<=0)throw new Error("Malformed values in BYDAY combined with BYMONTHDAY parts");return r}next_month(){let a=1;if(this.next_hour()==0)return a;if(this.has_by_data("BYDAY")&&this.has_by_data("BYMONTHDAY"))a=this._byDayAndMonthDay();else if(this.has_by_data("BYDAY")){let i=K.daysInMonth(this.last.month,this.last.year),n=0,o=0;if(this.has_by_data("BYSETPOS")){let l=this.last.day;for(let _=1;_<=i;_++)this.last.day=_,this.is_day_in_byday(this.last)&&(o++,_<=l&&n++);this.last.day=l}a=0;let s;for(s=this.last.day+1;s<=i;s++)if(this.last.day=s,this.is_day_in_byday(this.last)&&(!this.has_by_data("BYSETPOS")||this.check_set_position(++n)||this.check_set_position(n-o-1))){a=1;break}s>i&&(this.last.day=1,this.increment_month(),this.is_day_in_byday(this.last)?(!this.has_by_data("BYSETPOS")||this.check_set_position(1))&&(a=1):a=0)}else if(this.has_by_data("BYMONTHDAY")){if(this.by_indices.BYMONTHDAY++,this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length&&(this.by_indices.BYMONTHDAY=0,this.increment_month(),this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length))return 0;let i=K.daysInMonth(this.last.month,this.last.year),n=this.by_data.BYMONTHDAY[this.by_indices.BYMONTHDAY];n<0&&(n=i+n+1),n>i?(this.last.day=1,a=this.is_day_in_byday(this.last)):this.last.day=n}else{this.increment_month();let i=K.daysInMonth(this.last.month,this.last.year);this.by_data.BYMONTHDAY[0]>i?a=0:this.last.day=this.by_data.BYMONTHDAY[0]}return a}next_weekday_by_week(){let a=0;if(this.next_hour()==0)return a;if(!this.has_by_data("BYDAY"))return 1;for(;;){let i=new K;this.by_indices.BYDAY++,this.by_indices.BYDAY==Object.keys(this.by_data.BYDAY).length&&(this.by_indices.BYDAY=0,a=1);let n=this.by_data.BYDAY[this.by_indices.BYDAY],o=this.ruleDayOfWeek(n)[1];o-=this.rule.wkst,o<0&&(o+=7),i.year=this.last.year,i.month=this.last.month,i.day=this.last.day;let s=i.startDoyWeek(this.rule.wkst);if(o+s<1&&!a)continue;let l=K.fromDayOfYear(s+o,this.last.year);return this.last.year=l.year,this.last.month=l.month,this.last.day=l.day,a}}next_year(){if(this.next_hour()==0)return 0;if(++this.days_index==this.days.length){this.days_index=0;do this.increment_year(this.rule.interval),this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY)),this.expand_year_days(this.last.year);while(this.days.length==0)}return this._nextByYearDay(),1}_nextByYearDay(){let a=this.days[this.days_index],i=this.last.year;a<1&&(a+=1,i+=1);let n=K.fromDayOfYear(a,i);this.last.day=n.day,this.last.month=n.month}ruleDayOfWeek(a,i){let n=a.match(/([+-]?[0-9])?(MO|TU|WE|TH|FR|SA|SU)/);if(n){let o=parseInt(n[1]||0,10);return a=He.icalDayToNumericDay(n[2],i),[o,a]}else return[0,0]}next_generic(a,i,n,o,s){let l=a in this.by_data,_=this.rule.freq==i,r=0;if(s&&this[s]()==0)return r;if(l){this.by_indices[a]++;let f=this.by_data[a];this.by_indices[a]==f.length&&(this.by_indices[a]=0,r=1),this.last[n]=f[this.by_indices[a]]}else _&&this["increment_"+n](this.rule.interval);return l&&r&&_&&this["increment_"+o](1),r}increment_monthday(a){for(let i=0;in&&(this.last.day-=n,this.increment_month())}}increment_month(){if(this.last.day=1,this.has_by_data("BYMONTH"))this.by_indices.BYMONTH++,this.by_indices.BYMONTH==this.by_data.BYMONTH.length&&(this.by_indices.BYMONTH=0,this.increment_year(1)),this.last.month=this.by_data.BYMONTH[this.by_indices.BYMONTH];else{this.rule.freq=="MONTHLY"?this.last.month+=this.rule.interval:this.last.month++,this.last.month--;let a=xe(this.last.month/12);this.last.month%=12,this.last.month++,a!=0&&this.increment_year(a)}this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY))}increment_year(a){this.last.day=1,this.last.year+=a}increment_generic(a,i,n,o){this.last[i]+=a;let s=xe(this.last[i]/n);this.last[i]%=n,s!=0&&this["increment_"+o](s)}has_by_data(a){return a in this.rule.parts}expand_year_days(a){let i=new K;this.days=[];let n={},o=["BYDAY","BYWEEKNO","BYMONTHDAY","BYMONTH","BYYEARDAY"];for(let _ of o)_ in this.rule.parts&&(n[_]=this.rule.parts[_]);if("BYMONTH"in n&&"BYWEEKNO"in n){let _=1,r={};i.year=a,i.isDate=!0;for(let f=0;f0?(T=k+(m-1)*7,T<=r&&this.days.push(d+T)):(T=w+(m+1)*7,T>0&&this.days.push(d+T))}}this.days.sort(function(_,r){return _-r})}else if(s==2&&"BYDAY"in n&&"BYMONTHDAY"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a);this.by_data.BYMONTHDAY.indexOf(f.day)>=0&&this.days.push(r)}}else if(s==3&&"BYDAY"in n&&"BYMONTHDAY"in n&&"BYMONTH"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a);this.by_data.BYMONTH.indexOf(f.month)>=0&&this.by_data.BYMONTHDAY.indexOf(f.day)>=0&&this.days.push(r)}}else if(s==2&&"BYDAY"in n&&"BYWEEKNO"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a).weekNumber(this.rule.wkst);this.by_data.BYWEEKNO.indexOf(f)&&this.days.push(r)}}else s==3&&"BYDAY"in n&&"BYWEEKNO"in n&&"BYMONTHDAY"in n||(s==1&&"BYYEARDAY"in n?this.days=this.days.concat(this.by_data.BYYEARDAY):this.days=[]);let l=K.isLeapYear(a)?366:365;return this.days.sort((_,r)=>(_<0&&(_+=l+1),r<0&&(r+=l+1),_-r)),0}expand_by_day(a){let i=[],n=this.last.clone();n.year=a,n.month=1,n.day=1,n.isDate=!0;let o=n.dayOfWeek();n.month=12,n.day=31,n.isDate=!0;let s=n.dayOfWeek(),l=n.dayOfYear();for(let _ of this.by_data.BYDAY){let r=this.ruleDayOfWeek(_),f=r[0],d=r[1];if(f==0){let g=(d+7-o)%7+1;for(let h=g;h<=l;h+=7)i.push(h)}else if(f>0){let g;d>=o?g=d-o+1:g=d-o+8,i.push(g+(f-1)*7)}else{let g;f=-f,d<=s?g=l-s+d:g=l-s+d-7,i.push(g-(f-1)*7)}}return i}is_day_in_byday(a){if(this.by_data.BYDAY)for(let i of this.by_data.BYDAY){let n=this.ruleDayOfWeek(i),o=n[0],s=n[1],l=a.dayOfWeek();if(o==0&&s==l||a.nthWeekDay(s,o)==a.day)return 1}return 0}check_set_position(a){return this.has_by_data("BYSETPOS")?this.by_data.BYSETPOS.indexOf(a)!==-1:!1}sort_byday_rules(a){for(let i=0;is){let l=a[i];a[i]=a[n],a[n]=l}}}check_contract_restriction(a,i){let n=ua._indexMap[a],o=ua._expandMap[this.rule.freq][n],s=!1;if(a in this.by_data&&o==ua.CONTRACT){let l=this.by_data[a];for(let _ of l)if(_==i){s=!0;break}}else s=!0;return s}check_contracting_rules(){let a=this.last.dayOfWeek(),i=this.last.weekNumber(this.rule.wkst),n=this.last.dayOfYear();return this.check_contract_restriction("BYSECOND",this.last.second)&&this.check_contract_restriction("BYMINUTE",this.last.minute)&&this.check_contract_restriction("BYHOUR",this.last.hour)&&this.check_contract_restriction("BYDAY",He.numericDayToIcalDay(a))&&this.check_contract_restriction("BYWEEKNO",i)&&this.check_contract_restriction("BYMONTHDAY",this.last.day)&&this.check_contract_restriction("BYMONTH",this.last.month)&&this.check_contract_restriction("BYYEARDAY",n)}setup_defaults(a,i,n){let o=ua._indexMap[a];return ua._expandMap[this.rule.freq][o]!=ua.CONTRACT&&(a in this.by_data||(this.by_data[a]=[n]),this.rule.freq!=i)?this.by_data[a][0]:n}toJSON(){let a=Object.create(null);return a.initialized=this.initialized,a.rule=this.rule.toJSON(),a.dtstart=this.dtstart.toJSON(),a.by_data=this.by_data,a.days=this.days,a.last=this.last.toJSON(),a.by_indices=this.by_indices,a.occurrence_number=this.occurrence_number,a}}class Ro extends Error{constructor(){super("Recurrence rule has no valid occurrences")}}const I_=/^(SU|MO|TU|WE|TH|FR|SA)$/,H_=/^([+-])?(5[0-3]|[1-4][0-9]|[1-9])?(SU|MO|TU|WE|TH|FR|SA)$/,mr={SU:K.SUNDAY,MO:K.MONDAY,TU:K.TUESDAY,WE:K.WEDNESDAY,TH:K.THURSDAY,FR:K.FRIDAY,SA:K.SATURDAY},P_=Object.fromEntries(Object.entries(mr).map(e=>e.reverse())),Co=["SECONDLY","MINUTELY","HOURLY","DAILY","WEEKLY","MONTHLY","YEARLY"];class He{static fromString(a){let i=this._stringToData(a,!1);return new He(i)}static fromData(a){return new He(a)}static _stringToData(a,i){let n=Object.create(null),o=a.split(";"),s=o.length;for(let l=0;l7&&(o-=7),P_[o]}constructor(a){this.wrappedJSObject=this,this.parts={},a&&typeof a=="object"&&this.fromData(a)}parts=null;interval=1;wkst=K.MONDAY;until=null;count=null;freq=null;icalclass="icalrecur";icaltype="recur";iterator(a){return new ua({rule:this,dtstart:a})}clone(){return new He(this.toJSON())}isFinite(){return!!(this.count||this.until)}isByCount(){return!!(this.count&&!this.until)}addComponent(a,i){let n=a.toUpperCase();n in this.parts?this.parts[n].push(i):this.parts[n]=[i]}setComponent(a,i){this.parts[a.toUpperCase()]=i.slice()}getComponent(a){let i=a.toUpperCase();return i in this.parts?this.parts[i].slice():[]}getNextOccurrence(a,i){let n=this.iterator(a),o;do o=n.next();while(o&&o.compare(i)<=0);return o&&i.zone&&(o.zone=i.zone),o}fromData(a){for(let i in a){let n=i.toUpperCase();n in K0?Array.isArray(a[i])?this.parts[n]=a[i]:this.parts[n]=[a[i]]:this[i]=a[i]}this.interval&&typeof this.interval!="number"&&Q0.INTERVAL(this.interval,this),this.wkst&&typeof this.wkst!="number"&&(this.wkst=He.icalDayToNumericDay(this.wkst)),this.until&&!(this.until instanceof K)&&(this.until=K.fromString(this.until))}toJSON(){let a=Object.create(null);a.freq=this.freq,this.count&&(a.count=this.count),this.interval>1&&(a.interval=this.interval);for(let[i,n]of Object.entries(this.parts))Array.isArray(n)&&n.length==1?a[i.toLowerCase()]=n[0]:a[i.toLowerCase()]=gt(n);return this.until&&(a.until=this.until.toString()),"wkst"in this&&this.wkst!==K.DEFAULT_WEEK_START&&(a.wkst=He.numericDayToIcalDay(this.wkst)),a}toString(){let a="FREQ="+this.freq;this.count&&(a+=";COUNT="+this.count),this.interval>1&&(a+=";INTERVAL="+this.interval);for(let[i,n]of Object.entries(this.parts))a+=";"+i+"="+n;return this.until&&(a+=";UNTIL="+this.until.toICALString()),"wkst"in this&&this.wkst!==K.DEFAULT_WEEK_START&&(a+=";WKST="+He.numericDayToIcalDay(this.wkst)),a}}function Ra(e,a,i,n){let o=n;if(n[0]==="+"&&(o=n.slice(1)),o=Ie(o),a!==void 0&&n '+a);if(i!==void 0&&n>i)throw new Error(e+': invalid value "'+n+'" must be < '+a);return o}const Q0={FREQ:function(e,a,i){if(Co.indexOf(e)!==-1)a.freq=e;else throw new Error('invalid frequency "'+e+'" expected: "'+Co.join(", ")+'"')},COUNT:function(e,a,i){a.count=Ie(e)},INTERVAL:function(e,a,i){a.interval=Ie(e),a.interval<1&&(a.interval=1)},UNTIL:function(e,a,i){e.length>10?a.until=Me.icalendar.value["date-time"].fromICAL(e):a.until=Me.icalendar.value.date.fromICAL(e),i||(a.until=K.fromString(a.until))},WKST:function(e,a,i){if(I_.test(e))a.wkst=He.icalDayToNumericDay(e);else throw new Error('invalid WKST value "'+e+'"')}},K0={BYSECOND:Ra.bind(void 0,"BYSECOND",0,60),BYMINUTE:Ra.bind(void 0,"BYMINUTE",0,59),BYHOUR:Ra.bind(void 0,"BYHOUR",0,23),BYDAY:function(e){if(H_.test(e))return e;throw new Error('invalid BYDAY value "'+e+'"')},BYMONTHDAY:Ra.bind(void 0,"BYMONTHDAY",-31,31),BYYEARDAY:Ra.bind(void 0,"BYYEARDAY",-366,366),BYWEEKNO:Ra.bind(void 0,"BYWEEKNO",-53,53),BYMONTH:Ra.bind(void 0,"BYMONTH",1,12),BYSETPOS:Ra.bind(void 0,"BYSETPOS",-366,366)};class Ya{static fromString(a,i){let n=a.split("/");if(n.length!==2)throw new Error('Invalid string value: "'+a+'" must contain a "/" char.');let o={start:K.fromDateTimeString(n[0],i)},s=n[1];return Pe.isValueString(s)?o.duration=Pe.fromString(s):o.end=K.fromDateTimeString(s,i),new Ya(o)}static fromData(a){return new Ya(a)}static fromJSON(a,i,n){function o(s,l){return n?K.fromString(s,l):K.fromDateTimeString(s,l)}return Pe.isValueString(a[1])?Ya.fromData({start:o(a[0],i),duration:Pe.fromString(a[1])}):Ya.fromData({start:o(a[0],i),end:o(a[1],i)})}constructor(a){if(this.wrappedJSObject=this,a&&"start"in a){if(a.start&&!(a.start instanceof K))throw new TypeError(".start must be an instance of ICAL.Time");this.start=a.start}if(a&&a.end&&a.duration)throw new Error("cannot accept both end and duration");if(a&&"end"in a){if(a.end&&!(a.end instanceof K))throw new TypeError(".end must be an instance of ICAL.Time");this.end=a.end}if(a&&"duration"in a){if(a.duration&&!(a.duration instanceof Pe))throw new TypeError(".duration must be an instance of ICAL.Duration");this.duration=a.duration}}start=null;end=null;duration=null;icalclass="icalperiod";icaltype="period";clone(){return Ya.fromData({start:this.start?this.start.clone():null,end:this.end?this.end.clone():null,duration:this.duration?this.duration.clone():null})}getDuration(){return this.duration?this.duration:this.end.subtractDate(this.start)}getEnd(){if(this.end)return this.end;{let a=this.start.clone();return a.addDuration(this.duration),a}}toString(){return this.start+"/"+(this.end||this.duration)}toJSON(){return[this.start.toString(),(this.end||this.duration).toString()]}toICALString(){return this.start.toICALString()+"/"+(this.end||this.duration).toICALString()}}const G_=/\\\\|\\;|\\,|\\[Nn]/g,U_=/\\|;|,|\n/g,Oo=/\\\\|\\,|\\[Nn]/g,Bo=/\\|,|\n/g;function mn(e,a){return{matches:/.*/,fromICAL:function(i,n){return V_(i,e,n)},toICAL:function(i,n){let o=a;return n&&(o=new RegExp(o.source+"|"+n,o.flags)),i.replace(o,function(s){switch(s){case"\\":return"\\\\";case";":return"\\;";case",":return"\\,";case`
-`:return"\\n";default:return s}})}}}const de={defaultType:"text"},ti={defaultType:"text",multiValue:","},Pi={defaultType:"text",structuredValue:";"},Fi={defaultType:"integer"},ui={defaultType:"date-time",allowedTypes:["date-time","date"]},ci={defaultType:"date-time"},We={defaultType:"uri"},No={defaultType:"utc-offset"},xo={defaultType:"recur"},Mo={defaultType:"date-and-or-time",allowedTypes:["date-time","date","text"]};function z_(e){switch(e){case"\\\\":return"\\";case"\\;":return";";case"\\,":return",";case"\\n":case"\\N":return`
-`;default:return e}}function V_(e,a,i){return e.indexOf("\\")===-1?e:(i&&(a=new RegExp(a.source+"|\\\\"+i,a.flags)),e.replace(a,z_))}let Qn={categories:ti,url:We,version:de,uid:de},Kn={boolean:{values:["TRUE","FALSE"],fromICAL:function(e){switch(e){case"TRUE":return!0;case"FALSE":return!1;default:return!1}},toICAL:function(e){return e?"TRUE":"FALSE"}},float:{matches:/^[+-]?\d+\.\d+$/,fromICAL:function(e){let a=parseFloat(e);return ai(a)?0:a},toICAL:function(e){return String(e)}},integer:{fromICAL:function(e){let a=parseInt(e);return ai(a)?0:a},toICAL:function(e){return String(e)}},"utc-offset":{toICAL:function(e){return e.length<7?e.slice(0,3)+e.slice(4,6):e.slice(0,3)+e.slice(4,6)+e.slice(7,9)},fromICAL:function(e){return e.length<6?e.slice(0,3)+":"+e.slice(3,5):e.slice(0,3)+":"+e.slice(3,5)+":"+e.slice(5,7)},decorate:function(e){return la.fromString(e)},undecorate:function(e){return e.toString()}}},$_={cutype:{values:["INDIVIDUAL","GROUP","RESOURCE","ROOM","UNKNOWN"],allowXName:!0,allowIanaToken:!0},"delegated-from":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},"delegated-to":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},encoding:{values:["8BIT","BASE64"]},fbtype:{values:["FREE","BUSY","BUSY-UNAVAILABLE","BUSY-TENTATIVE"],allowXName:!0,allowIanaToken:!0},member:{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},partstat:{values:["NEEDS-ACTION","ACCEPTED","DECLINED","TENTATIVE","DELEGATED","COMPLETED","IN-PROCESS"],allowXName:!0,allowIanaToken:!0},range:{values:["THISANDFUTURE"]},related:{values:["START","END"]},reltype:{values:["PARENT","CHILD","SIBLING"],allowXName:!0,allowIanaToken:!0},role:{values:["REQ-PARTICIPANT","CHAIR","OPT-PARTICIPANT","NON-PARTICIPANT"],allowXName:!0,allowIanaToken:!0},rsvp:{values:["TRUE","FALSE"]},"sent-by":{valueType:"cal-address"},tzid:{matches:/^\//},value:{values:["binary","boolean","cal-address","date","date-time","duration","float","integer","period","recur","text","time","uri","utc-offset"],allowXName:!0,allowIanaToken:!0}};const qe=ut(Kn,{text:mn(G_,U_),uri:{},binary:{decorate:function(e){return B0.fromString(e)},undecorate:function(e){return e.toString()}},"cal-address":{},date:{decorate:function(e,a){return K.fromDateString(e,a)},undecorate:function(e){return e.toString()},fromICAL:function(e){return e.slice(0,4)+"-"+e.slice(4,6)+"-"+e.slice(6,8)},toICAL:function(e){let a=e.length;return a==10?e.slice(0,4)+e.slice(5,7)+e.slice(8,10):a>=19?qe["date-time"].toICAL(e):e}},"date-time":{fromICAL:function(e){{let a=e.slice(0,4)+"-"+e.slice(4,6)+"-"+e.slice(6,8)+"T"+e.slice(9,11)+":"+e.slice(11,13)+":"+e.slice(13,15);return e[15]&&e[15]==="Z"&&(a+="Z"),a}},toICAL:function(e){let a=e.length;if(a==10&&!wt.strict)return qe.date.toICAL(e);if(a>=19){let i=e.slice(0,4)+e.slice(5,7)+e.slice(8,13)+e.slice(14,16)+e.slice(17,19);return e[19]&&e[19]==="Z"&&(i+="Z"),i}else return e},decorate:function(e,a){return K.fromDateTimeString(e,a)},undecorate:function(e){return e.toString()}},duration:{decorate:function(e){return Pe.fromString(e)},undecorate:function(e){return e.toString()}},period:{fromICAL:function(e){let a=e.split("/");return a[0]=qe["date-time"].fromICAL(a[0]),Pe.isValueString(a[1])||(a[1]=qe["date-time"].fromICAL(a[1])),a},toICAL:function(e){return e=e.slice(),e[0]=qe["date-time"].toICAL(e[0]),Pe.isValueString(e[1])||(e[1]=qe["date-time"].toICAL(e[1])),e.join("/")},decorate:function(e,a){return Ya.fromJSON(e,a,!wt.strict)},undecorate:function(e){return e.toJSON()}},recur:{fromICAL:function(e){return He._stringToData(e,!0)},toICAL:function(e){let a="";for(let[i,n]of Object.entries(e))i=="until"?n.length>10?n=qe["date-time"].toICAL(n):n=qe.date.toICAL(n):i=="wkst"?typeof n=="number"&&(n=He.numericDayToIcalDay(n)):Array.isArray(n)&&(n=n.join(",")),a+=i.toUpperCase()+"="+n+";";return a.slice(0,Math.max(0,a.length-1))},decorate:function(e){return He.fromData(e)},undecorate:function(e){return e.toJSON()}},time:{fromICAL:function(e){if(e.length<6)return e;let a=e.slice(0,2)+":"+e.slice(2,4)+":"+e.slice(4,6);return e[6]==="Z"&&(a+="Z"),a},toICAL:function(e){if(e.length<8)return e;let a=e.slice(0,2)+e.slice(3,5)+e.slice(6,8);return e[8]==="Z"&&(a+="Z"),a}}});let W_=ut(Qn,{action:de,attach:{defaultType:"uri"},attendee:{defaultType:"cal-address"},calscale:de,class:de,comment:de,completed:ci,contact:de,created:ci,description:de,dtend:ui,dtstamp:ci,dtstart:ui,due:ui,duration:{defaultType:"duration"},exdate:{defaultType:"date-time",allowedTypes:["date-time","date"],multiValue:","},exrule:xo,freebusy:{defaultType:"period",multiValue:","},geo:{defaultType:"float",structuredValue:";"},"last-modified":ci,location:de,method:de,organizer:{defaultType:"cal-address"},"percent-complete":Fi,priority:Fi,prodid:de,"related-to":de,repeat:Fi,rdate:{defaultType:"date-time",allowedTypes:["date-time","date","period"],multiValue:",",detectType:function(e){return e.indexOf("/")!==-1?"period":e.indexOf("T")===-1?"date":"date-time"}},"recurrence-id":ui,resources:ti,"request-status":Pi,rrule:xo,sequence:Fi,status:de,summary:de,transp:de,trigger:{defaultType:"duration",allowedTypes:["duration","date-time"]},tzoffsetfrom:No,tzoffsetto:No,tzurl:We,tzid:de,tzname:de});const na=ut(Kn,{text:mn(Oo,Bo),uri:mn(Oo,Bo),date:{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date")},undecorate:function(e){return e.toString()},fromICAL:function(e){return e.length==8?qe.date.fromICAL(e):e[0]=="-"&&e.length==6?e.slice(0,4)+"-"+e.slice(4):e},toICAL:function(e){return e.length==10?qe.date.toICAL(e):e[0]=="-"&&e.length==7?e.slice(0,4)+e.slice(5):e}},time:{decorate:function(e){return Za.fromDateAndOrTimeString("T"+e,"time")},undecorate:function(e){return e.toString()},fromICAL:function(e){let a=na.time._splitZone(e,!0),i=a[0],n=a[1];return n.length==6?n=n.slice(0,2)+":"+n.slice(2,4)+":"+n.slice(4,6):n.length==4&&n[0]!="-"?n=n.slice(0,2)+":"+n.slice(2,4):n.length==5&&(n=n.slice(0,3)+":"+n.slice(3,5)),i.length==5&&(i[0]=="-"||i[0]=="+")&&(i=i.slice(0,3)+":"+i.slice(3)),n+i},toICAL:function(e){let a=na.time._splitZone(e),i=a[0],n=a[1];return n.length==8?n=n.slice(0,2)+n.slice(3,5)+n.slice(6,8):n.length==5&&n[0]!="-"?n=n.slice(0,2)+n.slice(3,5):n.length==6&&(n=n.slice(0,3)+n.slice(4,6)),i.length==6&&(i[0]=="-"||i[0]=="+")&&(i=i.slice(0,3)+i.slice(4)),n+i},_splitZone:function(e,a){let i=e.length-1,n=e.length-(a?5:6),o=e[n],s,l;return e[i]=="Z"?(s=e[i],l=e.slice(0,Math.max(0,i))):e.length>6&&(o=="-"||o=="+")?(s=e.slice(n),l=e.slice(0,Math.max(0,n))):(s="",l=e),[s,l]}},"date-time":{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date-time")},undecorate:function(e){return e.toString()},fromICAL:function(e){return na["date-and-or-time"].fromICAL(e)},toICAL:function(e){return na["date-and-or-time"].toICAL(e)}},"date-and-or-time":{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date-and-or-time")},undecorate:function(e){return e.toString()},fromICAL:function(e){let a=e.split("T");return(a[0]?na.date.fromICAL(a[0]):"")+(a[1]?"T"+na.time.fromICAL(a[1]):"")},toICAL:function(e){let a=e.split("T");return na.date.toICAL(a[0])+(a[1]?"T"+na.time.toICAL(a[1]):"")}},timestamp:qe["date-time"],"language-tag":{matches:/^[a-zA-Z0-9-]+$/},"phone-number":{fromICAL:function(e){return Array.from(e).filter(function(a){return a==="\\"?void 0:a}).join("")},toICAL:function(e){return Array.from(e).map(function(a){return a===","||a===";"?"\\"+a:a}).join("")}}});let Q_={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","time","date-time","date-and-or-time","timestamp","boolean","integer","float","utc-offset","language-tag"],allowXName:!0,allowIanaToken:!0}},K_=ut(Qn,{adr:{defaultType:"text",structuredValue:";",multiValue:","},anniversary:Mo,bday:Mo,caladruri:We,caluri:We,clientpidmap:Pi,email:de,fburl:We,fn:de,gender:Pi,geo:We,impp:We,key:We,kind:de,lang:{defaultType:"language-tag"},logo:We,member:We,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ti,note:de,org:{defaultType:"text",structuredValue:";"},photo:We,related:We,rev:{defaultType:"timestamp"},role:de,sound:We,source:We,tel:{defaultType:"uri",allowedTypes:["uri","text"]},title:de,tz:{defaultType:"text",allowedTypes:["text","utc-offset","uri"]},xml:de}),J_=ut(Kn,{binary:qe.binary,date:na.date,"date-time":na["date-time"],"phone-number":na["phone-number"],uri:qe.uri,text:qe.text,time:qe.time,vcard:qe.text,"utc-offset":{toICAL:function(e){return e.slice(0,7)},fromICAL:function(e){return e.slice(0,7)},decorate:function(e){return la.fromString(e)},undecorate:function(e){return e.toString()}}}),X_={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","date-time","phone-number","time","boolean","integer","float","utc-offset","vcard","binary"],allowXName:!0,allowIanaToken:!0}},ed=ut(Qn,{fn:de,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ti,photo:{defaultType:"binary",allowedTypes:["binary","uri"]},bday:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(e){return e.indexOf("T")===-1?"date":"date-time"}},adr:{defaultType:"text",structuredValue:";",multiValue:","},label:de,tel:{defaultType:"phone-number"},email:de,mailer:de,tz:{defaultType:"utc-offset",allowedTypes:["utc-offset","text"]},geo:{defaultType:"float",structuredValue:";"},title:de,role:de,logo:{defaultType:"binary",allowedTypes:["binary","uri"]},agent:{defaultType:"vcard",allowedTypes:["vcard","text","uri"]},org:Pi,note:ti,prodid:de,rev:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(e){return e.indexOf("T")===-1?"date":"date-time"}},"sort-string":de,sound:{defaultType:"binary",allowedTypes:["binary","uri"]},class:de,key:{defaultType:"binary",allowedTypes:["binary","text"]}}),Da={value:qe,param:$_,property:W_,propertyGroups:!1},jo={value:na,param:Q_,property:K_,propertyGroups:!0},Yo={value:J_,param:X_,property:ed,propertyGroups:!0};const wt={strict:!0,defaultSet:Da,defaultType:"unknown",components:{vcard:jo,vcard3:Yo,vevent:Da,vtodo:Da,vjournal:Da,valarm:Da,vtimezone:Da,daylight:Da,standard:Da},icalendar:Da,vcard:jo,vcard3:Yo,getDesignSet:function(e){return e&&e in wt.components?wt.components[e]:wt.defaultSet}};var Me=wt;const Oi=`\r
-`,qo="unknown",ad={'"':"^'","\n":"^n","^":"^^"};function Ae(e){typeof e[0]=="string"&&(e=[e]);let a=0,i=e.length,n="";for(;a0&&!(e[1][0][0]==="version"&&e[1][0][3]==="4.0")&&(_="vcard3"),a=a||Me.getDesignSet(_);s0&&typeof a[0]=="object"&&"icaltype"in a[0]&&this.resetType(a[0].icaltype),this.isDecorated)for(;n=0;l--)(!n||s[l][Oa]===n)&&this._removeObjectByIndex(a,o,l)}addSubcomponent(a){this._components||(this._components=[],this._hydratedComponentCount=0),a.parent&&a.parent.removeSubcomponent(a);let i=this.jCal[Ba].push(a.jCal);return this._components[i-1]=a,this._hydratedComponentCount++,a.parent=this,a}removeSubcomponent(a){let i=this._removeObject(Ba,"_components",a);return i&&this._hydratedComponentCount--,i}removeAllSubcomponents(a){let i=this._removeAllObjects(Ba,"_components",a);return this._hydratedComponentCount=0,i}addProperty(a){if(!(a instanceof lt))throw new TypeError("must be instance of ICAL.Property");this._properties||(this._properties=[],this._hydratedPropertyCount=0),a.parent&&a.parent.removeProperty(a);let i=this.jCal[Ta].push(a.jCal);return this._properties[i-1]=a,this._hydratedPropertyCount++,a.parent=this,a}addPropertyWithValue(a,i){let n=new lt(a);return n.setValue(i),this.addProperty(n),n}updatePropertyWithValue(a,i){let n=this.getFirstProperty(a);return n?n.setValue(i):n=this.addPropertyWithValue(a,i),n}removeProperty(a){let i=this._removeObject(Ta,"_properties",a);return i&&this._hydratedPropertyCount--,i}removeAllProperties(a){let i=this._removeAllObjects(Ta,"_properties",a);return this._hydratedPropertyCount=0,i}toJSON(){return this.jCal}toString(){return Ae.component(this.jCal,this._designSet)}getTimeZoneByID(a){if(this.parent)return this.parent.getTimeZoneByID(a);if(!this._timezoneCache)return null;if(this._timezoneCache.has(a))return this._timezoneCache.get(a);const i=this.getAllSubcomponents("vtimezone");for(const n of i)if(n.getFirstProperty("tzid").getFirstValue()===a){const o=new ce({component:n,tzid:a});return this._timezoneCache.set(a,o),o}return null}}class pr{constructor(a){this.ruleDates=[],this.exDates=[],this.fromData(a)}complete=!1;ruleIterators=null;ruleDates=null;exDates=null;ruleDateInc=0;exDateInc=0;exDate=null;ruleDate=null;dtstart=null;last=null;fromData(a){let i=ka(a.dtstart,K);if(i)this.dtstart=i;else throw new Error(".dtstart (ICAL.Time) must be given");if(a.component)this._init(a.component);else{if(this.last=ka(a.last,K)||i.clone(),!a.ruleIterators)throw new Error(".ruleIterators or .component must be given");this.ruleIterators=a.ruleIterators.map(function(n){return ka(n,ua)}),this.ruleDateInc=a.ruleDateInc,this.exDateInc=a.exDateInc,a.ruleDates&&(this.ruleDates=a.ruleDates.map(n=>ka(n,K)),this.ruleDate=this.ruleDates[this.ruleDateInc]),a.exDates&&(this.exDates=a.exDates.map(n=>ka(n,K)),this.exDate=this.exDates[this.exDateInc]),typeof a.complete<"u"&&(this.complete=a.complete)}}next(){let a,i,n,o=500,s=0;for(;;){if(s++>o)throw new Error("max tries have occurred, rule may be impossible to fulfill.");if(i=this.ruleDate,a=this._nextRecurrenceIter(this.last),!i&&!a){this.complete=!0;break}if((!i||a&&i.compare(a.last)>0)&&(i=a.last.clone(),a.next()),this.ruleDate===i&&this._nextRuleDay(),this.last=i,this.exDate&&(n=this.exDate.compare(this.last),n<0&&this._nextExDay(),n===0)){this._nextExDay();continue}return this.last}}toJSON(){function a(n){return n.toJSON()}let i=Object.create(null);return i.ruleIterators=this.ruleIterators.map(a),this.ruleDates&&(i.ruleDates=this.ruleDates.map(a)),this.exDates&&(i.exDates=this.exDates.map(a)),i.ruleDateInc=this.ruleDateInc,i.exDateInc=this.exDateInc,i.last=this.last.toJSON(),i.dtstart=this.dtstart.toJSON(),i.complete=this.complete,i}_extractDates(a,i){let n=[],o=a.getAllProperties(i);for(let s=0,l=o.length;sf.compare(d));n.splice(r,0,_)}return n}_init(a){if(this.ruleIterators=[],this.last=this.dtstart.clone(),!a.hasProperty("rdate")&&!a.hasProperty("rrule")&&!a.hasProperty("recurrence-id")){this.ruleDate=this.last.clone(),this.complete=!0;return}if(a.hasProperty("rdate")&&(this.ruleDates=this._extractDates(a,"rdate"),this.ruleDates[0]&&this.ruleDates[0].compare(this.dtstart)<0?(this.ruleDateInc=0,this.last=this.ruleDates[0].clone()):this.ruleDateInc=rt(this.ruleDates,this.last,(i,n)=>i.compare(n)),this.ruleDate=this.ruleDates[this.ruleDateInc]),a.hasProperty("rrule")){let i=a.getAllProperties("rrule"),n=0,o=i.length,s,l;for(;ni.compare(n)),this.exDate=this.exDates[this.exDateInc])}_nextExDay(){this.exDate=this.exDates[++this.exDateInc]}_nextRuleDay(){this.ruleDate=this.ruleDates[++this.ruleDateInc]}_nextRecurrenceIter(){let a=this.ruleIterators;if(a.length===0)return null;let i=a.length,n,o,s=0,l;for(;s0)&&(l=n)}return l}}class ii{constructor(a,i){a instanceof ea||(i=a,a=null),a?this.component=a:this.component=new ea("vevent"),this._rangeExceptionCache=Object.create(null),this.exceptions=Object.create(null),this.rangeExceptions=[],i&&i.strictExceptions&&(this.strictExceptions=i.strictExceptions),i&&i.exceptions?i.exceptions.forEach(this.relateException,this):this.component.parent&&!this.isRecurrenceException()&&this.component.parent.getAllSubcomponents("vevent").forEach(function(n){n.hasProperty("recurrence-id")&&this.relateException(n)},this)}static THISANDFUTURE="THISANDFUTURE";exceptions=null;strictExceptions=!1;relateException(a){if(this.isRecurrenceException())throw new Error("cannot relate exception to exceptions");if(a instanceof ea&&(a=new ii(a)),this.strictExceptions&&a.uid!==this.uid)throw new Error("attempted to relate unrelated exception");let i=a.recurrenceId.toString();if(this.exceptions[i]=a,a.modifiesFuture()){let n=[a.recurrenceId.toUnixTime(),i],o=rt(this.rangeExceptions,n,Zo);this.rangeExceptions.splice(o,0,n)}}modifiesFuture(){return this.component.hasProperty("recurrence-id")?this.component.getFirstProperty("recurrence-id").getParameter("range")===ii.THISANDFUTURE:!1}findRangeException(a){if(!this.rangeExceptions.length)return null;let i=a.toUnixTime(),n=rt(this.rangeExceptions,[i],Zo);if(n-=1,n<0)return null;let o=this.rangeExceptions[n];return ia[0]?1:a[0]>e[0]?-1:0}class td{constructor(a){typeof a>"u"&&(a={});for(let[i,n]of Object.entries(a))this[i]=n}parseEvent=!0;parseTimezone=!0;oncomplete=function(){};onerror=function(a){};ontimezone=function(a){};onevent=function(a){};process(a){typeof a=="string"&&(a=he(a)),a instanceof ea||(a=new ea(a));let i=a.getAllSubcomponents(),n=0,o=i.length,s;for(;nArray.isArray(e)&&e.every(a=>typeof a=="string"||a instanceof HTMLElement),default:()=>[]},container:{type:String,required:!1,default:"body"},open:{type:Boolean,default:!0},size:{type:String,required:!1,default:"small",validator:e=>typeof e=="string"&&["small","normal","large","full"].includes(e)},buttons:{type:Array,required:!1,default:()=>[],validator:e=>Array.isArray(e)&&e.every(a=>typeof a=="object")},canClose:{type:Boolean,default:!0},closeOnClickOutside:{type:Boolean,default:!1},isForm:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},navigationClasses:{type:[String,Array,Object],required:!1,default:""},navigationAriaLabel:{type:String,required:!1,default:""},navigationAriaLabelledby:{type:String,required:!1,default:""},contentClasses:{type:[String,Array,Object],required:!1,default:""},dialogClasses:{type:[String,Array,Object],required:!1,default:""}},emits:["closing","update:open","submit"],setup(e,{emit:a,slots:i}){const n=Ia(),{width:o}=Qs(n,{width:900}),s=Ea(()=>o.value<876),l=Ea(()=>i?.navigation!==void 0),_=ft(),r=Ea(()=>e.navigationAriaLabel||void 0),f=Ea(()=>{if(!e.navigationAriaLabel)return e.navigationAriaLabelledby||_}),d=Ia(),g=Ea(()=>e.isForm&&!l.value?"form":"div"),h=Ea(()=>g.value==="form"?{submit(w){w.preventDefault(),a("submit",w)}}:{}),F=Ia(!0),m=(w,v)=>{g.value==="form"&&!d.value.reportValidity()||(p(v),window.setTimeout(()=>T(),300))},p=w=>{F.value=!1,a("closing",w)},T=()=>{F.value=!0,a("update:open",!1)},k=Ea(()=>({canClose:e.canClose,container:e.container===void 0?"body":e.container,labelId:_,size:e.size,show:e.open&&F.value,outTransition:e.outTransition,closeOnClickOutside:e.closeOnClickOutside,additionalTrapElements:e.additionalTrapElements}));return{dialogElement:d,dialogListeners:h,dialogTagName:g,handleButtonClose:m,handleClosing:p,handleClosed:T,hasNavigation:l,navigationId:_,navigationAriaLabelAttr:r,navigationAriaLabelledbyAttr:f,isNavigationCollapsed:s,modalProps:k,wrapper:n}}});var s_=function(){var e=this,a=e._self._c;return e._self._setupProxy,e.open?a("NcModal",e._b({staticClass:"dialog__modal",attrs:{"enable-slideshow":!1,"enable-swipe":!1},on:{close:e.handleClosed,"update:show":function(i){return e.handleClosing()}}},"NcModal",e.modalProps,!1),[a("h2",{staticClass:"dialog__name",attrs:{id:e.navigationId},domProps:{textContent:e._s(e.name)}}),a(e.dialogTagName,e._g({ref:"dialogElement",tag:"component",staticClass:"dialog",class:e.dialogClasses},e.dialogListeners),[a("div",{ref:"wrapper",class:["dialog__wrapper",{"dialog__wrapper--collapsed":e.isNavigationCollapsed}]},[e.hasNavigation?a("nav",{staticClass:"dialog__navigation",class:e.navigationClasses,attrs:{"aria-label":e.navigationAriaLabelAttr,"aria-labelledby":e.navigationAriaLabelledbyAttr}},[e._t("navigation",null,{isCollapsed:e.isNavigationCollapsed})],2):e._e(),a("div",{staticClass:"dialog__content",class:e.contentClasses},[e._t("default",function(){return[a("p",{staticClass:"dialog__text"},[e._v(" "+e._s(e.message)+" ")])]})],2)]),a("div",{staticClass:"dialog__actions"},[e._t("actions",function(){return e._l(e.buttons,function(i,n){return a("NcDialogButton",e._b({key:n,on:{click:e.handleButtonClose}},"NcDialogButton",i,!1))})})],2)])],1):e._e()},r_=[],l_=ie(o_,s_,r_,!1,null,"e79a4708");const X2=l_.exports,__='';function $0(e,a,i){window.OCP.Files.Router.goToRoute(null,{view:a.id,fileid:String(e.fileid)},{dir:i,openfile:"true"},!0)}const fr=()=>{window.OCP.Files.Router.query.openfile!=="true"&&(window.OCA.Viewer.close(),window.removeEventListener("popstate",fr))};async function d_(e,a,i){const n=()=>{const o={...window.OCP.Files.Router.query};delete o.openfile,window.OCP.Files.Router.goToRoute(null,window.OCP.Files.Router.params,o)};return window.addEventListener("popstate",fr),$0(e,a,i),window.OCA.Viewer.open({path:e.path,onPrev(o){$0(o,a,i)},onNext(o){$0(o,a,i)},onClose:n}),null}function f_(){Hl(new Pl({id:"view",displayName:()=>N("viewer","View"),iconSvgInline:()=>__,default:Gl.DEFAULT,enabled:e=>e.some(a=>!(a.isDavRessource&&a.root?.startsWith("/files")))?!1:e.every(a=>!!(a.permissions&Ul.READ)&&window.OCA.Viewer.mimetypes.includes(a.mime)),exec:d_}))}function gi(e,a,i){e.$set(e.$data._asyncComputed[a],"state",i),e.$set(e.$data._asyncComputed[a],"updating",i==="updating"),e.$set(e.$data._asyncComputed[a],"error",i==="error"),e.$set(e.$data._asyncComputed[a],"success",i==="success")}function g_(e){return typeof e=="function"?e:e.get}function cn(e,a){return Object.prototype.hasOwnProperty.call(e,a)}function $n(e){return cn(e,"lazy")&&e.lazy}function h_(e,a){return e[Wn+a]}var Wn="async_computed$lazy_active$",ei="async_computed$lazy_data$";function F_(e,a,i){e[Wn+a]=!1,e[ei+a]=i}function u_(e){return{get:function(){return this[Wn+e]=!0,this[ei+e]},set:function(a){this[ei+e]=a}}}function c_(e,a,i){e[ei+a]=i}function m_(e,a){return e[ei+a]}var p_=function(e){return function(){var a=this;return e.watch.forEach(function(i){var n=i.split(".");if(n.length===1)a[i];else try{var o=a;n.forEach(function(s){o=o[s]})}catch(s){throw console.error("AsyncComputed: bad path: ",i),s}}),e.get.call(this)}},b_=function(e){return function(){return e.watch.call(this),e.get.call(this)}};function D_(e){if(typeof e.watch=="function")return b_(e);if(Array.isArray(e.watch))return e.watch.forEach(function(a){if(typeof a!="string")throw new Error("AsyncComputed: watch elemnts must be strings")}),p_(e);throw Error("AsyncComputed: watch should be function or an array")}var gr=typeof Symbol=="function"?Symbol("did-not-update"):{},T_=function(e,a){return function(){return e.shouldUpdate.call(this)?a.call(this):gr}},y_=function(e){return gr===e},hr="_async_computed$",Fr={install:function(e,a){a=a||{},e.config.optionMergeStrategies.asyncComputed=e.config.optionMergeStrategies.computed,e.mixin({data:function(){return{_asyncComputed:{}}},computed:{$asyncComputed:function(){return this.$data._asyncComputed}},beforeCreate:function(){var i=this.$options.asyncComputed||{};if(Object.keys(i).length){for(var n in i){var o=A_(n,i[n]);this.$options.computed[hr+n]=o}this.$options.data=k_(this.$options,a)}},created:function(){for(var i in this.$options.asyncComputed||{}){var n=this.$options.asyncComputed[i],o=ur.call(this,n,a);$n(n)?c_(this,i,o):this[i]=o}for(var s in this.$options.asyncComputed||{})E_(this,s,a,e)}})}};function E_(e,a,i,n){var o=0,s=function(l){var _=++o;y_(l)||((!l||!l.then)&&(l=Promise.resolve(l)),gi(e,a,"updating"),l.then(function(r){_===o&&(gi(e,a,"success"),e[a]=r)}).catch(function(r){if(_===o&&(gi(e,a,"error"),n.set(e.$data._asyncComputed[a],"exception",r),i.errorHandler!==!1)){var f=i.errorHandler===void 0?console.error.bind(console,"Error evaluating async computed property:"):i.errorHandler;i.useRawError?f(r,e,r.stack):f(r.stack)}}))};n.set(e.$data._asyncComputed,a,{exception:null,update:function(){e._isDestroyed||s(g_(e.$options.asyncComputed[a]).apply(e))}}),gi(e,a,"updating"),e.$watch(hr+a,s,{immediate:!0})}function k_(e,a){var i=e.data,n=e.asyncComputed||{};return function(o){var s=(typeof i=="function"?i.call(this,o):i)||{};for(var l in n){var _=this.$options.asyncComputed[l],r=ur.call(this,_,a);$n(_)?(F_(s,l,r),this.$options.computed[l]=u_(l)):s[l]=r}return s}}function A_(e,a){if(typeof a=="function")return a;var i=a.get;if(cn(a,"watch")&&(i=D_(a)),cn(a,"shouldUpdate")&&(i=T_(a,i)),$n(a)){var n=i;i=function(){return h_(this,e)?n.call(this):m_(this,e)}}return i}function ur(e,a){var i=null;return"default"in e?i=e.default:"default"in a&&(i=a.default),typeof i=="function"?i.call(this):i}typeof window<"u"&&window.Vue&&window.Vue.use(Fr);const w_={name:"PlayCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var S_=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon play-circle-outline-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M10,16.5L16,12L10,7.5V16.5Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},v_=[],R_=_i(w_,S_,v_,!1,null,null);const C_=R_.exports;oe();function Xa(e,a,i=!1){const n=zl().proxy;return i&&n.$props[e]===void 0&&n.$props.modelValue===void 0&&Sa.util.warn(`Missing required prop: "modelValue" or old "${e}"`),Ea({get(){return n.$props[e]!==void 0?n.$props[e]:n.$props.modelValue},set(o){n.$emit("update:modelValue",o),n.$emit("update:model-value",o),n.$emit(a,o)}})}class B0{static fromString(a){return new B0(a)}constructor(a){this.value=a}icaltype="binary";decodeValue(){return this._b64_decode(this.value)}setEncodedValue(a){this.value=this._b64_encode(a)}_b64_encode(a){let i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n,o,s,l,_,r,f,d,g=0,h=0,F="",m=[];if(!a)return a;do n=a.charCodeAt(g++),o=a.charCodeAt(g++),s=a.charCodeAt(g++),d=n<<16|o<<8|s,l=d>>18&63,_=d>>12&63,r=d>>6&63,f=d&63,m[h++]=i.charAt(l)+i.charAt(_)+i.charAt(r)+i.charAt(f);while(g>16&255,o=d>>8&255,s=d&255,r==64?m[h++]=String.fromCharCode(n):f==64?m[h++]=String.fromCharCode(n,o):m[h++]=String.fromCharCode(n,o,s);while(gn)-(i12||(o=n[a],a==2&&(o+=X.isLeapYear(i))),o}static isLeapYear(a){return a<=1752?a%4==0:a%4==0&&a%100!=0||a%400==0}static fromDayOfYear(a,i){let n=i,o=a,s=new X;s.auto_normalize=!1;let l=X.isLeapYear(n)?1:0;if(o<1)return n--,l=X.isLeapYear(n)?1:0,o+=X.daysInYearPassedMonth[l][12],X.fromDayOfYear(o,n);if(o>X.daysInYearPassedMonth[l][12])return l=X.isLeapYear(n)?1:0,o-=X.daysInYearPassedMonth[l][12],n++,X.fromDayOfYear(o,n);s.year=n,s.isDate=!0;for(let _=11;_>=0;_--)if(o>X.daysInYearPassedMonth[l][_]){s.month=_+1,s.day=o-X.daysInYearPassedMonth[l][_];break}return s.auto_normalize=!0,s}static fromStringv2(a){return new X({year:parseInt(a.slice(0,4),10),month:parseInt(a.slice(5,7),10),day:parseInt(a.slice(8,10),10),isDate:!0})}static fromDateString(a){return new X({year:Ie(a.slice(0,4)),month:Ie(a.slice(5,7)),day:Ie(a.slice(8,10)),isDate:!0})}static fromDateTimeString(a,i){if(a.length<19)throw new Error('invalid date-time value: "'+a+'"');let n,o;a[19]&&a[19]==="Z"?n=ce.utcTimezone:i&&(o=i.getParameter("tzid"),i.parent&&(i.parent.name==="standard"||i.parent.name==="daylight"?n=ce.localTimezone:o&&(n=i.parent.getTimeZoneByID(o))));const s={year:Ie(a.slice(0,4)),month:Ie(a.slice(5,7)),day:Ie(a.slice(8,10)),hour:Ie(a.slice(11,13)),minute:Ie(a.slice(14,16)),second:Ie(a.slice(17,19))};return o&&!n&&(s.timezone=o),new X(s,n)}static fromString(a,i){return a.length>10?X.fromDateTimeString(a,i):X.fromDateString(a)}static fromJSDate(a,i){return new X().fromJSDate(a,i)}static fromData=function(a,i){return new X().fromData(a,i)};static now(){return X.fromJSDate(new Date,!1)}static weekOneStarts(a,i){let n=X.fromData({year:a,month:1,day:1,isDate:!0}),o=n.dayOfWeek(),s=i||X.DEFAULT_WEEK_START;return o>X.THURSDAY&&(n.day+=7),s>X.THURSDAY&&(n.day-=7),n.day-=o-s,n}static getDominicalLetter(a){let i="GFEDCBA",n=(a+(a/4|0)+(a/400|0)-(a/100|0)-1)%7;return X.isLeapYear(a)?i[(n+6)%7]+i[n]:i[n]}static#e=null;static get epochTime(){return this.#e||(this.#e=X.fromData({year:1970,month:1,day:1,hour:0,minute:0,second:0,isDate:!1,timezone:"Z"})),this.#e}static _cmp_attr(a,i,n){return a[n]>i[n]?1:a[n]=0){_.day=1,s!=0&&s--,l=_.day;let r=_.dayOfWeek(),f=a-r;f<0&&(f+=7),l+=f,l-=a,o=a}else{_.day=n;let r=_.dayOfWeek();s++,o=r-a,o<0&&(o+=7),o=n-o}return o+=s*7,l+o}isNthWeekDay(a,i){let n=this.dayOfWeek();return i===0&&n===a||this.nthWeekDay(a,i)===this.day}weekNumber(a){let i=(this.year<<12)+(this.month<<8)+(this.day<<3)+a;if(i in X._wnCache)return X._wnCache[i];let n,o=this.clone();o.isDate=!0;let s=this.year;o.month==12&&o.day>25?(n=X.weekOneStarts(s+1,a),o.compare(n)<0?n=X.weekOneStarts(s,a):s++):(n=X.weekOneStarts(s,a),o.compare(n)<0&&(n=X.weekOneStarts(--s,a)));let l=o.subtractDate(n).toSeconds()/86400,_=xe(l/7)+1;return X._wnCache[i]=_,_}addDuration(a){let i=a.isNegative?-1:1,n=this.second,o=this.minute,s=this.hour,l=this.day;n+=i*a.seconds,o+=i*a.minutes,s+=i*a.hours,l+=i*a.days,l+=i*7*a.weeks,this.second=n,this.minute=o,this.hour=s,this.day=l,this._cachedUnixTime=null}subtractDate(a){let i=this.toUnixTime()+this.utcOffset(),n=a.toUnixTime()+a.utcOffset();return Pe.fromSeconds(i-n)}subtractDateTz(a){let i=this.toUnixTime(),n=a.toUnixTime();return Pe.fromSeconds(i-n)}compare(a){let i=this.toUnixTime(),n=a.toUnixTime();return i>n?1:n>i?-1:0}compareDateOnlyTz(a,i){let n=this.convertToZone(i),o=a.convertToZone(i),s=0;return(s=X._cmp_attr(n,o,"year"))!=0||(s=X._cmp_attr(n,o,"month"))!=0||(s=X._cmp_attr(n,o,"day"))!=0,s}convertToZone(a){let i=this.clone(),n=this.zone.tzid==a.tzid;return!this.isDate&&!n&&ce.convert_time(i,this.zone,a),i.zone=a,i}utcOffset(){return this.zone==ce.localTimezone||this.zone==ce.utcTimezone?0:this.zone.utcOffset(this)}toICALString(){let a=this.toString();return a.length>10?Me.icalendar.value["date-time"].toICAL(a):Me.icalendar.value.date.toICAL(a)}toString(){let a=this.year+"-"+Qe(this.month)+"-"+Qe(this.day);return this.isDate||(a+="T"+Qe(this.hour)+":"+Qe(this.minute)+":"+Qe(this.second),this.zone===ce.utcTimezone&&(a+="Z")),a}toJSDate(){return this.zone==ce.localTimezone?this.isDate?new Date(this.year,this.month-1,this.day):new Date(this.year,this.month-1,this.day,this.hour,this.minute,this.second,0):new Date(this.toUnixTime()*1e3)}_normalize(){return this._time.isDate&&(this._time.hour=0,this._time.minute=0,this._time.second=0),this.adjust(0,0,0,0),this}adjust(a,i,n,o,s){let l,_,r=0,f=0,d,g,h,F,m,p=s||this._time;if(p.isDate||(d=p.second+o,p.second=d%60,l=xe(d/60),p.second<0&&(p.second+=60,l--),g=p.minute+n+l,p.minute=g%60,_=xe(g/60),p.minute<0&&(p.minute+=60,_--),h=p.hour+i+_,p.hour=h%24,r=xe(h/24),p.hour<0&&(p.hour+=24,r--)),p.month>12?f=xe((p.month-1)/12):p.month<1&&(f=xe(p.month/12)-1),p.year+=f,p.month-=12*f,F=p.day+a+r,F>0)for(;m=X.daysInMonth(p.month,p.year),!(F<=m);)p.month++,p.month>12&&(p.year++,p.month=1),F-=m;else for(;F<=0;)p.month==1?(p.year--,p.month=12):p.month--,F+=X.daysInMonth(p.month,p.year);return p.day=F,this._cachedUnixTime=null,this}fromUnixTime(a){this.zone=ce.utcTimezone;let i=new Date(a*1e3);this.year=i.getUTCFullYear(),this.month=i.getUTCMonth()+1,this.day=i.getUTCDate(),this._time.isDate?(this.hour=0,this.minute=0,this.second=0):(this.hour=i.getUTCHours(),this.minute=i.getUTCMinutes(),this.second=i.getUTCSeconds()),this._cachedUnixTime=null}toUnixTime(){if(this._cachedUnixTime!==null)return this._cachedUnixTime;let a=this.utcOffset(),i=Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second-a);return this._cachedUnixTime=i/1e3,this._cachedUnixTime}toJSON(){let a=["year","month","day","hour","minute","second","isDate"],i=Object.create(null),n=0,o=a.length,s;for(;n1)throw new it("invalid ical body. component began but did not end");return a=null,i.length==1?i[0]:i}he.property=function(e,a){let i={component:[[],[]],designSet:a||Me.defaultSet};return he._handleContentLine(e,i),i.component[1][0]},he.component=function(e){return he(e)};class it extends Error{name=this.constructor.name}he.ParserError=it,he._handleContentLine=function(e,a){let i=e.indexOf(hi),n=e.indexOf(W0),o,s,l,_,r={};n!==-1&&i!==-1&&n>i&&(n=-1);let f;if(n!==-1){if(l=e.slice(0,Math.max(0,n)).toLowerCase(),f=he._parseParameters(e.slice(Math.max(0,n)),0,a.designSet),f[2]==-1)throw new it("Invalid parameters in '"+e+"'");if(r=f[0],o=f[1].length+f[2]+n,(s=e.slice(Math.max(0,o)).indexOf(hi))!==-1)_=e.slice(Math.max(0,o+s+1));else throw new it("Missing parameter value in '"+e+"'")}else if(i!==-1){if(l=e.slice(0,Math.max(0,i)).toLowerCase(),_=e.slice(Math.max(0,i+1)),l==="begin"){let k=[_.toLowerCase(),[],[]];a.stack.length===1?a.component.push(k):a.component[2].push(k),a.stack.push(a.component),a.component=k,a.designSet||(a.designSet=Me.getDesignSet(a.component[0]));return}else if(l==="end"){a.component=a.stack.pop();return}}else throw new it('invalid line (no token ";" or ":") "'+e+'"');let d,g=!1,h=!1,F,m,p;a.designSet.propertyGroups&&l.indexOf(".")!==-1?(m=l.split("."),r.group=m[0],p=m[1]):p=l,p in a.designSet.property&&(F=a.designSet.property[p],"multiValue"in F&&(g=F.multiValue),"structuredValue"in F&&(h=F.structuredValue),_&&"detectType"in F&&(d=F.detectType(_))),d||("value"in r?d=r.value.toLowerCase():F?d=F.defaultType:d=j_),delete r.value;let T;g&&h?(_=he._parseMultiValue(_,h,d,[],g,a.designSet,h),T=[p,r,d,_]):g?(T=[p,r,d],he._parseMultiValue(_,g,d,T,null,a.designSet,!1)):h?(_=he._parseMultiValue(_,h,d,[],null,a.designSet,h),T=[p,r,d,_]):(_=he._parseValue(_,d,a.designSet,!1),T=[p,r,d,_]),a.component[0]==="vcard"&&a.component[1].length===0&&!(l==="version"&&_==="4.0")&&(a.designSet=Me.getDesignSet("vcard3")),a.component[1].push(T)},he._parseValue=function(e,a,i,n){return a in i.value&&"fromICAL"in i.value[a]?i.value[a].fromICAL(e,n):e},he._parseParameters=function(e,a,i){let n=a,o=0,s=M_,l={},_,r,f,d=-1,g,h,F;for(;o!==!1&&(o=e.indexOf(s,o+1))!==-1;){if(_=e.slice(n+1,o),_.length==0)throw new it("Empty parameter name in '"+e+"'");if(r=_.toLowerCase(),F=!1,h=!1,r in i.param&&i.param[r].valueType?g=i.param[r].valueType:g=Y_,r in i.param&&(h=i.param[r].multiValue,i.param[r].multiValueSeparateDQuote&&(F=he._rfc6868Escape('"'+h+'"'))),e[o+1]==='"'){if(d=o+2,o=e.indexOf('"',d),h&&o!=-1){let T=!0;for(;T;)e[o+1]==h&&e[o+2]=='"'?o=e.indexOf('"',o+3):T=!1}if(o===-1)throw new it('invalid line (no matching double quote) "'+e+'"');f=e.slice(d,o),n=e.indexOf(W0,o);let p=e.indexOf(hi,o);(n===-1||p!==-1&&n>p)&&(o=!1)}else{d=o+1;let p=e.indexOf(W0,d),T=e.indexOf(hi,d);T!==-1&&p>T?(p=T,o=!1):p===-1?(T===-1?p=e.length:p=T,o=!1):(n=p,o=p),f=e.slice(d,p)}const m=f.length;if(f=he._rfc6868Escape(f),d+=m-f.length,h){let p=F||h;f=he._parseMultiValue(f,p,g,[],null,i)}else f=he._parseValue(f,g,i);h&&r in l?Array.isArray(l[r])?l[r].push(f):l[r]=[l[r],f]:l[r]=f}return[l,f,d]},he._rfc6868Escape=function(e){return e.replace(/\^['n^]/g,function(a){return q_[a]})},he._parseMultiValue=function(e,a,i,n,o,s,l){let _=0,r=0,f;if(a.length===0)return e;for(;(_=cr(e,a,r))!==-1;)f=e.slice(r,_),o?f=he._parseMultiValue(f,o,i,[],null,s,l):f=he._parseValue(f,i,s,l),n.push(f),r=_+a.length;return f=e.slice(r),o?f=he._parseMultiValue(f,o,i,[],null,s,l):f=he._parseValue(f,i,s,l),n.push(f),n.length==1?n[0]:n},he._eachLine=function(e,a){let i=e.length,n=e.search(x_),o=n,s,l,_;do o=e.indexOf(`
+`,n)+1,o>1&&e[o-2]==="\r"?_=2:_=1,o===0&&(o=i,_=0),l=e[n],l===" "||l===" "?s+=e.slice(n+1,o-_):(s&&a(null,s),s=e.slice(n,o-_)),n=o;while(o!==i);s=s.trim(),s.length&&a(null,s)};const L_=["tzid","location","tznames","latitude","longitude"];let ce=class Fe{static _compare_change_fn(a,i){return a.yeari.year?1:a.monthi.month?1:a.dayi.day?1:a.houri.hour?1:a.minutei.minute?1:a.secondi.second?1:0}static convert_time(a,i,n){if(a.isDate||i.tzid==n.tzid||i==Fe.localTimezone||n==Fe.localTimezone)return a.zone=n,a;let o=i.utcOffset(a);return a.adjust(0,0,0,-o),o=n.utcOffset(a),a.adjust(0,0,0,o),null}static fromData(a){return new Fe().fromData(a)}static#e=null;static get utcTimezone(){return this.#e||(this.#e=Fe.fromData({tzid:"UTC"})),this.#e}static#a=null;static get localTimezone(){return this.#a||(this.#a=Fe.fromData({tzid:"floating"})),this.#a}static adjust_change(a,i,n,o,s){return K.prototype.adjust.call(a,i,n,o,s,a)}static _minimumExpansionYear=-1;static EXTRA_COVERAGE=5;constructor(a){this.wrappedJSObject=this,this.fromData(a)}tzid="";location="";tznames="";latitude=0;longitude=0;component=null;expandedUntilYear=0;icalclass="icaltimezone";fromData(a){if(this.expandedUntilYear=0,this.changes=[],a instanceof ea)this.component=a;else{if(a&&"component"in a)if(typeof a.component=="string"){let i=he(a.component);this.component=new ea(i)}else a.component instanceof ea?this.component=a.component:this.component=null;for(let i of L_)a&&i in a&&(this[i]=a[i])}return this.component instanceof ea&&!this.tzid&&(this.tzid=this.component.getFirstPropertyValue("tzid")),this}utcOffset(a){if(this==Fe.utcTimezone||this==Fe.localTimezone||(this._ensureCoverage(a.year),!this.changes.length))return 0;let i={year:a.year,month:a.month,day:a.day,hour:a.hour,minute:a.minute,second:a.second},n=this._findNearbyChange(i),o=-1,s=1;for(;;){let _=gt(this.changes[n],!0);if(_.utcOffset<_.prevUtcOffset?Fe.adjust_change(_,0,0,0,_.utcOffset):Fe.adjust_change(_,0,0,0,_.prevUtcOffset),Fe._compare_change_fn(i,_)>=0?o=n:s=-1,s==-1&&o!=-1)break;if(n+=s,n<0)return 0;if(n>=this.changes.length)break}let l=this.changes[o];if(l.utcOffset-l.prevUtcOffset<0&&o>0){let _=gt(l,!0);if(Fe.adjust_change(_,0,0,0,_.prevUtcOffset),Fe._compare_change_fn(i,_)<0){let r=this.changes[o-1],f=!1;l.is_daylight!=f&&r.is_daylight==f&&(l=r)}}return l.utcOffset}_findNearbyChange(a){let i=rt(this.changes,a,Fe._compare_change_fn);return i>=this.changes.length?this.changes.length-1:i}_ensureCoverage(a){if(Fe._minimumExpansionYear==-1){let n=K.now();Fe._minimumExpansionYear=n.year}let i=a;if(ii||!g));)s.year=g.year,s.month=g.month,s.day=g.day,s.hour=g.hour,s.minute=g.minute,s.second=g.second,s.isDate=g.isDate,Fe.adjust_change(s,0,0,0,-s.prevUtcOffset),n.push(s)}}return n}toString(){return this.tznames?this.tznames:this.tzid}},Ge=null;const Hi={get count(){return Ge===null?0:Object.keys(Ge).length},reset:function(){Ge=Object.create(null);let e=ce.utcTimezone;Ge.Z=e,Ge.UTC=e,Ge.GMT=e},_hard_reset:function(){Ge=null},has:function(e){return Ge===null?!1:!!Ge[e]},get:function(e){return Ge===null&&this.reset(),Ge[e]},register:function(e,a){if(Ge===null&&this.reset(),typeof e=="string"&&a instanceof ce&&([e,a]=[a,e]),a||(e instanceof ce?a=e.tzid:e.name==="vtimezone"&&(e=new ce(e),a=e.tzid)),!a)throw new TypeError("Neither a timezone nor a name was passed");if(e instanceof ce)Ge[a]=e;else throw new TypeError("timezone must be ICAL.Timezone or ICAL.Component")},remove:function(e){return Ge===null?null:delete Ge[e]}};function Z_(e){let a,i,n,o,s;if(!e||e.name!=="vcalendar")return e;for(a=e.getAllSubcomponents(),i=[],n={},s=0;s"u"))return e instanceof a?e:new a(e)}function cr(e,a,i){for(;(i=e.indexOf(a,i))!==-1;)if(i>0&&e[i-1]==="\\")i+=1;else return i;return-1}function rt(e,a,i){if(!e.length)return 0;let n=0,o=e.length-1,s,l;for(;n<=o;)if(s=n+Math.floor((o-n)/2),l=i(a,e[s]),l<0)o=s-1;else if(l>0)n=s+1;else break;return l<0?s:l>0?s+1:s}function gt(e,a){if(!e||typeof e!="object")return e;if(e instanceof Date)return new Date(e.getTime());if("clone"in e)return e.clone();if(Array.isArray(e)){let i=[];for(let n=0;n65535?2:1:(a+=Oe.newLineChar+" "+i.slice(0,Math.max(0,n)),i=i.slice(Math.max(0,n)),n=o=0)}return a.slice(Oe.newLineChar.length+1)}function Qe(e){switch(typeof e!="string"&&(typeof e=="number"&&(e=parseInt(e)),e=String(e)),e.length){case 0:return"00";case 1:return"0"+e;default:return e}}function xe(e){return e<0?Math.ceil(e):Math.floor(e)}function ut(e,a){for(let i in e){let n=Object.getOwnPropertyDescriptor(e,i);n&&!Object.getOwnPropertyDescriptor(a,i)&&Object.defineProperty(a,i,n)}return a}var I_=Object.freeze({__proto__:null,updateTimezones:Z_,isStrictlyNaN:ai,strictParseInt:Ie,formatClassType:ka,unescapedIndexOf:cr,binsearchInsert:rt,clone:gt,foldline:mr,pad2:Qe,trunc:xe,extend:ut});class la{static fromString(a){let i={};return i.factor=a[0]==="+"?1:-1,i.hours=Ie(a.slice(1,3)),i.minutes=Ie(a.slice(4,6)),new la(i)}static fromSeconds(a){let i=new la;return i.fromSeconds(a),i}constructor(a){this.fromData(a)}hours=0;minutes=0;factor=1;icaltype="utc-offset";clone(){return la.fromSeconds(this.toSeconds())}fromData(a){if(a)for(let[i,n]of Object.entries(a))this[i]=n;this._normalize()}fromSeconds(a){let i=Math.abs(a);return this.factor=a<0?-1:1,this.hours=xe(i/3600),i-=this.hours*3600,this.minutes=xe(i/60),this}toSeconds(){return this.factor*(60*this.minutes+3600*this.hours)}compare(a){let i=this.toSeconds(),n=a.toSeconds();return(i>n)-(n>i)}_normalize(){let a=this.toSeconds(),i=this.factor;for(;a<-43200;)a+=97200;for(;a>50400;)a-=97200;this.fromSeconds(a),a==0&&(this.factor=i)}toICALString(){return Me.icalendar.value["utc-offset"].toICAL(this.toString())}toString(){return(this.factor==1?"+":"-")+Qe(this.hours)+":"+Qe(this.minutes)}}class Za extends K{static fromDateAndOrTimeString(a,i){function n(p,T,k){return p?Ie(p.slice(T,T+k)):null}let o=a.split("T"),s=o[0],l=o[1],_=l?Me.vcard.value.time._splitZone(l):[],r=_[0],f=_[1],d=s?s.length:0,g=f?f.length:0,h=s&&s[0]=="-"&&s[1]=="-",F=f&&f[0]=="-",m={year:h?null:n(s,0,4),month:h&&(d==4||d==7)?n(s,2,2):d==7||d==10?n(s,5,2):null,day:d==5?n(s,3,2):d==7&&h?n(s,5,2):d==10?n(s,8,2):null,hour:F?null:n(f,0,2),minute:F&&g==3?n(f,1,2):g>4?F?n(f,1,2):n(f,3,2):null,second:g==4?n(f,2,2):g==6?n(f,4,2):g==8?n(f,6,2):null};return r=="Z"?r=ce.utcTimezone:r&&r[3]==":"?r=la.fromString(r):r=null,new Za(m,r,i)}constructor(a,i,n){super(a,i),this.icaltype=n||"date-and-or-time"}icalclass="vcardtime";icaltype="date-and-or-time";clone(){return new Za(this._time,this.zone,this.icaltype)}_normalize(){return this}utcOffset(){return this.zone instanceof la?this.zone.toSeconds():K.prototype.utcOffset.apply(this,arguments)}toICALString(){return Me.vcard.value[this.icaltype].toICAL(this.toString())}toString(){let a=this.year,i=this.month,n=this.day,o=this.hour,s=this.minute,l=this.second,_=a!==null,r=i!==null,f=n!==null,d=o!==null,g=s!==null,h=l!==null,F=(_?Qe(a)+(r||f?"-":""):r||f?"--":"")+(r?Qe(i):"")+(f?"-"+Qe(n):""),m=(d?Qe(o):"-")+(d&&g?":":"")+(g?Qe(s):"")+(!d&&!g?"-":"")+(g&&h?":":"")+(h?Qe(l):""),p;switch(this.zone===ce.utcTimezone?p="Z":this.zone instanceof la?p=this.zone.toString():this.zone===ce.localTimezone?p="":this.zone instanceof ce?p=la.fromSeconds(this.zone.utcOffset(this)).toString():p="",this.icaltype){case"time":return m+p;case"date-and-or-time":case"date-time":return F+(m=="--"?"":"T"+m+p);case"date":return F}return null}}class ua{static _indexMap={BYSECOND:0,BYMINUTE:1,BYHOUR:2,BYDAY:3,BYMONTHDAY:4,BYYEARDAY:5,BYWEEKNO:6,BYMONTH:7,BYSETPOS:8};static _expandMap={SECONDLY:[1,1,1,1,1,1,1,1],MINUTELY:[2,1,1,1,1,1,1,1],HOURLY:[2,2,1,1,1,1,1,1],DAILY:[2,2,2,1,1,1,1,1],WEEKLY:[2,2,2,2,3,3,1,1],MONTHLY:[2,2,2,2,2,3,3,1],YEARLY:[2,2,2,2,2,2,2,2]};static UNKNOWN=0;static CONTRACT=1;static EXPAND=2;static ILLEGAL=3;constructor(a){this.fromData(a)}completed=!1;rule=null;dtstart=null;last=null;occurrence_number=0;by_indices=null;initialized=!1;by_data=null;days=null;days_index=0;fromData(a){if(this.rule=ka(a.rule,He),!this.rule)throw new Error("iterator requires a (ICAL.Recur) rule");if(this.dtstart=ka(a.dtstart,K),!this.dtstart)throw new Error("iterator requires a (ICAL.Time) dtstart");if(a.by_data?this.by_data=a.by_data:this.by_data=gt(this.rule.parts,!0),a.occurrence_number&&(this.occurrence_number=a.occurrence_number),this.days=a.days||[],a.last&&(this.last=ka(a.last,K)),this.by_indices=a.by_indices,this.by_indices||(this.by_indices={BYSECOND:0,BYMINUTE:0,BYHOUR:0,BYDAY:0,BYMONTH:0,BYWEEKNO:0,BYMONTHDAY:0}),this.initialized=a.initialized||!1,!this.initialized)try{this.init()}catch(i){if(i instanceof Ro)this.completed=!0;else throw i}}init(){this.initialized=!0,this.last=this.dtstart.clone();let a=this.by_data;if("BYDAY"in a&&this.sort_byday_rules(a.BYDAY),"BYYEARDAY"in a&&("BYMONTH"in a||"BYWEEKNO"in a||"BYMONTHDAY"in a||"BYDAY"in a))throw new Error("Invalid BYYEARDAY rule");if("BYWEEKNO"in a&&"BYMONTHDAY"in a)throw new Error("BYWEEKNO does not fit to BYMONTHDAY");if(this.rule.freq=="MONTHLY"&&("BYYEARDAY"in a||"BYWEEKNO"in a))throw new Error("For MONTHLY recurrences neither BYYEARDAY nor BYWEEKNO may appear");if(this.rule.freq=="WEEKLY"&&("BYYEARDAY"in a||"BYMONTHDAY"in a))throw new Error("For WEEKLY recurrences neither BYMONTHDAY nor BYYEARDAY may appear");if(this.rule.freq!="YEARLY"&&"BYYEARDAY"in a)throw new Error("BYYEARDAY may only appear in YEARLY rules");if(this.last.second=this.setup_defaults("BYSECOND","SECONDLY",this.dtstart.second),this.last.minute=this.setup_defaults("BYMINUTE","MINUTELY",this.dtstart.minute),this.last.hour=this.setup_defaults("BYHOUR","HOURLY",this.dtstart.hour),this.last.day=this.setup_defaults("BYMONTHDAY","DAILY",this.dtstart.day),this.last.month=this.setup_defaults("BYMONTH","MONTHLY",this.dtstart.month),this.rule.freq=="WEEKLY")if("BYDAY"in a){let[,i]=this.ruleDayOfWeek(a.BYDAY[0],this.rule.wkst),n=i-this.last.dayOfWeek(this.rule.wkst);(this.last.dayOfWeek(this.rule.wkst)=0||n<0)&&(this.last.day+=n)}else{let i=He.numericDayToIcalDay(this.dtstart.dayOfWeek());a.BYDAY=[i]}if(this.rule.freq=="YEARLY"){const i=this.rule.until?this.rule.until.year:2e4;for(;this.last.year<=i&&(this.expand_year_days(this.last.year),!(this.days.length>0));)this.increment_year(this.rule.interval);if(this.days.length==0)throw new Ro;this._nextByYearDay()}if(this.rule.freq=="MONTHLY"){if(this.has_by_data("BYDAY")){let i=null,n=this.last.clone(),o=K.daysInMonth(this.last.month,this.last.year);for(let s of this.by_data.BYDAY){this.last=n.clone();let[l,_]=this.ruleDayOfWeek(s),r=this.last.nthWeekDay(_,l);if(l>=6||l<=-6)throw new Error("Malformed values in BYDAY part");if(r>o||r<=0){if(i&&i.month==n.month)continue;for(;r>o||r<=0;)this.increment_month(),o=K.daysInMonth(this.last.month,this.last.year),r=this.last.nthWeekDay(_,l)}this.last.day=r,(!i||this.last.compare(i)<0)&&(i=this.last.clone())}if(this.last=i.clone(),this.has_by_data("BYMONTHDAY")&&this._byDayAndMonthDay(!0),this.last.day>o||this.last.day==0)throw new Error("Malformed values in BYDAY part")}else if(this.has_by_data("BYMONTHDAY")){this.last.day=1;let i=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY).filter(n=>n>=this.last.day);if(i.length)this.last.day=i[0],this.by_data.BYMONTHDAY=i;else if(!this.next_month()&&!this.next_month()&&!this.next_month())throw new Error("No possible occurrences")}}}next(a=!1){let i=this.last?this.last.clone():null;if((this.rule.count&&this.occurrence_number>=this.rule.count||this.rule.until&&this.last.compare(this.rule.until)>0)&&(this.completed=!0),this.completed)return null;if(this.occurrence_number==0&&this.last.compare(this.dtstart)>=0)return this.occurrence_number++,this.last;let n;do switch(n=1,this.rule.freq){case"SECONDLY":this.next_second();break;case"MINUTELY":this.next_minute();break;case"HOURLY":this.next_hour();break;case"DAILY":this.next_day();break;case"WEEKLY":this.next_week();break;case"MONTHLY":n=this.next_month();break;case"YEARLY":this.next_year();break;default:return null}while(!this.check_contracting_rules()||this.last.compare(this.dtstart)<0||!n);if(this.last.compare(i)==0){if(a)throw new Error("Same occurrence found twice, protecting you from death by recursion");this.next(!0)}return this.rule.until&&this.last.compare(this.rule.until)>0?(this.completed=!0,null):(this.occurrence_number++,this.last)}next_second(){return this.next_generic("BYSECOND","SECONDLY","second","minute")}increment_second(a){return this.increment_generic(a,"second",60,"minute")}next_minute(){return this.next_generic("BYMINUTE","MINUTELY","minute","hour","next_second")}increment_minute(a){return this.increment_generic(a,"minute",60,"hour")}next_hour(){return this.next_generic("BYHOUR","HOURLY","hour","monthday","next_minute")}increment_hour(a){this.increment_generic(a,"hour",24,"monthday")}next_day(){let a=this.rule.freq=="DAILY";return this.next_hour()==0||(a?this.increment_monthday(this.rule.interval):this.increment_monthday(1)),0}next_week(){let a=0;if(this.next_weekday_by_week()==0)return a;if(this.has_by_data("BYWEEKNO")){this.by_indices.BYWEEKNO++,this.by_indices.BYWEEKNO==this.by_data.BYWEEKNO.length&&(this.by_indices.BYWEEKNO=0,a=1),this.last.month=1,this.last.day=1;let i=this.by_data.BYWEEKNO[this.by_indices.BYWEEKNO];this.last.day+=7*i,a&&this.increment_year(1)}else this.increment_monthday(7*this.rule.interval);return a}normalizeByMonthDayRules(a,i,n){let o=K.daysInMonth(i,a),s=[],l=0,_=n.length,r;for(;l<_;l++){if(r=parseInt(n[l],10),isNaN(r))throw new Error("Invalid BYMONTHDAY value");if(!(Math.abs(r)>o)){if(r<0)r=o+(r+1);else if(r===0)continue;s.indexOf(r)===-1&&s.push(r)}}return s.sort(function(f,d){return f-d})}_byDayAndMonthDay(a){let i,n=this.by_data.BYDAY,o,s=0,l,_=n.length,r=0,f,d=this,g=this.last.day;function h(){for(f=K.daysInMonth(d.last.month,d.last.year),i=d.normalizeByMonthDayRules(d.last.year,d.last.month,d.by_data.BYMONTHDAY),l=i.length;i[s]<=g&&!(a&&i[s]==g)&&sf){F();continue}let p=i[s++];if(p>=o)g=p;else{F();continue}for(let T=0;T<_;T++){let k=this.ruleDayOfWeek(n[T]),w=k[0],v=k[1];if(this.last.day=g,this.last.isNthWeekDay(v,w)){r=1;break}}if(!r&&s===l){F();continue}}if(m<=0)throw new Error("Malformed values in BYDAY combined with BYMONTHDAY parts");return r}next_month(){let a=1;if(this.next_hour()==0)return a;if(this.has_by_data("BYDAY")&&this.has_by_data("BYMONTHDAY"))a=this._byDayAndMonthDay();else if(this.has_by_data("BYDAY")){let i=K.daysInMonth(this.last.month,this.last.year),n=0,o=0;if(this.has_by_data("BYSETPOS")){let l=this.last.day;for(let _=1;_<=i;_++)this.last.day=_,this.is_day_in_byday(this.last)&&(o++,_<=l&&n++);this.last.day=l}a=0;let s;for(s=this.last.day+1;s<=i;s++)if(this.last.day=s,this.is_day_in_byday(this.last)&&(!this.has_by_data("BYSETPOS")||this.check_set_position(++n)||this.check_set_position(n-o-1))){a=1;break}s>i&&(this.last.day=1,this.increment_month(),this.is_day_in_byday(this.last)?(!this.has_by_data("BYSETPOS")||this.check_set_position(1))&&(a=1):a=0)}else if(this.has_by_data("BYMONTHDAY")){if(this.by_indices.BYMONTHDAY++,this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length&&(this.by_indices.BYMONTHDAY=0,this.increment_month(),this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length))return 0;let i=K.daysInMonth(this.last.month,this.last.year),n=this.by_data.BYMONTHDAY[this.by_indices.BYMONTHDAY];n<0&&(n=i+n+1),n>i?(this.last.day=1,a=this.is_day_in_byday(this.last)):this.last.day=n}else{this.increment_month();let i=K.daysInMonth(this.last.month,this.last.year);this.by_data.BYMONTHDAY[0]>i?a=0:this.last.day=this.by_data.BYMONTHDAY[0]}return a}next_weekday_by_week(){let a=0;if(this.next_hour()==0)return a;if(!this.has_by_data("BYDAY"))return 1;for(;;){let i=new K;this.by_indices.BYDAY++,this.by_indices.BYDAY==Object.keys(this.by_data.BYDAY).length&&(this.by_indices.BYDAY=0,a=1);let n=this.by_data.BYDAY[this.by_indices.BYDAY],o=this.ruleDayOfWeek(n)[1];o-=this.rule.wkst,o<0&&(o+=7),i.year=this.last.year,i.month=this.last.month,i.day=this.last.day;let s=i.startDoyWeek(this.rule.wkst);if(o+s<1&&!a)continue;let l=K.fromDayOfYear(s+o,this.last.year);return this.last.year=l.year,this.last.month=l.month,this.last.day=l.day,a}}next_year(){if(this.next_hour()==0)return 0;if(++this.days_index==this.days.length){this.days_index=0;do this.increment_year(this.rule.interval),this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY)),this.expand_year_days(this.last.year);while(this.days.length==0)}return this._nextByYearDay(),1}_nextByYearDay(){let a=this.days[this.days_index],i=this.last.year;a<1&&(a+=1,i+=1);let n=K.fromDayOfYear(a,i);this.last.day=n.day,this.last.month=n.month}ruleDayOfWeek(a,i){let n=a.match(/([+-]?[0-9])?(MO|TU|WE|TH|FR|SA|SU)/);if(n){let o=parseInt(n[1]||0,10);return a=He.icalDayToNumericDay(n[2],i),[o,a]}else return[0,0]}next_generic(a,i,n,o,s){let l=a in this.by_data,_=this.rule.freq==i,r=0;if(s&&this[s]()==0)return r;if(l){this.by_indices[a]++;let f=this.by_data[a];this.by_indices[a]==f.length&&(this.by_indices[a]=0,r=1),this.last[n]=f[this.by_indices[a]]}else _&&this["increment_"+n](this.rule.interval);return l&&r&&_&&this["increment_"+o](1),r}increment_monthday(a){for(let i=0;in&&(this.last.day-=n,this.increment_month())}}increment_month(){if(this.last.day=1,this.has_by_data("BYMONTH"))this.by_indices.BYMONTH++,this.by_indices.BYMONTH==this.by_data.BYMONTH.length&&(this.by_indices.BYMONTH=0,this.increment_year(1)),this.last.month=this.by_data.BYMONTH[this.by_indices.BYMONTH];else{this.rule.freq=="MONTHLY"?this.last.month+=this.rule.interval:this.last.month++,this.last.month--;let a=xe(this.last.month/12);this.last.month%=12,this.last.month++,a!=0&&this.increment_year(a)}this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY))}increment_year(a){this.last.day=1,this.last.year+=a}increment_generic(a,i,n,o){this.last[i]+=a;let s=xe(this.last[i]/n);this.last[i]%=n,s!=0&&this["increment_"+o](s)}has_by_data(a){return a in this.rule.parts}expand_year_days(a){let i=new K;this.days=[];let n={},o=["BYDAY","BYWEEKNO","BYMONTHDAY","BYMONTH","BYYEARDAY"];for(let _ of o)_ in this.rule.parts&&(n[_]=this.rule.parts[_]);if("BYMONTH"in n&&"BYWEEKNO"in n){let _=1,r={};i.year=a,i.isDate=!0;for(let f=0;f0?(T=k+(m-1)*7,T<=r&&this.days.push(d+T)):(T=w+(m+1)*7,T>0&&this.days.push(d+T))}}this.days.sort(function(_,r){return _-r})}else if(s==2&&"BYDAY"in n&&"BYMONTHDAY"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a);this.by_data.BYMONTHDAY.indexOf(f.day)>=0&&this.days.push(r)}}else if(s==3&&"BYDAY"in n&&"BYMONTHDAY"in n&&"BYMONTH"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a);this.by_data.BYMONTH.indexOf(f.month)>=0&&this.by_data.BYMONTHDAY.indexOf(f.day)>=0&&this.days.push(r)}}else if(s==2&&"BYDAY"in n&&"BYWEEKNO"in n){let _=this.expand_by_day(a);for(let r of _){let f=K.fromDayOfYear(r,a).weekNumber(this.rule.wkst);this.by_data.BYWEEKNO.indexOf(f)&&this.days.push(r)}}else s==3&&"BYDAY"in n&&"BYWEEKNO"in n&&"BYMONTHDAY"in n||(s==1&&"BYYEARDAY"in n?this.days=this.days.concat(this.by_data.BYYEARDAY):this.days=[]);let l=K.isLeapYear(a)?366:365;return this.days.sort((_,r)=>(_<0&&(_+=l+1),r<0&&(r+=l+1),_-r)),0}expand_by_day(a){let i=[],n=this.last.clone();n.year=a,n.month=1,n.day=1,n.isDate=!0;let o=n.dayOfWeek();n.month=12,n.day=31,n.isDate=!0;let s=n.dayOfWeek(),l=n.dayOfYear();for(let _ of this.by_data.BYDAY){let r=this.ruleDayOfWeek(_),f=r[0],d=r[1];if(f==0){let g=(d+7-o)%7+1;for(let h=g;h<=l;h+=7)i.push(h)}else if(f>0){let g;d>=o?g=d-o+1:g=d-o+8,i.push(g+(f-1)*7)}else{let g;f=-f,d<=s?g=l-s+d:g=l-s+d-7,i.push(g-(f-1)*7)}}return i}is_day_in_byday(a){if(this.by_data.BYDAY)for(let i of this.by_data.BYDAY){let n=this.ruleDayOfWeek(i),o=n[0],s=n[1],l=a.dayOfWeek();if(o==0&&s==l||a.nthWeekDay(s,o)==a.day)return 1}return 0}check_set_position(a){return this.has_by_data("BYSETPOS")?this.by_data.BYSETPOS.indexOf(a)!==-1:!1}sort_byday_rules(a){for(let i=0;is){let l=a[i];a[i]=a[n],a[n]=l}}}check_contract_restriction(a,i){let n=ua._indexMap[a],o=ua._expandMap[this.rule.freq][n],s=!1;if(a in this.by_data&&o==ua.CONTRACT){let l=this.by_data[a];for(let _ of l)if(_==i){s=!0;break}}else s=!0;return s}check_contracting_rules(){let a=this.last.dayOfWeek(),i=this.last.weekNumber(this.rule.wkst),n=this.last.dayOfYear();return this.check_contract_restriction("BYSECOND",this.last.second)&&this.check_contract_restriction("BYMINUTE",this.last.minute)&&this.check_contract_restriction("BYHOUR",this.last.hour)&&this.check_contract_restriction("BYDAY",He.numericDayToIcalDay(a))&&this.check_contract_restriction("BYWEEKNO",i)&&this.check_contract_restriction("BYMONTHDAY",this.last.day)&&this.check_contract_restriction("BYMONTH",this.last.month)&&this.check_contract_restriction("BYYEARDAY",n)}setup_defaults(a,i,n){let o=ua._indexMap[a];return ua._expandMap[this.rule.freq][o]!=ua.CONTRACT&&(a in this.by_data||(this.by_data[a]=[n]),this.rule.freq!=i)?this.by_data[a][0]:n}toJSON(){let a=Object.create(null);return a.initialized=this.initialized,a.rule=this.rule.toJSON(),a.dtstart=this.dtstart.toJSON(),a.by_data=this.by_data,a.days=this.days,a.last=this.last.toJSON(),a.by_indices=this.by_indices,a.occurrence_number=this.occurrence_number,a}}class Ro extends Error{constructor(){super("Recurrence rule has no valid occurrences")}}const H_=/^(SU|MO|TU|WE|TH|FR|SA)$/,P_=/^([+-])?(5[0-3]|[1-4][0-9]|[1-9])?(SU|MO|TU|WE|TH|FR|SA)$/,pr={SU:K.SUNDAY,MO:K.MONDAY,TU:K.TUESDAY,WE:K.WEDNESDAY,TH:K.THURSDAY,FR:K.FRIDAY,SA:K.SATURDAY},G_=Object.fromEntries(Object.entries(pr).map(e=>e.reverse())),Co=["SECONDLY","MINUTELY","HOURLY","DAILY","WEEKLY","MONTHLY","YEARLY"];class He{static fromString(a){let i=this._stringToData(a,!1);return new He(i)}static fromData(a){return new He(a)}static _stringToData(a,i){let n=Object.create(null),o=a.split(";"),s=o.length;for(let l=0;l7&&(o-=7),G_[o]}constructor(a){this.wrappedJSObject=this,this.parts={},a&&typeof a=="object"&&this.fromData(a)}parts=null;interval=1;wkst=K.MONDAY;until=null;count=null;freq=null;icalclass="icalrecur";icaltype="recur";iterator(a){return new ua({rule:this,dtstart:a})}clone(){return new He(this.toJSON())}isFinite(){return!!(this.count||this.until)}isByCount(){return!!(this.count&&!this.until)}addComponent(a,i){let n=a.toUpperCase();n in this.parts?this.parts[n].push(i):this.parts[n]=[i]}setComponent(a,i){this.parts[a.toUpperCase()]=i.slice()}getComponent(a){let i=a.toUpperCase();return i in this.parts?this.parts[i].slice():[]}getNextOccurrence(a,i){let n=this.iterator(a),o;do o=n.next();while(o&&o.compare(i)<=0);return o&&i.zone&&(o.zone=i.zone),o}fromData(a){for(let i in a){let n=i.toUpperCase();n in K0?Array.isArray(a[i])?this.parts[n]=a[i]:this.parts[n]=[a[i]]:this[i]=a[i]}this.interval&&typeof this.interval!="number"&&Q0.INTERVAL(this.interval,this),this.wkst&&typeof this.wkst!="number"&&(this.wkst=He.icalDayToNumericDay(this.wkst)),this.until&&!(this.until instanceof K)&&(this.until=K.fromString(this.until))}toJSON(){let a=Object.create(null);a.freq=this.freq,this.count&&(a.count=this.count),this.interval>1&&(a.interval=this.interval);for(let[i,n]of Object.entries(this.parts))Array.isArray(n)&&n.length==1?a[i.toLowerCase()]=n[0]:a[i.toLowerCase()]=gt(n);return this.until&&(a.until=this.until.toString()),"wkst"in this&&this.wkst!==K.DEFAULT_WEEK_START&&(a.wkst=He.numericDayToIcalDay(this.wkst)),a}toString(){let a="FREQ="+this.freq;this.count&&(a+=";COUNT="+this.count),this.interval>1&&(a+=";INTERVAL="+this.interval);for(let[i,n]of Object.entries(this.parts))a+=";"+i+"="+n;return this.until&&(a+=";UNTIL="+this.until.toICALString()),"wkst"in this&&this.wkst!==K.DEFAULT_WEEK_START&&(a+=";WKST="+He.numericDayToIcalDay(this.wkst)),a}}function Ra(e,a,i,n){let o=n;if(n[0]==="+"&&(o=n.slice(1)),o=Ie(o),a!==void 0&&n '+a);if(i!==void 0&&n>i)throw new Error(e+': invalid value "'+n+'" must be < '+a);return o}const Q0={FREQ:function(e,a,i){if(Co.indexOf(e)!==-1)a.freq=e;else throw new Error('invalid frequency "'+e+'" expected: "'+Co.join(", ")+'"')},COUNT:function(e,a,i){a.count=Ie(e)},INTERVAL:function(e,a,i){a.interval=Ie(e),a.interval<1&&(a.interval=1)},UNTIL:function(e,a,i){e.length>10?a.until=Me.icalendar.value["date-time"].fromICAL(e):a.until=Me.icalendar.value.date.fromICAL(e),i||(a.until=K.fromString(a.until))},WKST:function(e,a,i){if(H_.test(e))a.wkst=He.icalDayToNumericDay(e);else throw new Error('invalid WKST value "'+e+'"')}},K0={BYSECOND:Ra.bind(void 0,"BYSECOND",0,60),BYMINUTE:Ra.bind(void 0,"BYMINUTE",0,59),BYHOUR:Ra.bind(void 0,"BYHOUR",0,23),BYDAY:function(e){if(P_.test(e))return e;throw new Error('invalid BYDAY value "'+e+'"')},BYMONTHDAY:Ra.bind(void 0,"BYMONTHDAY",-31,31),BYYEARDAY:Ra.bind(void 0,"BYYEARDAY",-366,366),BYWEEKNO:Ra.bind(void 0,"BYWEEKNO",-53,53),BYMONTH:Ra.bind(void 0,"BYMONTH",1,12),BYSETPOS:Ra.bind(void 0,"BYSETPOS",-366,366)};class Ya{static fromString(a,i){let n=a.split("/");if(n.length!==2)throw new Error('Invalid string value: "'+a+'" must contain a "/" char.');let o={start:K.fromDateTimeString(n[0],i)},s=n[1];return Pe.isValueString(s)?o.duration=Pe.fromString(s):o.end=K.fromDateTimeString(s,i),new Ya(o)}static fromData(a){return new Ya(a)}static fromJSON(a,i,n){function o(s,l){return n?K.fromString(s,l):K.fromDateTimeString(s,l)}return Pe.isValueString(a[1])?Ya.fromData({start:o(a[0],i),duration:Pe.fromString(a[1])}):Ya.fromData({start:o(a[0],i),end:o(a[1],i)})}constructor(a){if(this.wrappedJSObject=this,a&&"start"in a){if(a.start&&!(a.start instanceof K))throw new TypeError(".start must be an instance of ICAL.Time");this.start=a.start}if(a&&a.end&&a.duration)throw new Error("cannot accept both end and duration");if(a&&"end"in a){if(a.end&&!(a.end instanceof K))throw new TypeError(".end must be an instance of ICAL.Time");this.end=a.end}if(a&&"duration"in a){if(a.duration&&!(a.duration instanceof Pe))throw new TypeError(".duration must be an instance of ICAL.Duration");this.duration=a.duration}}start=null;end=null;duration=null;icalclass="icalperiod";icaltype="period";clone(){return Ya.fromData({start:this.start?this.start.clone():null,end:this.end?this.end.clone():null,duration:this.duration?this.duration.clone():null})}getDuration(){return this.duration?this.duration:this.end.subtractDate(this.start)}getEnd(){if(this.end)return this.end;{let a=this.start.clone();return a.addDuration(this.duration),a}}toString(){return this.start+"/"+(this.end||this.duration)}toJSON(){return[this.start.toString(),(this.end||this.duration).toString()]}toICALString(){return this.start.toICALString()+"/"+(this.end||this.duration).toICALString()}}const U_=/\\\\|\\;|\\,|\\[Nn]/g,z_=/\\|;|,|\n/g,Oo=/\\\\|\\,|\\[Nn]/g,Bo=/\\|,|\n/g;function mn(e,a){return{matches:/.*/,fromICAL:function(i,n){return $_(i,e,n)},toICAL:function(i,n){let o=a;return n&&(o=new RegExp(o.source+"|"+n,o.flags)),i.replace(o,function(s){switch(s){case"\\":return"\\\\";case";":return"\\;";case",":return"\\,";case`
+`:return"\\n";default:return s}})}}}const de={defaultType:"text"},ti={defaultType:"text",multiValue:","},Pi={defaultType:"text",structuredValue:";"},Fi={defaultType:"integer"},ui={defaultType:"date-time",allowedTypes:["date-time","date"]},ci={defaultType:"date-time"},We={defaultType:"uri"},No={defaultType:"utc-offset"},xo={defaultType:"recur"},Mo={defaultType:"date-and-or-time",allowedTypes:["date-time","date","text"]};function V_(e){switch(e){case"\\\\":return"\\";case"\\;":return";";case"\\,":return",";case"\\n":case"\\N":return`
+`;default:return e}}function $_(e,a,i){return e.indexOf("\\")===-1?e:(i&&(a=new RegExp(a.source+"|\\\\"+i,a.flags)),e.replace(a,V_))}let Qn={categories:ti,url:We,version:de,uid:de},Kn={boolean:{values:["TRUE","FALSE"],fromICAL:function(e){switch(e){case"TRUE":return!0;case"FALSE":return!1;default:return!1}},toICAL:function(e){return e?"TRUE":"FALSE"}},float:{matches:/^[+-]?\d+\.\d+$/,fromICAL:function(e){let a=parseFloat(e);return ai(a)?0:a},toICAL:function(e){return String(e)}},integer:{fromICAL:function(e){let a=parseInt(e);return ai(a)?0:a},toICAL:function(e){return String(e)}},"utc-offset":{toICAL:function(e){return e.length<7?e.slice(0,3)+e.slice(4,6):e.slice(0,3)+e.slice(4,6)+e.slice(7,9)},fromICAL:function(e){return e.length<6?e.slice(0,3)+":"+e.slice(3,5):e.slice(0,3)+":"+e.slice(3,5)+":"+e.slice(5,7)},decorate:function(e){return la.fromString(e)},undecorate:function(e){return e.toString()}}},W_={cutype:{values:["INDIVIDUAL","GROUP","RESOURCE","ROOM","UNKNOWN"],allowXName:!0,allowIanaToken:!0},"delegated-from":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},"delegated-to":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},encoding:{values:["8BIT","BASE64"]},fbtype:{values:["FREE","BUSY","BUSY-UNAVAILABLE","BUSY-TENTATIVE"],allowXName:!0,allowIanaToken:!0},member:{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},partstat:{values:["NEEDS-ACTION","ACCEPTED","DECLINED","TENTATIVE","DELEGATED","COMPLETED","IN-PROCESS"],allowXName:!0,allowIanaToken:!0},range:{values:["THISANDFUTURE"]},related:{values:["START","END"]},reltype:{values:["PARENT","CHILD","SIBLING"],allowXName:!0,allowIanaToken:!0},role:{values:["REQ-PARTICIPANT","CHAIR","OPT-PARTICIPANT","NON-PARTICIPANT"],allowXName:!0,allowIanaToken:!0},rsvp:{values:["TRUE","FALSE"]},"sent-by":{valueType:"cal-address"},tzid:{matches:/^\//},value:{values:["binary","boolean","cal-address","date","date-time","duration","float","integer","period","recur","text","time","uri","utc-offset"],allowXName:!0,allowIanaToken:!0}};const qe=ut(Kn,{text:mn(U_,z_),uri:{},binary:{decorate:function(e){return B0.fromString(e)},undecorate:function(e){return e.toString()}},"cal-address":{},date:{decorate:function(e,a){return K.fromDateString(e,a)},undecorate:function(e){return e.toString()},fromICAL:function(e){return e.slice(0,4)+"-"+e.slice(4,6)+"-"+e.slice(6,8)},toICAL:function(e){let a=e.length;return a==10?e.slice(0,4)+e.slice(5,7)+e.slice(8,10):a>=19?qe["date-time"].toICAL(e):e}},"date-time":{fromICAL:function(e){{let a=e.slice(0,4)+"-"+e.slice(4,6)+"-"+e.slice(6,8)+"T"+e.slice(9,11)+":"+e.slice(11,13)+":"+e.slice(13,15);return e[15]&&e[15]==="Z"&&(a+="Z"),a}},toICAL:function(e){let a=e.length;if(a==10&&!wt.strict)return qe.date.toICAL(e);if(a>=19){let i=e.slice(0,4)+e.slice(5,7)+e.slice(8,13)+e.slice(14,16)+e.slice(17,19);return e[19]&&e[19]==="Z"&&(i+="Z"),i}else return e},decorate:function(e,a){return K.fromDateTimeString(e,a)},undecorate:function(e){return e.toString()}},duration:{decorate:function(e){return Pe.fromString(e)},undecorate:function(e){return e.toString()}},period:{fromICAL:function(e){let a=e.split("/");return a[0]=qe["date-time"].fromICAL(a[0]),Pe.isValueString(a[1])||(a[1]=qe["date-time"].fromICAL(a[1])),a},toICAL:function(e){return e=e.slice(),e[0]=qe["date-time"].toICAL(e[0]),Pe.isValueString(e[1])||(e[1]=qe["date-time"].toICAL(e[1])),e.join("/")},decorate:function(e,a){return Ya.fromJSON(e,a,!wt.strict)},undecorate:function(e){return e.toJSON()}},recur:{fromICAL:function(e){return He._stringToData(e,!0)},toICAL:function(e){let a="";for(let[i,n]of Object.entries(e))i=="until"?n.length>10?n=qe["date-time"].toICAL(n):n=qe.date.toICAL(n):i=="wkst"?typeof n=="number"&&(n=He.numericDayToIcalDay(n)):Array.isArray(n)&&(n=n.join(",")),a+=i.toUpperCase()+"="+n+";";return a.slice(0,Math.max(0,a.length-1))},decorate:function(e){return He.fromData(e)},undecorate:function(e){return e.toJSON()}},time:{fromICAL:function(e){if(e.length<6)return e;let a=e.slice(0,2)+":"+e.slice(2,4)+":"+e.slice(4,6);return e[6]==="Z"&&(a+="Z"),a},toICAL:function(e){if(e.length<8)return e;let a=e.slice(0,2)+e.slice(3,5)+e.slice(6,8);return e[8]==="Z"&&(a+="Z"),a}}});let Q_=ut(Qn,{action:de,attach:{defaultType:"uri"},attendee:{defaultType:"cal-address"},calscale:de,class:de,comment:de,completed:ci,contact:de,created:ci,description:de,dtend:ui,dtstamp:ci,dtstart:ui,due:ui,duration:{defaultType:"duration"},exdate:{defaultType:"date-time",allowedTypes:["date-time","date"],multiValue:","},exrule:xo,freebusy:{defaultType:"period",multiValue:","},geo:{defaultType:"float",structuredValue:";"},"last-modified":ci,location:de,method:de,organizer:{defaultType:"cal-address"},"percent-complete":Fi,priority:Fi,prodid:de,"related-to":de,repeat:Fi,rdate:{defaultType:"date-time",allowedTypes:["date-time","date","period"],multiValue:",",detectType:function(e){return e.indexOf("/")!==-1?"period":e.indexOf("T")===-1?"date":"date-time"}},"recurrence-id":ui,resources:ti,"request-status":Pi,rrule:xo,sequence:Fi,status:de,summary:de,transp:de,trigger:{defaultType:"duration",allowedTypes:["duration","date-time"]},tzoffsetfrom:No,tzoffsetto:No,tzurl:We,tzid:de,tzname:de});const na=ut(Kn,{text:mn(Oo,Bo),uri:mn(Oo,Bo),date:{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date")},undecorate:function(e){return e.toString()},fromICAL:function(e){return e.length==8?qe.date.fromICAL(e):e[0]=="-"&&e.length==6?e.slice(0,4)+"-"+e.slice(4):e},toICAL:function(e){return e.length==10?qe.date.toICAL(e):e[0]=="-"&&e.length==7?e.slice(0,4)+e.slice(5):e}},time:{decorate:function(e){return Za.fromDateAndOrTimeString("T"+e,"time")},undecorate:function(e){return e.toString()},fromICAL:function(e){let a=na.time._splitZone(e,!0),i=a[0],n=a[1];return n.length==6?n=n.slice(0,2)+":"+n.slice(2,4)+":"+n.slice(4,6):n.length==4&&n[0]!="-"?n=n.slice(0,2)+":"+n.slice(2,4):n.length==5&&(n=n.slice(0,3)+":"+n.slice(3,5)),i.length==5&&(i[0]=="-"||i[0]=="+")&&(i=i.slice(0,3)+":"+i.slice(3)),n+i},toICAL:function(e){let a=na.time._splitZone(e),i=a[0],n=a[1];return n.length==8?n=n.slice(0,2)+n.slice(3,5)+n.slice(6,8):n.length==5&&n[0]!="-"?n=n.slice(0,2)+n.slice(3,5):n.length==6&&(n=n.slice(0,3)+n.slice(4,6)),i.length==6&&(i[0]=="-"||i[0]=="+")&&(i=i.slice(0,3)+i.slice(4)),n+i},_splitZone:function(e,a){let i=e.length-1,n=e.length-(a?5:6),o=e[n],s,l;return e[i]=="Z"?(s=e[i],l=e.slice(0,Math.max(0,i))):e.length>6&&(o=="-"||o=="+")?(s=e.slice(n),l=e.slice(0,Math.max(0,n))):(s="",l=e),[s,l]}},"date-time":{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date-time")},undecorate:function(e){return e.toString()},fromICAL:function(e){return na["date-and-or-time"].fromICAL(e)},toICAL:function(e){return na["date-and-or-time"].toICAL(e)}},"date-and-or-time":{decorate:function(e){return Za.fromDateAndOrTimeString(e,"date-and-or-time")},undecorate:function(e){return e.toString()},fromICAL:function(e){let a=e.split("T");return(a[0]?na.date.fromICAL(a[0]):"")+(a[1]?"T"+na.time.fromICAL(a[1]):"")},toICAL:function(e){let a=e.split("T");return na.date.toICAL(a[0])+(a[1]?"T"+na.time.toICAL(a[1]):"")}},timestamp:qe["date-time"],"language-tag":{matches:/^[a-zA-Z0-9-]+$/},"phone-number":{fromICAL:function(e){return Array.from(e).filter(function(a){return a==="\\"?void 0:a}).join("")},toICAL:function(e){return Array.from(e).map(function(a){return a===","||a===";"?"\\"+a:a}).join("")}}});let K_={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","time","date-time","date-and-or-time","timestamp","boolean","integer","float","utc-offset","language-tag"],allowXName:!0,allowIanaToken:!0}},J_=ut(Qn,{adr:{defaultType:"text",structuredValue:";",multiValue:","},anniversary:Mo,bday:Mo,caladruri:We,caluri:We,clientpidmap:Pi,email:de,fburl:We,fn:de,gender:Pi,geo:We,impp:We,key:We,kind:de,lang:{defaultType:"language-tag"},logo:We,member:We,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ti,note:de,org:{defaultType:"text",structuredValue:";"},photo:We,related:We,rev:{defaultType:"timestamp"},role:de,sound:We,source:We,tel:{defaultType:"uri",allowedTypes:["uri","text"]},title:de,tz:{defaultType:"text",allowedTypes:["text","utc-offset","uri"]},xml:de}),X_=ut(Kn,{binary:qe.binary,date:na.date,"date-time":na["date-time"],"phone-number":na["phone-number"],uri:qe.uri,text:qe.text,time:qe.time,vcard:qe.text,"utc-offset":{toICAL:function(e){return e.slice(0,7)},fromICAL:function(e){return e.slice(0,7)},decorate:function(e){return la.fromString(e)},undecorate:function(e){return e.toString()}}}),ed={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","date-time","phone-number","time","boolean","integer","float","utc-offset","vcard","binary"],allowXName:!0,allowIanaToken:!0}},ad=ut(Qn,{fn:de,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ti,photo:{defaultType:"binary",allowedTypes:["binary","uri"]},bday:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(e){return e.indexOf("T")===-1?"date":"date-time"}},adr:{defaultType:"text",structuredValue:";",multiValue:","},label:de,tel:{defaultType:"phone-number"},email:de,mailer:de,tz:{defaultType:"utc-offset",allowedTypes:["utc-offset","text"]},geo:{defaultType:"float",structuredValue:";"},title:de,role:de,logo:{defaultType:"binary",allowedTypes:["binary","uri"]},agent:{defaultType:"vcard",allowedTypes:["vcard","text","uri"]},org:Pi,note:ti,prodid:de,rev:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(e){return e.indexOf("T")===-1?"date":"date-time"}},"sort-string":de,sound:{defaultType:"binary",allowedTypes:["binary","uri"]},class:de,key:{defaultType:"binary",allowedTypes:["binary","text"]}}),Da={value:qe,param:W_,property:Q_,propertyGroups:!1},jo={value:na,param:K_,property:J_,propertyGroups:!0},Yo={value:X_,param:ed,property:ad,propertyGroups:!0};const wt={strict:!0,defaultSet:Da,defaultType:"unknown",components:{vcard:jo,vcard3:Yo,vevent:Da,vtodo:Da,vjournal:Da,valarm:Da,vtimezone:Da,daylight:Da,standard:Da},icalendar:Da,vcard:jo,vcard3:Yo,getDesignSet:function(e){return e&&e in wt.components?wt.components[e]:wt.defaultSet}};var Me=wt;const Oi=`\r
+`,qo="unknown",td={'"':"^'","\n":"^n","^":"^^"};function Ae(e){typeof e[0]=="string"&&(e=[e]);let a=0,i=e.length,n="";for(;a0&&!(e[1][0][0]==="version"&&e[1][0][3]==="4.0")&&(_="vcard3"),a=a||Me.getDesignSet(_);s0&&typeof a[0]=="object"&&"icaltype"in a[0]&&this.resetType(a[0].icaltype),this.isDecorated)for(;n=0;l--)(!n||s[l][Oa]===n)&&this._removeObjectByIndex(a,o,l)}addSubcomponent(a){this._components||(this._components=[],this._hydratedComponentCount=0),a.parent&&a.parent.removeSubcomponent(a);let i=this.jCal[Ba].push(a.jCal);return this._components[i-1]=a,this._hydratedComponentCount++,a.parent=this,a}removeSubcomponent(a){let i=this._removeObject(Ba,"_components",a);return i&&this._hydratedComponentCount--,i}removeAllSubcomponents(a){let i=this._removeAllObjects(Ba,"_components",a);return this._hydratedComponentCount=0,i}addProperty(a){if(!(a instanceof lt))throw new TypeError("must be instance of ICAL.Property");this._properties||(this._properties=[],this._hydratedPropertyCount=0),a.parent&&a.parent.removeProperty(a);let i=this.jCal[Ta].push(a.jCal);return this._properties[i-1]=a,this._hydratedPropertyCount++,a.parent=this,a}addPropertyWithValue(a,i){let n=new lt(a);return n.setValue(i),this.addProperty(n),n}updatePropertyWithValue(a,i){let n=this.getFirstProperty(a);return n?n.setValue(i):n=this.addPropertyWithValue(a,i),n}removeProperty(a){let i=this._removeObject(Ta,"_properties",a);return i&&this._hydratedPropertyCount--,i}removeAllProperties(a){let i=this._removeAllObjects(Ta,"_properties",a);return this._hydratedPropertyCount=0,i}toJSON(){return this.jCal}toString(){return Ae.component(this.jCal,this._designSet)}getTimeZoneByID(a){if(this.parent)return this.parent.getTimeZoneByID(a);if(!this._timezoneCache)return null;if(this._timezoneCache.has(a))return this._timezoneCache.get(a);const i=this.getAllSubcomponents("vtimezone");for(const n of i)if(n.getFirstProperty("tzid").getFirstValue()===a){const o=new ce({component:n,tzid:a});return this._timezoneCache.set(a,o),o}return null}}class br{constructor(a){this.ruleDates=[],this.exDates=[],this.fromData(a)}complete=!1;ruleIterators=null;ruleDates=null;exDates=null;ruleDateInc=0;exDateInc=0;exDate=null;ruleDate=null;dtstart=null;last=null;fromData(a){let i=ka(a.dtstart,K);if(i)this.dtstart=i;else throw new Error(".dtstart (ICAL.Time) must be given");if(a.component)this._init(a.component);else{if(this.last=ka(a.last,K)||i.clone(),!a.ruleIterators)throw new Error(".ruleIterators or .component must be given");this.ruleIterators=a.ruleIterators.map(function(n){return ka(n,ua)}),this.ruleDateInc=a.ruleDateInc,this.exDateInc=a.exDateInc,a.ruleDates&&(this.ruleDates=a.ruleDates.map(n=>ka(n,K)),this.ruleDate=this.ruleDates[this.ruleDateInc]),a.exDates&&(this.exDates=a.exDates.map(n=>ka(n,K)),this.exDate=this.exDates[this.exDateInc]),typeof a.complete<"u"&&(this.complete=a.complete)}}next(){let a,i,n,o=500,s=0;for(;;){if(s++>o)throw new Error("max tries have occurred, rule may be impossible to fulfill.");if(i=this.ruleDate,a=this._nextRecurrenceIter(this.last),!i&&!a){this.complete=!0;break}if((!i||a&&i.compare(a.last)>0)&&(i=a.last.clone(),a.next()),this.ruleDate===i&&this._nextRuleDay(),this.last=i,this.exDate&&(n=this.exDate.compare(this.last),n<0&&this._nextExDay(),n===0)){this._nextExDay();continue}return this.last}}toJSON(){function a(n){return n.toJSON()}let i=Object.create(null);return i.ruleIterators=this.ruleIterators.map(a),this.ruleDates&&(i.ruleDates=this.ruleDates.map(a)),this.exDates&&(i.exDates=this.exDates.map(a)),i.ruleDateInc=this.ruleDateInc,i.exDateInc=this.exDateInc,i.last=this.last.toJSON(),i.dtstart=this.dtstart.toJSON(),i.complete=this.complete,i}_extractDates(a,i){let n=[],o=a.getAllProperties(i);for(let s=0,l=o.length;sf.compare(d));n.splice(r,0,_)}return n}_init(a){if(this.ruleIterators=[],this.last=this.dtstart.clone(),!a.hasProperty("rdate")&&!a.hasProperty("rrule")&&!a.hasProperty("recurrence-id")){this.ruleDate=this.last.clone(),this.complete=!0;return}if(a.hasProperty("rdate")&&(this.ruleDates=this._extractDates(a,"rdate"),this.ruleDates[0]&&this.ruleDates[0].compare(this.dtstart)<0?(this.ruleDateInc=0,this.last=this.ruleDates[0].clone()):this.ruleDateInc=rt(this.ruleDates,this.last,(i,n)=>i.compare(n)),this.ruleDate=this.ruleDates[this.ruleDateInc]),a.hasProperty("rrule")){let i=a.getAllProperties("rrule"),n=0,o=i.length,s,l;for(;ni.compare(n)),this.exDate=this.exDates[this.exDateInc])}_nextExDay(){this.exDate=this.exDates[++this.exDateInc]}_nextRuleDay(){this.ruleDate=this.ruleDates[++this.ruleDateInc]}_nextRecurrenceIter(){let a=this.ruleIterators;if(a.length===0)return null;let i=a.length,n,o,s=0,l;for(;s0)&&(l=n)}return l}}class ii{constructor(a,i){a instanceof ea||(i=a,a=null),a?this.component=a:this.component=new ea("vevent"),this._rangeExceptionCache=Object.create(null),this.exceptions=Object.create(null),this.rangeExceptions=[],i&&i.strictExceptions&&(this.strictExceptions=i.strictExceptions),i&&i.exceptions?i.exceptions.forEach(this.relateException,this):this.component.parent&&!this.isRecurrenceException()&&this.component.parent.getAllSubcomponents("vevent").forEach(function(n){n.hasProperty("recurrence-id")&&this.relateException(n)},this)}static THISANDFUTURE="THISANDFUTURE";exceptions=null;strictExceptions=!1;relateException(a){if(this.isRecurrenceException())throw new Error("cannot relate exception to exceptions");if(a instanceof ea&&(a=new ii(a)),this.strictExceptions&&a.uid!==this.uid)throw new Error("attempted to relate unrelated exception");let i=a.recurrenceId.toString();if(this.exceptions[i]=a,a.modifiesFuture()){let n=[a.recurrenceId.toUnixTime(),i],o=rt(this.rangeExceptions,n,Zo);this.rangeExceptions.splice(o,0,n)}}modifiesFuture(){return this.component.hasProperty("recurrence-id")?this.component.getFirstProperty("recurrence-id").getParameter("range")===ii.THISANDFUTURE:!1}findRangeException(a){if(!this.rangeExceptions.length)return null;let i=a.toUnixTime(),n=rt(this.rangeExceptions,[i],Zo);if(n-=1,n<0)return null;let o=this.rangeExceptions[n];return ia[0]?1:a[0]>e[0]?-1:0}class id{constructor(a){typeof a>"u"&&(a={});for(let[i,n]of Object.entries(a))this[i]=n}parseEvent=!0;parseTimezone=!0;oncomplete=function(){};onerror=function(a){};ontimezone=function(a){};onevent=function(a){};process(a){typeof a=="string"&&(a=he(a)),a instanceof ea||(a=new ea(a));let i=a.getAllSubcomponents(),n=0,o=i.length,s;for(;n=20)return console.error("TimezoneManager.getTimezoneForIdRec() exceeds recursion limits"),null;if(this._aliases.has(a)){const n=this._aliases.get(a);return this._getTimezoneForIdRec(n,i+1)}return null}hasTimezoneForId(a){return this._timezones.has(a)||this._aliases.has(a)}isAlias(a){return!this._timezones.has(a)&&this._aliases.has(a)}listAllTimezones(a=!1){const i=Array.from(this._timezones.keys());return a?i.concat(Array.from(this._aliases.keys())):i}registerTimezone(a){this._timezones.set(a.timezoneId,a),Oe.TimezoneService.register(a.timezoneId,a.toICALTimezone()),this._pendingAliases=this._pendingAliases.filter(([i,n])=>n!==a.timezoneId?!0:(Oe.TimezoneService.register(i,a.toICALTimezone()),!1))}registerDefaultTimezones(){console.debug(`@nextcloud/calendar-js app is using version ${at.version} of the timezone database`);for(const a in at.zones)if(Object.prototype.hasOwnProperty.call(at.zones,[a])){const i=["BEGIN:VTIMEZONE","TZID:"+a,...at.zones[a].ics,"END:VTIMEZONE"].join(`\r
-`);this.registerTimezoneFromICS(a,i)}for(const a in at.aliases)Object.prototype.hasOwnProperty.call(at.aliases,[a])&&this.registerAlias(a,at.aliases[a].aliasTo)}registerTimezoneFromICS(a,i){const n=new Aa(a,i);this.registerTimezone(n)}registerAlias(a,i){this._aliases.set(a,i);const n=this.getTimezoneForId(i);if(!n){this._pendingAliases.push([a,i]);return}Oe.TimezoneService.register(a,n.toICALTimezone())}unregisterTimezones(a){this._timezones.delete(a),Oe.TimezoneService.remove(a)}unregisterAlias(a){this._aliases.delete(a),this._pendingAliases=this._pendingAliases.filter(([i])=>i!==a),Oe.TimezoneService.remove(a)}clearAllTimezones(){this._aliases=new Map,this._pendingAliases=[],this._timezones=new Map,Oe.TimezoneService.reset(),kt.registerTimezone(Aa.utc),kt.registerTimezone(Aa.floating),kt.registerAlias("GMT",Aa.utc.timezoneId),kt.registerAlias("Z",Aa.utc.timezoneId)}}const kt=new sd;kt.clearAllTimezones();function rd(){return kt}var br={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return(()=>{var i={646:l=>{l.exports=function(_){if(Array.isArray(_)){for(var r=0,f=new Array(_.length);r<_.length;r++)f[r]=_[r];return f}}},713:l=>{l.exports=function(_,r,f){return r in _?Object.defineProperty(_,r,{value:f,enumerable:!0,configurable:!0,writable:!0}):_[r]=f,_}},860:l=>{l.exports=function(_){if(Symbol.iterator in Object(_)||Object.prototype.toString.call(_)==="[object Arguments]")return Array.from(_)}},206:l=>{l.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}},319:(l,_,r)=>{var f=r(646),d=r(860),g=r(206);l.exports=function(h){return f(h)||d(h)||g()}},8:l=>{function _(r){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?l.exports=_=function(f){return typeof f}:l.exports=_=function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},_(r)}l.exports=_}},n={};function o(l){var _=n[l];if(_!==void 0)return _.exports;var r=n[l]={exports:{}};return i[l](r,r.exports,o),r.exports}o.n=l=>{var _=l&&l.__esModule?()=>l.default:()=>l;return o.d(_,{a:_}),_},o.d=(l,_)=>{for(var r in _)o.o(_,r)&&!o.o(l,r)&&Object.defineProperty(l,r,{enumerable:!0,get:_[r]})},o.o=(l,_)=>Object.prototype.hasOwnProperty.call(l,_),o.r=l=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(l,"__esModule",{value:!0})};var s={};return(()=>{o.r(s),o.d(s,{VueSelect:()=>P,default:()=>Z,mixins:()=>z});var l=o(319),_=o.n(l),r=o(8),f=o.n(r),d=o(713),g=o.n(d);const h={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer:function(){this.autoscroll&&this.maybeAdjustScroll()},open:function(c){var S=this;this.autoscroll&&c&&this.$nextTick(function(){return S.maybeAdjustScroll()})}},methods:{maybeAdjustScroll:function(){var c,S=((c=this.$refs.dropdownMenu)===null||c===void 0?void 0:c.children[this.typeAheadPointer])||!1;if(S){var R=this.getDropdownViewport(),B=S.getBoundingClientRect(),U=B.top,Y=B.bottom,te=B.height;if(UR.bottom)return this.$refs.dropdownMenu.scrollTop=S.offsetTop-(R.height-te)}},getDropdownViewport:function(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},F={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){if(this.resetFocusOnOptionsChange){for(var c=0;c=0;c--)if(this.selectable(this.filteredOptions[c])){this.typeAheadPointer=c;break}},typeAheadDown:function(){for(var c=this.typeAheadPointer+1;c0&&arguments[0]!==void 0?arguments[0]:null;return this.mutableLoading=c??!this.mutableLoading}}};function p(c,S,R,B,U,Y,te,ee){var fe,ne=typeof c=="function"?c.options:c;return S&&(ne.render=S,ne.staticRenderFns=R,ne._compiled=!0),{exports:c,options:ne}}const T={Deselect:p({},function(){var c=this.$createElement,S=this._self._c||c;return S("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"10",height:"10"}},[S("path",{attrs:{d:"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z"}})])},[]).exports,OpenIndicator:p({},function(){var c=this.$createElement,S=this._self._c||c;return S("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"10"}},[S("path",{attrs:{d:"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z"}})])},[]).exports},k={inserted:function(c,S,R){var B=R.context;if(B.appendToBody){document.body.appendChild(c);var U=B.$refs.toggle.getBoundingClientRect(),Y=U.height,te=U.top,ee=U.left,fe=U.width,ne=window.scrollX||window.pageXOffset,pe=window.scrollY||window.pageYOffset;c.unbindPosition=B.calculatePosition(c,B,{width:fe+"px",left:ne+ee+"px",top:pe+te+Y+"px"})}},unbind:function(c,S,R){R.context.appendToBody&&(c.unbindPosition&&typeof c.unbindPosition=="function"&&c.unbindPosition(),c.parentNode&&c.parentNode.removeChild(c))}},w=function(c){var S={};return Object.keys(c).sort().forEach(function(R){S[R]=c[R]}),JSON.stringify(S)};var v=0;const M=function(){return++v};function L(c,S){var R=Object.keys(c);if(Object.getOwnPropertySymbols){var B=Object.getOwnPropertySymbols(c);S&&(B=B.filter(function(U){return Object.getOwnPropertyDescriptor(c,U).enumerable})),R.push.apply(R,B)}return R}function O(c){for(var S=1;S=20)return console.error("TimezoneManager.getTimezoneForIdRec() exceeds recursion limits"),null;if(this._aliases.has(a)){const n=this._aliases.get(a);return this._getTimezoneForIdRec(n,i+1)}return null}hasTimezoneForId(a){return this._timezones.has(a)||this._aliases.has(a)}isAlias(a){return!this._timezones.has(a)&&this._aliases.has(a)}listAllTimezones(a=!1){const i=Array.from(this._timezones.keys());return a?i.concat(Array.from(this._aliases.keys())):i}registerTimezone(a){this._timezones.set(a.timezoneId,a),Oe.TimezoneService.register(a.timezoneId,a.toICALTimezone()),this._pendingAliases=this._pendingAliases.filter(([i,n])=>n!==a.timezoneId?!0:(Oe.TimezoneService.register(i,a.toICALTimezone()),!1))}registerDefaultTimezones(){console.debug(`@nextcloud/calendar-js app is using version ${at.version} of the timezone database`);for(const a in at.zones)if(Object.prototype.hasOwnProperty.call(at.zones,[a])){const i=["BEGIN:VTIMEZONE","TZID:"+a,...at.zones[a].ics,"END:VTIMEZONE"].join(`\r
+`);this.registerTimezoneFromICS(a,i)}for(const a in at.aliases)Object.prototype.hasOwnProperty.call(at.aliases,[a])&&this.registerAlias(a,at.aliases[a].aliasTo)}registerTimezoneFromICS(a,i){const n=new Aa(a,i);this.registerTimezone(n)}registerAlias(a,i){this._aliases.set(a,i);const n=this.getTimezoneForId(i);if(!n){this._pendingAliases.push([a,i]);return}Oe.TimezoneService.register(a,n.toICALTimezone())}unregisterTimezones(a){this._timezones.delete(a),Oe.TimezoneService.remove(a)}unregisterAlias(a){this._aliases.delete(a),this._pendingAliases=this._pendingAliases.filter(([i])=>i!==a),Oe.TimezoneService.remove(a)}clearAllTimezones(){this._aliases=new Map,this._pendingAliases=[],this._timezones=new Map,Oe.TimezoneService.reset(),kt.registerTimezone(Aa.utc),kt.registerTimezone(Aa.floating),kt.registerAlias("GMT",Aa.utc.timezoneId),kt.registerAlias("Z",Aa.utc.timezoneId)}}const kt=new rd;kt.clearAllTimezones();function ld(){return kt}var Dr={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return(()=>{var i={646:l=>{l.exports=function(_){if(Array.isArray(_)){for(var r=0,f=new Array(_.length);r<_.length;r++)f[r]=_[r];return f}}},713:l=>{l.exports=function(_,r,f){return r in _?Object.defineProperty(_,r,{value:f,enumerable:!0,configurable:!0,writable:!0}):_[r]=f,_}},860:l=>{l.exports=function(_){if(Symbol.iterator in Object(_)||Object.prototype.toString.call(_)==="[object Arguments]")return Array.from(_)}},206:l=>{l.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}},319:(l,_,r)=>{var f=r(646),d=r(860),g=r(206);l.exports=function(h){return f(h)||d(h)||g()}},8:l=>{function _(r){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?l.exports=_=function(f){return typeof f}:l.exports=_=function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},_(r)}l.exports=_}},n={};function o(l){var _=n[l];if(_!==void 0)return _.exports;var r=n[l]={exports:{}};return i[l](r,r.exports,o),r.exports}o.n=l=>{var _=l&&l.__esModule?()=>l.default:()=>l;return o.d(_,{a:_}),_},o.d=(l,_)=>{for(var r in _)o.o(_,r)&&!o.o(l,r)&&Object.defineProperty(l,r,{enumerable:!0,get:_[r]})},o.o=(l,_)=>Object.prototype.hasOwnProperty.call(l,_),o.r=l=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(l,"__esModule",{value:!0})};var s={};return(()=>{o.r(s),o.d(s,{VueSelect:()=>P,default:()=>Z,mixins:()=>z});var l=o(319),_=o.n(l),r=o(8),f=o.n(r),d=o(713),g=o.n(d);const h={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer:function(){this.autoscroll&&this.maybeAdjustScroll()},open:function(c){var S=this;this.autoscroll&&c&&this.$nextTick(function(){return S.maybeAdjustScroll()})}},methods:{maybeAdjustScroll:function(){var c,S=((c=this.$refs.dropdownMenu)===null||c===void 0?void 0:c.children[this.typeAheadPointer])||!1;if(S){var R=this.getDropdownViewport(),B=S.getBoundingClientRect(),U=B.top,Y=B.bottom,te=B.height;if(UR.bottom)return this.$refs.dropdownMenu.scrollTop=S.offsetTop-(R.height-te)}},getDropdownViewport:function(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},F={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){if(this.resetFocusOnOptionsChange){for(var c=0;c=0;c--)if(this.selectable(this.filteredOptions[c])){this.typeAheadPointer=c;break}},typeAheadDown:function(){for(var c=this.typeAheadPointer+1;c0&&arguments[0]!==void 0?arguments[0]:null;return this.mutableLoading=c??!this.mutableLoading}}};function p(c,S,R,B,U,Y,te,ee){var fe,ne=typeof c=="function"?c.options:c;return S&&(ne.render=S,ne.staticRenderFns=R,ne._compiled=!0),{exports:c,options:ne}}const T={Deselect:p({},function(){var c=this.$createElement,S=this._self._c||c;return S("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"10",height:"10"}},[S("path",{attrs:{d:"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z"}})])},[]).exports,OpenIndicator:p({},function(){var c=this.$createElement,S=this._self._c||c;return S("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"10"}},[S("path",{attrs:{d:"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z"}})])},[]).exports},k={inserted:function(c,S,R){var B=R.context;if(B.appendToBody){document.body.appendChild(c);var U=B.$refs.toggle.getBoundingClientRect(),Y=U.height,te=U.top,ee=U.left,fe=U.width,ne=window.scrollX||window.pageXOffset,pe=window.scrollY||window.pageYOffset;c.unbindPosition=B.calculatePosition(c,B,{width:fe+"px",left:ne+ee+"px",top:pe+te+Y+"px"})}},unbind:function(c,S,R){R.context.appendToBody&&(c.unbindPosition&&typeof c.unbindPosition=="function"&&c.unbindPosition(),c.parentNode&&c.parentNode.removeChild(c))}},w=function(c){var S={};return Object.keys(c).sort().forEach(function(R){S[R]=c[R]}),JSON.stringify(S)};var v=0;const M=function(){return++v};function L(c,S){var R=Object.keys(c);if(Object.getOwnPropertySymbols){var B=Object.getOwnPropertySymbols(c);S&&(B=B.filter(function(U){return Object.getOwnPropertyDescriptor(c,U).enumerable})),R.push.apply(R,B)}return R}function O(c){for(var S=1;S-1}},filter:{type:Function,default:function(c,S){var R=this;return c.filter(function(B){var U=R.getOptionLabel(B);return typeof U=="number"&&(U=U.toString()),R.filterBy(B,U,S)})}},createOption:{type:Function,default:function(c){return f()(this.optionList[0])==="object"?g()({},this.label,c):c}},resetFocusOnOptionsChange:{type:Boolean,default:!0},resetOnOptionsChange:{default:!1,validator:function(c){return["function","boolean"].includes(f()(c))}},clearSearchOnBlur:{type:Function,default:function(c){var S=c.clearSearchOnSelect,R=c.multiple;return S&&!R}},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1},selectOnKeyCodes:{type:Array,default:function(){return[13]}},searchInputQuerySelector:{type:String,default:"[type=search]"},mapKeydown:{type:Function,default:function(c,S){return c}},appendToBody:{type:Boolean,default:!1},calculatePosition:{type:Function,default:function(c,S,R){var B=R.width,U=R.top,Y=R.left;c.style.top=U,c.style.left=Y,c.style.width=B}},dropdownShouldOpen:{type:Function,default:function(c){var S=c.noDrop,R=c.open,B=c.mutableLoading;return!S&&R&&!B}},keyboardFocusBorder:{type:Boolean,default:!1},uid:{type:[String,Number],default:function(){return M()}}},data:function(){return{search:"",open:!1,isComposing:!1,isKeyboardNavigation:!1,pushedTags:[],_value:[]}},computed:{isTrackingValues:function(){return this.value===void 0||this.$options.propsData.hasOwnProperty("reduce")},selectedValue:function(){var c=this.value;return this.isTrackingValues&&(c=this.$data._value),c!=null&&c!==""?[].concat(c):[]},optionList:function(){return this.options.concat(this.pushTags?this.pushedTags:[])},searchEl:function(){return this.$scopedSlots.search?this.$refs.selectedOptions.querySelector(this.searchInputQuerySelector):this.$refs.search},scope:function(){var c=this,S={search:this.search,loading:this.loading,searching:this.searching,filteredOptions:this.filteredOptions};return{search:{attributes:O({id:this.inputId,disabled:this.disabled,placeholder:this.searchPlaceholder,tabindex:this.tabindex,readonly:!this.searchable,role:"combobox","aria-autocomplete":"list","aria-label":this.ariaLabelCombobox,"aria-controls":"vs-".concat(this.uid,"__listbox"),"aria-owns":"vs-".concat(this.uid,"__listbox"),"aria-expanded":this.dropdownOpen.toString(),ref:"search",type:"search",autocomplete:this.autocomplete,value:this.search},this.dropdownOpen&&this.filteredOptions[this.typeAheadPointer]?{"aria-activedescendant":"vs-".concat(this.uid,"__option-").concat(this.typeAheadPointer)}:{}),events:{compositionstart:function(){return c.isComposing=!0},compositionend:function(){return c.isComposing=!1},keydown:this.onSearchKeyDown,keypress:this.onSearchKeyPress,blur:this.onSearchBlur,focus:this.onSearchFocus,input:function(R){return c.search=R.target.value}}},spinner:{loading:this.mutableLoading},noOptions:{search:this.search,loading:this.mutableLoading,searching:this.searching},openIndicator:{attributes:{ref:"openIndicator",role:"presentation",class:"vs__open-indicator"}},listHeader:S,listFooter:S,header:O({},S,{deselect:this.deselect}),footer:O({},S,{deselect:this.deselect})}},childComponents:function(){return O({},T,{},this.components)},stateClasses:function(){return{"vs--open":this.dropdownOpen,"vs--single":!this.multiple,"vs--multiple":this.multiple,"vs--searching":this.searching&&!this.noDrop,"vs--searchable":this.searchable&&!this.noDrop,"vs--unsearchable":!this.searchable,"vs--loading":this.mutableLoading,"vs--disabled":this.disabled}},searching:function(){return!!this.search},dropdownOpen:function(){return this.dropdownShouldOpen(this)},searchPlaceholder:function(){return this.isValueEmpty&&this.placeholder?this.placeholder:void 0},filteredOptions:function(){var c=this,S=function(Y){return c.limit!==null?Y.slice(0,c.limit):Y},R=[].concat(this.optionList);if(!this.filterable&&!this.taggable)return S(R);var B=this.search.length?this.filter(R,this.search,this):R;if(this.taggable&&this.search.length){var U=this.createOption(this.search);this.optionExists(U)||B.unshift(U)}return S(B)},isValueEmpty:function(){return this.selectedValue.length===0},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&!this.isValueEmpty}},watch:{options:function(c,S){var R=this;!this.taggable&&(typeof R.resetOnOptionsChange=="function"?R.resetOnOptionsChange(c,S,R.selectedValue):R.resetOnOptionsChange)&&this.clearSelection(),this.value&&this.isTrackingValues&&this.setInternalValueFromOptions(this.value)},value:{immediate:!0,handler:function(c){this.isTrackingValues&&this.setInternalValueFromOptions(c)}},multiple:function(){this.clearSelection()},open:function(c){this.$emit(c?"open":"close")},search:function(c){c.length&&(this.open=!0)}},created:function(){this.mutableLoading=this.loading,this.$on("option:created",this.pushTag)},methods:{setInternalValueFromOptions:function(c){var S=this;Array.isArray(c)?this.$data._value=c.map(function(R){return S.findOptionFromReducedValue(R)}):this.$data._value=this.findOptionFromReducedValue(c)},select:function(c){this.$emit("option:selecting",c),this.isOptionSelected(c)?this.deselectFromDropdown&&(this.clearable||this.multiple&&this.selectedValue.length>1)&&this.deselect(c):(this.taggable&&!this.optionExists(c)&&this.$emit("option:created",c),this.multiple&&(c=this.selectedValue.concat(c)),this.updateValue(c),this.$emit("option:selected",c)),this.onAfterSelect(c)},deselect:function(c){var S=this;this.$emit("option:deselecting",c),this.updateValue(this.selectedValue.filter(function(R){return!S.optionComparator(R,c)})),this.$emit("option:deselected",c)},keyboardDeselect:function(c,S){var R,B;this.deselect(c);var U=(R=this.$refs.deselectButtons)===null||R===void 0?void 0:R[S+1],Y=(B=this.$refs.deselectButtons)===null||B===void 0?void 0:B[S-1],te=U??Y;te?te.focus():this.searchEl.focus()},clearSelection:function(){this.updateValue(this.multiple?[]:null),this.searchEl.focus()},onAfterSelect:function(c){var S=this;this.closeOnSelect&&(this.open=!this.open),this.clearSearchOnSelect&&(this.search=""),this.noDrop&&this.multiple&&this.$nextTick(function(){return S.$refs.search.focus()})},updateValue:function(c){var S=this;this.value===void 0&&(this.$data._value=c),c!==null&&(c=Array.isArray(c)?c.map(function(R){return S.reduce(R)}):this.reduce(c)),this.$emit("input",c)},toggleDropdown:function(c){var S=c.target!==this.searchEl;S&&c.preventDefault();var R=[].concat(_()(this.$refs.deselectButtons||[]),_()([this.$refs.clearButton]));this.searchEl===void 0||R.filter(Boolean).some(function(B){return B.contains(c.target)||B===c.target})?c.preventDefault():this.open&&S?this.searchEl.blur():this.disabled||(this.open=!0,this.searchEl.focus())},isOptionSelected:function(c){var S=this;return this.selectedValue.some(function(R){return S.optionComparator(R,c)})},isOptionDeselectable:function(c){return this.isOptionSelected(c)&&this.deselectFromDropdown},hasKeyboardFocusBorder:function(c){return!(!this.keyboardFocusBorder||!this.isKeyboardNavigation)&&c===this.typeAheadPointer},optionComparator:function(c,S){return this.getOptionKey(c)===this.getOptionKey(S)},findOptionFromReducedValue:function(c){var S=this,R=[].concat(_()(this.options),_()(this.pushedTags)).filter(function(B){return JSON.stringify(S.reduce(B))===JSON.stringify(c)});return R.length===1?R[0]:R.find(function(B){return S.optionComparator(B,S.$data._value)})||c},closeSearchOptions:function(){this.open=!1,this.$emit("search:blur")},maybeDeleteValue:function(){if(!this.searchEl.value.length&&this.selectedValue&&this.selectedValue.length&&this.clearable){var c=null;this.multiple&&(c=_()(this.selectedValue.slice(0,this.selectedValue.length-1))),this.updateValue(c)}},optionExists:function(c){var S=this;return this.optionList.some(function(R){return S.optionComparator(R,c)})},optionAriaSelected:function(c){return this.selectable(c)?String(this.isOptionSelected(c)):null},normalizeOptionForSlot:function(c){return f()(c)==="object"?c:g()({},this.label,c)},pushTag:function(c){this.pushedTags.push(c)},onEscape:function(){this.search.length?this.search="":this.open=!1},onSearchBlur:function(){if(!this.mousedown||this.searching){var c=this.clearSearchOnSelect,S=this.multiple;return this.clearSearchOnBlur({clearSearchOnSelect:c,multiple:S})&&(this.search=""),void this.closeSearchOptions()}this.mousedown=!1,this.search.length!==0||this.options.length!==0||this.closeSearchOptions()},onSearchFocus:function(){this.open=!0,this.$emit("search:focus")},onMousedown:function(){this.mousedown=!0},onMouseUp:function(){this.mousedown=!1},onMouseMove:function(c,S){this.isKeyboardNavigation=!1,this.selectable(c)&&(this.typeAheadPointer=S)},onSearchKeyDown:function(c){var S=this,R=function(Y){if(Y.preventDefault(),S.open)return!S.isComposing&&S.typeAheadSelect();S.open=!0},B={8:function(Y){return S.maybeDeleteValue()},9:function(Y){return S.onTab()},27:function(Y){return S.onEscape()},38:function(Y){if(Y.preventDefault(),S.isKeyboardNavigation=!0,S.open)return S.typeAheadUp();S.open=!0},40:function(Y){if(Y.preventDefault(),S.isKeyboardNavigation=!0,S.open)return S.typeAheadDown();S.open=!0}};this.selectOnKeyCodes.forEach(function(Y){return B[Y]=R});var U=this.mapKeydown(B,this);if(typeof U[c.keyCode]=="function")return U[c.keyCode](c)},onSearchKeyPress:function(c){this.open||c.keyCode!==32||(c.preventDefault(),this.open=!0)}}},function(){var c=this,S=c.$createElement,R=c._self._c||S;return R("div",{staticClass:"v-select",class:c.stateClasses,attrs:{id:"v-select-"+c.uid,dir:c.dir}},[c._t("header",null,null,c.scope.header),c._v(" "),R("div",{ref:"toggle",staticClass:"vs__dropdown-toggle"},[R("div",{ref:"selectedOptions",staticClass:"vs__selected-options",on:{mousedown:c.toggleDropdown}},[c._l(c.selectedValue,function(B,U){return c._t("selected-option-container",[R("span",{key:c.getOptionKey(B),staticClass:"vs__selected"},[c._t("selected-option",[c._v(`
`+c._s(c.getOptionLabel(B))+`
@@ -3868,7 +3868,7 @@ https://vue-select.org/api/props.html#getoptionkey`,c,S)}}},onTab:{type:Function
`+c._s(c.getOptionLabel(B))+`
`)],null,c.normalizeOptionForSlot(B))],2)}),c._v(" "),c.filteredOptions.length===0?R("li",{staticClass:"vs__no-options"},[c._t("no-options",[c._v(`
Sorry, no matching options.
- `)],null,c.scope.noOptions)],2):c._e(),c._v(" "),c._t("list-footer",null,null,c.scope.listFooter)],2):R("ul",{staticStyle:{display:"none",visibility:"hidden"},attrs:{id:"vs-"+c.uid+"__listbox",role:"listbox","aria-label":c.ariaLabelListbox}})]),c._v(" "),c._t("footer",null,null,c.scope.footer)],2)},[]).exports,z={ajax:m,pointer:F,pointerScroll:h},Z=P})(),s})()})})(br);var tt=br.exports;const Gi=Math.min,_t=Math.max,Ui=Math.round,bi=Math.floor,$a=e=>({x:e,y:e}),ld={left:"right",right:"left",bottom:"top",top:"bottom"},_d={start:"end",end:"start"};function Io(e,a,i){return _t(e,Gi(a,i))}function vt(e,a){return typeof e=="function"?e(a):e}function Wa(e){return e.split("-")[0]}function N0(e){return e.split("-")[1]}function Jn(e){return e==="x"?"y":"x"}function Dr(e){return e==="y"?"height":"width"}function ht(e){return["top","bottom"].includes(Wa(e))?"y":"x"}function Tr(e){return Jn(ht(e))}function dd(e,a,i){i===void 0&&(i=!1);const n=N0(e),o=Tr(e),s=Dr(o);let l=o==="x"?n===(i?"end":"start")?"right":"left":n==="start"?"bottom":"top";return a.reference[s]>a.floating[s]&&(l=zi(l)),[l,zi(l)]}function fd(e){const a=zi(e);return[pn(e),a,pn(a)]}function pn(e){return e.replace(/start|end/g,a=>_d[a])}function gd(e,a,i){const n=["left","right"],o=["right","left"],s=["top","bottom"],l=["bottom","top"];switch(e){case"top":case"bottom":return i?a?o:n:a?n:o;case"left":case"right":return a?s:l;default:return[]}}function hd(e,a,i,n){const o=N0(e);let s=gd(Wa(e),i==="start",n);return o&&(s=s.map(l=>l+"-"+o),a&&(s=s.concat(s.map(pn)))),s}function zi(e){return e.replace(/left|right|bottom|top/g,a=>ld[a])}function Fd(e){return{top:0,right:0,bottom:0,left:0,...e}}function ud(e){return typeof e!="number"?Fd(e):{top:e,right:e,bottom:e,left:e}}function Vi(e){const{x:a,y:i,width:n,height:o}=e;return{width:n,height:o,top:i,left:a,right:a+n,bottom:i+o,x:a,y:i}}function Ho(e,a,i){let{reference:n,floating:o}=e;const s=ht(a),l=Tr(a),_=Dr(l),r=Wa(a),f=s==="y",d=n.x+n.width/2-o.width/2,g=n.y+n.height/2-o.height/2,h=n[_]/2-o[_]/2;let F;switch(r){case"top":F={x:d,y:n.y-o.height};break;case"bottom":F={x:d,y:n.y+n.height};break;case"right":F={x:n.x+n.width,y:g};break;case"left":F={x:n.x-o.width,y:g};break;default:F={x:n.x,y:n.y}}switch(N0(a)){case"start":F[l]-=h*(i&&f?-1:1);break;case"end":F[l]+=h*(i&&f?-1:1);break}return F}const cd=async(e,a,i)=>{const{placement:n="bottom",strategy:o="absolute",middleware:s=[],platform:l}=i,_=s.filter(Boolean),r=await(l.isRTL==null?void 0:l.isRTL(a));let f=await l.getElementRects({reference:e,floating:a,strategy:o}),{x:d,y:g}=Ho(f,n,r),h=n,F={},m=0;for(let p=0;p<_.length;p++){const{name:T,fn:k}=_[p],{x:w,y:v,data:M,reset:L}=await k({x:d,y:g,initialPlacement:n,placement:h,strategy:o,middlewareData:F,rects:f,platform:l,elements:{reference:e,floating:a}});d=w??d,g=v??g,F={...F,[T]:{...F[T],...M}},L&&m<=50&&(m++,typeof L=="object"&&(L.placement&&(h=L.placement),L.rects&&(f=L.rects===!0?await l.getElementRects({reference:e,floating:a,strategy:o}):L.rects),{x:d,y:g}=Ho(f,h,r)),p=-1)}return{x:d,y:g,placement:h,strategy:o,middlewareData:F}};async function yr(e,a){var i;a===void 0&&(a={});const{x:n,y:o,platform:s,rects:l,elements:_,strategy:r}=e,{boundary:f="clippingAncestors",rootBoundary:d="viewport",elementContext:g="floating",altBoundary:h=!1,padding:F=0}=vt(a,e),m=ud(F),p=_[h?g==="floating"?"reference":"floating":g],T=Vi(await s.getClippingRect({element:(i=await(s.isElement==null?void 0:s.isElement(p)))==null||i?p:p.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(_.floating)),boundary:f,rootBoundary:d,strategy:r})),k=g==="floating"?{x:n,y:o,width:l.floating.width,height:l.floating.height}:l.reference,w=await(s.getOffsetParent==null?void 0:s.getOffsetParent(_.floating)),v=await(s.isElement==null?void 0:s.isElement(w))?await(s.getScale==null?void 0:s.getScale(w))||{x:1,y:1}:{x:1,y:1},M=Vi(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:_,rect:k,offsetParent:w,strategy:r}):k);return{top:(T.top-M.top+m.top)/v.y,bottom:(M.bottom-T.bottom+m.bottom)/v.y,left:(T.left-M.left+m.left)/v.x,right:(M.right-T.right+m.right)/v.x}}const md=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(a){var i,n;const{placement:o,middlewareData:s,rects:l,initialPlacement:_,platform:r,elements:f}=a,{mainAxis:d=!0,crossAxis:g=!0,fallbackPlacements:h,fallbackStrategy:F="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:p=!0,...T}=vt(e,a);if((i=s.arrow)!=null&&i.alignmentOffset)return{};const k=Wa(o),w=ht(_),v=Wa(_)===_,M=await(r.isRTL==null?void 0:r.isRTL(f.floating)),L=h||(v||!p?[zi(_)]:fd(_)),O=m!=="none";!h&&O&&L.push(...hd(_,p,m,M));const P=[_,...L],z=await yr(a,T),Z=[];let c=((n=s.flip)==null?void 0:n.overflows)||[];if(d&&Z.push(z[k]),g){const U=dd(o,l,M);Z.push(z[U[0]],z[U[1]])}if(c=[...c,{placement:o,overflows:Z}],!Z.every(U=>U<=0)){var S,R;const U=(((S=s.flip)==null?void 0:S.index)||0)+1,Y=P[U];if(Y)return{data:{index:U,overflows:c},reset:{placement:Y}};let te=(R=c.filter(ee=>ee.overflows[0]<=0).sort((ee,fe)=>ee.overflows[1]-fe.overflows[1])[0])==null?void 0:R.placement;if(!te)switch(F){case"bestFit":{var B;const ee=(B=c.filter(fe=>{if(O){const ne=ht(fe.placement);return ne===w||ne==="y"}return!0}).map(fe=>[fe.placement,fe.overflows.filter(ne=>ne>0).reduce((ne,pe)=>ne+pe,0)]).sort((fe,ne)=>fe[1]-ne[1])[0])==null?void 0:B[0];ee&&(te=ee);break}case"initialPlacement":te=_;break}if(o!==te)return{reset:{placement:te}}}return{}}}};async function pd(e,a){const{placement:i,platform:n,elements:o}=e,s=await(n.isRTL==null?void 0:n.isRTL(o.floating)),l=Wa(i),_=N0(i),r=ht(i)==="y",f=["left","top"].includes(l)?-1:1,d=s&&r?-1:1,g=vt(a,e);let{mainAxis:h,crossAxis:F,alignmentAxis:m}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return _&&typeof m=="number"&&(F=_==="end"?m*-1:m),r?{x:F*d,y:h*f}:{x:h*f,y:F*d}}const bd=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(a){var i,n;const{x:o,y:s,placement:l,middlewareData:_}=a,r=await pd(a,e);return l===((i=_.offset)==null?void 0:i.placement)&&(n=_.arrow)!=null&&n.alignmentOffset?{}:{x:o+r.x,y:s+r.y,data:{...r,placement:l}}}}},Dd=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(a){const{x:i,y:n,placement:o}=a,{mainAxis:s=!0,crossAxis:l=!1,limiter:_={fn:T=>{let{x:k,y:w}=T;return{x:k,y:w}}},...r}=vt(e,a),f={x:i,y:n},d=await yr(a,r),g=ht(Wa(o)),h=Jn(g);let F=f[h],m=f[g];if(s){const T=h==="y"?"top":"left",k=h==="y"?"bottom":"right",w=F+d[T],v=F-d[k];F=Io(w,F,v)}if(l){const T=g==="y"?"top":"left",k=g==="y"?"bottom":"right",w=m+d[T],v=m-d[k];m=Io(w,m,v)}const p=_.fn({...a,[h]:F,[g]:m});return{...p,data:{x:p.x-i,y:p.y-n,enabled:{[h]:s,[g]:l}}}}}},Td=function(e){return e===void 0&&(e={}),{options:e,fn(a){const{x:i,y:n,placement:o,rects:s,middlewareData:l}=a,{offset:_=0,mainAxis:r=!0,crossAxis:f=!0}=vt(e,a),d={x:i,y:n},g=ht(o),h=Jn(g);let F=d[h],m=d[g];const p=vt(_,a),T=typeof p=="number"?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(r){const v=h==="y"?"height":"width",M=s.reference[h]-s.floating[v]+T.mainAxis,L=s.reference[h]+s.reference[v]-T.mainAxis;FL&&(F=L)}if(f){var k,w;const v=h==="y"?"width":"height",M=["top","left"].includes(Wa(o)),L=s.reference[g]-s.floating[v]+(M&&((k=l.offset)==null?void 0:k[g])||0)+(M?0:T.crossAxis),O=s.reference[g]+s.reference[v]+(M?0:((w=l.offset)==null?void 0:w[g])||0)-(M?T.crossAxis:0);mO&&(m=O)}return{[h]:F,[g]:m}}}};function x0(){return typeof window<"u"}function Yt(e){return Er(e)?(e.nodeName||"").toLowerCase():"#document"}function aa(e){var a;return(e==null||(a=e.ownerDocument)==null?void 0:a.defaultView)||window}function ba(e){var a;return(a=(Er(e)?e.ownerDocument:e.document)||window.document)==null?void 0:a.documentElement}function Er(e){return x0()?e instanceof Node||e instanceof aa(e).Node:!1}function _a(e){return x0()?e instanceof Element||e instanceof aa(e).Element:!1}function ma(e){return x0()?e instanceof HTMLElement||e instanceof aa(e).HTMLElement:!1}function Po(e){return!x0()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof aa(e).ShadowRoot}function di(e){const{overflow:a,overflowX:i,overflowY:n,display:o}=da(e);return/auto|scroll|overlay|hidden|clip/.test(a+n+i)&&!["inline","contents"].includes(o)}function yd(e){return["table","td","th"].includes(Yt(e))}function M0(e){return[":popover-open",":modal"].some(a=>{try{return e.matches(a)}catch{return!1}})}function Xn(e){const a=eo(),i=_a(e)?da(e):e;return i.transform!=="none"||i.perspective!=="none"||(i.containerType?i.containerType!=="normal":!1)||!a&&(i.backdropFilter?i.backdropFilter!=="none":!1)||!a&&(i.filter?i.filter!=="none":!1)||["transform","perspective","filter"].some(n=>(i.willChange||"").includes(n))||["paint","layout","strict","content"].some(n=>(i.contain||"").includes(n))}function Ed(e){let a=Qa(e);for(;ma(a)&&!Rt(a);){if(Xn(a))return a;if(M0(a))return null;a=Qa(a)}return null}function eo(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Rt(e){return["html","body","#document"].includes(Yt(e))}function da(e){return aa(e).getComputedStyle(e)}function j0(e){return _a(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Qa(e){if(Yt(e)==="html")return e;const a=e.assignedSlot||e.parentNode||Po(e)&&e.host||ba(e);return Po(a)?a.host:a}function kr(e){const a=Qa(e);return Rt(a)?e.ownerDocument?e.ownerDocument.body:e.body:ma(a)&&di(a)?a:kr(a)}function ni(e,a,i){var n;a===void 0&&(a=[]),i===void 0&&(i=!0);const o=kr(e),s=o===((n=e.ownerDocument)==null?void 0:n.body),l=aa(o);if(s){const _=bn(l);return a.concat(l,l.visualViewport||[],di(o)?o:[],_&&i?ni(_):[])}return a.concat(o,ni(o,[],i))}function bn(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ar(e){const a=da(e);let i=parseFloat(a.width)||0,n=parseFloat(a.height)||0;const o=ma(e),s=o?e.offsetWidth:i,l=o?e.offsetHeight:n,_=Ui(i)!==s||Ui(n)!==l;return _&&(i=s,n=l),{width:i,height:n,$:_}}function ao(e){return _a(e)?e:e.contextElement}function St(e){const a=ao(e);if(!ma(a))return $a(1);const i=a.getBoundingClientRect(),{width:n,height:o,$:s}=Ar(a);let l=(s?Ui(i.width):i.width)/n,_=(s?Ui(i.height):i.height)/o;return(!l||!Number.isFinite(l))&&(l=1),(!_||!Number.isFinite(_))&&(_=1),{x:l,y:_}}const kd=$a(0);function wr(e){const a=aa(e);return!eo()||!a.visualViewport?kd:{x:a.visualViewport.offsetLeft,y:a.visualViewport.offsetTop}}function Ad(e,a,i){return a===void 0&&(a=!1),!i||a&&i!==aa(e)?!1:a}function Ft(e,a,i,n){a===void 0&&(a=!1),i===void 0&&(i=!1);const o=e.getBoundingClientRect(),s=ao(e);let l=$a(1);a&&(n?_a(n)&&(l=St(n)):l=St(e));const _=Ad(s,i,n)?wr(s):$a(0);let r=(o.left+_.x)/l.x,f=(o.top+_.y)/l.y,d=o.width/l.x,g=o.height/l.y;if(s){const h=aa(s),F=n&&_a(n)?aa(n):n;let m=h,p=bn(m);for(;p&&n&&F!==m;){const T=St(p),k=p.getBoundingClientRect(),w=da(p),v=k.left+(p.clientLeft+parseFloat(w.paddingLeft))*T.x,M=k.top+(p.clientTop+parseFloat(w.paddingTop))*T.y;r*=T.x,f*=T.y,d*=T.x,g*=T.y,r+=v,f+=M,m=aa(p),p=bn(m)}}return Vi({width:d,height:g,x:r,y:f})}function wd(e){let{elements:a,rect:i,offsetParent:n,strategy:o}=e;const s=o==="fixed",l=ba(n),_=a?M0(a.floating):!1;if(n===l||_&&s)return i;let r={scrollLeft:0,scrollTop:0},f=$a(1);const d=$a(0),g=ma(n);if((g||!g&&!s)&&((Yt(n)!=="body"||di(l))&&(r=j0(n)),ma(n))){const h=Ft(n);f=St(n),d.x=h.x+n.clientLeft,d.y=h.y+n.clientTop}return{width:i.width*f.x,height:i.height*f.y,x:i.x*f.x-r.scrollLeft*f.x+d.x,y:i.y*f.y-r.scrollTop*f.y+d.y}}function Sd(e){return Array.from(e.getClientRects())}function Dn(e,a){const i=j0(e).scrollLeft;return a?a.left+i:Ft(ba(e)).left+i}function vd(e){const a=ba(e),i=j0(e),n=e.ownerDocument.body,o=_t(a.scrollWidth,a.clientWidth,n.scrollWidth,n.clientWidth),s=_t(a.scrollHeight,a.clientHeight,n.scrollHeight,n.clientHeight);let l=-i.scrollLeft+Dn(e);const _=-i.scrollTop;return da(n).direction==="rtl"&&(l+=_t(a.clientWidth,n.clientWidth)-o),{width:o,height:s,x:l,y:_}}function Rd(e,a){const i=aa(e),n=ba(e),o=i.visualViewport;let s=n.clientWidth,l=n.clientHeight,_=0,r=0;if(o){s=o.width,l=o.height;const f=eo();(!f||f&&a==="fixed")&&(_=o.offsetLeft,r=o.offsetTop)}return{width:s,height:l,x:_,y:r}}function Cd(e,a){const i=Ft(e,!0,a==="fixed"),n=i.top+e.clientTop,o=i.left+e.clientLeft,s=ma(e)?St(e):$a(1),l=e.clientWidth*s.x,_=e.clientHeight*s.y,r=o*s.x,f=n*s.y;return{width:l,height:_,x:r,y:f}}function Go(e,a,i){let n;if(a==="viewport")n=Rd(e,i);else if(a==="document")n=vd(ba(e));else if(_a(a))n=Cd(a,i);else{const o=wr(e);n={...a,x:a.x-o.x,y:a.y-o.y}}return Vi(n)}function Sr(e,a){const i=Qa(e);return i===a||!_a(i)||Rt(i)?!1:da(i).position==="fixed"||Sr(i,a)}function Od(e,a){const i=a.get(e);if(i)return i;let n=ni(e,[],!1).filter(_=>_a(_)&&Yt(_)!=="body"),o=null;const s=da(e).position==="fixed";let l=s?Qa(e):e;for(;_a(l)&&!Rt(l);){const _=da(l),r=Xn(l);!r&&_.position==="fixed"&&(o=null),(s?!r&&!o:!r&&_.position==="static"&&o&&["absolute","fixed"].includes(o.position)||di(l)&&!r&&Sr(e,l))?n=n.filter(f=>f!==l):o=_,l=Qa(l)}return a.set(e,n),n}function Bd(e){let{element:a,boundary:i,rootBoundary:n,strategy:o}=e;const s=[...i==="clippingAncestors"?M0(a)?[]:Od(a,this._c):[].concat(i),n],l=s[0],_=s.reduce((r,f)=>{const d=Go(a,f,o);return r.top=_t(d.top,r.top),r.right=Gi(d.right,r.right),r.bottom=Gi(d.bottom,r.bottom),r.left=_t(d.left,r.left),r},Go(a,l,o));return{width:_.right-_.left,height:_.bottom-_.top,x:_.left,y:_.top}}function Nd(e){const{width:a,height:i}=Ar(e);return{width:a,height:i}}function xd(e,a,i){const n=ma(a),o=ba(a),s=i==="fixed",l=Ft(e,!0,s,a);let _={scrollLeft:0,scrollTop:0};const r=$a(0);if(n||!n&&!s)if((Yt(a)!=="body"||di(o))&&(_=j0(a)),n){const F=Ft(a,!0,s,a);r.x=F.x+a.clientLeft,r.y=F.y+a.clientTop}else o&&(r.x=Dn(o));let f=0,d=0;if(o&&!n&&!s){const F=o.getBoundingClientRect();d=F.top+_.scrollTop,f=F.left+_.scrollLeft-Dn(o,F)}const g=l.left+_.scrollLeft-r.x-f,h=l.top+_.scrollTop-r.y-d;return{x:g,y:h,width:l.width,height:l.height}}function J0(e){return da(e).position==="static"}function Uo(e,a){if(!ma(e)||da(e).position==="fixed")return null;if(a)return a(e);let i=e.offsetParent;return ba(e)===i&&(i=i.ownerDocument.body),i}function vr(e,a){const i=aa(e);if(M0(e))return i;if(!ma(e)){let o=Qa(e);for(;o&&!Rt(o);){if(_a(o)&&!J0(o))return o;o=Qa(o)}return i}let n=Uo(e,a);for(;n&&yd(n)&&J0(n);)n=Uo(n,a);return n&&Rt(n)&&J0(n)&&!Xn(n)?i:n||Ed(e)||i}const Md=async function(e){const a=this.getOffsetParent||vr,i=this.getDimensions,n=await i(e.floating);return{reference:xd(e.reference,await a(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function jd(e){return da(e).direction==="rtl"}const Yd={convertOffsetParentRelativeRectToViewportRelativeRect:wd,getDocumentElement:ba,getClippingRect:Bd,getOffsetParent:vr,getElementRects:Md,getClientRects:Sd,getDimensions:Nd,getScale:St,isElement:_a,isRTL:jd};function qd(e,a){let i=null,n;const o=ba(e);function s(){var _;clearTimeout(n),(_=i)==null||_.disconnect(),i=null}function l(_,r){_===void 0&&(_=!1),r===void 0&&(r=1),s();const{left:f,top:d,width:g,height:h}=e.getBoundingClientRect();if(_||a(),!g||!h)return;const F=bi(d),m=bi(o.clientWidth-(f+g)),p=bi(o.clientHeight-(d+h)),T=bi(f),k={rootMargin:-F+"px "+-m+"px "+-p+"px "+-T+"px",threshold:_t(0,Gi(1,r))||1};let w=!0;function v(M){const L=M[0].intersectionRatio;if(L!==r){if(!w)return l();L?l(!1,L):n=setTimeout(()=>{l(!1,1e-7)},1e3)}w=!1}try{i=new IntersectionObserver(v,{...k,root:o.ownerDocument})}catch{i=new IntersectionObserver(v,k)}i.observe(e)}return l(!0),s}function Ld(e,a,i,n){n===void 0&&(n={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:_=typeof IntersectionObserver=="function",animationFrame:r=!1}=n,f=ao(e),d=o||s?[...f?ni(f):[],...ni(a)]:[];d.forEach(k=>{o&&k.addEventListener("scroll",i,{passive:!0}),s&&k.addEventListener("resize",i)});const g=f&&_?qd(f,i):null;let h=-1,F=null;l&&(F=new ResizeObserver(k=>{let[w]=k;w&&w.target===f&&F&&(F.unobserve(a),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var v;(v=F)==null||v.observe(a)})),i()}),f&&!r&&F.observe(f),F.observe(a));let m,p=r?Ft(e):null;r&&T();function T(){const k=Ft(e);p&&(k.x!==p.x||k.y!==p.y||k.width!==p.width||k.height!==p.height)&&i(),p=k,m=requestAnimationFrame(T)}return i(),()=>{var k;d.forEach(w=>{o&&w.removeEventListener("scroll",i),s&&w.removeEventListener("resize",i)}),g?.(),(k=F)==null||k.disconnect(),F=null,r&&cancelAnimationFrame(m)}}const Zd=bd,Id=Dd,Hd=md,Pd=Td,Gd=(e,a,i)=>{const n=new Map,o={platform:Yd,...i},s={...o.platform,_c:n};return cd(e,a,{...o,platform:s})},Ud={name:"ChevronDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var zd=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon chevron-down-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Vd=[],$d=ie(Ud,zd,Vd,!1,null,null);const Rr=$d.exports,Cr=(e,a)=>{const i=[];let n=0,o=e.toLowerCase().indexOf(a.toLowerCase(),n),s=0;for(;o>-1&&s[]}},computed:{ranges(){let e=[];return!this.search&&this.highlight.length===0||(this.highlight.length>0?e=this.highlight:e=Cr(this.text,this.search),e.forEach((a,i)=>{a.end(i.start0&&a.push({start:i.start<0?0:i.start,end:i.end>this.text.length?this.text.length:i.end}),a),[]),e.sort((a,i)=>a.start-i.start),e=e.reduce((a,i)=>{if(!a.length)a.push(i);else{const n=a.length-1;a[n].end>=i.start?a[n]={start:a[n].start,end:Math.max(a[n].end,i.end)}:a.push(i)}return a},[])),e},chunks(){if(this.ranges.length===0)return[{start:0,end:this.text.length,highlight:!1,text:this.text}];const e=[];let a=0,i=0;for(;a=this.ranges.length&&aa.highlight?e("strong",{},a.text):a.text)):e("span",{},this.text)}},Qd=null,Kd=null;var Jd=ie(Wd,Qd,Kd,!1,null,null);const Y0=Jd.exports,Xd={name:"NcEllipsisedOption",components:{NcHighlight:Y0},props:{name:{type:String,default:""},search:{type:String,default:""}},computed:{needsTruncate(){return this.name&&this.name.length>=10},split(){return this.name.length-Math.min(Math.floor(this.name.length/2),10)},part1(){return this.needsTruncate?this.name.slice(0,this.split):this.name},part2(){return this.needsTruncate?this.name.slice(this.split):""},highlight1(){return this.search?Cr(this.name,this.search):[]},highlight2(){return this.highlight1.map(e=>({start:e.start-this.split,end:e.end-this.split}))}}};var ef=function(){var e=this,a=e._self._c;return a("span",{staticClass:"name-parts",attrs:{dir:"auto",title:e.name}},[a("NcHighlight",{staticClass:"name-parts__first",attrs:{text:e.part1,search:e.search,highlight:e.highlight1}}),e.part2?a("NcHighlight",{staticClass:"name-parts__last",attrs:{text:e.part2,search:e.search,highlight:e.highlight2}}):e._e()],1)},af=[],tf=ie(Xd,ef,af,!1,null,"f6384352");const nf=tf.exports,of={name:"NcActionRouter",mixins:[_r],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},props:{to:{type:[String,Object],default:"",required:!0},exact:{type:Boolean,default:!1}}};var sf=function(){var e=this,a=e._self._c;return a("li",{staticClass:"action",attrs:{role:e.isInSemanticMenu&&"presentation"}},[a("RouterLink",{staticClass:"action-router focusable",attrs:{to:e.to,"aria-label":e.ariaLabel,exact:e.exact,title:e.title,rel:"nofollow noreferrer noopener",role:e.isInSemanticMenu&&"menuitem"},nativeOn:{click:function(i){return e.onClick.apply(null,arguments)}}},[e._t("icon",function(){return[a("span",{staticClass:"action-router__icon",class:[e.isIconUrl?"action-router__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?`url(${e.icon})`:null},attrs:{"aria-hidden":"true"}})]}),e.name?a("span",{staticClass:"action-router__longtext-wrapper"},[a("strong",{staticClass:"action-router__name"},[e._v(" "+e._s(e.name)+" ")]),a("br"),a("span",{staticClass:"action-router__longtext",domProps:{textContent:e._s(e.text)}})]):e.isLongText?a("span",{staticClass:"action-router__longtext",domProps:{textContent:e._s(e.text)}}):a("span",{staticClass:"action-router__text"},[e._v(e._s(e.text))]),e._e()],2)],1)},rf=[],lf=ie(of,sf,rf,!1,null,"579c6b4d");const _f=lf.exports,df={name:"NcActionText",mixins:[_r],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}}};var ff=function(){var e=this,a=e._self._c;return a("li",{staticClass:"action",attrs:{role:e.isInSemanticMenu&&"presentation"}},[a("span",{staticClass:"action-text",on:{click:e.onClick}},[e._t("icon",function(){return[e.icon!==""?a("span",{staticClass:"action-text__icon",class:[e.isIconUrl?"action-text__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?`url(${e.icon})`:null},attrs:{"aria-hidden":"true"}}):e._e()]}),e.name?a("span",{staticClass:"action-text__longtext-wrapper"},[a("strong",{staticClass:"action-text__name"},[e._v(" "+e._s(e.name)+" ")]),a("br"),a("span",{staticClass:"action-text__longtext",domProps:{textContent:e._s(e.text)}})]):e.isLongText?a("span",{staticClass:"action-text__longtext",domProps:{textContent:e._s(e.text)}}):a("span",{staticClass:"action-text__text"},[e._v(e._s(e.text))]),e._e()],2)])},gf=[],hf=ie(df,ff,gf,!1,null,"824615f4");const Ff=hf.exports,uf=`
@@ -3883,7 +3883,7 @@ https://vue-select.org/api/props.html#getoptionkey`,c,S)}}},onTab:{type:Function
-`,cf=`
@@ -3900,25 +3900,25 @@ https://vue-select.org/api/props.html#getoptionkey`,c,S)}}},onTab:{type:Function
-`;oe(zl);const Or=e=>{switch(e){case"away":return x("away");case"busy":return x("busy");case"dnd":return x("do not disturb");case"online":return x("online");case"invisible":return x("invisible");case"offline":return x("offline");default:return e}};oe(Vl);const mf={name:"NcUserStatusIcon",props:{user:{type:String,default:null},status:{type:String,default:null,validator:e=>["online","away","busy","dnd","invisible","offline"].includes(e)},ariaHidden:{type:String,default:null,validator:e=>["true","false"].includes(e)}},data(){return{fetchedUserStatus:null}},computed:{activeStatus(){return this.status??this.fetchedUserStatus},activeSvg(){return{online:uf,away:zo,busy:zo,dnd:cf,invisible:Vo,offline:Vo}[this.activeStatus]??null},ariaLabel(){return this.ariaHidden==="true"?null:x("User status: {status}",{status:Or(this.activeStatus)})}},watch:{user:{immediate:!0,async handler(e,a){if(!e||!dr()?.user_status?.enabled){this.fetchedUserStatus=null;return}try{const{data:i}=await pa.get(Va("/apps/user_status/api/v1/statuses/{user}",{user:e}));this.fetchedUserStatus=i.ocs?.data?.status}catch{this.fetchedUserStatus=null}}}}};var pf=function(){var e=this,a=e._self._c;return e.activeStatus?a("span",{staticClass:"user-status-icon",class:{"user-status-icon--invisible":["invisible","offline"].includes(e.status)},attrs:{role:"img","aria-hidden":e.ariaHidden,"aria-label":e.ariaLabel},domProps:{innerHTML:e._s(e.activeSvg)}}):e._e()},bf=[],Df=ie(mf,pf,bf,!1,null,"0555d8d0");const Br=Df.exports;oe($l);class Se{constructor(a,i,n,o){this.r=a,this.g=i,this.b=n,o&&(this.name=o)}get color(){const a=i=>`00${i.toString(16)}`.slice(-2);return`#${a(this.r)}${a(this.g)}${a(this.b)}`}}function Tf(e,a){const i=new Array(3);return i[0]=(a[1].r-a[0].r)/e,i[1]=(a[1].g-a[0].g)/e,i[2]=(a[1].b-a[0].b)/e,i}function X0(e,a,i){const n=[];n.push(a);const o=Tf(e,[a,i]);for(let s=1;s>>32-n},rotr:function(i,n){return i<<32-n|i>>>n},endian:function(i){if(i.constructor==Number)return a.rotl(i,8)&16711935|a.rotl(i,24)&4278255360;for(var n=0;n0;i--)n.push(Math.floor(Math.random()*256));return n},bytesToWords:function(i){for(var n=[],o=0,s=0;o>>5]|=i[o]<<24-s%32;return n},wordsToBytes:function(i){for(var n=[],o=0;o>>5]>>>24-o%32&255);return n},bytesToHex:function(i){for(var n=[],o=0;o>>4).toString(16)),n.push((i[o]&15).toString(16));return n.join("")},hexToBytes:function(i){for(var n=[],o=0;o>>6*(3-l)&63)):n.push("=");return n.join("")},base64ToBytes:function(i){i=i.replace(/[^A-Z0-9+\/]/ig,"");for(var n=[],o=0,s=0;o>>6-s*2);return n}};xr.exports=a})();var kf=xr.exports,Tn={utf8:{stringToBytes:function(e){return Tn.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(Tn.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var a=[],i=0;i>>24)&16711935|(_[F]<<24|_[F]>>>8)&4278255360;_[r>>>5]|=128<>>9<<4)+14]=r;for(var m=o._ff,p=o._gg,T=o._hh,k=o._ii,F=0;F<_.length;F+=16){var w=f,v=d,M=g,L=h;f=m(f,d,g,h,_[F+0],7,-680876936),h=m(h,f,d,g,_[F+1],12,-389564586),g=m(g,h,f,d,_[F+2],17,606105819),d=m(d,g,h,f,_[F+3],22,-1044525330),f=m(f,d,g,h,_[F+4],7,-176418897),h=m(h,f,d,g,_[F+5],12,1200080426),g=m(g,h,f,d,_[F+6],17,-1473231341),d=m(d,g,h,f,_[F+7],22,-45705983),f=m(f,d,g,h,_[F+8],7,1770035416),h=m(h,f,d,g,_[F+9],12,-1958414417),g=m(g,h,f,d,_[F+10],17,-42063),d=m(d,g,h,f,_[F+11],22,-1990404162),f=m(f,d,g,h,_[F+12],7,1804603682),h=m(h,f,d,g,_[F+13],12,-40341101),g=m(g,h,f,d,_[F+14],17,-1502002290),d=m(d,g,h,f,_[F+15],22,1236535329),f=p(f,d,g,h,_[F+1],5,-165796510),h=p(h,f,d,g,_[F+6],9,-1069501632),g=p(g,h,f,d,_[F+11],14,643717713),d=p(d,g,h,f,_[F+0],20,-373897302),f=p(f,d,g,h,_[F+5],5,-701558691),h=p(h,f,d,g,_[F+10],9,38016083),g=p(g,h,f,d,_[F+15],14,-660478335),d=p(d,g,h,f,_[F+4],20,-405537848),f=p(f,d,g,h,_[F+9],5,568446438),h=p(h,f,d,g,_[F+14],9,-1019803690),g=p(g,h,f,d,_[F+3],14,-187363961),d=p(d,g,h,f,_[F+8],20,1163531501),f=p(f,d,g,h,_[F+13],5,-1444681467),h=p(h,f,d,g,_[F+2],9,-51403784),g=p(g,h,f,d,_[F+7],14,1735328473),d=p(d,g,h,f,_[F+12],20,-1926607734),f=T(f,d,g,h,_[F+5],4,-378558),h=T(h,f,d,g,_[F+8],11,-2022574463),g=T(g,h,f,d,_[F+11],16,1839030562),d=T(d,g,h,f,_[F+14],23,-35309556),f=T(f,d,g,h,_[F+1],4,-1530992060),h=T(h,f,d,g,_[F+4],11,1272893353),g=T(g,h,f,d,_[F+7],16,-155497632),d=T(d,g,h,f,_[F+10],23,-1094730640),f=T(f,d,g,h,_[F+13],4,681279174),h=T(h,f,d,g,_[F+0],11,-358537222),g=T(g,h,f,d,_[F+3],16,-722521979),d=T(d,g,h,f,_[F+6],23,76029189),f=T(f,d,g,h,_[F+9],4,-640364487),h=T(h,f,d,g,_[F+12],11,-421815835),g=T(g,h,f,d,_[F+15],16,530742520),d=T(d,g,h,f,_[F+2],23,-995338651),f=k(f,d,g,h,_[F+0],6,-198630844),h=k(h,f,d,g,_[F+7],10,1126891415),g=k(g,h,f,d,_[F+14],15,-1416354905),d=k(d,g,h,f,_[F+5],21,-57434055),f=k(f,d,g,h,_[F+12],6,1700485571),h=k(h,f,d,g,_[F+3],10,-1894986606),g=k(g,h,f,d,_[F+10],15,-1051523),d=k(d,g,h,f,_[F+1],21,-2054922799),f=k(f,d,g,h,_[F+8],6,1873313359),h=k(h,f,d,g,_[F+15],10,-30611744),g=k(g,h,f,d,_[F+6],15,-1560198380),d=k(d,g,h,f,_[F+13],21,1309151649),f=k(f,d,g,h,_[F+4],6,-145523070),h=k(h,f,d,g,_[F+11],10,-1120210379),g=k(g,h,f,d,_[F+2],15,718787259),d=k(d,g,h,f,_[F+9],21,-343485551),f=f+w>>>0,d=d+v>>>0,g=g+M>>>0,h=h+L>>>0}return e.endian([f,d,g,h])};o._ff=function(s,l,_,r,f,d,g){var h=s+(l&_|~l&r)+(f>>>0)+g;return(h<>>32-d)+l},o._gg=function(s,l,_,r,f,d,g){var h=s+(l&r|_&~r)+(f>>>0)+g;return(h<>>32-d)+l},o._hh=function(s,l,_,r,f,d,g){var h=s+(l^_^r)+(f>>>0)+g;return(h<>>32-d)+l},o._ii=function(s,l,_,r,f,d,g){var h=s+(_^(l|~r))+(f>>>0)+g;return(h<>>32-d)+l},o._blocksize=16,o._digestsize=16,Nr.exports=function(s,l){if(s==null)throw new Error("Illegal argument "+s);var _=e.wordsToBytes(o(s,l));return l&&l.asBytes?_:l&&l.asString?n.bytesToString(_):e.bytesToHex(_)}})();var Sf=Nr.exports;const vf=Ks(Sf),Wo=function(e){let a=e.toLowerCase();a.match(/^([0-9a-f]{4}-?){8}$/)===null&&(a=vf(a)),a=a.replace(/[^0-9a-f]/g,"");const i=6,n=Ef(i);function o(s,l){let _=0;const r=[];for(let f=0;f{const n=window.getComputedStyle(document.body).getPropertyValue("--background-invert-if-dark")==="invert(100%)";return Js("/avatar"+(i?"/guest":"")+"/{user}/{size}"+(n?"/dark":""),{user:e,size:a})},Rf="aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4vianca6w0s2x0a2z0ure5ba0by2idu3namex3narepublic11d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0cast4mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dabur3d1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0ardian6cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2tura4vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9dnavy5lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0a1b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp2w2ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4finity6ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2",Cf="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2",Ct=(e,a)=>{for(const i in a)e[i]=a[i];return e},yn="numeric",En="ascii",kn="alpha",Bi="asciinumeric",Di="alphanumeric",An="domain",jr="emoji",Of="scheme",Bf="slashscheme",Qo="whitespace";function Nf(e,a){return e in a||(a[e]=[]),a[e]}function ot(e,a,i){a[yn]&&(a[Bi]=!0,a[Di]=!0),a[En]&&(a[Bi]=!0,a[kn]=!0),a[Bi]&&(a[Di]=!0),a[kn]&&(a[Di]=!0),a[Di]&&(a[An]=!0),a[jr]&&(a[An]=!0);for(const n in a){const o=Nf(n,i);o.indexOf(e)<0&&o.push(e)}}function xf(e,a){const i={};for(const n in a)a[n].indexOf(e)>=0&&(i[n]=!0);return i}function Xe(e){e===void 0&&(e=null),this.j={},this.jr=[],this.jd=null,this.t=e}Xe.groups={},Xe.prototype={accepts(){return!!this.t},go(e){const a=this,i=a.j[e];if(i)return i;for(let n=0;ne.ta(a,i,n,o),ta=(e,a,i,n,o)=>e.tr(a,i,n,o),Ko=(e,a,i,n,o)=>e.ts(a,i,n,o),I=(e,a,i,n,o)=>e.tt(a,i,n,o),ya="WORD",wn="UWORD",oi="LOCALHOST",Sn="TLD",vn="UTLD",Ni="SCHEME",Tt="SLASH_SCHEME",io="NUM",Yr="WS",no="NL",Gt="OPENBRACE",Ut="CLOSEBRACE",$i="OPENBRACKET",Wi="CLOSEBRACKET",Qi="OPENPAREN",Ki="CLOSEPAREN",Ji="OPENANGLEBRACKET",Xi="CLOSEANGLEBRACKET",e0="FULLWIDTHLEFTPAREN",a0="FULLWIDTHRIGHTPAREN",t0="LEFTCORNERBRACKET",i0="RIGHTCORNERBRACKET",n0="LEFTWHITECORNERBRACKET",o0="RIGHTWHITECORNERBRACKET",s0="FULLWIDTHLESSTHAN",r0="FULLWIDTHGREATERTHAN",l0="AMPERSAND",_0="APOSTROPHE",d0="ASTERISK",Ma="AT",f0="BACKSLASH",g0="BACKTICK",h0="CARET",qa="COLON",oo="COMMA",F0="DOLLAR",ga="DOT",u0="EQUALS",so="EXCLAMATION",ha="HYPHEN",c0="PERCENT",m0="PIPE",p0="PLUS",b0="POUND",D0="QUERY",ro="QUOTE",lo="SEMI",Fa="SLASH",zt="TILDE",T0="UNDERSCORE",qr="EMOJI",y0="SYM";var Lr=Object.freeze({__proto__:null,WORD:ya,UWORD:wn,LOCALHOST:oi,TLD:Sn,UTLD:vn,SCHEME:Ni,SLASH_SCHEME:Tt,NUM:io,WS:Yr,NL:no,OPENBRACE:Gt,CLOSEBRACE:Ut,OPENBRACKET:$i,CLOSEBRACKET:Wi,OPENPAREN:Qi,CLOSEPAREN:Ki,OPENANGLEBRACKET:Ji,CLOSEANGLEBRACKET:Xi,FULLWIDTHLEFTPAREN:e0,FULLWIDTHRIGHTPAREN:a0,LEFTCORNERBRACKET:t0,RIGHTCORNERBRACKET:i0,LEFTWHITECORNERBRACKET:n0,RIGHTWHITECORNERBRACKET:o0,FULLWIDTHLESSTHAN:s0,FULLWIDTHGREATERTHAN:r0,AMPERSAND:l0,APOSTROPHE:_0,ASTERISK:d0,AT:Ma,BACKSLASH:f0,BACKTICK:g0,CARET:h0,COLON:qa,COMMA:oo,DOLLAR:F0,DOT:ga,EQUALS:u0,EXCLAMATION:so,HYPHEN:ha,PERCENT:c0,PIPE:m0,PLUS:p0,POUND:b0,QUERY:D0,QUOTE:ro,SEMI:lo,SLASH:Fa,TILDE:zt,UNDERSCORE:T0,EMOJI:qr,SYM:y0});const bt=/[a-z]/,en=new RegExp("\\p{L}","u"),an=new RegExp("\\p{Emoji}","u"),tn=/\d/,Jo=/\s/,Xo=`
-`,Mf="️",jf="";let Ti=null,yi=null;function Yf(e){e===void 0&&(e=[]);const a={};Xe.groups=a;const i=new Xe;Ti==null&&(Ti=es(Rf)),yi==null&&(yi=es(Cf)),I(i,"'",_0),I(i,"{",Gt),I(i,"}",Ut),I(i,"[",$i),I(i,"]",Wi),I(i,"(",Qi),I(i,")",Ki),I(i,"<",Ji),I(i,">",Xi),I(i,"(",e0),I(i,")",a0),I(i,"「",t0),I(i,"」",i0),I(i,"『",n0),I(i,"』",o0),I(i,"<",s0),I(i,">",r0),I(i,"&",l0),I(i,"*",d0),I(i,"@",Ma),I(i,"`",g0),I(i,"^",h0),I(i,":",qa),I(i,",",oo),I(i,"$",F0),I(i,".",ga),I(i,"=",u0),I(i,"!",so),I(i,"-",ha),I(i,"%",c0),I(i,"|",m0),I(i,"+",p0),I(i,"#",b0),I(i,"?",D0),I(i,'"',ro),I(i,"/",Fa),I(i,";",lo),I(i,"~",zt),I(i,"_",T0),I(i,"\\",f0);const n=ta(i,tn,io,{[yn]:!0});ta(n,tn,n);const o=ta(i,bt,ya,{[En]:!0});ta(o,bt,o);const s=ta(i,en,wn,{[kn]:!0});ta(s,bt),ta(s,en,s);const l=ta(i,Jo,Yr,{[Qo]:!0});I(i,Xo,no,{[Qo]:!0}),I(l,Xo),ta(l,Jo,l);const _=ta(i,an,qr,{[jr]:!0});ta(_,an,_),I(_,Mf,_);const r=I(_,jf);ta(r,an,_);const f=[[bt,o]],d=[[bt,null],[en,s]];for(let g=0;gg[0]>h[0]?1:-1);for(let g=0;g=0?F[An]=!0:bt.test(h)?tn.test(h)?F[Bi]=!0:F[En]=!0:F[yn]=!0,Ko(i,h,h,F)}return Ko(i,"localhost",oi,{ascii:!0}),i.jd=new Xe(y0),{start:i,tokens:Ct({groups:a},Lr)}}function qf(e,a){const i=Lf(a.replace(/[A-Z]/g,_=>_.toLowerCase())),n=i.length,o=[];let s=0,l=0;for(;l=0&&(g+=i[l].length,h++),f+=i[l].length,s+=i[l].length,l++;s-=g,l-=h,f-=g,o.push({t:d.t,v:a.slice(s-f,s),s:s-f,e:s})}return o}function Lf(e){const a=[],i=e.length;let n=0;for(;n56319||n+1===i||(s=e.charCodeAt(n+1))<56320||s>57343?e[n]:e.slice(n,n+2);a.push(l),n+=l.length}return a}function Na(e,a,i,n,o){let s;const l=a.length;for(let _=0;_=0;)s++;if(s>0){a.push(i.join(""));for(let l=parseInt(e.substring(n,n+s),10);l>0;l--)i.pop();n+=s}else i.push(e[n]),n++}return a}const si={defaultProtocol:"http",events:null,format:as,formatHref:as,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function _o(e,a){a===void 0&&(a=null);let i=Ct({},si);e&&(i=Ct(i,e instanceof _o?e.o:e));const n=i.ignoreTags,o=[];for(let s=0;si?n.substring(0,i)+"…":n},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e){return e===void 0&&(e=si.defaultProtocol),{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const a=this,i=this.toHref(e.get("defaultProtocol")),n=e.get("formatHref",i,this),o=e.get("tagName",i,a),s=this.toFormattedString(e),l={},_=e.get("className",i,a),r=e.get("target",i,a),f=e.get("rel",i,a),d=e.getObj("attributes",i,a),g=e.getObj("events",i,a);return l.href=n,_&&(l.class=_),r&&(l.target=r),f&&(l.rel=f),d&&Ct(l,d),{tagName:o,attributes:l,content:s,eventListeners:g}}};function q0(e,a){class i extends Zr{constructor(o,s){super(o,s),this.t=e}}for(const n in a)i.prototype[n]=a[n];return i.t=e,i}const ts=q0("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),is=q0("text"),Zf=q0("nl"),Ei=q0("url",{isLink:!0,toHref(e){return e===void 0&&(e=si.defaultProtocol),this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==oi&&e[1].t===qa}}),ia=e=>new Xe(e);function If(e){let{groups:a}=e;const i=a.domain.concat([l0,d0,Ma,f0,g0,h0,F0,u0,ha,io,c0,m0,p0,b0,Fa,y0,zt,T0]),n=[_0,qa,oo,ga,so,D0,ro,lo,Ji,Xi,Gt,Ut,Wi,$i,Qi,Ki,e0,a0,t0,i0,n0,o0,s0,r0],o=[l0,_0,d0,f0,g0,h0,F0,u0,ha,Gt,Ut,c0,m0,p0,b0,D0,Fa,y0,zt,T0],s=ia(),l=I(s,zt);re(l,o,l),re(l,a.domain,l);const _=ia(),r=ia(),f=ia();re(s,a.domain,_),re(s,a.scheme,r),re(s,a.slashscheme,f),re(_,o,l),re(_,a.domain,_);const d=I(_,Ma);I(l,Ma,d),I(r,Ma,d),I(f,Ma,d);const g=I(l,ga);re(g,o,l),re(g,a.domain,l);const h=ia();re(d,a.domain,h),re(h,a.domain,h);const F=I(h,ga);re(F,a.domain,h);const m=ia(ts);re(F,a.tld,m),re(F,a.utld,m),I(d,oi,m);const p=I(h,ha);re(p,a.domain,h),re(m,a.domain,h),I(m,ga,F),I(m,ha,p);const T=I(m,qa);re(T,a.numeric,ts);const k=I(_,ha),w=I(_,ga);re(k,a.domain,_),re(w,o,l),re(w,a.domain,_);const v=ia(Ei);re(w,a.tld,v),re(w,a.utld,v),re(v,a.domain,_),re(v,o,l),I(v,ga,w),I(v,ha,k),I(v,Ma,d);const M=I(v,qa),L=ia(Ei);re(M,a.numeric,L);const O=ia(Ei),P=ia();re(O,i,O),re(O,n,P),re(P,i,O),re(P,n,P),I(v,Fa,O),I(L,Fa,O);const z=I(r,qa),Z=I(f,qa),c=I(Z,Fa),S=I(c,Fa);re(r,a.domain,_),I(r,ga,w),I(r,ha,k),re(f,a.domain,_),I(f,ga,w),I(f,ha,k),re(z,a.domain,O),I(z,Fa,O),re(S,a.domain,O),re(S,i,O),I(S,Fa,O);const R=[[Gt,Ut],[$i,Wi],[Qi,Ki],[Ji,Xi],[e0,a0],[t0,i0],[n0,o0],[s0,r0]];for(let B=0;B=0&&h++,o++,d++;if(h<0)o-=d,o0&&(s.push(nn(is,a,l)),l=[]),o-=h,d-=h;const F=g.t,m=i.slice(o-d,o);s.push(nn(F,a,m))}}return l.length>0&&s.push(nn(is,a,l)),s}function nn(e,a,i){const n=i[0].s,o=i[i.length-1].e,s=a.slice(n,o);return new e(s,i)}const Ue={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function Pf(){Ue.scanner=Yf(Ue.customSchemes);for(let e=0;e/g,">")}function Uf(e){return e.replace(/"/g,""")}function zf(e){const a=[];for(const i in e){let n=e[i]+"";a.push(`${i}="${Uf(n)}"`)}return a.join(" ")}function Vf(e){let{tagName:a,attributes:i,content:n}=e;return`<${a} ${zf(i)}>${Ir(n)}${a}>`}function $f(e,a){a===void 0&&(a={}),a=new _o(a,Vf);const i=Gf(e),n=[];for(let o=0;o
-`):!s.isLink||!a.check(s)?n.push(Ir(s.toString())):n.push(a.render(s))}return n.join("")}String.prototype.linkify||Object.defineProperty(String.prototype,"linkify",{writable:!1,value:function(e){return $f(this,e)}});var Hr={exports:{}};(function(e){(function(a){if(typeof i!="function"){var i=function(m){return m};i.nonNative=!0}const n=i("plaintext"),o=i("html"),s=i("comment"),l=/<(\w*)>/g,_=/<\/?([^\s\/>]+)/;function r(m,p,T){m=m||"",p=p||[],T=T||"";let k=d(p,T);return g(m,k)}function f(m,p){m=m||[],p=p||"";let T=d(m,p);return function(k){return g(k||"",T)}}r.init_streaming_mode=f;function d(m,p){return m=h(m),{allowable_tags:m,tag_replacement:p,state:n,tag_buffer:"",depth:0,in_quote_char:""}}function g(m,p){if(typeof m!="string")throw new TypeError("'html' parameter must be a string");let T=p.allowable_tags,k=p.tag_replacement,w=p.state,v=p.tag_buffer,M=p.depth,L=p.in_quote_char,O="";for(let P=0,z=m.length;P":if(L)break;if(M){M--;break}L="",w=n,v+=">",T.has(F(v))?O+=v:O+=k,v="";break;case'"':case"'":Z===L?L="":L=L||Z,v+=Z;break;case"-":v==="":v.slice(-2)=="--"&&(w=n),v="";break;default:v+=Z;break}}return p.state=w,p.tag_buffer=v,p.depth=M,p.in_quote_char=L,O}function h(m){let p=new Set;if(typeof m=="string"){let T;for(;T=l.exec(m);)p.add(T[1])}else!i.nonNative&&typeof m[i.iterator]=="function"?p=new Set(m):typeof m.forEach=="function"&&m.forEach(p.add,p);return p}function F(m){let p=_.exec(m);return p?p[1].toLowerCase():null}e.exports?e.exports=r:a.striptags=r})(ja)})(Hr);var Wf=Hr.exports;const X2=Ks(Wf),fo=(e,a)=>{const i=(d,g)=>d.startsWith(g)?d.slice(g.length):d,n=(d,...g)=>g.reduce((h,F)=>i(h,F),d);if(!e)return null;const o=/^https?:\/\//.test(a),s=/^[a-z][a-z0-9+.-]*:.+/.test(a);if(!o&&s||o&&!a.startsWith(So())||!o&&!a.startsWith("/"))return null;const l=o?n(a,So(),"/index.php"):a,_=n(e.history.base,Wl(),"/index.php"),r=n(l,_)||"/",f=e.resolve(r).route;return f.matched.length?f.fullPath:null};Sa.util.warn;function Zt(e){var a;const i=Pt(e);return(a=i?.$el)!=null?a:i}const Pr=Jl?window:void 0;function xi(...e){let a,i,n,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([i,n,o]=e,a=Pr):[a,i,n,o]=e,!a)return Ri;Array.isArray(i)||(i=[i]),Array.isArray(n)||(n=[n]);const s=[],l=()=>{s.forEach(d=>d()),s.length=0},_=(d,g,h,F)=>(d.addEventListener(g,h,F),()=>d.removeEventListener(g,h,F)),r=Ln(()=>[Zt(a),Pt(o)],([d,g])=>{if(l(),!d)return;const h=Ql(g)?{...g}:g;s.push(...i.flatMap(F=>n.map(m=>_(d,F,m,h))))},{immediate:!0,flush:"post"}),f=()=>{r(),l()};return Xs(f),f}let ns=!1;function os(e,a,i={}){const{window:n=Pr,ignore:o=[],capture:s=!0,detectIframe:l=!1}=i;if(!n)return Ri;Fn&&!ns&&(ns=!0,Array.from(n.document.body.children).forEach(d=>d.addEventListener("click",Ri)),n.document.documentElement.addEventListener("click",Ri));let _=!0;const r=d=>o.some(g=>{if(typeof g=="string")return Array.from(n.document.querySelectorAll(g)).some(h=>h===d.target||d.composedPath().includes(h));{const h=Zt(g);return h&&(d.target===h||d.composedPath().includes(h))}}),f=[xi(n,"click",d=>{const g=Zt(e);if(!(!g||g===d.target||d.composedPath().includes(g))){if(d.detail===0&&(_=!r(d)),!_){_=!0;return}a(d)}},{passive:!0,capture:s}),xi(n,"pointerdown",d=>{const g=Zt(e);_=!r(d)&&!!(g&&!d.composedPath().includes(g))},{passive:!0}),l&&xi(n,"blur",d=>{setTimeout(()=>{var g;const h=Zt(e);((g=n.document.activeElement)==null?void 0:g.tagName)==="IFRAME"&&!h?.contains(n.document.activeElement)&&a(d)},0)})].filter(Boolean);return()=>f.forEach(d=>d())}const Qf={[vo.mounted](e,a){const i=!a.modifiers.bubble;if(typeof a.value=="function")e.__onClickOutside_stop=os(e,a.value,{capture:i});else{const[n,o]=a.value;e.__onClickOutside_stop=os(e,n,Object.assign({capture:i},o))}},[vo.unmounted](e){e.__onClickOutside_stop()}};function on(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function Gr(e){const a=window.getComputedStyle(e);if(a.overflowX==="scroll"||a.overflowY==="scroll"||a.overflowX==="auto"&&e.clientWidth1?!0:(a.preventDefault&&a.preventDefault(),!1)}const sn=new WeakMap;function Jf(e,a=!1){const i=Ia(a);let n=null,o="";Ln(Kl(e),_=>{const r=on(Pt(_));if(r){const f=r;if(sn.get(f)||sn.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(o=f.style.overflow),f.style.overflow==="hidden")return i.value=!0;if(i.value)return f.style.overflow="hidden"}},{immediate:!0});const s=()=>{const _=on(Pt(e));!_||i.value||(Fn&&(n=xi(_,"touchmove",r=>{Kf(r)},{passive:!1})),_.style.overflow="hidden",i.value=!0)},l=()=>{const _=on(Pt(e));!_||!i.value||(Fn&&n?.(),_.style.overflow=o,sn.delete(_),i.value=!1)};return Xs(l),Ea({get(){return i.value},set(_){_?s():l()}})}function Xf(){let e=!1;const a=Ia(!1);return(i,n)=>{if(a.value=n.value,e)return;e=!0;const o=Jf(i,n.value);Ln(a,s=>o.value=s)}}Xf();const Ur={data(){return{hasStatus:!1,userStatus:{status:null,message:null,icon:null}}},methods:{async fetchUserStatus(e){if(!e)return;const a=dr();if(!(!Object.prototype.hasOwnProperty.call(a,"user_status")||!a.user_status.enabled)&&un())try{const{data:i}=await pa.get(Va("apps/user_status/api/v1/statuses/{userId}",{userId:e})),{status:n,message:o,icon:s}=i.ocs.data;this.userStatus.status=n,this.userStatus.message=o||"",this.userStatus.icon=s||"",this.hasStatus=!0}catch(i){if(i.response.status===404&&i.response.data.ocs?.data?.length===0)return;console.error(i)}}}};oe(Xl);const zr=Zn("nextcloud").persist().build();function eg(e){const a=zr.getItem("user-has-avatar."+e);return typeof a=="string"?!!a:null}function ss(e,a){e&&zr.setItem("user-has-avatar."+e,a)}const ag={name:"NcAvatar",directives:{ClickOutside:Qf},components:{DotsHorizontal:In,NcActions:er,NcButton:Ja,NcIconSvgWrapper:Hn,NcLoadingIcon:O0,NcUserStatusIcon:Br},mixins:[Ur],props:{url:{type:String,default:void 0},iconClass:{type:String,default:void 0},user:{type:String,default:void 0},showUserStatus:{type:Boolean,default:!0},showUserStatusCompact:{type:Boolean,default:!0},preloadedUserStatus:{type:Object,default:void 0},isGuest:{type:Boolean,default:!1},displayName:{type:String,default:void 0},size:{type:Number,default:32},allowPlaceholder:{type:Boolean,default:!0},disableTooltip:{type:Boolean,default:!1},disableMenu:{type:Boolean,default:!1},tooltipMessage:{type:String,default:null},isNoUser:{type:Boolean,default:!1},menuContainer:{type:[String,Object,Element,Boolean],default:"body"}},data(){return{avatarUrlLoaded:null,avatarSrcSetLoaded:null,userDoesNotExist:!1,isAvatarLoaded:!1,isMenuLoaded:!1,contactsMenuLoading:!1,contactsMenuActions:[],contactsMenuOpenState:!1}},computed:{avatarAriaLabel(){if(this.hasMenu)return this.canDisplayUserStatus||this.showUserStatusIconOnAvatar?x("Avatar of {displayName}, {status}",{displayName:this.displayName??this.user,status:Or(this.userStatus.status)}):x("Avatar of {displayName}",{displayName:this.displayName??this.user})},canDisplayUserStatus(){return this.showUserStatus&&this.hasStatus&&["online","away","busy","dnd"].includes(this.userStatus.status)},showUserStatusIconOnAvatar(){return this.showUserStatus&&this.showUserStatusCompact&&this.hasStatus&&this.userStatus.status!=="dnd"&&this.userStatus.icon},userIdentifier(){return this.isDisplayNameDefined?this.displayName:this.isUserDefined?this.user:""},isUserDefined(){return typeof this.user<"u"},isDisplayNameDefined(){return typeof this.displayName<"u"},isUrlDefined(){return typeof this.url<"u"},hasMenu(){return this.disableMenu?!1:this.isMenuLoaded?this.menu.length>0:!(this.user===un()?.uid||this.userDoesNotExist||this.url)},showInitials(){return this.allowPlaceholder&&this.userDoesNotExist&&!(this.iconClass||this.$slots.icon)},avatarStyle(){return{"--size":this.size+"px",lineHeight:this.size+"px",fontSize:Math.round(this.size*.45)+"px"}},initialsWrapperStyle(){const{r:e,g:a,b:i}=Wo(this.userIdentifier);return{backgroundColor:`rgba(${e}, ${a}, ${i}, 0.1)`}},initialsStyle(){const{r:e,g:a,b:i}=Wo(this.userIdentifier);return{color:`rgb(${e}, ${a}, ${i})`}},tooltip(){return this.disableTooltip?!1:this.tooltipMessage?this.tooltipMessage:this.displayName},initials(){let e="?";if(this.showInitials){const a=this.userIdentifier.trim();if(a==="")return e;const i=a.match(/[\p{L}\p{N}\s]/gu);if(i==null)return e;const n=i.join(""),o=n.lastIndexOf(" ");e=String.fromCodePoint(n.codePointAt(0)),o!==-1&&(e=e.concat(String.fromCodePoint(n.codePointAt(o+1))))}return e.toLocaleUpperCase()},menu(){const e=this.contactsMenuActions.map(i=>{const n=fo(this.$router,i.hyperlink);return{ncActionComponent:n?_f:t_,ncActionComponentProps:n?{to:n,icon:i.icon}:{href:i.hyperlink,icon:i.icon},text:i.title}});function a(i){const n=document.createTextNode(i),o=document.createElement("p");return o.appendChild(n),o.innerHTML}if(this.showUserStatus&&(this.userStatus.icon||this.userStatus.message)){const i=``;return[{ncActionComponent:uf,ncActionComponentProps:{},iconSvg:this.userStatus.icon?i:void 0,text:`${this.userStatus.message}`}].concat(e)}return e}},watch:{url(){this.userDoesNotExist=!1,this.loadAvatarUrl()},user(){this.userDoesNotExist=!1,this.isMenuLoaded=!1,this.loadAvatarUrl()}},mounted(){this.loadAvatarUrl(),z0("settings:avatar:updated",this.loadAvatarUrl),z0("settings:display-name:updated",this.loadAvatarUrl),this.showUserStatus&&this.user&&!this.isNoUser&&(this.preloadedUserStatus?(this.userStatus.status=this.preloadedUserStatus.status||"",this.userStatus.message=this.preloadedUserStatus.message||"",this.userStatus.icon=this.preloadedUserStatus.icon||"",this.hasStatus=this.preloadedUserStatus.status!==null):this.fetchUserStatus(this.user),z0("user_status:status.updated",this.handleUserStatusUpdated))},beforeDestroy(){V0("settings:avatar:updated",this.loadAvatarUrl),V0("settings:display-name:updated",this.loadAvatarUrl),this.showUserStatus&&this.user&&!this.isNoUser&&V0("user_status:status.updated",this.handleUserStatusUpdated)},methods:{t:x,handleUserStatusUpdated(e){this.user===e.userId&&(this.userStatus={status:e.status,icon:e.icon,message:e.message})},async toggleMenu(e){e.type==="keydown"&&e.key!=="Enter"||(this.contactsMenuOpenState||await this.fetchContactsMenu(),this.contactsMenuOpenState=!this.contactsMenuOpenState)},closeMenu(){this.contactsMenuOpenState=!1},async fetchContactsMenu(){this.contactsMenuLoading=!0;try{const e=encodeURIComponent(this.user),{data:a}=await pa.post(Js("contactsmenu/findOne"),`shareType=0&shareWith=${e}`);this.contactsMenuActions=a.topAction?[a.topAction].concat(a.actions):a.actions}catch{this.contactsMenuOpenState=!1}this.contactsMenuLoading=!1,this.isMenuLoaded=!0},loadAvatarUrl(){if(this.isAvatarLoaded=!1,!this.isUrlDefined&&(!this.isUserDefined||this.isNoUser)){this.isAvatarLoaded=!0,this.userDoesNotExist=!0;return}if(this.isUrlDefined){this.updateImageIfValid(this.url);return}if(this.size<=64){const e=this.avatarUrlGenerator(this.user,64),a=[e+" 1x",this.avatarUrlGenerator(this.user,512)+" 8x"].join(", ");this.updateImageIfValid(e,a)}else{const e=this.avatarUrlGenerator(this.user,512);this.updateImageIfValid(e)}},avatarUrlGenerator(e,a){let i=to(e,a,this.isGuest);return e===un()?.uid&&typeof oc_userconfig<"u"&&(i+="?v="+oc_userconfig.avatar.version),i},updateImageIfValid(e,a=null){const i=ag(this.user);if(this.isUserDefined&&typeof i=="boolean"){this.isAvatarLoaded=!0,this.avatarUrlLoaded=e,a&&(this.avatarSrcSetLoaded=a),i===!1&&(this.userDoesNotExist=!0);return}const n=new Image;n.onload=()=>{this.avatarUrlLoaded=e,a&&(this.avatarSrcSetLoaded=a),this.isAvatarLoaded=!0,ss(this.user,!0)},n.onerror=()=>{console.debug("Invalid avatar url",e),this.avatarUrlLoaded=null,this.avatarSrcSetLoaded=null,this.userDoesNotExist=!0,this.isAvatarLoaded=!1,ss(this.user,!1)},a&&(n.srcset=a),n.src=e}}};var ig=function(){var e=this,a=e._self._c;return a("span",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeMenu,expression:"closeMenu"}],ref:"main",staticClass:"avatardiv popovermenu-wrapper",class:{"avatardiv--unknown":e.userDoesNotExist,"avatardiv--with-menu":e.hasMenu,"avatardiv--with-menu-loading":e.contactsMenuLoading},style:e.avatarStyle},[e._t("icon",function(){return[e.iconClass?a("span",{staticClass:"avatar-class-icon",class:e.iconClass}):e.isAvatarLoaded&&!e.userDoesNotExist?a("img",{attrs:{src:e.avatarUrlLoaded,srcset:e.avatarSrcSetLoaded,alt:""}}):e._e()]}),e.hasMenu&&e.menu.length===0?a("NcButton",{staticClass:"action-item action-item__menutoggle",attrs:{type:"tertiary-no-background","aria-label":e.avatarAriaLabel,title:e.tooltip},on:{click:e.toggleMenu},scopedSlots:e._u([{key:"icon",fn:function(){return[e.contactsMenuLoading?a("NcLoadingIcon"):a("DotsHorizontal",{attrs:{size:20}})]},proxy:!0}],null,!1,2617833509)}):e.hasMenu?a("NcActions",{attrs:{"force-menu":"","manual-open":"",type:"tertiary-no-background",container:e.menuContainer,open:e.contactsMenuOpenState,"aria-label":e.avatarAriaLabel,title:e.tooltip},on:{"update:open":function(i){e.contactsMenuOpenState=i},click:e.toggleMenu},scopedSlots:e._u([e.contactsMenuLoading?{key:"icon",fn:function(){return[a("NcLoadingIcon")]},proxy:!0}:null],null,!0)},e._l(e.menu,function(i,n){return a(i.ncActionComponent,e._b({key:n,tag:"component",scopedSlots:e._u([i.iconSvg?{key:"icon",fn:function(){return[a("NcIconSvgWrapper",{attrs:{svg:i.iconSvg}})]},proxy:!0}:null],null,!0)},"component",i.ncActionComponentProps,!1),[e._v(" "+e._s(i.text)+" ")])}),1):e._e(),e.showUserStatusIconOnAvatar?a("span",{staticClass:"avatardiv__user-status avatardiv__user-status--icon"},[e._v(" "+e._s(e.userStatus.icon)+" ")]):e.canDisplayUserStatus?a("NcUserStatusIcon",{staticClass:"avatardiv__user-status",attrs:{status:e.userStatus.status,"aria-hidden":String(e.hasMenu)}}):e._e(),e.showInitials?a("span",{staticClass:"avatardiv__initials-wrapper",style:e.initialsWrapperStyle},[a("span",{staticClass:"avatardiv__initials",style:e.initialsStyle},[e._v(" "+e._s(e.initials)+" ")])]):e._e()],2)},ng=[],og=ie(tg,ig,ng,!1,null,"e7e86f59");const $r=og.exports,sg=8,rs=32,rg={name:"NcListItemIcon",components:{NcAvatar:$r,NcHighlight:Y0,NcIconSvgWrapper:Hn},mixins:[zr],props:{name:{type:String,required:!0},subname:{type:String,default:""},icon:{type:String,default:""},iconSvg:{type:String,default:""},iconName:{type:String,default:""},search:{type:String,default:""},avatarSize:{type:Number,default:rs},noMargin:{type:Boolean,default:!1},displayName:{type:String,default:null},isNoUser:{type:Boolean,default:!1},id:{type:String,default:null}},setup(){return{margin:sg,defaultSize:rs}},computed:{hasIcon(){return this.icon!==""},hasIconSvg(){return this.iconSvg!==""},isValidSubname(){return this.subname?.trim?.()!==""},isSizeBigEnough(){return this.avatarSize>=26},cssVars(){const e=this.noMargin?0:this.margin;return{"--height":this.avatarSize+2*e+"px","--margin":this.margin+"px"}},searchParts(){const e=/^([^<]*)<([^>]+)>?$/,a=this.search.match(e);return this.isNoUser||!a?[this.search,this.search]:[a[1].trim(),a[2]]}},beforeMount(){!this.isNoUser&&!this.subname&&this.fetchUserStatus(this.user)}};var lg=function(){var e=this,a=e._self._c;return a("span",e._g({staticClass:"option",class:{"option--compact":e.avatarSize({...e,...a.props}),{}),ariaLabelClearSelected:{type:String,default:x("Clear selected")},ariaLabelCombobox:{type:String,default:null},ariaLabelListbox:{type:String,default:x("Options")},ariaLabelDeselectOption:{type:Function,default:e=>x("Deselect {option}",{option:e})},appendToBody:{type:Boolean,default:!0},calculatePosition:{type:Function,default:null},closeOnSelect:{type:Boolean,default:!0},components:{type:Object,default:()=>({Deselect:{render:e=>e(Pn,{props:{size:20,fillColor:"var(--vs-controls-color)"},style:{cursor:"pointer"}})}})},limit:{type:Number,default:null},disabled:{type:Boolean,default:!1},dropdownShouldOpen:{type:Function,default:({noDrop:e,open:a})=>e?!1:a},filterBy:{type:Function,default:null},inputClass:{type:[String,Object],default:null},inputId:{type:String,default:()=>`select-input-${ft()}`},inputLabel:{type:String,default:null},labelOutside:{type:Boolean,default:!1},keyboardFocusBorder:{type:Boolean,default:!0},label:{type:String,default:null},loading:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noWrap:{type:Boolean,default:!1},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},mapKeydown:{type:Function,default(e,a){return{...e,27:i=>{a.open&&i.stopPropagation(),e[27](i)}}}},uid:{type:String,default:()=>ft()},placement:{type:String,default:"bottom"},resetFocusOnOptionsChange:{type:Boolean,default:!0},userSelect:{type:Boolean,default:!1},value:{type:[String,Number,Object,Array],default:void 0},modelValue:{type:[String,Number,Object,Array],default:null},required:{type:Boolean,default:!1}," ":{}},emits:[" ","input","update:modelValue","update:model-value"],setup(){const e=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-clickable-area")),a=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-grid-baseline")),i=e-2*a,n=Xa("value","input");return{avatarSize:i,model:n}},data(){return{search:""}},computed:{inputRequired(){return this.required?this.model===null||Array.isArray(this.model)&&this.model.length===0:null},localCalculatePosition(){return this.calculatePosition!==null?this.calculatePosition:(e,a,{width:i})=>{e.style.width=i;const n={name:"addClass",fn(l){return e.classList.add("vs__dropdown-menu--floating"),{}}},o={name:"togglePlacementClass",fn({placement:l}){return a.$el.classList.toggle("select--drop-up",l==="top"),e.classList.toggle("vs__dropdown-menu--floating-placement-top",l==="top"),{}}},s=()=>{Ud(a.$refs.toggle,e,{placement:this.placement,middleware:[Id(-1),n,o,Pd(),Hd({limiter:Gd()})]}).then(({x:l,y:_})=>{Object.assign(e.style,{left:`${l}px`,top:`${_}px`,width:`${a.$refs.toggle.getBoundingClientRect().width}px`})})};return Zd(a.$refs.toggle,e,s)}},localFilterBy(){const e=/[^<]*<([^>]+)/;return this.filterBy!==null?this.filterBy:this.userSelect?(a,i,n)=>{const o=n.match(e);return o&&a.subname?.toLocaleLowerCase?.()?.indexOf(o[1].toLocaleLowerCase())>-1||`${i} ${a.subname}`.toLocaleLowerCase().indexOf(n.toLocaleLowerCase())>-1}:tt.VueSelect.props.filterBy.default},localLabel(){return this.label!==null?this.label:this.userSelect?"displayName":tt.VueSelect.props.label.default},propsToForward(){const e=[...Object.keys(tt.VueSelect.props),...tt.VueSelect.mixins.flatMap(a=>Object.keys(a.props??{}))];return{...Object.fromEntries(Object.entries(this.$props).filter(([a,i])=>e.includes(a))),value:this.model,calculatePosition:this.localCalculatePosition,filterBy:this.localFilterBy,label:this.localLabel}},listenersToForward(){return{...this.$listeners,input:e=>{this.model=e}}}},mounted(){!this.labelOutside&&!this.inputLabel&&!this.ariaLabelCombobox&&Sa.util.warn("[NcSelect] An `inputLabel` or `ariaLabelCombobox` should be set. If an external label is used, `labelOutside` should be set to `true`."),this.inputLabel&&this.ariaLabelCombobox&&Sa.util.warn("[NcSelect] Only one of `inputLabel` or `ariaLabelCombobox` should to be set.")},methods:{t:x}};var hg=function(){var e=this,a=e._self._c;return a("VueSelect",e._g(e._b({staticClass:"select",class:{"select--no-wrap":e.noWrap,"user-select":e.userSelect},on:{search:i=>e.search=i},scopedSlots:e._u([!e.labelOutside&&e.inputLabel?{key:"header",fn:function(){return[a("label",{staticClass:"select__label",attrs:{for:e.inputId}},[e._v(" "+e._s(e.inputLabel)+" ")])]},proxy:!0}:null,{key:"search",fn:function({attributes:i,events:n}){return[a("input",e._g(e._b({class:["vs__search",e.inputClass],attrs:{required:e.inputRequired,dir:"auto"}},"input",i,!1),n))]}},{key:"open-indicator",fn:function({attributes:i}){return[a("ChevronDown",e._b({style:{cursor:e.disabled?null:"pointer"},attrs:{"fill-color":"var(--vs-controls-color)",size:26}},"ChevronDown",i,!1))]}},{key:"option",fn:function(i){return[e.userSelect?a("NcListItemIcon",e._b({attrs:{"avatar-size":32,name:i[e.localLabel],search:e.search}},"NcListItemIcon",i,!1)):a("NcEllipsisedOption",{attrs:{name:String(i[e.localLabel]),search:e.search}})]}},{key:"selected-option",fn:function(i){return[e.userSelect?a("NcListItemIcon",e._b({attrs:{"avatar-size":e.avatarSize,name:i[e.localLabel],"no-margin":"",search:e.search}},"NcListItemIcon",i,!1)):a("NcEllipsisedOption",{attrs:{name:String(i[e.localLabel]),search:e.search}})]}},{key:"spinner",fn:function(i){return[i.loading?a("NcLoadingIcon"):e._e()]}},{key:"no-options",fn:function(){return[e._v(" "+e._s(e.t("No results"))+" ")]},proxy:!0},e._l(e.$scopedSlots,function(i,n){return{key:n,fn:function(o){return[e._t(n,null,null,o)]}}})],null,!0)},"VueSelect",e.propsToForward,!1),e.listenersToForward))},Fg=[],ug=ie(gg,hg,Fg,!1,null,null);const L0=ug.exports;oe(t1);function cg(e=[],a=[]){const i={},n=[];for(const o of e){const s=o.split("/");let[l,_]=[s.shift(),s.join("/")];_||(_=l,l=x("Global")),i[l]=i[l]||{continent:l,regions:[]},i[l].regions.push({label:Wr(_),cities:[],timezoneId:o})}for(const o of a){const{continent:s,label:l,timezoneId:_}=o;i[s]=i[s]||{continent:s,regions:[]},i[s].regions.push({label:l,cities:[],timezoneId:_})}for(const o in i)Object.prototype.hasOwnProperty.call(i,o)&&(i[o].regions.sort((s,l)=>s.labelo.continent[]},value:{type:String,default:void 0},modelValue:{type:String,default:"floating"},uid:{type:[String,Number],default:()=>`tz-${ft(5)}`}},emits:["input","update:modelValue","update:model-value"],setup(){return{model:Xa("value","input")}},computed:{placeholder(){return x("Type to search time zone")},selectedTimezone(){for(const e of this.additionalTimezones)if(e.timezoneId===this.model)return e;return{label:Wr(this.model),timezoneId:this.model}},options(){const e=mg(),a=cg(e.listAllTimezones(),this.additionalTimezones);let i=[];return Object.values(a).forEach(n=>{i=i.concat(n.regions)}),i}},methods:{t:x,change(e){e&&(this.model=e.timezoneId)},isSelectable(e){return!e.timezoneId.startsWith("tz-group__")},filterBy(e,a,i){const n=i.trim().split(" ");return e.timezoneId.startsWith("tz-group__")?e.regions.some(o=>this.matchTimezoneId(o.timezoneId,n)):this.matchTimezoneId(e.timezoneId,n)},matchTimezoneId(e,a){return a.every(i=>e.toLowerCase().includes(i.toLowerCase()))}}};var bg=function(){var e=this,a=e._self._c;return a("NcSelect",{attrs:{"aria-label-combobox":e.t("Search for time zone"),clearable:!1,"filter-by":e.filterBy,multiple:!1,options:e.options,placeholder:e.placeholder,selectable:e.isSelectable,uid:e.uid,value:e.selectedTimezone,label:"label"},on:{"option:selected":e.change}})},Dg=[],Tg=ie(pg,bg,Dg,!1,null,null);const yg=Tg.exports;function Qr(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Z0(e){return Qr(e)?new Date(e.getTime()):e==null?new Date(NaN):new Date(e)}function Eg(e){return Qr(e)&&!isNaN(e.getTime())}function Kr(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!(a>=0&&a<=6))throw new RangeError("weekStartsOn must be between 0 and 6");var i=Z0(e),n=i.getDay(),o=(n+7-a)%7;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function Jr(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.firstDayOfWeek,n=i===void 0?0:i,o=a.firstWeekContainsDate,s=o===void 0?1:o;if(!(s>=1&&s<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7");for(var l=Z0(e),_=l.getFullYear(),r=new Date(0),f=_+1;f>=_-1&&(r.setFullYear(f,0,s),r.setHours(0,0,0,0),r=Kr(r,n),!(l.getTime()>=r.getTime()));f--);return r}function go(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.firstDayOfWeek,n=i===void 0?0:i,o=a.firstWeekContainsDate,s=o===void 0?1:o,l=Z0(e),_=Kr(l,n),r=Jr(l,{firstDayOfWeek:n,firstWeekContainsDate:s}),f=_.getTime()-r.getTime();return Math.round(f/(7*24*3600*1e3))+1}var Xr={months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekdaysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],firstDayOfWeek:0,firstWeekContainsDate:1},kg=/\[([^\]]+)]|YYYY|YY?|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|m{1,2}|s{1,2}|Z{1,2}|S{1,3}|w{1,2}|x|X|a|A/g;function Je(e){for(var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,i="".concat(Math.abs(e)),n=e<0?"-":"";i.length1&&arguments[1]!==void 0?arguments[1]:"",i=e>0?"-":"+",n=Math.abs(e),o=Math.floor(n/60),s=n%60;return i+Je(o,2)+a+Je(s,2)}var gs=function(e,a,i){var n=e<12?"AM":"PM";return i?n.toLocaleLowerCase():n},Vt={Y:function(e){var a=e.getFullYear();return a<=9999?"".concat(a):"+".concat(a)},YY:function(e){return Je(e.getFullYear(),4).substr(2)},YYYY:function(e){return Je(e.getFullYear(),4)},M:function(e){return e.getMonth()+1},MM:function(e){return Je(e.getMonth()+1,2)},MMM:function(e,a){return a.monthsShort[e.getMonth()]},MMMM:function(e,a){return a.months[e.getMonth()]},D:function(e){return e.getDate()},DD:function(e){return Je(e.getDate(),2)},H:function(e){return e.getHours()},HH:function(e){return Je(e.getHours(),2)},h:function(e){var a=e.getHours();return a===0?12:a>12?a%12:a},hh:function(){var e=Vt.h.apply(Vt,arguments);return Je(e,2)},m:function(e){return e.getMinutes()},mm:function(e){return Je(e.getMinutes(),2)},s:function(e){return e.getSeconds()},ss:function(e){return Je(e.getSeconds(),2)},S:function(e){return Math.floor(e.getMilliseconds()/100)},SS:function(e){return Je(Math.floor(e.getMilliseconds()/10),2)},SSS:function(e){return Je(e.getMilliseconds(),3)},d:function(e){return e.getDay()},dd:function(e,a){return a.weekdaysMin[e.getDay()]},ddd:function(e,a){return a.weekdaysShort[e.getDay()]},dddd:function(e,a){return a.weekdays[e.getDay()]},A:function(e,a){var i=a.meridiem||gs;return i(e.getHours(),e.getMinutes(),!1)},a:function(e,a){var i=a.meridiem||gs;return i(e.getHours(),e.getMinutes(),!0)},Z:function(e){return fs(ds(e),":")},ZZ:function(e){return fs(ds(e))},X:function(e){return Math.floor(e.getTime()/1e3)},x:function(e){return e.getTime()},w:function(e,a){return go(e,{firstDayOfWeek:a.firstDayOfWeek,firstWeekContainsDate:a.firstWeekContainsDate})},ww:function(e,a){return Je(Vt.w(e,a),2)}};function I0(e,a){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=a?String(a):"YYYY-MM-DDTHH:mm:ss.SSSZ",o=Z0(e);if(!Eg(o))return"Invalid Date";var s=i.locale||Xr;return n.replace(kg,function(l,_){return _||(typeof Vt[l]=="function"?"".concat(Vt[l](o,s)):l)})}function hs(e){return Sg(e)||wg(e)||Ag()}function Ag(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function wg(e){if(Symbol.iterator in Object(e)||Object.prototype.toString.call(e)==="[object Arguments]")return Array.from(e)}function Sg(e){if(Array.isArray(e)){for(var a=0,i=new Array(e.length);a68?i-1:i)*100+n,La({},rn,n)}),ue("YYYY",Mg,rn),ue("M",yt,function(e){return La({},ki,parseInt(e,10)-1)}),ue("MM",xa,function(e){return La({},ki,parseInt(e,10)-1)}),ue("MMM",$t("monthsShort"),Wt("monthsShort",ki)),ue("MMMM",$t("months"),Wt("months",ki)),ue("D",yt,us),ue("DD",xa,us),ue(["H","h"],yt,cs),ue(["HH","hh"],xa,cs),ue("m",yt,ms),ue("mm",xa,ms),ue("s",yt,ps),ue("ss",xa,ps),ue("S",el,function(e){return La({},ln,parseInt(e,10)*100)}),ue("SS",xa,function(e){return La({},ln,parseInt(e,10)*10)}),ue("SSS",xg,ln);function Lg(e){return e.meridiemParse||/[ap]\.?m?\.?/i}function Zg(e){return"".concat(e).toLowerCase().charAt(0)==="p"}ue(["A","a"],Lg,function(e,a){var i=typeof a.isPM=="function"?a.isPM(e):Zg(e);return{isPM:i}});function Ig(e){var a=e.match(/([+-]|\d\d)/g)||["-","0","0"],i=Rg(a,3),n=i[0],o=i[1],s=i[2],l=parseInt(o,10)*60+parseInt(s,10);return l===0?0:n==="+"?-l:+l}ue(["Z","ZZ"],jg,function(e){return{offset:Ig(e)}}),ue("x",al,function(e){return{date:new Date(parseInt(e,10))}}),ue("X",Yg,function(e){return{date:new Date(parseFloat(e)*1e3)}}),ue("d",el,"weekday"),ue("dd",$t("weekdaysMin"),Wt("weekdaysMin","weekday")),ue("ddd",$t("weekdaysShort"),Wt("weekdaysShort","weekday")),ue("dddd",$t("weekdays"),Wt("weekdays","weekday")),ue("w",yt,"week"),ue("ww",xa,"week");function Hg(e,a){if(e!==void 0&&a!==void 0){if(a){if(e<12)return e+12}else if(e===12)return 0}return e}function Pg(e){for(var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Date,i=[0,0,1,0,0,0,0],n=[a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds()],o=!0,s=0;s<7;s++)e[s]===void 0?i[s]=o?n[s]:i[s]:(i[s]=e[s],o=!1);return i}function Gg(e,a,i,n,o,s,l){var _;return e<100&&e>=0?(_=new Date(e+400,a,i,n,o,s,l),isFinite(_.getFullYear())&&_.setFullYear(e)):_=new Date(e,a,i,n,o,s,l),_}function Ug(){for(var e,a=arguments.length,i=new Array(a),n=0;n=0?(i[0]+=400,e=new Date(Date.UTC.apply(Date,i)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(o)):e=new Date(Date.UTC.apply(Date,i)),e}function zg(e,a,i){var n=a.match(Ng);if(!n)throw new Error;for(var o=n.length,s={},l=0;l2&&arguments[2]!==void 0?arguments[2]:{};try{var n=i.locale,o=n===void 0?Xr:n,s=i.backupDate,l=s===void 0?new Date:s,_=zg(e,a,o),r=_.year,f=_.month,d=_.day,g=_.hour,h=_.minute,F=_.second,m=_.millisecond,p=_.isPM,T=_.date,k=_.offset,w=_.weekday,v=_.week;if(T)return T;var M=[r,f,d,g,h,F,m];if(M[3]=Hg(M[3],p),v!==void 0&&f===void 0&&d===void 0){var L=Jr(r===void 0?l:new Date(r,3),{firstDayOfWeek:o.firstDayOfWeek,firstWeekContainsDate:o.firstWeekContainsDate});return new Date(L.getTime()+(v-1)*7*24*3600*1e3)}var O,P=Pg(M,l);return k!==void 0?(P[6]+=k*60*1e3,O=Ug.apply(void 0,hs(P))):O=Gg.apply(void 0,hs(P)),w!==void 0&&O.getDay()!==w?new Date(NaN):O}catch{return new Date(NaN)}}function Mi(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Mi=function(a){return typeof a}:Mi=function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},Mi(e)}function st(e,a,i){return a in e?Object.defineProperty(e,a,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[a]=i,e}function Rn(){return Rn=Object.assign||function(e){for(var a=1;a=0)&&(i[o]=e[o]);return i}function Wg(e,a){if(e==null)return{};var i=$g(e,a),n,o;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Qt(e,a){return Qg(e)||Kg(e,a)||Jg(e,a)||Xg()}function Qg(e){if(Array.isArray(e))return e}function Kg(e,a){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var i=[],n=!0,o=!1,s=void 0;try{for(var l=e[Symbol.iterator](),_;!(n=(_=l.next()).done)&&(i.push(_.value),!(a&&i.length===a));n=!0);}catch(r){o=!0,s=r}finally{try{!n&&l.return!=null&&l.return()}finally{if(o)throw s}}return i}}function Jg(e,a){if(e){if(typeof e=="string")return Ds(e,a);var i=Object.prototype.toString.call(e).slice(8,-1);if(i==="Object"&&e.constructor&&(i=e.constructor.name),i==="Map"||i==="Set")return Array.from(i);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Ds(e,a)}}function Ds(e,a){(a==null||a>e.length)&&(a=e.length);for(var i=0,n=new Array(a);i1&&arguments[1]!==void 0?arguments[1]:0,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:0,l=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0,_=new Date(e,a,i,n,o,s,l);return e<100&&e>=0&&_.setFullYear(e),_}function va(e){return e instanceof Date&&!isNaN(e)}function H0(e){return Array.isArray(e)&&e.length===2&&e.every(va)&&e[0]<=e[1]}function oh(e){return Array.isArray(e)&&e.every(va)}function Ot(e){var a=new Date(e);if(va(a))return a;for(var i=arguments.length,n=new Array(i>1?i-1:0),o=1;o1&&arguments[1]!==void 0?arguments[1]:document.body;if(!e||e===a)return null;var i=function(s,l){return getComputedStyle(s,null).getPropertyValue(l)},n=/(auto|scroll)/,o=n.test(i(e,"overflow")+i(e,"overflow-y")+i(e,"overflow-x"));return o?e:P0(e.parentNode,a)}var mh={name:"Popup",inject:{prefixClass:{default:"mx"}},props:{visible:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!0}},data:function(){return{top:"",left:""}},watch:{visible:{immediate:!0,handler:function(e){var a=this;this.$nextTick(function(){e&&a.displayPopup()})}}},mounted:function(){var e=this;this.appendToBody&&document.body.appendChild(this.$el),this._clickoutEvent="ontouchend"in document?"touchstart":"mousedown",document.addEventListener(this._clickoutEvent,this.handleClickOutside);var a=this.$parent.$el;this._displayPopup=Fh(function(){return e.displayPopup()}),this._scrollParent=P0(a)||window,this._scrollParent.addEventListener("scroll",this._displayPopup),window.addEventListener("resize",this._displayPopup)},beforeDestroy:function(){this.appendToBody&&this.$el.parentNode&&this.$el.parentNode.removeChild(this.$el),document.removeEventListener(this._clickoutEvent,this.handleClickOutside),this._scrollParent.removeEventListener("scroll",this._displayPopup),window.removeEventListener("resize",this._displayPopup)},methods:{handleClickOutside:function(e){if(this.visible){var a=e.target,i=this.$el;i&&!i.contains(a)&&this.$emit("clickoutside",e)}},displayPopup:function(){if(this.visible){var e=this.$el,a=this.$parent.$el,i=this.appendToBody;this._popupRect||(this._popupRect=uh(e));var n=this._popupRect,o=n.width,s=n.height,l=ch(a,o,s,i),_=l.left,r=l.top;this.left=_,this.top=r}}}};function oa(e,a,i,n,o,s,l,_,r,f){var d=typeof i=="function"?i.options:i;return e&&e.render&&(d.render=e.render,d.staticRenderFns=e.staticRenderFns,d._compiled=!0),i}var ph=mh,bh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("transition",{attrs:{name:e.prefixClass+"-zoom-in-down"}},[e.visible?i("div",{class:e.prefixClass+"-datepicker-main "+e.prefixClass+"-datepicker-popup",style:{top:e.top,left:e.left,position:"absolute"}},[e._t("default")],2):e._e()])},Dh=[],Th=void 0,yh=oa({render:bh,staticRenderFns:Dh},Th,ph),Eh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",width:"1em",height:"1em"}},[i("path",{attrs:{d:"M940.218182 107.054545h-209.454546V46.545455h-65.163636v60.50909H363.054545V46.545455H297.890909v60.50909H83.781818c-18.618182 0-32.581818 13.963636-32.581818 32.581819v805.236363c0 18.618182 13.963636 32.581818 32.581818 32.581818h861.090909c18.618182 0 32.581818-13.963636 32.581818-32.581818V139.636364c-4.654545-18.618182-18.618182-32.581818-37.236363-32.581819zM297.890909 172.218182V232.727273h65.163636V172.218182h307.2V232.727273h65.163637V172.218182h176.872727v204.8H116.363636V172.218182h181.527273zM116.363636 912.290909V442.181818h795.927273v470.109091H116.363636z"}})])},kh=[],Ah=void 0,wh=oa({render:Eh,staticRenderFns:kh},Ah,{}),Sh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"1em",height:"1em"}},[i("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}}),e._v(" "),i("path",{attrs:{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}}),e._v(" "),i("path",{attrs:{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"}})])},vh=[],Rh=void 0,Ch=oa({render:Sh,staticRenderFns:vh},Rh,{}),Oh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",width:"1em",height:"1em"}},[i("path",{attrs:{d:"M810.005333 274.005333l-237.994667 237.994667 237.994667 237.994667-60.010667 60.010667-237.994667-237.994667-237.994667 237.994667-60.010667-60.010667 237.994667-237.994667-237.994667-237.994667 60.010667-60.010667 237.994667 237.994667 237.994667-237.994667z"}})])},Bh=[],Nh=void 0,xh=oa({render:Oh,staticRenderFns:Bh},Nh,{}),Mh={props:{type:String,disabled:Boolean},inject:{prefixClass:{default:"mx"}}},jh=Mh,Yh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("button",e._g({class:[e.prefixClass+"-btn "+e.prefixClass+"-btn-text "+e.prefixClass+"-btn-icon-"+e.type,{disabled:e.disabled}],attrs:{type:"button",disabled:e.disabled}},e.$listeners),[i("i",{class:e.prefixClass+"-icon-"+e.type})])},qh=[],Lh=void 0,Fo=oa({render:Yh,staticRenderFns:qh},Lh,jh),Zh={name:"TableDate",components:{IconButton:Fo},inject:{getLocale:{default:function(){return xt}},getWeek:{default:function(){return go}},prefixClass:{default:"mx"},onDateMouseEnter:{default:void 0},onDateMouseLeave:{default:void 0}},props:{disabledCalendarChanger:{type:Function,default:function(){return!1}},calendar:{type:Date,default:function(){return new Date}},showWeekNumber:{type:Boolean,default:!1},titleFormat:{type:String,default:"YYYY-MM-DD"},getRowClasses:{type:Function,default:function(){return[]}},getCellClasses:{type:Function,default:function(){return[]}}},computed:{firstDayOfWeek:function(){return this.getLocale().formatLocale.firstDayOfWeek||0},yearMonth:function(){var e=this.getLocale(),a=e.yearFormat,i=e.monthBeforeYear,n=e.monthFormat,o=n===void 0?"MMM":n,s={panel:"year",label:this.formatDate(this.calendar,a)},l={panel:"month",label:this.formatDate(this.calendar,o)};return i?[l,s]:[s,l]},days:function(){var e=this.getLocale(),a=e.days||e.formatLocale.weekdaysMin;return a.concat(a).slice(this.firstDayOfWeek,this.firstDayOfWeek+7)},dates:function(){var e=this.calendar.getFullYear(),a=this.calendar.getMonth(),i=lh({firstDayOfWeek:this.firstDayOfWeek,year:e,month:a});return ho(i,7)}},methods:{isDisabledArrows:function(e){var a=new Date(this.calendar);switch(e){case"last-year":a.setFullYear(a.getFullYear()-1,a.getMonth()+1,0),a.setHours(23,59,59,999);break;case"next-year":a.setFullYear(a.getFullYear()+1);break;case"last-month":a.setMonth(a.getMonth(),0),a.setHours(23,59,59,999);break;case"next-month":a.setMonth(a.getMonth()+1);break}return this.disabledCalendarChanger(a,e)},handleIconLeftClick:function(){this.$emit("changecalendar",Bn(this.calendar,function(e){return e-1}),"last-month")},handleIconRightClick:function(){this.$emit("changecalendar",Bn(this.calendar,function(e){return e+1}),"next-month")},handleIconDoubleLeftClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e-1}),"last-year")},handleIconDoubleRightClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e+1}),"next-year")},handlePanelChange:function(e){this.$emit("changepanel",e)},handleMouseEnter:function(e){typeof this.onDateMouseEnter=="function"&&this.onDateMouseEnter(e)},handleMouseLeave:function(e){typeof this.onDateMouseLeave=="function"&&this.onDateMouseLeave(e)},handleCellClick:function(e){var a=e.target;a.tagName.toUpperCase()==="DIV"&&(a=a.parentNode);var i=a.getAttribute("data-row-col");if(i){var n=i.split(",").map(function(r){return parseInt(r,10)}),o=Qt(n,2),s=o[0],l=o[1],_=this.dates[s][l];this.$emit("select",new Date(_))}},formatDate:function(e,a){return I0(e,a,{locale:this.getLocale().formatLocale})},getCellTitle:function(e){var a=this.titleFormat;return this.formatDate(e,a)},getWeekNumber:function(e){return this.getWeek(e,this.getLocale().formatLocale)}}},Ih=Zh,Hh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-calendar "+e.prefixClass+"-calendar-panel-date"},[i("div",{class:e.prefixClass+"-calendar-header"},[i("icon-button",{attrs:{type:"double-left",disabled:e.isDisabledArrows("last-year")},on:{click:e.handleIconDoubleLeftClick}}),e._v(" "),i("icon-button",{attrs:{type:"left",disabled:e.isDisabledArrows("last-month")},on:{click:e.handleIconLeftClick}}),e._v(" "),i("icon-button",{attrs:{type:"double-right",disabled:e.isDisabledArrows("next-year")},on:{click:e.handleIconDoubleRightClick}}),e._v(" "),i("icon-button",{attrs:{type:"right",disabled:e.isDisabledArrows("next-month")},on:{click:e.handleIconRightClick}}),e._v(" "),i("span",{class:e.prefixClass+"-calendar-header-label"},e._l(e.yearMonth,function(n){return i("button",{key:n.panel,class:e.prefixClass+"-btn "+e.prefixClass+"-btn-text "+e.prefixClass+"-btn-current-"+n.panel,attrs:{type:"button"},on:{click:function(o){return e.handlePanelChange(n.panel)}}},[e._v(`
`+e._s(n.label)+`
`)])}),0)],1),e._v(" "),i("div",{class:e.prefixClass+"-calendar-content"},[i("table",{class:e.prefixClass+"-table "+e.prefixClass+"-table-date"},[i("thead",[i("tr",[e.showWeekNumber?i("th",{class:e.prefixClass+"-week-number-header"}):e._e(),e._v(" "),e._l(e.days,function(n){return i("th",{key:n},[e._v(e._s(n))])})],2)]),e._v(" "),i("tbody",{on:{click:e.handleCellClick}},e._l(e.dates,function(n,o){return i("tr",{key:o,class:[e.prefixClass+"-date-row",e.getRowClasses(n)]},[e.showWeekNumber?i("td",{class:e.prefixClass+"-week-number",attrs:{"data-row-col":o+",0"}},[e._v(`
`+e._s(e.getWeekNumber(n[0]))+`
- `)]):e._e(),e._v(" "),e._l(n,function(s,l){return i("td",{key:l,staticClass:"cell",class:e.getCellClasses(s),attrs:{"data-row-col":o+","+l,title:e.getCellTitle(s)},on:{mouseenter:function(_){return e.handleMouseEnter(s)},mouseleave:function(_){return e.handleMouseLeave(s)}}},[i("div",[e._v(e._s(s.getDate()))])])})],2)}),0)])])])},Hh=[],Ph=void 0,Gh=oa({render:Ih,staticRenderFns:Hh},Ph,Zh),Uh={name:"TableMonth",components:{IconButton:Fo},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{disabledCalendarChanger:{type:Function,default:function(){return!1}},calendar:{type:Date,default:function(){return new Date}},getCellClasses:{type:Function,default:function(){return[]}}},computed:{calendarYear:function(){return this.calendar.getFullYear()},months:function(){var e=this.getLocale(),a=e.months||e.formatLocale.monthsShort,i=a.map(function(n,o){return{text:n,month:o}});return ho(i,3)}},methods:{isDisabledArrows:function(e){var a=new Date(this.calendar);switch(e){case"last-year":a.setFullYear(a.getFullYear()-1,11,31),a.setHours(23,59,59,999);break;case"next-year":a.setFullYear(a.getFullYear()+1,0,1);break}return this.disabledCalendarChanger(a,e)},handleIconDoubleLeftClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e-1}),"last-year")},handleIconDoubleRightClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e+1}),"next-year")},handlePanelChange:function(){this.$emit("changepanel","year")},handleClick:function(e){var a=e.target;a.tagName.toUpperCase()==="DIV"&&(a=a.parentNode);var i=a.getAttribute("data-month");i&&!a.classList.contains("disabled")&&this.$emit("select",parseInt(i,10))}}},zh=Uh,Vh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-calendar "+e.prefixClass+"-calendar-panel-month"},[i("div",{class:e.prefixClass+"-calendar-header"},[i("icon-button",{attrs:{type:"double-left",disabled:e.isDisabledArrows("last-year")},on:{click:e.handleIconDoubleLeftClick}}),e._v(" "),i("icon-button",{attrs:{type:"double-right",disabled:e.isDisabledArrows("next-year")},on:{click:e.handleIconDoubleRightClick}}),e._v(" "),i("span",{class:e.prefixClass+"-calendar-header-label"},[i("button",{class:e.prefixClass+"-btn "+e.prefixClass+"-btn-text",attrs:{type:"button"},on:{click:e.handlePanelChange}},[e._v(`
+ `)]):e._e(),e._v(" "),e._l(n,function(s,l){return i("td",{key:l,staticClass:"cell",class:e.getCellClasses(s),attrs:{"data-row-col":o+","+l,title:e.getCellTitle(s)},on:{mouseenter:function(_){return e.handleMouseEnter(s)},mouseleave:function(_){return e.handleMouseLeave(s)}}},[i("div",[e._v(e._s(s.getDate()))])])})],2)}),0)])])])},Ph=[],Gh=void 0,Uh=oa({render:Hh,staticRenderFns:Ph},Gh,Ih),zh={name:"TableMonth",components:{IconButton:Fo},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{disabledCalendarChanger:{type:Function,default:function(){return!1}},calendar:{type:Date,default:function(){return new Date}},getCellClasses:{type:Function,default:function(){return[]}}},computed:{calendarYear:function(){return this.calendar.getFullYear()},months:function(){var e=this.getLocale(),a=e.months||e.formatLocale.monthsShort,i=a.map(function(n,o){return{text:n,month:o}});return ho(i,3)}},methods:{isDisabledArrows:function(e){var a=new Date(this.calendar);switch(e){case"last-year":a.setFullYear(a.getFullYear()-1,11,31),a.setHours(23,59,59,999);break;case"next-year":a.setFullYear(a.getFullYear()+1,0,1);break}return this.disabledCalendarChanger(a,e)},handleIconDoubleLeftClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e-1}),"last-year")},handleIconDoubleRightClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e+1}),"next-year")},handlePanelChange:function(){this.$emit("changepanel","year")},handleClick:function(e){var a=e.target;a.tagName.toUpperCase()==="DIV"&&(a=a.parentNode);var i=a.getAttribute("data-month");i&&!a.classList.contains("disabled")&&this.$emit("select",parseInt(i,10))}}},Vh=zh,$h=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-calendar "+e.prefixClass+"-calendar-panel-month"},[i("div",{class:e.prefixClass+"-calendar-header"},[i("icon-button",{attrs:{type:"double-left",disabled:e.isDisabledArrows("last-year")},on:{click:e.handleIconDoubleLeftClick}}),e._v(" "),i("icon-button",{attrs:{type:"double-right",disabled:e.isDisabledArrows("next-year")},on:{click:e.handleIconDoubleRightClick}}),e._v(" "),i("span",{class:e.prefixClass+"-calendar-header-label"},[i("button",{class:e.prefixClass+"-btn "+e.prefixClass+"-btn-text",attrs:{type:"button"},on:{click:e.handlePanelChange}},[e._v(`
`+e._s(e.calendarYear)+`
- `)])])],1),e._v(" "),i("div",{class:e.prefixClass+"-calendar-content"},[i("table",{class:e.prefixClass+"-table "+e.prefixClass+"-table-month",on:{click:e.handleClick}},e._l(e.months,function(n,o){return i("tr",{key:o},e._l(n,function(s,l){return i("td",{key:l,staticClass:"cell",class:e.getCellClasses(s.month),attrs:{"data-month":s.month}},[i("div",[e._v(e._s(s.text))])])}),0)}),0)])])},$h=[],Wh=void 0,Qh=oa({render:Vh,staticRenderFns:$h},Wh,zh),Kh={name:"TableYear",components:{IconButton:Fo},inject:{prefixClass:{default:"mx"}},props:{disabledCalendarChanger:{type:Function,default:function(){return!1}},calendar:{type:Date,default:function(){return new Date}},getCellClasses:{type:Function,default:function(){return[]}},getYearPanel:{type:Function}},computed:{years:function(){var e=new Date(this.calendar);return typeof this.getYearPanel=="function"?this.getYearPanel(e):this.getYears(e)},firstYear:function(){return this.years[0][0]},lastYear:function(){var e=function(a){return a[a.length-1]};return e(e(this.years))}},methods:{isDisabledArrows:function(e){var a=new Date(this.calendar);switch(e){case"last-decade":a.setFullYear(this.firstYear-1,11,31),a.setHours(23,59,59,999);break;case"next-decade":a.setFullYear(this.lastYear+1,0,1);break}return this.disabledCalendarChanger(a,e)},getYears:function(e){for(var a=Math.floor(e.getFullYear()/10)*10,i=[],n=0;n<10;n++)i.push(a+n);return ho(i,2)},handleIconDoubleLeftClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e-10}),"last-decade")},handleIconDoubleRightClick:function(){this.$emit("changecalendar",Bt(this.calendar,function(e){return e+10}),"next-decade")},handleClick:function(e){var a=e.target;a.tagName.toUpperCase()==="DIV"&&(a=a.parentNode);var i=a.getAttribute("data-year");i&&!a.classList.contains("disabled")&&this.$emit("select",parseInt(i,10))}}},Jh=Kh,Xh=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-calendar "+e.prefixClass+"-calendar-panel-year"},[i("div",{class:e.prefixClass+"-calendar-header"},[i("icon-button",{attrs:{type:"double-left",disabled:e.isDisabledArrows("last-decade")},on:{click:e.handleIconDoubleLeftClick}}),e._v(" "),i("icon-button",{attrs:{type:"double-right",disabled:e.isDisabledArrows("next-decade")},on:{click:e.handleIconDoubleRightClick}}),e._v(" "),i("span",{class:e.prefixClass+"-calendar-header-label"},[i("span",[e._v(e._s(e.firstYear))]),e._v(" "),i("span",{class:e.prefixClass+"-calendar-decade-separator"}),e._v(" "),i("span",[e._v(e._s(e.lastYear))])])],1),e._v(" "),i("div",{class:e.prefixClass+"-calendar-content"},[i("table",{class:e.prefixClass+"-table "+e.prefixClass+"-table-year",on:{click:e.handleClick}},e._l(e.years,function(n,o){return i("tr",{key:o},e._l(n,function(s,l){return i("td",{key:l,staticClass:"cell",class:e.getCellClasses(s),attrs:{"data-year":s}},[i("div",[e._v(e._s(s))])])}),0)}),0)])])},eF=[],aF=void 0,tF=oa({render:Xh,staticRenderFns:eF},aF,Jh),dt={name:"CalendarPanel",inject:{prefixClass:{default:"mx"},dispatchDatePicker:{default:function(){return function(){}}}},props:{value:{},defaultValue:{default:function(){var e=new Date;return e.setHours(0,0,0,0),e}},defaultPanel:{type:String},disabledCalendarChanger:{type:Function,default:function(){return!1}},disabledDate:{type:Function,default:function(){return!1}},type:{type:String,default:"date"},getClasses:{type:Function,default:function(){return[]}},showWeekNumber:{type:Boolean,default:void 0},getYearPanel:{type:Function},titleFormat:{type:String,default:"YYYY-MM-DD"},calendar:Date,partialUpdate:{type:Boolean,default:!1}},data:function(){var e=["date","month","year"],a=Math.max(e.indexOf(this.type),e.indexOf(this.defaultPanel)),i=a!==-1?e[a]:"date";return{panel:i,innerCalendar:new Date}},computed:{innerValue:function(){var e=Array.isArray(this.value)?this.value:[this.value],a={year:oh,month:On,date:sh},i=a[this.type]||a.date;return e.filter(va).map(function(n){return i(n)})},calendarYear:function(){return this.innerCalendar.getFullYear()},calendarMonth:function(){return this.innerCalendar.getMonth()}},watch:{value:{immediate:!0,handler:"initCalendar"},calendar:{handler:"initCalendar"},defaultValue:{handler:"initCalendar"}},methods:{initCalendar:function(){var e=this.calendar;if(!va(e)){var a=this.innerValue.length;e=Ot(a>0?this.innerValue[a-1]:this.defaultValue)}this.innerCalendar=On(e)},isDisabled:function(e){return this.disabledDate(new Date(e),this.innerValue)},emitDate:function(e,a){this.isDisabled(e)||(this.$emit("select",e,a,this.innerValue),this.dispatchDatePicker("pick",e,a))},handleCalendarChange:function(e,a){var i=new Date(this.innerCalendar);this.innerCalendar=e,this.$emit("update:calendar",e),this.dispatchDatePicker("calendar-change",e,i,a)},handelPanelChange:function(e){var a=this.panel;this.panel=e,this.dispatchDatePicker("panel-change",e,a)},handleSelectYear:function(e){if(this.type==="year"){var a=this.getYearCellDate(e);this.emitDate(a,"year")}else if(this.handleCalendarChange(wa(e,this.calendarMonth),"year"),this.handelPanelChange("month"),this.partialUpdate&&this.innerValue.length===1){var i=new Date(this.innerValue[0]);i.setFullYear(e),this.emitDate(i,"year")}},handleSelectMonth:function(e){if(this.type==="month"){var a=this.getMonthCellDate(e);this.emitDate(a,"month")}else if(this.handleCalendarChange(wa(this.calendarYear,e),"month"),this.handelPanelChange("date"),this.partialUpdate&&this.innerValue.length===1){var i=new Date(this.innerValue[0]);i.setFullYear(this.calendarYear),this.emitDate(Bn(i,e),"month")}},handleSelectDate:function(e){this.emitDate(e,this.type==="week"?"week":"date")},getMonthCellDate:function(e){return wa(this.calendarYear,e)},getYearCellDate:function(e){return wa(e,0)},getDateClasses:function(e){var a=e.getMonth()!==this.calendarMonth,i=[];e.getTime()===new Date().setHours(0,0,0,0)&&i.push("today"),a&&i.push("not-current-month");var n=this.getStateClass(e);return n==="active"&&a||i.push(n),i.concat(this.getClasses(e,this.innerValue,i.join(" ")))},getMonthClasses:function(e){var a=[];if(this.type!=="month"){this.calendarMonth===e&&a.push("active");var i=this.getMonthCellDate(e);return this.disabledCalendarChanger(i,"month")&&a.push("disabled"),a}var n=this.getMonthCellDate(e);return a.push(this.getStateClass(n)),a.concat(this.getClasses(n,this.innerValue,a.join(" ")))},getYearClasses:function(e){var a=[];if(this.type!=="year"){this.calendarYear===e&&a.push("active");var i=this.getYearCellDate(e);return this.disabledCalendarChanger(i,"year")&&a.push("disabled"),a}var n=this.getYearCellDate(e);return a.push(this.getStateClass(n)),a.concat(this.getClasses(n,this.innerValue,a.join(" ")))},getStateClass:function(e){return this.isDisabled(e)?"disabled":this.innerValue.some(function(a){return a.getTime()===e.getTime()})?"active":""},getWeekState:function(e){if(this.type!=="week")return"";var a=e[0].getTime(),i=e[6].getTime(),n=this.innerValue.some(function(o){var s=o.getTime();return s>=a&&s<=i});return n?"".concat(this.prefixClass,"-active-week"):""}},render:function(){var e=arguments[0],a=this.panel,i=this.innerCalendar;return a==="year"?e(tF,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getYearClasses,getYearPanel:this.getYearPanel},on:{select:this.handleSelectYear,changecalendar:this.handleCalendarChange}}):a==="month"?e(Qh,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getMonthClasses},on:{select:this.handleSelectMonth,changepanel:this.handelPanelChange,changecalendar:this.handleCalendarChange}}):e(Gh,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getDateClasses,getRowClasses:this.getWeekState,titleFormat:this.titleFormat,showWeekNumber:typeof this.showWeekNumber=="boolean"?this.showWeekNumber:this.type==="week"},class:st({},"".concat(this.prefixClass,"-calendar-week-mode"),this.type==="week"),on:{select:this.handleSelectDate,changepanel:this.handelPanelChange,changecalendar:this.handleCalendarChange}})}},Kt={name:"CalendarRange",components:{CalendarPanel:dt},provide:function(){return{onDateMouseEnter:this.onDateMouseEnter,onDateMouseLeave:this.onDateMouseLeave}},inject:{prefixClass:{default:"mx"}},props:De({},dt.props),data:function(){return{innerValue:[],calendars:[],hoveredValue:null}},computed:{calendarMinDiff:function(){var e={date:1,month:12,year:120};return e[this.type]||e.date},calendarMaxDiff:function(){return 1/0},defaultValues:function(){return Array.isArray(this.defaultValue)?this.defaultValue:[this.defaultValue,this.defaultValue]}},watch:{value:{immediate:!0,handler:function(){var e=this;this.innerValue=H0(this.value)?this.value:[new Date(NaN),new Date(NaN)];var a=this.innerValue.map(function(i,n){return On(Ot(i,e.defaultValues[n]))});this.updateCalendars(a)}}},methods:{handleSelect:function(e,a){var i=Qt(this.innerValue,2),n=i[0],o=i[1];va(n)&&!va(o)?(n.getTime()>e.getTime()?this.innerValue=[e,n]:this.innerValue=[n,e],this.emitDate(this.innerValue,a)):this.innerValue=[e,new Date(NaN)]},onDateMouseEnter:function(e){this.hoveredValue=e},onDateMouseLeave:function(){this.hoveredValue=null},emitDate:function(e,a){this.$emit("select",e,a)},updateStartCalendar:function(e){this.updateCalendars([e,this.calendars[1]],1)},updateEndCalendar:function(e){this.updateCalendars([this.calendars[0],e],0)},updateCalendars:function(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,i=this.getCalendarGap(e);if(i){var n=new Date(e[a]);n.setMonth(n.getMonth()+(a===0?-i:i)),e[a]=n}this.calendars=e},getCalendarGap:function(e){var a=Qt(e,2),i=a[0],n=a[1],o=n.getFullYear()-i.getFullYear(),s=n.getMonth()-i.getMonth(),l=o*12+s,_=this.calendarMinDiff,r=this.calendarMaxDiff;return l<_?_-l:l>r?r-l:0},getRangeClasses:function(e,a,i){var n=[].concat(this.getClasses(e,a,i));if(/disabled|active/.test(i))return n;var o=function(s,l){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(m){return m.getTime()},r=_(s),f=l.map(_),d=Qt(f,2),g=d[0],h=d[1];if(g>h){var F=[h,g];g=F[0],h=F[1]}return r>g&&r"u")return 0;if(Ai!==void 0)return Ai;var e=document.createElement("div");e.style.visibility="hidden",e.style.overflow="scroll",e.style.width="100px",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);var a=document.createElement("div");return a.style.width="100%",e.appendChild(a),Ai=e.offsetWidth-a.offsetWidth,e.parentNode.removeChild(e),Ai}var nF={inject:{prefixClass:{default:"mx"}},data:function(){return{scrollbarWidth:0,thumbTop:"",thumbHeight:""}},created:function(){this.scrollbarWidth=iF(),document.addEventListener("mouseup",this.handleDragend)},beforeDestroy:function(){document.addEventListener("mouseup",this.handleDragend)},mounted:function(){this.$nextTick(this.getThumbSize)},methods:{getThumbSize:function(){var e=this.$refs.wrap;if(e){var a=e.clientHeight*100/e.scrollHeight;this.thumbHeight=a<100?"".concat(a,"%"):""}},handleScroll:function(e){var a=e.currentTarget,i=a.scrollHeight,n=a.scrollTop;this.thumbTop="".concat(n*100/i,"%")},handleDragstart:function(e){e.stopImmediatePropagation(),this._draggable=!0;var a=this.$refs.thumb.offsetTop;this._prevY=e.clientY-a,document.addEventListener("mousemove",this.handleDraging)},handleDraging:function(e){if(this._draggable){var a=e.clientY,i=this.$refs.wrap,n=i.scrollHeight,o=i.clientHeight,s=a-this._prevY,l=s*n/o;i.scrollTop=l}},handleDragend:function(){this._draggable&&(this._draggable=!1,document.removeEventListener("mousemove",this.handleDraging))}}},oF=nF,sF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-scrollbar",style:{position:"relative",overflow:"hidden"}},[i("div",{ref:"wrap",class:e.prefixClass+"-scrollbar-wrap",style:{marginRight:"-"+e.scrollbarWidth+"px"},on:{scroll:e.handleScroll}},[e._t("default")],2),e._v(" "),i("div",{class:e.prefixClass+"-scrollbar-track"},[i("div",{ref:"thumb",class:e.prefixClass+"-scrollbar-thumb",style:{height:e.thumbHeight,top:e.thumbTop},on:{mousedown:e.handleDragstart}})])])},rF=[],lF=void 0,nl=oa({render:sF,staticRenderFns:rF},lF,oF),_n=function(e){return e=parseInt(e,10),e<10?"0".concat(e):"".concat(e)},dn=function(e,a,i){if(Array.isArray(i))return i.filter(function(s){return s>=0&&s2&&arguments[2]!==void 0?arguments[2]:0;if(n<=0){requestAnimationFrame(function(){a.scrollTop=i});return}var o=i-a.scrollTop,s=o/n*10;requestAnimationFrame(function(){var l=a.scrollTop+s;if(l>=i){a.scrollTop=i;return}a.scrollTop=l,e(a,i,n-10)})},dF={name:"ListColumns",components:{ScrollbarVertical:nl},inject:{prefixClass:{default:"mx"}},props:{date:Date,scrollDuration:{type:Number,default:100},getClasses:{type:Function,default:function(){return[]}},hourOptions:Array,minuteOptions:Array,secondOptions:Array,showHour:{type:Boolean,default:!0},showMinute:{type:Boolean,default:!0},showSecond:{type:Boolean,default:!0},hourStep:{type:Number,default:1},minuteStep:{type:Number,default:1},secondStep:{type:Number,default:1},use12h:{type:Boolean,default:!1}},computed:{columns:function(){var e=[];return this.showHour&&e.push({type:"hour",list:this.getHoursList()}),this.showMinute&&e.push({type:"minute",list:this.getMinutesList()}),this.showSecond&&e.push({type:"second",list:this.getSecondsList()}),this.use12h&&e.push({type:"ampm",list:this.getAMPMList()}),e.filter(function(a){return a.list.length>0})}},watch:{date:{handler:function(){var e=this;this.$nextTick(function(){e.scrollToSelected(e.scrollDuration)})}}},mounted:function(){this.scrollToSelected(0)},methods:{getHoursList:function(){var e=this;return dn(this.use12h?12:24,this.hourStep,this.hourOptions).map(function(a){var i=new Date(e.date),n=_n(a);e.use12h&&(a===0&&(n="12"),i.getHours()>=12&&(a+=12));var o=i.setHours(a);return{value:o,text:n}})},getMinutesList:function(){var e=this;return dn(60,this.minuteStep,this.minuteOptions).map(function(a){var i=new Date(e.date).setMinutes(a);return{value:i,text:_n(a)}})},getSecondsList:function(){var e=this;return dn(60,this.secondStep,this.secondOptions).map(function(a){var i=new Date(e.date).setSeconds(a);return{value:i,text:_n(a)}})},getAMPMList:function(){var e=this;return["AM","PM"].map(function(a,i){var n=new Date(e.date),o=n.setHours(n.getHours()%12+i*12);return{text:a,value:o}})},scrollToSelected:function(e){for(var a=this.$el.querySelectorAll(".active"),i=0;i0?this.innerValue[a-1]:this.defaultValue)}this.innerCalendar=On(e)},isDisabled:function(e){return this.disabledDate(new Date(e),this.innerValue)},emitDate:function(e,a){this.isDisabled(e)||(this.$emit("select",e,a,this.innerValue),this.dispatchDatePicker("pick",e,a))},handleCalendarChange:function(e,a){var i=new Date(this.innerCalendar);this.innerCalendar=e,this.$emit("update:calendar",e),this.dispatchDatePicker("calendar-change",e,i,a)},handelPanelChange:function(e){var a=this.panel;this.panel=e,this.dispatchDatePicker("panel-change",e,a)},handleSelectYear:function(e){if(this.type==="year"){var a=this.getYearCellDate(e);this.emitDate(a,"year")}else if(this.handleCalendarChange(wa(e,this.calendarMonth),"year"),this.handelPanelChange("month"),this.partialUpdate&&this.innerValue.length===1){var i=new Date(this.innerValue[0]);i.setFullYear(e),this.emitDate(i,"year")}},handleSelectMonth:function(e){if(this.type==="month"){var a=this.getMonthCellDate(e);this.emitDate(a,"month")}else if(this.handleCalendarChange(wa(this.calendarYear,e),"month"),this.handelPanelChange("date"),this.partialUpdate&&this.innerValue.length===1){var i=new Date(this.innerValue[0]);i.setFullYear(this.calendarYear),this.emitDate(Bn(i,e),"month")}},handleSelectDate:function(e){this.emitDate(e,this.type==="week"?"week":"date")},getMonthCellDate:function(e){return wa(this.calendarYear,e)},getYearCellDate:function(e){return wa(e,0)},getDateClasses:function(e){var a=e.getMonth()!==this.calendarMonth,i=[];e.getTime()===new Date().setHours(0,0,0,0)&&i.push("today"),a&&i.push("not-current-month");var n=this.getStateClass(e);return n==="active"&&a||i.push(n),i.concat(this.getClasses(e,this.innerValue,i.join(" ")))},getMonthClasses:function(e){var a=[];if(this.type!=="month"){this.calendarMonth===e&&a.push("active");var i=this.getMonthCellDate(e);return this.disabledCalendarChanger(i,"month")&&a.push("disabled"),a}var n=this.getMonthCellDate(e);return a.push(this.getStateClass(n)),a.concat(this.getClasses(n,this.innerValue,a.join(" ")))},getYearClasses:function(e){var a=[];if(this.type!=="year"){this.calendarYear===e&&a.push("active");var i=this.getYearCellDate(e);return this.disabledCalendarChanger(i,"year")&&a.push("disabled"),a}var n=this.getYearCellDate(e);return a.push(this.getStateClass(n)),a.concat(this.getClasses(n,this.innerValue,a.join(" ")))},getStateClass:function(e){return this.isDisabled(e)?"disabled":this.innerValue.some(function(a){return a.getTime()===e.getTime()})?"active":""},getWeekState:function(e){if(this.type!=="week")return"";var a=e[0].getTime(),i=e[6].getTime(),n=this.innerValue.some(function(o){var s=o.getTime();return s>=a&&s<=i});return n?"".concat(this.prefixClass,"-active-week"):""}},render:function(){var e=arguments[0],a=this.panel,i=this.innerCalendar;return a==="year"?e(iF,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getYearClasses,getYearPanel:this.getYearPanel},on:{select:this.handleSelectYear,changecalendar:this.handleCalendarChange}}):a==="month"?e(Kh,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getMonthClasses},on:{select:this.handleSelectMonth,changepanel:this.handelPanelChange,changecalendar:this.handleCalendarChange}}):e(Uh,{attrs:{disabledCalendarChanger:this.disabledCalendarChanger,calendar:i,getCellClasses:this.getDateClasses,getRowClasses:this.getWeekState,titleFormat:this.titleFormat,showWeekNumber:typeof this.showWeekNumber=="boolean"?this.showWeekNumber:this.type==="week"},class:st({},"".concat(this.prefixClass,"-calendar-week-mode"),this.type==="week"),on:{select:this.handleSelectDate,changepanel:this.handelPanelChange,changecalendar:this.handleCalendarChange}})}},Kt={name:"CalendarRange",components:{CalendarPanel:dt},provide:function(){return{onDateMouseEnter:this.onDateMouseEnter,onDateMouseLeave:this.onDateMouseLeave}},inject:{prefixClass:{default:"mx"}},props:De({},dt.props),data:function(){return{innerValue:[],calendars:[],hoveredValue:null}},computed:{calendarMinDiff:function(){var e={date:1,month:12,year:120};return e[this.type]||e.date},calendarMaxDiff:function(){return 1/0},defaultValues:function(){return Array.isArray(this.defaultValue)?this.defaultValue:[this.defaultValue,this.defaultValue]}},watch:{value:{immediate:!0,handler:function(){var e=this;this.innerValue=H0(this.value)?this.value:[new Date(NaN),new Date(NaN)];var a=this.innerValue.map(function(i,n){return On(Ot(i,e.defaultValues[n]))});this.updateCalendars(a)}}},methods:{handleSelect:function(e,a){var i=Qt(this.innerValue,2),n=i[0],o=i[1];va(n)&&!va(o)?(n.getTime()>e.getTime()?this.innerValue=[e,n]:this.innerValue=[n,e],this.emitDate(this.innerValue,a)):this.innerValue=[e,new Date(NaN)]},onDateMouseEnter:function(e){this.hoveredValue=e},onDateMouseLeave:function(){this.hoveredValue=null},emitDate:function(e,a){this.$emit("select",e,a)},updateStartCalendar:function(e){this.updateCalendars([e,this.calendars[1]],1)},updateEndCalendar:function(e){this.updateCalendars([this.calendars[0],e],0)},updateCalendars:function(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,i=this.getCalendarGap(e);if(i){var n=new Date(e[a]);n.setMonth(n.getMonth()+(a===0?-i:i)),e[a]=n}this.calendars=e},getCalendarGap:function(e){var a=Qt(e,2),i=a[0],n=a[1],o=n.getFullYear()-i.getFullYear(),s=n.getMonth()-i.getMonth(),l=o*12+s,_=this.calendarMinDiff,r=this.calendarMaxDiff;return l<_?_-l:l>r?r-l:0},getRangeClasses:function(e,a,i){var n=[].concat(this.getClasses(e,a,i));if(/disabled|active/.test(i))return n;var o=function(s,l){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(m){return m.getTime()},r=_(s),f=l.map(_),d=Qt(f,2),g=d[0],h=d[1];if(g>h){var F=[h,g];g=F[0],h=F[1]}return r>g&&r"u")return 0;if(Ai!==void 0)return Ai;var e=document.createElement("div");e.style.visibility="hidden",e.style.overflow="scroll",e.style.width="100px",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);var a=document.createElement("div");return a.style.width="100%",e.appendChild(a),Ai=e.offsetWidth-a.offsetWidth,e.parentNode.removeChild(e),Ai}var oF={inject:{prefixClass:{default:"mx"}},data:function(){return{scrollbarWidth:0,thumbTop:"",thumbHeight:""}},created:function(){this.scrollbarWidth=nF(),document.addEventListener("mouseup",this.handleDragend)},beforeDestroy:function(){document.addEventListener("mouseup",this.handleDragend)},mounted:function(){this.$nextTick(this.getThumbSize)},methods:{getThumbSize:function(){var e=this.$refs.wrap;if(e){var a=e.clientHeight*100/e.scrollHeight;this.thumbHeight=a<100?"".concat(a,"%"):""}},handleScroll:function(e){var a=e.currentTarget,i=a.scrollHeight,n=a.scrollTop;this.thumbTop="".concat(n*100/i,"%")},handleDragstart:function(e){e.stopImmediatePropagation(),this._draggable=!0;var a=this.$refs.thumb.offsetTop;this._prevY=e.clientY-a,document.addEventListener("mousemove",this.handleDraging)},handleDraging:function(e){if(this._draggable){var a=e.clientY,i=this.$refs.wrap,n=i.scrollHeight,o=i.clientHeight,s=a-this._prevY,l=s*n/o;i.scrollTop=l}},handleDragend:function(){this._draggable&&(this._draggable=!1,document.removeEventListener("mousemove",this.handleDraging))}}},sF=oF,rF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-scrollbar",style:{position:"relative",overflow:"hidden"}},[i("div",{ref:"wrap",class:e.prefixClass+"-scrollbar-wrap",style:{marginRight:"-"+e.scrollbarWidth+"px"},on:{scroll:e.handleScroll}},[e._t("default")],2),e._v(" "),i("div",{class:e.prefixClass+"-scrollbar-track"},[i("div",{ref:"thumb",class:e.prefixClass+"-scrollbar-thumb",style:{height:e.thumbHeight,top:e.thumbTop},on:{mousedown:e.handleDragstart}})])])},lF=[],_F=void 0,ol=oa({render:rF,staticRenderFns:lF},_F,sF),_n=function(e){return e=parseInt(e,10),e<10?"0".concat(e):"".concat(e)},dn=function(e,a,i){if(Array.isArray(i))return i.filter(function(s){return s>=0&&s2&&arguments[2]!==void 0?arguments[2]:0;if(n<=0){requestAnimationFrame(function(){a.scrollTop=i});return}var o=i-a.scrollTop,s=o/n*10;requestAnimationFrame(function(){var l=a.scrollTop+s;if(l>=i){a.scrollTop=i;return}a.scrollTop=l,e(a,i,n-10)})},fF={name:"ListColumns",components:{ScrollbarVertical:ol},inject:{prefixClass:{default:"mx"}},props:{date:Date,scrollDuration:{type:Number,default:100},getClasses:{type:Function,default:function(){return[]}},hourOptions:Array,minuteOptions:Array,secondOptions:Array,showHour:{type:Boolean,default:!0},showMinute:{type:Boolean,default:!0},showSecond:{type:Boolean,default:!0},hourStep:{type:Number,default:1},minuteStep:{type:Number,default:1},secondStep:{type:Number,default:1},use12h:{type:Boolean,default:!1}},computed:{columns:function(){var e=[];return this.showHour&&e.push({type:"hour",list:this.getHoursList()}),this.showMinute&&e.push({type:"minute",list:this.getMinutesList()}),this.showSecond&&e.push({type:"second",list:this.getSecondsList()}),this.use12h&&e.push({type:"ampm",list:this.getAMPMList()}),e.filter(function(a){return a.list.length>0})}},watch:{date:{handler:function(){var e=this;this.$nextTick(function(){e.scrollToSelected(e.scrollDuration)})}}},mounted:function(){this.scrollToSelected(0)},methods:{getHoursList:function(){var e=this;return dn(this.use12h?12:24,this.hourStep,this.hourOptions).map(function(a){var i=new Date(e.date),n=_n(a);e.use12h&&(a===0&&(n="12"),i.getHours()>=12&&(a+=12));var o=i.setHours(a);return{value:o,text:n}})},getMinutesList:function(){var e=this;return dn(60,this.minuteStep,this.minuteOptions).map(function(a){var i=new Date(e.date).setMinutes(a);return{value:i,text:_n(a)}})},getSecondsList:function(){var e=this;return dn(60,this.secondStep,this.secondOptions).map(function(a){var i=new Date(e.date).setSeconds(a);return{value:i,text:_n(a)}})},getAMPMList:function(){var e=this;return["AM","PM"].map(function(a,i){var n=new Date(e.date),o=n.setHours(n.getHours()%12+i*12);return{text:a,value:o}})},scrollToSelected:function(e){for(var a=this.$el.querySelectorAll(".active"),i=0;i0&&arguments[0]!==void 0?arguments[0]:"",a=e.split(":");if(a.length>=2){var i=parseInt(a[0],10),n=parseInt(a[1],10);return{hours:i,minutes:n}}return null}var cF=function(e,a){e&&(e.scrollTop=a)},mF={name:"ListOptions",components:{ScrollbarVertical:nl},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{date:Date,options:{type:[Object,Function],default:function(){return[]}},format:{type:String,default:"HH:mm:ss"},getClasses:{type:Function,default:function(){return[]}}},computed:{list:function(){var e=[],a=this.options;if(typeof a=="function")return a()||[];var i=fn(a.start),n=fn(a.end),o=fn(a.step),s=a.format||this.format;if(i&&n&&o)for(var l=i.minutes+i.hours*60,_=n.minutes+n.hours*60,r=o.minutes+o.hours*60,f=Math.floor((_-l)/r),d=0;d<=f;d++){var g=l+d*r,h=Math.floor(g/60),F=g%60,m=new Date(this.date).setHours(h,F,0);e.push({value:m,text:this.formatDate(m,s)})}return e}},mounted:function(){this.scrollToSelected()},methods:{formatDate:function(e,a){return I0(e,a,{locale:this.getLocale().formatLocale})},scrollToSelected:function(){var e=this.$el.querySelector(".active");if(e){var a=P0(e,this.$el);if(a){var i=e.offsetTop;cF(a,i)}}},handleSelect:function(e){this.$emit("select",e,"time")}}},pF=mF,bF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("scrollbar-vertical",e._l(e.list,function(n){return i("div",{key:n.value,class:[e.prefixClass+"-time-option",e.getClasses(n.value)],on:{click:function(o){return e.handleSelect(n.value)}}},[e._v(`
+ `)])}),0)])}),1)},FF=[],uF=void 0,cF=oa({render:hF,staticRenderFns:FF},uF,gF);function fn(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",a=e.split(":");if(a.length>=2){var i=parseInt(a[0],10),n=parseInt(a[1],10);return{hours:i,minutes:n}}return null}var mF=function(e,a){e&&(e.scrollTop=a)},pF={name:"ListOptions",components:{ScrollbarVertical:ol},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{date:Date,options:{type:[Object,Function],default:function(){return[]}},format:{type:String,default:"HH:mm:ss"},getClasses:{type:Function,default:function(){return[]}}},computed:{list:function(){var e=[],a=this.options;if(typeof a=="function")return a()||[];var i=fn(a.start),n=fn(a.end),o=fn(a.step),s=a.format||this.format;if(i&&n&&o)for(var l=i.minutes+i.hours*60,_=n.minutes+n.hours*60,r=o.minutes+o.hours*60,f=Math.floor((_-l)/r),d=0;d<=f;d++){var g=l+d*r,h=Math.floor(g/60),F=g%60,m=new Date(this.date).setHours(h,F,0);e.push({value:m,text:this.formatDate(m,s)})}return e}},mounted:function(){this.scrollToSelected()},methods:{formatDate:function(e,a){return I0(e,a,{locale:this.getLocale().formatLocale})},scrollToSelected:function(){var e=this.$el.querySelector(".active");if(e){var a=P0(e,this.$el);if(a){var i=e.offsetTop;mF(a,i)}}},handleSelect:function(e){this.$emit("select",e,"time")}}},bF=pF,DF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("scrollbar-vertical",e._l(e.list,function(n){return i("div",{key:n.value,class:[e.prefixClass+"-time-option",e.getClasses(n.value)],on:{click:function(o){return e.handleSelect(n.value)}}},[e._v(`
`+e._s(n.text)+`
- `)])}),0)},DF=[],TF=void 0,yF=oa({render:bF,staticRenderFns:DF},TF,pF),EF={name:"TimePanel",components:{ListColumns:uF,ListOptions:yF},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{value:{},defaultValue:{default:function(){var e=new Date;return e.setHours(0,0,0,0),e}},format:{default:"HH:mm:ss"},timeTitleFormat:{type:String,default:"YYYY-MM-DD"},showTimeHeader:{type:Boolean,default:!1},disabledTime:{type:Function,default:function(){return!1}},timePickerOptions:{type:[Object,Function],default:function(){return null}},hourOptions:Array,minuteOptions:Array,secondOptions:Array,hourStep:{type:Number,default:1},minuteStep:{type:Number,default:1},secondStep:{type:Number,default:1},showHour:{type:Boolean,default:void 0},showMinute:{type:Boolean,default:void 0},showSecond:{type:Boolean,default:void 0},use12h:{type:Boolean,default:void 0},scrollDuration:{type:Number,default:100}},data:function(){return{innerValue:Ot(this.value,this.defaultValue)}},computed:{title:function(){var e=this.timeTitleFormat,a=new Date(this.innerValue);return this.formatDate(a,e)},innerForamt:function(){return typeof this.format=="string"?this.format:"HH:mm:ss"},ShowHourMinuteSecondAMPM:function(){var e=this,a=this.innerForamt,i={showHour:/[HhKk]/.test(a),showMinute:/m/.test(a),showSecond:/s/.test(a),use12h:/a/i.test(a)},n={};return Object.keys(i).forEach(function(o){n[o]=typeof e[o]=="boolean"?e[o]:i[o]}),n}},watch:{value:{immediate:!0,handler:function(){this.innerValue=Ot(this.value,this.defaultValue)}}},methods:{formatDate:function(e,a){return I0(e,a,{locale:this.getLocale().formatLocale})},isDisabledTime:function(e){return this.disabledTime(new Date(e))},isDisabledHour:function(e){var a=new Date(e);return this.isDisabledTime(a)&&this.isDisabledTime(a.setMinutes(0,0,0))&&this.isDisabledTime(a.setMinutes(59,59,999))},isDisabledMinute:function(e){var a=new Date(e);return this.isDisabledTime(a)&&this.isDisabledTime(a.setSeconds(0,0))&&this.isDisabledTime(a.setSeconds(59,999))},isDisabledAMPM:function(e){var a=new Date(e),i=a.getHours()<12?0:12,n=i+11;return this.isDisabledTime(a)&&this.isDisabledTime(a.setHours(i,0,0,0))&&this.isDisabledTime(a.setHours(n,59,59,999))},isDisabled:function(e,a){return a==="hour"?this.isDisabledHour(e):a==="minute"?this.isDisabledMinute(e):a==="ampm"?this.isDisabledAMPM(e):this.isDisabledTime(e)},handleSelect:function(e,a){var i=new Date(e);this.isDisabled(e,a)||(this.innerValue=i,this.isDisabledTime(i)||this.$emit("select",i,a))},handleClickTitle:function(){this.$emit("clicktitle")},getClasses:function(e,a){var i=new Date(e);return this.isDisabled(e,a)?"disabled":i.getTime()===this.innerValue.getTime()?"active":""}}},kF=EF,AF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-time"},[e.showTimeHeader?i("div",{class:e.prefixClass+"-time-header"},[i("button",{class:e.prefixClass+"-btn "+e.prefixClass+"-btn-text "+e.prefixClass+"-time-header-title",attrs:{type:"button"},on:{click:e.handleClickTitle}},[e._v(`
+ `)])}),0)},TF=[],yF=void 0,EF=oa({render:DF,staticRenderFns:TF},yF,bF),kF={name:"TimePanel",components:{ListColumns:cF,ListOptions:EF},inject:{getLocale:{default:function(){return xt}},prefixClass:{default:"mx"}},props:{value:{},defaultValue:{default:function(){var e=new Date;return e.setHours(0,0,0,0),e}},format:{default:"HH:mm:ss"},timeTitleFormat:{type:String,default:"YYYY-MM-DD"},showTimeHeader:{type:Boolean,default:!1},disabledTime:{type:Function,default:function(){return!1}},timePickerOptions:{type:[Object,Function],default:function(){return null}},hourOptions:Array,minuteOptions:Array,secondOptions:Array,hourStep:{type:Number,default:1},minuteStep:{type:Number,default:1},secondStep:{type:Number,default:1},showHour:{type:Boolean,default:void 0},showMinute:{type:Boolean,default:void 0},showSecond:{type:Boolean,default:void 0},use12h:{type:Boolean,default:void 0},scrollDuration:{type:Number,default:100}},data:function(){return{innerValue:Ot(this.value,this.defaultValue)}},computed:{title:function(){var e=this.timeTitleFormat,a=new Date(this.innerValue);return this.formatDate(a,e)},innerForamt:function(){return typeof this.format=="string"?this.format:"HH:mm:ss"},ShowHourMinuteSecondAMPM:function(){var e=this,a=this.innerForamt,i={showHour:/[HhKk]/.test(a),showMinute:/m/.test(a),showSecond:/s/.test(a),use12h:/a/i.test(a)},n={};return Object.keys(i).forEach(function(o){n[o]=typeof e[o]=="boolean"?e[o]:i[o]}),n}},watch:{value:{immediate:!0,handler:function(){this.innerValue=Ot(this.value,this.defaultValue)}}},methods:{formatDate:function(e,a){return I0(e,a,{locale:this.getLocale().formatLocale})},isDisabledTime:function(e){return this.disabledTime(new Date(e))},isDisabledHour:function(e){var a=new Date(e);return this.isDisabledTime(a)&&this.isDisabledTime(a.setMinutes(0,0,0))&&this.isDisabledTime(a.setMinutes(59,59,999))},isDisabledMinute:function(e){var a=new Date(e);return this.isDisabledTime(a)&&this.isDisabledTime(a.setSeconds(0,0))&&this.isDisabledTime(a.setSeconds(59,999))},isDisabledAMPM:function(e){var a=new Date(e),i=a.getHours()<12?0:12,n=i+11;return this.isDisabledTime(a)&&this.isDisabledTime(a.setHours(i,0,0,0))&&this.isDisabledTime(a.setHours(n,59,59,999))},isDisabled:function(e,a){return a==="hour"?this.isDisabledHour(e):a==="minute"?this.isDisabledMinute(e):a==="ampm"?this.isDisabledAMPM(e):this.isDisabledTime(e)},handleSelect:function(e,a){var i=new Date(e);this.isDisabled(e,a)||(this.innerValue=i,this.isDisabledTime(i)||this.$emit("select",i,a))},handleClickTitle:function(){this.$emit("clicktitle")},getClasses:function(e,a){var i=new Date(e);return this.isDisabled(e,a)?"disabled":i.getTime()===this.innerValue.getTime()?"active":""}}},AF=kF,wF=function(){var e=this,a=e.$createElement,i=e._self._c||a;return i("div",{class:e.prefixClass+"-time"},[e.showTimeHeader?i("div",{class:e.prefixClass+"-time-header"},[i("button",{class:e.prefixClass+"-btn "+e.prefixClass+"-btn-text "+e.prefixClass+"-time-header-title",attrs:{type:"button"},on:{click:e.handleClickTitle}},[e._v(`
`+e._s(e.title)+`
- `)])]):e._e(),e._v(" "),i("div",{class:e.prefixClass+"-time-content"},[e.timePickerOptions?i("list-options",{attrs:{date:e.innerValue,"get-classes":e.getClasses,options:e.timePickerOptions,format:e.innerForamt},on:{select:e.handleSelect}}):i("list-columns",e._b({attrs:{date:e.innerValue,"get-classes":e.getClasses,"hour-options":e.hourOptions,"minute-options":e.minuteOptions,"second-options":e.secondOptions,"hour-step":e.hourStep,"minute-step":e.minuteStep,"second-step":e.secondStep,"scroll-duration":e.scrollDuration},on:{select:e.handleSelect}},"list-columns",e.ShowHourMinuteSecondAMPM,!1))],1)])},wF=[],SF=void 0,Pa=oa({render:AF,staticRenderFns:wF},SF,kF),Jt={name:"TimeRange",inject:{prefixClass:{default:"mx"}},props:De({},Pa.props),data:function(){return{startValue:new Date(NaN),endValue:new Date(NaN)}},watch:{value:{immediate:!0,handler:function(){if(H0(this.value)){var e=Qt(this.value,2),a=e[0],i=e[1];this.startValue=a,this.endValue=i}else this.startValue=new Date(NaN),this.endValue=new Date(NaN)}}},methods:{emitChange:function(e,a){var i=[this.startValue,this.endValue];this.$emit("select",i,e==="time"?"time-range":e,a)},handleSelectStart:function(e,a){this.startValue=e,this.endValue.getTime()>=e.getTime()||(this.endValue=e),this.emitChange(a,0)},handleSelectEnd:function(e,a){this.endValue=e,this.startValue.getTime()<=e.getTime()||(this.startValue=e),this.emitChange(a,1)},disabledStartTime:function(e){return this.disabledTime(e,0)},disabledEndTime:function(e){return e.getTime()2&&arguments[2]!==void 0?arguments[2]:!0;this.userInput=null;var n=Array.isArray(e)?e.map(this.date2value):this.date2value(e);return this.$emit("input",n),this.$emit("change",n,a),i&&this.closePopup(),n},isValidValue:function(e){return this.validMultipleType?nh(e):this.range?H0(e):va(e)},isValidValueAndNotDisabled:function(e){if(!this.isValidValue(e))return!1;var a=typeof this.disabledDate=="function"?this.disabledDate:function(){return!1},i=typeof this.disabledTime=="function"?this.disabledTime:function(){return!1};return Array.isArray(e)||(e=[e]),e.every(function(n){return!a(n)&&!i(n)})},handleMultipleDates:function(e,a){if(this.validMultipleType&&a){var i=a.filter(function(n){return n.getTime()!==e.getTime()});return i.length===a.length&&i.push(e),i}return e},handleSelectDate:function(e,a,i){e=this.handleMultipleDates(e,i),this.confirm?this.currentValue=e:this.emitValue(e,a,!this.validMultipleType&&(a===this.type||a==="time"))},clear:function(){this.emitValue(this.range?[null,null]:null),this.$emit("clear")},handleClear:function(e){e.stopPropagation(),this.clear()},handleConfirmDate:function(){var e=this.emitValue(this.currentValue);this.$emit("confirm",e)},handleSelectShortcut:function(e){var a=e.currentTarget.getAttribute("data-index"),i=this.shortcuts[parseInt(a,10)];if(ca(i)&&typeof i.onClick=="function"){var n=i.onClick(this);n&&this.emitValue(n)}},openPopup:function(e){this.popupVisible||this.disabled||(this.defaultOpen=!0,this.$emit("open",e),this.$emit("update:open",!0))},closePopup:function(){this.popupVisible&&(this.defaultOpen=!1,this.$emit("close"),this.$emit("update:open",!1))},blur:function(){this.$refs.input&&this.$refs.input.blur()},focus:function(){this.$refs.input&&this.$refs.input.focus()},handleInputChange:function(){var e=this;if(!(!this.editable||this.userInput===null)){var a=this.userInput.trim();if(this.userInput=null,a===""){this.clear();return}var i;if(this.validMultipleType)i=a.split(this.innerRangeSeparator).map(function(o){return e.parseDate(o.trim())});else if(this.range){var n=a.split(this.innerRangeSeparator);n.length!==2&&(n=a.split(this.innerRangeSeparator.trim())),i=n.map(function(o){return e.parseDate(o.trim())})}else i=this.parseDate(a);this.isValidValueAndNotDisabled(i)?(this.emitValue(i),this.blur()):this.$emit("input-error",a)}},handleInputInput:function(e){this.userInput=typeof e=="string"?e:e.target.value},handleInputKeydown:function(e){var a=e.keyCode;a===9?this.closePopup():a===13&&this.handleInputChange()},handleInputBlur:function(e){this.$emit("blur",e)},handleInputFocus:function(e){this.openPopup(e),this.$emit("focus",e)},hasSlot:function(e){return!!(this.$slots[e]||this.$scopedSlots[e])},renderSlot:function(e,a,i){var n=this.$scopedSlots[e];return n?n(i)||a:this.$slots[e]||a},renderInput:function(){var e=this.$createElement,a=this.prefixClass,i=De({name:"date",type:"text",autocomplete:"off",value:this.text,class:this.inputClass||"".concat(this.prefixClass,"-input"),readonly:!this.editable,disabled:this.disabled,placeholder:this.placeholder},this.inputAttr),n=i.value,o=i.class,s=$g(i,["value","class"]),l={keydown:this.handleInputKeydown,focus:this.handleInputFocus,blur:this.handleInputBlur,input:this.handleInputInput,change:this.handleInputChange},_=this.renderSlot("input",e("input",{domProps:{value:n},class:o,attrs:De({},s),on:De({},l),ref:"input"}),{props:i,events:l}),r=this.type==="time"?e(Rh):e(Ah);return e("div",{class:"".concat(a,"-input-wrapper"),on:{mouseenter:this.handleMouseEnter,mouseleave:this.handleMouseLeave,click:this.openPopup},ref:"inputWrapper"},[_,this.showClearIcon?e("i",{class:"".concat(a,"-icon-clear"),on:{click:this.handleClear}},[this.renderSlot("icon-clear",e(Nh))]):e("i",{class:"".concat(a,"-icon-calendar")},[this.renderSlot("icon-calendar",r)])])},renderContent:function(){var e=this.$createElement,a=this.range?RF:vF,i=a[this.type]||a.default,n=De({},Nt(this.$props,Object.keys(i.props)),{value:this.currentValue}),o=De({},Nt(this.$listeners,i.emits||[]),{select:this.handleSelectDate}),s=e(i,ri([{},{props:n,on:o,ref:"picker"}]));return e("div",{class:"".concat(this.prefixClass,"-datepicker-body")},[this.renderSlot("content",s,{value:this.currentValue,emit:this.handleSelectDate})])},renderSidebar:function(){var e=this,a=this.$createElement,i=this.prefixClass;return a("div",{class:"".concat(i,"-datepicker-sidebar")},[this.renderSlot("sidebar",null,{value:this.currentValue,emit:this.handleSelectDate}),this.shortcuts.map(function(n,o){return a("button",{key:o,attrs:{"data-index":o,type:"button"},class:"".concat(i,"-btn ").concat(i,"-btn-text ").concat(i,"-btn-shortcut"),on:{click:e.handleSelectShortcut}},[n.text])})])},renderHeader:function(){var e=this.$createElement;return e("div",{class:"".concat(this.prefixClass,"-datepicker-header")},[this.renderSlot("header",null,{value:this.currentValue,emit:this.handleSelectDate})])},renderFooter:function(){var e=this.$createElement,a=this.prefixClass;return e("div",{class:"".concat(a,"-datepicker-footer")},[this.renderSlot("footer",null,{value:this.currentValue,emit:this.handleSelectDate}),this.confirm?e("button",{attrs:{type:"button"},class:"".concat(a,"-btn ").concat(a,"-datepicker-btn-confirm"),on:{click:this.handleConfirmDate}},[this.confirmText]):null])}},render:function(){var e,a=arguments[0],i=this.prefixClass,n=this.inline,o=this.disabled,s=this.hasSlot("sidebar")||this.shortcuts.length?this.renderSidebar():null,l=a("div",{class:"".concat(i,"-datepicker-content")},[this.hasSlot("header")?this.renderHeader():null,this.renderContent(),this.hasSlot("footer")||this.confirm?this.renderFooter():null]);return a("div",{class:(e={},st(e,"".concat(i,"-datepicker"),!0),st(e,"".concat(i,"-datepicker-range"),this.range),st(e,"".concat(i,"-datepicker-inline"),n),st(e,"disabled",o),e)},[n?null:this.renderInput(),n?a("div",{class:"".concat(i,"-datepicker-main")},[s,l]):a(Th,{ref:"popup",class:this.popupClass,style:this.popupStyle,attrs:{visible:this.popupVisible,appendToBody:this.appendToBody},on:{clickoutside:this.handleClickOutSide}},[s,l])])}};nt.locale=il,nt.install=function(e){e.component(nt.name,nt)},typeof window<"u"&&window.Vue&&nt.install(window.Vue),Rn(nt,{CalendarPanel:dt,CalendarRange:Kt,TimePanel:Pa,TimeRange:Jt,DatetimePanel:uo,DatetimeRange:ol}),oe(i1);const CF={name:"CalendarBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var OF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon calendar-blank-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},BF=[],NF=ie(CF,OF,BF,!1,null,null);const xF=NF.exports,MF={name:"WebIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var jF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon web-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M16.36,14C16.44,13.34 16.5,12.68 16.5,12C16.5,11.32 16.44,10.66 16.36,10H19.74C19.9,10.64 20,11.31 20,12C20,12.69 19.9,13.36 19.74,14M14.59,19.56C15.19,18.45 15.65,17.25 15.97,16H18.92C17.96,17.65 16.43,18.93 14.59,19.56M14.34,14H9.66C9.56,13.34 9.5,12.68 9.5,12C9.5,11.32 9.56,10.65 9.66,10H14.34C14.43,10.65 14.5,11.32 14.5,12C14.5,12.68 14.43,13.34 14.34,14M12,19.96C11.17,18.76 10.5,17.43 10.09,16H13.91C13.5,17.43 12.83,18.76 12,19.96M8,8H5.08C6.03,6.34 7.57,5.06 9.4,4.44C8.8,5.55 8.35,6.75 8,8M5.08,16H8C8.35,17.25 8.8,18.45 9.4,19.56C7.57,18.93 6.03,17.65 5.08,16M4.26,14C4.1,13.36 4,12.69 4,12C4,11.31 4.1,10.64 4.26,10H7.64C7.56,10.66 7.5,11.32 7.5,12C7.5,12.68 7.56,13.34 7.64,14M12,4.03C12.83,5.23 13.5,6.57 13.91,8H10.09C10.5,6.57 11.17,5.23 12,4.03M18.92,8H15.97C15.65,6.75 15.19,5.55 14.59,4.44C16.43,5.07 17.96,6.34 18.92,8M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},YF=[],qF=ie(MF,jF,YF,!1,null,null);const LF=qF.exports,Ts={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD H:mm:ss",year:"YYYY",month:"YYYY-MM",time:"H:mm:ss",week:"w"},ZF={name:"NcDateTimePicker",components:{CalendarBlank:xF,DatePicker:nt,NcPopover:Gn,NcTimezonePicker:Tg,Web:LF},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{clearable:{type:Boolean,default:!1},minuteStep:{type:Number,default:10},type:{type:String,default:"date"},format:{type:String,default:null},formatter:{type:Object,default:null},lang:{type:Object,default:null},value:{default:void 0},modelValue:{default:()=>new Date},timezoneId:{type:String,default:"UTC"},showTimezoneSelect:{type:Boolean,default:!1},highlightTimezone:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!1},showWeekNumber:{type:Boolean,default:!1},placeholder:{type:String,default:null}},emits:["update:value","update:modelValue","update:model-value","update:timezone-id"],setup(){return{model:Xa("value","update:value"),timezoneDialogHeaderId:`timezone-dialog-header-${ft()}`}},data(){return{showTimezonePopover:!1,tzVal:this.timezoneId}},computed:{defaultLang(){return{formatLocale:{months:n1(),monthsShort:o1(),weekdays:s1(),weekdaysShort:r1(),weekdaysMin:l1(),firstDayOfWeek:_1()},monthFormat:"MMMM"}},defaultPlaceholder(){return this.type==="time"?x("Pick a time"):this.type==="month"?x("Pick a month"):this.type==="year"?x("Pick a year"):this.type==="week"?x("Pick a week"):this.type==="date"?x("Pick a date"):x("Pick a date and a time")},formatTypeMap(){return Ts[this.type]??Ts.date},internalFormatter(){return{getWeek:e=>{const a=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()));a.setUTCDate(a.getUTCDate()+4-(a.getUTCDay()||7));const i=new Date(Date.UTC(a.getUTCFullYear(),0,1));return Math.ceil(((a-i)/864e5+1)/7)},...this.formatter??{}}}},methods:{t:x,handleSelectYear(e){const a=this.$refs.datepicker.currentValue;if(a)try{const i=new Date(new Date(a).setFullYear(e));this.$refs.datepicker.selectDate(i)}catch{console.error("Invalid value",a,e)}},handleSelectMonth(e){const a=this.$refs.datepicker.currentValue;if(a)try{const i=new Date(new Date(a).setMonth(e));this.$refs.datepicker.selectDate(i)}catch{console.error("Invalid value",a,e)}},toggleTimezonePopover(){this.showTimezoneSelect&&(this.showTimezonePopover=!this.showTimezonePopover)}}};var IF=function(){var e=this,a=e._self._c;return a("DatePicker",e._g(e._b({ref:"datepicker",attrs:{"append-to-body":e.appendToBody,clearable:e.clearable,format:e.format?e.format:e.formatTypeMap,formatter:e.internalFormatter,lang:e.lang?e.lang:e.defaultLang,"minute-step":e.minuteStep,placeholder:e.placeholder?e.placeholder:e.defaultPlaceholder,"popup-class":{"show-week-number":e.showWeekNumber},"show-week-number":e.showWeekNumber,type:e.type,value:e.model},on:{"select-year":e.handleSelectYear,"select-month":e.handleSelectMonth,input:function(i){e.model=i}},scopedSlots:e._u([{key:"icon-calendar",fn:function(){return[e.showTimezoneSelect?a("NcPopover",{attrs:{"popup-role":"dialog",shown:e.showTimezonePopover,"popover-base-class":"timezone-select__popper"},on:{"update:shown":function(i){e.showTimezonePopover=i}},scopedSlots:e._u([{key:"trigger",fn:function({attrs:i}){return[a("button",e._b({staticClass:"datetime-picker-inline-icon",class:{"datetime-picker-inline-icon--highlighted":e.highlightTimezone},on:{mousedown:function(n){return n.stopPropagation(),n.preventDefault(),(()=>{}).apply(null,arguments)}}},"button",i,!1),[a("Web",{attrs:{size:20}})],1)]}}],null,!1,270852355)},[a("div",{attrs:{role:"dialog","aria-labelledby":e.timezoneDialogHeaderId}},[a("div",{staticClass:"timezone-popover-wrapper__label"},[a("strong",{attrs:{id:e.timezoneDialogHeaderId}},[e._v(" "+e._s(e.t("Please select a time zone:"))+" ")])]),a("NcTimezonePicker",{staticClass:"timezone-popover-wrapper__timezone-select",on:{input:function(i){return e.$emit("update:timezone-id",arguments[0])}},model:{value:e.tzVal,callback:function(i){e.tzVal=i},expression:"tzVal"}})],1)]):a("CalendarBlank",{attrs:{size:20}})]},proxy:!0},e._l(e.$scopedSlots,function(i,n){return{key:n,fn:function(o){return[e._t(n,null,null,o)]}}})],null,!0)},"DatePicker",e.$attrs,!1),e.$listeners))},HF=[],PF=ie(ZF,IF,HF,!1,null,"038f33af");const GF=PF.exports;ar(GF);const UF=["date","datetime-local","month","time","week"],zF={name:"NcDateTimePickerNative",inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{value:{type:Date,default:void 0},modelValue:{type:Date,default:null},id:{type:String,required:!0},type:{type:String,default:"date",validate:e=>UF.includes(e)},label:{type:String,default:"Please choose a date"},min:{type:[Date,Boolean],default:null},max:{type:[Date,Boolean],default:null},hideLabel:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["input","update:modelValue","update:model-value"],setup(){return{model:Xa("value","input")}},computed:{formattedValue(){return this.formatValue(this.model)},formattedMin(){return this.min?this.formatValue(this.min):!1},formattedMax(){return this.max?this.formatValue(this.max):!1},listeners(){return{...this.$listeners,input:e=>{if(isNaN(e.target.valueAsNumber)&&(this.model=null),this.type==="time"){const n=e.target.value;if(this.model===""){const{yyyy:_,MM:r,dd:f}=this.getReadableDate(new Date);this.model=new Date(`${_}-${r}-${f}T${n}`)}const{yyyy:o,MM:s,dd:l}=this.getReadableDate(this.model);this.model=new Date(`${o}-${s}-${l}T${n}`)}else if(this.type==="month"){const n=(new Date(e.target.value).getMonth()+1).toString().padStart(2,"0");if(this.model===""){const{yyyy:r,dd:f,hh:d,mm:g}=this.getReadableDate(new Date);this.model=new Date(`${r}-${n}-${f}T${d}:${g}`)}const{yyyy:o,dd:s,hh:l,mm:_}=this.getReadableDate(this.model);this.model=new Date(`${o}-${n}-${s}T${l}:${_}`)}const a=new Date(e.target.valueAsNumber).getTimezoneOffset()*1e3*60,i=e.target.valueAsNumber+a;this.model=new Date(i)}}}},methods:{getReadableDate(e){if(e instanceof Date){const a=e.getFullYear().toString().padStart(4,"0"),i=(e.getMonth()+1).toString().padStart(2,"0"),n=e.getDate().toString().padStart(2,"0"),o=e.getHours().toString().padStart(2,"0"),s=e.getMinutes().toString().padStart(2,"0");return{yyyy:a,MM:i,dd:n,hh:o,mm:s}}},formatValue(e){if(e instanceof Date){const{yyyy:a,MM:i,dd:n,hh:o,mm:s}=this.getReadableDate(e);if(this.type==="datetime-local")return`${a}-${i}-${n}T${o}:${s}`;if(this.type==="date")return`${a}-${i}-${n}`;if(this.type==="month")return`${a}-${i}`;if(this.type==="time")return`${o}:${s}`;if(this.type==="week"){const l=new Date(a,0,1),_=Math.floor((e-l)/(24*60*60*1e3)),r=Math.ceil(_/7);return`${a}-W${r}`}}else return""}}};var VF=function(){var e=this,a=e._self._c;return a("div",{staticClass:"native-datetime-picker"},[a("label",{class:{"hidden-visually":e.hideLabel},attrs:{for:e.id}},[e._v(e._s(e.label))]),a("input",e._g(e._b({staticClass:"native-datetime-picker--input",class:e.inputClass,attrs:{id:e.id,type:e.type,min:e.formattedMin,max:e.formattedMax},domProps:{value:e.formattedValue}},"input",e.$attrs,!1),e.listeners))])},$F=[],WF=ie(zF,VF,$F,!1,null,"ef10425f");const QF=WF.exports;ar(QF);const KF={name:"AlertCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var JF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon alert-circle-outline-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},XF=[],eu=ie(KF,JF,XF,!1,null,null);const au=eu.exports,tu={name:"NcInputField",components:{NcButton:Ja,AlertCircle:au,Check:Vn},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{value:{type:[String,Number],default:void 0},modelValue:{type:[String,Number],default:void 0},type:{type:String,default:"text",validator:e=>["text","password","email","tel","url","search","number"].includes(e)},label:{type:String,default:void 0},labelOutside:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},showTrailingButton:{type:Boolean,default:!1},trailingButtonLabel:{type:String,default:""},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},helperText:{type:String,default:""},disabled:{type:Boolean,default:!1},pill:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["update:value","update:modelValue","update:model-value","trailing-button-click"],setup(){return{model:Xa("value","update:value",!0)}},computed:{computedId(){return this.$attrs.id&&this.$attrs.id!==""?this.$attrs.id:this.inputName},inputName(){return"input"+ft()},hasLeadingIcon(){return this.$slots.default},hasTrailingIcon(){return this.success},hasPlaceholder(){return this.placeholder!==""&&this.placeholder!==void 0},computedPlaceholder(){return this.hasPlaceholder?this.placeholder:this.label},isValidLabel(){const e=this.label||this.labelOutside;return e||console.warn("You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation."),e},ariaDescribedby(){const e=[];return this.helperText.length>0&&e.push(`${this.inputName}-helper-text`),this.$attrs["aria-describedby"]&&e.push(this.$attrs["aria-describedby"]),e.join(" ")||null}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()},handleInput(e){const a=this.type==="number"&&typeof this.model=="number"?parseFloat(e.target.value,10):e.target.value;this.model=a},handleTrailingButtonClick(e){this.$emit("trailing-button-click",e)}}};var iu=function(){var e=this,a=e._self._c;return a("div",{staticClass:"input-field",class:{"input-field--disabled":e.disabled,"input-field--label-outside":e.labelOutside||!e.isValidLabel,"input-field--leading-icon":e.hasLeadingIcon,"input-field--trailing-icon":e.showTrailingButton||e.hasTrailingIcon,"input-field--pill":e.pill}},[a("div",{staticClass:"input-field__main-wrapper"},[a("input",e._g(e._b({ref:"input",staticClass:"input-field__input",class:[e.inputClass,{"input-field__input--success":e.success,"input-field__input--error":e.error}],attrs:{id:e.computedId,type:e.type,disabled:e.disabled,placeholder:e.computedPlaceholder,"aria-describedby":e.ariaDescribedby,"aria-live":"polite"},domProps:{value:e.model?.toString()},on:{input:e.handleInput}},"input",e.$attrs,!1),e.$listeners)),!e.labelOutside&&e.isValidLabel?a("label",{staticClass:"input-field__label",attrs:{for:e.computedId}},[e._v(" "+e._s(e.label)+" ")]):e._e(),a("div",{directives:[{name:"show",rawName:"v-show",value:e.hasLeadingIcon,expression:"hasLeadingIcon"}],staticClass:"input-field__icon input-field__icon--leading"},[e._t("default")],2),e.showTrailingButton?a("NcButton",{staticClass:"input-field__trailing-button",attrs:{type:"tertiary-no-background","aria-label":e.trailingButtonLabel,disabled:e.disabled},on:{click:e.handleTrailingButtonClick},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("trailing-button-icon")]},proxy:!0}],null,!0)}):e.success||e.error?a("div",{staticClass:"input-field__icon input-field__icon--trailing"},[e.success?a("Check",{staticStyle:{color:"var(--color-success-text)"},attrs:{size:20}}):e.error?a("AlertCircle",{staticStyle:{color:"var(--color-error-text)"},attrs:{size:20}}):e._e()],1):e._e()],1),e.helperText.length>0?a("p",{staticClass:"input-field__helper-text-message",class:{"input-field__helper-text-message--error":e.error,"input-field__helper-text-message--success":e.success},attrs:{id:`${e.inputName}-helper-text`}},[e.success?a("Check",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):e.error?a("AlertCircle",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):e._e(),e._v(" "+e._s(e.helperText)+" ")],1):e._e()])},nu=[],ou=ie(tu,iu,nu,!1,null,"e4fac465");const Mt=ou.exports,su={name:"EyeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var ru=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon eye-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},lu=[],_u=ie(su,ru,lu,!1,null,null);const du=_u.exports,fu={name:"EyeOffIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var gu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon eye-off-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M11.83,9L15,12.16C15,12.11 15,12.05 15,12A3,3 0 0,0 12,9C11.94,9 11.89,9 11.83,9M7.53,9.8L9.08,11.35C9.03,11.56 9,11.77 9,12A3,3 0 0,0 12,15C12.22,15 12.44,14.97 12.65,14.92L14.2,16.47C13.53,16.8 12.79,17 12,17A5,5 0 0,1 7,12C7,11.21 7.2,10.47 7.53,9.8M2,4.27L4.28,6.55L4.73,7C3.08,8.3 1.78,10 1,12C2.73,16.39 7,19.5 12,19.5C13.55,19.5 15.03,19.2 16.38,18.66L16.81,19.08L19.73,22L21,20.73L3.27,3M12,7A5,5 0 0,1 17,12C17,12.64 16.87,13.26 16.64,13.82L19.57,16.75C21.07,15.5 22.27,13.86 23,12C21.27,7.61 17,4.5 12,4.5C10.6,4.5 9.26,4.75 8,5.2L10.17,7.35C10.74,7.13 11.35,7 12,7Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},hu=[],Fu=ie(fu,gu,hu,!1,null,null);const uu=Fu.exports;oe(f1);const cu=d1().detectUser().setApp("@nextcloud/vue").build(),ys=Xt("core","capabilities",{}).password_policy||null,mu=new Set(Object.keys(Mt.props)),pu={name:"NcPasswordField",components:{NcInputField:Mt,Eye:du,EyeOff:uu},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{" ":{},...Mt.props,showTrailingButton:{type:Boolean,default:!0},trailingButtonLabel:void 0,checkPasswordStrength:{type:Boolean,default:!1},minlength:{type:Number,default:0},maxlength:{type:Number,default:null},asText:{type:Boolean,default:!1}},emits:["valid","invalid","update:value","update:modelValue","update:model-value"],setup(){return{model:Xa("value","update:value")}},data(){return{isPasswordHidden:!0,internalHelpMessage:"",isValid:null}},computed:{computedError(){return this.error||this.isValid===!1},computedSuccess(){return this.success||this.isValid===!0},computedHelperText(){return this.helperText.length>0?this.helperText:this.internalHelpMessage},rules(){const{minlength:e}=this;return{minlength:e??ys?.minLength}},trailingButtonLabelPassword(){return this.isPasswordHidden?x("Show password"):x("Hide password")},propsAndAttrsToForward(){return{...this.$attrs,...Object.fromEntries(Object.entries(this.$props).filter(([e])=>mu.has(e)))}}},watch:{model(e){if(this.checkPasswordStrength){if(ys===null)return;this.checkPassword(e)}}},methods:{focus(){this.$refs.inputField.focus()},select(){this.$refs.inputField.select()},handleInput(e){this.model=e.target.value},togglePasswordVisibility(){this.isPasswordHidden=!this.isPasswordHidden},checkPassword:Un(async function(e){try{const{data:a}=await pa.post(Va("apps/password_policy/api/v1/validate"),{password:e});if(this.isValid=a.ocs.data.passed,a.ocs.data.passed){this.internalHelpMessage=x("Password is secure"),this.$emit("valid");return}this.internalHelpMessage=a.ocs.data.reason,this.$emit("invalid")}catch(a){cu.error("Password policy returned an error",a)}},500)}};var bu=function(){var e=this,a=e._self._c;return a("NcInputField",e._g(e._b({ref:"inputField",attrs:{type:e.isPasswordHidden&&!e.asText?"password":"text","trailing-button-label":e.trailingButtonLabelPassword,"helper-text":e.computedHelperText,error:e.computedError,success:e.computedSuccess,minlength:e.rules.minlength,"input-class":{"password-field__input--secure-text":e.isPasswordHidden&&e.asText}},on:{"trailing-button-click":e.togglePasswordVisibility,input:e.handleInput},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[e.isPasswordHidden?a("Eye",{attrs:{size:18}}):a("EyeOff",{attrs:{size:18}})]},proxy:!0}])},"NcInputField",e.propsAndAttrsToForward,!1),e.$listeners),[e._t("default")],2)},Du=[],Tu=ie(pu,bu,Du,!1,null,"ec73c332");const e3=Tu.exports,yu={name:"ArrowRightIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Eu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon arrow-right-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},ku=[],Au=ie(yu,Eu,ku,!1,null,null);const wu=Au.exports,Su={name:"UndoVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var vu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon undo-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M13.5,7A6.5,6.5 0 0,1 20,13.5A6.5,6.5 0 0,1 13.5,20H10V18H13.5C16,18 18,16 18,13.5C18,11 16,9 13.5,9H7.83L10.91,12.09L9.5,13.5L4,8L9.5,2.5L10.92,3.91L7.83,7H13.5M6,18H8V20H6V18Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Ru=[],Cu=ie(Su,vu,Ru,!1,null,null);const Ou=Cu.exports;oe(g1,tr);const Bu=new Set(Object.keys(Mt.props)),Nu={name:"NcTextField",components:{NcInputField:Mt,Close:Pn,ArrowRight:wu,Undo:Ou},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{" ":{},...Mt.props,trailingButtonLabel:{type:String,default:""},trailingButtonIcon:{type:String,default:"close",validator:e=>["close","arrowRight","undo"].includes(e)}},emits:["update:value","update:modelValue","update:model-value"],setup(){return{model:Xa("value","update:value")}},computed:{propsAndAttrsToForward(){const e={undo:x("Undo changes"),close:x("Clear text"),arrowRight:x("Save changes")};return{...this.$attrs,...Object.fromEntries(Object.entries(this.$props).filter(([a])=>Bu.has(a))),trailingButtonLabel:this.trailingButtonLabel||e[this.trailingButtonIcon]}}},methods:{focus(){this.$refs.inputField.focus()},select(){this.$refs.inputField.select()}}};var xu=function(){var e=this,a=e._self._c;return a("NcInputField",e._g(e._b({ref:"inputField",scopedSlots:e._u([e.type!=="search"?{key:"trailing-button-icon",fn:function(){return[e.trailingButtonIcon==="close"?a("Close",{attrs:{size:20}}):e.trailingButtonIcon==="arrowRight"?a("ArrowRight",{attrs:{size:20}}):e.trailingButtonIcon==="undo"?a("Undo",{attrs:{size:20}}):e._e()]},proxy:!0}:null],null,!0)},"NcInputField",e.propsAndAttrsToForward,!1),e.$listeners),[e._t("default")],2)},Mu=[],ju=ie(Nu,xu,Mu,!1,null,null);const Yu=ju.exports;oe(ir),i_,x("Submit");const qu={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Lu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Zu=[],Iu=ie(qu,Lu,Zu,!1,null,null);const sl=Iu.exports;oe(h1),Zn("nextcloud").persist().build(),oe(F1);const Hu={name:"NcVNodes",props:{vnodes:{type:[Array,Object],default:null}},render(e){return this.vnodes||this.$slots?.default||this.$scopedSlots?.default?.()}},Pu=null,Gu=null;var Uu=ie(Hu,Pu,Gu,!1,null,null);const a3=Uu.exports,zu={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Vu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon chevron-up-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M7.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},$u=[],Wu=ie(zu,Vu,$u,!1,null,null);const Qu=Wu.exports;oe(u1),oe(c1),oe(m1,tr),oe(nr,p1);x("Search…");oe(D1);const Ku={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ju=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Xu=[],ec=ie(Ku,Ju,Xu,!1,null,null);const t3=ec.exports;x("Settings"),oe(T1),Un(function(){this.selectedSection="",document.activeElement.className.includes("navigation-list__link")&&document.activeElement.blur()},300);let ac="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",tc=(e=21)=>{let a="",i=e|0;for(;i--;)a+=ac[Math.random()*64|0];return a};function ji(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?ji=function(a){return typeof a}:ji=function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},ji(e)}var rl={selector:"vue-portal-target-".concat(tc())},ic=function(e){return rl.selector=e},gn=typeof window<"u"&&(typeof document>"u"?"undefined":ji(document))!==void 0,nc=Sa.extend({abstract:!0,name:"PortalOutlet",props:["nodes","tag"],data:function(e){return{updatedNodes:e.nodes}},render:function(e){var a=this.updatedNodes&&this.updatedNodes();return a?a.length===1&&!a[0].text?a:e(this.tag||"DIV",a):e()},destroyed:function(){var e=this.$el;e&&e.parentNode.removeChild(e)}}),oc=Sa.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(rl.selector)}},tag:{type:String,default:"DIV"}},render:function(e){if(this.disabled){var a=this.$scopedSlots&&this.$scopedSlots.default();return a?a.length<2&&!a[0].text?a:e(this.tag,a):e()}return e()},created:function(){this.getTargetEl()||this.insertTargetEl()},updated:function(){var e=this;this.$nextTick(function(){!e.disabled&&e.slotFn!==e.$scopedSlots.default&&(e.container.updatedNodes=e.$scopedSlots.default),e.slotFn=e.$scopedSlots.default})},beforeDestroy:function(){this.unmount()},watch:{disabled:{immediate:!0,handler:function(e){e?this.unmount():this.$nextTick(this.mount)}}},methods:{getTargetEl:function(){if(gn)return document.querySelector(this.selector)},insertTargetEl:function(){if(gn){var e=document.querySelector("body"),a=document.createElement(this.tag);a.id=this.selector.substring(1),e.appendChild(a)}},mount:function(){if(gn){var e=this.getTargetEl(),a=document.createElement("DIV");this.prepend&&e.firstChild?e.insertBefore(a,e.firstChild):e.appendChild(a),this.container=new nc({el:a,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function sc(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};e.component(a.name||"portal",oc),a.defaultSelector&&ic(a.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===Sa&&Sa.use(sc),oe();const rc={name:"NcEmptyContent",props:{name:{type:String,default:""},description:{type:String,default:""}},computed:{hasName(){return this.name!==""},hasDescription(){return this.description!==""||this.$slots.description?.[0]}}};var lc=function(){var e=this,a=e._self._c;return a("div",{staticClass:"empty-content",attrs:{role:"note"}},[e.$slots.icon?a("div",{staticClass:"empty-content__icon",attrs:{"aria-hidden":"true"}},[e._t("icon")],2):e._e(),e._t("name",function(){return[e.hasName?a("span",{staticClass:"empty-content__name"},[e._v(" "+e._s(e.name)+" ")]):e._e()]}),e.hasDescription?a("p",{staticClass:"empty-content__description"},[e._t("description",function(){return[e._v(" "+e._s(e.description)+" ")]})],2):e._e(),e.$slots.action?a("div",{staticClass:"empty-content__action"},[e._t("action")],2):e._e()],2)},_c=[],dc=ie(rc,lc,_c,!1,null,"fede0c71");const co=dc.exports;oe(y1),oe(E1),oe(k1);var ll={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return function(i){function n(s){if(o[s])return o[s].exports;var l=o[s]={i:s,l:!1,exports:{}};return i[s].call(l.exports,l,l.exports,n),l.l=!0,l.exports}var o={};return n.m=i,n.c=o,n.d=function(s,l,_){n.o(s,l)||Object.defineProperty(s,l,{configurable:!1,enumerable:!0,get:_})},n.n=function(s){var l=s&&s.__esModule?function(){return s.default}:function(){return s};return n.d(l,"a",l),l},n.o=function(s,l){return Object.prototype.hasOwnProperty.call(s,l)},n.p="",n(n.s=60)}([function(i,n){function o(l,_){var r=l[1]||"",f=l[3];if(!f)return r;if(_&&typeof btoa=="function"){var d=s(f);return[r].concat(f.sources.map(function(g){return"/*# sourceURL="+f.sourceRoot+g+" */"})).concat([d]).join(`
+ `)])]):e._e(),e._v(" "),i("div",{class:e.prefixClass+"-time-content"},[e.timePickerOptions?i("list-options",{attrs:{date:e.innerValue,"get-classes":e.getClasses,options:e.timePickerOptions,format:e.innerForamt},on:{select:e.handleSelect}}):i("list-columns",e._b({attrs:{date:e.innerValue,"get-classes":e.getClasses,"hour-options":e.hourOptions,"minute-options":e.minuteOptions,"second-options":e.secondOptions,"hour-step":e.hourStep,"minute-step":e.minuteStep,"second-step":e.secondStep,"scroll-duration":e.scrollDuration},on:{select:e.handleSelect}},"list-columns",e.ShowHourMinuteSecondAMPM,!1))],1)])},SF=[],vF=void 0,Pa=oa({render:wF,staticRenderFns:SF},vF,AF),Jt={name:"TimeRange",inject:{prefixClass:{default:"mx"}},props:De({},Pa.props),data:function(){return{startValue:new Date(NaN),endValue:new Date(NaN)}},watch:{value:{immediate:!0,handler:function(){if(H0(this.value)){var e=Qt(this.value,2),a=e[0],i=e[1];this.startValue=a,this.endValue=i}else this.startValue=new Date(NaN),this.endValue=new Date(NaN)}}},methods:{emitChange:function(e,a){var i=[this.startValue,this.endValue];this.$emit("select",i,e==="time"?"time-range":e,a)},handleSelectStart:function(e,a){this.startValue=e,this.endValue.getTime()>=e.getTime()||(this.endValue=e),this.emitChange(a,0)},handleSelectEnd:function(e,a){this.endValue=e,this.startValue.getTime()<=e.getTime()||(this.startValue=e),this.emitChange(a,1)},disabledStartTime:function(e){return this.disabledTime(e,0)},disabledEndTime:function(e){return e.getTime()2&&arguments[2]!==void 0?arguments[2]:!0;this.userInput=null;var n=Array.isArray(e)?e.map(this.date2value):this.date2value(e);return this.$emit("input",n),this.$emit("change",n,a),i&&this.closePopup(),n},isValidValue:function(e){return this.validMultipleType?oh(e):this.range?H0(e):va(e)},isValidValueAndNotDisabled:function(e){if(!this.isValidValue(e))return!1;var a=typeof this.disabledDate=="function"?this.disabledDate:function(){return!1},i=typeof this.disabledTime=="function"?this.disabledTime:function(){return!1};return Array.isArray(e)||(e=[e]),e.every(function(n){return!a(n)&&!i(n)})},handleMultipleDates:function(e,a){if(this.validMultipleType&&a){var i=a.filter(function(n){return n.getTime()!==e.getTime()});return i.length===a.length&&i.push(e),i}return e},handleSelectDate:function(e,a,i){e=this.handleMultipleDates(e,i),this.confirm?this.currentValue=e:this.emitValue(e,a,!this.validMultipleType&&(a===this.type||a==="time"))},clear:function(){this.emitValue(this.range?[null,null]:null),this.$emit("clear")},handleClear:function(e){e.stopPropagation(),this.clear()},handleConfirmDate:function(){var e=this.emitValue(this.currentValue);this.$emit("confirm",e)},handleSelectShortcut:function(e){var a=e.currentTarget.getAttribute("data-index"),i=this.shortcuts[parseInt(a,10)];if(ca(i)&&typeof i.onClick=="function"){var n=i.onClick(this);n&&this.emitValue(n)}},openPopup:function(e){this.popupVisible||this.disabled||(this.defaultOpen=!0,this.$emit("open",e),this.$emit("update:open",!0))},closePopup:function(){this.popupVisible&&(this.defaultOpen=!1,this.$emit("close"),this.$emit("update:open",!1))},blur:function(){this.$refs.input&&this.$refs.input.blur()},focus:function(){this.$refs.input&&this.$refs.input.focus()},handleInputChange:function(){var e=this;if(!(!this.editable||this.userInput===null)){var a=this.userInput.trim();if(this.userInput=null,a===""){this.clear();return}var i;if(this.validMultipleType)i=a.split(this.innerRangeSeparator).map(function(o){return e.parseDate(o.trim())});else if(this.range){var n=a.split(this.innerRangeSeparator);n.length!==2&&(n=a.split(this.innerRangeSeparator.trim())),i=n.map(function(o){return e.parseDate(o.trim())})}else i=this.parseDate(a);this.isValidValueAndNotDisabled(i)?(this.emitValue(i),this.blur()):this.$emit("input-error",a)}},handleInputInput:function(e){this.userInput=typeof e=="string"?e:e.target.value},handleInputKeydown:function(e){var a=e.keyCode;a===9?this.closePopup():a===13&&this.handleInputChange()},handleInputBlur:function(e){this.$emit("blur",e)},handleInputFocus:function(e){this.openPopup(e),this.$emit("focus",e)},hasSlot:function(e){return!!(this.$slots[e]||this.$scopedSlots[e])},renderSlot:function(e,a,i){var n=this.$scopedSlots[e];return n?n(i)||a:this.$slots[e]||a},renderInput:function(){var e=this.$createElement,a=this.prefixClass,i=De({name:"date",type:"text",autocomplete:"off",value:this.text,class:this.inputClass||"".concat(this.prefixClass,"-input"),readonly:!this.editable,disabled:this.disabled,placeholder:this.placeholder},this.inputAttr),n=i.value,o=i.class,s=Wg(i,["value","class"]),l={keydown:this.handleInputKeydown,focus:this.handleInputFocus,blur:this.handleInputBlur,input:this.handleInputInput,change:this.handleInputChange},_=this.renderSlot("input",e("input",{domProps:{value:n},class:o,attrs:De({},s),on:De({},l),ref:"input"}),{props:i,events:l}),r=this.type==="time"?e(Ch):e(wh);return e("div",{class:"".concat(a,"-input-wrapper"),on:{mouseenter:this.handleMouseEnter,mouseleave:this.handleMouseLeave,click:this.openPopup},ref:"inputWrapper"},[_,this.showClearIcon?e("i",{class:"".concat(a,"-icon-clear"),on:{click:this.handleClear}},[this.renderSlot("icon-clear",e(xh))]):e("i",{class:"".concat(a,"-icon-calendar")},[this.renderSlot("icon-calendar",r)])])},renderContent:function(){var e=this.$createElement,a=this.range?CF:RF,i=a[this.type]||a.default,n=De({},Nt(this.$props,Object.keys(i.props)),{value:this.currentValue}),o=De({},Nt(this.$listeners,i.emits||[]),{select:this.handleSelectDate}),s=e(i,ri([{},{props:n,on:o,ref:"picker"}]));return e("div",{class:"".concat(this.prefixClass,"-datepicker-body")},[this.renderSlot("content",s,{value:this.currentValue,emit:this.handleSelectDate})])},renderSidebar:function(){var e=this,a=this.$createElement,i=this.prefixClass;return a("div",{class:"".concat(i,"-datepicker-sidebar")},[this.renderSlot("sidebar",null,{value:this.currentValue,emit:this.handleSelectDate}),this.shortcuts.map(function(n,o){return a("button",{key:o,attrs:{"data-index":o,type:"button"},class:"".concat(i,"-btn ").concat(i,"-btn-text ").concat(i,"-btn-shortcut"),on:{click:e.handleSelectShortcut}},[n.text])})])},renderHeader:function(){var e=this.$createElement;return e("div",{class:"".concat(this.prefixClass,"-datepicker-header")},[this.renderSlot("header",null,{value:this.currentValue,emit:this.handleSelectDate})])},renderFooter:function(){var e=this.$createElement,a=this.prefixClass;return e("div",{class:"".concat(a,"-datepicker-footer")},[this.renderSlot("footer",null,{value:this.currentValue,emit:this.handleSelectDate}),this.confirm?e("button",{attrs:{type:"button"},class:"".concat(a,"-btn ").concat(a,"-datepicker-btn-confirm"),on:{click:this.handleConfirmDate}},[this.confirmText]):null])}},render:function(){var e,a=arguments[0],i=this.prefixClass,n=this.inline,o=this.disabled,s=this.hasSlot("sidebar")||this.shortcuts.length?this.renderSidebar():null,l=a("div",{class:"".concat(i,"-datepicker-content")},[this.hasSlot("header")?this.renderHeader():null,this.renderContent(),this.hasSlot("footer")||this.confirm?this.renderFooter():null]);return a("div",{class:(e={},st(e,"".concat(i,"-datepicker"),!0),st(e,"".concat(i,"-datepicker-range"),this.range),st(e,"".concat(i,"-datepicker-inline"),n),st(e,"disabled",o),e)},[n?null:this.renderInput(),n?a("div",{class:"".concat(i,"-datepicker-main")},[s,l]):a(yh,{ref:"popup",class:this.popupClass,style:this.popupStyle,attrs:{visible:this.popupVisible,appendToBody:this.appendToBody},on:{clickoutside:this.handleClickOutSide}},[s,l])])}};nt.locale=nl,nt.install=function(e){e.component(nt.name,nt)},typeof window<"u"&&window.Vue&&nt.install(window.Vue),Rn(nt,{CalendarPanel:dt,CalendarRange:Kt,TimePanel:Pa,TimeRange:Jt,DatetimePanel:uo,DatetimeRange:sl}),oe(n1);const OF={name:"CalendarBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var BF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon calendar-blank-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},NF=[],xF=ie(OF,BF,NF,!1,null,null);const MF=xF.exports,jF={name:"WebIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var YF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon web-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M16.36,14C16.44,13.34 16.5,12.68 16.5,12C16.5,11.32 16.44,10.66 16.36,10H19.74C19.9,10.64 20,11.31 20,12C20,12.69 19.9,13.36 19.74,14M14.59,19.56C15.19,18.45 15.65,17.25 15.97,16H18.92C17.96,17.65 16.43,18.93 14.59,19.56M14.34,14H9.66C9.56,13.34 9.5,12.68 9.5,12C9.5,11.32 9.56,10.65 9.66,10H14.34C14.43,10.65 14.5,11.32 14.5,12C14.5,12.68 14.43,13.34 14.34,14M12,19.96C11.17,18.76 10.5,17.43 10.09,16H13.91C13.5,17.43 12.83,18.76 12,19.96M8,8H5.08C6.03,6.34 7.57,5.06 9.4,4.44C8.8,5.55 8.35,6.75 8,8M5.08,16H8C8.35,17.25 8.8,18.45 9.4,19.56C7.57,18.93 6.03,17.65 5.08,16M4.26,14C4.1,13.36 4,12.69 4,12C4,11.31 4.1,10.64 4.26,10H7.64C7.56,10.66 7.5,11.32 7.5,12C7.5,12.68 7.56,13.34 7.64,14M12,4.03C12.83,5.23 13.5,6.57 13.91,8H10.09C10.5,6.57 11.17,5.23 12,4.03M18.92,8H15.97C15.65,6.75 15.19,5.55 14.59,4.44C16.43,5.07 17.96,6.34 18.92,8M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},qF=[],LF=ie(jF,YF,qF,!1,null,null);const ZF=LF.exports,Ts={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD H:mm:ss",year:"YYYY",month:"YYYY-MM",time:"H:mm:ss",week:"w"},IF={name:"NcDateTimePicker",components:{CalendarBlank:MF,DatePicker:nt,NcPopover:Gn,NcTimezonePicker:yg,Web:ZF},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{clearable:{type:Boolean,default:!1},minuteStep:{type:Number,default:10},type:{type:String,default:"date"},format:{type:String,default:null},formatter:{type:Object,default:null},lang:{type:Object,default:null},value:{default:void 0},modelValue:{default:()=>new Date},timezoneId:{type:String,default:"UTC"},showTimezoneSelect:{type:Boolean,default:!1},highlightTimezone:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!1},showWeekNumber:{type:Boolean,default:!1},placeholder:{type:String,default:null}},emits:["update:value","update:modelValue","update:model-value","update:timezone-id"],setup(){return{model:Xa("value","update:value"),timezoneDialogHeaderId:`timezone-dialog-header-${ft()}`}},data(){return{showTimezonePopover:!1,tzVal:this.timezoneId}},computed:{defaultLang(){return{formatLocale:{months:o1(),monthsShort:s1(),weekdays:r1(),weekdaysShort:l1(),weekdaysMin:_1(),firstDayOfWeek:d1()},monthFormat:"MMMM"}},defaultPlaceholder(){return this.type==="time"?x("Pick a time"):this.type==="month"?x("Pick a month"):this.type==="year"?x("Pick a year"):this.type==="week"?x("Pick a week"):this.type==="date"?x("Pick a date"):x("Pick a date and a time")},formatTypeMap(){return Ts[this.type]??Ts.date},internalFormatter(){return{getWeek:e=>{const a=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()));a.setUTCDate(a.getUTCDate()+4-(a.getUTCDay()||7));const i=new Date(Date.UTC(a.getUTCFullYear(),0,1));return Math.ceil(((a-i)/864e5+1)/7)},...this.formatter??{}}}},methods:{t:x,handleSelectYear(e){const a=this.$refs.datepicker.currentValue;if(a)try{const i=new Date(new Date(a).setFullYear(e));this.$refs.datepicker.selectDate(i)}catch{console.error("Invalid value",a,e)}},handleSelectMonth(e){const a=this.$refs.datepicker.currentValue;if(a)try{const i=new Date(new Date(a).setMonth(e));this.$refs.datepicker.selectDate(i)}catch{console.error("Invalid value",a,e)}},toggleTimezonePopover(){this.showTimezoneSelect&&(this.showTimezonePopover=!this.showTimezonePopover)}}};var HF=function(){var e=this,a=e._self._c;return a("DatePicker",e._g(e._b({ref:"datepicker",attrs:{"append-to-body":e.appendToBody,clearable:e.clearable,format:e.format?e.format:e.formatTypeMap,formatter:e.internalFormatter,lang:e.lang?e.lang:e.defaultLang,"minute-step":e.minuteStep,placeholder:e.placeholder?e.placeholder:e.defaultPlaceholder,"popup-class":{"show-week-number":e.showWeekNumber},"show-week-number":e.showWeekNumber,type:e.type,value:e.model},on:{"select-year":e.handleSelectYear,"select-month":e.handleSelectMonth,input:function(i){e.model=i}},scopedSlots:e._u([{key:"icon-calendar",fn:function(){return[e.showTimezoneSelect?a("NcPopover",{attrs:{"popup-role":"dialog",shown:e.showTimezonePopover,"popover-base-class":"timezone-select__popper"},on:{"update:shown":function(i){e.showTimezonePopover=i}},scopedSlots:e._u([{key:"trigger",fn:function({attrs:i}){return[a("button",e._b({staticClass:"datetime-picker-inline-icon",class:{"datetime-picker-inline-icon--highlighted":e.highlightTimezone},on:{mousedown:function(n){return n.stopPropagation(),n.preventDefault(),(()=>{}).apply(null,arguments)}}},"button",i,!1),[a("Web",{attrs:{size:20}})],1)]}}],null,!1,270852355)},[a("div",{attrs:{role:"dialog","aria-labelledby":e.timezoneDialogHeaderId}},[a("div",{staticClass:"timezone-popover-wrapper__label"},[a("strong",{attrs:{id:e.timezoneDialogHeaderId}},[e._v(" "+e._s(e.t("Please select a time zone:"))+" ")])]),a("NcTimezonePicker",{staticClass:"timezone-popover-wrapper__timezone-select",on:{input:function(i){return e.$emit("update:timezone-id",arguments[0])}},model:{value:e.tzVal,callback:function(i){e.tzVal=i},expression:"tzVal"}})],1)]):a("CalendarBlank",{attrs:{size:20}})]},proxy:!0},e._l(e.$scopedSlots,function(i,n){return{key:n,fn:function(o){return[e._t(n,null,null,o)]}}})],null,!0)},"DatePicker",e.$attrs,!1),e.$listeners))},PF=[],GF=ie(IF,HF,PF,!1,null,"038f33af");const UF=GF.exports;ar(UF);const zF=["date","datetime-local","month","time","week"],VF={name:"NcDateTimePickerNative",inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{value:{type:Date,default:void 0},modelValue:{type:Date,default:null},id:{type:String,required:!0},type:{type:String,default:"date",validate:e=>zF.includes(e)},label:{type:String,default:"Please choose a date"},min:{type:[Date,Boolean],default:null},max:{type:[Date,Boolean],default:null},hideLabel:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["input","update:modelValue","update:model-value"],setup(){return{model:Xa("value","input")}},computed:{formattedValue(){return this.formatValue(this.model)},formattedMin(){return this.min?this.formatValue(this.min):!1},formattedMax(){return this.max?this.formatValue(this.max):!1},listeners(){return{...this.$listeners,input:e=>{if(isNaN(e.target.valueAsNumber)&&(this.model=null),this.type==="time"){const n=e.target.value;if(this.model===""){const{yyyy:_,MM:r,dd:f}=this.getReadableDate(new Date);this.model=new Date(`${_}-${r}-${f}T${n}`)}const{yyyy:o,MM:s,dd:l}=this.getReadableDate(this.model);this.model=new Date(`${o}-${s}-${l}T${n}`)}else if(this.type==="month"){const n=(new Date(e.target.value).getMonth()+1).toString().padStart(2,"0");if(this.model===""){const{yyyy:r,dd:f,hh:d,mm:g}=this.getReadableDate(new Date);this.model=new Date(`${r}-${n}-${f}T${d}:${g}`)}const{yyyy:o,dd:s,hh:l,mm:_}=this.getReadableDate(this.model);this.model=new Date(`${o}-${n}-${s}T${l}:${_}`)}const a=new Date(e.target.valueAsNumber).getTimezoneOffset()*1e3*60,i=e.target.valueAsNumber+a;this.model=new Date(i)}}}},methods:{getReadableDate(e){if(e instanceof Date){const a=e.getFullYear().toString().padStart(4,"0"),i=(e.getMonth()+1).toString().padStart(2,"0"),n=e.getDate().toString().padStart(2,"0"),o=e.getHours().toString().padStart(2,"0"),s=e.getMinutes().toString().padStart(2,"0");return{yyyy:a,MM:i,dd:n,hh:o,mm:s}}},formatValue(e){if(e instanceof Date){const{yyyy:a,MM:i,dd:n,hh:o,mm:s}=this.getReadableDate(e);if(this.type==="datetime-local")return`${a}-${i}-${n}T${o}:${s}`;if(this.type==="date")return`${a}-${i}-${n}`;if(this.type==="month")return`${a}-${i}`;if(this.type==="time")return`${o}:${s}`;if(this.type==="week"){const l=new Date(a,0,1),_=Math.floor((e-l)/(24*60*60*1e3)),r=Math.ceil(_/7);return`${a}-W${r}`}}else return""}}};var $F=function(){var e=this,a=e._self._c;return a("div",{staticClass:"native-datetime-picker"},[a("label",{class:{"hidden-visually":e.hideLabel},attrs:{for:e.id}},[e._v(e._s(e.label))]),a("input",e._g(e._b({staticClass:"native-datetime-picker--input",class:e.inputClass,attrs:{id:e.id,type:e.type,min:e.formattedMin,max:e.formattedMax},domProps:{value:e.formattedValue}},"input",e.$attrs,!1),e.listeners))])},WF=[],QF=ie(VF,$F,WF,!1,null,"ef10425f");const KF=QF.exports;ar(KF);const JF={name:"AlertCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var XF=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon alert-circle-outline-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},eu=[],au=ie(JF,XF,eu,!1,null,null);const tu=au.exports,iu={name:"NcInputField",components:{NcButton:Ja,AlertCircle:tu,Check:Vn},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{value:{type:[String,Number],default:void 0},modelValue:{type:[String,Number],default:void 0},type:{type:String,default:"text",validator:e=>["text","password","email","tel","url","search","number"].includes(e)},label:{type:String,default:void 0},labelOutside:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},showTrailingButton:{type:Boolean,default:!1},trailingButtonLabel:{type:String,default:""},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},helperText:{type:String,default:""},disabled:{type:Boolean,default:!1},pill:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["update:value","update:modelValue","update:model-value","trailing-button-click"],setup(){return{model:Xa("value","update:value",!0)}},computed:{computedId(){return this.$attrs.id&&this.$attrs.id!==""?this.$attrs.id:this.inputName},inputName(){return"input"+ft()},hasLeadingIcon(){return this.$slots.default},hasTrailingIcon(){return this.success},hasPlaceholder(){return this.placeholder!==""&&this.placeholder!==void 0},computedPlaceholder(){return this.hasPlaceholder?this.placeholder:this.label},isValidLabel(){const e=this.label||this.labelOutside;return e||console.warn("You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation."),e},ariaDescribedby(){const e=[];return this.helperText.length>0&&e.push(`${this.inputName}-helper-text`),this.$attrs["aria-describedby"]&&e.push(this.$attrs["aria-describedby"]),e.join(" ")||null}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()},handleInput(e){const a=this.type==="number"&&typeof this.model=="number"?parseFloat(e.target.value,10):e.target.value;this.model=a},handleTrailingButtonClick(e){this.$emit("trailing-button-click",e)}}};var nu=function(){var e=this,a=e._self._c;return a("div",{staticClass:"input-field",class:{"input-field--disabled":e.disabled,"input-field--label-outside":e.labelOutside||!e.isValidLabel,"input-field--leading-icon":e.hasLeadingIcon,"input-field--trailing-icon":e.showTrailingButton||e.hasTrailingIcon,"input-field--pill":e.pill}},[a("div",{staticClass:"input-field__main-wrapper"},[a("input",e._g(e._b({ref:"input",staticClass:"input-field__input",class:[e.inputClass,{"input-field__input--success":e.success,"input-field__input--error":e.error}],attrs:{id:e.computedId,type:e.type,disabled:e.disabled,placeholder:e.computedPlaceholder,"aria-describedby":e.ariaDescribedby,"aria-live":"polite"},domProps:{value:e.model?.toString()},on:{input:e.handleInput}},"input",e.$attrs,!1),e.$listeners)),!e.labelOutside&&e.isValidLabel?a("label",{staticClass:"input-field__label",attrs:{for:e.computedId}},[e._v(" "+e._s(e.label)+" ")]):e._e(),a("div",{directives:[{name:"show",rawName:"v-show",value:e.hasLeadingIcon,expression:"hasLeadingIcon"}],staticClass:"input-field__icon input-field__icon--leading"},[e._t("default")],2),e.showTrailingButton?a("NcButton",{staticClass:"input-field__trailing-button",attrs:{type:"tertiary-no-background","aria-label":e.trailingButtonLabel,disabled:e.disabled},on:{click:e.handleTrailingButtonClick},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("trailing-button-icon")]},proxy:!0}],null,!0)}):e.success||e.error?a("div",{staticClass:"input-field__icon input-field__icon--trailing"},[e.success?a("Check",{staticStyle:{color:"var(--color-success-text)"},attrs:{size:20}}):e.error?a("AlertCircle",{staticStyle:{color:"var(--color-error-text)"},attrs:{size:20}}):e._e()],1):e._e()],1),e.helperText.length>0?a("p",{staticClass:"input-field__helper-text-message",class:{"input-field__helper-text-message--error":e.error,"input-field__helper-text-message--success":e.success},attrs:{id:`${e.inputName}-helper-text`}},[e.success?a("Check",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):e.error?a("AlertCircle",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):e._e(),e._v(" "+e._s(e.helperText)+" ")],1):e._e()])},ou=[],su=ie(iu,nu,ou,!1,null,"e4fac465");const Mt=su.exports,ru={name:"EyeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var lu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon eye-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},_u=[],du=ie(ru,lu,_u,!1,null,null);const fu=du.exports,gu={name:"EyeOffIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var hu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon eye-off-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M11.83,9L15,12.16C15,12.11 15,12.05 15,12A3,3 0 0,0 12,9C11.94,9 11.89,9 11.83,9M7.53,9.8L9.08,11.35C9.03,11.56 9,11.77 9,12A3,3 0 0,0 12,15C12.22,15 12.44,14.97 12.65,14.92L14.2,16.47C13.53,16.8 12.79,17 12,17A5,5 0 0,1 7,12C7,11.21 7.2,10.47 7.53,9.8M2,4.27L4.28,6.55L4.73,7C3.08,8.3 1.78,10 1,12C2.73,16.39 7,19.5 12,19.5C13.55,19.5 15.03,19.2 16.38,18.66L16.81,19.08L19.73,22L21,20.73L3.27,3M12,7A5,5 0 0,1 17,12C17,12.64 16.87,13.26 16.64,13.82L19.57,16.75C21.07,15.5 22.27,13.86 23,12C21.27,7.61 17,4.5 12,4.5C10.6,4.5 9.26,4.75 8,5.2L10.17,7.35C10.74,7.13 11.35,7 12,7Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Fu=[],uu=ie(gu,hu,Fu,!1,null,null);const cu=uu.exports;oe(g1);const mu=f1().detectUser().setApp("@nextcloud/vue").build(),ys=Xt("core","capabilities",{}).password_policy||null,pu=new Set(Object.keys(Mt.props)),bu={name:"NcPasswordField",components:{NcInputField:Mt,Eye:fu,EyeOff:cu},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{" ":{},...Mt.props,showTrailingButton:{type:Boolean,default:!0},trailingButtonLabel:void 0,checkPasswordStrength:{type:Boolean,default:!1},minlength:{type:Number,default:0},maxlength:{type:Number,default:null},asText:{type:Boolean,default:!1}},emits:["valid","invalid","update:value","update:modelValue","update:model-value"],setup(){return{model:Xa("value","update:value")}},data(){return{isPasswordHidden:!0,internalHelpMessage:"",isValid:null}},computed:{computedError(){return this.error||this.isValid===!1},computedSuccess(){return this.success||this.isValid===!0},computedHelperText(){return this.helperText.length>0?this.helperText:this.internalHelpMessage},rules(){const{minlength:e}=this;return{minlength:e??ys?.minLength}},trailingButtonLabelPassword(){return this.isPasswordHidden?x("Show password"):x("Hide password")},propsAndAttrsToForward(){return{...this.$attrs,...Object.fromEntries(Object.entries(this.$props).filter(([e])=>pu.has(e)))}}},watch:{model(e){if(this.checkPasswordStrength){if(ys===null)return;this.checkPassword(e)}}},methods:{focus(){this.$refs.inputField.focus()},select(){this.$refs.inputField.select()},handleInput(e){this.model=e.target.value},togglePasswordVisibility(){this.isPasswordHidden=!this.isPasswordHidden},checkPassword:Un(async function(e){try{const{data:a}=await pa.post(Va("apps/password_policy/api/v1/validate"),{password:e});if(this.isValid=a.ocs.data.passed,a.ocs.data.passed){this.internalHelpMessage=x("Password is secure"),this.$emit("valid");return}this.internalHelpMessage=a.ocs.data.reason,this.$emit("invalid")}catch(a){mu.error("Password policy returned an error",a)}},500)}};var Du=function(){var e=this,a=e._self._c;return a("NcInputField",e._g(e._b({ref:"inputField",attrs:{type:e.isPasswordHidden&&!e.asText?"password":"text","trailing-button-label":e.trailingButtonLabelPassword,"helper-text":e.computedHelperText,error:e.computedError,success:e.computedSuccess,minlength:e.rules.minlength,"input-class":{"password-field__input--secure-text":e.isPasswordHidden&&e.asText}},on:{"trailing-button-click":e.togglePasswordVisibility,input:e.handleInput},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[e.isPasswordHidden?a("Eye",{attrs:{size:18}}):a("EyeOff",{attrs:{size:18}})]},proxy:!0}])},"NcInputField",e.propsAndAttrsToForward,!1),e.$listeners),[e._t("default")],2)},Tu=[],yu=ie(bu,Du,Tu,!1,null,"ec73c332");const a3=yu.exports,Eu={name:"ArrowRightIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var ku=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon arrow-right-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Au=[],wu=ie(Eu,ku,Au,!1,null,null);const Su=wu.exports,vu={name:"UndoVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ru=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon undo-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M13.5,7A6.5,6.5 0 0,1 20,13.5A6.5,6.5 0 0,1 13.5,20H10V18H13.5C16,18 18,16 18,13.5C18,11 16,9 13.5,9H7.83L10.91,12.09L9.5,13.5L4,8L9.5,2.5L10.92,3.91L7.83,7H13.5M6,18H8V20H6V18Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Cu=[],Ou=ie(vu,Ru,Cu,!1,null,null);const Bu=Ou.exports;oe(h1,tr);const Nu=new Set(Object.keys(Mt.props)),xu={name:"NcTextField",components:{NcInputField:Mt,Close:Pn,ArrowRight:Su,Undo:Bu},inheritAttrs:!1,model:{prop:"modelValue",event:"update:modelValue"},props:{" ":{},...Mt.props,trailingButtonLabel:{type:String,default:""},trailingButtonIcon:{type:String,default:"close",validator:e=>["close","arrowRight","undo"].includes(e)}},emits:["update:value","update:modelValue","update:model-value"],setup(){return{model:Xa("value","update:value")}},computed:{propsAndAttrsToForward(){const e={undo:x("Undo changes"),close:x("Clear text"),arrowRight:x("Save changes")};return{...this.$attrs,...Object.fromEntries(Object.entries(this.$props).filter(([a])=>Nu.has(a))),trailingButtonLabel:this.trailingButtonLabel||e[this.trailingButtonIcon]}}},methods:{focus(){this.$refs.inputField.focus()},select(){this.$refs.inputField.select()}}};var Mu=function(){var e=this,a=e._self._c;return a("NcInputField",e._g(e._b({ref:"inputField",scopedSlots:e._u([e.type!=="search"?{key:"trailing-button-icon",fn:function(){return[e.trailingButtonIcon==="close"?a("Close",{attrs:{size:20}}):e.trailingButtonIcon==="arrowRight"?a("ArrowRight",{attrs:{size:20}}):e.trailingButtonIcon==="undo"?a("Undo",{attrs:{size:20}}):e._e()]},proxy:!0}:null],null,!0)},"NcInputField",e.propsAndAttrsToForward,!1),e.$listeners),[e._t("default")],2)},ju=[],Yu=ie(xu,Mu,ju,!1,null,null);const qu=Yu.exports;oe(ir),n_,x("Submit");const Lu={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Zu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Iu=[],Hu=ie(Lu,Zu,Iu,!1,null,null);const rl=Hu.exports;oe(F1),Zn("nextcloud").persist().build(),oe(u1);const Pu={name:"NcVNodes",props:{vnodes:{type:[Array,Object],default:null}},render(e){return this.vnodes||this.$slots?.default||this.$scopedSlots?.default?.()}},Gu=null,Uu=null;var zu=ie(Pu,Gu,Uu,!1,null,null);const t3=zu.exports,Vu={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var $u=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon chevron-up-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M7.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Wu=[],Qu=ie(Vu,$u,Wu,!1,null,null);const Ku=Qu.exports;oe(c1),oe(m1),oe(p1,tr),oe(nr,b1);x("Search…");oe(T1);const Ju={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Xu=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},ec=[],ac=ie(Ju,Xu,ec,!1,null,null);const i3=ac.exports;x("Settings"),oe(y1),Un(function(){this.selectedSection="",document.activeElement.className.includes("navigation-list__link")&&document.activeElement.blur()},300);let tc="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",ic=(e=21)=>{let a="",i=e|0;for(;i--;)a+=tc[Math.random()*64|0];return a};function ji(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?ji=function(a){return typeof a}:ji=function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},ji(e)}var ll={selector:"vue-portal-target-".concat(ic())},nc=function(e){return ll.selector=e},gn=typeof window<"u"&&(typeof document>"u"?"undefined":ji(document))!==void 0,oc=Sa.extend({abstract:!0,name:"PortalOutlet",props:["nodes","tag"],data:function(e){return{updatedNodes:e.nodes}},render:function(e){var a=this.updatedNodes&&this.updatedNodes();return a?a.length===1&&!a[0].text?a:e(this.tag||"DIV",a):e()},destroyed:function(){var e=this.$el;e&&e.parentNode.removeChild(e)}}),sc=Sa.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(ll.selector)}},tag:{type:String,default:"DIV"}},render:function(e){if(this.disabled){var a=this.$scopedSlots&&this.$scopedSlots.default();return a?a.length<2&&!a[0].text?a:e(this.tag,a):e()}return e()},created:function(){this.getTargetEl()||this.insertTargetEl()},updated:function(){var e=this;this.$nextTick(function(){!e.disabled&&e.slotFn!==e.$scopedSlots.default&&(e.container.updatedNodes=e.$scopedSlots.default),e.slotFn=e.$scopedSlots.default})},beforeDestroy:function(){this.unmount()},watch:{disabled:{immediate:!0,handler:function(e){e?this.unmount():this.$nextTick(this.mount)}}},methods:{getTargetEl:function(){if(gn)return document.querySelector(this.selector)},insertTargetEl:function(){if(gn){var e=document.querySelector("body"),a=document.createElement(this.tag);a.id=this.selector.substring(1),e.appendChild(a)}},mount:function(){if(gn){var e=this.getTargetEl(),a=document.createElement("DIV");this.prepend&&e.firstChild?e.insertBefore(a,e.firstChild):e.appendChild(a),this.container=new oc({el:a,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function rc(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};e.component(a.name||"portal",sc),a.defaultSelector&&nc(a.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===Sa&&Sa.use(rc),oe();const lc={name:"NcEmptyContent",props:{name:{type:String,default:""},description:{type:String,default:""}},computed:{hasName(){return this.name!==""},hasDescription(){return this.description!==""||this.$slots.description?.[0]}}};var _c=function(){var e=this,a=e._self._c;return a("div",{staticClass:"empty-content",attrs:{role:"note"}},[e.$slots.icon?a("div",{staticClass:"empty-content__icon",attrs:{"aria-hidden":"true"}},[e._t("icon")],2):e._e(),e._t("name",function(){return[e.hasName?a("span",{staticClass:"empty-content__name"},[e._v(" "+e._s(e.name)+" ")]):e._e()]}),e.hasDescription?a("p",{staticClass:"empty-content__description"},[e._t("description",function(){return[e._v(" "+e._s(e.description)+" ")]})],2):e._e(),e.$slots.action?a("div",{staticClass:"empty-content__action"},[e._t("action")],2):e._e()],2)},dc=[],fc=ie(lc,_c,dc,!1,null,"fede0c71");const co=fc.exports;oe(E1),oe(k1),oe(A1);var _l={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return function(i){function n(s){if(o[s])return o[s].exports;var l=o[s]={i:s,l:!1,exports:{}};return i[s].call(l.exports,l,l.exports,n),l.l=!0,l.exports}var o={};return n.m=i,n.c=o,n.d=function(s,l,_){n.o(s,l)||Object.defineProperty(s,l,{configurable:!1,enumerable:!0,get:_})},n.n=function(s){var l=s&&s.__esModule?function(){return s.default}:function(){return s};return n.d(l,"a",l),l},n.o=function(s,l){return Object.prototype.hasOwnProperty.call(s,l)},n.p="",n(n.s=60)}([function(i,n){function o(l,_){var r=l[1]||"",f=l[3];if(!f)return r;if(_&&typeof btoa=="function"){var d=s(f);return[r].concat(f.sources.map(function(g){return"/*# sourceURL="+f.sourceRoot+g+" */"})).concat([d]).join(`
`)}return[r].join(`
`)}function s(l){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(l))))+" */"}i.exports=function(l){var _=[];return _.toString=function(){return this.map(function(r){var f=o(r,l);return r[2]?"@media "+r[2]+"{"+f+"}":f}).join("")},_.i=function(r,f){typeof r=="string"&&(r=[[null,r,""]]);for(var d={},g=0;gz.parts.length&&(Z.parts.length=z.parts.length)}else{for(var S=[],c=0;c[...yf],validator:e=>e.every(a=>typeof a=="string"&&Es.test(a)||typeof a=="object"&&a.color&&Es.test(a.color))},container:{type:[String,Object,Element,Boolean],default:"body"}},emits:["submit","close","update:open","update:value","update:modelValue","update:model-value","input"],setup(){return{model:Xa("value","update:value",!0)}},data(){return{currentColor:this.model,advanced:!1,ariaBack:x("Back"),ariaMore:x("More options")}},computed:{normalizedPalette(){return this.palette.map(e=>({color:typeof e=="object"?e.color:e,name:typeof e=="object"&&e.name?e.name:x("A color with a HEX value {hex}",{hex:e.color})}))},uid(){return ft()},contrastColor(){return this.calculateLuma(this.currentColor)>.5?"#000000":"#FFFFFF"}},watch:{model(e){this.currentColor=e}},methods:{t:x,handleConfirm(){this.$emit("submit",this.currentColor),this.handleClose(),this.advanced=!1},handleClose(){this.$emit("close"),this.$emit("update:open",!1)},handleBack(){this.advanced=!1},handleMoreSettings(){this.advanced=!0},pickColor(e){typeof e!="string"&&(e=this.currentColor.hex),this.currentColor=e,this.model=e,this.$emit("input",e)},calculateLuma(e){const[a,i,n]=this.hexToRGB(e);return(.2126*a+.7152*i+.0722*n)/255},hexToRGB(e){const a=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return a?[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]:null}}};var hc=function(){var e=this,a=e._self._c;return a("NcPopover",e._g(e._b({attrs:{"popup-role":"dialog",container:e.container},on:{"apply-hide":e.handleClose},scopedSlots:e._u([{key:"trigger",fn:function(i){return[e._t("default",null,null,i)]}}],null,!0)},"NcPopover",e.$attrs,!1),e.$listeners),[a("div",{staticClass:"color-picker",class:{"color-picker--advanced-fields":e.advanced&&e.advancedFields},attrs:{role:"dialog","aria-modal":"true","aria-label":e.t("Color picker")}},[a("Transition",{attrs:{name:"slide",mode:"out-in"}},[e.advanced?a("Chrome",{staticClass:"color-picker__advanced",attrs:{"disable-alpha":!0,"disable-fields":!e.advancedFields},on:{input:e.pickColor},model:{value:e.currentColor,callback:function(i){e.currentColor=i},expression:"currentColor"}}):a("div",{staticClass:"color-picker__simple"},e._l(e.normalizedPalette,function({color:i,name:n},o){return a("label",{key:o,staticClass:"color-picker__simple-color-circle",class:{"color-picker__simple-color-circle--active":i===e.currentColor},style:{backgroundColor:i}},[i===e.currentColor?a("Check",{attrs:{size:20,"fill-color":e.contrastColor}}):e._e(),a("input",{staticClass:"hidden-visually",attrs:{type:"radio","aria-label":n,name:`color-picker-${e.uid}`},domProps:{checked:i===e.currentColor},on:{click:function(s){return e.pickColor(i)}}})],1)}),0)],1),e.paletteOnly?e._e():a("div",{staticClass:"color-picker__navigation"},[e.advanced?a("NcButton",{attrs:{type:"tertiary","aria-label":e.ariaBack},on:{click:e.handleBack},scopedSlots:e._u([{key:"icon",fn:function(){return[a("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}):a("NcButton",{attrs:{type:"tertiary","aria-label":e.ariaMore},on:{click:e.handleMoreSettings},scopedSlots:e._u([{key:"icon",fn:function(){return[a("DotsHorizontal",{attrs:{size:20}})]},proxy:!0}],null,!1,1056868794)}),a("NcButton",{attrs:{type:"primary"},on:{click:e.handleConfirm}},[e._v(" "+e._s(e.t("Choose"))+" ")])],1)],1)])},Fc=[],uc=ie(gc,hc,Fc,!1,null,"616dda05");const i3=uc.exports;oe(w1);const cc={name:"NcDashboardWidgetItem",components:{NcAvatar:Vr,NcActions:er,NcActionButton:a_},props:{id:{type:[String,Number],default:void 0},targetUrl:{type:String,default:void 0},avatarUrl:{type:String,default:void 0},avatarUsername:{type:String,default:void 0},avatarIsNoUser:{type:Boolean,default:!1},overlayIconUrl:{type:String,default:void 0},mainText:{type:String,required:!0},subText:{type:String,default:""},itemMenu:{type:Object,default:()=>({})},forceMenu:{type:Boolean,default:!0}},data(){return{hovered:!1}},computed:{item(){return{id:this.id,targetUrl:this.targetUrl,avatarUrl:this.avatarUrl,avatarUsername:this.avatarUsername,overlayIconUrl:this.overlayIconUrl,mainText:this.mainText,subText:this.subText}},gotMenu(){return Object.keys(this.itemMenu).length!==0||!!this.$slots.actions},gotOverlayIcon(){return this.overlayIconUrl&&this.overlayIconUrl!==""}},methods:{onLinkClick(e){e.target.closest(".action-item")&&e.preventDefault()}}};var mc=function(){var e=this,a=e._self._c;return a("div",{on:{mouseover:function(i){e.hovered=!0},mouseleave:function(i){e.hovered=!1}}},[a(e.targetUrl?"a":"div",{tag:"component",class:{"item-list__entry":!0,"item-list__entry--has-actions-menu":e.gotMenu},attrs:{href:e.targetUrl||void 0,target:e.targetUrl?"_blank":void 0},on:{click:e.onLinkClick}},[e._t("avatar",function(){return[a("NcAvatar",{staticClass:"item-avatar",attrs:{size:44,url:e.avatarUrl,user:e.avatarUsername,"is-no-user":e.avatarIsNoUser,"show-user-status":!e.gotOverlayIcon}})]},{avatarUrl:e.avatarUrl,avatarUsername:e.avatarUsername}),e.overlayIconUrl?a("img",{staticClass:"item-icon",attrs:{alt:"",src:e.overlayIconUrl}}):e._e(),a("div",{staticClass:"item__details"},[a("h3",{attrs:{title:e.mainText}},[e._v(" "+e._s(e.mainText)+" ")]),e.subText!==""?a("span",{staticClass:"message",attrs:{title:e.subText}},[e._v(" "+e._s(e.subText)+" ")]):e._e()]),e.gotMenu?a("NcActions",{attrs:{"force-menu":e.forceMenu}},[e._t("actions",function(){return e._l(e.itemMenu,function(i,n){return a("NcActionButton",{key:n,attrs:{icon:i.icon,"close-after-click":!0},on:{click:function(o){return o.preventDefault(),o.stopPropagation(),e.$emit(n,e.item)}}},[e._v(" "+e._s(i.text)+" ")])})})],2):e._e()],2)],1)},pc=[],bc=ie(cc,mc,pc,!1,null,"51bbc625");const n3=bc.exports;oe(S1),Vn,x("More items …"),oe(v1),x("a few seconds ago"),x("seconds ago"),x("sec. ago");var _l={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return function(){var i={537:function(){typeof window<"u"&&function(){for(var l=0,_=["ms","moz","webkit","o"],r=0;r<_.length&&!window.requestAnimationFrame;++r)window.requestAnimationFrame=window[_[r]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[_[r]+"CancelAnimationFrame"]||window[_[r]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(f,d){var g=new Date().getTime(),h=Math.max(0,16-(g-l)),F=window.setTimeout(function(){f(g+h)},h);return l=g+h,F}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(f){clearTimeout(f)})}()}},n={};function o(l){var _=n[l];if(_!==void 0)return _.exports;var r=n[l]={exports:{}};return i[l](r,r.exports,o),r.exports}o.d=function(l,_){for(var r in _)o.o(_,r)&&!o.o(l,r)&&Object.defineProperty(l,r,{enumerable:!0,get:_[r]})},o.o=function(l,_){return Object.prototype.hasOwnProperty.call(l,_)},o.r=function(l){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(l,"__esModule",{value:!0})};var s={};return function(){o.r(s),o.d(s,{Anchors:function(){return R},Category:function(){return je},Emoji:function(){return Ke},EmojiData:function(){return Re},EmojiIndex:function(){return Te},EmojiView:function(){return ye},Picker:function(){return $},Preview:function(){return A},Search:function(){return j},Skins:function(){return b},frequently:function(){return z},sanitize:function(){return Ve},store:function(){return h},uncompress:function(){return M}});var l,_,r="emoji-mart",f=JSON,d=typeof window<"u"&&"localStorage"in window;function g(u,D){if(_)_(u,D);else{if(!d)return;try{window.localStorage["".concat(r,".").concat(u)]=f.stringify(D)}catch{}}}var h={update:function(u){for(var D in u)g(D,u[D])},set:g,get:function(u){if(l)return l(u);if(d){try{var D=window.localStorage["".concat(r,".").concat(u)]}catch{return}return D?JSON.parse(D):void 0}},setNamespace:function(u){r=u},setHandlers:function(u){u||(u={}),l=u.getter,_=u.setter}};function F(u){return F=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol=="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D},F(u)}function m(u,D){(D==null||D>u.length)&&(D=u.length);for(var y=0,C=new Array(D);y=G.length?{done:!0}:{done:!1,value:G[ae++]}},e:function(Ce){throw Ce},f:ke}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
+`,""])},function(i,n,o){var s=function(){var r=this,f=r.$createElement,d=r._self._c||f;return d("div",{staticClass:"vc-twitter",class:{"vc-twitter-hide-triangle ":r.triangle==="hide","vc-twitter-top-left-triangle ":r.triangle==="top-left","vc-twitter-top-right-triangle ":r.triangle==="top-right"},style:{width:typeof r.width=="number"?r.width+"px":r.width}},[d("div",{staticClass:"vc-twitter-triangle-shadow"}),r._v(" "),d("div",{staticClass:"vc-twitter-triangle"}),r._v(" "),d("div",{staticClass:"vc-twitter-body"},[r._l(r.defaultColors,function(g,h){return d("span",{key:h,staticClass:"vc-twitter-swatch",style:{background:g,boxShadow:"0 0 4px "+(r.equal(g)?g:"transparent")},on:{click:function(F){return r.handlerClick(g)}}})}),r._v(" "),d("div",{staticClass:"vc-twitter-hash"},[r._v("#")]),r._v(" "),d("editable-input",{attrs:{label:"#",value:r.hex},on:{change:r.inputChange}}),r._v(" "),d("div",{staticClass:"vc-twitter-clear"})],2)])},l=[];s._withStripped=!0;var _={render:s,staticRenderFns:l};n.a=_}])})})(_l);var gc=_l.exports;oe(w1);const Es=/^#([a-f0-9]{3}|[a-f0-9]{6})$/i,hc={name:"NcColorPicker",components:{ArrowLeft:rl,Check:Vn,Chrome:gc.Chrome,DotsHorizontal:In,NcButton:Ja,NcPopover:Gn},model:{prop:"modelValue",event:"update:modelValue"},props:{value:{type:String,default:void 0},modelValue:{type:String,default:void 0},advancedFields:{type:Boolean,default:!1},paletteOnly:{type:Boolean,default:!1},palette:{type:Array,default:()=>[...Ef],validator:e=>e.every(a=>typeof a=="string"&&Es.test(a)||typeof a=="object"&&a.color&&Es.test(a.color))},container:{type:[String,Object,Element,Boolean],default:"body"}},emits:["submit","close","update:open","update:value","update:modelValue","update:model-value","input"],setup(){return{model:Xa("value","update:value",!0)}},data(){return{currentColor:this.model,advanced:!1,ariaBack:x("Back"),ariaMore:x("More options")}},computed:{normalizedPalette(){return this.palette.map(e=>({color:typeof e=="object"?e.color:e,name:typeof e=="object"&&e.name?e.name:x("A color with a HEX value {hex}",{hex:e.color})}))},uid(){return ft()},contrastColor(){return this.calculateLuma(this.currentColor)>.5?"#000000":"#FFFFFF"}},watch:{model(e){this.currentColor=e}},methods:{t:x,handleConfirm(){this.$emit("submit",this.currentColor),this.handleClose(),this.advanced=!1},handleClose(){this.$emit("close"),this.$emit("update:open",!1)},handleBack(){this.advanced=!1},handleMoreSettings(){this.advanced=!0},pickColor(e){typeof e!="string"&&(e=this.currentColor.hex),this.currentColor=e,this.model=e,this.$emit("input",e)},calculateLuma(e){const[a,i,n]=this.hexToRGB(e);return(.2126*a+.7152*i+.0722*n)/255},hexToRGB(e){const a=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return a?[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]:null}}};var Fc=function(){var e=this,a=e._self._c;return a("NcPopover",e._g(e._b({attrs:{"popup-role":"dialog",container:e.container},on:{"apply-hide":e.handleClose},scopedSlots:e._u([{key:"trigger",fn:function(i){return[e._t("default",null,null,i)]}}],null,!0)},"NcPopover",e.$attrs,!1),e.$listeners),[a("div",{staticClass:"color-picker",class:{"color-picker--advanced-fields":e.advanced&&e.advancedFields},attrs:{role:"dialog","aria-modal":"true","aria-label":e.t("Color picker")}},[a("Transition",{attrs:{name:"slide",mode:"out-in"}},[e.advanced?a("Chrome",{staticClass:"color-picker__advanced",attrs:{"disable-alpha":!0,"disable-fields":!e.advancedFields},on:{input:e.pickColor},model:{value:e.currentColor,callback:function(i){e.currentColor=i},expression:"currentColor"}}):a("div",{staticClass:"color-picker__simple"},e._l(e.normalizedPalette,function({color:i,name:n},o){return a("label",{key:o,staticClass:"color-picker__simple-color-circle",class:{"color-picker__simple-color-circle--active":i===e.currentColor},style:{backgroundColor:i}},[i===e.currentColor?a("Check",{attrs:{size:20,"fill-color":e.contrastColor}}):e._e(),a("input",{staticClass:"hidden-visually",attrs:{type:"radio","aria-label":n,name:`color-picker-${e.uid}`},domProps:{checked:i===e.currentColor},on:{click:function(s){return e.pickColor(i)}}})],1)}),0)],1),e.paletteOnly?e._e():a("div",{staticClass:"color-picker__navigation"},[e.advanced?a("NcButton",{attrs:{type:"tertiary","aria-label":e.ariaBack},on:{click:e.handleBack},scopedSlots:e._u([{key:"icon",fn:function(){return[a("ArrowLeft",{attrs:{size:20}})]},proxy:!0}],null,!1,1821202730)}):a("NcButton",{attrs:{type:"tertiary","aria-label":e.ariaMore},on:{click:e.handleMoreSettings},scopedSlots:e._u([{key:"icon",fn:function(){return[a("DotsHorizontal",{attrs:{size:20}})]},proxy:!0}],null,!1,1056868794)}),a("NcButton",{attrs:{type:"primary"},on:{click:e.handleConfirm}},[e._v(" "+e._s(e.t("Choose"))+" ")])],1)],1)])},uc=[],cc=ie(hc,Fc,uc,!1,null,"616dda05");const n3=cc.exports;oe(S1);const mc={name:"NcDashboardWidgetItem",components:{NcAvatar:$r,NcActions:er,NcActionButton:t_},props:{id:{type:[String,Number],default:void 0},targetUrl:{type:String,default:void 0},avatarUrl:{type:String,default:void 0},avatarUsername:{type:String,default:void 0},avatarIsNoUser:{type:Boolean,default:!1},overlayIconUrl:{type:String,default:void 0},mainText:{type:String,required:!0},subText:{type:String,default:""},itemMenu:{type:Object,default:()=>({})},forceMenu:{type:Boolean,default:!0}},data(){return{hovered:!1}},computed:{item(){return{id:this.id,targetUrl:this.targetUrl,avatarUrl:this.avatarUrl,avatarUsername:this.avatarUsername,overlayIconUrl:this.overlayIconUrl,mainText:this.mainText,subText:this.subText}},gotMenu(){return Object.keys(this.itemMenu).length!==0||!!this.$slots.actions},gotOverlayIcon(){return this.overlayIconUrl&&this.overlayIconUrl!==""}},methods:{onLinkClick(e){e.target.closest(".action-item")&&e.preventDefault()}}};var pc=function(){var e=this,a=e._self._c;return a("div",{on:{mouseover:function(i){e.hovered=!0},mouseleave:function(i){e.hovered=!1}}},[a(e.targetUrl?"a":"div",{tag:"component",class:{"item-list__entry":!0,"item-list__entry--has-actions-menu":e.gotMenu},attrs:{href:e.targetUrl||void 0,target:e.targetUrl?"_blank":void 0},on:{click:e.onLinkClick}},[e._t("avatar",function(){return[a("NcAvatar",{staticClass:"item-avatar",attrs:{size:44,url:e.avatarUrl,user:e.avatarUsername,"is-no-user":e.avatarIsNoUser,"show-user-status":!e.gotOverlayIcon}})]},{avatarUrl:e.avatarUrl,avatarUsername:e.avatarUsername}),e.overlayIconUrl?a("img",{staticClass:"item-icon",attrs:{alt:"",src:e.overlayIconUrl}}):e._e(),a("div",{staticClass:"item__details"},[a("h3",{attrs:{title:e.mainText}},[e._v(" "+e._s(e.mainText)+" ")]),e.subText!==""?a("span",{staticClass:"message",attrs:{title:e.subText}},[e._v(" "+e._s(e.subText)+" ")]):e._e()]),e.gotMenu?a("NcActions",{attrs:{"force-menu":e.forceMenu}},[e._t("actions",function(){return e._l(e.itemMenu,function(i,n){return a("NcActionButton",{key:n,attrs:{icon:i.icon,"close-after-click":!0},on:{click:function(o){return o.preventDefault(),o.stopPropagation(),e.$emit(n,e.item)}}},[e._v(" "+e._s(i.text)+" ")])})})],2):e._e()],2)],1)},bc=[],Dc=ie(mc,pc,bc,!1,null,"51bbc625");const o3=Dc.exports;oe(v1),Vn,x("More items …"),oe(R1),x("a few seconds ago"),x("seconds ago"),x("sec. ago");var dl={exports:{}};(function(e,a){(function(i,n){e.exports=n()})(typeof self<"u"?self:ja,function(){return function(){var i={537:function(){typeof window<"u"&&function(){for(var l=0,_=["ms","moz","webkit","o"],r=0;r<_.length&&!window.requestAnimationFrame;++r)window.requestAnimationFrame=window[_[r]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[_[r]+"CancelAnimationFrame"]||window[_[r]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(f,d){var g=new Date().getTime(),h=Math.max(0,16-(g-l)),F=window.setTimeout(function(){f(g+h)},h);return l=g+h,F}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(f){clearTimeout(f)})}()}},n={};function o(l){var _=n[l];if(_!==void 0)return _.exports;var r=n[l]={exports:{}};return i[l](r,r.exports,o),r.exports}o.d=function(l,_){for(var r in _)o.o(_,r)&&!o.o(l,r)&&Object.defineProperty(l,r,{enumerable:!0,get:_[r]})},o.o=function(l,_){return Object.prototype.hasOwnProperty.call(l,_)},o.r=function(l){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(l,"__esModule",{value:!0})};var s={};return function(){o.r(s),o.d(s,{Anchors:function(){return R},Category:function(){return je},Emoji:function(){return Ke},EmojiData:function(){return Re},EmojiIndex:function(){return Te},EmojiView:function(){return ye},Picker:function(){return $},Preview:function(){return A},Search:function(){return j},Skins:function(){return b},frequently:function(){return z},sanitize:function(){return Ve},store:function(){return h},uncompress:function(){return M}});var l,_,r="emoji-mart",f=JSON,d=typeof window<"u"&&"localStorage"in window;function g(u,D){if(_)_(u,D);else{if(!d)return;try{window.localStorage["".concat(r,".").concat(u)]=f.stringify(D)}catch{}}}var h={update:function(u){for(var D in u)g(D,u[D])},set:g,get:function(u){if(l)return l(u);if(d){try{var D=window.localStorage["".concat(r,".").concat(u)]}catch{return}return D?JSON.parse(D):void 0}},setNamespace:function(u){r=u},setHandlers:function(u){u||(u={}),l=u.getter,_=u.setter}};function F(u){return F=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol=="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D},F(u)}function m(u,D){(D==null||D>u.length)&&(D=u.length);for(var y=0,C=new Array(D);y=G.length?{done:!0}:{done:!1,value:G[ae++]}},e:function(Ce){throw Ce},f:ke}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Ye,mt=!0,pt=!1;return{s:function(){se=se.call(G)},n:function(){var Ce=se.next();return mt=Ce.done,Ce},e:function(Ce){pt=!0,Ye=Ce},f:function(){try{mt||se.return==null||se.return()}finally{if(pt)throw Ye}}}}(Object.getOwnPropertyNames(u));try{for(y.s();!(D=y.n()).done;){var C=D.value,q=u[C];u[C]=q&&F(q)==="object"?k(q):q}}catch(G){y.e(G)}finally{y.f()}return Object.freeze(u)}var w,v,M=function(u){if(!u.compressed)return u;for(var D in u.compressed=!1,u.emojis){var y=u.emojis[D];for(var C in p)y[C]=y[p[C]],delete y[p[C]];y.short_names||(y.short_names=[]),y.short_names.unshift(D),y.sheet_x=y.sheet[0],y.sheet_y=y.sheet[1],delete y.sheet,y.text||(y.text=""),y.added_in||(y.added_in=6),y.added_in=y.added_in.toFixed(1),y.search=T(y)}return k(u)},L=["+1","grinning","kissing_heart","heart_eyes","laughing","stuck_out_tongue_winking_eye","sweat_smile","joy","scream","disappointed","unamused","weary","sob","sunglasses","heart","hankey"],O={};function P(){v=!0,w=h.get("frequently")}var z={add:function(u){v||P();var D=u.id;w||(w=O),w[D]||(w[D]=0),w[D]+=1,h.set("last",D),h.set("frequently",w)},get:function(u){if(v||P(),!w){O={};for(var D=[],y=Math.min(u,L.length),C=0;C',custom:'',flags:'',foods:'',nature:'',objects:'',smileys:'',people:' ',places:'',recent:'',symbols:''};function c(u,D,y,C,q,G,Q,se){var ae,ke=typeof u=="function"?u.options:u;return D&&(ke.render=D,ke.staticRenderFns=y,ke._compiled=!0),{exports:u,options:ke}}var S=c({props:{i18n:{type:Object,required:!0},color:{type:String},categories:{type:Array,required:!0},activeCategory:{type:Object,default:function(){return{}}}},emits:["click"],created:function(){this.svgs=Z}},function(){var u=this,D=u._self._c;return D("div",{staticClass:"emoji-mart-anchors",attrs:{role:"tablist"}},u._l(u.categories,function(y){return D("button",{key:y.id,class:{"emoji-mart-anchor":!0,"emoji-mart-anchor-selected":y.id==u.activeCategory.id},style:{color:y.id==u.activeCategory.id?u.color:""},attrs:{role:"tab",type:"button","aria-label":y.name,"aria-selected":y.id==u.activeCategory.id,"data-title":u.i18n.categories[y.id]},on:{click:function(C){return u.$emit("click",y)}}},[D("div",{attrs:{"aria-hidden":"true"},domProps:{innerHTML:u._s(u.svgs[y.id])}}),u._v(" "),D("span",{staticClass:"emoji-mart-anchor-bar",style:{backgroundColor:u.color},attrs:{"aria-hidden":"true"}})])}),0)},[]),R=S.exports;function B(u,D){if(!(u instanceof D))throw new TypeError("Cannot call a class as a function")}function U(u){var D=function(y,C){if(F(y)!="object"||!y)return y;var q=y[Symbol.toPrimitive];if(q!==void 0){var G=q.call(y,"string");if(F(G)!="object")return G;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(y)}(u);return F(D)=="symbol"?D:D+""}function Y(u,D){for(var y=0;y1114111||Math.floor(Q)!=Q)throw RangeError("Invalid code point: "+Q);Q<=65535?y.push(Q):(u=55296+((Q-=65536)>>10),D=Q%1024+56320,y.push(u,D)),(C+1===q||y.length>16384)&&(G+=String.fromCharCode.apply(null,y),y.length=0)}return G};function fe(u){var D=u.split("-").map(function(y){return"0x".concat(y)});return ee.apply(null,D)}function ne(u){return u.reduce(function(D,y){return D.indexOf(y)===-1&&D.push(y),D},[])}function pe(u,D){var y=ne(u),C=ne(D);return y.filter(function(q){return C.indexOf(q)>=0})}function we(u,D){var y={};for(var C in u){var q=u[C],G=q;D.hasOwnProperty(C)&&(G=D[C]),F(G)==="object"&&(G=we(q,G)),y[C]=G}return y}function me(u,D){var y=typeof Symbol<"u"&&u[Symbol.iterator]||u["@@iterator"];if(!y){if(Array.isArray(u)||(y=function(ae,ke){if(ae){if(typeof ae=="string")return ze(ae,ke);var Ye=Object.prototype.toString.call(ae).slice(8,-1);return Ye==="Object"&&ae.constructor&&(Ye=ae.constructor.name),Ye==="Map"||Ye==="Set"?Array.from(ae):Ye==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ye)?ze(ae,ke):void 0}}(u))||D){y&&(u=y);var C=0,q=function(){};return{s:q,n:function(){return C>=u.length?{done:!0}:{done:!1,value:u[C++]}},e:function(ae){throw ae},f:q}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
-In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var G,Q=!0,se=!1;return{s:function(){y=y.call(u)},n:function(){var ae=y.next();return Q=ae.done,ae},e:function(ae){se=!0,G=ae},f:function(){try{Q||y.return==null||y.return()}finally{if(se)throw G}}}}function ze(u,D){(D==null||D>u.length)&&(D=u.length);for(var y=0,C=new Array(D);y1&&arguments[1]!==void 0?arguments[1]:{},C=y.emojisToShowFilter,q=y.include,G=y.exclude,Q=y.custom,se=y.recent,ae=y.recentLength,ke=ae===void 0?20:ae;B(this,u),this._data=M(D),this._emojisFilter=C||null,this._include=q||null,this._exclude=G||null,this._custom=Q||[],this._recent=se||z.get(ke),this._emojis={},this._nativeEmojis={},this._emoticons={},this._categories=[],this._recentCategory={id:"recent",name:"Recent",emojis:[]},this._customCategory={id:"custom",name:"Custom",emojis:[]},this._searchIndex={},this.buildIndex(),Object.freeze(this)},[{key:"buildIndex",value:function(){var u=this,D=this._data.categories;if(this._include&&(D=(D=D.filter(function(G){return u._include.includes(G.id)})).sort(function(G,Q){var se=u._include.indexOf(G.id),ae=u._include.indexOf(Q.id);return seae?1:0})),D.forEach(function(G){if(u.isCategoryNeeded(G.id)){var Q={id:G.id,name:G.name,emojis:[]};G.emojis.forEach(function(se){var ae=u.addEmoji(se);ae&&Q.emojis.push(ae)}),Q.emojis.length&&u._categories.push(Q)}}),this.isCategoryNeeded("custom")){if(this._custom.length>0){var y,C=me(this._custom);try{for(C.s();!(y=C.n()).done;){var q=y.value;this.addCustomEmoji(q)}}catch(G){C.e(G)}finally{C.f()}}this._customCategory.emojis.length&&this._categories.push(this._customCategory)}this.isCategoryNeeded("recent")&&(this._recent.length&&this._recent.map(function(G){var Q,se=me(u._customCategory.emojis);try{for(se.s();!(Q=se.n()).done;){var ae=Q.value;if(ae.id===G)return void u._recentCategory.emojis.push(ae)}}catch(ke){se.e(ke)}finally{se.f()}u.hasEmoji(G)&&u._recentCategory.emojis.push(u.emoji(G))}),this._recentCategory.emojis.length&&this._categories.unshift(this._recentCategory))}},{key:"findEmoji",value:function(u,D){var y=u.match(Be);if(y&&(u=y[1],y[2]&&(D=parseInt(y[2],10))),this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]),this._emojis.hasOwnProperty(u)){var C=this._emojis[u];return D?C.getSkin(D):C}return this._nativeEmojis.hasOwnProperty(u)?this._nativeEmojis[u]:null}},{key:"categories",value:function(){return this._categories}},{key:"emoji",value:function(u){this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]);var D=this._emojis[u];if(!D)throw new Error("Can not find emoji by id: "+u);return D}},{key:"firstEmoji",value:function(){var u=this._emojis[Object.keys(this._emojis)[0]];if(!u)throw new Error("Can not get first emoji");return u}},{key:"hasEmoji",value:function(u){return this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]),!!this._emojis[u]}},{key:"nativeEmoji",value:function(u){return this._nativeEmojis.hasOwnProperty(u)?this._nativeEmojis[u]:null}},{key:"search",value:function(u,D){var y=this;if(D||(D=75),!u.length)return null;if(u=="-"||u=="-1")return[this.emoji("-1")];var C,q=u.toLowerCase().split(/[\s|,|\-|_]+/);q.length>2&&(q=[q[0],q[1]]),C=q.map(function(Q){for(var se=y._emojis,ae=y._searchIndex,ke=0,Ye=function(){var pt=Q[mt];if(ke++,ae[pt]||(ae[pt]={}),!(ae=ae[pt]).results){var Ce={};for(var et in ae.results=[],ae.emojis={},se){var fa=se[et],xl=fa._data.search,ko=Q.substr(0,ke),Ao=xl.indexOf(ko);if(Ao!=-1){var wo=Ao+1;ko==et&&(wo=0),ae.results.push(fa),ae.emojis[et]=fa,Ce[et]=wo}}ae.results.sort(function(Ml,jl){return Ce[Ml.id]-Ce[jl.id]})}se=ae.emojis},mt=0;mt1?pe.apply(null,C):C.length?C[0]:[])&&G.length>D&&(G=G.slice(0,D)),G}},{key:"addCustomEmoji",value:function(u){var D=Object.assign({},u,{id:u.short_names[0],custom:!0});D.search||(D.search=T(D));var y=new Re(D);return this._emojis[y.id]=y,this._customCategory.emojis.push(y),y}},{key:"addEmoji",value:function(u){var D=this,y=this._data.emojis[u];if(!this.isEmojiNeeded(y))return!1;var C=new Re(y);if(this._emojis[u]=C,C.native&&(this._nativeEmojis[C.native]=C),C._skins)for(var q in C._skins){var G=C._skins[q];G.native&&(this._nativeEmojis[G.native]=G)}return C.emoticons&&C.emoticons.forEach(function(Q){D._emoticons[Q]||(D._emoticons[Q]=u)}),C}},{key:"isCategoryNeeded",value:function(u){var D=!this._include||!this._include.length||this._include.indexOf(u)>-1,y=!(!this._exclude||!this._exclude.length)&&this._exclude.indexOf(u)>-1;return!(!D||y)}},{key:"isEmojiNeeded",value:function(u){return!this._emojisFilter||this._emojisFilter(u)}}])}(),Re=function(){return te(function u(D){if(B(this,u),this._data=Object.assign({},D),this._skins=null,this._data.skin_variations)for(var y in this._skins=[],Le){var C=Le[y],q=this._data.skin_variations[C],G=Object.assign({},D);for(var Q in q)G[Q]=q[Q];delete G.skin_variations,G.skin_tone=parseInt(y)+1,this._skins.push(new u(G))}for(var se in this._sanitized=Ve(this._data),this._sanitized)this[se]=this._sanitized[se];this.short_names=this._data.short_names,this.short_name=this._data.short_names[0],Object.freeze(this)},[{key:"getSkin",value:function(u){return u&&u!="native"&&this._skins?this._skins[u-1]:this}},{key:"getPosition",value:function(){var u=+(1.6666666666666667*this._data.sheet_x).toFixed(2),D=+(100/60*this._data.sheet_y).toFixed(2);return"".concat(u,"% ").concat(D,"%")}},{key:"ariaLabel",value:function(){return[this.native].concat(this.short_names).filter(Boolean).join(", ")}}])}(),ye=function(){return te(function u(D,y,C,q,G,Q,se){B(this,u),this._emoji=D,this._native=q,this._skin=y,this._set=C,this._fallback=G,this.canRender=this._canRender(),this.cssClass=this._cssClass(),this.cssStyle=this._cssStyle(se),this.content=this._content(),this.title=Q===!0?D.short_name:null,this.ariaLabel=D.ariaLabel(),Object.freeze(this)},[{key:"getEmoji",value:function(){return this._emoji.getSkin(this._skin)}},{key:"_canRender",value:function(){return this._isCustom()||this._isNative()||this._hasEmoji()||this._fallback}},{key:"_cssClass",value:function(){return["emoji-set-"+this._set,"emoji-type-"+this._emojiType()]}},{key:"_cssStyle",value:function(u){var D={};return this._isCustom()?D={backgroundImage:"url("+this.getEmoji()._data.imageUrl+")",backgroundSize:"100%",width:u+"px",height:u+"px"}:this._hasEmoji()&&!this._isNative()&&(D={backgroundPosition:this.getEmoji().getPosition()}),u&&(D=this._isNative()?Object.assign(D,{fontSize:Math.round(.95*u*10)/10+"px"}):Object.assign(D,{width:u+"px",height:u+"px"})),D}},{key:"_content",value:function(){return this._isCustom()?"":this._isNative()?this.getEmoji().native:this._hasEmoji()?"":this._fallback?this._fallback(this.getEmoji()):null}},{key:"_isNative",value:function(){return this._native}},{key:"_isCustom",value:function(){return this.getEmoji().custom}},{key:"_hasEmoji",value:function(){if(!this.getEmoji()._data)return!1;var u=this.getEmoji()._data["has_img_"+this._set];return u===void 0||u}},{key:"_emojiType",value:function(){return this._isCustom()?"custom":this._isNative()?"native":this._hasEmoji()?"image":"fallback"}}])}();function Ve(u){var D=u.name,y=u.short_names,C=u.skin_tone,q=u.skin_variations,G=u.emoticons,Q=u.unified,se=u.custom,ae=u.imageUrl,ke=u.id||y[0],Ye=":".concat(ke,":");return se?{id:ke,name:D,colons:Ye,emoticons:G,custom:se,imageUrl:ae}:(C&&(Ye+=":skin-tone-".concat(C,":")),{id:ke,name:D,colons:Ye,emoticons:G,unified:Q.toLowerCase(),skin:C||(q?1:null),native:fe(Q)})}function J(u,D,y){return(D=U(D))in u?Object.defineProperty(u,D,{value:y,enumerable:!0,configurable:!0,writable:!0}):u[D]=y,u}var ve={native:{type:Boolean,default:!1},tooltip:{type:Boolean,default:!1},fallback:{type:Function},skin:{type:Number,default:1},set:{type:String,default:"apple"},emoji:{type:[String,Object],required:!0},size:{type:Number,default:null},tag:{type:String,default:"span"}},_e={perLine:{type:Number,default:9},maxSearchResults:{type:Number,default:75},emojiSize:{type:Number,default:24},title:{type:String,default:"Emoji Mart™"},emoji:{type:String,default:"department_store"},color:{type:String,default:"#ae65c5"},set:{type:String,default:"apple"},skin:{type:Number,default:null},defaultSkin:{type:Number,default:1},native:{type:Boolean,default:!1},emojiTooltip:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},i18n:{type:Object,default:function(){return{}}},showPreview:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showCategories:{type:Boolean,default:!0},showSkinTones:{type:Boolean,default:!0},infiniteScroll:{type:Boolean,default:!0},pickerStyles:{type:Object,default:function(){return{}}}};function Ne(u,D){var y=Object.keys(u);if(Object.getOwnPropertySymbols){var C=Object.getOwnPropertySymbols(u);D&&(C=C.filter(function(q){return Object.getOwnPropertyDescriptor(u,q).enumerable})),y.push.apply(y,C)}return y}function Ze(u){for(var D=1;D0},emojiObjects:function(){var u=this;return this.emojis.map(function(D){return{emojiObject:D,emojiView:new ye(D,u.emojiProps.skin,u.emojiProps.set,u.emojiProps.native,u.emojiProps.fallback,u.emojiProps.emojiTooltip,u.emojiProps.emojiSize)}})}},components:{Emoji:Ke}},function(){var u=this,D=u._self._c;return u.isVisible&&(u.isSearch||u.hasResults)?D("section",{class:{"emoji-mart-category":!0,"emoji-mart-no-results":!u.hasResults},attrs:{"aria-label":u.i18n.categories[u.id]}},[D("div",{staticClass:"emoji-mart-category-label"},[D("h3",{staticClass:"emoji-mart-category-label"},[u._v(u._s(u.i18n.categories[u.id]))])]),u._v(" "),u._l(u.emojiObjects,function(y){var C=y.emojiObject,q=y.emojiView;return[q.canRender?D("button",{key:C.id,staticClass:"emoji-mart-emoji",class:u.activeClass(C),attrs:{"aria-label":q.ariaLabel,role:"option","aria-selected":"false","aria-posinset":"1","aria-setsize":"1812",type:"button","data-title":C.short_name,title:q.title},on:{mouseenter:function(G){u.emojiProps.onEnter(q.getEmoji())},mouseleave:function(G){u.emojiProps.onLeave(q.getEmoji())},click:function(G){u.emojiProps.onClick(q.getEmoji())}}},[D("span",{class:q.cssClass,style:q.cssStyle},[u._v(u._s(q.content))])]):u._e()]}),u._v(" "),u.hasResults?u._e():D("div",[D("emoji",{attrs:{data:u.data,emoji:"sleuth_or_spy",native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}}),u._v(" "),D("div",{staticClass:"emoji-mart-no-results-label"},[u._v(u._s(u.i18n.notfound))])],1)],2):u._e()},[]).exports,b=c({props:{skin:{type:Number,required:!0}},emits:["change"],data:function(){return{opened:!1}},methods:{onClick:function(u){this.opened&&u!=this.skin&&this.$emit("change",u),this.opened=!this.opened}}},function(){var u=this,D=u._self._c;return D("div",{class:{"emoji-mart-skin-swatches":!0,"emoji-mart-skin-swatches-opened":u.opened}},u._l(6,function(y){return D("span",{key:y,class:{"emoji-mart-skin-swatch":!0,"emoji-mart-skin-swatch-selected":u.skin==y}},[D("span",{class:"emoji-mart-skin emoji-mart-skin-tone-"+y,on:{click:function(C){return u.onClick(y)}}})])}),0)},[]).exports,A=c({props:{data:{type:Object,required:!0},title:{type:String,required:!0},emoji:{type:[String,Object]},idleEmoji:{type:[String,Object],required:!0},showSkinTones:{type:Boolean,default:!0},emojiProps:{type:Object,required:!0},skinProps:{type:Object,required:!0},onSkinChange:{type:Function,required:!0}},computed:{emojiData:function(){return this.emoji?this.emoji:{}},emojiShortNames:function(){return this.emojiData.short_names},emojiEmoticons:function(){return this.emojiData.emoticons}},components:{Emoji:Ke,Skins:b}},function(){var u=this,D=u._self._c;return D("div",{staticClass:"emoji-mart-preview"},[u.emoji?[D("div",{staticClass:"emoji-mart-preview-emoji"},[D("emoji",{attrs:{data:u.data,emoji:u.emoji,native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}})],1),u._v(" "),D("div",{staticClass:"emoji-mart-preview-data"},[D("div",{staticClass:"emoji-mart-preview-name"},[u._v(u._s(u.emoji.name))]),u._v(" "),D("div",{staticClass:"emoji-mart-preview-shortnames"},u._l(u.emojiShortNames,function(y){return D("span",{key:y,staticClass:"emoji-mart-preview-shortname"},[u._v(":"+u._s(y)+":")])}),0),u._v(" "),D("div",{staticClass:"emoji-mart-preview-emoticons"},u._l(u.emojiEmoticons,function(y){return D("span",{key:y,staticClass:"emoji-mart-preview-emoticon"},[u._v(u._s(y))])}),0)])]:[D("div",{staticClass:"emoji-mart-preview-emoji"},[D("emoji",{attrs:{data:u.data,emoji:u.idleEmoji,native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}})],1),u._v(" "),D("div",{staticClass:"emoji-mart-preview-data"},[D("span",{staticClass:"emoji-mart-title-label"},[u._v(u._s(u.title))])]),u._v(" "),u.showSkinTones?D("div",{staticClass:"emoji-mart-preview-skins"},[D("skins",{attrs:{skin:u.skinProps.skin},on:{change:function(y){return u.onSkinChange(y)}}})],1):u._e()]],2)},[]).exports,E=c({props:{data:{type:Object,required:!0},i18n:{type:Object,required:!0},autoFocus:{type:Boolean,default:!1},onSearch:{type:Function,required:!0},onArrowLeft:{type:Function,required:!1},onArrowRight:{type:Function,required:!1},onArrowDown:{type:Function,required:!1},onArrowUp:{type:Function,required:!1},onEnter:{type:Function,required:!1}},emits:["search","enter","arrowUp","arrowDown","arrowRight","arrowLeft"],data:function(){return{value:""}},computed:{emojiIndex:function(){return this.data}},watch:{value:function(){this.$emit("search",this.value)}},methods:{clear:function(){this.value=""}},mounted:function(){var u=this.$el.querySelector("input");this.autoFocus&&u.focus()}},function(){var u=this,D=u._self._c;return D("div",{staticClass:"emoji-mart-search"},[D("input",{directives:[{name:"model",rawName:"v-model",value:u.value,expression:"value"}],attrs:{type:"text",placeholder:u.i18n.search,role:"textbox","aria-autocomplete":"list","aria-owns":"emoji-mart-list","aria-label":"Search for an emoji","aria-describedby":"emoji-mart-search-description"},domProps:{value:u.value},on:{keydown:[function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"left",37,y.key,["Left","ArrowLeft"])||"button"in y&&y.button!==0?null:function(C){return u.$emit("arrowLeft",C)}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"right",39,y.key,["Right","ArrowRight"])||"button"in y&&y.button!==2?null:function(){return u.$emit("arrowRight")}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"down",40,y.key,["Down","ArrowDown"])?null:function(){return u.$emit("arrowDown")}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"up",38,y.key,["Up","ArrowUp"])?null:function(C){return u.$emit("arrowUp",C)}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"enter",13,y.key,"Enter")?null:function(){return u.$emit("enter")}.apply(null,arguments)}],input:function(y){y.target.composing||(u.value=y.target.value)}}}),u._v(" "),D("span",{staticClass:"hidden",attrs:{id:"emoji-picker-search-description"}},[u._v(`Use the left, right, up and down arrow keys to navigate the emoji search
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var G,Q=!0,se=!1;return{s:function(){y=y.call(u)},n:function(){var ae=y.next();return Q=ae.done,ae},e:function(ae){se=!0,G=ae},f:function(){try{Q||y.return==null||y.return()}finally{if(se)throw G}}}}function ze(u,D){(D==null||D>u.length)&&(D=u.length);for(var y=0,C=new Array(D);y1&&arguments[1]!==void 0?arguments[1]:{},C=y.emojisToShowFilter,q=y.include,G=y.exclude,Q=y.custom,se=y.recent,ae=y.recentLength,ke=ae===void 0?20:ae;B(this,u),this._data=M(D),this._emojisFilter=C||null,this._include=q||null,this._exclude=G||null,this._custom=Q||[],this._recent=se||z.get(ke),this._emojis={},this._nativeEmojis={},this._emoticons={},this._categories=[],this._recentCategory={id:"recent",name:"Recent",emojis:[]},this._customCategory={id:"custom",name:"Custom",emojis:[]},this._searchIndex={},this.buildIndex(),Object.freeze(this)},[{key:"buildIndex",value:function(){var u=this,D=this._data.categories;if(this._include&&(D=(D=D.filter(function(G){return u._include.includes(G.id)})).sort(function(G,Q){var se=u._include.indexOf(G.id),ae=u._include.indexOf(Q.id);return seae?1:0})),D.forEach(function(G){if(u.isCategoryNeeded(G.id)){var Q={id:G.id,name:G.name,emojis:[]};G.emojis.forEach(function(se){var ae=u.addEmoji(se);ae&&Q.emojis.push(ae)}),Q.emojis.length&&u._categories.push(Q)}}),this.isCategoryNeeded("custom")){if(this._custom.length>0){var y,C=me(this._custom);try{for(C.s();!(y=C.n()).done;){var q=y.value;this.addCustomEmoji(q)}}catch(G){C.e(G)}finally{C.f()}}this._customCategory.emojis.length&&this._categories.push(this._customCategory)}this.isCategoryNeeded("recent")&&(this._recent.length&&this._recent.map(function(G){var Q,se=me(u._customCategory.emojis);try{for(se.s();!(Q=se.n()).done;){var ae=Q.value;if(ae.id===G)return void u._recentCategory.emojis.push(ae)}}catch(ke){se.e(ke)}finally{se.f()}u.hasEmoji(G)&&u._recentCategory.emojis.push(u.emoji(G))}),this._recentCategory.emojis.length&&this._categories.unshift(this._recentCategory))}},{key:"findEmoji",value:function(u,D){var y=u.match(Be);if(y&&(u=y[1],y[2]&&(D=parseInt(y[2],10))),this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]),this._emojis.hasOwnProperty(u)){var C=this._emojis[u];return D?C.getSkin(D):C}return this._nativeEmojis.hasOwnProperty(u)?this._nativeEmojis[u]:null}},{key:"categories",value:function(){return this._categories}},{key:"emoji",value:function(u){this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]);var D=this._emojis[u];if(!D)throw new Error("Can not find emoji by id: "+u);return D}},{key:"firstEmoji",value:function(){var u=this._emojis[Object.keys(this._emojis)[0]];if(!u)throw new Error("Can not get first emoji");return u}},{key:"hasEmoji",value:function(u){return this._data.aliases.hasOwnProperty(u)&&(u=this._data.aliases[u]),!!this._emojis[u]}},{key:"nativeEmoji",value:function(u){return this._nativeEmojis.hasOwnProperty(u)?this._nativeEmojis[u]:null}},{key:"search",value:function(u,D){var y=this;if(D||(D=75),!u.length)return null;if(u=="-"||u=="-1")return[this.emoji("-1")];var C,q=u.toLowerCase().split(/[\s|,|\-|_]+/);q.length>2&&(q=[q[0],q[1]]),C=q.map(function(Q){for(var se=y._emojis,ae=y._searchIndex,ke=0,Ye=function(){var pt=Q[mt];if(ke++,ae[pt]||(ae[pt]={}),!(ae=ae[pt]).results){var Ce={};for(var et in ae.results=[],ae.emojis={},se){var fa=se[et],Ml=fa._data.search,ko=Q.substr(0,ke),Ao=Ml.indexOf(ko);if(Ao!=-1){var wo=Ao+1;ko==et&&(wo=0),ae.results.push(fa),ae.emojis[et]=fa,Ce[et]=wo}}ae.results.sort(function(jl,Yl){return Ce[jl.id]-Ce[Yl.id]})}se=ae.emojis},mt=0;mt1?pe.apply(null,C):C.length?C[0]:[])&&G.length>D&&(G=G.slice(0,D)),G}},{key:"addCustomEmoji",value:function(u){var D=Object.assign({},u,{id:u.short_names[0],custom:!0});D.search||(D.search=T(D));var y=new Re(D);return this._emojis[y.id]=y,this._customCategory.emojis.push(y),y}},{key:"addEmoji",value:function(u){var D=this,y=this._data.emojis[u];if(!this.isEmojiNeeded(y))return!1;var C=new Re(y);if(this._emojis[u]=C,C.native&&(this._nativeEmojis[C.native]=C),C._skins)for(var q in C._skins){var G=C._skins[q];G.native&&(this._nativeEmojis[G.native]=G)}return C.emoticons&&C.emoticons.forEach(function(Q){D._emoticons[Q]||(D._emoticons[Q]=u)}),C}},{key:"isCategoryNeeded",value:function(u){var D=!this._include||!this._include.length||this._include.indexOf(u)>-1,y=!(!this._exclude||!this._exclude.length)&&this._exclude.indexOf(u)>-1;return!(!D||y)}},{key:"isEmojiNeeded",value:function(u){return!this._emojisFilter||this._emojisFilter(u)}}])}(),Re=function(){return te(function u(D){if(B(this,u),this._data=Object.assign({},D),this._skins=null,this._data.skin_variations)for(var y in this._skins=[],Le){var C=Le[y],q=this._data.skin_variations[C],G=Object.assign({},D);for(var Q in q)G[Q]=q[Q];delete G.skin_variations,G.skin_tone=parseInt(y)+1,this._skins.push(new u(G))}for(var se in this._sanitized=Ve(this._data),this._sanitized)this[se]=this._sanitized[se];this.short_names=this._data.short_names,this.short_name=this._data.short_names[0],Object.freeze(this)},[{key:"getSkin",value:function(u){return u&&u!="native"&&this._skins?this._skins[u-1]:this}},{key:"getPosition",value:function(){var u=+(1.6666666666666667*this._data.sheet_x).toFixed(2),D=+(100/60*this._data.sheet_y).toFixed(2);return"".concat(u,"% ").concat(D,"%")}},{key:"ariaLabel",value:function(){return[this.native].concat(this.short_names).filter(Boolean).join(", ")}}])}(),ye=function(){return te(function u(D,y,C,q,G,Q,se){B(this,u),this._emoji=D,this._native=q,this._skin=y,this._set=C,this._fallback=G,this.canRender=this._canRender(),this.cssClass=this._cssClass(),this.cssStyle=this._cssStyle(se),this.content=this._content(),this.title=Q===!0?D.short_name:null,this.ariaLabel=D.ariaLabel(),Object.freeze(this)},[{key:"getEmoji",value:function(){return this._emoji.getSkin(this._skin)}},{key:"_canRender",value:function(){return this._isCustom()||this._isNative()||this._hasEmoji()||this._fallback}},{key:"_cssClass",value:function(){return["emoji-set-"+this._set,"emoji-type-"+this._emojiType()]}},{key:"_cssStyle",value:function(u){var D={};return this._isCustom()?D={backgroundImage:"url("+this.getEmoji()._data.imageUrl+")",backgroundSize:"100%",width:u+"px",height:u+"px"}:this._hasEmoji()&&!this._isNative()&&(D={backgroundPosition:this.getEmoji().getPosition()}),u&&(D=this._isNative()?Object.assign(D,{fontSize:Math.round(.95*u*10)/10+"px"}):Object.assign(D,{width:u+"px",height:u+"px"})),D}},{key:"_content",value:function(){return this._isCustom()?"":this._isNative()?this.getEmoji().native:this._hasEmoji()?"":this._fallback?this._fallback(this.getEmoji()):null}},{key:"_isNative",value:function(){return this._native}},{key:"_isCustom",value:function(){return this.getEmoji().custom}},{key:"_hasEmoji",value:function(){if(!this.getEmoji()._data)return!1;var u=this.getEmoji()._data["has_img_"+this._set];return u===void 0||u}},{key:"_emojiType",value:function(){return this._isCustom()?"custom":this._isNative()?"native":this._hasEmoji()?"image":"fallback"}}])}();function Ve(u){var D=u.name,y=u.short_names,C=u.skin_tone,q=u.skin_variations,G=u.emoticons,Q=u.unified,se=u.custom,ae=u.imageUrl,ke=u.id||y[0],Ye=":".concat(ke,":");return se?{id:ke,name:D,colons:Ye,emoticons:G,custom:se,imageUrl:ae}:(C&&(Ye+=":skin-tone-".concat(C,":")),{id:ke,name:D,colons:Ye,emoticons:G,unified:Q.toLowerCase(),skin:C||(q?1:null),native:fe(Q)})}function J(u,D,y){return(D=U(D))in u?Object.defineProperty(u,D,{value:y,enumerable:!0,configurable:!0,writable:!0}):u[D]=y,u}var ve={native:{type:Boolean,default:!1},tooltip:{type:Boolean,default:!1},fallback:{type:Function},skin:{type:Number,default:1},set:{type:String,default:"apple"},emoji:{type:[String,Object],required:!0},size:{type:Number,default:null},tag:{type:String,default:"span"}},_e={perLine:{type:Number,default:9},maxSearchResults:{type:Number,default:75},emojiSize:{type:Number,default:24},title:{type:String,default:"Emoji Mart™"},emoji:{type:String,default:"department_store"},color:{type:String,default:"#ae65c5"},set:{type:String,default:"apple"},skin:{type:Number,default:null},defaultSkin:{type:Number,default:1},native:{type:Boolean,default:!1},emojiTooltip:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},i18n:{type:Object,default:function(){return{}}},showPreview:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showCategories:{type:Boolean,default:!0},showSkinTones:{type:Boolean,default:!0},infiniteScroll:{type:Boolean,default:!0},pickerStyles:{type:Object,default:function(){return{}}}};function Ne(u,D){var y=Object.keys(u);if(Object.getOwnPropertySymbols){var C=Object.getOwnPropertySymbols(u);D&&(C=C.filter(function(q){return Object.getOwnPropertyDescriptor(u,q).enumerable})),y.push.apply(y,C)}return y}function Ze(u){for(var D=1;D0},emojiObjects:function(){var u=this;return this.emojis.map(function(D){return{emojiObject:D,emojiView:new ye(D,u.emojiProps.skin,u.emojiProps.set,u.emojiProps.native,u.emojiProps.fallback,u.emojiProps.emojiTooltip,u.emojiProps.emojiSize)}})}},components:{Emoji:Ke}},function(){var u=this,D=u._self._c;return u.isVisible&&(u.isSearch||u.hasResults)?D("section",{class:{"emoji-mart-category":!0,"emoji-mart-no-results":!u.hasResults},attrs:{"aria-label":u.i18n.categories[u.id]}},[D("div",{staticClass:"emoji-mart-category-label"},[D("h3",{staticClass:"emoji-mart-category-label"},[u._v(u._s(u.i18n.categories[u.id]))])]),u._v(" "),u._l(u.emojiObjects,function(y){var C=y.emojiObject,q=y.emojiView;return[q.canRender?D("button",{key:C.id,staticClass:"emoji-mart-emoji",class:u.activeClass(C),attrs:{"aria-label":q.ariaLabel,role:"option","aria-selected":"false","aria-posinset":"1","aria-setsize":"1812",type:"button","data-title":C.short_name,title:q.title},on:{mouseenter:function(G){u.emojiProps.onEnter(q.getEmoji())},mouseleave:function(G){u.emojiProps.onLeave(q.getEmoji())},click:function(G){u.emojiProps.onClick(q.getEmoji())}}},[D("span",{class:q.cssClass,style:q.cssStyle},[u._v(u._s(q.content))])]):u._e()]}),u._v(" "),u.hasResults?u._e():D("div",[D("emoji",{attrs:{data:u.data,emoji:"sleuth_or_spy",native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}}),u._v(" "),D("div",{staticClass:"emoji-mart-no-results-label"},[u._v(u._s(u.i18n.notfound))])],1)],2):u._e()},[]).exports,b=c({props:{skin:{type:Number,required:!0}},emits:["change"],data:function(){return{opened:!1}},methods:{onClick:function(u){this.opened&&u!=this.skin&&this.$emit("change",u),this.opened=!this.opened}}},function(){var u=this,D=u._self._c;return D("div",{class:{"emoji-mart-skin-swatches":!0,"emoji-mart-skin-swatches-opened":u.opened}},u._l(6,function(y){return D("span",{key:y,class:{"emoji-mart-skin-swatch":!0,"emoji-mart-skin-swatch-selected":u.skin==y}},[D("span",{class:"emoji-mart-skin emoji-mart-skin-tone-"+y,on:{click:function(C){return u.onClick(y)}}})])}),0)},[]).exports,A=c({props:{data:{type:Object,required:!0},title:{type:String,required:!0},emoji:{type:[String,Object]},idleEmoji:{type:[String,Object],required:!0},showSkinTones:{type:Boolean,default:!0},emojiProps:{type:Object,required:!0},skinProps:{type:Object,required:!0},onSkinChange:{type:Function,required:!0}},computed:{emojiData:function(){return this.emoji?this.emoji:{}},emojiShortNames:function(){return this.emojiData.short_names},emojiEmoticons:function(){return this.emojiData.emoticons}},components:{Emoji:Ke,Skins:b}},function(){var u=this,D=u._self._c;return D("div",{staticClass:"emoji-mart-preview"},[u.emoji?[D("div",{staticClass:"emoji-mart-preview-emoji"},[D("emoji",{attrs:{data:u.data,emoji:u.emoji,native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}})],1),u._v(" "),D("div",{staticClass:"emoji-mart-preview-data"},[D("div",{staticClass:"emoji-mart-preview-name"},[u._v(u._s(u.emoji.name))]),u._v(" "),D("div",{staticClass:"emoji-mart-preview-shortnames"},u._l(u.emojiShortNames,function(y){return D("span",{key:y,staticClass:"emoji-mart-preview-shortname"},[u._v(":"+u._s(y)+":")])}),0),u._v(" "),D("div",{staticClass:"emoji-mart-preview-emoticons"},u._l(u.emojiEmoticons,function(y){return D("span",{key:y,staticClass:"emoji-mart-preview-emoticon"},[u._v(u._s(y))])}),0)])]:[D("div",{staticClass:"emoji-mart-preview-emoji"},[D("emoji",{attrs:{data:u.data,emoji:u.idleEmoji,native:u.emojiProps.native,skin:u.emojiProps.skin,set:u.emojiProps.set}})],1),u._v(" "),D("div",{staticClass:"emoji-mart-preview-data"},[D("span",{staticClass:"emoji-mart-title-label"},[u._v(u._s(u.title))])]),u._v(" "),u.showSkinTones?D("div",{staticClass:"emoji-mart-preview-skins"},[D("skins",{attrs:{skin:u.skinProps.skin},on:{change:function(y){return u.onSkinChange(y)}}})],1):u._e()]],2)},[]).exports,E=c({props:{data:{type:Object,required:!0},i18n:{type:Object,required:!0},autoFocus:{type:Boolean,default:!1},onSearch:{type:Function,required:!0},onArrowLeft:{type:Function,required:!1},onArrowRight:{type:Function,required:!1},onArrowDown:{type:Function,required:!1},onArrowUp:{type:Function,required:!1},onEnter:{type:Function,required:!1}},emits:["search","enter","arrowUp","arrowDown","arrowRight","arrowLeft"],data:function(){return{value:""}},computed:{emojiIndex:function(){return this.data}},watch:{value:function(){this.$emit("search",this.value)}},methods:{clear:function(){this.value=""}},mounted:function(){var u=this.$el.querySelector("input");this.autoFocus&&u.focus()}},function(){var u=this,D=u._self._c;return D("div",{staticClass:"emoji-mart-search"},[D("input",{directives:[{name:"model",rawName:"v-model",value:u.value,expression:"value"}],attrs:{type:"text",placeholder:u.i18n.search,role:"textbox","aria-autocomplete":"list","aria-owns":"emoji-mart-list","aria-label":"Search for an emoji","aria-describedby":"emoji-mart-search-description"},domProps:{value:u.value},on:{keydown:[function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"left",37,y.key,["Left","ArrowLeft"])||"button"in y&&y.button!==0?null:function(C){return u.$emit("arrowLeft",C)}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"right",39,y.key,["Right","ArrowRight"])||"button"in y&&y.button!==2?null:function(){return u.$emit("arrowRight")}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"down",40,y.key,["Down","ArrowDown"])?null:function(){return u.$emit("arrowDown")}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"up",38,y.key,["Up","ArrowUp"])?null:function(C){return u.$emit("arrowUp",C)}.apply(null,arguments)},function(y){return!y.type.indexOf("key")&&u._k(y.keyCode,"enter",13,y.key,"Enter")?null:function(){return u.$emit("enter")}.apply(null,arguments)}],input:function(y){y.target.composing||(u.value=y.target.value)}}}),u._v(" "),D("span",{staticClass:"hidden",attrs:{id:"emoji-picker-search-description"}},[u._v(`Use the left, right, up and down arrow keys to navigate the emoji search
results.`)])])},[]),j=E.exports;function W(u,D){(D==null||D>u.length)&&(D=u.length);for(var y=0,C=new Array(D);y0}),this._categories[0].first=!0,Object.freeze(this._categories),this.activeCategory=this._categories[0],this.searchEmojis=null,this.previewEmoji=null,this.previewEmojiCategoryIdx=0,this.previewEmojiIdx=-1},[{key:"onScroll",value:function(){for(var u=this._vm.$refs.scroll.scrollTop,D=this.filteredCategories[0],y=0,C=this.filteredCategories.length;yu)break;D=q}this.activeCategory=D}},{key:"allCategories",get:function(){return this._categories}},{key:"filteredCategories",get:function(){return this.searchEmojis?[{id:"search",name:"Search",emojis:this.searchEmojis}]:this._categories.filter(function(u){return u.emojis.length>0})}},{key:"previewEmojiCategory",get:function(){return this.previewEmojiCategoryIdx>=0?this.filteredCategories[this.previewEmojiCategoryIdx]:null}},{key:"onAnchorClick",value:function(u){var D=this;if(!this.searchEmojis){var y=this.filteredCategories.indexOf(u),C=this._vm.getCategoryComponent(y);this._vm.infiniteScroll?function(){if(C){var q=C.$el.offsetTop;u.first&&(q=0),D._vm.$refs.scroll.scrollTop=q}}():this.activeCategory=this.filteredCategories[y]}}},{key:"onSearch",value:function(u){var D=this._data.search(u,this.maxSearchResults);this.searchEmojis=D,this.previewEmojiCategoryIdx=0,this.previewEmojiIdx=0,this.updatePreviewEmoji()}},{key:"onEmojiEnter",value:function(u){this.previewEmoji=u,this.previewEmojiIdx=-1,this.previewEmojiCategoryIdx=-1}},{key:"onEmojiLeave",value:function(u){this.previewEmoji=null}},{key:"onArrowLeft",value:function(){this.previewEmojiIdx>0?this.previewEmojiIdx-=1:(this.previewEmojiCategoryIdx-=1,this.previewEmojiCategoryIdx<0?this.previewEmojiCategoryIdx=0:this.previewEmojiIdx=this.filteredCategories[this.previewEmojiCategoryIdx].emojis.length-1),this.updatePreviewEmoji()}},{key:"onArrowRight",value:function(){this.previewEmojiIdx=this.filteredCategories.length?this.previewEmojiCategoryIdx=this.filteredCategories.length-1:this.previewEmojiIdx=0),this.updatePreviewEmoji()}},{key:"onArrowDown",value:function(){if(this.previewEmojiIdx==-1)return this.onArrowRight();var u=this.filteredCategories[this.previewEmojiCategoryIdx].emojis.length,D=this._perLine;this.previewEmojiIdx+D>u&&(D=u%this._perLine);for(var y=0;y0?this.filteredCategories[this.previewEmojiCategoryIdx-1].emojis.length%this._perLine:0);for(var D=0;DC+D.scrollTop&&(D.scrollTop+=y.offsetHeight),y&&y.offsetTop"u")return 0;var u=document.createElement("div");u.style.width="100px",u.style.height="100px",u.style.overflow="scroll",u.style.position="absolute",u.style.top="-9999px",document.body.appendChild(u);var D=u.offsetWidth-u.clientWidth;return document.body.removeChild(u),D}()},filteredCategories:function(){return this.view.filteredCategories},mergedI18n:function(){return Object.freeze(we(be,this.i18n))},idleEmoji:function(){try{return this.data.emoji(this.emoji)}catch(u){return console.error("Default preview emoji `"+this.emoji+"` is not available, check the Picker `emoji` property"),console.error(u),this.data.firstEmoji()}}},watch:{skin:function(){this.onSkinChange(this.skin)}},methods:{onScroll:function(){this.infiniteScroll&&!this.waitingForPaint&&(this.waitingForPaint=!0,window.requestAnimationFrame(this.onScrollPaint.bind(this)))},onScrollPaint:function(){this.waitingForPaint=!1,this.view.onScroll()},onAnchorClick:function(u){this.view.onAnchorClick(u)},onSearch:function(u){this.view.onSearch(u)},onEmojiEnter:function(u){this.view.onEmojiEnter(u)},onEmojiLeave:function(u){this.view.onEmojiLeave(u)},onArrowLeft:function(u){var D=this.view.previewEmojiIdx;this.view.onArrowLeft(),u&&this.view.previewEmojiIdx!==D&&u.preventDefault()},onArrowRight:function(){this.view.onArrowRight()},onArrowDown:function(){this.view.onArrowDown()},onArrowUp:function(u){this.view.onArrowUp(),u.preventDefault()},onEnter:function(){this.view.previewEmoji&&(this.$emit("select",this.view.previewEmoji),z.add(this.view.previewEmoji))},onEmojiClick:function(u){this.$emit("select",u),z.add(u)},onTextSelect:function(u){u.stopPropagation()},onSkinChange:function(u){this.activeSkin=u,h.update({skin:u}),this.$emit("skin-change",u)},getCategoryComponent:function(u){var D=this.$refs["categories_"+u];return D&&"0"in D?D[0]:D}},components:{Anchors:R,Category:je,Preview:A,Search:j}},H=c($e,function(){var u=this,D=u._self._c;return D("section",{staticClass:"emoji-mart emoji-mart-static",style:u.customStyles},[u.showCategories?D("div",{staticClass:"emoji-mart-bar emoji-mart-bar-anchors"},[D("anchors",{attrs:{data:u.data,i18n:u.mergedI18n,color:u.color,categories:u.view.allCategories,"active-category":u.view.activeCategory},on:{click:u.onAnchorClick}})],1):u._e(),u._v(" "),u._t("searchTemplate",function(){return[u.showSearch?D("search",{ref:"search",attrs:{data:u.data,i18n:u.mergedI18n,"auto-focus":u.autoFocus,"on-search":u.onSearch},on:{search:u.onSearch,arrowLeft:u.onArrowLeft,arrowRight:u.onArrowRight,arrowDown:u.onArrowDown,arrowUp:u.onArrowUp,enter:u.onEnter,select:u.onTextSelect}}):u._e()]},{data:u.data,i18n:u.i18n,autoFocus:u.autoFocus,onSearch:u.onSearch}),u._v(" "),D("div",{ref:"scroll",staticClass:"emoji-mart-scroll",attrs:{role:"tabpanel"},on:{scroll:u.onScroll}},[D("div",{ref:"scrollContent",attrs:{id:"emoji-mart-list",role:"listbox","aria-expanded":"true"}},[u._t("customCategory"),u._v(" "),u._l(u.view.filteredCategories,function(y,C){return D("category",{directives:[{name:"show",rawName:"v-show",value:u.infiniteScroll||y==u.view.activeCategory,expression:"infiniteScroll || category == view.activeCategory"}],key:y.id,ref:"categories_"+C,refInFor:!0,attrs:{data:u.data,i18n:u.mergedI18n,id:y.id,name:y.name,emojis:y.emojis,"emoji-props":u.emojiProps}})})],2)]),u._v(" "),u._t("previewTemplate",function(){return[u.showPreview?D("div",{staticClass:"emoji-mart-bar emoji-mart-bar-preview"},[D("preview",{attrs:{data:u.data,title:u.title,emoji:u.view.previewEmoji,"idle-emoji":u.idleEmoji,"show-skin-tones":u.showSkinTones,"emoji-props":u.emojiProps,"skin-props":u.skinProps,"on-skin-change":u.onSkinChange}})],1):u._e()]},{data:u.data,title:u.title,emoji:u.view.previewEmoji,idleEmoji:u.idleEmoji,showSkinTones:u.showSkinTones,emojiProps:u.emojiProps,skinProps:u.skinProps,onSkinChange:u.onSkinChange})],2)},[]),$=H.exports}(),s}()})})(_l);var ks=_l.exports;const o3=Zn("nextcloud-vue").persist(!0).build();oe(R1,nr,sr,or);const Dc={name:"CircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Tc=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon circle-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},yc=[],Ec=ie(Dc,Tc,yc,!1,null,null);const s3=Ec.exports;const r3={search:x("Search emoji"),notfound:x("No emoji found"),categories:{search:x("Search results"),recent:x("Frequently used"),smileys:x("Smileys & Emotion"),people:x("People & Body"),nature:x("Animals & Nature"),foods:x("Food & Drink"),activity:x("Activities"),places:x("Travel & Places"),objects:x("Objects"),symbols:x("Symbols"),flags:x("Flags"),custom:x("Custom")}},l3=[new Se(255,222,52,x("Neutral skin color")),new Se(228,205,166,x("Light skin tone")),new Se(250,221,192,x("Medium light skin tone")),new Se(174,129,87,x("Medium skin tone")),new Se(158,113,88,x("Medium dark skin tone")),new Se(96,79,69,x("Dark skin tone"))];ks.Emoji,Ja,Gn,ks.Picker,x("Pick an emoji"),x,oe(C1);const dl={name:"NcProgressBar",props:{value:{type:Number,default:0,validator(e){return e>=0&&e<=100}},size:{type:[String,Number],default:"small",validator(e){return["small","medium"].includes(e)||typeof e=="number"}},error:{type:Boolean,default:!1},type:{type:String,default:"linear",validator(e){return["linear","circular"].includes(e)}},color:{type:String,default:null}},data(){return{stroke:4}},computed:{height(){return this.type==="circular"?Number.isInteger(this.size)?this.size:44:this.size==="small"?4:this.size==="medium"?6:this.size},progress(){return this.value/100},radius(){return this.height/2},radiusNormalized(){return this.radius-3*this.stroke},circumference(){return this.radiusNormalized*2*Math.PI}}},As=()=>{O1((e,a)=>({"497e8a2b":e.color}))},ws=dl.setup;dl.setup=ws?(e,a)=>(As(),ws(e,a)):As;const kc={name:"AccountGroupIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ac=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon account-group-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},wc=[],Sc=ie(kc,Ac,wc,!1,null,null);const vc=Sc.exports,Rc={name:"OpenInNewIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Cc=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon open-in-new-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Oc=[],Bc=ie(Rc,Cc,Oc,!1,null,null);const Nc=Bc.exports;oe(B1);const xc={name:"NcTeamResources",components:{AccountGroup:vc,ChevronDown:Rr,ChevronUp:Qu,OpenInNew:Nc,NcButton:Ja,NcIconSvgWrapper:Hn},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null}},data(){return{appEnabled:OC?.appswebroots?.circles!==void 0&&(OC.config.version.split(".")[0]??0)>=29,loading:!1,teamResources:null,teamOpen:[]}},computed:{isVisible(){return!this.loading&&this.teamResources?.length>0},teamProviders(){return e=>this.teamResources.find(a=>a.teamId===e).resources?.reduce((a,i)=>(i.provider.id===this.providerId&&i.id===String(this.itemId)||(a[i.provider.id]||(a[i.provider.id]=i.provider,a[i.provider.id].resources=[]),i.provider.id===this.providerId&&i.id===String(this.itemId))||a[i.provider.id].resources.push(i),a),{})},open(){return e=>this.teamOpen.indexOf(e)!==-1}},watch:{providerId(){this.fetchTeamResources()},itemId(){this.fetchTeamResources()}},created(){this.fetchTeamResources()},methods:{t:x,async fetchTeamResources(){try{this.loading=!0;const e=await pa.get(Va(`/teams/resources/${this.providerId}/${this.itemId}`));this.teamResources=e.data.ocs.data.teams,this.teamOpen=[this.teamResources[0]?.teamId]}catch(e){this.teamResources=null,console.error(e)}finally{this.loading=!1}},toggleOpen(e,a){a?this.teamOpen.push(e):this.teamOpen.splice(this.teamOpen.indexOf(e),1)}}};var Mc=function(){var e=this,a=e._self._c;return e.appEnabled&&e.isVisible?a("div",{staticClass:"team-resources"},[a("h5",{staticClass:"team-resources__header"},[e._v(" "+e._s(e.t("Related team resources"))+" ")]),e._l(e.teamResources,function(i){return a("details",{key:i.teamId,staticClass:"related-team",attrs:{name:"Team resources",open:e.open(i.teamId)},on:{toggle:n=>e.toggleOpen(i.teamId,n.target.open)}},[a("summary",{staticClass:"related-team__header"},[a("h5",{staticClass:"related-team__name"},[a("AccountGroup",{attrs:{size:20}}),e._v(" "+e._s(i.displayName)+" ")],1),a("NcButton",{attrs:{type:"tertiary",href:i.link,"aria-label":e.t("View team"),title:e.t("View team")},scopedSlots:e._u([{key:"icon",fn:function(){return[a("OpenInNew",{attrs:{size:20}})]},proxy:!0}],null,!0)}),e.open(i.teamId)?a("ChevronUp",{attrs:{size:20}}):a("ChevronDown",{attrs:{size:20}})],1),a("div",e._l(e.teamProviders(i.teamId),function(n){return a("div",{key:n.id,staticClass:"related-team-provider"},[n.resources.length>0?a("h6",[e._v(" "+e._s(n.name)+" ")]):e._e(),a("ul",e._l(n.resources,function(o){return a("li",{key:o.url,staticClass:"related-team-resource"},[a("a",{staticClass:"related-team-resource__link",attrs:{href:o.url}},[o.iconEmoji?a("span",{staticClass:"resource__icon"},[e._v(" "+e._s(o.iconEmoji)+" ")]):o.iconSvg?a("NcIconSvgWrapper",{staticClass:"resource__icon",attrs:{svg:o.iconSvg,size:20}}):o.iconURL?a("span",{staticClass:"resource__icon"},[a("img",{attrs:{src:o.iconURL,alt:""}})]):e._e(),a("span",{staticClass:"resource__name"},[e._v(" "+e._s(o.label)+" ")])],1)])}),0)])}),0)])})],2):e._e()},jc=[],Yc=ie(xc,Mc,jc,!1,null,"de46bdbe");const _3=Yc.exports;oe(N1);const qc={name:"NcResource",components:{NcButton:Ja},props:{icon:{type:String,required:!0},name:{type:String,required:!0},url:{type:String,required:!0}},data(){return{labelTranslated:x('Open link to "{resourceName}"',{resourceName:this.name})}},computed:{route(){return fo(this.$router,this.url)}},methods:{t:x}};var Lc=function(){var e=this,a=e._self._c;return a("li",{staticClass:"resource"},[a("NcButton",{staticClass:"resource__button",attrs:{"aria-label":e.labelTranslated,type:"tertiary",to:e.route,href:e.route?null:e.url},scopedSlots:e._u([{key:"icon",fn:function(){return[a("div",{staticClass:"resource__icon"},[a("img",{attrs:{src:e.icon}})])]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1)},Zc=[],Ic=ie(qc,Lc,Zc,!1,null,"ac1115a7");const d3=Ic.exports;oe(x1),x("Related resources"),x("Anything shared with the same group of people will show up here"),x;const Hc={name:"NcMentionBubble",props:{id:{type:String,required:!0},title:{type:String,required:!1,default:null},label:{type:String,required:!1,default:null},icon:{type:String,required:!0},iconUrl:{type:[String,null],default:null},source:{type:String,required:!0},primary:{type:Boolean,default:!1}},computed:{avatarUrl(){return this.iconUrl?this.iconUrl:this.id&&this.source==="users"?this.getAvatarUrl(this.id,44):null},mentionText(){return!this.id.includes(" ")&&!this.id.includes("/")?`@${this.id}`:`@"${this.id}"`},labelWithFallback(){return this.label||this.title}},methods:{getAvatarUrl:to}};var Pc=function(){var e=this,a=e._self._c;return a("span",{staticClass:"mention-bubble",class:{"mention-bubble--primary":e.primary},attrs:{contenteditable:"false"}},[a("span",{staticClass:"mention-bubble__wrapper"},[a("span",{staticClass:"mention-bubble__content"},[a("span",{staticClass:"mention-bubble__icon",class:[e.icon,`mention-bubble__icon--${e.avatarUrl?"with-avatar":""}`],style:e.avatarUrl?{backgroundImage:`url(${e.avatarUrl})`}:null}),a("span",{staticClass:"mention-bubble__title",attrs:{role:"heading",title:e.labelWithFallback}})]),a("span",{staticClass:"mention-bubble__select",attrs:{role:"none"}},[e._v(e._s(e.mentionText))])])])},Gc=[],Uc=ie(Hc,Pc,Gc,!1,null,"a519576f");const f3=Uc.exports,fl=/(?=[a-z0-9_\-@.'])\B/.source,zc=/(@[a-z0-9_\-@.']+)/.source,Vc=/@"(?:guest|email){1}\/[a-f0-9]+"/.source,$c=/@"(?:federated_)?(?:group|team|user){1}\/[a-z0-9_\-@.' /:]+"/.source,Wc=/@"[a-z0-9_\-@.' ]+"/.source,Qc=`(${Vc}|${$c}|${Wc})`,g3=new RegExp(`${fl}${zc}`,"gi"),h3=new RegExp(`${fl}${Qc}`,"gi");window._vue_richtext_widgets||(window._vue_richtext_widgets={});const Ss=e=>!!window._vue_richtext_widgets[e],Kc=e=>!!window._vue_richtext_widgets[e]?.hasInteractiveView,Jc=e=>!!window._vue_richtext_widgets[e]?.fullWidth,Xc=(e,a,i=o=>{},n)=>{const o={hasInteractiveView:!0,fullWidth:!1,...n};if(window._vue_richtext_widgets[e]){console.error("Widget for id "+e+" already registered");return}window._vue_richtext_widgets[e]={id:e,callback:a,onDestroy:i,...o}},em=(e,{richObjectType:a,richObject:i,accessible:n,interactive:o})=>{if(a!=="open-graph"){if(!window._vue_richtext_widgets[a]){console.error("Widget for rich object type "+a+" not registered");return}window._vue_richtext_widgets[a].callback(e,{richObjectType:a,richObject:i,accessible:n,interactive:o})}},am=(e,a)=>{e!=="open-graph"&&window._vue_richtext_widgets[e]&&window._vue_richtext_widgets[e].onDestroy(a)};window._registerWidget=(e,a,i,n)=>{Xc(e,a,i,n)},window._vue_richtext_custom_picker_elements||(window._vue_richtext_custom_picker_elements={});const li=e=>!!window._vue_richtext_custom_picker_elements[e],tm=e=>{const a=window._vue_richtext_custom_picker_elements[e]?.size;return["small","normal","large","full"].includes(a)?a:null},im=(e,a,i=o=>{},n="large")=>{if(window._vue_richtext_custom_picker_elements[e]){console.error("Custom reference picker element for id "+e+" already registered");return}window._vue_richtext_custom_picker_elements[e]={id:e,callback:a,onDestroy:i,size:n}},nm=(e,{providerId:a,accessible:i})=>{if(!window._vue_richtext_custom_picker_elements[a]){console.error("Custom reference picker element for reference provider ID "+a+" not registered");return}return window._vue_richtext_custom_picker_elements[a].callback(e,{providerId:a,accessible:i})},om=(e,a,i)=>{window._vue_richtext_custom_picker_elements[e]&&window._vue_richtext_custom_picker_elements[e].onDestroy(a,i)};window._registerCustomPickerElement=im;function ra(e,a){for(var i in a)e[i]=a[i];return e}var sm=/[!'()*]/g,rm=function(e){return"%"+e.charCodeAt(0).toString(16)},lm=/%2C/g,Dt=function(e){return encodeURIComponent(e).replace(sm,rm).replace(lm,",")};function Nn(e){try{return decodeURIComponent(e)}catch{}return e}function _m(e,a,i){a===void 0&&(a={});var n=i||dm,o;try{o=n(e||"")}catch{o={}}for(var s in a){var l=a[s];o[s]=Array.isArray(l)?l.map(vs):vs(l)}return o}var vs=function(e){return e==null||typeof e=="object"?e:String(e)};function dm(e){var a={};return e=e.trim().replace(/^(\?|#|&)/,""),e&&e.split("&").forEach(function(i){var n=i.replace(/\+/g," ").split("="),o=Nn(n.shift()),s=n.length>0?Nn(n.join("=")):null;a[o]===void 0?a[o]=s:Array.isArray(a[o])?a[o].push(s):a[o]=[a[o],s]}),a}function fm(e){var a=e?Object.keys(e).map(function(i){var n=e[i];if(n===void 0)return"";if(n===null)return Dt(i);if(Array.isArray(n)){var o=[];return n.forEach(function(s){s!==void 0&&(s===null?o.push(Dt(i)):o.push(Dt(i)+"="+Dt(s)))}),o.join("&")}return Dt(i)+"="+Dt(n)}).filter(function(i){return i.length>0}).join("&"):null;return a?"?"+a:""}var k0=/\/?$/;function A0(e,a,i,n){var o=n&&n.options.stringifyQuery,s=a.query||{};try{s=xn(s)}catch{}var l={name:a.name||e&&e.name,meta:e&&e.meta||{},path:a.path||"/",hash:a.hash||"",query:s,params:a.params||{},fullPath:Rs(a,o),matched:e?gm(e):[]};return i&&(l.redirectedFrom=Rs(i,o)),Object.freeze(l)}function xn(e){if(Array.isArray(e))return e.map(xn);if(e&&typeof e=="object"){var a={};for(var i in e)a[i]=xn(e[i]);return a}else return e}var Ka=A0(null,{path:"/"});function gm(e){for(var a=[];e;)a.unshift(e),e=e.parent;return a}function Rs(e,a){var i=e.path,n=e.query;n===void 0&&(n={});var o=e.hash;o===void 0&&(o="");var s=a||fm;return(i||"/")+s(n)+o}function gl(e,a,i){return a===Ka?e===a:a?e.path&&a.path?e.path.replace(k0,"")===a.path.replace(k0,"")&&(i||e.hash===a.hash&&Yi(e.query,a.query)):e.name&&a.name?e.name===a.name&&(i||e.hash===a.hash&&Yi(e.query,a.query)&&Yi(e.params,a.params)):!1:!1}function Yi(e,a){if(e===void 0&&(e={}),a===void 0&&(a={}),!e||!a)return e===a;var i=Object.keys(e).sort(),n=Object.keys(a).sort();return i.length!==n.length?!1:i.every(function(o,s){var l=e[o],_=n[s];if(_!==o)return!1;var r=a[o];return l==null||r==null?l===r:typeof l=="object"&&typeof r=="object"?Yi(l,r):String(l)===String(r)})}function hm(e,a){return e.path.replace(k0,"/").indexOf(a.path.replace(k0,"/"))===0&&(!a.hash||e.hash===a.hash)&&Fm(e.query,a.query)}function Fm(e,a){for(var i in a)if(!(i in e))return!1;return!0}function hl(e){for(var a=0;a=0&&(a=e.slice(n),e=e.slice(0,n));var o=e.indexOf("?");return o>=0&&(i=e.slice(o+1),e=e.slice(0,o)),{path:e,query:i,hash:a}}function Ga(e){return e.replace(/\/(?:\s*\/)+/g,"/")}var w0=Array.isArray||function(e){return Object.prototype.toString.call(e)=="[object Array]"},At=ml,pm=mo,bm=Em,Dm=ul,Tm=cl,ym=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function mo(e,a){for(var i=[],n=0,o=0,s="",l=a&&a.delimiter||"/",_;(_=ym.exec(e))!=null;){var r=_[0],f=_[1],d=_.index;if(s+=e.slice(o,d),o=d+r.length,f){s+=f[1];continue}var g=e[o],h=_[2],F=_[3],m=_[4],p=_[5],T=_[6],k=_[7];s&&(i.push(s),s="");var w=h!=null&&g!=null&&g!==h,v=T==="+"||T==="*",M=T==="?"||T==="*",L=_[2]||l,O=m||p;i.push({name:F||n++,prefix:h||"",delimiter:L,optional:M,repeat:v,partial:w,asterisk:!!k,pattern:O?wm(O):k?".*":"[^"+qi(L)+"]+?"})}return o1||!M.length)return M.length===0?e():e("span",{},M)}if(this.tag==="a")v.on=w,v.attrs={href:_,"aria-current":T};else{var L=bl(this.$slots.default);if(L){L.isStatic=!1;var O=L.data=ra({},L.data);O.on=O.on||{};for(var P in O.on){var z=O.on[P];P in w&&(O.on[P]=Array.isArray(z)?z:[z])}for(var Z in w)Z in O.on?O.on[Z].push(w[Z]):O.on[Z]=k;var c=L.data.attrs=ra({},L.data.attrs);c.href=_,c["aria-current"]=T}else v.on=w}return e(this.tag,v,this.$slots.default)}};function Ns(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){var a=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(a))return}return e.preventDefault&&e.preventDefault(),!0}}function bl(e){if(e){for(var a,i=0;i-1&&(T.params[M]=m.params[M]);return T.path=Li(w.path,T.params),h(w,T,p)}else if(T.path){T.params={};for(var L=0;L-1}function C0(e,a){return R0(e)&&e._isRouter&&(a==null||e.type===a)}function Ls(e,a,i){var n=function(o){o>=e.length?i():e[o]?a(e[o],function(){n(o+1)}):n(o+1)};n(0)}function Vm(e){return function(a,i,n){var o=!1,s=0,l=null;wl(e,function(_,r,f,d){if(typeof _=="function"&&_.cid===void 0){o=!0,s++;var g=Zs(function(p){Wm(p)&&(p=p.default),_.resolved=typeof p=="function"?p:S0.extend(p),f.components[d]=p,s--,s<=0&&n()}),h=Zs(function(p){var T="Failed to resolve async component "+d+": "+p;l||(l=R0(p)?p:new Error(T),n(l))}),F;try{F=_(g,h)}catch(p){h(p)}if(F)if(typeof F.then=="function")F.then(g,h);else{var m=F.component;m&&typeof m.then=="function"&&m.then(g,h)}}}),o||n()}}function wl(e,a){return Sl(e.map(function(i){return Object.keys(i.components).map(function(n){return a(i.components[n],i.instances[n],i,n)})}))}function Sl(e){return Array.prototype.concat.apply([],e)}var $m=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function Wm(e){return e.__esModule||$m&&e[Symbol.toStringTag]==="Module"}function Zs(e){var a=!1;return function(){for(var i=[],n=arguments.length;n--;)i[n]=arguments[n];if(!a)return a=!0,e.apply(this,i)}}var sa=function(e,a){this.router=e,this.base=Qm(a),this.current=Ka,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};sa.prototype.listen=function(e){this.cb=e},sa.prototype.onReady=function(e,a){this.ready?e():(this.readyCbs.push(e),a&&this.readyErrorCbs.push(a))},sa.prototype.onError=function(e){this.errorCbs.push(e)},sa.prototype.transitionTo=function(e,a,i){var n=this,o;try{o=this.router.match(e,this.current)}catch(l){throw this.errorCbs.forEach(function(_){_(l)}),l}var s=this.current;this.confirmTransition(o,function(){n.updateRoute(o),a&&a(o),n.ensureURL(),n.router.afterHooks.forEach(function(l){l&&l(o,s)}),n.ready||(n.ready=!0,n.readyCbs.forEach(function(l){l(o)}))},function(l){i&&i(l),l&&!n.ready&&(!C0(l,ct.redirected)||s!==Ka)&&(n.ready=!0,n.readyErrorCbs.forEach(function(_){_(l)}))})},sa.prototype.confirmTransition=function(e,a,i){var n=this,o=this.current;this.pending=e;var s=function(m){!C0(m)&&R0(m)&&(n.errorCbs.length?n.errorCbs.forEach(function(p){p(m)}):console.error(m)),i&&i(m)},l=e.matched.length-1,_=o.matched.length-1;if(gl(e,o)&&l===_&&e.matched[l]===o.matched[_])return this.ensureURL(),e.hash&&Ua(this.router,o,e,!1),s(Pm(o,e));var r=Km(this.current.matched,e.matched),f=r.updated,d=r.deactivated,g=r.activated,h=[].concat(Xm(d),this.router.beforeHooks,ep(f),g.map(function(m){return m.beforeEnter}),Vm(g)),F=function(m,p){if(n.pending!==e)return s(qs(o,e));try{m(e,o,function(T){T===!1?(n.ensureURL(!0),s(Gm(o,e))):R0(T)?(n.ensureURL(!0),s(T)):typeof T=="string"||typeof T=="object"&&(typeof T.path=="string"||typeof T.name=="string")?(s(Hm(o,e)),typeof T=="object"&&T.replace?n.replace(T):n.push(T)):p(T)})}catch(T){s(T)}};Ls(h,F,function(){var m=ap(g),p=m.concat(n.router.resolveHooks);Ls(p,F,function(){if(n.pending!==e)return s(qs(o,e));n.pending=null,a(e),n.router.app&&n.router.app.$nextTick(function(){hl(e)})})})},sa.prototype.updateRoute=function(e){this.current=e,this.cb&&this.cb(e)},sa.prototype.setupListeners=function(){},sa.prototype.teardown=function(){this.listeners.forEach(function(e){e()}),this.listeners=[],this.current=Ka,this.pending=null};function Qm(e){if(!e)if(fi){var a=document.querySelector("base");e=a&&a.getAttribute("href")||"/",e=e.replace(/^https?:\/\/[^\/]+/,"")}else e="/";return e.charAt(0)!=="/"&&(e="/"+e),e.replace(/\/$/,"")}function Km(e,a){var i,n=Math.max(e.length,a.length);for(i=0;i0)){var n=this.router,o=n.options.scrollBehavior,s=za&&o;s&&this.listeners.push(kl());var l=function(){var _=i.current,r=Ht(i.base);i.current===Ka&&r===i._startLocation||i.transitionTo(r,function(f){s&&Ua(n,f,_,!0)})};window.addEventListener("popstate",l),this.listeners.push(function(){window.removeEventListener("popstate",l)})}},a.prototype.go=function(i){window.history.go(i)},a.prototype.push=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){v0(Ga(s.base+r.fullPath)),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.replace=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Yn(Ga(s.base+r.fullPath)),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.ensureURL=function(i){if(Ht(this.base)!==this.current.fullPath){var n=Ga(this.base+this.current.fullPath);i?v0(n):Yn(n)}},a.prototype.getCurrentLocation=function(){return Ht(this.base)},a}(sa);function Ht(e){var a=window.location.pathname,i=a.toLowerCase(),n=e.toLowerCase();return e&&(i===n||i.indexOf(Ga(n+"/"))===0)&&(a=a.slice(e.length)),(a||"/")+window.location.search+window.location.hash}var Cl=function(e){function a(i,n,o){e.call(this,i,n),!(o&&ip(this.base))&&Is()}return e&&(a.__proto__=e),a.prototype=Object.create(e&&e.prototype),a.prototype.constructor=a,a.prototype.setupListeners=function(){var i=this;if(!(this.listeners.length>0)){var n=this.router,o=n.options.scrollBehavior,s=za&&o;s&&this.listeners.push(kl());var l=function(){var r=i.current;Is()&&i.transitionTo(Zi(),function(f){s&&Ua(i.router,f,r,!0),za||Ii(f.fullPath)})},_=za?"popstate":"hashchange";window.addEventListener(_,l),this.listeners.push(function(){window.removeEventListener(_,l)})}},a.prototype.push=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Hs(r.fullPath),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.replace=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Ii(r.fullPath),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.go=function(i){window.history.go(i)},a.prototype.ensureURL=function(i){var n=this.current.fullPath;Zi()!==n&&(i?Hs(n):Ii(n))},a.prototype.getCurrentLocation=function(){return Zi()},a}(sa);function ip(e){var a=Ht(e);if(!/^\/#/.test(a))return window.location.replace(Ga(e+"/#"+a)),!0}function Is(){var e=Zi();return e.charAt(0)==="/"?!0:(Ii("/"+e),!1)}function Zi(){var e=window.location.href,a=e.indexOf("#");return a<0?"":(e=e.slice(a+1),e)}function qn(e){var a=window.location.href,i=a.indexOf("#"),n=i>=0?a.slice(0,i):a;return n+"#"+e}function Hs(e){za?v0(qn(e)):window.location.hash=e}function Ii(e){za?Yn(qn(e)):window.location.replace(qn(e))}var np=function(e){function a(i,n){e.call(this,i,n),this.stack=[],this.index=-1}return e&&(a.__proto__=e),a.prototype=Object.create(e&&e.prototype),a.prototype.constructor=a,a.prototype.push=function(i,n,o){var s=this;this.transitionTo(i,function(l){s.stack=s.stack.slice(0,s.index+1).concat(l),s.index++,n&&n(l)},o)},a.prototype.replace=function(i,n,o){var s=this;this.transitionTo(i,function(l){s.stack=s.stack.slice(0,s.index).concat(l),n&&n(l)},o)},a.prototype.go=function(i){var n=this,o=this.index+i;if(!(o<0||o>=this.stack.length)){var s=this.stack[o];this.confirmTransition(s,function(){var l=n.current;n.index=o,n.updateRoute(s),n.router.afterHooks.forEach(function(_){_&&_(s,l)})},function(l){C0(l,ct.duplicated)&&(n.index=o)})}},a.prototype.getCurrentLocation=function(){var i=this.stack[this.stack.length-1];return i?i.fullPath:"/"},a.prototype.ensureURL=function(){},a}(sa),Ee=function(e){e===void 0&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=xm(e.routes||[],this);var a=e.mode||"hash";switch(this.fallback=a==="history"&&!za&&e.fallback!==!1,this.fallback&&(a="hash"),fi||(a="abstract"),this.mode=a,a){case"history":this.history=new Rl(this,e.base);break;case"hash":this.history=new Cl(this,e.base,this.fallback);break;case"abstract":this.history=new np(this,e.base);break}},Ps={currentRoute:{configurable:!0}};Ee.prototype.match=function(e,a,i){return this.matcher.match(e,a,i)},Ps.currentRoute.get=function(){return this.history&&this.history.current},Ee.prototype.init=function(e){var a=this;if(this.apps.push(e),e.$once("hook:destroyed",function(){var s=a.apps.indexOf(e);s>-1&&a.apps.splice(s,1),a.app===e&&(a.app=a.apps[0]||null),a.app||a.history.teardown()}),!this.app){this.app=e;var i=this.history;if(i instanceof Rl||i instanceof Cl){var n=function(s){var l=i.current,_=a.options.scrollBehavior,r=za&&_;r&&"fullPath"in s&&Ua(a,s,l,!1)},o=function(s){i.setupListeners(),n(s)};i.transitionTo(i.getCurrentLocation(),o,o)}i.listen(function(s){a.apps.forEach(function(l){l._route=s})})}},Ee.prototype.beforeEach=function(e){return hn(this.beforeHooks,e)},Ee.prototype.beforeResolve=function(e){return hn(this.resolveHooks,e)},Ee.prototype.afterEach=function(e){return hn(this.afterHooks,e)},Ee.prototype.onReady=function(e,a){this.history.onReady(e,a)},Ee.prototype.onError=function(e){this.history.onError(e)},Ee.prototype.push=function(e,a,i){var n=this;if(!a&&!i&&typeof Promise<"u")return new Promise(function(o,s){n.history.push(e,o,s)});this.history.push(e,a,i)},Ee.prototype.replace=function(e,a,i){var n=this;if(!a&&!i&&typeof Promise<"u")return new Promise(function(o,s){n.history.replace(e,o,s)});this.history.replace(e,a,i)},Ee.prototype.go=function(e){this.history.go(e)},Ee.prototype.back=function(){this.go(-1)},Ee.prototype.forward=function(){this.go(1)},Ee.prototype.getMatchedComponents=function(e){var a=e?e.matched?e:this.resolve(e).route:this.currentRoute;return a?[].concat.apply([],a.matched.map(function(i){return Object.keys(i.components).map(function(n){return i.components[n]})})):[]},Ee.prototype.resolve=function(e,a,i){a=a||this.history.current;var n=Do(e,a,i,this),o=this.match(n,a),s=o.redirectedFrom||o.fullPath,l=this.history.base,_=op(l,s,this.mode);return{location:n,route:o,href:_,normalizedTo:n,resolved:o}},Ee.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ee.prototype.addRoute=function(e,a){this.matcher.addRoute(e,a),this.history.current!==Ka&&this.history.transitionTo(this.history.getCurrentLocation())},Ee.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==Ka&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ee.prototype,Ps);function hn(e,a){return e.push(a),function(){var i=e.indexOf(a);i>-1&&e.splice(i,1)}}function op(e,a,i){var n=i==="hash"?"#"+a:a;return e?Ga(e+"/"+n):n}Ee.install=Mn,Ee.version="3.6.5",Ee.isNavigationFailure=C0,Ee.NavigationFailureType=ct,Ee.START_LOCATION=Ka,fi&&window.Vue&&window.Vue.use(Ee),oe(M1);const sp=3*60*1e3,rp={name:"NcReferenceWidget",components:{NcButton:Ja},props:{reference:{type:Object,required:!0},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},setup(){const e=Ia(!1),a=Ia(),{width:i}=Qs(a);return H1(a,([n])=>{b1(()=>{e.value=n.isIntersecting})}),{width:i,isVisible:e,widgetRoot:a}},data(){return{showInteractive:!1,rendered:!1,idleTimeout:null}},computed:{isInteractive(){return!this.interactiveOptIn&&this.interactive||this.showInteractive},hasFullWidth(){return Jc(this.reference.richObjectType)},hasCustomWidget(){return Ss(this.reference.richObjectType)},hasInteractiveView(){return Ss(this.reference.richObjectType)&&Kc(this.reference.richObjectType)},noAccess(){return this.reference&&!this.reference.accessible},descriptionStyle(){if(this.numberOfLines===0)return{display:"none"};const e=this.numberOfLines;return{lineClamp:e,webkitLineClamp:e}},numberOfLines(){return[450,550,650,1/0].findIndex(e=>this.width{this.isVisible||this.destroyWidget()},sp);return}this.idleTimeout&&(clearTimeout(this.idleTimeout),this.idleTimeout=null),this.rendered||this.renderWidget()},immediate:!0}},beforeDestroy(){this.destroyWidget()},methods:{t:x,enableInteractive(){this.showInteractive=!0,this.renderWidget()},renderWidget(){if(!this.$refs.customWidget||this?.reference?.richObjectType==="open-graph")return;this.$refs.customWidget.innerHTML="";const e=document.createElement("div");e.style="width: 100%;",this.$refs.customWidget.appendChild(e),this.$nextTick(()=>{em(e,{...this.reference,interactive:this.isInteractive}),this.rendered=!0})},destroyWidget(){this.rendered&&(am(this.reference.richObjectType,this.$el),this.rendered=!1)}}};var lp=function(){var e=this,a=e._self._c;return a("div",{ref:"widgetRoot",class:{"toggle-interactive":e.hasInteractiveView&&!e.isInteractive}},[e.reference&&e.hasCustomWidget?a("div",{ref:"customWidget",staticClass:"widget-custom",class:{"full-width":e.hasFullWidth}}):!e.noAccess&&e.reference&&e.reference.openGraphObject&&!e.hasCustomWidget?a(e.referenceWidgetLinkComponent,e._b({tag:"component",staticClass:"widget-default",attrs:{rel:"noopener noreferrer"}},"component",e.referenceWidgetLinkProps,!1),[e.reference.openGraphObject.thumb?a("img",{staticClass:"widget-default--image",attrs:{src:e.reference.openGraphObject.thumb}}):e._e(),a("div",{staticClass:"widget-default--details"},[a("p",{staticClass:"widget-default--name"},[e._v(" "+e._s(e.reference.openGraphObject.name)+" ")]),a("p",{staticClass:"widget-default--description",style:e.descriptionStyle},[e._v(" "+e._s(e.reference.openGraphObject.description)+" ")]),a("p",{staticClass:"widget-default--link"},[e._v(" "+e._s(e.compactLink)+" ")])])]):e._e(),e.interactiveOptIn&&e.hasInteractiveView&&!e.isInteractive?a("NcButton",{staticClass:"toggle-interactive--button",on:{click:e.enableInteractive}},[e._v(" "+e._s(e.t("Enable interactive view"))+" ")]):e._e()],1)},_p=[],dp=ie(rp,lp,_p,!1,null,"ea9434d3");const fp=dp.exports,gp={name:"NcCustomPickerElement",props:{provider:{type:Object,required:!0}},emits:["cancel","submit"],data(){return{isRegistered:li(this.provider.id),renderResult:null}},mounted(){this.isRegistered&&this.renderElement()},beforeDestroy(){this.isRegistered&&om(this.provider.id,this.$el,this.renderResult)},methods:{renderElement(){this.$refs.domElement&&(this.$refs.domElement.innerHTML="");const e=nm(this.$refs.domElement,{providerId:this.provider.id,accessible:!1});Promise.resolve(e).then(a=>{this.renderResult=a,this.renderResult.object?._isVue&&this.renderResult.object?.$on&&(this.renderResult.object.$on("submit",this.onSubmit),this.renderResult.object.$on("cancel",this.onCancel)),this.renderResult.element.addEventListener("submit",i=>{this.onSubmit(i.detail)}),this.renderResult.element.addEventListener("cancel",this.onCancel)})},onSubmit(e){this.$emit("submit",e)},onCancel(){this.$emit("cancel")}}};var hp=function(){var e=this,a=e._self._c;return a("div",{ref:"domElement"})},Fp=[],up=ie(gp,hp,Fp,!1,null,"de9850e4");const cp=up.exports;oe(j1);const mp="any-link",pp={id:mp,title:x("Any link"),icon_url:rr("core","filetypes/link.svg")};window._vue_richtext_reference_providers||(window._vue_richtext_reference_providers=Xt("core","reference-provider-list",[])),window._vue_richtext_reference_provider_timestamps||(window._vue_richtext_reference_provider_timestamps=Xt("core","reference-provider-timestamps",{}));function bp(){return window._vue_richtext_reference_providers.filter(e=>{const a=!!e.search_providers_ids&&e.search_providers_ids.length>0||li(e.id);return a||console.debug("[smart picker]",e.id,"reference provider is discoverable but does not have any related search provider or custom picker component registered"),a})}function Dp(e){const a=window._vue_richtext_reference_provider_timestamps;return e.sort((i,n)=>i.order===n.order?0:i.order>n.order?1:-1).sort((i,n)=>{const o=a[i.id],s=a[n.id];return o===s?0:s===void 0?-1:o===void 0?1:o>s?-1:1})}function Tp(e,a=null){const i=bp(),n=e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&"),o=new RegExp(n,"i"),s=Dp(i).filter(_=>_.title.match(o)),l=a?s.slice(0,a):s;return(e===""||l.length===0)&&l.push(pp),l}function yp(e){const a=Math.floor(Date.now()/1e3),i={timestamp:a},n=Va("references/provider/{providerId}",{providerId:e});pa.put(n,i).then(o=>{window._vue_richtext_reference_provider_timestamps[e]=a})}let Gs=0;function Ol(e,a){return function(){const i=this,n=arguments;clearTimeout(Gs),Gs=setTimeout(function(){e.apply(i,n)},a)}}function yo(e){try{return!!new URL(e)}catch{return!1}}oe(lr,Y1);const Ep={name:"LinkVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var kp=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon link-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Ap=[],wp=ie(Ep,kp,Ap,!1,null,null);const Eo=wp.exports,Sp={name:"NcProviderList",components:{NcSelect:L0,NcHighlight:Y0,NcEmptyContent:co,LinkVariantIcon:Eo},emits:["select-provider","submit"],data(){return{selectedProvider:null,query:"",multiselectPlaceholder:x("Select provider"),providerIconAlt:x("Provider icon")}},computed:{options(){const e=[];return this.query!==""&&yo(this.query)&&e.push({id:this.query,title:this.query,isLink:!0}),e.push(...Tp(this.query)),e}},methods:{focus(){setTimeout(()=>{this.$refs["provider-select"]?.$el?.querySelector("#provider-select-input")?.focus()},300)},onProviderSelected(e){e!==null&&(e.isLink?this.$emit("submit",e.title):this.$emit("select-provider",e),this.selectedProvider=null)},onSearch(e,a){this.query=e}}};var vp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"provider-list"},[a("NcSelect",{ref:"provider-select",staticClass:"provider-list--select",attrs:{"input-id":"provider-select-input",label:"title",placeholder:e.multiselectPlaceholder,options:e.options,"append-to-body":!1,"clear-search-on-select":!0,"clear-search-on-blur":()=>!1,filterable:!1},on:{search:e.onSearch,input:e.onProviderSelected},scopedSlots:e._u([{key:"option",fn:function(i){return[i.isLink?a("div",{staticClass:"provider"},[a("LinkVariantIcon",{staticClass:"link-icon",attrs:{size:20}}),a("span",[e._v(e._s(i.title))])],1):a("div",{staticClass:"provider"},[a("img",{staticClass:"provider-icon",attrs:{src:i.icon_url,alt:e.providerIconAlt}}),a("NcHighlight",{staticClass:"option-text",attrs:{search:e.query,text:i.title}})],1)]}}]),model:{value:e.selectedProvider,callback:function(i){e.selectedProvider=i},expression:"selectedProvider"}}),a("NcEmptyContent",{staticClass:"provider-list--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[a("LinkVariantIcon")]},proxy:!0}])})],1)},Rp=[],Cp=ie(Sp,vp,Rp,!1,null,"e54e09d6");const Op=Cp.exports;oe(q1);const Bp={name:"NcRawLinkInput",components:{LinkVariantIcon:Eo,NcEmptyContent:co,NcLoadingIcon:O0,NcReferenceWidget:fp,NcTextField:Yu},props:{provider:{type:Object,required:!0}},emits:["submit"],data(){return{inputValue:"",loading:!1,reference:null,abortController:null,inputPlaceholder:x("Enter link")}},computed:{isLinkValid(){return yo(this.inputValue)}},methods:{focus(){this.$refs["url-input"].$el.getElementsByTagName("input")[0]?.focus()},onSubmit(e){const a=e.target.value;this.isLinkValid&&this.$emit("submit",a)},onClear(){this.inputValue="",this.reference=null},onInput(){this.reference=null,this.abortController&&this.abortController.abort(),this.isLinkValid&&Ol(()=>{this.updateReference()},500)()},updateReference(){this.loading=!0,this.abortController=new AbortController,pa.get(Va("references/resolve",2)+"?reference="+encodeURIComponent(this.inputValue),{signal:this.abortController.signal}).then(e=>{this.reference=e.data.ocs.data.references[this.inputValue]}).catch(e=>{console.error(e)}).then(()=>{this.loading=!1})}}};var Np=function(){var e=this,a=e._self._c;return a("div",{staticClass:"raw-link"},[a("div",{staticClass:"input-wrapper"},[a("NcTextField",{ref:"url-input",attrs:{value:e.inputValue,"show-trailing-button":e.inputValue!=="",label:e.inputPlaceholder},on:{"update:value":[function(i){e.inputValue=i},e.onInput],"trailing-button-click":e.onClear},nativeOn:{keyup:function(i){return!i.type.indexOf("key")&&e._k(i.keyCode,"enter",13,i.key,"Enter")?null:e.onSubmit.apply(null,arguments)}}},[e.loading?a("NcLoadingIcon",{attrs:{size:16}}):a("LinkVariantIcon",{attrs:{size:16}})],1)],1),e.reference!==null?a("NcReferenceWidget",{staticClass:"reference-widget",attrs:{reference:e.reference}}):a("NcEmptyContent",{staticClass:"raw-link--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?a("img",{staticClass:"provider-icon",attrs:{src:e.provider.icon_url}}):a("LinkVariantIcon")]},proxy:!0}])})],1)},xp=[],Mp=ie(Bp,Np,xp,!1,null,"3c1803b5");const jp=Mp.exports,Yp={name:"NcSearchResult",components:{NcHighlight:Y0},props:{entry:{type:Object,required:!0},query:{type:String,required:!0}}};var qp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"result"},[e.entry.icon?a("div",{staticClass:"result--icon-class",class:{[e.entry.icon]:!0,rounded:e.entry.rounded}}):a("img",{staticClass:"result--image",class:{rounded:e.entry.rounded},attrs:{src:e.entry.thumbnailUrl}}),a("div",{staticClass:"result--content"},[a("span",{staticClass:"result--content--name"},[a("NcHighlight",{attrs:{search:e.query,text:e.entry.title}})],1),a("span",{staticClass:"result--content--subline"},[a("NcHighlight",{attrs:{search:e.query,text:e.entry.subline}})],1)])])},Lp=[],Zp=ie(Yp,qp,Lp,!1,null,"8571023b");const Ip=Zp.exports;oe(L1,lr,or);const Us=5,Hp={name:"NcSearch",components:{LinkVariantIcon:Eo,DotsHorizontalIcon:In,NcEmptyContent:co,NcSelect:L0,NcSearchResult:Ip},props:{provider:{type:Object,required:!0},showEmptyContent:{type:Boolean,default:!0},searchPlaceholder:{type:String,default:null}},emits:["submit"],data(){return{searchQuery:"",selectedResult:null,resultsBySearchProvider:{},searching:!1,searchingMoreOf:null,abortController:null,noOptionsText:x("Start typing to search"),providerIconAlt:x("Provider icon")}},computed:{mySearchPlaceholder(){return this.searchPlaceholder||x("Search")},searchProviderIds(){return this.provider.search_providers_ids},options(){if(this.searchQuery==="")return[];const e=[];return yo(this.searchQuery)&&e.push(this.rawLinkEntry),e.push(...this.formattedSearchResults),e},rawLinkEntry(){return{id:"rawLinkEntry",resourceUrl:this.searchQuery,isRawLink:!0}},formattedSearchResults(){const e=[];return this.searchProviderIds.forEach(a=>{if(this.resultsBySearchProvider[a].entries.length>0){(this.searchProviderIds.length>1||this.resultsBySearchProvider[a].entries.length>1)&&e.push({id:"groupTitle-"+a,name:this.resultsBySearchProvider[a].name,isCustomGroupTitle:!0,providerId:a});const i=this.resultsBySearchProvider[a].entries.map((n,o)=>({id:"provider-"+a+"-entry-"+o,...n}));e.push(...i),this.resultsBySearchProvider[a].isPaginated&&e.push({id:"moreOf-"+a,name:this.resultsBySearchProvider[a].name,isMore:!0,providerId:a,isLoading:this.searchingMoreOf===a})}}),e}},mounted(){this.resetResults()},beforeDestroy(){this.cancelSearchRequests()},methods:{t:x,resetResults(){const e={};this.searchProviderIds.forEach(a=>{e[a]={entries:[]}}),this.resultsBySearchProvider=e},focus(){setTimeout(()=>{this.$refs["search-select"]?.$el?.querySelector("#search-select-input")?.focus()},300)},cancelSearchRequests(){this.abortController&&this.abortController.abort()},onSearchInput(e,a){this.searchQuery=e,Ol(()=>{this.updateSearch()},500)()},onSelectResultSelected(e){e!==null&&(e.resourceUrl?(this.cancelSearchRequests(),this.$emit("submit",e.resourceUrl)):e.isMore&&this.searchMoreOf(e.providerId).then(()=>{this.selectedResult=null}))},searchMoreOf(e){return this.searchingMoreOf=e,this.cancelSearchRequests(),this.searchProviders(e)},updateSearch(){if(this.cancelSearchRequests(),this.resetResults(),this.searchQuery===""){this.searching=!1;return}return this.searchProviders()},searchProviders(e=null){this.abortController=new AbortController,this.searching=!0;const a=e===null?[...this.searchProviderIds].map(i=>this.searchOneProvider(i)):[this.searchOneProvider(e,this.resultsBySearchProvider[e]?.cursor??null)];return Promise.allSettled(a).then(i=>{i.find(n=>n.status==="rejected"&&(n.reason.name==="CanceledError"||n.reason.code==="ERR_CANCELED"))||(this.searching=!1,this.searchingMoreOf=null)})},searchOneProvider(e,a=null){const i=a===null?Va("search/providers/{providerId}/search?term={term}&limit={limit}",{providerId:e,term:this.searchQuery,limit:Us}):Va("search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}",{providerId:e,term:this.searchQuery,limit:Us,cursor:a});return pa.get(i,{signal:this.abortController.signal}).then(n=>{const o=n.data.ocs.data;this.resultsBySearchProvider[e].name=o.name,this.resultsBySearchProvider[e].cursor=o.cursor,this.resultsBySearchProvider[e].isPaginated=o.isPaginated,this.resultsBySearchProvider[e].entries.push(...o.entries)})}}};var Pp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"smart-picker-search",class:{"with-empty-content":e.showEmptyContent}},[a("NcSelect",{ref:"search-select",staticClass:"smart-picker-search--select",attrs:{"input-id":"search-select-input",label:"name",placeholder:e.mySearchPlaceholder,options:e.options,"append-to-body":!1,"close-on-select":!1,"clear-search-on-select":!1,"clear-search-on-blur":()=>!1,"reset-focus-on-options-change":!1,filterable:!1,autoscroll:!0,"reset-on-options-change":!1,loading:e.searching},on:{search:e.onSearchInput,input:e.onSelectResultSelected},scopedSlots:e._u([{key:"option",fn:function(i){return[i.isRawLink?a("div",{staticClass:"custom-option"},[a("LinkVariantIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),a("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t("Raw link {options}",{options:i.resourceUrl}))+" ")])],1):i.resourceUrl?a("NcSearchResult",{staticClass:"search-result",attrs:{entry:i,query:e.searchQuery}}):i.isCustomGroupTitle?a("span",{staticClass:"custom-option group-name"},[e.provider.icon_url?a("img",{staticClass:"provider-icon group-name-icon",attrs:{src:e.provider.icon_url}}):e._e(),a("span",{staticClass:"option-text"},[a("strong",[e._v(e._s(i.name))])])]):i.isMore?a("span",{class:{"custom-option":!0}},[i.isLoading?a("span",{staticClass:"option-simple-icon icon-loading-small"}):a("DotsHorizontalIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),a("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t('Load more "{options}"',{options:i.name}))+" ")])],1):e._e()]}},{key:"no-options",fn:function(){return[e._v(" "+e._s(e.noOptionsText)+" ")]},proxy:!0}]),model:{value:e.selectedResult,callback:function(i){e.selectedResult=i},expression:"selectedResult"}}),e.showEmptyContent?a("NcEmptyContent",{staticClass:"smart-picker-search--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?a("img",{staticClass:"provider-icon",attrs:{alt:e.providerIconAlt,src:e.provider.icon_url}}):a("LinkVariantIcon")]},proxy:!0}],null,!1,2922132592)}):e._e()],1)},Gp=[],Up=ie(Hp,Pp,Gp,!1,null,"05fef988");const zp=Up.exports,Lt={providerList:1,standardLinkInput:2,searchInput:3,customElement:4},Vp={name:"NcReferencePicker",components:{NcCustomPickerElement:cp,NcProviderList:Op,NcRawLinkInput:jp,NcSearch:zp},props:{initialProvider:{type:Object,default:()=>null},width:{type:Number,default:null},focusOnCreate:{type:Boolean,default:!0}},emits:["cancel","cancel-raw-link","cancel-search","provider-selected","submit"],data(){return{MODES:Lt,selectedProvider:this.initialProvider}},computed:{mode(){return this.selectedProvider===null?Lt.providerList:li(this.selectedProvider.id)?Lt.customElement:this.selectedProvider.search_providers_ids?Lt.searchInput:Lt.standardLinkInput},pickerWrapperStyle(){return{width:this.width?this.width+"px":void 0}}},mounted(){this.focusOnCreate&&(this.initialProvider?setTimeout(()=>{this.$refs["url-input"]?.focus()},300):this.$nextTick(()=>{this.$refs["provider-list"]?.focus()}))},methods:{onEscapePressed(){this.selectedProvider!==null?this.deselectProvider():this.cancelProviderSelection()},onProviderSelected(e){this.selectedProvider=e,this.$emit("provider-selected",e),this.$nextTick(()=>{this.$refs["url-input"]?.focus()})},cancelCustomElement(){this.deselectProvider()},cancelSearch(){this.$emit("cancel-search",this.selectedProvider?.title),this.deselectProvider()},cancelRawLinkInput(){this.$emit("cancel-raw-link",this.selectedProvider?.title),this.deselectProvider()},cancelProviderSelection(){this.$emit("cancel")},submitLink(e){this.selectedProvider!==null&&yp(this.selectedProvider.id),this.$emit("submit",e),this.deselectProvider()},deselectProvider(){this.selectedProvider=null,this.$emit("provider-selected",null),setTimeout(()=>{this.$refs["provider-list"]?.focus()},300)}}};var $p=function(){var e=this,a=e._self._c;return a("div",{staticClass:"reference-picker",style:e.pickerWrapperStyle,attrs:{tabindex:"-1"},on:{keydown:function(i){return!i.type.indexOf("key")&&e._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])?null:(i.stopPropagation(),i.preventDefault(),e.onEscapePressed.apply(null,arguments))}}},[e.mode===e.MODES.providerList?a("NcProviderList",{ref:"provider-list",on:{"select-provider":e.onProviderSelected,submit:e.submitLink,cancel:e.cancelProviderSelection}}):e.mode===e.MODES.standardLinkInput?a("NcRawLinkInput",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelRawLinkInput}}):e.mode===e.MODES.searchInput?a("NcSearch",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{cancel:e.cancelSearch,submit:e.submitLink}}):e.mode===e.MODES.customElement?a("div",{staticClass:"custom-element-wrapper"},[a("NcCustomPickerElement",{staticClass:"custom-element",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelCustomElement}})],1):e._e()],1)},Wp=[],Qp=ie(Vp,$p,Wp,!1,null,"cd33df8e");const Kp=Qp.exports;oe(I1,Z1);const Jp={name:"NcReferencePickerModal",components:{NcReferencePicker:Kp,NcModal:Ws,NcButton:Ja,ArrowLeftIcon:sl,CloseIcon:Pn},props:{initialProvider:{type:Object,default:()=>null},focusOnCreate:{type:Boolean,default:!0},isInsideViewer:{type:Boolean,default:!1}},emits:["cancel","submit"],data(){return{show:!0,selectedProvider:this.initialProvider,backButtonTitle:x("Back to provider selection"),closeButtonTitle:x("Close"),closeButtonLabel:x("Close Smart Picker")}},computed:{isProviderSelected(){return this.selectedProvider!==null},showBackButton(){return this.initialProvider===null&&this.isProviderSelected},modalSize(){return this.isProviderSelected&&li(this.selectedProvider.id)?tm(this.selectedProvider.id)??"large":"normal"},showModalName(){return!this.isProviderSelected||!li(this.selectedProvider.id)},modalName(){return this.isProviderSelected?this.selectedProvider.title:x("Smart Picker")}},mounted(){if(this.isInsideViewer){const e=this.$refs.modal_content;Ci("viewer:trapElements:changed",e)}},methods:{onCancel(){this.show=!1,this.$emit("cancel")},onSubmit(e){this.show=!1,this.$emit("submit",e)},onProviderSelect(e){this.selectedProvider=e,e===null&&this.initialProvider!==null&&this.onCancel()},onBackClicked(){this.$refs.referencePicker.deselectProvider()}}};var Xp=function(){var e=this,a=e._self._c;return e.show?a("NcModal",{staticClass:"reference-picker-modal",attrs:{size:e.modalSize,"can-close":!0},on:{close:e.onCancel}},[a("div",{ref:"modal_content",staticClass:"reference-picker-modal--content"},[e.showBackButton?a("NcButton",{staticClass:"back-button",attrs:{"aria-label":e.backButtonTitle,title:e.backButtonTitle},on:{click:e.onBackClicked},scopedSlots:e._u([{key:"icon",fn:function(){return[a("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)}):e._e(),a("NcButton",{staticClass:"close-button",attrs:{"aria-label":e.closeButtonLabel,title:e.closeButtonTitle,type:"tertiary"},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[a("CloseIcon")]},proxy:!0}],null,!1,2491825086)}),e.showModalName?a("h2",[e._v(" "+e._s(e.modalName)+" ")]):e._e(),a("NcReferencePicker",{ref:"referencePicker",attrs:{"initial-provider":e.initialProvider,"focus-on-create":e.focusOnCreate},on:{"provider-selected":e.onProviderSelect,submit:e.onSubmit,cancel:e.onCancel}})],1)]):e._e()},e2=[],a2=ie(Jp,Xp,e2,!1,null,"a742c4c2");const F3=a2.exports;if(Ia(!1),Array.prototype.find||(Array.prototype.find=function(e){if(this===null)throw new TypeError("Array.prototype.find called on null or undefined");if(typeof e!="function")throw new TypeError("predicate must be a function");for(var a=Object(this),i=a.length>>>0,n=arguments[1],o,s=0;s<~]))"].join("|");return new RegExp(a,e?void 0:"g")}const u3=t2();const i2={name:"NcAutoCompleteResult",components:{NcUserStatusIcon:Br},props:{title:{type:String,required:!1,default:null},label:{type:String,required:!1,default:null},subline:{type:String,default:null},id:{type:String,default:null},icon:{type:String,required:!0},iconUrl:{type:String,default:null},source:{type:String,required:!0},status:{type:[Object,Array],default:()=>({})}},computed:{avatarUrl(){return this.iconUrl?this.iconUrl:this.id&&this.source==="users"?this.getAvatarUrl(this.id,44):null},labelWithFallback(){return this.label||this.title}},methods:{getAvatarUrl:to}};var n2=function(){var e=this,a=e._self._c;return a("div",{staticClass:"autocomplete-result"},[a("div",{staticClass:"autocomplete-result__icon",class:[e.icon,`autocomplete-result__icon--${e.avatarUrl?"with-avatar":""}`],style:e.avatarUrl?{backgroundImage:`url(${e.avatarUrl})`}:null},[e.status.icon?a("span",{staticClass:"autocomplete-result__status autocomplete-result__status--icon"},[e._v(" "+e._s(e.status&&e.status.icon||"")+" ")]):e.status.status&&e.status.status!=="offline"?a("NcUserStatusIcon",{staticClass:"autocomplete-result__status",attrs:{status:e.status.status}}):e._e()],1),a("span",{staticClass:"autocomplete-result__content"},[a("span",{staticClass:"autocomplete-result__title",attrs:{title:e.labelWithFallback}},[e._v(" "+e._s(e.labelWithFallback)+" ")]),e.subline?a("span",{staticClass:"autocomplete-result__subline"},[e._v(" "+e._s(e.subline)+" ")]):e._e()])])},o2=[],s2=ie(i2,n2,o2,!1,null,"98c79945");const c3=s2.exports;oe(G1,sr);const r2=["d","D","p","P","s","S","x","X",")","(","|","/"],zs=[];r2.forEach(e=>{zs.push(":"+e),zs.push(":-"+e)}),P1,x("Write a message …");oe(U1),{...L0.props,placeholder:x("Select a tag")},oe(ir),oe(z1),oe(V1),x,Un(function(e){this.loadGroup(e)},200),window.OCP?.Accessibility?.disableKeyboardShortcuts?.();function l2(e=document.body){const a=window.getComputedStyle(e).getPropertyValue("--background-invert-if-dark");return a!==void 0?a==="invert(100%)":!1}l2();const Si={name:N("viewer","Name"),save:N("viewer","Save"),saveAs:N("viewer","Save as"),back:N("viewer","Back"),loading:N("viewer","Loading …"),resetOperations:N("viewer","Reset"),changesLoseWarningHint:N("viewer","All changes will be lost."),discardChangesWarningHint:N("viewer","Are you sure you want to continue?"),cancel:N("viewer","Cancel"),apply:N("viewer","Apply"),warning:N("viewer","Warning"),confirm:N("viewer","Confirm"),discardChanges:N("viewer","Discard changes"),undoTitle:N("viewer","Undo"),redoTitle:N("viewer","Redo"),showImageTitle:N("viewer","Show original image"),zoomInTitle:N("viewer","Zoom in"),zoomOutTitle:N("viewer","Zoom out"),toggleZoomMenuTitle:N("viewer","Toggle zoom menu"),adjustTab:N("viewer","Adjust"),finetuneTab:N("viewer","Fine-tune"),filtersTab:N("viewer","Filters"),watermarkTab:N("viewer","Watermark"),annotateTabLabel:N("viewer","Draw"),resize:N("viewer","Resize"),resizeTab:N("viewer","Resize"),imageName:N("viewer","Image name"),invalidImageError:N("viewer","Invalid image."),uploadImageError:N("viewer","Error while uploading the image."),areNotImages:N("viewer","are not images"),isNotImage:N("viewer","is not an image"),toBeUploaded:N("viewer","to be uploaded"),cropTool:N("viewer","Crop"),original:N("viewer","Original"),custom:N("viewer","Custom"),square:N("viewer","Square"),landscape:N("viewer","Landscape"),portrait:N("viewer","Portrait"),ellipse:N("viewer","Ellipse"),classicTv:N("viewer","Classic TV"),cinemascope:N("viewer","CinemaScope"),arrowTool:N("viewer","Arrow"),blurTool:N("viewer","Blur"),brightnessTool:N("viewer","Brightness"),contrastTool:N("viewer","Contrast"),ellipseTool:N("viewer","Ellipse"),unFlipX:N("viewer","Un-flip X"),flipX:N("viewer","Flip X"),unFlipY:N("viewer","Un-flip Y"),flipY:N("viewer","Flip Y"),hsvTool:N("viewer","HSV"),hue:N("viewer","Hue"),brightness:N("viewer","Brightness"),saturation:N("viewer","Saturation"),value:N("viewer","Value"),imageTool:N("viewer","Image"),importing:N("viewer","Importing …"),addImage:N("viewer","+ Add image"),uploadImage:N("viewer","Upload image"),fromGallery:N("viewer","From gallery"),lineTool:N("viewer","Line"),penTool:N("viewer","Pen"),polygonTool:N("viewer","Polygon"),sides:N("viewer","Sides"),rectangleTool:N("viewer","Rectangle"),cornerRadius:N("viewer","Corner Radius"),resizeWidthTitle:N("viewer","Width in pixels"),resizeHeightTitle:N("viewer","Height in pixels"),toggleRatioLockTitle:N("viewer","Toggle ratio lock"),resetSize:N("viewer","Reset to original image size"),rotateTool:N("viewer","Rotate"),textTool:N("viewer","Text"),textSpacings:N("viewer","Text spacing"),textAlignment:N("viewer","Text alignment"),fontFamily:N("viewer","Font family"),size:N("viewer","Size"),letterSpacing:N("viewer","Letter spacing"),lineHeight:N("viewer","Line height"),warmthTool:N("viewer","Warmth"),addWatermark:N("viewer","+ Add watermark"),addTextWatermark:N("viewer","+ Add text watermark"),addWatermarkTitle:N("viewer","Choose watermark type"),uploadWatermark:N("viewer","Upload watermark"),addWatermarkAsText:N("viewer","Add as text"),padding:N("viewer","Padding"),paddings:N("viewer","Paddings"),shadow:N("viewer","Shadow"),horizontal:N("viewer","Horizontal"),vertical:N("viewer","Vertical"),blur:N("viewer","Blur"),opacity:N("viewer","Opacity"),transparency:N("viewer","Transparency"),position:N("viewer","Position"),stroke:N("viewer","Stroke"),saveAsModalTitle:N("viewer","Save image as"),extension:N("viewer","Extension"),format:N("viewer","Format"),nameIsRequired:N("viewer","Name is required."),quality:N("viewer","Quality"),imageDimensionsHoverTitle:N("viewer","Saved image size (width x height)"),cropSizeLowerThanResizedWarning:N("viewer","Note that the selected crop area is lower than the applied resize which might cause quality decrease"),actualSize:N("viewer","Actual size (100%)"),fitSize:N("viewer","Fit size"),addImageTitle:N("viewer","Select image to add …"),mutualizedFailedToLoadImg:N("viewer","Failed to load image."),tabsMenu:N("viewer","Menu"),download:N("viewer","Download"),width:N("viewer","Width"),height:N("viewer","Height"),plus:"+",cropItemNoEffect:N("viewer","No preview available for this crop item")};let vi,Vs;const _2={name:"ImageEditor",props:{fileid:{type:[String,Number],required:!0},mime:{type:String,required:!0},src:{type:String,required:!0}},data(){return{imageEditor:null}},computed:{config(){return{source:this.src,defaultSavedImageName:this.defaultSavedImageName,defaultSavedImageType:this.defaultSavedImageType,useBackendTranslations:!1,observePluginContainerSize:!0,defaultTabId:vi.ADJUST,defaultToolId:Vs.CROP,tabsIds:Object.values(vi).filter(e=>e!==vi.WATERMARK).sort((e,a)=>e.localeCompare(a)),onClose:this.onClose,onSave:this.onSave,translations:Si,theme:{palette:{"bg-secondary":"var(--color-main-background)","bg-primary":"var(--color-background-dark)","bg-hover":"var(--color-background-hover)","bg-stateless":"var(--color-background-dark)","accent-primary":"var(--color-primary-element)","accent-stateless":"var(--color-primary-element)","border-active-bottom":"var(--color-primary-element)","bg-primary-active":"var(--color-background-dark)","bg-primary-hover":"var(--color-background-hover)","accent-primary-active":"var(--color-main-text)","accent-primary-hover":"var(--color-primary-element)",warning:"var(--color-error)"},typography:{fontFamily:"var(--font-face)"}}}},defaultSavedImageName(){return qt.basename(this.src,qt.extname(this.src))},defaultSavedImageType(){return qt.extname(this.src).slice(1)||"jpeg"},hasHighContrastEnabled(){return(OCA?.Theming?.enabledThemes||[]).find(e=>e.indexOf("highcontrast")!==-1)},themeDataAttr(){return this.hasHighContrastEnabled?{"data-theme-dark-highcontrast":!0}:{"data-theme-dark":!0}}},async mounted(){const e=(await zn(async()=>{const{default:a}=await import("./index-CZ02cfFW.chunk.mjs");return{default:a}},__vite__mapDeps([0,1,2]),import.meta.url)).default;vi=e.TABS,Vs=e.TOOLS,this.imageEditor=new e(this.$refs.editor,this.config),this.imageEditor.render(),window.addEventListener("keydown",this.handleKeydown,!0),window.addEventListener("DOMNodeInserted",this.handleSfxModal)},beforeDestroy(){this.imageEditor&&this.imageEditor.terminate(),window.removeEventListener("keydown",this.handleKeydown,!0)},methods:{onClose(e,a){if(a){this.onExitWithoutSaving();return}window.removeEventListener("keydown",this.handleKeydown,!0),this.$emit("close")},async onSave({fullName:e,imageCanvas:a,mimeType:i,quality:n}){const{origin:o,pathname:s}=new URL(this.src),l=o+qt.join(qt.dirname(s),e);Ha.debug("Saving image...",{putUrl:l,src:this.src,fullName:e}),i=i.replace("jpg","jpeg"),n=Math.max(Math.min(n,1),0)||1;try{const _=await new Promise(f=>a.toBlob(f,i,n)),r=await pa.put(l,new File([_],e));if(Ha.info("Edited image saved!",{response:r}),$1(t("viewer","Image saved")),l!==this.src)Ci("files:node:created",{fileid:parseInt(r?.headers?.["oc-fileid"]?.split("oc")[0])||null});else{this.$emit("updated");const f=await W1(o,decodeURI(s)),d=new Q1({id:Number.parseInt(this.fileid),source:this.src,mtime:new Date(f.lastmod),...f,attributes:{...f,...f.props}});Ci("files:node:updated",d)}}catch(_){Ha.error("Error saving image",{error:_}),K1(t("viewer","Error saving image"))}},onExitWithoutSaving(){OC.dialogs.confirmDestructive(Si.changesLoseWarningHint+`
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()),this._categories=this._categories.filter(function(q){return q.emojis.length>0}),this._categories[0].first=!0,Object.freeze(this._categories),this.activeCategory=this._categories[0],this.searchEmojis=null,this.previewEmoji=null,this.previewEmojiCategoryIdx=0,this.previewEmojiIdx=-1},[{key:"onScroll",value:function(){for(var u=this._vm.$refs.scroll.scrollTop,D=this.filteredCategories[0],y=0,C=this.filteredCategories.length;yu)break;D=q}this.activeCategory=D}},{key:"allCategories",get:function(){return this._categories}},{key:"filteredCategories",get:function(){return this.searchEmojis?[{id:"search",name:"Search",emojis:this.searchEmojis}]:this._categories.filter(function(u){return u.emojis.length>0})}},{key:"previewEmojiCategory",get:function(){return this.previewEmojiCategoryIdx>=0?this.filteredCategories[this.previewEmojiCategoryIdx]:null}},{key:"onAnchorClick",value:function(u){var D=this;if(!this.searchEmojis){var y=this.filteredCategories.indexOf(u),C=this._vm.getCategoryComponent(y);this._vm.infiniteScroll?function(){if(C){var q=C.$el.offsetTop;u.first&&(q=0),D._vm.$refs.scroll.scrollTop=q}}():this.activeCategory=this.filteredCategories[y]}}},{key:"onSearch",value:function(u){var D=this._data.search(u,this.maxSearchResults);this.searchEmojis=D,this.previewEmojiCategoryIdx=0,this.previewEmojiIdx=0,this.updatePreviewEmoji()}},{key:"onEmojiEnter",value:function(u){this.previewEmoji=u,this.previewEmojiIdx=-1,this.previewEmojiCategoryIdx=-1}},{key:"onEmojiLeave",value:function(u){this.previewEmoji=null}},{key:"onArrowLeft",value:function(){this.previewEmojiIdx>0?this.previewEmojiIdx-=1:(this.previewEmojiCategoryIdx-=1,this.previewEmojiCategoryIdx<0?this.previewEmojiCategoryIdx=0:this.previewEmojiIdx=this.filteredCategories[this.previewEmojiCategoryIdx].emojis.length-1),this.updatePreviewEmoji()}},{key:"onArrowRight",value:function(){this.previewEmojiIdx=this.filteredCategories.length?this.previewEmojiCategoryIdx=this.filteredCategories.length-1:this.previewEmojiIdx=0),this.updatePreviewEmoji()}},{key:"onArrowDown",value:function(){if(this.previewEmojiIdx==-1)return this.onArrowRight();var u=this.filteredCategories[this.previewEmojiCategoryIdx].emojis.length,D=this._perLine;this.previewEmojiIdx+D>u&&(D=u%this._perLine);for(var y=0;y0?this.filteredCategories[this.previewEmojiCategoryIdx-1].emojis.length%this._perLine:0);for(var D=0;DC+D.scrollTop&&(D.scrollTop+=y.offsetHeight),y&&y.offsetTop"u")return 0;var u=document.createElement("div");u.style.width="100px",u.style.height="100px",u.style.overflow="scroll",u.style.position="absolute",u.style.top="-9999px",document.body.appendChild(u);var D=u.offsetWidth-u.clientWidth;return document.body.removeChild(u),D}()},filteredCategories:function(){return this.view.filteredCategories},mergedI18n:function(){return Object.freeze(we(be,this.i18n))},idleEmoji:function(){try{return this.data.emoji(this.emoji)}catch(u){return console.error("Default preview emoji `"+this.emoji+"` is not available, check the Picker `emoji` property"),console.error(u),this.data.firstEmoji()}}},watch:{skin:function(){this.onSkinChange(this.skin)}},methods:{onScroll:function(){this.infiniteScroll&&!this.waitingForPaint&&(this.waitingForPaint=!0,window.requestAnimationFrame(this.onScrollPaint.bind(this)))},onScrollPaint:function(){this.waitingForPaint=!1,this.view.onScroll()},onAnchorClick:function(u){this.view.onAnchorClick(u)},onSearch:function(u){this.view.onSearch(u)},onEmojiEnter:function(u){this.view.onEmojiEnter(u)},onEmojiLeave:function(u){this.view.onEmojiLeave(u)},onArrowLeft:function(u){var D=this.view.previewEmojiIdx;this.view.onArrowLeft(),u&&this.view.previewEmojiIdx!==D&&u.preventDefault()},onArrowRight:function(){this.view.onArrowRight()},onArrowDown:function(){this.view.onArrowDown()},onArrowUp:function(u){this.view.onArrowUp(),u.preventDefault()},onEnter:function(){this.view.previewEmoji&&(this.$emit("select",this.view.previewEmoji),z.add(this.view.previewEmoji))},onEmojiClick:function(u){this.$emit("select",u),z.add(u)},onTextSelect:function(u){u.stopPropagation()},onSkinChange:function(u){this.activeSkin=u,h.update({skin:u}),this.$emit("skin-change",u)},getCategoryComponent:function(u){var D=this.$refs["categories_"+u];return D&&"0"in D?D[0]:D}},components:{Anchors:R,Category:je,Preview:A,Search:j}},H=c($e,function(){var u=this,D=u._self._c;return D("section",{staticClass:"emoji-mart emoji-mart-static",style:u.customStyles},[u.showCategories?D("div",{staticClass:"emoji-mart-bar emoji-mart-bar-anchors"},[D("anchors",{attrs:{data:u.data,i18n:u.mergedI18n,color:u.color,categories:u.view.allCategories,"active-category":u.view.activeCategory},on:{click:u.onAnchorClick}})],1):u._e(),u._v(" "),u._t("searchTemplate",function(){return[u.showSearch?D("search",{ref:"search",attrs:{data:u.data,i18n:u.mergedI18n,"auto-focus":u.autoFocus,"on-search":u.onSearch},on:{search:u.onSearch,arrowLeft:u.onArrowLeft,arrowRight:u.onArrowRight,arrowDown:u.onArrowDown,arrowUp:u.onArrowUp,enter:u.onEnter,select:u.onTextSelect}}):u._e()]},{data:u.data,i18n:u.i18n,autoFocus:u.autoFocus,onSearch:u.onSearch}),u._v(" "),D("div",{ref:"scroll",staticClass:"emoji-mart-scroll",attrs:{role:"tabpanel"},on:{scroll:u.onScroll}},[D("div",{ref:"scrollContent",attrs:{id:"emoji-mart-list",role:"listbox","aria-expanded":"true"}},[u._t("customCategory"),u._v(" "),u._l(u.view.filteredCategories,function(y,C){return D("category",{directives:[{name:"show",rawName:"v-show",value:u.infiniteScroll||y==u.view.activeCategory,expression:"infiniteScroll || category == view.activeCategory"}],key:y.id,ref:"categories_"+C,refInFor:!0,attrs:{data:u.data,i18n:u.mergedI18n,id:y.id,name:y.name,emojis:y.emojis,"emoji-props":u.emojiProps}})})],2)]),u._v(" "),u._t("previewTemplate",function(){return[u.showPreview?D("div",{staticClass:"emoji-mart-bar emoji-mart-bar-preview"},[D("preview",{attrs:{data:u.data,title:u.title,emoji:u.view.previewEmoji,"idle-emoji":u.idleEmoji,"show-skin-tones":u.showSkinTones,"emoji-props":u.emojiProps,"skin-props":u.skinProps,"on-skin-change":u.onSkinChange}})],1):u._e()]},{data:u.data,title:u.title,emoji:u.view.previewEmoji,idleEmoji:u.idleEmoji,showSkinTones:u.showSkinTones,emojiProps:u.emojiProps,skinProps:u.skinProps,onSkinChange:u.onSkinChange})],2)},[]),$=H.exports}(),s}()})})(dl);var ks=dl.exports;const s3=Zn("nextcloud-vue").persist(!0).build();oe(C1,nr,sr,or);const Tc={name:"CircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var yc=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon circle-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Ec=[],kc=ie(Tc,yc,Ec,!1,null,null);const r3=kc.exports;const l3={search:x("Search emoji"),notfound:x("No emoji found"),categories:{search:x("Search results"),recent:x("Frequently used"),smileys:x("Smileys & Emotion"),people:x("People & Body"),nature:x("Animals & Nature"),foods:x("Food & Drink"),activity:x("Activities"),places:x("Travel & Places"),objects:x("Objects"),symbols:x("Symbols"),flags:x("Flags"),custom:x("Custom")}},_3=[new Se(255,222,52,x("Neutral skin color")),new Se(228,205,166,x("Light skin tone")),new Se(250,221,192,x("Medium light skin tone")),new Se(174,129,87,x("Medium skin tone")),new Se(158,113,88,x("Medium dark skin tone")),new Se(96,79,69,x("Dark skin tone"))];ks.Emoji,Ja,Gn,ks.Picker,x("Pick an emoji"),x,oe(O1);const fl={name:"NcProgressBar",props:{value:{type:Number,default:0,validator(e){return e>=0&&e<=100}},size:{type:[String,Number],default:"small",validator(e){return["small","medium"].includes(e)||typeof e=="number"}},error:{type:Boolean,default:!1},type:{type:String,default:"linear",validator(e){return["linear","circular"].includes(e)}},color:{type:String,default:null}},data(){return{stroke:4}},computed:{height(){return this.type==="circular"?Number.isInteger(this.size)?this.size:44:this.size==="small"?4:this.size==="medium"?6:this.size},progress(){return this.value/100},radius(){return this.height/2},radiusNormalized(){return this.radius-3*this.stroke},circumference(){return this.radiusNormalized*2*Math.PI}}},As=()=>{B1((e,a)=>({"497e8a2b":e.color}))},ws=fl.setup;fl.setup=ws?(e,a)=>(As(),ws(e,a)):As;const Ac={name:"AccountGroupIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var wc=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon account-group-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Sc=[],vc=ie(Ac,wc,Sc,!1,null,null);const Rc=vc.exports,Cc={name:"OpenInNewIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Oc=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon open-in-new-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},Bc=[],Nc=ie(Cc,Oc,Bc,!1,null,null);const xc=Nc.exports;oe(N1);const Mc={name:"NcTeamResources",components:{AccountGroup:Rc,ChevronDown:Cr,ChevronUp:Ku,OpenInNew:xc,NcButton:Ja,NcIconSvgWrapper:Hn},props:{providerId:{type:String,default:null},itemId:{type:[String,Number],default:null}},data(){return{appEnabled:OC?.appswebroots?.circles!==void 0&&(OC.config.version.split(".")[0]??0)>=29,loading:!1,teamResources:null,teamOpen:[]}},computed:{isVisible(){return!this.loading&&this.teamResources?.length>0},teamProviders(){return e=>this.teamResources.find(a=>a.teamId===e).resources?.reduce((a,i)=>(i.provider.id===this.providerId&&i.id===String(this.itemId)||(a[i.provider.id]||(a[i.provider.id]=i.provider,a[i.provider.id].resources=[]),i.provider.id===this.providerId&&i.id===String(this.itemId))||a[i.provider.id].resources.push(i),a),{})},open(){return e=>this.teamOpen.indexOf(e)!==-1}},watch:{providerId(){this.fetchTeamResources()},itemId(){this.fetchTeamResources()}},created(){this.fetchTeamResources()},methods:{t:x,async fetchTeamResources(){try{this.loading=!0;const e=await pa.get(Va(`/teams/resources/${this.providerId}/${this.itemId}`));this.teamResources=e.data.ocs.data.teams,this.teamOpen=[this.teamResources[0]?.teamId]}catch(e){this.teamResources=null,console.error(e)}finally{this.loading=!1}},toggleOpen(e,a){a?this.teamOpen.push(e):this.teamOpen.splice(this.teamOpen.indexOf(e),1)}}};var jc=function(){var e=this,a=e._self._c;return e.appEnabled&&e.isVisible?a("div",{staticClass:"team-resources"},[a("h5",{staticClass:"team-resources__header"},[e._v(" "+e._s(e.t("Related team resources"))+" ")]),e._l(e.teamResources,function(i){return a("details",{key:i.teamId,staticClass:"related-team",attrs:{name:"Team resources",open:e.open(i.teamId)},on:{toggle:n=>e.toggleOpen(i.teamId,n.target.open)}},[a("summary",{staticClass:"related-team__header"},[a("h5",{staticClass:"related-team__name"},[a("AccountGroup",{attrs:{size:20}}),e._v(" "+e._s(i.displayName)+" ")],1),a("NcButton",{attrs:{type:"tertiary",href:i.link,"aria-label":e.t("View team"),title:e.t("View team")},scopedSlots:e._u([{key:"icon",fn:function(){return[a("OpenInNew",{attrs:{size:20}})]},proxy:!0}],null,!0)}),e.open(i.teamId)?a("ChevronUp",{attrs:{size:20}}):a("ChevronDown",{attrs:{size:20}})],1),a("div",e._l(e.teamProviders(i.teamId),function(n){return a("div",{key:n.id,staticClass:"related-team-provider"},[n.resources.length>0?a("h6",[e._v(" "+e._s(n.name)+" ")]):e._e(),a("ul",e._l(n.resources,function(o){return a("li",{key:o.url,staticClass:"related-team-resource"},[a("a",{staticClass:"related-team-resource__link",attrs:{href:o.url}},[o.iconEmoji?a("span",{staticClass:"resource__icon"},[e._v(" "+e._s(o.iconEmoji)+" ")]):o.iconSvg?a("NcIconSvgWrapper",{staticClass:"resource__icon",attrs:{svg:o.iconSvg,size:20}}):o.iconURL?a("span",{staticClass:"resource__icon"},[a("img",{attrs:{src:o.iconURL,alt:""}})]):e._e(),a("span",{staticClass:"resource__name"},[e._v(" "+e._s(o.label)+" ")])],1)])}),0)])}),0)])})],2):e._e()},Yc=[],qc=ie(Mc,jc,Yc,!1,null,"de46bdbe");const d3=qc.exports;oe(x1);const Lc={name:"NcResource",components:{NcButton:Ja},props:{icon:{type:String,required:!0},name:{type:String,required:!0},url:{type:String,required:!0}},data(){return{labelTranslated:x('Open link to "{resourceName}"',{resourceName:this.name})}},computed:{route(){return fo(this.$router,this.url)}},methods:{t:x}};var Zc=function(){var e=this,a=e._self._c;return a("li",{staticClass:"resource"},[a("NcButton",{staticClass:"resource__button",attrs:{"aria-label":e.labelTranslated,type:"tertiary",to:e.route,href:e.route?null:e.url},scopedSlots:e._u([{key:"icon",fn:function(){return[a("div",{staticClass:"resource__icon"},[a("img",{attrs:{src:e.icon}})])]},proxy:!0}])},[e._v(" "+e._s(e.name)+" ")])],1)},Ic=[],Hc=ie(Lc,Zc,Ic,!1,null,"ac1115a7");const f3=Hc.exports;oe(M1),x("Related resources"),x("Anything shared with the same group of people will show up here"),x;const Pc={name:"NcMentionBubble",props:{id:{type:String,required:!0},title:{type:String,required:!1,default:null},label:{type:String,required:!1,default:null},icon:{type:String,required:!0},iconUrl:{type:[String,null],default:null},source:{type:String,required:!0},primary:{type:Boolean,default:!1}},computed:{avatarUrl(){return this.iconUrl?this.iconUrl:this.id&&this.source==="users"?this.getAvatarUrl(this.id,44):null},mentionText(){return!this.id.includes(" ")&&!this.id.includes("/")?`@${this.id}`:`@"${this.id}"`},labelWithFallback(){return this.label||this.title}},methods:{getAvatarUrl:to}};var Gc=function(){var e=this,a=e._self._c;return a("span",{staticClass:"mention-bubble",class:{"mention-bubble--primary":e.primary},attrs:{contenteditable:"false"}},[a("span",{staticClass:"mention-bubble__wrapper"},[a("span",{staticClass:"mention-bubble__content"},[a("span",{staticClass:"mention-bubble__icon",class:[e.icon,`mention-bubble__icon--${e.avatarUrl?"with-avatar":""}`],style:e.avatarUrl?{backgroundImage:`url(${e.avatarUrl})`}:null}),a("span",{staticClass:"mention-bubble__title",attrs:{role:"heading",title:e.labelWithFallback}})]),a("span",{staticClass:"mention-bubble__select",attrs:{role:"none"}},[e._v(e._s(e.mentionText))])])])},Uc=[],zc=ie(Pc,Gc,Uc,!1,null,"a519576f");const g3=zc.exports,gl=/(?=[a-z0-9_\-@.'])\B/.source,Vc=/(@[a-z0-9_\-@.']+)/.source,$c=/@"(?:guest|email){1}\/[a-f0-9]+"/.source,Wc=/@"(?:federated_)?(?:group|team|user){1}\/[a-z0-9_\-@.' /:]+"/.source,Qc=/@"[a-z0-9_\-@.' ]+"/.source,Kc=`(${$c}|${Wc}|${Qc})`,h3=new RegExp(`${gl}${Vc}`,"gi"),F3=new RegExp(`${gl}${Kc}`,"gi");window._vue_richtext_widgets||(window._vue_richtext_widgets={});const Ss=e=>!!window._vue_richtext_widgets[e],Jc=e=>!!window._vue_richtext_widgets[e]?.hasInteractiveView,Xc=e=>!!window._vue_richtext_widgets[e]?.fullWidth,em=(e,a,i=o=>{},n)=>{const o={hasInteractiveView:!0,fullWidth:!1,...n};if(window._vue_richtext_widgets[e]){console.error("Widget for id "+e+" already registered");return}window._vue_richtext_widgets[e]={id:e,callback:a,onDestroy:i,...o}},am=(e,{richObjectType:a,richObject:i,accessible:n,interactive:o})=>{if(a!=="open-graph"){if(!window._vue_richtext_widgets[a]){console.error("Widget for rich object type "+a+" not registered");return}window._vue_richtext_widgets[a].callback(e,{richObjectType:a,richObject:i,accessible:n,interactive:o})}},tm=(e,a)=>{e!=="open-graph"&&window._vue_richtext_widgets[e]&&window._vue_richtext_widgets[e].onDestroy(a)};window._registerWidget=(e,a,i,n)=>{em(e,a,i,n)},window._vue_richtext_custom_picker_elements||(window._vue_richtext_custom_picker_elements={});const li=e=>!!window._vue_richtext_custom_picker_elements[e],im=e=>{const a=window._vue_richtext_custom_picker_elements[e]?.size;return["small","normal","large","full"].includes(a)?a:null},nm=(e,a,i=o=>{},n="large")=>{if(window._vue_richtext_custom_picker_elements[e]){console.error("Custom reference picker element for id "+e+" already registered");return}window._vue_richtext_custom_picker_elements[e]={id:e,callback:a,onDestroy:i,size:n}},om=(e,{providerId:a,accessible:i})=>{if(!window._vue_richtext_custom_picker_elements[a]){console.error("Custom reference picker element for reference provider ID "+a+" not registered");return}return window._vue_richtext_custom_picker_elements[a].callback(e,{providerId:a,accessible:i})},sm=(e,a,i)=>{window._vue_richtext_custom_picker_elements[e]&&window._vue_richtext_custom_picker_elements[e].onDestroy(a,i)};window._registerCustomPickerElement=nm;function ra(e,a){for(var i in a)e[i]=a[i];return e}var rm=/[!'()*]/g,lm=function(e){return"%"+e.charCodeAt(0).toString(16)},_m=/%2C/g,Dt=function(e){return encodeURIComponent(e).replace(rm,lm).replace(_m,",")};function Nn(e){try{return decodeURIComponent(e)}catch{}return e}function dm(e,a,i){a===void 0&&(a={});var n=i||fm,o;try{o=n(e||"")}catch{o={}}for(var s in a){var l=a[s];o[s]=Array.isArray(l)?l.map(vs):vs(l)}return o}var vs=function(e){return e==null||typeof e=="object"?e:String(e)};function fm(e){var a={};return e=e.trim().replace(/^(\?|#|&)/,""),e&&e.split("&").forEach(function(i){var n=i.replace(/\+/g," ").split("="),o=Nn(n.shift()),s=n.length>0?Nn(n.join("=")):null;a[o]===void 0?a[o]=s:Array.isArray(a[o])?a[o].push(s):a[o]=[a[o],s]}),a}function gm(e){var a=e?Object.keys(e).map(function(i){var n=e[i];if(n===void 0)return"";if(n===null)return Dt(i);if(Array.isArray(n)){var o=[];return n.forEach(function(s){s!==void 0&&(s===null?o.push(Dt(i)):o.push(Dt(i)+"="+Dt(s)))}),o.join("&")}return Dt(i)+"="+Dt(n)}).filter(function(i){return i.length>0}).join("&"):null;return a?"?"+a:""}var k0=/\/?$/;function A0(e,a,i,n){var o=n&&n.options.stringifyQuery,s=a.query||{};try{s=xn(s)}catch{}var l={name:a.name||e&&e.name,meta:e&&e.meta||{},path:a.path||"/",hash:a.hash||"",query:s,params:a.params||{},fullPath:Rs(a,o),matched:e?hm(e):[]};return i&&(l.redirectedFrom=Rs(i,o)),Object.freeze(l)}function xn(e){if(Array.isArray(e))return e.map(xn);if(e&&typeof e=="object"){var a={};for(var i in e)a[i]=xn(e[i]);return a}else return e}var Ka=A0(null,{path:"/"});function hm(e){for(var a=[];e;)a.unshift(e),e=e.parent;return a}function Rs(e,a){var i=e.path,n=e.query;n===void 0&&(n={});var o=e.hash;o===void 0&&(o="");var s=a||gm;return(i||"/")+s(n)+o}function hl(e,a,i){return a===Ka?e===a:a?e.path&&a.path?e.path.replace(k0,"")===a.path.replace(k0,"")&&(i||e.hash===a.hash&&Yi(e.query,a.query)):e.name&&a.name?e.name===a.name&&(i||e.hash===a.hash&&Yi(e.query,a.query)&&Yi(e.params,a.params)):!1:!1}function Yi(e,a){if(e===void 0&&(e={}),a===void 0&&(a={}),!e||!a)return e===a;var i=Object.keys(e).sort(),n=Object.keys(a).sort();return i.length!==n.length?!1:i.every(function(o,s){var l=e[o],_=n[s];if(_!==o)return!1;var r=a[o];return l==null||r==null?l===r:typeof l=="object"&&typeof r=="object"?Yi(l,r):String(l)===String(r)})}function Fm(e,a){return e.path.replace(k0,"/").indexOf(a.path.replace(k0,"/"))===0&&(!a.hash||e.hash===a.hash)&&um(e.query,a.query)}function um(e,a){for(var i in a)if(!(i in e))return!1;return!0}function Fl(e){for(var a=0;a=0&&(a=e.slice(n),e=e.slice(0,n));var o=e.indexOf("?");return o>=0&&(i=e.slice(o+1),e=e.slice(0,o)),{path:e,query:i,hash:a}}function Ga(e){return e.replace(/\/(?:\s*\/)+/g,"/")}var w0=Array.isArray||function(e){return Object.prototype.toString.call(e)=="[object Array]"},At=pl,bm=mo,Dm=km,Tm=cl,ym=ml,Em=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function mo(e,a){for(var i=[],n=0,o=0,s="",l=a&&a.delimiter||"/",_;(_=Em.exec(e))!=null;){var r=_[0],f=_[1],d=_.index;if(s+=e.slice(o,d),o=d+r.length,f){s+=f[1];continue}var g=e[o],h=_[2],F=_[3],m=_[4],p=_[5],T=_[6],k=_[7];s&&(i.push(s),s="");var w=h!=null&&g!=null&&g!==h,v=T==="+"||T==="*",M=T==="?"||T==="*",L=_[2]||l,O=m||p;i.push({name:F||n++,prefix:h||"",delimiter:L,optional:M,repeat:v,partial:w,asterisk:!!k,pattern:O?Sm(O):k?".*":"[^"+qi(L)+"]+?"})}return o1||!M.length)return M.length===0?e():e("span",{},M)}if(this.tag==="a")v.on=w,v.attrs={href:_,"aria-current":T};else{var L=Dl(this.$slots.default);if(L){L.isStatic=!1;var O=L.data=ra({},L.data);O.on=O.on||{};for(var P in O.on){var z=O.on[P];P in w&&(O.on[P]=Array.isArray(z)?z:[z])}for(var Z in w)Z in O.on?O.on[Z].push(w[Z]):O.on[Z]=k;var c=L.data.attrs=ra({},L.data.attrs);c.href=_,c["aria-current"]=T}else v.on=w}return e(this.tag,v,this.$slots.default)}};function Ns(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){var a=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(a))return}return e.preventDefault&&e.preventDefault(),!0}}function Dl(e){if(e){for(var a,i=0;i-1&&(T.params[M]=m.params[M]);return T.path=Li(w.path,T.params),h(w,T,p)}else if(T.path){T.params={};for(var L=0;L-1}function C0(e,a){return R0(e)&&e._isRouter&&(a==null||e.type===a)}function Ls(e,a,i){var n=function(o){o>=e.length?i():e[o]?a(e[o],function(){n(o+1)}):n(o+1)};n(0)}function $m(e){return function(a,i,n){var o=!1,s=0,l=null;Sl(e,function(_,r,f,d){if(typeof _=="function"&&_.cid===void 0){o=!0,s++;var g=Zs(function(p){Qm(p)&&(p=p.default),_.resolved=typeof p=="function"?p:S0.extend(p),f.components[d]=p,s--,s<=0&&n()}),h=Zs(function(p){var T="Failed to resolve async component "+d+": "+p;l||(l=R0(p)?p:new Error(T),n(l))}),F;try{F=_(g,h)}catch(p){h(p)}if(F)if(typeof F.then=="function")F.then(g,h);else{var m=F.component;m&&typeof m.then=="function"&&m.then(g,h)}}}),o||n()}}function Sl(e,a){return vl(e.map(function(i){return Object.keys(i.components).map(function(n){return a(i.components[n],i.instances[n],i,n)})}))}function vl(e){return Array.prototype.concat.apply([],e)}var Wm=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function Qm(e){return e.__esModule||Wm&&e[Symbol.toStringTag]==="Module"}function Zs(e){var a=!1;return function(){for(var i=[],n=arguments.length;n--;)i[n]=arguments[n];if(!a)return a=!0,e.apply(this,i)}}var sa=function(e,a){this.router=e,this.base=Km(a),this.current=Ka,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};sa.prototype.listen=function(e){this.cb=e},sa.prototype.onReady=function(e,a){this.ready?e():(this.readyCbs.push(e),a&&this.readyErrorCbs.push(a))},sa.prototype.onError=function(e){this.errorCbs.push(e)},sa.prototype.transitionTo=function(e,a,i){var n=this,o;try{o=this.router.match(e,this.current)}catch(l){throw this.errorCbs.forEach(function(_){_(l)}),l}var s=this.current;this.confirmTransition(o,function(){n.updateRoute(o),a&&a(o),n.ensureURL(),n.router.afterHooks.forEach(function(l){l&&l(o,s)}),n.ready||(n.ready=!0,n.readyCbs.forEach(function(l){l(o)}))},function(l){i&&i(l),l&&!n.ready&&(!C0(l,ct.redirected)||s!==Ka)&&(n.ready=!0,n.readyErrorCbs.forEach(function(_){_(l)}))})},sa.prototype.confirmTransition=function(e,a,i){var n=this,o=this.current;this.pending=e;var s=function(m){!C0(m)&&R0(m)&&(n.errorCbs.length?n.errorCbs.forEach(function(p){p(m)}):console.error(m)),i&&i(m)},l=e.matched.length-1,_=o.matched.length-1;if(hl(e,o)&&l===_&&e.matched[l]===o.matched[_])return this.ensureURL(),e.hash&&Ua(this.router,o,e,!1),s(Gm(o,e));var r=Jm(this.current.matched,e.matched),f=r.updated,d=r.deactivated,g=r.activated,h=[].concat(ep(d),this.router.beforeHooks,ap(f),g.map(function(m){return m.beforeEnter}),$m(g)),F=function(m,p){if(n.pending!==e)return s(qs(o,e));try{m(e,o,function(T){T===!1?(n.ensureURL(!0),s(Um(o,e))):R0(T)?(n.ensureURL(!0),s(T)):typeof T=="string"||typeof T=="object"&&(typeof T.path=="string"||typeof T.name=="string")?(s(Pm(o,e)),typeof T=="object"&&T.replace?n.replace(T):n.push(T)):p(T)})}catch(T){s(T)}};Ls(h,F,function(){var m=tp(g),p=m.concat(n.router.resolveHooks);Ls(p,F,function(){if(n.pending!==e)return s(qs(o,e));n.pending=null,a(e),n.router.app&&n.router.app.$nextTick(function(){Fl(e)})})})},sa.prototype.updateRoute=function(e){this.current=e,this.cb&&this.cb(e)},sa.prototype.setupListeners=function(){},sa.prototype.teardown=function(){this.listeners.forEach(function(e){e()}),this.listeners=[],this.current=Ka,this.pending=null};function Km(e){if(!e)if(fi){var a=document.querySelector("base");e=a&&a.getAttribute("href")||"/",e=e.replace(/^https?:\/\/[^\/]+/,"")}else e="/";return e.charAt(0)!=="/"&&(e="/"+e),e.replace(/\/$/,"")}function Jm(e,a){var i,n=Math.max(e.length,a.length);for(i=0;i0)){var n=this.router,o=n.options.scrollBehavior,s=za&&o;s&&this.listeners.push(Al());var l=function(){var _=i.current,r=Ht(i.base);i.current===Ka&&r===i._startLocation||i.transitionTo(r,function(f){s&&Ua(n,f,_,!0)})};window.addEventListener("popstate",l),this.listeners.push(function(){window.removeEventListener("popstate",l)})}},a.prototype.go=function(i){window.history.go(i)},a.prototype.push=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){v0(Ga(s.base+r.fullPath)),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.replace=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Yn(Ga(s.base+r.fullPath)),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.ensureURL=function(i){if(Ht(this.base)!==this.current.fullPath){var n=Ga(this.base+this.current.fullPath);i?v0(n):Yn(n)}},a.prototype.getCurrentLocation=function(){return Ht(this.base)},a}(sa);function Ht(e){var a=window.location.pathname,i=a.toLowerCase(),n=e.toLowerCase();return e&&(i===n||i.indexOf(Ga(n+"/"))===0)&&(a=a.slice(e.length)),(a||"/")+window.location.search+window.location.hash}var Ol=function(e){function a(i,n,o){e.call(this,i,n),!(o&&np(this.base))&&Is()}return e&&(a.__proto__=e),a.prototype=Object.create(e&&e.prototype),a.prototype.constructor=a,a.prototype.setupListeners=function(){var i=this;if(!(this.listeners.length>0)){var n=this.router,o=n.options.scrollBehavior,s=za&&o;s&&this.listeners.push(Al());var l=function(){var r=i.current;Is()&&i.transitionTo(Zi(),function(f){s&&Ua(i.router,f,r,!0),za||Ii(f.fullPath)})},_=za?"popstate":"hashchange";window.addEventListener(_,l),this.listeners.push(function(){window.removeEventListener(_,l)})}},a.prototype.push=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Hs(r.fullPath),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.replace=function(i,n,o){var s=this,l=this,_=l.current;this.transitionTo(i,function(r){Ii(r.fullPath),Ua(s.router,r,_,!1),n&&n(r)},o)},a.prototype.go=function(i){window.history.go(i)},a.prototype.ensureURL=function(i){var n=this.current.fullPath;Zi()!==n&&(i?Hs(n):Ii(n))},a.prototype.getCurrentLocation=function(){return Zi()},a}(sa);function np(e){var a=Ht(e);if(!/^\/#/.test(a))return window.location.replace(Ga(e+"/#"+a)),!0}function Is(){var e=Zi();return e.charAt(0)==="/"?!0:(Ii("/"+e),!1)}function Zi(){var e=window.location.href,a=e.indexOf("#");return a<0?"":(e=e.slice(a+1),e)}function qn(e){var a=window.location.href,i=a.indexOf("#"),n=i>=0?a.slice(0,i):a;return n+"#"+e}function Hs(e){za?v0(qn(e)):window.location.hash=e}function Ii(e){za?Yn(qn(e)):window.location.replace(qn(e))}var op=function(e){function a(i,n){e.call(this,i,n),this.stack=[],this.index=-1}return e&&(a.__proto__=e),a.prototype=Object.create(e&&e.prototype),a.prototype.constructor=a,a.prototype.push=function(i,n,o){var s=this;this.transitionTo(i,function(l){s.stack=s.stack.slice(0,s.index+1).concat(l),s.index++,n&&n(l)},o)},a.prototype.replace=function(i,n,o){var s=this;this.transitionTo(i,function(l){s.stack=s.stack.slice(0,s.index).concat(l),n&&n(l)},o)},a.prototype.go=function(i){var n=this,o=this.index+i;if(!(o<0||o>=this.stack.length)){var s=this.stack[o];this.confirmTransition(s,function(){var l=n.current;n.index=o,n.updateRoute(s),n.router.afterHooks.forEach(function(_){_&&_(s,l)})},function(l){C0(l,ct.duplicated)&&(n.index=o)})}},a.prototype.getCurrentLocation=function(){var i=this.stack[this.stack.length-1];return i?i.fullPath:"/"},a.prototype.ensureURL=function(){},a}(sa),Ee=function(e){e===void 0&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Mm(e.routes||[],this);var a=e.mode||"hash";switch(this.fallback=a==="history"&&!za&&e.fallback!==!1,this.fallback&&(a="hash"),fi||(a="abstract"),this.mode=a,a){case"history":this.history=new Cl(this,e.base);break;case"hash":this.history=new Ol(this,e.base,this.fallback);break;case"abstract":this.history=new op(this,e.base);break}},Ps={currentRoute:{configurable:!0}};Ee.prototype.match=function(e,a,i){return this.matcher.match(e,a,i)},Ps.currentRoute.get=function(){return this.history&&this.history.current},Ee.prototype.init=function(e){var a=this;if(this.apps.push(e),e.$once("hook:destroyed",function(){var s=a.apps.indexOf(e);s>-1&&a.apps.splice(s,1),a.app===e&&(a.app=a.apps[0]||null),a.app||a.history.teardown()}),!this.app){this.app=e;var i=this.history;if(i instanceof Cl||i instanceof Ol){var n=function(s){var l=i.current,_=a.options.scrollBehavior,r=za&&_;r&&"fullPath"in s&&Ua(a,s,l,!1)},o=function(s){i.setupListeners(),n(s)};i.transitionTo(i.getCurrentLocation(),o,o)}i.listen(function(s){a.apps.forEach(function(l){l._route=s})})}},Ee.prototype.beforeEach=function(e){return hn(this.beforeHooks,e)},Ee.prototype.beforeResolve=function(e){return hn(this.resolveHooks,e)},Ee.prototype.afterEach=function(e){return hn(this.afterHooks,e)},Ee.prototype.onReady=function(e,a){this.history.onReady(e,a)},Ee.prototype.onError=function(e){this.history.onError(e)},Ee.prototype.push=function(e,a,i){var n=this;if(!a&&!i&&typeof Promise<"u")return new Promise(function(o,s){n.history.push(e,o,s)});this.history.push(e,a,i)},Ee.prototype.replace=function(e,a,i){var n=this;if(!a&&!i&&typeof Promise<"u")return new Promise(function(o,s){n.history.replace(e,o,s)});this.history.replace(e,a,i)},Ee.prototype.go=function(e){this.history.go(e)},Ee.prototype.back=function(){this.go(-1)},Ee.prototype.forward=function(){this.go(1)},Ee.prototype.getMatchedComponents=function(e){var a=e?e.matched?e:this.resolve(e).route:this.currentRoute;return a?[].concat.apply([],a.matched.map(function(i){return Object.keys(i.components).map(function(n){return i.components[n]})})):[]},Ee.prototype.resolve=function(e,a,i){a=a||this.history.current;var n=Do(e,a,i,this),o=this.match(n,a),s=o.redirectedFrom||o.fullPath,l=this.history.base,_=sp(l,s,this.mode);return{location:n,route:o,href:_,normalizedTo:n,resolved:o}},Ee.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ee.prototype.addRoute=function(e,a){this.matcher.addRoute(e,a),this.history.current!==Ka&&this.history.transitionTo(this.history.getCurrentLocation())},Ee.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==Ka&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ee.prototype,Ps);function hn(e,a){return e.push(a),function(){var i=e.indexOf(a);i>-1&&e.splice(i,1)}}function sp(e,a,i){var n=i==="hash"?"#"+a:a;return e?Ga(e+"/"+n):n}Ee.install=Mn,Ee.version="3.6.5",Ee.isNavigationFailure=C0,Ee.NavigationFailureType=ct,Ee.START_LOCATION=Ka,fi&&window.Vue&&window.Vue.use(Ee),oe(j1);const rp=3*60*1e3,lp={name:"NcReferenceWidget",components:{NcButton:Ja},props:{reference:{type:Object,required:!0},interactive:{type:Boolean,default:!0},interactiveOptIn:{type:Boolean,default:!1}},setup(){const e=Ia(!1),a=Ia(),{width:i}=Qs(a);return P1(a,([n])=>{D1(()=>{e.value=n.isIntersecting})}),{width:i,isVisible:e,widgetRoot:a}},data(){return{showInteractive:!1,rendered:!1,idleTimeout:null}},computed:{isInteractive(){return!this.interactiveOptIn&&this.interactive||this.showInteractive},hasFullWidth(){return Xc(this.reference.richObjectType)},hasCustomWidget(){return Ss(this.reference.richObjectType)},hasInteractiveView(){return Ss(this.reference.richObjectType)&&Jc(this.reference.richObjectType)},noAccess(){return this.reference&&!this.reference.accessible},descriptionStyle(){if(this.numberOfLines===0)return{display:"none"};const e=this.numberOfLines;return{lineClamp:e,webkitLineClamp:e}},numberOfLines(){return[450,550,650,1/0].findIndex(e=>this.width{this.isVisible||this.destroyWidget()},rp);return}this.idleTimeout&&(clearTimeout(this.idleTimeout),this.idleTimeout=null),this.rendered||this.renderWidget()},immediate:!0}},beforeDestroy(){this.destroyWidget()},methods:{t:x,enableInteractive(){this.showInteractive=!0,this.renderWidget()},renderWidget(){if(!this.$refs.customWidget||this?.reference?.richObjectType==="open-graph")return;this.$refs.customWidget.innerHTML="";const e=document.createElement("div");e.style="width: 100%;",this.$refs.customWidget.appendChild(e),this.$nextTick(()=>{am(e,{...this.reference,interactive:this.isInteractive}),this.rendered=!0})},destroyWidget(){this.rendered&&(tm(this.reference.richObjectType,this.$el),this.rendered=!1)}}};var _p=function(){var e=this,a=e._self._c;return a("div",{ref:"widgetRoot",class:{"toggle-interactive":e.hasInteractiveView&&!e.isInteractive}},[e.reference&&e.hasCustomWidget?a("div",{ref:"customWidget",staticClass:"widget-custom",class:{"full-width":e.hasFullWidth}}):!e.noAccess&&e.reference&&e.reference.openGraphObject&&!e.hasCustomWidget?a(e.referenceWidgetLinkComponent,e._b({tag:"component",staticClass:"widget-default",attrs:{rel:"noopener noreferrer"}},"component",e.referenceWidgetLinkProps,!1),[e.reference.openGraphObject.thumb?a("img",{staticClass:"widget-default--image",attrs:{src:e.reference.openGraphObject.thumb}}):e._e(),a("div",{staticClass:"widget-default--details"},[a("p",{staticClass:"widget-default--name"},[e._v(" "+e._s(e.reference.openGraphObject.name)+" ")]),a("p",{staticClass:"widget-default--description",style:e.descriptionStyle},[e._v(" "+e._s(e.reference.openGraphObject.description)+" ")]),a("p",{staticClass:"widget-default--link"},[e._v(" "+e._s(e.compactLink)+" ")])])]):e._e(),e.interactiveOptIn&&e.hasInteractiveView&&!e.isInteractive?a("NcButton",{staticClass:"toggle-interactive--button",on:{click:e.enableInteractive}},[e._v(" "+e._s(e.t("Enable interactive view"))+" ")]):e._e()],1)},dp=[],fp=ie(lp,_p,dp,!1,null,"ea9434d3");const gp=fp.exports,hp={name:"NcCustomPickerElement",props:{provider:{type:Object,required:!0}},emits:["cancel","submit"],data(){return{isRegistered:li(this.provider.id),renderResult:null}},mounted(){this.isRegistered&&this.renderElement()},beforeDestroy(){this.isRegistered&&sm(this.provider.id,this.$el,this.renderResult)},methods:{renderElement(){this.$refs.domElement&&(this.$refs.domElement.innerHTML="");const e=om(this.$refs.domElement,{providerId:this.provider.id,accessible:!1});Promise.resolve(e).then(a=>{this.renderResult=a,this.renderResult.object?._isVue&&this.renderResult.object?.$on&&(this.renderResult.object.$on("submit",this.onSubmit),this.renderResult.object.$on("cancel",this.onCancel)),this.renderResult.element.addEventListener("submit",i=>{this.onSubmit(i.detail)}),this.renderResult.element.addEventListener("cancel",this.onCancel)})},onSubmit(e){this.$emit("submit",e)},onCancel(){this.$emit("cancel")}}};var Fp=function(){var e=this,a=e._self._c;return a("div",{ref:"domElement"})},up=[],cp=ie(hp,Fp,up,!1,null,"de9850e4");const mp=cp.exports;oe(Y1);const pp="any-link",bp={id:pp,title:x("Any link"),icon_url:rr("core","filetypes/link.svg")};window._vue_richtext_reference_providers||(window._vue_richtext_reference_providers=Xt("core","reference-provider-list",[])),window._vue_richtext_reference_provider_timestamps||(window._vue_richtext_reference_provider_timestamps=Xt("core","reference-provider-timestamps",{}));function Dp(){return window._vue_richtext_reference_providers.filter(e=>{const a=!!e.search_providers_ids&&e.search_providers_ids.length>0||li(e.id);return a||console.debug("[smart picker]",e.id,"reference provider is discoverable but does not have any related search provider or custom picker component registered"),a})}function Tp(e){const a=window._vue_richtext_reference_provider_timestamps;return e.sort((i,n)=>i.order===n.order?0:i.order>n.order?1:-1).sort((i,n)=>{const o=a[i.id],s=a[n.id];return o===s?0:s===void 0?-1:o===void 0?1:o>s?-1:1})}function yp(e,a=null){const i=Dp(),n=e.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&"),o=new RegExp(n,"i"),s=Tp(i).filter(_=>_.title.match(o)),l=a?s.slice(0,a):s;return(e===""||l.length===0)&&l.push(bp),l}function Ep(e){const a=Math.floor(Date.now()/1e3),i={timestamp:a},n=Va("references/provider/{providerId}",{providerId:e});pa.put(n,i).then(o=>{window._vue_richtext_reference_provider_timestamps[e]=a})}let Gs=0;function Bl(e,a){return function(){const i=this,n=arguments;clearTimeout(Gs),Gs=setTimeout(function(){e.apply(i,n)},a)}}function yo(e){try{return!!new URL(e)}catch{return!1}}oe(lr,q1);const kp={name:"LinkVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ap=function(){var e=this,a=e._self._c;return a("span",e._b({staticClass:"material-design-icon link-variant-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(i){return e.$emit("click",i)}}},"span",e.$attrs,!1),[a("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[a("path",{attrs:{d:"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z"}},[e.title?a("title",[e._v(e._s(e.title))]):e._e()])])])},wp=[],Sp=ie(kp,Ap,wp,!1,null,null);const Eo=Sp.exports,vp={name:"NcProviderList",components:{NcSelect:L0,NcHighlight:Y0,NcEmptyContent:co,LinkVariantIcon:Eo},emits:["select-provider","submit"],data(){return{selectedProvider:null,query:"",multiselectPlaceholder:x("Select provider"),providerIconAlt:x("Provider icon")}},computed:{options(){const e=[];return this.query!==""&&yo(this.query)&&e.push({id:this.query,title:this.query,isLink:!0}),e.push(...yp(this.query)),e}},methods:{focus(){setTimeout(()=>{this.$refs["provider-select"]?.$el?.querySelector("#provider-select-input")?.focus()},300)},onProviderSelected(e){e!==null&&(e.isLink?this.$emit("submit",e.title):this.$emit("select-provider",e),this.selectedProvider=null)},onSearch(e,a){this.query=e}}};var Rp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"provider-list"},[a("NcSelect",{ref:"provider-select",staticClass:"provider-list--select",attrs:{"input-id":"provider-select-input",label:"title",placeholder:e.multiselectPlaceholder,options:e.options,"append-to-body":!1,"clear-search-on-select":!0,"clear-search-on-blur":()=>!1,filterable:!1},on:{search:e.onSearch,input:e.onProviderSelected},scopedSlots:e._u([{key:"option",fn:function(i){return[i.isLink?a("div",{staticClass:"provider"},[a("LinkVariantIcon",{staticClass:"link-icon",attrs:{size:20}}),a("span",[e._v(e._s(i.title))])],1):a("div",{staticClass:"provider"},[a("img",{staticClass:"provider-icon",attrs:{src:i.icon_url,alt:e.providerIconAlt}}),a("NcHighlight",{staticClass:"option-text",attrs:{search:e.query,text:i.title}})],1)]}}]),model:{value:e.selectedProvider,callback:function(i){e.selectedProvider=i},expression:"selectedProvider"}}),a("NcEmptyContent",{staticClass:"provider-list--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[a("LinkVariantIcon")]},proxy:!0}])})],1)},Cp=[],Op=ie(vp,Rp,Cp,!1,null,"e54e09d6");const Bp=Op.exports;oe(L1);const Np={name:"NcRawLinkInput",components:{LinkVariantIcon:Eo,NcEmptyContent:co,NcLoadingIcon:O0,NcReferenceWidget:gp,NcTextField:qu},props:{provider:{type:Object,required:!0}},emits:["submit"],data(){return{inputValue:"",loading:!1,reference:null,abortController:null,inputPlaceholder:x("Enter link")}},computed:{isLinkValid(){return yo(this.inputValue)}},methods:{focus(){this.$refs["url-input"].$el.getElementsByTagName("input")[0]?.focus()},onSubmit(e){const a=e.target.value;this.isLinkValid&&this.$emit("submit",a)},onClear(){this.inputValue="",this.reference=null},onInput(){this.reference=null,this.abortController&&this.abortController.abort(),this.isLinkValid&&Bl(()=>{this.updateReference()},500)()},updateReference(){this.loading=!0,this.abortController=new AbortController,pa.get(Va("references/resolve",2)+"?reference="+encodeURIComponent(this.inputValue),{signal:this.abortController.signal}).then(e=>{this.reference=e.data.ocs.data.references[this.inputValue]}).catch(e=>{console.error(e)}).then(()=>{this.loading=!1})}}};var xp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"raw-link"},[a("div",{staticClass:"input-wrapper"},[a("NcTextField",{ref:"url-input",attrs:{value:e.inputValue,"show-trailing-button":e.inputValue!=="",label:e.inputPlaceholder},on:{"update:value":[function(i){e.inputValue=i},e.onInput],"trailing-button-click":e.onClear},nativeOn:{keyup:function(i){return!i.type.indexOf("key")&&e._k(i.keyCode,"enter",13,i.key,"Enter")?null:e.onSubmit.apply(null,arguments)}}},[e.loading?a("NcLoadingIcon",{attrs:{size:16}}):a("LinkVariantIcon",{attrs:{size:16}})],1)],1),e.reference!==null?a("NcReferenceWidget",{staticClass:"reference-widget",attrs:{reference:e.reference}}):a("NcEmptyContent",{staticClass:"raw-link--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?a("img",{staticClass:"provider-icon",attrs:{src:e.provider.icon_url}}):a("LinkVariantIcon")]},proxy:!0}])})],1)},Mp=[],jp=ie(Np,xp,Mp,!1,null,"3c1803b5");const Yp=jp.exports,qp={name:"NcSearchResult",components:{NcHighlight:Y0},props:{entry:{type:Object,required:!0},query:{type:String,required:!0}}};var Lp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"result"},[e.entry.icon?a("div",{staticClass:"result--icon-class",class:{[e.entry.icon]:!0,rounded:e.entry.rounded}}):a("img",{staticClass:"result--image",class:{rounded:e.entry.rounded},attrs:{src:e.entry.thumbnailUrl}}),a("div",{staticClass:"result--content"},[a("span",{staticClass:"result--content--name"},[a("NcHighlight",{attrs:{search:e.query,text:e.entry.title}})],1),a("span",{staticClass:"result--content--subline"},[a("NcHighlight",{attrs:{search:e.query,text:e.entry.subline}})],1)])])},Zp=[],Ip=ie(qp,Lp,Zp,!1,null,"8571023b");const Hp=Ip.exports;oe(Z1,lr,or);const Us=5,Pp={name:"NcSearch",components:{LinkVariantIcon:Eo,DotsHorizontalIcon:In,NcEmptyContent:co,NcSelect:L0,NcSearchResult:Hp},props:{provider:{type:Object,required:!0},showEmptyContent:{type:Boolean,default:!0},searchPlaceholder:{type:String,default:null}},emits:["submit"],data(){return{searchQuery:"",selectedResult:null,resultsBySearchProvider:{},searching:!1,searchingMoreOf:null,abortController:null,noOptionsText:x("Start typing to search"),providerIconAlt:x("Provider icon")}},computed:{mySearchPlaceholder(){return this.searchPlaceholder||x("Search")},searchProviderIds(){return this.provider.search_providers_ids},options(){if(this.searchQuery==="")return[];const e=[];return yo(this.searchQuery)&&e.push(this.rawLinkEntry),e.push(...this.formattedSearchResults),e},rawLinkEntry(){return{id:"rawLinkEntry",resourceUrl:this.searchQuery,isRawLink:!0}},formattedSearchResults(){const e=[];return this.searchProviderIds.forEach(a=>{if(this.resultsBySearchProvider[a].entries.length>0){(this.searchProviderIds.length>1||this.resultsBySearchProvider[a].entries.length>1)&&e.push({id:"groupTitle-"+a,name:this.resultsBySearchProvider[a].name,isCustomGroupTitle:!0,providerId:a});const i=this.resultsBySearchProvider[a].entries.map((n,o)=>({id:"provider-"+a+"-entry-"+o,...n}));e.push(...i),this.resultsBySearchProvider[a].isPaginated&&e.push({id:"moreOf-"+a,name:this.resultsBySearchProvider[a].name,isMore:!0,providerId:a,isLoading:this.searchingMoreOf===a})}}),e}},mounted(){this.resetResults()},beforeDestroy(){this.cancelSearchRequests()},methods:{t:x,resetResults(){const e={};this.searchProviderIds.forEach(a=>{e[a]={entries:[]}}),this.resultsBySearchProvider=e},focus(){setTimeout(()=>{this.$refs["search-select"]?.$el?.querySelector("#search-select-input")?.focus()},300)},cancelSearchRequests(){this.abortController&&this.abortController.abort()},onSearchInput(e,a){this.searchQuery=e,Bl(()=>{this.updateSearch()},500)()},onSelectResultSelected(e){e!==null&&(e.resourceUrl?(this.cancelSearchRequests(),this.$emit("submit",e.resourceUrl)):e.isMore&&this.searchMoreOf(e.providerId).then(()=>{this.selectedResult=null}))},searchMoreOf(e){return this.searchingMoreOf=e,this.cancelSearchRequests(),this.searchProviders(e)},updateSearch(){if(this.cancelSearchRequests(),this.resetResults(),this.searchQuery===""){this.searching=!1;return}return this.searchProviders()},searchProviders(e=null){this.abortController=new AbortController,this.searching=!0;const a=e===null?[...this.searchProviderIds].map(i=>this.searchOneProvider(i)):[this.searchOneProvider(e,this.resultsBySearchProvider[e]?.cursor??null)];return Promise.allSettled(a).then(i=>{i.find(n=>n.status==="rejected"&&(n.reason.name==="CanceledError"||n.reason.code==="ERR_CANCELED"))||(this.searching=!1,this.searchingMoreOf=null)})},searchOneProvider(e,a=null){const i=a===null?Va("search/providers/{providerId}/search?term={term}&limit={limit}",{providerId:e,term:this.searchQuery,limit:Us}):Va("search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}",{providerId:e,term:this.searchQuery,limit:Us,cursor:a});return pa.get(i,{signal:this.abortController.signal}).then(n=>{const o=n.data.ocs.data;this.resultsBySearchProvider[e].name=o.name,this.resultsBySearchProvider[e].cursor=o.cursor,this.resultsBySearchProvider[e].isPaginated=o.isPaginated,this.resultsBySearchProvider[e].entries.push(...o.entries)})}}};var Gp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"smart-picker-search",class:{"with-empty-content":e.showEmptyContent}},[a("NcSelect",{ref:"search-select",staticClass:"smart-picker-search--select",attrs:{"input-id":"search-select-input",label:"name",placeholder:e.mySearchPlaceholder,options:e.options,"append-to-body":!1,"close-on-select":!1,"clear-search-on-select":!1,"clear-search-on-blur":()=>!1,"reset-focus-on-options-change":!1,filterable:!1,autoscroll:!0,"reset-on-options-change":!1,loading:e.searching},on:{search:e.onSearchInput,input:e.onSelectResultSelected},scopedSlots:e._u([{key:"option",fn:function(i){return[i.isRawLink?a("div",{staticClass:"custom-option"},[a("LinkVariantIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),a("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t("Raw link {options}",{options:i.resourceUrl}))+" ")])],1):i.resourceUrl?a("NcSearchResult",{staticClass:"search-result",attrs:{entry:i,query:e.searchQuery}}):i.isCustomGroupTitle?a("span",{staticClass:"custom-option group-name"},[e.provider.icon_url?a("img",{staticClass:"provider-icon group-name-icon",attrs:{src:e.provider.icon_url}}):e._e(),a("span",{staticClass:"option-text"},[a("strong",[e._v(e._s(i.name))])])]):i.isMore?a("span",{class:{"custom-option":!0}},[i.isLoading?a("span",{staticClass:"option-simple-icon icon-loading-small"}):a("DotsHorizontalIcon",{staticClass:"option-simple-icon",attrs:{size:20}}),a("span",{staticClass:"option-text"},[e._v(" "+e._s(e.t('Load more "{options}"',{options:i.name}))+" ")])],1):e._e()]}},{key:"no-options",fn:function(){return[e._v(" "+e._s(e.noOptionsText)+" ")]},proxy:!0}]),model:{value:e.selectedResult,callback:function(i){e.selectedResult=i},expression:"selectedResult"}}),e.showEmptyContent?a("NcEmptyContent",{staticClass:"smart-picker-search--empty-content",scopedSlots:e._u([{key:"icon",fn:function(){return[e.provider.icon_url?a("img",{staticClass:"provider-icon",attrs:{alt:e.providerIconAlt,src:e.provider.icon_url}}):a("LinkVariantIcon")]},proxy:!0}],null,!1,2922132592)}):e._e()],1)},Up=[],zp=ie(Pp,Gp,Up,!1,null,"05fef988");const Vp=zp.exports,Lt={providerList:1,standardLinkInput:2,searchInput:3,customElement:4},$p={name:"NcReferencePicker",components:{NcCustomPickerElement:mp,NcProviderList:Bp,NcRawLinkInput:Yp,NcSearch:Vp},props:{initialProvider:{type:Object,default:()=>null},width:{type:Number,default:null},focusOnCreate:{type:Boolean,default:!0}},emits:["cancel","cancel-raw-link","cancel-search","provider-selected","submit"],data(){return{MODES:Lt,selectedProvider:this.initialProvider}},computed:{mode(){return this.selectedProvider===null?Lt.providerList:li(this.selectedProvider.id)?Lt.customElement:this.selectedProvider.search_providers_ids?Lt.searchInput:Lt.standardLinkInput},pickerWrapperStyle(){return{width:this.width?this.width+"px":void 0}}},mounted(){this.focusOnCreate&&(this.initialProvider?setTimeout(()=>{this.$refs["url-input"]?.focus()},300):this.$nextTick(()=>{this.$refs["provider-list"]?.focus()}))},methods:{onEscapePressed(){this.selectedProvider!==null?this.deselectProvider():this.cancelProviderSelection()},onProviderSelected(e){this.selectedProvider=e,this.$emit("provider-selected",e),this.$nextTick(()=>{this.$refs["url-input"]?.focus()})},cancelCustomElement(){this.deselectProvider()},cancelSearch(){this.$emit("cancel-search",this.selectedProvider?.title),this.deselectProvider()},cancelRawLinkInput(){this.$emit("cancel-raw-link",this.selectedProvider?.title),this.deselectProvider()},cancelProviderSelection(){this.$emit("cancel")},submitLink(e){this.selectedProvider!==null&&Ep(this.selectedProvider.id),this.$emit("submit",e),this.deselectProvider()},deselectProvider(){this.selectedProvider=null,this.$emit("provider-selected",null),setTimeout(()=>{this.$refs["provider-list"]?.focus()},300)}}};var Wp=function(){var e=this,a=e._self._c;return a("div",{staticClass:"reference-picker",style:e.pickerWrapperStyle,attrs:{tabindex:"-1"},on:{keydown:function(i){return!i.type.indexOf("key")&&e._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])?null:(i.stopPropagation(),i.preventDefault(),e.onEscapePressed.apply(null,arguments))}}},[e.mode===e.MODES.providerList?a("NcProviderList",{ref:"provider-list",on:{"select-provider":e.onProviderSelected,submit:e.submitLink,cancel:e.cancelProviderSelection}}):e.mode===e.MODES.standardLinkInput?a("NcRawLinkInput",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelRawLinkInput}}):e.mode===e.MODES.searchInput?a("NcSearch",{ref:"url-input",attrs:{provider:e.selectedProvider},on:{cancel:e.cancelSearch,submit:e.submitLink}}):e.mode===e.MODES.customElement?a("div",{staticClass:"custom-element-wrapper"},[a("NcCustomPickerElement",{staticClass:"custom-element",attrs:{provider:e.selectedProvider},on:{submit:e.submitLink,cancel:e.cancelCustomElement}})],1):e._e()],1)},Qp=[],Kp=ie($p,Wp,Qp,!1,null,"cd33df8e");const Jp=Kp.exports;oe(H1,I1);const Xp={name:"NcReferencePickerModal",components:{NcReferencePicker:Jp,NcModal:Ws,NcButton:Ja,ArrowLeftIcon:rl,CloseIcon:Pn},props:{initialProvider:{type:Object,default:()=>null},focusOnCreate:{type:Boolean,default:!0},isInsideViewer:{type:Boolean,default:!1}},emits:["cancel","submit"],data(){return{show:!0,selectedProvider:this.initialProvider,backButtonTitle:x("Back to provider selection"),closeButtonTitle:x("Close"),closeButtonLabel:x("Close Smart Picker")}},computed:{isProviderSelected(){return this.selectedProvider!==null},showBackButton(){return this.initialProvider===null&&this.isProviderSelected},modalSize(){return this.isProviderSelected&&li(this.selectedProvider.id)?im(this.selectedProvider.id)??"large":"normal"},showModalName(){return!this.isProviderSelected||!li(this.selectedProvider.id)},modalName(){return this.isProviderSelected?this.selectedProvider.title:x("Smart Picker")}},mounted(){if(this.isInsideViewer){const e=this.$refs.modal_content;Ci("viewer:trapElements:changed",e)}},methods:{onCancel(){this.show=!1,this.$emit("cancel")},onSubmit(e){this.show=!1,this.$emit("submit",e)},onProviderSelect(e){this.selectedProvider=e,e===null&&this.initialProvider!==null&&this.onCancel()},onBackClicked(){this.$refs.referencePicker.deselectProvider()}}};var e2=function(){var e=this,a=e._self._c;return e.show?a("NcModal",{staticClass:"reference-picker-modal",attrs:{size:e.modalSize,"can-close":!0},on:{close:e.onCancel}},[a("div",{ref:"modal_content",staticClass:"reference-picker-modal--content"},[e.showBackButton?a("NcButton",{staticClass:"back-button",attrs:{"aria-label":e.backButtonTitle,title:e.backButtonTitle},on:{click:e.onBackClicked},scopedSlots:e._u([{key:"icon",fn:function(){return[a("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)}):e._e(),a("NcButton",{staticClass:"close-button",attrs:{"aria-label":e.closeButtonLabel,title:e.closeButtonTitle,type:"tertiary"},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[a("CloseIcon")]},proxy:!0}],null,!1,2491825086)}),e.showModalName?a("h2",[e._v(" "+e._s(e.modalName)+" ")]):e._e(),a("NcReferencePicker",{ref:"referencePicker",attrs:{"initial-provider":e.initialProvider,"focus-on-create":e.focusOnCreate},on:{"provider-selected":e.onProviderSelect,submit:e.onSubmit,cancel:e.onCancel}})],1)]):e._e()},a2=[],t2=ie(Xp,e2,a2,!1,null,"a742c4c2");const u3=t2.exports;if(Ia(!1),Array.prototype.find||(Array.prototype.find=function(e){if(this===null)throw new TypeError("Array.prototype.find called on null or undefined");if(typeof e!="function")throw new TypeError("predicate must be a function");for(var a=Object(this),i=a.length>>>0,n=arguments[1],o,s=0;s<~]))"].join("|");return new RegExp(a,e?void 0:"g")}const c3=i2();const n2={name:"NcAutoCompleteResult",components:{NcUserStatusIcon:Nr},props:{title:{type:String,required:!1,default:null},label:{type:String,required:!1,default:null},subline:{type:String,default:null},id:{type:String,default:null},icon:{type:String,required:!0},iconUrl:{type:String,default:null},source:{type:String,required:!0},status:{type:[Object,Array],default:()=>({})}},computed:{avatarUrl(){return this.iconUrl?this.iconUrl:this.id&&this.source==="users"?this.getAvatarUrl(this.id,44):null},labelWithFallback(){return this.label||this.title}},methods:{getAvatarUrl:to}};var o2=function(){var e=this,a=e._self._c;return a("div",{staticClass:"autocomplete-result"},[a("div",{staticClass:"autocomplete-result__icon",class:[e.icon,`autocomplete-result__icon--${e.avatarUrl?"with-avatar":""}`],style:e.avatarUrl?{backgroundImage:`url(${e.avatarUrl})`}:null},[e.status.icon?a("span",{staticClass:"autocomplete-result__status autocomplete-result__status--icon"},[e._v(" "+e._s(e.status&&e.status.icon||"")+" ")]):e.status.status&&e.status.status!=="offline"?a("NcUserStatusIcon",{staticClass:"autocomplete-result__status",attrs:{status:e.status.status}}):e._e()],1),a("span",{staticClass:"autocomplete-result__content"},[a("span",{staticClass:"autocomplete-result__title",attrs:{title:e.labelWithFallback}},[e._v(" "+e._s(e.labelWithFallback)+" ")]),e.subline?a("span",{staticClass:"autocomplete-result__subline"},[e._v(" "+e._s(e.subline)+" ")]):e._e()])])},s2=[],r2=ie(n2,o2,s2,!1,null,"98c79945");const m3=r2.exports;oe(U1,sr);const l2=["d","D","p","P","s","S","x","X",")","(","|","/"],zs=[];l2.forEach(e=>{zs.push(":"+e),zs.push(":-"+e)}),G1,x("Write a message …");oe(z1),{...L0.props,placeholder:x("Select a tag")},oe(ir),oe(V1),oe($1),x,Un(function(e){this.loadGroup(e)},200),window.OCP?.Accessibility?.disableKeyboardShortcuts?.();function _2(e=document.body){const a=window.getComputedStyle(e).getPropertyValue("--background-invert-if-dark");return a!==void 0?a==="invert(100%)":!1}_2();const Si={name:N("viewer","Name"),save:N("viewer","Save"),saveAs:N("viewer","Save as"),back:N("viewer","Back"),loading:N("viewer","Loading …"),resetOperations:N("viewer","Reset"),changesLoseWarningHint:N("viewer","All changes will be lost."),discardChangesWarningHint:N("viewer","Are you sure you want to continue?"),cancel:N("viewer","Cancel"),apply:N("viewer","Apply"),warning:N("viewer","Warning"),confirm:N("viewer","Confirm"),discardChanges:N("viewer","Discard changes"),undoTitle:N("viewer","Undo"),redoTitle:N("viewer","Redo"),showImageTitle:N("viewer","Show original image"),zoomInTitle:N("viewer","Zoom in"),zoomOutTitle:N("viewer","Zoom out"),toggleZoomMenuTitle:N("viewer","Toggle zoom menu"),adjustTab:N("viewer","Adjust"),finetuneTab:N("viewer","Fine-tune"),filtersTab:N("viewer","Filters"),watermarkTab:N("viewer","Watermark"),annotateTabLabel:N("viewer","Draw"),resize:N("viewer","Resize"),resizeTab:N("viewer","Resize"),imageName:N("viewer","Image name"),invalidImageError:N("viewer","Invalid image."),uploadImageError:N("viewer","Error while uploading the image."),areNotImages:N("viewer","are not images"),isNotImage:N("viewer","is not an image"),toBeUploaded:N("viewer","to be uploaded"),cropTool:N("viewer","Crop"),original:N("viewer","Original"),custom:N("viewer","Custom"),square:N("viewer","Square"),landscape:N("viewer","Landscape"),portrait:N("viewer","Portrait"),ellipse:N("viewer","Ellipse"),classicTv:N("viewer","Classic TV"),cinemascope:N("viewer","CinemaScope"),arrowTool:N("viewer","Arrow"),blurTool:N("viewer","Blur"),brightnessTool:N("viewer","Brightness"),contrastTool:N("viewer","Contrast"),ellipseTool:N("viewer","Ellipse"),unFlipX:N("viewer","Un-flip X"),flipX:N("viewer","Flip X"),unFlipY:N("viewer","Un-flip Y"),flipY:N("viewer","Flip Y"),hsvTool:N("viewer","HSV"),hue:N("viewer","Hue"),brightness:N("viewer","Brightness"),saturation:N("viewer","Saturation"),value:N("viewer","Value"),imageTool:N("viewer","Image"),importing:N("viewer","Importing …"),addImage:N("viewer","+ Add image"),uploadImage:N("viewer","Upload image"),fromGallery:N("viewer","From gallery"),lineTool:N("viewer","Line"),penTool:N("viewer","Pen"),polygonTool:N("viewer","Polygon"),sides:N("viewer","Sides"),rectangleTool:N("viewer","Rectangle"),cornerRadius:N("viewer","Corner Radius"),resizeWidthTitle:N("viewer","Width in pixels"),resizeHeightTitle:N("viewer","Height in pixels"),toggleRatioLockTitle:N("viewer","Toggle ratio lock"),resetSize:N("viewer","Reset to original image size"),rotateTool:N("viewer","Rotate"),textTool:N("viewer","Text"),textSpacings:N("viewer","Text spacing"),textAlignment:N("viewer","Text alignment"),fontFamily:N("viewer","Font family"),size:N("viewer","Size"),letterSpacing:N("viewer","Letter spacing"),lineHeight:N("viewer","Line height"),warmthTool:N("viewer","Warmth"),addWatermark:N("viewer","+ Add watermark"),addTextWatermark:N("viewer","+ Add text watermark"),addWatermarkTitle:N("viewer","Choose watermark type"),uploadWatermark:N("viewer","Upload watermark"),addWatermarkAsText:N("viewer","Add as text"),padding:N("viewer","Padding"),paddings:N("viewer","Paddings"),shadow:N("viewer","Shadow"),horizontal:N("viewer","Horizontal"),vertical:N("viewer","Vertical"),blur:N("viewer","Blur"),opacity:N("viewer","Opacity"),transparency:N("viewer","Transparency"),position:N("viewer","Position"),stroke:N("viewer","Stroke"),saveAsModalTitle:N("viewer","Save image as"),extension:N("viewer","Extension"),format:N("viewer","Format"),nameIsRequired:N("viewer","Name is required."),quality:N("viewer","Quality"),imageDimensionsHoverTitle:N("viewer","Saved image size (width x height)"),cropSizeLowerThanResizedWarning:N("viewer","Note that the selected crop area is lower than the applied resize which might cause quality decrease"),actualSize:N("viewer","Actual size (100%)"),fitSize:N("viewer","Fit size"),addImageTitle:N("viewer","Select image to add …"),mutualizedFailedToLoadImg:N("viewer","Failed to load image."),tabsMenu:N("viewer","Menu"),download:N("viewer","Download"),width:N("viewer","Width"),height:N("viewer","Height"),plus:"+",cropItemNoEffect:N("viewer","No preview available for this crop item")};let vi,Vs;const d2={name:"ImageEditor",props:{fileid:{type:[String,Number],required:!0},mime:{type:String,required:!0},src:{type:String,required:!0}},data(){return{imageEditor:null}},computed:{config(){return{source:this.src,defaultSavedImageName:this.defaultSavedImageName,defaultSavedImageType:this.defaultSavedImageType,useBackendTranslations:!1,observePluginContainerSize:!0,defaultTabId:vi.ADJUST,defaultToolId:Vs.CROP,tabsIds:Object.values(vi).filter(e=>e!==vi.WATERMARK).sort((e,a)=>e.localeCompare(a)),onClose:this.onClose,onSave:this.onSave,translations:Si,theme:{palette:{"bg-secondary":"var(--color-main-background)","bg-primary":"var(--color-background-dark)","bg-hover":"var(--color-background-hover)","bg-stateless":"var(--color-background-dark)","accent-primary":"var(--color-primary-element)","accent-stateless":"var(--color-primary-element)","border-active-bottom":"var(--color-primary-element)","bg-primary-active":"var(--color-background-dark)","bg-primary-hover":"var(--color-background-hover)","accent-primary-active":"var(--color-main-text)","accent-primary-hover":"var(--color-primary-element)",warning:"var(--color-error)"},typography:{fontFamily:"var(--font-face)"}}}},defaultSavedImageName(){return qt.basename(this.src,qt.extname(this.src))},defaultSavedImageType(){return qt.extname(this.src).slice(1)||"jpeg"},hasHighContrastEnabled(){return(OCA?.Theming?.enabledThemes||[]).find(e=>e.indexOf("highcontrast")!==-1)},themeDataAttr(){return this.hasHighContrastEnabled?{"data-theme-dark-highcontrast":!0}:{"data-theme-dark":!0}}},async mounted(){const e=(await zn(async()=>{const{default:a}=await import("./index-CZ02cfFW.chunk.mjs");return{default:a}},__vite__mapDeps([0,1,2]),import.meta.url)).default;vi=e.TABS,Vs=e.TOOLS,this.imageEditor=new e(this.$refs.editor,this.config),this.imageEditor.render(),window.addEventListener("keydown",this.handleKeydown,!0),window.addEventListener("DOMNodeInserted",this.handleSfxModal)},beforeDestroy(){this.imageEditor&&this.imageEditor.terminate(),window.removeEventListener("keydown",this.handleKeydown,!0)},methods:{onClose(e,a){if(a){this.onExitWithoutSaving();return}window.removeEventListener("keydown",this.handleKeydown,!0),this.$emit("close")},async onSave({fullName:e,imageCanvas:a,mimeType:i,quality:n}){const{origin:o,pathname:s}=new URL(this.src),l=o+qt.join(qt.dirname(s),e);Ha.debug("Saving image...",{putUrl:l,src:this.src,fullName:e}),i=i.replace("jpg","jpeg"),n=Math.max(Math.min(n,1),0)||1;try{const _=await new Promise(f=>a.toBlob(f,i,n)),r=await pa.put(l,new File([_],e));if(Ha.info("Edited image saved!",{response:r}),W1(t("viewer","Image saved")),l!==this.src)Ci("files:node:created",{fileid:parseInt(r?.headers?.["oc-fileid"]?.split("oc")[0])||null});else{this.$emit("updated");const f=await Q1(o,decodeURI(s)),d=new K1({id:Number.parseInt(this.fileid),source:this.src,mtime:new Date(f.lastmod),...f,attributes:{...f,...f.props}});Ci("files:node:updated",d)}}catch(_){Ha.error("Error saving image",{error:_}),J1(t("viewer","Error saving image"))}},onExitWithoutSaving(){OC.dialogs.confirmDestructive(Si.changesLoseWarningHint+`
-`+Si.discardChangesWarningHint,t("viewer","Unsaved changes"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("viewer","Drop changes"),confirmClasses:"error",cancel:Si.cancel},e=>{e&&this.onClose("warning-ignored",!1)})},handleKeydown(e){e.key!=="Enter"&&e.stopImmediatePropagation(),e.key==="Escape"&&(e.preventDefault(),document.querySelector(".FIE_topbar-close-button").click()),e.ctrlKey&&e.key==="s"&&(e.preventDefault(),document.querySelector(".FIE_topbar-save-button").click()),e.ctrlKey&&e.key==="z"&&(e.preventDefault(),document.querySelector(".FIE_topbar-undo-button").click())},handleSfxModal(e){e.target?.classList&&e.target.classList.contains("SfxModal-Wrapper")&&Ci("viewer:trapElements:changed",e.target)}}};var d2=function(){var e=this,a=e._self._c;return a("div",e._b({ref:"editor",staticClass:"viewer__image-editor"},"div",e.themeDataAttr,!1))},f2=[],g2=_i(_2,d2,f2,!1,null,"9f30314d");const h2=g2.exports,F2=["jpg","jpeg","png"],u2=new RegExp(`\\.(${F2.join("|")})$`,"i");function c2(e,a){return a.find(i=>i.fileid===e)}function m2(e,a){return a.find(i=>i.filename!==e.filename&&i.basename.startsWith(e.name)&&u2.test(i.basename))}Sa.use(hr);const p2={name:"Images",components:{ImageEditor:h2,PlayCircleOutline:R_,NcLoadingIcon:O0},props:{canZoom:{type:Boolean,default:!1},editing:{type:Boolean,default:!1}},data(){return{dragging:!1,shiftX:0,shiftY:0,zoomRatio:1,fallback:!1,livePhotoCanBePlayed:!1}},computed:{src(){return this.source??this.davPath},zoomHeight(){return Math.round(this.height*this.zoomRatio)},zoomWidth(){return Math.round(this.width*this.zoomRatio)},alt(){return this.basename},imgStyle(){return this.zoomRatio===1?{}:{marginTop:Math.round(this.shiftY*2)+"px",marginLeft:Math.round(this.shiftX*2)+"px",height:this.zoomHeight+"px",width:this.zoomWidth+"px"}},livePhoto(){if(this.metadataFilesLivePhoto!==void 0)return c2(this.metadataFilesLivePhoto,this.fileList)},livePhotoSrc(){return this.livePhoto?.source??this.livePhotoDavPath},livePhotoDavPath(){return this.livePhoto?J1({filename:this.livePhoto.filename,basename:this.livePhoto.basename}):null}},asyncComputed:{data(){return this.mime==="image/svg+xml"?this.getBase64FromImage():this.mime==="image/gif"?this.src:this.source&&!this.hasPreview&&!this.previewUrl?this.source:this.fallback?this.src:this.previewPath}},watch:{active(e,a){e===!0&&a===!1?(this.resetZoom(),window.addEventListener("mouseout",this.dragEnd)):e===!1&&window.removeEventListener("mouseout",this.dragEnd)}},methods:{updateImgSize(){this.$refs.image?(this.naturalHeight=this.$refs.image.naturalHeight,this.naturalWidth=this.$refs.image.naturalWidth):this.$refs.video&&(this.naturalHeight=this.$refs.video.videoHeight,this.naturalWidth=this.$refs.video.videoWidth),this.updateHeightWidth(),this.doneLoading()},async getBase64FromImage(){const e=await pa.get(this.src);return`data:${this.mime};base64,${btoa(unescape(encodeURIComponent(e.data)))}`},updateZoom(e){if(!this.canZoom)return;e.stopPropagation(),e.preventDefault();const a=this.$refs.image??this.$refs.video,i=e.clientX-a.x-this.width*this.zoomRatio/2,n=e.clientY-a.y-this.height*this.zoomRatio/2,o=i/(this.width*this.zoomRatio),s=n/(this.height*this.zoomRatio),l=e.deltaY<0?Math.min(this.zoomRatio*1.1,5):Math.max(this.zoomRatio/1.1,1);if(l===1)return this.resetZoom();const _=this.width*l-this.width*this.zoomRatio,r=this.height*l-this.height*this.zoomRatio;this.disableSwipe(),this.shiftX=this.shiftX-o*_,this.shiftY=this.shiftY-s*r,this.zoomRatio=l},resetZoom(){this.enableSwipe(),this.zoomRatio=1,this.shiftX=0,this.shiftY=0},dragStart(e){const{pageX:a,pageY:i}=e;this.dragX=a,this.dragY=i,this.dragging=!0;const n=this.$refs.image??this.$refs.video;n.onmouseup=this.dragEnd,n.onmousemove=this.dragHandler},dragEnd(e){e.preventDefault(),this.dragging=!1;const a=this.$refs.image??this.$refs.video;a&&(a.onmouseup=null,a.onmousemove=null)},dragHandler(e){e.preventDefault();const{pageX:a,pageY:i}=e;if(this.dragging&&this.zoomRatio>1&&a>0&&i>0){const n=this.shiftX+(a-this.dragX),o=this.shiftY+(i-this.dragY),s=this.zoomWidth-this.width,l=this.zoomHeight-this.height;this.shiftX=Math.min(Math.max(n,-s/2),s/2),this.shiftY=Math.min(Math.max(o,-l/2),l/2),this.dragX=a,this.dragY=i}},onDblclick(){this.canZoom&&(this.zoomRatio>1?this.resetZoom():this.zoomRatio=1.3)},onClose(){this.$emit("update:editing",!1)},onFail(){this.fallback||(console.error(`Loading of file preview ${X1(this.src)} failed, falling back to original file`),this.fallback=!0)},doneLoadingLivePhoto(){this.livePhotoCanBePlayed=!0,this.doneLoading()},playLivePhoto(){this.livePhotoCanBePlayed&&this.$refs.video.play()},stopLivePhoto(){this.$refs.video.load()},t:N}};var b2=function(){var e=this,a=e._self._c;return a("div",{staticClass:"image_container"},[e.editing?a("ImageEditor",{attrs:{mime:e.mime,src:e.src,fileid:e.fileid},on:{close:e.onClose}}):e.data!==null?[e.livePhotoCanBePlayed?e._e():a("img",{ref:"image",class:{dragging:e.dragging,loaded:e.loaded,zoomed:e.zoomRatio!==1},style:e.imgStyle,attrs:{alt:e.alt,src:e.data},on:{"~!error":function(i){return i.preventDefault(),i.stopPropagation(),e.onFail.apply(null,arguments)},load:e.updateImgSize,wheel:e.updateZoom,dblclick:function(i){return i.preventDefault(),e.onDblclick.apply(null,arguments)},mousedown:function(i){return i.preventDefault(),e.dragStart.apply(null,arguments)}}}),e.livePhoto?[a("video",{directives:[{name:"show",rawName:"v-show",value:e.livePhotoCanBePlayed,expression:"livePhotoCanBePlayed"}],ref:"video",class:{dragging:e.dragging,loaded:e.loaded,zoomed:e.zoomRatio!==1},style:e.imgStyle,attrs:{playsinline:!0,poster:e.data,src:e.livePhotoSrc,preload:"metadata"},on:{canplaythrough:e.doneLoadingLivePhoto,loadedmetadata:e.updateImgSize,wheel:e.updateZoom,"~!error":function(i){return i.preventDefault(),i.stopPropagation(),e.onFail.apply(null,arguments)},dblclick:function(i){return i.preventDefault(),e.onDblclick.apply(null,arguments)},mousedown:function(i){return i.preventDefault(),e.dragStart.apply(null,arguments)},ended:e.stopLivePhoto}}),e.width!==0?a("button",{staticClass:"live-photo_play_button",style:{left:`calc(50% - ${e.width/2}px)`},attrs:{disabled:!e.livePhotoCanBePlayed,"aria-description":e.t("viewer","Play the live photo")},on:{click:e.playLivePhoto,pointerenter:e.playLivePhoto,focus:e.playLivePhoto,pointerleave:e.stopLivePhoto,blur:e.stopLivePhoto}},[e.livePhotoCanBePlayed?a("PlayCircleOutline"):a("NcLoadingIcon"),e._v(" "+e._s(e.t("viewer","LIVE"))+" ")],1):e._e()]:e._e()]:e._e()],2)},D2=[],T2=_i(p2,b2,D2,!1,null,"34ef602b");const y2=T2.exports,E2=Xt(Yl,"enabled_preview_providers",[]),Bl=["image/heic","image/heif","image/tiff","image/x-xbitmap","image/emf"],k2=["image/apng","image/bmp","image/gif","image/jpeg","image/png","image/svg+xml","image/webp","image/x-icon"],A2=()=>Bl.filter(e=>E2.findIndex(a=>{const i=new RegExp(a.replace(/^\/|\/$/g,""),"i");return e.match(i)})>-1),Nl=A2(),$s=Bl.filter(e=>!Nl.includes(e));$s.length>0&&Ha.warn("Some mimes were ignored because they are not enabled in the server previews config",{ignoredMimes:$s});const w2={id:"images",group:"media",mimes:[...k2,...Nl],component:y2},S2=()=>zn(()=>import("./index.esm-qAm1tkFs.chunk.mjs"),[],import.meta.url),v2=rr("viewer","blank.mp4"),R2={name:"Videos",components:{VuePlyr:S2},data(){return{isFullscreenButtonVisible:!1}},computed:{livePhotoPath(){const e=m2(this,this.fileList);if(e!==void 0)return e_(e)},player(){return this.$refs.plyr.player},options(){return{autoplay:this.active===!0,blankVideo:v2,controls:["play-large","play","progress","current-time","mute","volume","captions","settings","fullscreen"],loadSprite:!1,fullscreen:{iosNative:!0}}}},watch:{active(e,a){e===!0&&a===!1?this.player.play():e===!1&&a===!0&&this.player.pause()}},updated(){[...this.$el.querySelectorAll(".plyr__controls__item")].forEach(e=>{e.getAttribute("data-plyr")==="fullscreen"&&e.addEventListener("click",this.hideHeaderAndFooter),e?.addEventListener&&(e.addEventListener("mouseenter",this.disableSwipe),e.addEventListener("mouseleave",this.enableSwipe))})},beforeDestroy(){Ha.debug("Closing video stream",{filename:this.filename}),this.$refs.video?.pause?.(),this.player.stop(),this.player.destroy()},methods:{hideHeaderAndFooter(){this.isFullscreenButtonVisible=!this.isFullscreenButtonVisible,this.isFullscreenButtonVisible?(document.body.querySelector("main").classList.add("viewer__hidden-fullscreen"),document.body.querySelector("footer").classList.add("viewer__hidden-fullscreen")):(document.body.querySelector("main").classList.remove("viewer__hidden-fullscreen"),document.body.querySelector("footer").classList.remove("viewer__hidden-fullscreen"))},updateVideoSize(){this.naturalHeight=this.$refs.video?.videoHeight,this.naturalWidth=this.$refs.video?.videoWidth,this.updateHeightWidth()},donePlaying(){this.$refs.video.autoplay=!1,this.$refs.video.load()},onLoadedMetadata(){this.updateVideoSize(),this.active||this.player.stop()}}};var C2=function(){var e=this,a=e._self._c;return e.src?a("div",[a("VuePlyr",{ref:"plyr",style:{height:e.height+"px",width:e.width+"px"},attrs:{options:e.options}},[a("video",{ref:"video",attrs:{autoplay:e.active?!0:null,playsinline:!0,poster:e.livePhotoPath,src:e.src,preload:"metadata"},on:{ended:e.donePlaying,canplay:e.doneLoading,loadedmetadata:e.onLoadedMetadata}},[e._v(" "+e._s(e.t("viewer","Your browser does not support videos."))+" ")])])],1):e._e()},O2=[],B2=_i(R2,C2,O2,!1,null,"572afae3");const N2=B2.exports,x2={id:"videos",group:"media",mimes:["video/mpeg","video/ogg","video/webm","video/mp4","video/x-m4v","video/x-flv","video/quicktime"],mimesAliases:{"video/x-matroska":"video/webm"},component:N2},M2=()=>zn(()=>import("./index.esm-qAm1tkFs.chunk.mjs"),[],import.meta.url),j2={name:"Audios",components:{VuePlyr:M2},computed:{player(){return this.$refs.plyr.player},options(){return{autoplay:this.active===!0,blankVideo:"/blank.aac",controls:["play-large","play","progress","current-time","mute","volume","settings"],loadSprite:!1}}},watch:{active(e,a){e===!0&&a===!1?this.player.play():e===!1&&a===!0&&this.player.pause()}},mounted(){[...this.$el.querySelectorAll(".plyr__controls__item")].forEach(e=>{e?.addEventListener&&(e.addEventListener("mouseenter",this.disableSwipe),e.addEventListener("mouseleave",this.enableSwipe))})},beforeDestroy(){Ha.debug("Closing audio stream",{filename:this.filename}),this.$refs.audio.pause(),this.player.stop(),this.player.destroy()},methods:{donePlaying(){this.$refs.audio.autoplay=!1,this.$refs.audio.load()}}};var Y2=function(){var e=this,a=e._self._c;return e.src?a("div",[a("VuePlyr",{ref:"plyr",attrs:{options:e.options}},[a("audio",{ref:"audio",attrs:{autoplay:e.active,src:e.src,preload:"metadata"},on:{ended:e.donePlaying,canplay:e.doneLoading}},[e._v(" "+e._s(e.t("viewer","Your browser does not support audio."))+" ")])])],1):e._e()},q2=[],L2=_i(j2,Y2,q2,!1,null,"2be0d851");const Z2=L2.exports,I2={id:"audios",group:"media",mimes:["audio/aac","audio/aacp","audio/flac","audio/mp4","audio/mpeg","audio/ogg","audio/vorbis","audio/wav","audio/webm"],component:Z2};class H2{_state;_mimetypes;_mimetypesCompare;constructor(){this._mimetypes=[],this._mimetypesCompare=[],this._state={},this._state.file="",this._state.fileInfo=null,this._state.compareFileInfo=null,this._state.files=[],this._state.enableSidebar=!0,this._state.el=null,this._state.loadMore=()=>[],this._state.onPrev=()=>{},this._state.onNext=()=>{},this._state.onClose=()=>{},this._state.canLoop=!0,this._state.handlers=[],this._state.overrideHandlerId=null,this.registerHandler(w2),this.registerHandler(x2),this.registerHandler(I2),Ha.debug("OCA.Viewer initialized")}get availableHandlers(){return this._state.handlers}registerHandler(a){const i=this.validateHandler(a);if(i){Ha.error("Could not register handler",{error:i,handler:a});return}this._state.handlers.push(a);const n=[...a.mimes,...Object.keys(a.mimesAliases||{})];this._mimetypes.push.apply(this._mimetypes,n),a?.canCompare===!0&&this._mimetypesCompare.push.apply(this._mimetypesCompare,n)}validateHandler({id:a,mimes:i,mimesAliases:n,component:o}){if(!a||a.trim()===""||typeof a!="string")return"The handler doesn't have a valid id";if(this._state.handlers.find(s=>s.id===a))return"The handler is already registered";if(!(i&&Array.isArray(i))&&!n)return"Handler needs a valid mime array or mimesAliases";if(!o||typeof o!="object"&&typeof o!="function")return"The handler doesn't have a valid component"}get file(){return this._state.file}get fileInfo(){return this._state.fileInfo}get compareFileInfo(){return this._state.compareFileInfo}get files(){return this._state.files}get enableSidebar(){return this._state.enableSidebar}get el(){return this._state.el}get mimetypes(){return this._mimetypes}get mimetypesCompare(){return this._mimetypesCompare}get loadMore(){return this._state.loadMore}get onPrev(){return this._state.onPrev}get onNext(){return this._state.onNext}get onClose(){return this._state.onClose}get canLoop(){return this._state.canLoop}get overrideHandlerId(){return this._state.overrideHandlerId}setRootElement(a=null){if(this._state.file)throw new Error("Please set root element before calling Viewer.open().");this._state.el=a}open({path:a,fileInfo:i,list:n=[],enableSidebar:o=!0,loadMore:s=()=>[],canLoop:l=!0,onPrev:_=()=>{},onNext:r=()=>{},onClose:f=()=>{}}={}){if(typeof arguments[0]=="string")throw new Error("Opening the viewer with a single string parameter is deprecated. Please use a destructuring object instead",`OCA.Viewer.open({ path: '${a}' })`);if(!a&&!i)throw new Error("Viewer needs either an URL or path to open. None given");if(a&&!a.startsWith("/"))throw new Error("Please use an absolute path");if(!Array.isArray(n))throw new Error("The files list must be an array");if(typeof s!="function")throw new Error("The loadMore method must be a function");a?this._state.file=a:this._state.fileInfo=i,this._state.el||(this._state.files=n,this._state.enableSidebar=o,this._state.loadMore=s,this._state.onPrev=_,this._state.onNext=r,this._state.onClose=f,this._state.canLoop=l)}openWith(a,i={}){this._state.overrideHandlerId=a,this.open(i)}compare(a,i){this.open({fileInfo:a}),this._state.compareFileInfo=i}close(){this._state.file="",this._state.fileInfo=null,this._state.files=[],this._state.enableSidebar=!0,this._state.canLoop=!0,this._state.loadMore=()=>[],this._state.overrideHandlerId=null}}d_(),window.OCA=window.OCA??{},window.OCA.Viewer=new H2,window.OCA.Viewer.version=ql;
+`+Si.discardChangesWarningHint,t("viewer","Unsaved changes"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("viewer","Drop changes"),confirmClasses:"error",cancel:Si.cancel},e=>{e&&this.onClose("warning-ignored",!1)})},handleKeydown(e){e.key!=="Enter"&&e.stopImmediatePropagation(),e.key==="Escape"&&(e.preventDefault(),document.querySelector(".FIE_topbar-close-button").click()),e.ctrlKey&&e.key==="s"&&(e.preventDefault(),document.querySelector(".FIE_topbar-save-button").click()),e.ctrlKey&&e.key==="z"&&(e.preventDefault(),document.querySelector(".FIE_topbar-undo-button").click())},handleSfxModal(e){e.target?.classList&&e.target.classList.contains("SfxModal-Wrapper")&&Ci("viewer:trapElements:changed",e.target)}}};var f2=function(){var e=this,a=e._self._c;return a("div",e._b({ref:"editor",staticClass:"viewer__image-editor"},"div",e.themeDataAttr,!1))},g2=[],h2=_i(d2,f2,g2,!1,null,"9f30314d");const F2=h2.exports,u2=["jpg","jpeg","png"],c2=new RegExp(`\\.(${u2.join("|")})$`,"i");function m2(e,a){return a.find(i=>i.fileid===e)}function p2(e,a){return a.find(i=>i.filename!==e.filename&&i.basename.startsWith(e.name)&&c2.test(i.basename))}Sa.use(Fr);const b2={name:"Images",components:{ImageEditor:F2,PlayCircleOutline:C_,NcLoadingIcon:O0},props:{canZoom:{type:Boolean,default:!1},editing:{type:Boolean,default:!1}},data(){return{dragging:!1,shiftX:0,shiftY:0,zoomRatio:1,fallback:!1,livePhotoCanBePlayed:!1}},computed:{src(){return this.source??this.davPath},zoomHeight(){return Math.round(this.height*this.zoomRatio)},zoomWidth(){return Math.round(this.width*this.zoomRatio)},alt(){return this.basename},imgStyle(){return this.zoomRatio===1?{}:{marginTop:Math.round(this.shiftY*2)+"px",marginLeft:Math.round(this.shiftX*2)+"px",height:this.zoomHeight+"px",width:this.zoomWidth+"px"}},livePhoto(){if(this.metadataFilesLivePhoto!==void 0)return m2(this.metadataFilesLivePhoto,this.fileList)},livePhotoSrc(){return this.livePhoto?.source??this.livePhotoDavPath},livePhotoDavPath(){return this.livePhoto?X1({filename:this.livePhoto.filename,basename:this.livePhoto.basename}):null}},asyncComputed:{data(){return this.mime==="image/svg+xml"?this.getBase64FromImage():this.mime==="image/gif"?this.src:this.source&&!this.hasPreview&&!this.previewUrl?this.source:this.fallback?this.src:this.previewPath}},watch:{active(e,a){e===!0&&a===!1?(this.resetZoom(),window.addEventListener("mouseout",this.dragEnd)):e===!1&&window.removeEventListener("mouseout",this.dragEnd)}},methods:{updateImgSize(){this.$refs.image?(this.naturalHeight=this.$refs.image.naturalHeight,this.naturalWidth=this.$refs.image.naturalWidth):this.$refs.video&&(this.naturalHeight=this.$refs.video.videoHeight,this.naturalWidth=this.$refs.video.videoWidth),this.updateHeightWidth(),this.doneLoading()},async getBase64FromImage(){const e=await pa.get(this.src);return`data:${this.mime};base64,${btoa(unescape(encodeURIComponent(e.data)))}`},updateZoom(e){if(!this.canZoom)return;e.stopPropagation(),e.preventDefault();const a=this.$refs.image??this.$refs.video,i=e.clientX-a.x-this.width*this.zoomRatio/2,n=e.clientY-a.y-this.height*this.zoomRatio/2,o=i/(this.width*this.zoomRatio),s=n/(this.height*this.zoomRatio),l=e.deltaY<0?Math.min(this.zoomRatio*1.1,5):Math.max(this.zoomRatio/1.1,1);if(l===1)return this.resetZoom();const _=this.width*l-this.width*this.zoomRatio,r=this.height*l-this.height*this.zoomRatio;this.disableSwipe(),this.shiftX=this.shiftX-o*_,this.shiftY=this.shiftY-s*r,this.zoomRatio=l},resetZoom(){this.enableSwipe(),this.zoomRatio=1,this.shiftX=0,this.shiftY=0},dragStart(e){const{pageX:a,pageY:i}=e;this.dragX=a,this.dragY=i,this.dragging=!0;const n=this.$refs.image??this.$refs.video;n.onmouseup=this.dragEnd,n.onmousemove=this.dragHandler},dragEnd(e){e.preventDefault(),this.dragging=!1;const a=this.$refs.image??this.$refs.video;a&&(a.onmouseup=null,a.onmousemove=null)},dragHandler(e){e.preventDefault();const{pageX:a,pageY:i}=e;if(this.dragging&&this.zoomRatio>1&&a>0&&i>0){const n=this.shiftX+(a-this.dragX),o=this.shiftY+(i-this.dragY),s=this.zoomWidth-this.width,l=this.zoomHeight-this.height;this.shiftX=Math.min(Math.max(n,-s/2),s/2),this.shiftY=Math.min(Math.max(o,-l/2),l/2),this.dragX=a,this.dragY=i}},onDblclick(){this.canZoom&&(this.zoomRatio>1?this.resetZoom():this.zoomRatio=1.3)},onClose(){this.$emit("update:editing",!1)},onFail(){this.fallback||(console.error(`Loading of file preview ${e_(this.src)} failed, falling back to original file`),this.fallback=!0)},doneLoadingLivePhoto(){this.livePhotoCanBePlayed=!0,this.doneLoading()},playLivePhoto(){this.livePhotoCanBePlayed&&this.$refs.video.play()},stopLivePhoto(){this.$refs.video.load()},t:N}};var D2=function(){var e=this,a=e._self._c;return a("div",{staticClass:"image_container"},[e.editing?a("ImageEditor",{attrs:{mime:e.mime,src:e.src,fileid:e.fileid},on:{close:e.onClose}}):e.data!==null?[e.livePhotoCanBePlayed?e._e():a("img",{ref:"image",class:{dragging:e.dragging,loaded:e.loaded,zoomed:e.zoomRatio!==1},style:e.imgStyle,attrs:{alt:e.alt,src:e.data},on:{"~!error":function(i){return i.preventDefault(),i.stopPropagation(),e.onFail.apply(null,arguments)},load:e.updateImgSize,wheel:e.updateZoom,dblclick:function(i){return i.preventDefault(),e.onDblclick.apply(null,arguments)},mousedown:function(i){return i.preventDefault(),e.dragStart.apply(null,arguments)}}}),e.livePhoto?[a("video",{directives:[{name:"show",rawName:"v-show",value:e.livePhotoCanBePlayed,expression:"livePhotoCanBePlayed"}],ref:"video",class:{dragging:e.dragging,loaded:e.loaded,zoomed:e.zoomRatio!==1},style:e.imgStyle,attrs:{playsinline:!0,poster:e.data,src:e.livePhotoSrc,preload:"metadata"},on:{canplaythrough:e.doneLoadingLivePhoto,loadedmetadata:e.updateImgSize,wheel:e.updateZoom,"~!error":function(i){return i.preventDefault(),i.stopPropagation(),e.onFail.apply(null,arguments)},dblclick:function(i){return i.preventDefault(),e.onDblclick.apply(null,arguments)},mousedown:function(i){return i.preventDefault(),e.dragStart.apply(null,arguments)},ended:e.stopLivePhoto}}),e.width!==0?a("button",{staticClass:"live-photo_play_button",style:{left:`calc(50% - ${e.width/2}px)`},attrs:{disabled:!e.livePhotoCanBePlayed,"aria-description":e.t("viewer","Play the live photo")},on:{click:e.playLivePhoto,pointerenter:e.playLivePhoto,focus:e.playLivePhoto,pointerleave:e.stopLivePhoto,blur:e.stopLivePhoto}},[e.livePhotoCanBePlayed?a("PlayCircleOutline"):a("NcLoadingIcon"),e._v(" "+e._s(e.t("viewer","LIVE"))+" ")],1):e._e()]:e._e()]:e._e()],2)},T2=[],y2=_i(b2,D2,T2,!1,null,"34ef602b");const E2=y2.exports,k2=Xt(ql,"enabled_preview_providers",[]),Nl=["image/heic","image/heif","image/tiff","image/x-xbitmap","image/emf"],A2=["image/apng","image/bmp","image/gif","image/jpeg","image/png","image/svg+xml","image/webp","image/x-icon"],w2=()=>Nl.filter(e=>k2.findIndex(a=>{const i=new RegExp(a.replace(/^\/|\/$/g,""),"i");return e.match(i)})>-1),xl=w2(),$s=Nl.filter(e=>!xl.includes(e));$s.length>0&&Ha.warn("Some mimes were ignored because they are not enabled in the server previews config",{ignoredMimes:$s});const S2={id:"images",group:"media",mimes:[...A2,...xl],component:E2},v2=()=>zn(()=>import("./index.esm-qAm1tkFs.chunk.mjs"),[],import.meta.url),R2=rr("viewer","blank.mp4"),C2={name:"Videos",components:{VuePlyr:v2},data(){return{isFullscreenButtonVisible:!1}},computed:{livePhotoPath(){const e=p2(this,this.fileList);if(e!==void 0)return a_(e)},player(){return this.$refs.plyr.player},options(){return{autoplay:this.active===!0,blankVideo:R2,controls:["play-large","play","progress","current-time","mute","volume","captions","settings","fullscreen"],loadSprite:!1,fullscreen:{iosNative:!0}}}},watch:{active(e,a){e===!0&&a===!1?this.player.play():e===!1&&a===!0&&this.player.pause()}},updated(){[...this.$el.querySelectorAll(".plyr__controls__item")].forEach(e=>{e.getAttribute("data-plyr")==="fullscreen"&&e.addEventListener("click",this.hideHeaderAndFooter),e?.addEventListener&&(e.addEventListener("mouseenter",this.disableSwipe),e.addEventListener("mouseleave",this.enableSwipe))})},beforeDestroy(){Ha.debug("Closing video stream",{filename:this.filename}),this.$refs.video?.pause?.(),this.player.stop(),this.player.destroy()},methods:{hideHeaderAndFooter(){this.isFullscreenButtonVisible=!this.isFullscreenButtonVisible,this.isFullscreenButtonVisible?(document.body.querySelector("main").classList.add("viewer__hidden-fullscreen"),document.body.querySelector("footer").classList.add("viewer__hidden-fullscreen")):(document.body.querySelector("main").classList.remove("viewer__hidden-fullscreen"),document.body.querySelector("footer").classList.remove("viewer__hidden-fullscreen"))},updateVideoSize(){this.naturalHeight=this.$refs.video?.videoHeight,this.naturalWidth=this.$refs.video?.videoWidth,this.updateHeightWidth()},donePlaying(){this.$refs.video.autoplay=!1,this.$refs.video.load()},onLoadedMetadata(){this.updateVideoSize(),this.active||this.player.stop()}}};var O2=function(){var e=this,a=e._self._c;return e.src?a("div",[a("VuePlyr",{ref:"plyr",style:{height:e.height+"px",width:e.width+"px"},attrs:{options:e.options}},[a("video",{ref:"video",attrs:{autoplay:e.active?!0:null,playsinline:!0,poster:e.livePhotoPath,src:e.src,preload:"metadata"},on:{ended:e.donePlaying,canplay:e.doneLoading,loadedmetadata:e.onLoadedMetadata}},[e._v(" "+e._s(e.t("viewer","Your browser does not support videos."))+" ")])])],1):e._e()},B2=[],N2=_i(C2,O2,B2,!1,null,"572afae3");const x2=N2.exports,M2={id:"videos",group:"media",mimes:["video/mpeg","video/ogg","video/webm","video/mp4","video/x-m4v","video/x-flv","video/quicktime"],mimesAliases:{"video/x-matroska":"video/webm"},component:x2},j2=()=>zn(()=>import("./index.esm-qAm1tkFs.chunk.mjs"),[],import.meta.url),Y2={name:"Audios",components:{VuePlyr:j2},computed:{player(){return this.$refs.plyr.player},options(){return{autoplay:this.active===!0,blankVideo:"/blank.aac",controls:["play-large","play","progress","current-time","mute","volume","settings"],loadSprite:!1}}},watch:{active(e,a){e===!0&&a===!1?this.player.play():e===!1&&a===!0&&this.player.pause()}},mounted(){[...this.$el.querySelectorAll(".plyr__controls__item")].forEach(e=>{e?.addEventListener&&(e.addEventListener("mouseenter",this.disableSwipe),e.addEventListener("mouseleave",this.enableSwipe))})},beforeDestroy(){Ha.debug("Closing audio stream",{filename:this.filename}),this.$refs.audio.pause(),this.player.stop(),this.player.destroy()},methods:{donePlaying(){this.$refs.audio.autoplay=!1,this.$refs.audio.load()}}};var q2=function(){var e=this,a=e._self._c;return e.src?a("div",[a("VuePlyr",{ref:"plyr",attrs:{options:e.options}},[a("audio",{ref:"audio",attrs:{autoplay:e.active,src:e.src,preload:"metadata"},on:{ended:e.donePlaying,canplay:e.doneLoading}},[e._v(" "+e._s(e.t("viewer","Your browser does not support audio."))+" ")])])],1):e._e()},L2=[],Z2=_i(Y2,q2,L2,!1,null,"2be0d851");const I2=Z2.exports,H2={id:"audios",group:"media",mimes:["audio/aac","audio/aacp","audio/flac","audio/mp4","audio/mpeg","audio/ogg","audio/vorbis","audio/wav","audio/webm"],component:I2};class P2{_state;_mimetypes;_mimetypesCompare;constructor(){this._mimetypes=[],this._mimetypesCompare=[],this._state={},this._state.file="",this._state.fileInfo=null,this._state.compareFileInfo=null,this._state.files=[],this._state.enableSidebar=!0,this._state.el=null,this._state.loadMore=()=>[],this._state.onPrev=()=>{},this._state.onNext=()=>{},this._state.onClose=()=>{},this._state.canLoop=!0,this._state.handlers=[],this._state.overrideHandlerId=null,this.registerHandler(S2),this.registerHandler(M2),this.registerHandler(H2),Ha.debug("OCA.Viewer initialized")}get availableHandlers(){return this._state.handlers}registerHandler(a){const i=this.validateHandler(a);if(i){Ha.error("Could not register handler",{error:i,handler:a});return}this._state.handlers.push(a);const n=[...a.mimes,...Object.keys(a.mimesAliases||{})];this._mimetypes.push.apply(this._mimetypes,n),a?.canCompare===!0&&this._mimetypesCompare.push.apply(this._mimetypesCompare,n)}validateHandler({id:a,mimes:i,mimesAliases:n,component:o}){if(!a||a.trim()===""||typeof a!="string")return"The handler doesn't have a valid id";if(this._state.handlers.find(s=>s.id===a))return"The handler is already registered";if(!(i&&Array.isArray(i))&&!n)return"Handler needs a valid mime array or mimesAliases";if(!o||typeof o!="object"&&typeof o!="function")return"The handler doesn't have a valid component"}get file(){return this._state.file}get fileInfo(){return this._state.fileInfo}get compareFileInfo(){return this._state.compareFileInfo}get files(){return this._state.files}get enableSidebar(){return this._state.enableSidebar}get el(){return this._state.el}get mimetypes(){return this._mimetypes}get mimetypesCompare(){return this._mimetypesCompare}get loadMore(){return this._state.loadMore}get onPrev(){return this._state.onPrev}get onNext(){return this._state.onNext}get onClose(){return this._state.onClose}get canLoop(){return this._state.canLoop}get overrideHandlerId(){return this._state.overrideHandlerId}setRootElement(a=null){if(this._state.file)throw new Error("Please set root element before calling Viewer.open().");this._state.el=a}open({path:a,fileInfo:i,list:n=[],enableSidebar:o=!0,loadMore:s=()=>[],canLoop:l=!0,onPrev:_=()=>{},onNext:r=()=>{},onClose:f=()=>{}}={}){if(typeof arguments[0]=="string")throw new Error("Opening the viewer with a single string parameter is deprecated. Please use a destructuring object instead",`OCA.Viewer.open({ path: '${a}' })`);if(!a&&!i)throw new Error("Viewer needs either an URL or path to open. None given");if(a&&!a.startsWith("/"))throw new Error("Please use an absolute path");if(!Array.isArray(n))throw new Error("The files list must be an array");if(typeof s!="function")throw new Error("The loadMore method must be a function");a?this._state.file=a:this._state.fileInfo=i,this._state.el||(this._state.files=n,this._state.enableSidebar=o,this._state.loadMore=s,this._state.onPrev=_,this._state.onNext=r,this._state.onClose=f,this._state.canLoop=l)}openWith(a,i={}){this._state.overrideHandlerId=a,this.open(i)}compare(a,i){this.open({fileInfo:a}),this._state.compareFileInfo=i}close(){this._state.file="",this._state.fileInfo=null,this._state.files=[],this._state.enableSidebar=!0,this._state.canLoop=!0,this._state.loadMore=()=>[],this._state.overrideHandlerId=null}}f_(),window.OCA=window.OCA??{},window.OCA.Viewer=new P2,window.OCA.Viewer.version=Ll;
diff --git a/js/viewer-init.mjs.map b/js/viewer-init.mjs.map
index 62a00fe55..4e8917c9d 100644
--- a/js/viewer-init.mjs.map
+++ b/js/viewer-init.mjs.map
@@ -1 +1 @@
-{"version":3,"mappings":"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B,QAAS,aACV,EACD,2BAA4B,CAC1B,QAAS,WACV,EACD,uBAAwB,CACtB,QAAS,iBACV,EACD,sBAAuB,CACrB,QAAS,eACV,EACD,2BAA4B,CAC1B,QAAS,YACV,EACD,wBAAyB,CACvB,QAAS,cACV,EACD,+BAAgC,CAC9B,QAAS,gBACV,EACD,2BAA4B,CAC1B,QAAS,qBACV,EACD,yBAA0B,CACxB,QAAS,cACV,EACD,+BAAgC,CAC9B,QAAS,oBACV,EACD,gCAAiC,CAC/B,QAAS,mBACV,EACD,6BAA8B,CAC5B,QAAS,aACV,EACD,kCAAmC,CACjC,QAAS,gBACV,EACD,+BAAgC,CAC9B,QAAS,iBACV,EACD,iCAAkC,CAChC,QAAS,eACV,EACD,gCAAiC,CAC/B,QAAS,qBACV,EACD,wBAAyB,CACvB,QAAS,iBACV,EACD,iCAAkC,CAChC,QAAS,qBACV,EACD,sBAAuB,CACrB,QAAS,eACV,EACD,0BAA2B,CACzB,QAAS,gBACV,EACD,6BAA8B,CAC5B,QAAS,oBACV,EACD,iCAAkC,CAChC,QAAS,mBACV,EACD,wBAAyB,CACvB,QAAS,kBACV,EACD,sBAAuB,CACrB,QAAS,cACV,EACD,6BAA8B,CAC5B,QAAS,oBACV,EACD,UAAW,CACT,QAAS,KACV,EACD,YAAa,CACX,QAAS,KACV,EACD,UAAW,CACT,QAAS,KACV,EACD,UAAW,CACT,QAAS,KACV,EACD,eAAgB,CACd,QAAS,KACV,EACD,WAAY,CACV,QAAS,KACV,EACD,iBAAkB,CAChB,QAAS,eACV,EACD,oBAAqB,CACnB,QAAS,aACV,EACD,qBAAsB,CACpB,QAAS,cACV,EACD,IAAK,CACH,QAAS,KACV,EACD,oBAAqB,CACnB,QAAS,eACV,EACD,QAAS,CACP,QAAS,KACV,EACD,KAAM,CACJ,QAAS,KACV,EACD,oBAAqB,CACnB,QAAS,kBACV,EACD,yBAA0B,CACxB,QAAS,cACV,EACD,0BAA2B,CACzB,QAAS,iBACV,EACD,UAAW,CACT,QAAS,KACV,EACD,0BAA2B,CACzB,QAAS,oBACV,EACD,yBAA0B,CACxB,QAAS,kBACV,EACD,sBAAuB,CACrB,QAAS,eACV,EACD,qBAAsB,CACpB,QAAS,aACV,EACD,uBAAwB,CACtB,QAAS,gBACV,EACD,uBAAwB,CACtB,QAAS,YACV,EACD,4BAA6B,CAC3B,QAAS,oBACV,EACD,sBAAuB,CACrB,QAAS,YACV,EACD,sBAAuB,CACrB,QAAS,gBACV,EACD,6BAA8B,CAC5B,QAAS,oBACV,EACD,wBAAyB,CACvB,QAAS,cACV,EACD,0BAA2B,CACzB,QAAS,kBACV,EACD,4BAA6B,CAC3B,QAAS,aACV,EACD,2BAA4B,CAC1B,QAAS,oBACV,EACD,wBAAyB,CACvB,QAAS,mBACV,EACD,yBAA0B,CACxB,QAAS,gBACV,EACD,kCAAmC,CACjC,QAAS,mBACV,EACD,wBAAyB,CACvB,QAAS,cACV,EACD,gCAAiC,CAC/B,QAAS,kBACV,EACD,wBAAyB,CACvB,QAAS,iBACV,EACD,sBAAuB,CACrB,QAAS,eACV,EACD,4BAA6B,CAC3B,QAAS,kBACV,EACD,6BAA8B,CAC5B,QAAS,kBACV,EACD,gCAAiC,CAC/B,QAAS,cACV,EACD,2BAA4B,CAC1B,QAAS,kBACV,EACD,2BAA4B,CAC1B,QAAS,kBACV,EACD,wBAAyB,CACvB,QAAS,qBACV,EACD,iCAAkC,CAChC,QAAS,sBACV,EACD,mBAAoB,CAClB,QAAS,kBACV,EACD,yBAA0B,CACxB,QAAS,cACV,EACD,yBAA0B,CACxB,QAAS,kBACV,EACD,wBAAyB,CACvB,QAAS,cACV,EACD,sBAAuB,CACrB,QAAS,oBACV,EACD,sBAAuB,CACrB,QAAS,gBACV,EACD,qBAAsB,CACpB,QAAS,eACV,EACD,wBAAyB,CACvB,QAAS,eACV,EACD,2BAA4B,CAC1B,QAAS,iBACV,EACD,2BAA4B,CAC1B,QAAS,gBACV,EACD,2BAA4B,CAC1B,QAAS,gBACV,EACD,wBAAyB,CACvB,QAAS,cACV,EACD,sBAAuB,CACrB,QAAS,cACV,EACD,0BAA2B,CACzB,QAAS,gBACV,EACD,6BAA8B,CAC5B,QAAS,qBACV,EACD,0BAA2B,CACzB,QA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","names":["e","i","_sfc_main","defineComponent","NcDialogButton","NcModal","arr","element","value","props","emit","slots","wrapper","ref","dialogWidth","useElementSize","isNavigationCollapsed","computed","hasNavigation","navigationId","GenRandomId","navigationAriaLabelAttr","navigationAriaLabelledbyAttr","dialogElement","dialogTagName","dialogListeners","event","showModal","handleButtonClose","result","handleClosing","handleClosed","modalProps","_sfc_render","_vm","_c","$event","button","idx","_sfc_staticRenderFns","__component__","normalizeComponent","NcDialog","svgEye","pushToHistory","node","view","dir","execAction","onClose","newQuery","fileInfo","registerViewerAction","registerFileAction","FileAction","t","DefaultType","nodes","Permission","setAsyncState","vm","stateObject","state","getterOnly","fn","hasOwnProperty","object","property","isComputedLazy","item","isLazyActive","key","lazyActivePrefix","lazyDataPrefix","initLazy","data","makeLazyComputed","silentSetLazy","silentGetLazy","getGetterWatchedByArray","computedAsyncProperty","_this","splittedByDot","start","part","error","getGetterWatchedByFunction","getWatchedGetter","DidNotUpdate","getGetterWithShouldUpdate","asyncProprety","currentGetter","shouldNotUpdate","prefix","AsyncComputed","Vue","pluginOptions","asyncComputed","getter","getterFn","initDataWithAsyncComputed","generateDefault","_key","handleAsyncComputedPropetyChanges","promiseId","watcher","newPromise","thisPromise","err","handler","options","optionData","nonLazy","defaultValue","register","useModelMigration","oldModelName","oldModelEvent","required","getCurrentInstance","Binary","aString","aValue","b64","o1","o2","o3","h1","h2","h3","h4","bits","ac","enc","tmp_arr","r","dec","DURATION_LETTERS","DATA_PROPS_TO_COPY","Duration","aSeconds","string","aStr","pos","dict","chunks","type","numeric","parseDurationChunk","aData","seconds","secs","trunc","prop","aOther","thisSeconds","otherSeconds","str","letter","number","num","isStrictlyNaN","Time$1","Time","month","year","_daysInMonth","days","aDayOfYear","aYear","doy","tt","is_leap","strictParseInt","zone","zoneId","Timezone","timeData","aProperty","aDate","useUTC","aZone","aWeekStart","dow","wkst","yr","LTRS","dom","#epochTime","a","b","attr","time","day","hour","minute","second","timezone","TimezoneService","firstDow","dowCacheKey","q","m","Y","h","aFirstDayOfWeek","delta","aDayOfWeek","aPos","daysInMonth","weekday","otherDay","startDow","offset","endDow","wnCacheKey","week1","dt","isoyear","daysBetween","answer","aDuration","mult","unixTime","other","tz","rc","copy","zone_equals","design$1","pad2","aExtraDays","aExtraHours","aExtraMinutes","aExtraSeconds","aTime","minutesOverflow","hoursOverflow","daysOverflow","yearsOverflow","date","ms","len","defineAttr","val","CHAR","VALUE_DELIMITER","PARAM_DELIMITER","PARAM_NAME_DELIMITER","DEFAULT_VALUE_TYPE$1","DEFAULT_PARAM_TYPE","RFC6868_REPLACE_MAP$1","parse","input","root","line","ParserError","designSet","valuePos","paramPos","lastParamIndex","lastValuePos","name","params","parsedParams","newComponent","valueType","multiValue","structuredValue","propertyDetails","splitName","ungroupedName","lastParam","delim","lcname","mvdelim","extendedValue","propValuePos","nextPos","length_before","delimiter","x","buffer","innerMulti","lastPos","unescapedIndexOf","callback","firstChar","newlineOffset","OPTIONS","Timezone$1","from_zone","to_zone","utcOffset","#utcTimezone","#localTimezone","change","hours","minutes","Component","jCal","tt_change","change_num","change_num_to_use","step","clone","zone_change","tmp_change","prev_zone_change","want_daylight","binsearchInsert","today","changesEndYear","subcomps","compLen","compIdx","aComponent","changes","dtstart","convert_tzoffset","init_changes","changebase","rdate","rrule","iterator","occ","zones","utc","tzid","updateTimezones","vcal","allsubs","properties","vtimezones","reqTzid","comp","formatClassType","search","list","seekVal","cmpfunc","low","high","mid","cmpval","aSrc","aDeep","obj","foldline","aLine","line_length","cp","ICALmodule","extend","source","target","descr","helpers","UtcOffset","instance","factor","VCardTime","aIcalType","v","s","parts","tmz","splitzone","tm","dtlen","tmlen","hasDashDate","hasDashTime","o","icaltype","y","d","mm","hasYear","hasMonth","hasDay","hasHour","hasMinute","hasSecond","datepart","timepart","RecurIterator","Recur","InvalidRecurrenceRuleError","wkdy","dayName","untilYear","tempLast","initLast","bydow","dayOfMonth","normalized","again","before","valid","inc","this_freq","end_of_data","week_no","rules","newRules","ruleIdx","rule","isInit","byMonthDay","byDay","dateIdx","dateLen","dayLen","dataIsValid","self","lastDay","initMonth","nextMonth","monthsCounter","next","dayIdx","data_valid","setpos","setpos_total","last_day","coded_day","startOfWeek","matches","aRuleType","aInterval","aDateAttr","aFollowingAttr","aPreviousIncr","has_by_rule","dta","years","aFactor","aNextIncrement","nextunit","validWeeks","monthIdx","first_week","last_week","weekIdx","partCount","t1","t2","monthday","t3","first_dow","doy_offset","last_dow","by_month_day","spIndex","bydayParts","month_day","first_matching_day","last_matching_day","expandedDays","weekno","daysInYear","days_list","tmp","start_dow","end_dow","end_year_day","tmp_start_doy","first","last","this_dow","aRules","j","one","two","indexMapValue","ruleMapValue","pass","ruleType","bydata","weekNo","req","deftime","VALID_DAY_NAMES","VALID_BYDAY_PART","DOW_MAP","REVERSE_DOW_MAP","entry","ALLOWED_FREQ","fmtIcal","values","ucname","partDesign","partArr","partSet","optionDesign","aStart","aType","aValues","aStartTime","aRecurrenceId","iter","uckey","res","k","kparts","parseNumericValue","min","max","Period","end","aProp","aLenient","fromDateOrDateTimeString","dateProp","FROM_ICAL_NEWLINE","TO_ICAL_NEWLINE","FROM_VCARD_NEWLINE","TO_VCARD_NEWLINE","createTextType","fromNewline","toNewline","structuredEscape","replaceNewline","regEx","DEFAULT_TYPE_TEXT","DEFAULT_TYPE_TEXT_MULTI","DEFAULT_TYPE_TEXT_STRUCTURED","DEFAULT_TYPE_INTEGER","DEFAULT_TYPE_DATETIME_DATE","DEFAULT_TYPE_DATETIME","DEFAULT_TYPE_URI","DEFAULT_TYPE_UTCOFFSET","DEFAULT_TYPE_RECUR","DEFAULT_TYPE_DATE_ANDOR_TIME","replaceNewlineReplace","newline","commonProperties","commonValues","parsed","icalParams","icalValues","aBinary","design","aRecur","icalProperties","vcardValues","isFromIcal","lastChar","signChar","sign","c","vcardParams","vcardProperties","vcard3Values","vcard3Params","vcard3Properties","icalSet","vcardSet","vcard3Set","componentName","LINE_ENDING","DEFAULT_VALUE_TYPE","RFC6868_REPLACE_MAP","stringify","component","propIdx","propLen","designSetName","comps","noFold","jsName","groupName","paramName","paramDesign","propDetails","isDefault","force","NAME_INDEX$1","PROP_INDEX","TYPE_INDEX","VALUE_INDEX","Property","parent","p","designSetChanged","index","parameters","details","NAME_INDEX","PROPERTY_INDEX","COMPONENT_INDEX","jCalLen","jCalIndex","cache","nameOrObject","objects","cached","nameOrComp","removed","nameOrProp","hydratedZone","RecurExpansion","compare","maxTries","currentTry","toJSON","propertyName","iters","iterTime","iterIdx","chosenIter","Event","id","compareRangeException","rangeItem","occurrence","utcId","rangeExceptionId","exception","startDiff","original","newStart","startTime","endDate","duration","propName","ComponentParser","ical","components","timezoneId","ics","ICAL","local","icalComp","version","aliases","tzData","TimezoneManager","level","resolvedTimezoneId","includeAliases","timezones","aliasName","resolvedTimezone","pendingAliasName","timezoneManager","getTimezoneManager","module","this","n","_","O","l","u","f","g","round","floor","createCoords","oppositeSideMap","oppositeAlignmentMap","clamp","evaluate","param","getSide","placement","getAlignment","getOppositeAxis","axis","getAxisLength","getSideAxis","getAlignmentAxis","getAlignmentSides","rects","rtl","alignment","alignmentAxis","length","mainAlignmentSide","getOppositePlacement","getExpandedPlacements","oppositePlacement","getOppositeAlignmentPlacement","getSideList","side","isStart","lr","rl","tb","bt","getOppositeAxisPlacements","flipAlignment","direction","expandPaddingObject","padding","getPaddingObject","rectToClientRect","rect","width","height","computeCoordsFromPlacement","_ref","reference","floating","sideAxis","alignLength","isVertical","commonX","commonY","commonAlign","coords","computePosition","config","strategy","middleware","platform","validMiddleware","statefulPlacement","middlewareData","resetCount","nextX","nextY","reset","detectOverflow","_await$platform$isEle","elements","boundary","rootBoundary","elementContext","altBoundary","paddingObject","clippingClientRect","offsetParent","offsetScale","elementClientRect","flip","_middlewareData$arrow","_middlewareData$flip","initialPlacement","checkMainAxis","checkCrossAxis","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","detectOverflowOptions","initialSideAxis","isBasePlacement","fallbackPlacements","hasFallbackAxisSideDirection","placements","overflow","overflows","overflowsData","sides","_middlewareData$flip2","_overflowsData$filter","nextIndex","nextPlacement","resetPlacement","_overflowsData$filter2","currentSideAxis","acc","convertValueToCoords","mainAxisMulti","crossAxisMulti","rawValue","mainAxis","crossAxis","_middlewareData$offse","diffCoords","shift","limiter","mainAxisCoord","crossAxisCoord","minSide","maxSide","limitedCoords","limitShift","rawOffset","computedOffset","limitMin","limitMax","_middlewareData$offse2","isOriginSide","hasWindow","getNodeName","isNode","getWindow","_node$ownerDocument","getDocumentElement","isElement","isHTMLElement","isShadowRoot","isOverflowElement","overflowX","overflowY","display","getComputedStyle","isTableElement","isTopLayer","selector","isContainingBlock","elementOrCss","webkit","isWebKit","css","getContainingBlock","currentNode","getParentNode","isLastTraversableNode","getNodeScroll","getNearestOverflowAncestor","parentNode","getOverflowAncestors","traverseIframes","_node$ownerDocument2","scrollableAncestor","isBody","win","frameElement","getFrameElement","getCssDimensions","hasOffset","offsetWidth","offsetHeight","shouldFallback","unwrapElement","getScale","domElement","$","noOffsets","getVisualOffsets","shouldAddVisualOffsets","isFixed","floatingOffsetParent","getBoundingClientRect","includeScale","isFixedStrategy","clientRect","scale","visualOffsets","offsetWin","currentWin","currentIFrame","iframeScale","iframeRect","left","top","convertOffsetParentRelativeRectToViewportRelativeRect","documentElement","topLayer","scroll","offsets","isOffsetParentAnElement","offsetRect","getClientRects","getWindowScrollBarX","leftScroll","getDocumentRect","html","body","getViewportRect","visualViewport","visualViewportBased","getInnerBoundingClientRect","getClientRectFromClippingAncestor","clippingAncestor","hasFixedPositionAncestor","stopNode","getClippingElementAncestors","cachedResult","el","currentContainingBlockComputedStyle","elementIsFixed","computedStyle","currentNodeIsContaining","ancestor","getClippingRect","clippingAncestors","firstClippingAncestor","clippingRect","accRect","getDimensions","getRectRelativeToOffsetParent","htmlX","htmlY","htmlRect","isStaticPositioned","getTrueOffsetParent","polyfill","rawOffsetParent","getOffsetParent","svgOffsetParent","getElementRects","getOffsetParentFn","getDimensionsFn","floatingDimensions","isRTL","observeMove","onMove","io","timeoutId","cleanup","_io","refresh","skip","threshold","insetTop","insetRight","insetBottom","insetLeft","isFirstUpdate","handleObserve","entries","ratio","autoUpdate","update","ancestorScroll","ancestorResize","elementResize","layoutShift","animationFrame","referenceEl","ancestors","cleanupIo","reobserveFrame","resizeObserver","firstEntry","_resizeObserver","frameId","prevRefRect","frameLoop","nextRefRect","_resizeObserver2","offset$1","shift$1","flip$1","limitShift$1","mergedOptions","platformWithCache","computePosition$1","ChevronDown","FindRanges","text","ranges","currentIndex","range","validRanges","mergedRanges","currentRange","chunk","NcHighlight","NcEllipsisedOption","ActionTextMixin","NcActionRouter","NcActionText","onlineSvg","awaySvg","dndSvg","invisibleSvg","t11","getUserStatusText","status","t49","user","_oldUser","getCapabilities","axios","generateOcsUrl","NcUserStatusIcon","Color","toHex","stepCalc","steps","ends","mixPalette","color1","color2","palette","defaultPalette","GenColors","red","yellow","blue","palette1","palette2","palette3","base64map","crypt","bytes","words","hex","base64","triplet","imod4","cryptModule","charenc","charenc_1","isBuffer_1","isBuffer","isSlowBuffer","require$$0","utf8","require$$1","require$$2","bin","md5","message","FF","GG","HH","II","aa","bb","cc","dd","md5Module","digestbytes","usernameToColor","username","hash","finalPalette","hashToInt","hash2","maximum","finalInt","getAvatarUrl","size","isGuest","darkTheme","generateUrl","encodedTlds","encodedUtlds","assign","ascii","alpha","asciinumeric","alphanumeric","domain","emoji","scheme","slashscheme","whitespace","registerGroup","groups","addToGroups","flags","group","flagsForToken","State","token","nextState","regex","exactOnly","inputs","regexp","templateState","allFlags","ta","tr","ts","WORD","UWORD","LOCALHOST","TLD","UTLD","SCHEME","SLASH_SCHEME","NUM","WS","NL$1","OPENBRACE","CLOSEBRACE","OPENBRACKET","CLOSEBRACKET","OPENPAREN","CLOSEPAREN","OPENANGLEBRACKET","CLOSEANGLEBRACKET","FULLWIDTHLEFTPAREN","FULLWIDTHRIGHTPAREN","LEFTCORNERBRACKET","RIGHTCORNERBRACKET","LEFTWHITECORNERBRACKET","RIGHTWHITECORNERBRACKET","FULLWIDTHLESSTHAN","FULLWIDTHGREATERTHAN","AMPERSAND","APOSTROPHE","ASTERISK","AT","BACKSLASH","BACKTICK","CARET","COLON","COMMA","DOLLAR","DOT","EQUALS","EXCLAMATION","HYPHEN","PERCENT","PIPE","PLUS","POUND","QUERY","QUOTE","SEMI","SLASH","TILDE","UNDERSCORE","EMOJI$1","SYM","tk","ASCII_LETTER","LETTER","EMOJI","DIGIT","SPACE","NL","EMOJI_VARIATION","EMOJI_JOINER","tlds","utlds","init$2","customSchemes","Start","decodeTlds","Num","Word","UWord","Ws","Emoji","EmojiJoiner","wordjr","uwordjr","fastts","sch","run$1","iterable","stringToArray","charCount","tokens","cursor","charCursor","tokenLength","latestAccepting","sinceAccepts","charsSinceAccepts","char","defaultt","jr","encoded","stack","digits","popDigitCount","popCount","defaults","noop","Options","opts","defaultRender","ignoredTags","uppercaseIgnoredTags","ir","operator","isCallable","option","MultiToken","truncate","formatted","protocol","href","formattedHref","tagName","content","attributes","className","rel","attrs","eventListeners","createTokenClass","Token","Email","Text","Nl","Url","makeState","arg","init$1","qsAccepting","qsNonAccepting","localpartAccepting","Localpart","Domain","Scheme","SlashScheme","LocalpartAt","LocalpartDot","EmailDomain","EmailDomainDot","Email$1","EmailDomainHyphen","EmailColon","DomainHyphen","DomainDot","DomainDotTld","DomainDotTldColon","DomainDotTldColonPort","Url$1","UrlNonaccept","SchemeColon","SlashSchemeColon","SlashSchemeColonSlash","UriPrefix","bracketPairs","OPEN","CLOSE","UrlOpen","UrlOpenQ","UrlOpenSyms","run","multis","textTokens","secondState","multiLength","initMultiToken","Multi","subtokens","startIdx","endIdx","INIT","init","tokenize","escapeText","escapeAttr","attributesToString","linkifyStr","global","Symbol","STATE_PLAINTEXT","STATE_HTML","STATE_COMMENT","ALLOWED_TAGS_REGEX","NORMALIZE_TAG_REGEX","striptags","allowable_tags","tag_replacement","context","init_context","striptags_internal","init_striptags_stream","parse_allowable_tags","tag_buffer","depth","in_quote_char","output","normalize_tag","tag_set","match","getRoute","router","url","removePrefix","removePrefixes","prefixes","isAbsoluteURL","isNonHttpLink","getBaseUrl","relativeUrl","relativeRouterBase","getRootUrl","potentialRouterPath","route","unrefElement","elRef","_a","plain","toValue","defaultWindow","isClient","useEventListener","args","events","listeners","cleanups","listener","options2","stopWatch","watch","optionsClone","isObject","stop","tryOnScopeDispose","_iOSWorkaround","onClickOutside","window","ignore","capture","detectIframe","isIOS","shouldListen","shouldIgnore","target2","vOnClickOutside","directiveHooks","binding","resolveElement","checkOverflowScroll","ele","style","preventDefault","rawEvent","_target","elInitialOverflow","useScrollLock","initialState","isLocked","stopTouchMoveListener","initialOverflow","toRef","lock","unlock","onScrollLock","isMounted","userStatus","userId","capabilities","getCurrentUser","icon","t10","browserStorage","getBuilder","getUserHasAvatar","flag","setUserHasAvatar","DotsHorizontal","NcActions","NcButton","NcIconSvgWrapper","NcLoadingIcon","initials","filteredChars","filtered","actions","NcActionLink","escape","emojiIcon","subscribe","unsubscribe","avatarUrl","srcset","userHasAvatar","img","NcAvatar","margin","defaultSize","margin2","EMAIL_NOTATION","NcListItemIcon","t16","VueSelect","allProps","mixin","optionLabel","createElement","Close","noDrop","open","map","clickableArea","gridBaseLine","avatarSize","model","dropdownMenu","addClass","_middlewareArgs","togglePlacementClass","updatePosition","label","vueSelectKeys","_value","searchString","selectedOption","spinner","NcSelect","t25","getSortedTimezoneList","timezoneList","additionalTimezones","sortedByContinent","sortedList","continent","getReadableTimezoneName","additionalTimezone","getTimezoneManager$1","initialized","t41","timezoneManager2","timezonesGrouped","newValue","terms","region","term","NcTimezonePicker","isDate","toDate","isValidDate","firstDayOfWeek","diff","startOfWeekYear","_ref$firstDayOfWeek","_ref$firstWeekContain","firstWeekContainsDate","firstDateOfFirstWeek","getWeek","_ref2","_ref2$firstDayOfWeek","_ref2$firstWeekContai","firstDateOfThisWeek","locale","REGEX_FORMAT","pad","getOffset","formatTimezone","delimeter","absOffset","meridiem","isLowercase","word","formatFlags","meridiemFunc","format","formatStr","defaultLocale","p1","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","arr2","ownKeys","enumerableOnly","keys","symbols","sym","_objectSpread","_defineProperty","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","_arr","_n","_d","_e","_i","_s","formattingTokens","match1","match2","match3","match4","match1to2","matchShortOffset","matchSigned","matchTimestamp","YEAR","MONTH","DAY","HOUR","MINUTE","SECOND","MILLISECOND","parseFlags","addParseFlag","func","escapeStringRegExp","matchWordRegExp","localeKey","array","matchWordCallback","cent","matchMeridiem","defaultIsPM","isPM","offsetFromString","_ref8","_ref9","symbol","to24hour","getFullInputArray","backupDate","backupArr","useBackup","createDate","M","createUTCDate","_len","makeParser","dateString","mark","parseTo","parser","_options$locale","_locale","_options$backupDate","parseResult","millisecond","week","inputArray","firstDate","parsedDate","_typeof","_extends","_objectSpread2","_objectWithoutPropertiesLoose","excluded","sourceKeys","_objectWithoutProperties","sourceSymbolKeys","_unsupportedIterableToArray","minLen","_arrayLikeToArray","_extends$1","normalMerge","toArrayMerge","functionalMerge","mergeJsxProps","mergeFn","helper","isValidRangeDate","isValidDates","dates","getValidDate","backup","startOfYear","startOfMonth","startOfDay","getCalendar","calendar","lastDayInLastMonth","firstDayInLastMonth","lastDayInCurrentMonth","lastMonthLength","nextMonthLength","_i2","setMonth","dirtyDate","dirtyMonth","setYear","dirtyYear","assignTime","pick","mergeDeep","unwrapExports","createCommonjsModule","en","exports","_default","en$1","lang","locales","isLocal","getLocale","rafThrottle","isRunning","getPopupElementSize","originalDisplay","originalVisibility","styles","getRelativePosition","targetWidth","targetHeight","fixed","offsetX","offsetY","relativeRect","dw","dh","getScrollParent","until","script","_this2","relativeElement","evt","popup","appendToBody","_this$_popupRect","_getRelativePosition","template","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","__vue_script__","__vue_render__","_h","__vue_staticRenderFns__","__vue_inject_styles__","__vue_component__","__vue_render__$1","__vue_staticRenderFns__$1","__vue_inject_styles__$1","__vue_component__$1","__vue_render__$2","__vue_staticRenderFns__$2","__vue_inject_styles__$2","__vue_component__$2","__vue_render__$3","__vue_staticRenderFns__$3","__vue_inject_styles__$3","__vue_component__$3","script$1","__vue_script__$1","__vue_render__$4","__vue_staticRenderFns__$4","__vue_inject_styles__$4","__vue_component__$4","script$2","_this$getLocale","yearFormat","monthBeforeYear","_this$getLocale$month","monthFormat","yearLabel","monthLabel","panel","cell","_index$split$map","_index$split$map2","row","col","fmt","__vue_script__$2","__vue_render__$5","__vue_staticRenderFns__$5","__vue_inject_styles__$5","__vue_component__$5","script$3","monthsLocale","months","__vue_script__$3","__vue_render__$6","__vue_staticRenderFns__$6","__vue_inject_styles__$6","__vue_component__$6","script$4","firstYear","__vue_script__$4","__vue_render__$7","__vue_staticRenderFns__$7","__vue_inject_styles__$7","__vue_component__$7","CalendarPanel","panels","calendarDate","oldCalendar","oldPanel","_date","_date2","cellDate","notCurrentMonth","classes","_cellDate","_cellDate2","active","innerCalendar","CalendarRange","calendars","_this$innerValue","startValue","endValue","adjustIndex","gap","_calendars","calendarLeft","calendarRight","yearDiff","monthDiff","currentDates","classnames","inRange","_range$map","_range$map2","calendarRange","on","prefixClass","scrollBarWidth","getScrollbarWidth","outer","inner","script$5","wrap","heightPercentage","scrollHeight","scrollTop","offsetTop","clientY","clientHeight","__vue_script__$5","__vue_render__$8","__vue_staticRenderFns__$8","__vue_inject_styles__$8","__vue_component__$8","padNumber","generateOptions","scrollTo","to","difference","tick","script$6","cols","_this3","_this4","_this5","scrollElement","currentTarget","colIndex","cellIndex","__vue_script__$6","__vue_render__$9","__vue_staticRenderFns__$9","__vue_inject_styles__$9","__vue_component__$9","parseOption","scrollTo$1","script$7","startMinutes","endMinutes","stepMinutes","timeMinutes","__vue_script__$7","__vue_render__$a","__vue_staticRenderFns__$a","__vue_inject_styles__$a","__vue_component__$a","script$8","titleFormat","defaultProps","minHour","maxHour","__vue_script__$8","__vue_render__$b","__vue_staticRenderFns__$b","__vue_inject_styles__$b","__vue_component__$b","TimeRange","_this$value","defaultValues","DatetimePanel","datetime","calendarProps","timeProps","DatetimeRange","datetimes","componentMap","componentRangeMap","DatePicker","types","close","disabledDate","disabledTime","nextDates","keyCode","fallback","slotFn","calendarIcon","_class","inline","disabled","sidedar","t37","_sfc_main$2","_sfc_render$2","_sfc_staticRenderFns$2","__component__$2","CalendarBlank","_sfc_main$1","_sfc_render$1","_sfc_staticRenderFns$1","__component__$1","Web","formatMap","NcPopover","getMonthNames","getMonthNamesShort","getDayNames","getDayNamesShort","getDayNamesMin","getFirstDay","firstThursday","yearStart","$$v","slot","scope","NcDateTimePicker","ScopeComponent","inputDateTypes","yyyy2","MM2","dd2","yyyy","MM","hh2","mm2","hh","timezoneOffsetSeconds","inputDateWithTimezone","startDate","daysSinceBeginningOfYear","weekNumber","NcDateTimePickerNative","AlertCircle","Check","isValidLabel","ariaDescribedby","NcInputField","Eye","EyeOff","t28","logger","getLoggerBuilder","passwordPolicy","loadState","NcInputFieldProps","minlength","debounce","password","NcPasswordField","ArrowRight","Undo","t17","t48","predefinedLabels","NcTextField","t46","ActionGlobalMixin","ArrowLeft","t26","t19","NcVNodes","ChevronUp","t13","t20","t21","t15","t42","t44","Cog","t45","urlAlphabet","nanoid","setSelector","isBrowser","TargetContainer","Portal","child","targetEl","install","_Vue","NcEmptyContent","t14","t7","t27","w","F","C","S","A","E","L","P","R","G","U","N","H","D","V","B","T","J","I","W","z","X","K","Z","Q","ee","te","ne","re","ie","oe","ae","HEX_REGEX","Chrome","color","green","slotProps","NcColorPicker","t29","NcActionButton","menuItemId","NcDashboardWidgetItem","t33","se","storage","t6","t35","t40","IconCircle","i18n","skinTonePalette","Picker","t5","__default__","__injectCSSVars__","useCssVars","_setup","__setup__","ctx","_sfc_main$4","_sfc_render$4","_sfc_staticRenderFns$4","__component__$4","AccountGroup","_sfc_main$3","_sfc_render$3","_sfc_staticRenderFns$3","__component__$3","OpenInNew","t39","teamId","resource","response","team","provider","NcTeamResources","t36","NcResource","t9","NcMentionBubble","MENTION_START","MENTION_SIMPLE","MENTION_GUEST","MENTION_PREFIXED","MENTION_WITH_SPACE","MENTION_COMPLEX","USERID_REGEX","USERID_REGEX_WITH_SPACE","isWidgetRegistered","hasInteractiveView","hasFullWidth","registerWidget","onDestroy","propsWithDefaults","renderWidget","richObjectType","richObject","accessible","interactive","destroyWidget","isCustomPickerElementRegistered","getCustomPickerElementSize","registerCustomPickerElement","renderCustomPickerElement","providerId","destroyCustomPickerElement","renderResult","encodeReserveRE","encodeReserveReplacer","commaRE","encode","decode","resolveQuery","query","extraQuery","_parseQuery","parseQuery","parsedQuery","castQueryParamValue","stringifyQuery","val2","trailingSlashRE","createRoute","record","location","redirectedFrom","getFullPath","formatMatch","START","_stringifyQuery","path","isSameRoute","onlyPath","isObjectEqual","aKeys","bKeys","aVal","bKey","bVal","isIncludedRoute","current","queryIncludes","handleRouteEntered","cbs","i$1","View","children","inactive","vnodeData","cachedData","cachedComponent","fillPropsinData","matched","vnode","configProps","propsToPass","resolveProps","resolvePath","relative","base","append","segments","segment","parsePath","hashIndex","queryIndex","cleanPath","isarray","pathToRegexp_1","pathToRegexp","parse_1","compile_1","compile","tokensToFunction_1","tokensToFunction","tokensToRegExp_1","tokensToRegExp","PATH_REGEXP","defaultDelimiter","escaped","modifier","asterisk","partial","repeat","optional","pattern","escapeGroup","escapeString","encodeURIComponentPretty","encodeAsterisk","attachKeys","regexpToRegexp","arrayToRegexp","stringToRegexp","strict","endsWithDelimiter","regexpCompileCache","fillParams","routeMsg","filler","normalizeLocation","raw","params$1","rawPath","parsedPath","basePath","toTypes","eventTypes","Link","this$1$1","globalActiveClass","globalExactActiveClass","activeClassFallback","exactActiveClassFallback","activeClass","exactActiveClass","compareTarget","ariaCurrentValue","guardEvent","scopedSlot","findAnchor","handler$1","event$1","aAttrs","isDef","registerInstance","callVal","strats","inBrowser","createRouteMap","routes","oldPathList","oldPathMap","oldNameMap","parentRoute","pathList","pathMap","nameMap","addRouteRecord","matchAs","pathToRegexpOptions","normalizedPath","normalizePath","compileRouteRegex","childMatchAs","alias","aliasRoute","createMatcher","addRoutes","addRoute","parentOrRoute","getRoutes","currentRoute","_createRoute","paramNames","record$1","matchRoute","redirect","originalRedirect","resolveRecordPath","resolvedPath","aliasedPath","aliasedMatch","aliasedRecord","genStateKey","getStateKey","setStateKey","positionStore","setupScroll","protocolAndPath","absolutePath","stateCopy","handlePopState","handleScroll","from","isPop","behavior","position","getScrollPosition","shouldScroll","scrollToPosition","saveScrollPosition","getElementPosition","docEl","docRect","elRect","isValidPosition","isNumber","normalizePosition","normalizeOffset","hashStartsWithNumberRE","supportsPushState","ua","pushState","replace","history","replaceState","NavigationFailureType","createNavigationRedirectedError","createRouterError","stringifyRoute","createNavigationDuplicatedError","createNavigationCancelledError","createNavigationAbortedError","propertiesToLog","isError","isNavigationFailure","errorType","runQueue","queue","cb","resolveAsyncComponents","hasAsync","pending","flatMapComponents","def","resolve","once","resolvedDef","isESModule","reject","reason","msg","flatten","hasSymbol","called","History","normalizeBase","errorCb","onComplete","onAbort","prev","hook","abort","lastRouteIndex","lastCurrentIndex","resolveQueue","updated","deactivated","activated","extractLeaveGuards","extractUpdateHooks","enterGuards","extractEnterGuards","cleanupListener","baseEl","extractGuards","records","bind","reverse","guards","guard","extractGuard","bindGuard","bindEnterGuard","HTML5History","getLocation","expectScroll","supportsScroll","handleRoutingEvent","fromRoute","push","pathLowerCase","baseLowerCase","HashHistory","checkFallback","ensureSlash","getHash","replaceHash","eventType","pushHash","getUrl","AbstractHistory","targetIndex","VueRouter","mode","prototypeAccessors","app","handleInitialScroll","routeOrError","setupListeners","registerHook","fullPath","createHref","t22","IDLE_TIMEOUT","_sfc_main$8","isVisible","widgetRoot","useIntersectionObserver","nextTick","lineClamp","link","RouterLink","widget","_sfc_render$8","_sfc_staticRenderFns$8","__component__$8","NcReferenceWidget","_sfc_main$7","renderFunctionResult","_sfc_render$7","_sfc_staticRenderFns$7","__component__$7","NcCustomPickerElement","t8","anyLinkProviderId","anyLinkProvider","imagePath","getProviders","keep","sortProviders","providerList","timestamps","searchProvider","limit","providers","escapedQuery","filteredSortedProviders","searchResult","touchProvider","timestamp","mytimer","delay","isUrl","t38","t43","_sfc_main$6","_sfc_render$6","_sfc_staticRenderFns$6","__component__$6","LinkVariantIcon","_sfc_main$5","loading","_sfc_render$5","_sfc_staticRenderFns$5","__component__$5","NcProviderList","t23","NcRawLinkInput","NcSearchResult","t30","LIMIT","results","pid","providerEntriesWithId","resultsBySearchProvider","searchProviderId","searchPromises","promises","NcSearch","MODES","NcReferencePicker","t12","t18","elem","NcReferencePickerModal","predicate","thisArg","CustomEvent$1","ansiRegex","onlyFirst","NcAutoCompleteResult","t32","smilesCharacters","textSmiles","VTooltip","t0","t24","t47","checkIfDarkTheme","backgroundInvertIfDark","translations","TABS","TOOLS","tab","basename","extname","theme","FilerobotImageEditor","__vite_default__","closingReason","haveNotSavedChanges","fullName","imageCanvas","mimeType","quality","origin","pathname","putUrl","join","dirname","blob","showSuccess","updatedFile","rawStat","Node","showError","decision","livePictureExt","livePictureExtRegex","findLivePhotoPeerFromFileId","peerFileId","fileList","file","findLivePhotoPeerFromName","referenceFile","comparedFile","ImageEditor","PlayCircleOutline","getDavPath","old","scrollX","scrollY","scrollPercX","scrollPercY","newZoomRatio","growX","growY","pageX","pageY","moveX","moveY","translate","enabledPreviewProviders","appName","previewSupportedMimes","browserSupportedMimes","filterEnabledMimes","filter","mimeRegex","enabledMimes","ignoredMimes","Images","VuePlyr","__vitePreload","blankVideo","peerFile","getPreviewIfAny","control","Videos","Audios","Viewer","handledMimes","mimes","mimesAliases","enableSidebar","loadMore","canLoop","onPrev","onNext","handlerId","compareFileInfo","ViewerService","appVersion"],"ignoreList":[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93],"sources":["../node_modules/@nextcloud/capabilities/dist/index.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcDialog-CzWTz2Qr.mjs","../node_modules/@mdi/svg/svg/eye.svg?raw","../src/files_actions/viewerAction.ts","../node_modules/vue-async-computed/dist/vue-async-computed.esm.js","../node_modules/vue-material-design-icons/PlayCircleOutline.vue","../node_modules/@nextcloud/vue/dist/chunks/NcActionButtonGroup-ue4dTx-p.mjs","../node_modules/@nextcloud/vue/dist/chunks/useModelMigration-EhAWvqDD.mjs","../node_modules/ical.js/dist/ical.js","../node_modules/@nextcloud/timezones/dist/index.mjs","../node_modules/@nextcloud/vue-select/dist/vue-select.js","../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../node_modules/@nextcloud/vue/dist/chunks/ChevronDown-DFQfzh63.mjs","../node_modules/@nextcloud/vue/dist/chunks/index-Bz6q9mZw.mjs","../node_modules/@nextcloud/vue/dist/Components/NcEllipsisedOption.mjs","../node_modules/@nextcloud/vue/dist/Components/NcActionRouter.mjs","../node_modules/@nextcloud/vue/dist/Components/NcActionText.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcUserStatusIcon-CvuiXAZR.mjs","../node_modules/@nextcloud/vue/dist/chunks/GenColors-DpvFVzBN.mjs","../node_modules/crypt/crypt.js","../node_modules/charenc/charenc.js","../node_modules/is-buffer/index.js","../node_modules/md5/md5.js","../node_modules/@nextcloud/vue/dist/chunks/usernameToColor-Cx2qDZ1W.mjs","../node_modules/@nextcloud/vue/dist/chunks/getAvatarUrl-DxvUjKMi.mjs","../node_modules/linkifyjs/dist/linkify.es.js","../node_modules/linkify-string/dist/linkify-string.es.js","../node_modules/striptags/src/striptags.js","../node_modules/@nextcloud/vue/dist/chunks/autolink-cbuFALXr.mjs","../node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs","../node_modules/@vueuse/components/index.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAvatar-B8e2YFLI.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcListItemIcon-C6Ok3G7x.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSelect-DvGJHzaa.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcTimezonePicker-D64nWJh7.mjs","../node_modules/date-format-parse/es/util.js","../node_modules/date-format-parse/es/locale/en.js","../node_modules/date-format-parse/es/format.js","../node_modules/date-format-parse/es/parse.js","../node_modules/vue2-datepicker/index.esm.js","../node_modules/@nextcloud/vue/dist/Components/NcDateTimePicker.mjs","../node_modules/@nextcloud/vue/dist/Components/NcDateTimePickerNative.mjs","../node_modules/@nextcloud/vue/dist/chunks/AlertCircleOutline-DBxbepLy.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputField-ixTTHy3h.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcPasswordField-CAGGdgVF.mjs","../node_modules/@nextcloud/vue/dist/chunks/ArrowRight-CY2b9hgN.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcTextField-8RXOuqAy.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcActionInput-4-s29xoN.mjs","../node_modules/@nextcloud/vue/dist/chunks/ArrowLeft-DuT2LZOm.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppContent-CIMgDnJM.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationToggle-Dw0ZPjy2.mjs","../node_modules/@nextcloud/vue/dist/Components/NcVNodes.mjs","../node_modules/@nextcloud/vue/dist/chunks/ChevronUp-C7Dy9Bph.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputConfirmCancel-DwmLGFYb.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationItem-BkkuFdfa.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationSearch-Bg-WTyms.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationSettings-CieV4qU5.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppSettingsDialog-B4GS8urN.mjs","../node_modules/nanoid/non-secure/index.js","../node_modules/@linusborg/vue-simple-portal/dist/index.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcCheckboxRadioSwitch-R1y0mLbC.mjs","../node_modules/@nextcloud/vue/dist/Components/NcEmptyContent.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppSidebar-DaJVGxLh.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcCollectionList-COYakeMz.mjs","../node_modules/vue-color/dist/vue-color.min.js","../node_modules/@nextcloud/vue/dist/chunks/NcColorPicker-8wU8rMbF.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcContent-BEcHmywv.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcDashboardWidgetItem-vMP_Z6ay.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcDashboardWidget-GDdmCQm-.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcDateTime-D5UaJ0tw.mjs","../node_modules/emoji-mart-vue-fast/dist/emoji-mart.js","../node_modules/@nextcloud/vue/dist/chunks/emoji-BY_D0V5K.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcEmojiPicker-BSoMzxJl.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcListItem-DCh0J8Z4.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcProgressBar-DegJ2JjE.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcRelatedResourcesPanel-Bts9eDYA.mjs","../node_modules/@nextcloud/vue/dist/chunks/index-bjwozrEX.mjs","../node_modules/@nextcloud/vue/dist/chunks/index-CtoB4eIp.mjs","../node_modules/vue-router/dist/vue-router.esm.js","../node_modules/@nextcloud/vue/dist/chunks/referencePickerModal-C6YJvRC9.mjs","../node_modules/tributejs/dist/tribute.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcRichText-CytzoTXW.mjs","../node_modules/string-length/node_modules/ansi-regex/index.js","../node_modules/string-length/node_modules/strip-ansi/index.js","../node_modules/@nextcloud/vue/dist/chunks/NcRichContenteditable-BznZW1Mm.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSelectTags-B4PjZQtt.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsInputText-DhZ_giTf.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSection-B7SqDXbX.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSelectGroup-BAhG6V1R.mjs","../node_modules/@nextcloud/vue/dist/Composables/useHotKey.mjs","../node_modules/@nextcloud/vue/dist/Functions/isDarkTheme.mjs","../src/models/editorTranslations.js","../src/components/ImageEditor.vue","../src/utils/livePhotoUtils.ts","../src/components/Images.vue","../src/models/images.js","../src/components/Videos.vue","../src/models/videos.js","../src/components/Audios.vue","../src/models/audios.js","../src/services/Viewer.js","../src/init.ts"],"sourcesContent":["import { loadState as i } from \"@nextcloud/initial-state\";\nfunction e() {\n try {\n return i(\"core\", \"capabilities\");\n } catch {\n return console.debug(\"Could not find capabilities initial state fall back to _oc_capabilities\"), \"_oc_capabilities\" in window ? window._oc_capabilities : {};\n }\n}\nexport {\n e as getCapabilities\n};\n","import '../assets/NcDialog-Bzs9oxyt.css';\nimport { useElementSize } from \"@vueuse/core\";\nimport { defineComponent, ref, computed } from \"vue\";\nimport NcModal from \"../Components/NcModal.mjs\";\nimport { N as NcDialogButton } from \"./NcDialogButton-B5jVZIGf.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-CMooMQt0.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = defineComponent({\n name: \"NcDialog\",\n components: {\n NcDialogButton,\n NcModal\n },\n props: {\n /** Name of the dialog (the heading) */\n name: {\n type: String,\n required: true\n },\n /** Text of the dialog */\n message: {\n type: String,\n default: \"\"\n },\n /** Additional elements to add to the focus trap */\n additionalTrapElements: {\n type: Array,\n validator: (arr) => {\n return Array.isArray(arr) && arr.every(\n (element) => typeof element === \"string\" || element instanceof HTMLElement\n );\n },\n default: () => []\n },\n /**\n * The element where to mount the dialog, if `null` is passed the dialog is mounted in place\n * @default 'body'\n */\n container: {\n type: String,\n required: false,\n default: \"body\"\n },\n /**\n * Whether the dialog should be shown\n * @default true\n */\n open: {\n type: Boolean,\n default: true\n },\n /**\n * Size of the underlying NcModal\n * @default 'small'\n * @type {'small'|'normal'|'large'|'full'}\n */\n size: {\n type: String,\n required: false,\n default: \"small\",\n validator: (value) => typeof value === \"string\" && [\"small\", \"normal\", \"large\", \"full\"].includes(value)\n },\n /**\n * Buttons to display\n * @default []\n */\n buttons: {\n type: Array,\n required: false,\n default: () => [],\n validator: (value) => Array.isArray(value) && value.every((element) => typeof element === \"object\")\n },\n /**\n * Set to false to no show a close button on the dialog\n * @default true\n */\n canClose: {\n type: Boolean,\n default: true\n },\n /**\n * Close the dialog if the user clicked outside of the dialog\n * Only relevant if `canClose` is set to true.\n */\n closeOnClickOutside: {\n type: Boolean,\n default: false\n },\n /**\n * Make the dialog wrapper a HTML form element.\n * The buttons will be wrapped within the form so they can be used as submit / reset buttons.\n * Please note that when using the property the `navigation` should not be used.\n */\n isForm: {\n type: Boolean,\n default: false\n },\n /**\n * Declare if hiding the modal should be animated\n * @default false\n */\n outTransition: {\n type: Boolean,\n default: false\n },\n /**\n * Optionally pass additionaly classes which will be set on the navigation for custom styling\n * @default ''\n * @example\n * ```html\n * \n * \n * \n * ```\n */\n navigationClasses: {\n type: [String, Array, Object],\n required: false,\n default: \"\"\n },\n /**\n * aria-label for the dialog navigation.\n * Use it when you want to provide a more meaningful label than the dialog name.\n *\n * By default, navigation is labeled by the dialog name.\n */\n navigationAriaLabel: {\n type: String,\n required: false,\n default: \"\"\n },\n /**\n * aria-labelledby for the dialog navigation.\n * Use it when you have an implicit navigation label (e.g. a heading).\n *\n * By default, navigation is labeled by the dialog name.\n */\n navigationAriaLabelledby: {\n type: String,\n required: false,\n default: \"\"\n },\n /**\n * Optionally pass additionaly classes which will be set on the content wrapper for custom styling\n * @default ''\n */\n contentClasses: {\n type: [String, Array, Object],\n required: false,\n default: \"\"\n },\n /**\n * Optionally pass additionaly classes which will be set on the dialog itself\n * (the default `class` attribute will be set on the modal wrapper)\n * @default ''\n */\n dialogClasses: {\n type: [String, Array, Object],\n required: false,\n default: \"\"\n }\n },\n emits: [\"closing\", \"update:open\", \"submit\"],\n setup(props, { emit, slots }) {\n const wrapper = ref();\n const { width: dialogWidth } = useElementSize(wrapper, { width: 900 });\n const isNavigationCollapsed = computed(() => dialogWidth.value < 876);\n const hasNavigation = computed(() => slots?.navigation !== void 0);\n const navigationId = GenRandomId();\n const navigationAriaLabelAttr = computed(() => props.navigationAriaLabel || void 0);\n const navigationAriaLabelledbyAttr = computed(() => {\n if (props.navigationAriaLabel) {\n return void 0;\n }\n return props.navigationAriaLabelledby || navigationId;\n });\n const dialogElement = ref();\n const dialogTagName = computed(() => props.isForm && !hasNavigation.value ? \"form\" : \"div\");\n const dialogListeners = computed(\n () => dialogTagName.value === \"form\" ? {\n /**\n * @param {SubmitEvent} event Form submit event\n */\n submit(event) {\n event.preventDefault();\n emit(\"submit\", event);\n }\n } : {}\n );\n const showModal = ref(true);\n const handleButtonClose = (event, result) => {\n if (dialogTagName.value === \"form\" && !dialogElement.value.reportValidity()) {\n return;\n }\n handleClosing(result);\n window.setTimeout(() => handleClosed(), 300);\n };\n const handleClosing = (result) => {\n showModal.value = false;\n emit(\"closing\", result);\n };\n const handleClosed = () => {\n showModal.value = true;\n emit(\"update:open\", false);\n };\n const modalProps = computed(() => ({\n canClose: props.canClose,\n container: props.container === void 0 ? \"body\" : props.container,\n // we do not pass the name as we already have the name as the headline\n // name: props.name,\n // But we need to set the correct label id so the dialog is labelled\n labelId: navigationId,\n size: props.size,\n show: props.open && showModal.value,\n outTransition: props.outTransition,\n closeOnClickOutside: props.closeOnClickOutside,\n additionalTrapElements: props.additionalTrapElements\n }));\n return {\n dialogElement,\n dialogListeners,\n dialogTagName,\n handleButtonClose,\n handleClosing,\n handleClosed,\n hasNavigation,\n navigationId,\n navigationAriaLabelAttr,\n navigationAriaLabelledbyAttr,\n isNavigationCollapsed,\n modalProps,\n wrapper\n };\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.open ? _c(\"NcModal\", _vm._b({ staticClass: \"dialog__modal\", attrs: { \"enable-slideshow\": false, \"enable-swipe\": false }, on: { \"close\": _vm.handleClosed, \"update:show\": function($event) {\n return _vm.handleClosing();\n } } }, \"NcModal\", _vm.modalProps, false), [_c(\"h2\", { staticClass: \"dialog__name\", attrs: { \"id\": _vm.navigationId }, domProps: { \"textContent\": _vm._s(_vm.name) } }), _c(_vm.dialogTagName, _vm._g({ ref: \"dialogElement\", tag: \"component\", staticClass: \"dialog\", class: _vm.dialogClasses }, _vm.dialogListeners), [_c(\"div\", { ref: \"wrapper\", class: [\"dialog__wrapper\", { \"dialog__wrapper--collapsed\": _vm.isNavigationCollapsed }] }, [_vm.hasNavigation ? _c(\"nav\", { staticClass: \"dialog__navigation\", class: _vm.navigationClasses, attrs: { \"aria-label\": _vm.navigationAriaLabelAttr, \"aria-labelledby\": _vm.navigationAriaLabelledbyAttr } }, [_vm._t(\"navigation\", null, { \"isCollapsed\": _vm.isNavigationCollapsed })], 2) : _vm._e(), _c(\"div\", { staticClass: \"dialog__content\", class: _vm.contentClasses }, [_vm._t(\"default\", function() {\n return [_c(\"p\", { staticClass: \"dialog__text\" }, [_vm._v(\" \" + _vm._s(_vm.message) + \" \")])];\n })], 2)]), _c(\"div\", { staticClass: \"dialog__actions\" }, [_vm._t(\"actions\", function() {\n return _vm._l(_vm.buttons, function(button, idx) {\n return _c(\"NcDialogButton\", _vm._b({ key: idx, on: { \"click\": _vm.handleButtonClose } }, \"NcDialogButton\", button, false));\n });\n })], 2)])], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"e79a4708\"\n);\nconst NcDialog = __component__.exports;\nexport {\n NcDialog as N\n};\n","export default \"\"","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport type { Node, View } from '@nextcloud/files'\n\nimport { DefaultType, FileAction, Permission, registerFileAction } from '@nextcloud/files'\nimport { t } from '@nextcloud/l10n'\nimport svgEye from '@mdi/svg/svg/eye.svg?raw'\n\n/**\n * @param node The file to open\n * @param view any The files view\n * @param dir the directory path\n */\nfunction pushToHistory(node: Node, view: View, dir: string) {\n\twindow.OCP.Files.Router.goToRoute(\n\t\tnull,\n\t\t{ view: view.id, fileid: String(node.fileid) },\n\t\t{ dir, openfile: 'true' },\n\t\ttrue,\n\t)\n}\n\n/**\n * Execute the viewer files action\n * @param node The active node\n * @param view The current view\n * @param dir The current path\n */\nasync function execAction(node: Node, view: View, dir: string): Promise {\n\tconst onClose = () => {\n\t\t// This can sometime be called with the openfile set to true already. But we don't want to keep openfile when closing the viewer.\n\t\tconst newQuery = { ...window.OCP.Files.Router.query }\n\t\tdelete newQuery.openfile\n\t\twindow.OCP.Files.Router.goToRoute(null, window.OCP.Files.Router.params, newQuery)\n\t}\n\n\tpushToHistory(node, view, dir)\n\twindow.OCA.Viewer.open({\n\t\tpath: node.path,\n\t\tonPrev(fileInfo) {\n\t\t\tpushToHistory(fileInfo, view, dir)\n\t\t},\n\t\tonNext(fileInfo) {\n\t\t\tpushToHistory(fileInfo, view, dir)\n\t\t},\n\t\tonClose\n\t})\n\n\treturn null\n}\n\n/**\n * Register the viewer action on the files API\n */\nexport function registerViewerAction() {\n\tregisterFileAction(new FileAction({\n\t\tid: 'view',\n\t\tdisplayName: () => t('viewer', 'View'),\n\t\ticonSvgInline: () => svgEye,\n\t\tdefault: DefaultType.DEFAULT,\n\t\tenabled: (nodes) => {\n\t\t\t// Disable if not located in user root\n\t\t\tif (nodes.some(node => !(node.isDavRessource && node.root?.startsWith('/files')))) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn nodes.every((node) =>\n\t\t\t\tBoolean(node.permissions & Permission.READ)\n\t\t\t\t&& window.OCA.Viewer.mimetypes.includes(node.mime),\n\t\t\t)\n\t\t},\n\t\texec: execAction,\n\t}))\n}\n","function setAsyncState(vm, stateObject, state) {\n vm.$set(vm.$data._asyncComputed[stateObject], 'state', state);\n vm.$set(vm.$data._asyncComputed[stateObject], 'updating', state === 'updating');\n vm.$set(vm.$data._asyncComputed[stateObject], 'error', state === 'error');\n vm.$set(vm.$data._asyncComputed[stateObject], 'success', state === 'success');\n}\n\nfunction getterOnly(fn) {\n if (typeof fn === 'function') return fn;\n\n return fn.get;\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction isComputedLazy(item) {\n return hasOwnProperty(item, 'lazy') && item.lazy;\n}\n\nfunction isLazyActive(vm, key) {\n return vm[lazyActivePrefix + key];\n}\n\nvar lazyActivePrefix = 'async_computed$lazy_active$',\n lazyDataPrefix = 'async_computed$lazy_data$';\n\nfunction initLazy(data, key, value) {\n data[lazyActivePrefix + key] = false;\n data[lazyDataPrefix + key] = value;\n}\n\nfunction makeLazyComputed(key) {\n return {\n get: function get() {\n this[lazyActivePrefix + key] = true;\n return this[lazyDataPrefix + key];\n },\n set: function set(value) {\n this[lazyDataPrefix + key] = value;\n }\n };\n}\n\nfunction silentSetLazy(vm, key, value) {\n vm[lazyDataPrefix + key] = value;\n}\nfunction silentGetLazy(vm, key) {\n return vm[lazyDataPrefix + key];\n}\n\nvar getGetterWatchedByArray = function getGetterWatchedByArray(computedAsyncProperty) {\n return function getter() {\n var _this = this;\n\n computedAsyncProperty.watch.forEach(function (key) {\n // Check if nested key is watched.\n var splittedByDot = key.split('.');\n if (splittedByDot.length === 1) {\n // If not, just access it.\n // eslint-disable-next-line no-unused-expressions\n _this[key];\n } else {\n // Access the nested propety.\n try {\n var start = _this;\n splittedByDot.forEach(function (part) {\n start = start[part];\n });\n } catch (error) {\n console.error('AsyncComputed: bad path: ', key);\n throw error;\n }\n }\n });\n return computedAsyncProperty.get.call(this);\n };\n};\n\nvar getGetterWatchedByFunction = function getGetterWatchedByFunction(computedAsyncProperty) {\n return function getter() {\n computedAsyncProperty.watch.call(this);\n return computedAsyncProperty.get.call(this);\n };\n};\n\nfunction getWatchedGetter(computedAsyncProperty) {\n if (typeof computedAsyncProperty.watch === 'function') {\n return getGetterWatchedByFunction(computedAsyncProperty);\n } else if (Array.isArray(computedAsyncProperty.watch)) {\n computedAsyncProperty.watch.forEach(function (key) {\n if (typeof key !== 'string') {\n throw new Error('AsyncComputed: watch elemnts must be strings');\n }\n });\n return getGetterWatchedByArray(computedAsyncProperty);\n } else {\n throw Error('AsyncComputed: watch should be function or an array');\n }\n}\n\nvar DidNotUpdate = typeof Symbol === 'function' ? Symbol('did-not-update') : {};\n\nvar getGetterWithShouldUpdate = function getGetterWithShouldUpdate(asyncProprety, currentGetter) {\n return function getter() {\n return asyncProprety.shouldUpdate.call(this) ? currentGetter.call(this) : DidNotUpdate;\n };\n};\n\nvar shouldNotUpdate = function shouldNotUpdate(value) {\n return DidNotUpdate === value;\n};\n\nvar prefix = '_async_computed$';\n\nvar AsyncComputed = {\n install: function install(Vue, pluginOptions) {\n pluginOptions = pluginOptions || {};\n\n Vue.config.optionMergeStrategies.asyncComputed = Vue.config.optionMergeStrategies.computed;\n\n Vue.mixin({\n data: function data() {\n return {\n _asyncComputed: {}\n };\n },\n\n computed: {\n $asyncComputed: function $asyncComputed() {\n return this.$data._asyncComputed;\n }\n },\n beforeCreate: function beforeCreate() {\n var asyncComputed = this.$options.asyncComputed || {};\n\n if (!Object.keys(asyncComputed).length) return;\n\n for (var key in asyncComputed) {\n var getter = getterFn(key, asyncComputed[key]);\n this.$options.computed[prefix + key] = getter;\n }\n\n this.$options.data = initDataWithAsyncComputed(this.$options, pluginOptions);\n },\n created: function created() {\n for (var key in this.$options.asyncComputed || {}) {\n var item = this.$options.asyncComputed[key],\n value = generateDefault.call(this, item, pluginOptions);\n if (isComputedLazy(item)) {\n silentSetLazy(this, key, value);\n } else {\n this[key] = value;\n }\n }\n\n for (var _key in this.$options.asyncComputed || {}) {\n handleAsyncComputedPropetyChanges(this, _key, pluginOptions, Vue);\n }\n }\n });\n }\n};\n\nfunction handleAsyncComputedPropetyChanges(vm, key, pluginOptions, Vue) {\n var promiseId = 0;\n var watcher = function watcher(newPromise) {\n var thisPromise = ++promiseId;\n\n if (shouldNotUpdate(newPromise)) return;\n\n if (!newPromise || !newPromise.then) {\n newPromise = Promise.resolve(newPromise);\n }\n setAsyncState(vm, key, 'updating');\n\n newPromise.then(function (value) {\n if (thisPromise !== promiseId) return;\n setAsyncState(vm, key, 'success');\n vm[key] = value;\n }).catch(function (err) {\n if (thisPromise !== promiseId) return;\n\n setAsyncState(vm, key, 'error');\n Vue.set(vm.$data._asyncComputed[key], 'exception', err);\n if (pluginOptions.errorHandler === false) return;\n\n var handler = pluginOptions.errorHandler === undefined ? console.error.bind(console, 'Error evaluating async computed property:') : pluginOptions.errorHandler;\n\n if (pluginOptions.useRawError) {\n handler(err, vm, err.stack);\n } else {\n handler(err.stack);\n }\n });\n };\n Vue.set(vm.$data._asyncComputed, key, {\n exception: null,\n update: function update() {\n if (!vm._isDestroyed) {\n watcher(getterOnly(vm.$options.asyncComputed[key]).apply(vm));\n }\n }\n });\n setAsyncState(vm, key, 'updating');\n vm.$watch(prefix + key, watcher, { immediate: true });\n}\n\nfunction initDataWithAsyncComputed(options, pluginOptions) {\n var optionData = options.data;\n var asyncComputed = options.asyncComputed || {};\n\n return function vueAsyncComputedInjectedDataFn(vm) {\n var data = (typeof optionData === 'function' ? optionData.call(this, vm) : optionData) || {};\n for (var key in asyncComputed) {\n var item = this.$options.asyncComputed[key];\n\n var value = generateDefault.call(this, item, pluginOptions);\n if (isComputedLazy(item)) {\n initLazy(data, key, value);\n this.$options.computed[key] = makeLazyComputed(key);\n } else {\n data[key] = value;\n }\n }\n return data;\n };\n}\n\nfunction getterFn(key, fn) {\n if (typeof fn === 'function') return fn;\n\n var getter = fn.get;\n\n if (hasOwnProperty(fn, 'watch')) {\n getter = getWatchedGetter(fn);\n }\n\n if (hasOwnProperty(fn, 'shouldUpdate')) {\n getter = getGetterWithShouldUpdate(fn, getter);\n }\n\n if (isComputedLazy(fn)) {\n var nonLazy = getter;\n getter = function lazyGetter() {\n if (isLazyActive(this, key)) {\n return nonLazy.call(this);\n } else {\n return silentGetLazy(this, key);\n }\n };\n }\n return getter;\n}\n\nfunction generateDefault(fn, pluginOptions) {\n var defaultValue = null;\n\n if ('default' in fn) {\n defaultValue = fn.default;\n } else if ('default' in pluginOptions) {\n defaultValue = pluginOptions.default;\n }\n\n if (typeof defaultValue === 'function') {\n return defaultValue.call(this);\n } else {\n return defaultValue;\n }\n}\n\n/* istanbul ignore if */\nif (typeof window !== 'undefined' && window.Vue) {\n // Auto install in dist mode\n window.Vue.use(AsyncComputed);\n}\n\nexport default AsyncComputed;\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","import '../assets/NcActionButtonGroup-BND4GQdv.css';\nimport { defineComponent } from \"vue\";\nimport { G as GenRandomId } from \"./GenRandomId-CMooMQt0.mjs\";\nimport { r as register, a as t } from \"./_l10n-B-QPoWAJ.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister();\nconst _sfc_main = defineComponent({\n name: \"NcActionButtonGroup\",\n inject: {\n isInSemanticMenu: {\n from: \"NcActions:isSemanticMenu\",\n default: false\n }\n },\n props: {\n /**\n * Optional text shown below the button group\n */\n name: {\n required: false,\n default: void 0,\n type: String\n }\n },\n setup() {\n return {\n labelId: `nc-action-button-group-${GenRandomId()}`\n };\n },\n methods: {\n t\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _c(\"li\", { staticClass: \"nc-button-group-base\", attrs: { \"role\": _vm.isInSemanticMenu && \"presentation\" } }, [_vm.name ? _c(\"div\", { attrs: { \"id\": _vm.labelId } }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _c(\"ul\", { staticClass: \"nc-button-group-content\", attrs: { \"role\": \"group\", \"aria-labelledby\": _vm.name ? _vm.labelId : void 0 } }, [_vm._t(\"default\")], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcActionButtonGroup = __component__.exports;\nexport {\n NcActionButtonGroup as N\n};\n","import Vue, { getCurrentInstance, computed } from \"vue\";\nfunction useModelMigration(oldModelName, oldModelEvent, required = false) {\n const vm = getCurrentInstance().proxy;\n if (required && vm.$props[oldModelName] === void 0 && vm.$props.modelValue === void 0) {\n Vue.util.warn(`Missing required prop: \"modelValue\" or old \"${oldModelName}\"`);\n }\n const model = computed({\n get() {\n if (vm.$props[oldModelName] !== void 0) {\n return vm.$props[oldModelName];\n }\n return vm.$props.modelValue;\n },\n set(value) {\n vm.$emit(\"update:modelValue\", value);\n vm.$emit(\"update:model-value\", value);\n vm.$emit(oldModelEvent, value);\n }\n });\n return model;\n}\nexport {\n useModelMigration as u\n};\n","/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * Represents the BINARY value type, which contains extra methods for encoding and decoding.\n *\n * @memberof ICAL\n */\nclass Binary {\n /**\n * Creates a binary value from the given string.\n *\n * @param {String} aString The binary value string\n * @return {Binary} The binary value instance\n */\n static fromString(aString) {\n return new Binary(aString);\n }\n\n /**\n * Creates a new ICAL.Binary instance\n *\n * @param {String} aValue The binary data for this value\n */\n constructor(aValue) {\n this.value = aValue;\n }\n\n /**\n * The type name, to be used in the jCal object.\n * @default \"binary\"\n * @constant\n */\n icaltype = \"binary\";\n\n /**\n * Base64 decode the current value\n *\n * @return {String} The base64-decoded value\n */\n decodeValue() {\n return this._b64_decode(this.value);\n }\n\n /**\n * Encodes the passed parameter with base64 and sets the internal\n * value to the result.\n *\n * @param {String} aValue The raw binary value to encode\n */\n setEncodedValue(aValue) {\n this.value = this._b64_encode(aValue);\n }\n\n _b64_encode(data) {\n // http://kevin.vanzonneveld.net\n // + original by: Tyler Akins (http://rumkin.com)\n // + improved by: Bayron Guevara\n // + improved by: Thunder.m\n // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n // + bugfixed by: Pellentesque Malesuada\n // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n // + improved by: Rafał Kukawski (http://kukawski.pl)\n // * example 1: base64_encode('Kevin van Zonneveld');\n // * returns 1: 'S2V2aW4gdmFuIFpvbm5ldmVsZA=='\n // mozilla has this native\n // - but breaks in 2.0.0.12!\n //if (typeof this.window['atob'] == 'function') {\n // return atob(data);\n //}\n let b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\" +\n \"abcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let o1, o2, o3, h1, h2, h3, h4, bits, i = 0,\n ac = 0,\n enc = \"\",\n tmp_arr = [];\n\n if (!data) {\n return data;\n }\n\n do { // pack three octets into four hexets\n o1 = data.charCodeAt(i++);\n o2 = data.charCodeAt(i++);\n o3 = data.charCodeAt(i++);\n\n bits = o1 << 16 | o2 << 8 | o3;\n\n h1 = bits >> 18 & 0x3f;\n h2 = bits >> 12 & 0x3f;\n h3 = bits >> 6 & 0x3f;\n h4 = bits & 0x3f;\n\n // use hexets to index into b64, and append result to encoded string\n tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);\n } while (i < data.length);\n\n enc = tmp_arr.join('');\n\n let r = data.length % 3;\n\n return (r ? enc.slice(0, r - 3) : enc) + '==='.slice(r || 3);\n\n }\n\n _b64_decode(data) {\n // http://kevin.vanzonneveld.net\n // + original by: Tyler Akins (http://rumkin.com)\n // + improved by: Thunder.m\n // + input by: Aman Gupta\n // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n // + bugfixed by: Onno Marsman\n // + bugfixed by: Pellentesque Malesuada\n // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n // + input by: Brett Zamir (http://brett-zamir.me)\n // + bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n // * example 1: base64_decode('S2V2aW4gdmFuIFpvbm5ldmVsZA==');\n // * returns 1: 'Kevin van Zonneveld'\n // mozilla has this native\n // - but breaks in 2.0.0.12!\n //if (typeof this.window['btoa'] == 'function') {\n // return btoa(data);\n //}\n let b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\" +\n \"abcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let o1, o2, o3, h1, h2, h3, h4, bits, i = 0,\n ac = 0,\n dec = \"\",\n tmp_arr = [];\n\n if (!data) {\n return data;\n }\n\n data += '';\n\n do { // unpack four hexets into three octets using index points in b64\n h1 = b64.indexOf(data.charAt(i++));\n h2 = b64.indexOf(data.charAt(i++));\n h3 = b64.indexOf(data.charAt(i++));\n h4 = b64.indexOf(data.charAt(i++));\n\n bits = h1 << 18 | h2 << 12 | h3 << 6 | h4;\n\n o1 = bits >> 16 & 0xff;\n o2 = bits >> 8 & 0xff;\n o3 = bits & 0xff;\n\n if (h3 == 64) {\n tmp_arr[ac++] = String.fromCharCode(o1);\n } else if (h4 == 64) {\n tmp_arr[ac++] = String.fromCharCode(o1, o2);\n } else {\n tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);\n }\n } while (i < data.length);\n\n dec = tmp_arr.join('');\n\n return dec;\n }\n\n /**\n * The string representation of this value\n * @return {String}\n */\n toString() {\n return this.value;\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\nconst DURATION_LETTERS = /([PDWHMTS]{1,1})/;\nconst DATA_PROPS_TO_COPY = [\"weeks\", \"days\", \"hours\", \"minutes\", \"seconds\", \"isNegative\"];\n\n/**\n * This class represents the \"duration\" value type, with various calculation\n * and manipulation methods.\n *\n * @memberof ICAL\n */\nclass Duration {\n /**\n * Returns a new ICAL.Duration instance from the passed seconds value.\n *\n * @param {Number} aSeconds The seconds to create the instance from\n * @return {Duration} The newly created duration instance\n */\n static fromSeconds(aSeconds) {\n return (new Duration()).fromSeconds(aSeconds);\n }\n\n /**\n * Checks if the given string is an iCalendar duration value.\n *\n * @param {String} value The raw ical value\n * @return {Boolean} True, if the given value is of the\n * duration ical type\n */\n static isValueString(string) {\n return (string[0] === 'P' || string[1] === 'P');\n }\n\n /**\n * Creates a new {@link ICAL.Duration} instance from the passed string.\n *\n * @param {String} aStr The string to parse\n * @return {Duration} The created duration instance\n */\n static fromString(aStr) {\n let pos = 0;\n let dict = Object.create(null);\n let chunks = 0;\n\n while ((pos = aStr.search(DURATION_LETTERS)) !== -1) {\n let type = aStr[pos];\n let numeric = aStr.slice(0, Math.max(0, pos));\n aStr = aStr.slice(pos + 1);\n\n chunks += parseDurationChunk(type, numeric, dict);\n }\n\n if (chunks < 2) {\n // There must be at least a chunk with \"P\" and some unit chunk\n throw new Error(\n 'invalid duration value: Not enough duration components in \"' + aStr + '\"'\n );\n }\n\n return new Duration(dict);\n }\n\n /**\n * Creates a new ICAL.Duration instance from the given data object.\n *\n * @param {Object} aData An object with members of the duration\n * @param {Number=} aData.weeks Duration in weeks\n * @param {Number=} aData.days Duration in days\n * @param {Number=} aData.hours Duration in hours\n * @param {Number=} aData.minutes Duration in minutes\n * @param {Number=} aData.seconds Duration in seconds\n * @param {Boolean=} aData.isNegative If true, the duration is negative\n * @return {Duration} The createad duration instance\n */\n static fromData(aData) {\n return new Duration(aData);\n }\n\n /**\n * Creates a new ICAL.Duration instance.\n *\n * @param {Object} data An object with members of the duration\n * @param {Number=} data.weeks Duration in weeks\n * @param {Number=} data.days Duration in days\n * @param {Number=} data.hours Duration in hours\n * @param {Number=} data.minutes Duration in minutes\n * @param {Number=} data.seconds Duration in seconds\n * @param {Boolean=} data.isNegative If true, the duration is negative\n */\n constructor(data) {\n this.wrappedJSObject = this;\n this.fromData(data);\n }\n\n /**\n * The weeks in this duration\n * @type {Number}\n * @default 0\n */\n weeks = 0;\n\n /**\n * The days in this duration\n * @type {Number}\n * @default 0\n */\n days = 0;\n\n /**\n * The days in this duration\n * @type {Number}\n * @default 0\n */\n hours = 0;\n\n /**\n * The minutes in this duration\n * @type {Number}\n * @default 0\n */\n minutes = 0;\n\n /**\n * The seconds in this duration\n * @type {Number}\n * @default 0\n */\n seconds = 0;\n\n /**\n * The seconds in this duration\n * @type {Boolean}\n * @default false\n */\n isNegative = false;\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"icalduration\"\n */\n icalclass = \"icalduration\";\n\n /**\n * The type name, to be used in the jCal object.\n * @constant\n * @type {String}\n * @default \"duration\"\n */\n icaltype = \"duration\";\n\n /**\n * Returns a clone of the duration object.\n *\n * @return {Duration} The cloned object\n */\n clone() {\n return Duration.fromData(this);\n }\n\n /**\n * The duration value expressed as a number of seconds.\n *\n * @return {Number} The duration value in seconds\n */\n toSeconds() {\n let seconds = this.seconds + 60 * this.minutes + 3600 * this.hours +\n 86400 * this.days + 7 * 86400 * this.weeks;\n return (this.isNegative ? -seconds : seconds);\n }\n\n /**\n * Reads the passed seconds value into this duration object. Afterwards,\n * members like {@link ICAL.Duration#days days} and {@link ICAL.Duration#weeks weeks} will be set up\n * accordingly.\n *\n * @param {Number} aSeconds The duration value in seconds\n * @return {Duration} Returns this instance\n */\n fromSeconds(aSeconds) {\n let secs = Math.abs(aSeconds);\n\n this.isNegative = (aSeconds < 0);\n this.days = trunc(secs / 86400);\n\n // If we have a flat number of weeks, use them.\n if (this.days % 7 == 0) {\n this.weeks = this.days / 7;\n this.days = 0;\n } else {\n this.weeks = 0;\n }\n\n secs -= (this.days + 7 * this.weeks) * 86400;\n\n this.hours = trunc(secs / 3600);\n secs -= this.hours * 3600;\n\n this.minutes = trunc(secs / 60);\n secs -= this.minutes * 60;\n\n this.seconds = secs;\n return this;\n }\n\n /**\n * Sets up the current instance using members from the passed data object.\n *\n * @param {Object} aData An object with members of the duration\n * @param {Number=} aData.weeks Duration in weeks\n * @param {Number=} aData.days Duration in days\n * @param {Number=} aData.hours Duration in hours\n * @param {Number=} aData.minutes Duration in minutes\n * @param {Number=} aData.seconds Duration in seconds\n * @param {Boolean=} aData.isNegative If true, the duration is negative\n */\n fromData(aData) {\n for (let prop of DATA_PROPS_TO_COPY) {\n if (aData && prop in aData) {\n this[prop] = aData[prop];\n } else {\n this[prop] = 0;\n }\n }\n }\n\n /**\n * Resets the duration instance to the default values, i.e. PT0S\n */\n reset() {\n this.isNegative = false;\n this.weeks = 0;\n this.days = 0;\n this.hours = 0;\n this.minutes = 0;\n this.seconds = 0;\n }\n\n /**\n * Compares the duration instance with another one.\n *\n * @param {Duration} aOther The instance to compare with\n * @return {Number} -1, 0 or 1 for less/equal/greater\n */\n compare(aOther) {\n let thisSeconds = this.toSeconds();\n let otherSeconds = aOther.toSeconds();\n return (thisSeconds > otherSeconds) - (thisSeconds < otherSeconds);\n }\n\n /**\n * Normalizes the duration instance. For example, a duration with a value\n * of 61 seconds will be normalized to 1 minute and 1 second.\n */\n normalize() {\n this.fromSeconds(this.toSeconds());\n }\n\n /**\n * The string representation of this duration.\n * @return {String}\n */\n toString() {\n if (this.toSeconds() == 0) {\n return \"PT0S\";\n } else {\n let str = \"\";\n if (this.isNegative) str += \"-\";\n str += \"P\";\n if (this.weeks) str += this.weeks + \"W\";\n if (this.days) str += this.days + \"D\";\n\n if (this.hours || this.minutes || this.seconds) {\n str += \"T\";\n if (this.hours) str += this.hours + \"H\";\n if (this.minutes) str += this.minutes + \"M\";\n if (this.seconds) str += this.seconds + \"S\";\n }\n return str;\n }\n }\n\n /**\n * The iCalendar string representation of this duration.\n * @return {String}\n */\n toICALString() {\n return this.toString();\n }\n}\n\n/**\n * Internal helper function to handle a chunk of a duration.\n *\n * @private\n * @param {String} letter type of duration chunk\n * @param {String} number numeric value or -/+\n * @param {Object} dict target to assign values to\n */\nfunction parseDurationChunk(letter, number, object) {\n let type;\n switch (letter) {\n case 'P':\n if (number && number === '-') {\n object.isNegative = true;\n } else {\n object.isNegative = false;\n }\n // period\n break;\n case 'D':\n type = 'days';\n break;\n case 'W':\n type = 'weeks';\n break;\n case 'H':\n type = 'hours';\n break;\n case 'M':\n type = 'minutes';\n break;\n case 'S':\n type = 'seconds';\n break;\n default:\n // Not a valid chunk\n return 0;\n }\n\n if (type) {\n if (!number && number !== 0) {\n throw new Error(\n 'invalid duration value: Missing number before \"' + letter + '\"'\n );\n }\n let num = parseInt(number, 10);\n if (isStrictlyNaN(num)) {\n throw new Error(\n 'invalid duration value: Invalid number \"' + number + '\" before \"' + letter + '\"'\n );\n }\n object[type] = num;\n }\n\n return 1;\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n *\n * @ignore\n * @typedef {import(\"./types.js\").weekDay} weekDay\n * Imports the 'weekDay' type from the \"types.js\" module\n */\n\n/**\n * @classdesc\n * iCalendar Time representation (similar to JS Date object). Fully\n * independent of system (OS) timezone / time. Unlike JS Date, the month\n * January is 1, not zero.\n *\n * @example\n * var time = new ICAL.Time({\n * year: 2012,\n * month: 10,\n * day: 11\n * minute: 0,\n * second: 0,\n * isDate: false\n * });\n *\n *\n * @memberof ICAL\n*/\nclass Time {\n static _dowCache = {};\n static _wnCache = {};\n\n /**\n * Returns the days in the given month\n *\n * @param {Number} month The month to check\n * @param {Number} year The year to check\n * @return {Number} The number of days in the month\n */\n static daysInMonth(month, year) {\n let _daysInMonth = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n let days = 30;\n\n if (month < 1 || month > 12) return days;\n\n days = _daysInMonth[month];\n\n if (month == 2) {\n days += Time.isLeapYear(year);\n }\n\n return days;\n }\n\n /**\n * Checks if the year is a leap year\n *\n * @param {Number} year The year to check\n * @return {Boolean} True, if the year is a leap year\n */\n static isLeapYear(year) {\n if (year <= 1752) {\n return ((year % 4) == 0);\n } else {\n return (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0));\n }\n }\n\n /**\n * Create a new ICAL.Time from the day of year and year. The date is returned\n * in floating timezone.\n *\n * @param {Number} aDayOfYear The day of year\n * @param {Number} aYear The year to create the instance in\n * @return {Time} The created instance with the calculated date\n */\n static fromDayOfYear(aDayOfYear, aYear) {\n let year = aYear;\n let doy = aDayOfYear;\n let tt = new Time();\n tt.auto_normalize = false;\n let is_leap = (Time.isLeapYear(year) ? 1 : 0);\n\n if (doy < 1) {\n year--;\n is_leap = (Time.isLeapYear(year) ? 1 : 0);\n doy += Time.daysInYearPassedMonth[is_leap][12];\n return Time.fromDayOfYear(doy, year);\n } else if (doy > Time.daysInYearPassedMonth[is_leap][12]) {\n is_leap = (Time.isLeapYear(year) ? 1 : 0);\n doy -= Time.daysInYearPassedMonth[is_leap][12];\n year++;\n return Time.fromDayOfYear(doy, year);\n }\n\n tt.year = year;\n tt.isDate = true;\n\n for (let month = 11; month >= 0; month--) {\n if (doy > Time.daysInYearPassedMonth[is_leap][month]) {\n tt.month = month + 1;\n tt.day = doy - Time.daysInYearPassedMonth[is_leap][month];\n break;\n }\n }\n\n tt.auto_normalize = true;\n return tt;\n }\n\n /**\n * Returns a new ICAL.Time instance from a date string, e.g 2015-01-02.\n *\n * @deprecated Use {@link ICAL.Time.fromDateString} instead\n * @param {String} str The string to create from\n * @return {Time} The date/time instance\n */\n static fromStringv2(str) {\n return new Time({\n year: parseInt(str.slice(0, 4), 10),\n month: parseInt(str.slice(5, 7), 10),\n day: parseInt(str.slice(8, 10), 10),\n isDate: true\n });\n }\n\n /**\n * Returns a new ICAL.Time instance from a date string, e.g 2015-01-02.\n *\n * @param {String} aValue The string to create from\n * @return {Time} The date/time instance\n */\n static fromDateString(aValue) {\n // Dates should have no timezone.\n // Google likes to sometimes specify Z on dates\n // we specifically ignore that to avoid issues.\n\n // YYYY-MM-DD\n // 2012-10-10\n return new Time({\n year: strictParseInt(aValue.slice(0, 4)),\n month: strictParseInt(aValue.slice(5, 7)),\n day: strictParseInt(aValue.slice(8, 10)),\n isDate: true\n });\n }\n\n /**\n * Returns a new ICAL.Time instance from a date-time string, e.g\n * 2015-01-02T03:04:05. If a property is specified, the timezone is set up\n * from the property's TZID parameter.\n *\n * @param {String} aValue The string to create from\n * @param {Property=} prop The property the date belongs to\n * @return {Time} The date/time instance\n */\n static fromDateTimeString(aValue, prop) {\n if (aValue.length < 19) {\n throw new Error(\n 'invalid date-time value: \"' + aValue + '\"'\n );\n }\n\n let zone;\n let zoneId;\n\n if (aValue[19] && aValue[19] === 'Z') {\n zone = Timezone.utcTimezone;\n } else if (prop) {\n zoneId = prop.getParameter('tzid');\n\n if (prop.parent) {\n if (prop.parent.name === 'standard' || prop.parent.name === 'daylight') {\n // Per RFC 5545 3.8.2.4 and 3.8.2.2, start/end date-times within\n // these components MUST be specified in local time.\n zone = Timezone.localTimezone;\n } else if (zoneId) {\n // If the desired time zone is defined within the component tree,\n // fetch its definition and prefer that.\n zone = prop.parent.getTimeZoneByID(zoneId);\n }\n }\n }\n\n const timeData = {\n year: strictParseInt(aValue.slice(0, 4)),\n month: strictParseInt(aValue.slice(5, 7)),\n day: strictParseInt(aValue.slice(8, 10)),\n hour: strictParseInt(aValue.slice(11, 13)),\n minute: strictParseInt(aValue.slice(14, 16)),\n second: strictParseInt(aValue.slice(17, 19)),\n };\n\n // Although RFC 5545 requires that all TZIDs used within a file have a\n // corresponding time zone definition, we may not be parsing the full file\n // or we may be dealing with a non-compliant file; in either case, we can\n // check our own time zone service for the TZID in a last-ditch effort.\n if (zoneId && !zone) {\n timeData.timezone = zoneId;\n }\n\n // 2012-10-10T10:10:10(Z)?\n return new Time(timeData, zone);\n }\n\n /**\n * Returns a new ICAL.Time instance from a date or date-time string,\n *\n * @param {String} aValue The string to create from\n * @param {Property=} prop The property the date belongs to\n * @return {Time} The date/time instance\n */\n static fromString(aValue, aProperty) {\n if (aValue.length > 10) {\n return Time.fromDateTimeString(aValue, aProperty);\n } else {\n return Time.fromDateString(aValue);\n }\n }\n\n /**\n * Creates a new ICAL.Time instance from the given Javascript Date.\n *\n * @param {?Date} aDate The Javascript Date to read, or null to reset\n * @param {Boolean} [useUTC=false] If true, the UTC values of the date will be used\n */\n static fromJSDate(aDate, useUTC) {\n let tt = new Time();\n return tt.fromJSDate(aDate, useUTC);\n }\n\n /**\n * Creates a new ICAL.Time instance from the the passed data object.\n *\n * @param {Object} aData Time initialization\n * @param {Number=} aData.year The year for this date\n * @param {Number=} aData.month The month for this date\n * @param {Number=} aData.day The day for this date\n * @param {Number=} aData.hour The hour for this date\n * @param {Number=} aData.minute The minute for this date\n * @param {Number=} aData.second The second for this date\n * @param {Boolean=} aData.isDate If true, the instance represents a date\n * (as opposed to a date-time)\n * @param {Timezone=} aZone Timezone this position occurs in\n */\n static fromData = function fromData(aData, aZone) {\n let t = new Time();\n return t.fromData(aData, aZone);\n };\n\n /**\n * Creates a new ICAL.Time instance from the current moment.\n * The instance is “floating” - has no timezone relation.\n * To create an instance considering the time zone, call\n * ICAL.Time.fromJSDate(new Date(), true)\n * @return {Time}\n */\n static now() {\n return Time.fromJSDate(new Date(), false);\n }\n\n /**\n * Returns the date on which ISO week number 1 starts.\n *\n * @see Time#weekNumber\n * @param {Number} aYear The year to search in\n * @param {weekDay=} aWeekStart The week start weekday, used for calculation.\n * @return {Time} The date on which week number 1 starts\n */\n static weekOneStarts(aYear, aWeekStart) {\n let t = Time.fromData({\n year: aYear,\n month: 1,\n day: 1,\n isDate: true\n });\n\n let dow = t.dayOfWeek();\n let wkst = aWeekStart || Time.DEFAULT_WEEK_START;\n if (dow > Time.THURSDAY) {\n t.day += 7;\n }\n if (wkst > Time.THURSDAY) {\n t.day -= 7;\n }\n\n t.day -= dow - wkst;\n\n return t;\n }\n\n /**\n * Get the dominical letter for the given year. Letters range from A - G for\n * common years, and AG to GF for leap years.\n *\n * @param {Number} yr The year to retrieve the letter for\n * @return {String} The dominical letter.\n */\n static getDominicalLetter(yr) {\n let LTRS = \"GFEDCBA\";\n let dom = (yr + (yr / 4 | 0) + (yr / 400 | 0) - (yr / 100 | 0) - 1) % 7;\n let isLeap = Time.isLeapYear(yr);\n if (isLeap) {\n return LTRS[(dom + 6) % 7] + LTRS[dom];\n } else {\n return LTRS[dom];\n }\n }\n\n static #epochTime = null;\n /**\n * January 1st, 1970 as an ICAL.Time.\n * @type {Time}\n * @constant\n * @instance\n */\n static get epochTime() {\n if (!this.#epochTime) {\n this.#epochTime = Time.fromData({\n year: 1970,\n month: 1,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0,\n isDate: false,\n timezone: \"Z\"\n });\n }\n return this.#epochTime;\n }\n\n static _cmp_attr(a, b, attr) {\n if (a[attr] > b[attr]) return 1;\n if (a[attr] < b[attr]) return -1;\n return 0;\n }\n\n /**\n * The days that have passed in the year after a given month. The array has\n * two members, one being an array of passed days for non-leap years, the\n * other analog for leap years.\n * @example\n * var isLeapYear = ICAL.Time.isLeapYear(year);\n * var passedDays = ICAL.Time.daysInYearPassedMonth[isLeapYear][month];\n * @type {Array.>}\n */\n static daysInYearPassedMonth = [\n [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365],\n [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366]\n ];\n\n static SUNDAY = 1;\n static MONDAY = 2;\n static TUESDAY = 3;\n static WEDNESDAY = 4;\n static THURSDAY = 5;\n static FRIDAY = 6;\n static SATURDAY = 7;\n\n /**\n * The default weekday for the WKST part.\n * @constant\n * @default ICAL.Time.MONDAY\n */\n static DEFAULT_WEEK_START = 2; // MONDAY\n\n /**\n * Creates a new ICAL.Time instance.\n *\n * @param {Object} data Time initialization\n * @param {Number=} data.year The year for this date\n * @param {Number=} data.month The month for this date\n * @param {Number=} data.day The day for this date\n * @param {Number=} data.hour The hour for this date\n * @param {Number=} data.minute The minute for this date\n * @param {Number=} data.second The second for this date\n * @param {Boolean=} data.isDate If true, the instance represents a date (as\n * opposed to a date-time)\n * @param {Timezone} zone timezone this position occurs in\n */\n constructor(data, zone) {\n this.wrappedJSObject = this;\n let time = this._time = Object.create(null);\n\n /* time defaults */\n time.year = 0;\n time.month = 1;\n time.day = 1;\n time.hour = 0;\n time.minute = 0;\n time.second = 0;\n time.isDate = false;\n\n this.fromData(data, zone);\n }\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"icaltime\"\n */\n icalclass = \"icaltime\";\n _cachedUnixTime = null;\n\n /**\n * The type name, to be used in the jCal object. This value may change and\n * is strictly defined by the {@link ICAL.Time#isDate isDate} member.\n * @type {String}\n * @default \"date-time\"\n */\n get icaltype() {\n return this.isDate ? 'date' : 'date-time';\n }\n\n /**\n * The timezone for this time.\n * @type {Timezone}\n */\n zone = null;\n\n /**\n * Internal uses to indicate that a change has been made and the next read\n * operation must attempt to normalize the value (for example changing the\n * day to 33).\n *\n * @type {Boolean}\n * @private\n */\n _pendingNormalization = false;\n\n /**\n * Returns a clone of the time object.\n *\n * @return {Time} The cloned object\n */\n clone() {\n return new Time(this._time, this.zone);\n }\n\n /**\n * Reset the time instance to epoch time\n */\n reset() {\n this.fromData(Time.epochTime);\n this.zone = Timezone.utcTimezone;\n }\n\n /**\n * Reset the time instance to the given date/time values.\n *\n * @param {Number} year The year to set\n * @param {Number} month The month to set\n * @param {Number} day The day to set\n * @param {Number} hour The hour to set\n * @param {Number} minute The minute to set\n * @param {Number} second The second to set\n * @param {Timezone} timezone The timezone to set\n */\n resetTo(year, month, day, hour, minute, second, timezone) {\n this.fromData({\n year: year,\n month: month,\n day: day,\n hour: hour,\n minute: minute,\n second: second,\n zone: timezone\n });\n }\n\n /**\n * Set up the current instance from the Javascript date value.\n *\n * @param {?Date} aDate The Javascript Date to read, or null to reset\n * @param {Boolean} [useUTC=false] If true, the UTC values of the date will be used\n */\n fromJSDate(aDate, useUTC) {\n if (!aDate) {\n this.reset();\n } else {\n if (useUTC) {\n this.zone = Timezone.utcTimezone;\n this.year = aDate.getUTCFullYear();\n this.month = aDate.getUTCMonth() + 1;\n this.day = aDate.getUTCDate();\n this.hour = aDate.getUTCHours();\n this.minute = aDate.getUTCMinutes();\n this.second = aDate.getUTCSeconds();\n } else {\n this.zone = Timezone.localTimezone;\n this.year = aDate.getFullYear();\n this.month = aDate.getMonth() + 1;\n this.day = aDate.getDate();\n this.hour = aDate.getHours();\n this.minute = aDate.getMinutes();\n this.second = aDate.getSeconds();\n }\n }\n this._cachedUnixTime = null;\n return this;\n }\n\n /**\n * Sets up the current instance using members from the passed data object.\n *\n * @param {Object} aData Time initialization\n * @param {Number=} aData.year The year for this date\n * @param {Number=} aData.month The month for this date\n * @param {Number=} aData.day The day for this date\n * @param {Number=} aData.hour The hour for this date\n * @param {Number=} aData.minute The minute for this date\n * @param {Number=} aData.second The second for this date\n * @param {Boolean=} aData.isDate If true, the instance represents a date\n * (as opposed to a date-time)\n * @param {Timezone=} aZone Timezone this position occurs in\n */\n fromData(aData, aZone) {\n if (aData) {\n for (let [key, value] of Object.entries(aData)) {\n // ical type cannot be set\n if (key === 'icaltype') continue;\n this[key] = value;\n }\n }\n\n if (aZone) {\n this.zone = aZone;\n }\n\n if (aData && !(\"isDate\" in aData)) {\n this.isDate = !(\"hour\" in aData);\n } else if (aData && (\"isDate\" in aData)) {\n this.isDate = aData.isDate;\n }\n\n if (aData && \"timezone\" in aData) {\n let zone = TimezoneService.get(\n aData.timezone\n );\n\n this.zone = zone || Timezone.localTimezone;\n }\n\n if (aData && \"zone\" in aData) {\n this.zone = aData.zone;\n }\n\n if (!this.zone) {\n this.zone = Timezone.localTimezone;\n }\n\n this._cachedUnixTime = null;\n return this;\n }\n\n /**\n * Calculate the day of week.\n * @param {weekDay=} aWeekStart\n * The week start weekday, defaults to SUNDAY\n * @return {weekDay}\n */\n dayOfWeek(aWeekStart) {\n let firstDow = aWeekStart || Time.SUNDAY;\n let dowCacheKey = (this.year << 12) + (this.month << 8) + (this.day << 3) + firstDow;\n if (dowCacheKey in Time._dowCache) {\n return Time._dowCache[dowCacheKey];\n }\n\n // Using Zeller's algorithm\n let q = this.day;\n let m = this.month + (this.month < 3 ? 12 : 0);\n let Y = this.year - (this.month < 3 ? 1 : 0);\n\n let h = (q + Y + trunc(((m + 1) * 26) / 10) + trunc(Y / 4));\n { // eslint-disable-line no-constant-condition\n h += trunc(Y / 100) * 6 + trunc(Y / 400);\n }\n\n // Normalize to 1 = wkst\n h = ((h + 7 - firstDow) % 7) + 1;\n Time._dowCache[dowCacheKey] = h;\n return h;\n }\n\n /**\n * Calculate the day of year.\n * @return {Number}\n */\n dayOfYear() {\n let is_leap = (Time.isLeapYear(this.year) ? 1 : 0);\n let diypm = Time.daysInYearPassedMonth;\n return diypm[is_leap][this.month - 1] + this.day;\n }\n\n /**\n * Returns a copy of the current date/time, rewound to the start of the\n * week. The resulting ICAL.Time instance is of icaltype date, even if this\n * is a date-time.\n *\n * @param {weekDay=} aWeekStart\n * The week start weekday, defaults to SUNDAY\n * @return {Time} The start of the week (cloned)\n */\n startOfWeek(aWeekStart) {\n let firstDow = aWeekStart || Time.SUNDAY;\n let result = this.clone();\n result.day -= ((this.dayOfWeek() + 7 - firstDow) % 7);\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * Returns a copy of the current date/time, shifted to the end of the week.\n * The resulting ICAL.Time instance is of icaltype date, even if this is a\n * date-time.\n *\n * @param {weekDay=} aWeekStart\n * The week start weekday, defaults to SUNDAY\n * @return {Time} The end of the week (cloned)\n */\n endOfWeek(aWeekStart) {\n let firstDow = aWeekStart || Time.SUNDAY;\n let result = this.clone();\n result.day += (7 - this.dayOfWeek() + firstDow - Time.SUNDAY) % 7;\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * Returns a copy of the current date/time, rewound to the start of the\n * month. The resulting ICAL.Time instance is of icaltype date, even if\n * this is a date-time.\n *\n * @return {Time} The start of the month (cloned)\n */\n startOfMonth() {\n let result = this.clone();\n result.day = 1;\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * Returns a copy of the current date/time, shifted to the end of the\n * month. The resulting ICAL.Time instance is of icaltype date, even if\n * this is a date-time.\n *\n * @return {Time} The end of the month (cloned)\n */\n endOfMonth() {\n let result = this.clone();\n result.day = Time.daysInMonth(result.month, result.year);\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * Returns a copy of the current date/time, rewound to the start of the\n * year. The resulting ICAL.Time instance is of icaltype date, even if\n * this is a date-time.\n *\n * @return {Time} The start of the year (cloned)\n */\n startOfYear() {\n let result = this.clone();\n result.day = 1;\n result.month = 1;\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * Returns a copy of the current date/time, shifted to the end of the\n * year. The resulting ICAL.Time instance is of icaltype date, even if\n * this is a date-time.\n *\n * @return {Time} The end of the year (cloned)\n */\n endOfYear() {\n let result = this.clone();\n result.day = 31;\n result.month = 12;\n result.isDate = true;\n result.hour = 0;\n result.minute = 0;\n result.second = 0;\n return result;\n }\n\n /**\n * First calculates the start of the week, then returns the day of year for\n * this date. If the day falls into the previous year, the day is zero or negative.\n *\n * @param {weekDay=} aFirstDayOfWeek\n * The week start weekday, defaults to SUNDAY\n * @return {Number} The calculated day of year\n */\n startDoyWeek(aFirstDayOfWeek) {\n let firstDow = aFirstDayOfWeek || Time.SUNDAY;\n let delta = this.dayOfWeek() - firstDow;\n if (delta < 0) delta += 7;\n return this.dayOfYear() - delta;\n }\n\n /**\n * Get the dominical letter for the current year. Letters range from A - G\n * for common years, and AG to GF for leap years.\n *\n * @param {Number} yr The year to retrieve the letter for\n * @return {String} The dominical letter.\n */\n getDominicalLetter() {\n return Time.getDominicalLetter(this.year);\n }\n\n /**\n * Finds the nthWeekDay relative to the current month (not day). The\n * returned value is a day relative the month that this month belongs to so\n * 1 would indicate the first of the month and 40 would indicate a day in\n * the following month.\n *\n * @param {Number} aDayOfWeek Day of the week see the day name constants\n * @param {Number} aPos Nth occurrence of a given week day values\n * of 1 and 0 both indicate the first weekday of that type. aPos may\n * be either positive or negative\n *\n * @return {Number} numeric value indicating a day relative\n * to the current month of this time object\n */\n nthWeekDay(aDayOfWeek, aPos) {\n let daysInMonth = Time.daysInMonth(this.month, this.year);\n let weekday;\n let pos = aPos;\n\n let start = 0;\n\n let otherDay = this.clone();\n\n if (pos >= 0) {\n otherDay.day = 1;\n\n // because 0 means no position has been given\n // 1 and 0 indicate the same day.\n if (pos != 0) {\n // remove the extra numeric value\n pos--;\n }\n\n // set current start offset to current day.\n start = otherDay.day;\n\n // find the current day of week\n let startDow = otherDay.dayOfWeek();\n\n // calculate the difference between current\n // day of the week and desired day of the week\n let offset = aDayOfWeek - startDow;\n\n\n // if the offset goes into the past\n // week we add 7 so it goes into the next\n // week. We only want to go forward in time here.\n if (offset < 0)\n // this is really important otherwise we would\n // end up with dates from in the past.\n offset += 7;\n\n // add offset to start so start is the same\n // day of the week as the desired day of week.\n start += offset;\n\n // because we are going to add (and multiply)\n // the numeric value of the day we subtract it\n // from the start position so not to add it twice.\n start -= aDayOfWeek;\n\n // set week day\n weekday = aDayOfWeek;\n } else {\n\n // then we set it to the last day in the current month\n otherDay.day = daysInMonth;\n\n // find the ends weekday\n let endDow = otherDay.dayOfWeek();\n\n pos++;\n\n weekday = (endDow - aDayOfWeek);\n\n if (weekday < 0) {\n weekday += 7;\n }\n\n weekday = daysInMonth - weekday;\n }\n\n weekday += pos * 7;\n\n return start + weekday;\n }\n\n /**\n * Checks if current time is the nth weekday, relative to the current\n * month. Will always return false when rule resolves outside of current\n * month.\n *\n * @param {weekDay} aDayOfWeek Day of week to check\n * @param {Number} aPos Relative position\n * @return {Boolean} True, if it is the nth weekday\n */\n isNthWeekDay(aDayOfWeek, aPos) {\n let dow = this.dayOfWeek();\n\n if (aPos === 0 && dow === aDayOfWeek) {\n return true;\n }\n\n // get pos\n let day = this.nthWeekDay(aDayOfWeek, aPos);\n\n if (day === this.day) {\n return true;\n }\n\n return false;\n }\n\n /**\n * Calculates the ISO 8601 week number. The first week of a year is the\n * week that contains the first Thursday. The year can have 53 weeks, if\n * January 1st is a Friday.\n *\n * Note there are regions where the first week of the year is the one that\n * starts on January 1st, which may offset the week number. Also, if a\n * different week start is specified, this will also affect the week\n * number.\n *\n * @see Time.weekOneStarts\n * @param {weekDay} aWeekStart The weekday the week starts with\n * @return {Number} The ISO week number\n */\n weekNumber(aWeekStart) {\n let wnCacheKey = (this.year << 12) + (this.month << 8) + (this.day << 3) + aWeekStart;\n if (wnCacheKey in Time._wnCache) {\n return Time._wnCache[wnCacheKey];\n }\n // This function courtesty of Julian Bucknall, published under the MIT license\n // http://www.boyet.com/articles/publishedarticles/calculatingtheisoweeknumb.html\n // plus some fixes to be able to use different week starts.\n let week1;\n\n let dt = this.clone();\n dt.isDate = true;\n let isoyear = this.year;\n\n if (dt.month == 12 && dt.day > 25) {\n week1 = Time.weekOneStarts(isoyear + 1, aWeekStart);\n if (dt.compare(week1) < 0) {\n week1 = Time.weekOneStarts(isoyear, aWeekStart);\n } else {\n isoyear++;\n }\n } else {\n week1 = Time.weekOneStarts(isoyear, aWeekStart);\n if (dt.compare(week1) < 0) {\n week1 = Time.weekOneStarts(--isoyear, aWeekStart);\n }\n }\n\n let daysBetween = (dt.subtractDate(week1).toSeconds() / 86400);\n let answer = trunc(daysBetween / 7) + 1;\n Time._wnCache[wnCacheKey] = answer;\n return answer;\n }\n\n /**\n * Adds the duration to the current time. The instance is modified in\n * place.\n *\n * @param {Duration} aDuration The duration to add\n */\n addDuration(aDuration) {\n let mult = (aDuration.isNegative ? -1 : 1);\n\n // because of the duration optimizations it is much\n // more efficient to grab all the values up front\n // then set them directly (which will avoid a normalization call).\n // So we don't actually normalize until we need it.\n let second = this.second;\n let minute = this.minute;\n let hour = this.hour;\n let day = this.day;\n\n second += mult * aDuration.seconds;\n minute += mult * aDuration.minutes;\n hour += mult * aDuration.hours;\n day += mult * aDuration.days;\n day += mult * 7 * aDuration.weeks;\n\n this.second = second;\n this.minute = minute;\n this.hour = hour;\n this.day = day;\n\n this._cachedUnixTime = null;\n }\n\n /**\n * Subtract the date details (_excluding_ timezone). Useful for finding\n * the relative difference between two time objects excluding their\n * timezone differences.\n *\n * @param {Time} aDate The date to subtract\n * @return {Duration} The difference as a duration\n */\n subtractDate(aDate) {\n let unixTime = this.toUnixTime() + this.utcOffset();\n let other = aDate.toUnixTime() + aDate.utcOffset();\n return Duration.fromSeconds(unixTime - other);\n }\n\n /**\n * Subtract the date details, taking timezones into account.\n *\n * @param {Time} aDate The date to subtract\n * @return {Duration} The difference in duration\n */\n subtractDateTz(aDate) {\n let unixTime = this.toUnixTime();\n let other = aDate.toUnixTime();\n return Duration.fromSeconds(unixTime - other);\n }\n\n /**\n * Compares the ICAL.Time instance with another one.\n *\n * @param {Duration} aOther The instance to compare with\n * @return {Number} -1, 0 or 1 for less/equal/greater\n */\n compare(other) {\n let a = this.toUnixTime();\n let b = other.toUnixTime();\n\n if (a > b) return 1;\n if (b > a) return -1;\n return 0;\n }\n\n /**\n * Compares only the date part of this instance with another one.\n *\n * @param {Duration} other The instance to compare with\n * @param {Timezone} tz The timezone to compare in\n * @return {Number} -1, 0 or 1 for less/equal/greater\n */\n compareDateOnlyTz(other, tz) {\n let a = this.convertToZone(tz);\n let b = other.convertToZone(tz);\n let rc = 0;\n\n if ((rc = Time._cmp_attr(a, b, \"year\")) != 0) return rc;\n if ((rc = Time._cmp_attr(a, b, \"month\")) != 0) return rc;\n if ((rc = Time._cmp_attr(a, b, \"day\")) != 0) return rc;\n\n return rc;\n }\n\n /**\n * Convert the instance into another timezone. The returned ICAL.Time\n * instance is always a copy.\n *\n * @param {Timezone} zone The zone to convert to\n * @return {Time} The copy, converted to the zone\n */\n convertToZone(zone) {\n let copy = this.clone();\n let zone_equals = (this.zone.tzid == zone.tzid);\n\n if (!this.isDate && !zone_equals) {\n Timezone.convert_time(copy, this.zone, zone);\n }\n\n copy.zone = zone;\n return copy;\n }\n\n /**\n * Calculates the UTC offset of the current date/time in the timezone it is\n * in.\n *\n * @return {Number} UTC offset in seconds\n */\n utcOffset() {\n if (this.zone == Timezone.localTimezone ||\n this.zone == Timezone.utcTimezone) {\n return 0;\n } else {\n return this.zone.utcOffset(this);\n }\n }\n\n /**\n * Returns an RFC 5545 compliant ical representation of this object.\n *\n * @return {String} ical date/date-time\n */\n toICALString() {\n let string = this.toString();\n\n if (string.length > 10) {\n return design$1.icalendar.value['date-time'].toICAL(string);\n } else {\n return design$1.icalendar.value.date.toICAL(string);\n }\n }\n\n /**\n * The string representation of this date/time, in jCal form\n * (including : and - separators).\n * @return {String}\n */\n toString() {\n let result = this.year + '-' +\n pad2(this.month) + '-' +\n pad2(this.day);\n\n if (!this.isDate) {\n result += 'T' + pad2(this.hour) + ':' +\n pad2(this.minute) + ':' +\n pad2(this.second);\n\n if (this.zone === Timezone.utcTimezone) {\n result += 'Z';\n }\n }\n\n return result;\n }\n\n /**\n * Converts the current instance to a Javascript date\n * @return {Date}\n */\n toJSDate() {\n if (this.zone == Timezone.localTimezone) {\n if (this.isDate) {\n return new Date(this.year, this.month - 1, this.day);\n } else {\n return new Date(this.year, this.month - 1, this.day,\n this.hour, this.minute, this.second, 0);\n }\n } else {\n return new Date(this.toUnixTime() * 1000);\n }\n }\n\n _normalize() {\n if (this._time.isDate) {\n this._time.hour = 0;\n this._time.minute = 0;\n this._time.second = 0;\n }\n this.adjust(0, 0, 0, 0);\n\n return this;\n }\n\n /**\n * Adjust the date/time by the given offset\n *\n * @param {Number} aExtraDays The extra amount of days\n * @param {Number} aExtraHours The extra amount of hours\n * @param {Number} aExtraMinutes The extra amount of minutes\n * @param {Number} aExtraSeconds The extra amount of seconds\n * @param {Number=} aTime The time to adjust, defaults to the\n * current instance.\n */\n adjust(aExtraDays, aExtraHours, aExtraMinutes, aExtraSeconds, aTime) {\n\n let minutesOverflow, hoursOverflow,\n daysOverflow = 0, yearsOverflow = 0;\n\n let second, minute, hour, day;\n let daysInMonth;\n\n let time = aTime || this._time;\n\n if (!time.isDate) {\n second = time.second + aExtraSeconds;\n time.second = second % 60;\n minutesOverflow = trunc(second / 60);\n if (time.second < 0) {\n time.second += 60;\n minutesOverflow--;\n }\n\n minute = time.minute + aExtraMinutes + minutesOverflow;\n time.minute = minute % 60;\n hoursOverflow = trunc(minute / 60);\n if (time.minute < 0) {\n time.minute += 60;\n hoursOverflow--;\n }\n\n hour = time.hour + aExtraHours + hoursOverflow;\n\n time.hour = hour % 24;\n daysOverflow = trunc(hour / 24);\n if (time.hour < 0) {\n time.hour += 24;\n daysOverflow--;\n }\n }\n\n\n // Adjust month and year first, because we need to know what month the day\n // is in before adjusting it.\n if (time.month > 12) {\n yearsOverflow = trunc((time.month - 1) / 12);\n } else if (time.month < 1) {\n yearsOverflow = trunc(time.month / 12) - 1;\n }\n\n time.year += yearsOverflow;\n time.month -= 12 * yearsOverflow;\n\n // Now take care of the days (and adjust month if needed)\n day = time.day + aExtraDays + daysOverflow;\n\n if (day > 0) {\n for (;;) {\n daysInMonth = Time.daysInMonth(time.month, time.year);\n if (day <= daysInMonth) {\n break;\n }\n\n time.month++;\n if (time.month > 12) {\n time.year++;\n time.month = 1;\n }\n\n day -= daysInMonth;\n }\n } else {\n while (day <= 0) {\n if (time.month == 1) {\n time.year--;\n time.month = 12;\n } else {\n time.month--;\n }\n\n day += Time.daysInMonth(time.month, time.year);\n }\n }\n\n time.day = day;\n\n this._cachedUnixTime = null;\n return this;\n }\n\n /**\n * Sets up the current instance from unix time, the number of seconds since\n * January 1st, 1970.\n *\n * @param {Number} seconds The seconds to set up with\n */\n fromUnixTime(seconds) {\n this.zone = Timezone.utcTimezone;\n // We could use `fromJSDate` here, but this is about twice as fast.\n // We could also clone `epochTime` and use `adjust` for a more\n // ical.js-centric approach, but this is about 100 times as fast.\n let date = new Date(seconds * 1000);\n this.year = date.getUTCFullYear();\n this.month = date.getUTCMonth() + 1;\n this.day = date.getUTCDate();\n if (this._time.isDate) {\n this.hour = 0;\n this.minute = 0;\n this.second = 0;\n } else {\n this.hour = date.getUTCHours();\n this.minute = date.getUTCMinutes();\n this.second = date.getUTCSeconds();\n }\n\n this._cachedUnixTime = null;\n }\n\n /**\n * Converts the current instance to seconds since January 1st 1970.\n *\n * @return {Number} Seconds since 1970\n */\n toUnixTime() {\n if (this._cachedUnixTime !== null) {\n return this._cachedUnixTime;\n }\n let offset = this.utcOffset();\n\n // we use the offset trick to ensure\n // that we are getting the actual UTC time\n let ms = Date.UTC(\n this.year,\n this.month - 1,\n this.day,\n this.hour,\n this.minute,\n this.second - offset\n );\n\n // seconds\n this._cachedUnixTime = ms / 1000;\n return this._cachedUnixTime;\n }\n\n /**\n * Converts time to into Object which can be serialized then re-created\n * using the constructor.\n *\n * @example\n * // toJSON will automatically be called\n * var json = JSON.stringify(mytime);\n *\n * var deserialized = JSON.parse(json);\n *\n * var time = new ICAL.Time(deserialized);\n *\n * @return {Object}\n */\n toJSON() {\n let copy = [\n 'year',\n 'month',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'isDate'\n ];\n\n let result = Object.create(null);\n\n let i = 0;\n let len = copy.length;\n let prop;\n\n for (; i < len; i++) {\n prop = copy[i];\n result[prop] = this[prop];\n }\n\n if (this.zone) {\n result.timezone = this.zone.tzid;\n }\n\n return result;\n }\n}\n\n(function setupNormalizeAttributes() {\n // This needs to run before any instances are created!\n function defineAttr(attr) {\n Object.defineProperty(Time.prototype, attr, {\n get: function getTimeAttr() {\n if (this._pendingNormalization) {\n this._normalize();\n this._pendingNormalization = false;\n }\n\n return this._time[attr];\n },\n set: function setTimeAttr(val) {\n // Check if isDate will be set and if was not set to normalize date.\n // This avoids losing days when seconds, minutes and hours are zeroed\n // what normalize will do when time is a date.\n if (attr === \"isDate\" && val && !this._time.isDate) {\n this.adjust(0, 0, 0, 0);\n }\n this._cachedUnixTime = null;\n this._pendingNormalization = true;\n this._time[attr] = val;\n }\n });\n\n }\n\n defineAttr(\"year\");\n defineAttr(\"month\");\n defineAttr(\"day\");\n defineAttr(\"hour\");\n defineAttr(\"minute\");\n defineAttr(\"second\");\n defineAttr(\"isDate\");\n})();\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n *\n * @ignore\n * @typedef {import(\"./types.js\").parserState} parserState\n * Imports the 'parserState' type from the \"types.js\" module\n * @typedef {import(\"./types.js\").designSet} designSet\n * Imports the 'designSet' type from the \"types.js\" module\n */\n\nconst CHAR = /[^ \\t]/;\nconst VALUE_DELIMITER = ':';\nconst PARAM_DELIMITER = ';';\nconst PARAM_NAME_DELIMITER = '=';\nconst DEFAULT_VALUE_TYPE$1 = 'unknown';\nconst DEFAULT_PARAM_TYPE = 'text';\nconst RFC6868_REPLACE_MAP$1 = { \"^'\": '\"', \"^n\": \"\\n\", \"^^\": \"^\" };\n\n/**\n * Parses iCalendar or vCard data into a raw jCal object. Consult\n * documentation on the {@tutorial layers|layers of parsing} for more\n * details.\n *\n * @function ICAL.parse\n * @memberof ICAL\n * @variation function\n * @todo Fix the API to be more clear on the return type\n * @param {String} input The string data to parse\n * @return {Object|Object[]} A single jCal object, or an array thereof\n */\nfunction parse(input) {\n let state = {};\n let root = state.component = [];\n\n state.stack = [root];\n\n parse._eachLine(input, function(err, line) {\n parse._handleContentLine(line, state);\n });\n\n\n // when there are still items on the stack\n // throw a fatal error, a component was not closed\n // correctly in that case.\n if (state.stack.length > 1) {\n throw new ParserError(\n 'invalid ical body. component began but did not end'\n );\n }\n\n state = null;\n\n return (root.length == 1 ? root[0] : root);\n}\n\n/**\n * Parse an iCalendar property value into the jCal for a single property\n *\n * @function ICAL.parse.property\n * @param {String} str\n * The iCalendar property string to parse\n * @param {designSet=} designSet\n * The design data to use for this property\n * @return {Object}\n * The jCal Object containing the property\n */\nparse.property = function(str, designSet) {\n let state = {\n component: [[], []],\n designSet: designSet || design$1.defaultSet\n };\n parse._handleContentLine(str, state);\n return state.component[1][0];\n};\n\n/**\n * Convenience method to parse a component. You can use ICAL.parse() directly\n * instead.\n *\n * @function ICAL.parse.component\n * @see ICAL.parse(function)\n * @param {String} str The iCalendar component string to parse\n * @return {Object} The jCal Object containing the component\n */\nparse.component = function(str) {\n return parse(str);\n};\n\n\n/**\n * An error that occurred during parsing.\n *\n * @param {String} message The error message\n * @memberof ICAL.parse\n * @extends {Error}\n */\nclass ParserError extends Error {\n name = this.constructor.name;\n}\n\n// classes & constants\nparse.ParserError = ParserError;\n\n\n/**\n * Handles a single line of iCalendar/vCard, updating the state.\n *\n * @private\n * @function ICAL.parse._handleContentLine\n * @param {String} line The content line to process\n * @param {parserState} state The current state of the line parsing\n */\nparse._handleContentLine = function(line, state) {\n // break up the parts of the line\n let valuePos = line.indexOf(VALUE_DELIMITER);\n let paramPos = line.indexOf(PARAM_DELIMITER);\n\n let lastParamIndex;\n let lastValuePos;\n\n // name of property or begin/end\n let name;\n let value;\n // params is only overridden if paramPos !== -1.\n // we can't do params = params || {} later on\n // because it sacrifices ops.\n let params = {};\n\n /**\n * Different property cases\n *\n *\n * 1. RRULE:FREQ=foo\n * // FREQ= is not a param but the value\n *\n * 2. ATTENDEE;ROLE=REQ-PARTICIPANT;\n * // ROLE= is a param because : has not happened yet\n */\n // when the parameter delimiter is after the\n // value delimiter then it is not a parameter.\n\n if ((paramPos !== -1 && valuePos !== -1)) {\n // when the parameter delimiter is after the\n // value delimiter then it is not a parameter.\n if (paramPos > valuePos) {\n paramPos = -1;\n }\n }\n\n let parsedParams;\n if (paramPos !== -1) {\n name = line.slice(0, Math.max(0, paramPos)).toLowerCase();\n parsedParams = parse._parseParameters(line.slice(Math.max(0, paramPos)), 0, state.designSet);\n if (parsedParams[2] == -1) {\n throw new ParserError(\"Invalid parameters in '\" + line + \"'\");\n }\n params = parsedParams[0];\n lastParamIndex = parsedParams[1].length + parsedParams[2] + paramPos;\n if ((lastValuePos =\n line.slice(Math.max(0, lastParamIndex)).indexOf(VALUE_DELIMITER)) !== -1) {\n value = line.slice(Math.max(0, lastParamIndex + lastValuePos + 1));\n } else {\n throw new ParserError(\"Missing parameter value in '\" + line + \"'\");\n }\n } else if (valuePos !== -1) {\n // without parmeters (BEGIN:VCAENDAR, CLASS:PUBLIC)\n name = line.slice(0, Math.max(0, valuePos)).toLowerCase();\n value = line.slice(Math.max(0, valuePos + 1));\n\n if (name === 'begin') {\n let newComponent = [value.toLowerCase(), [], []];\n if (state.stack.length === 1) {\n state.component.push(newComponent);\n } else {\n state.component[2].push(newComponent);\n }\n state.stack.push(state.component);\n state.component = newComponent;\n if (!state.designSet) {\n state.designSet = design$1.getDesignSet(state.component[0]);\n }\n return;\n } else if (name === 'end') {\n state.component = state.stack.pop();\n return;\n }\n // If it is not begin/end, then this is a property with an empty value,\n // which should be considered valid.\n } else {\n /**\n * Invalid line.\n * The rational to throw an error is we will\n * never be certain that the rest of the file\n * is sane and it is unlikely that we can serialize\n * the result correctly either.\n */\n throw new ParserError(\n 'invalid line (no token \";\" or \":\") \"' + line + '\"'\n );\n }\n\n let valueType;\n let multiValue = false;\n let structuredValue = false;\n let propertyDetails;\n let splitName;\n let ungroupedName;\n\n // fetch the ungrouped part of the name\n if (state.designSet.propertyGroups && name.indexOf('.') !== -1) {\n splitName = name.split('.');\n params.group = splitName[0];\n ungroupedName = splitName[1];\n } else {\n ungroupedName = name;\n }\n\n if (ungroupedName in state.designSet.property) {\n propertyDetails = state.designSet.property[ungroupedName];\n\n if ('multiValue' in propertyDetails) {\n multiValue = propertyDetails.multiValue;\n }\n\n if ('structuredValue' in propertyDetails) {\n structuredValue = propertyDetails.structuredValue;\n }\n\n if (value && 'detectType' in propertyDetails) {\n valueType = propertyDetails.detectType(value);\n }\n }\n\n // attempt to determine value\n if (!valueType) {\n if (!('value' in params)) {\n if (propertyDetails) {\n valueType = propertyDetails.defaultType;\n } else {\n valueType = DEFAULT_VALUE_TYPE$1;\n }\n } else {\n // possible to avoid this?\n valueType = params.value.toLowerCase();\n }\n }\n\n delete params.value;\n\n /**\n * Note on `var result` juggling:\n *\n * I observed that building the array in pieces has adverse\n * effects on performance, so where possible we inline the creation.\n * It is a little ugly but resulted in ~2000 additional ops/sec.\n */\n\n let result;\n if (multiValue && structuredValue) {\n value = parse._parseMultiValue(value, structuredValue, valueType, [], multiValue, state.designSet, structuredValue);\n result = [ungroupedName, params, valueType, value];\n } else if (multiValue) {\n result = [ungroupedName, params, valueType];\n parse._parseMultiValue(value, multiValue, valueType, result, null, state.designSet, false);\n } else if (structuredValue) {\n value = parse._parseMultiValue(value, structuredValue, valueType, [], null, state.designSet, structuredValue);\n result = [ungroupedName, params, valueType, value];\n } else {\n value = parse._parseValue(value, valueType, state.designSet, false);\n result = [ungroupedName, params, valueType, value];\n }\n // rfc6350 requires that in vCard 4.0 the first component is the VERSION\n // component with as value 4.0, note that 3.0 does not have this requirement.\n if (state.component[0] === 'vcard' && state.component[1].length === 0 &&\n !(name === 'version' && value === '4.0')) {\n state.designSet = design$1.getDesignSet(\"vcard3\");\n }\n state.component[1].push(result);\n};\n\n/**\n * Parse a value from the raw value into the jCard/jCal value.\n *\n * @private\n * @function ICAL.parse._parseValue\n * @param {String} value Original value\n * @param {String} type Type of value\n * @param {Object} designSet The design data to use for this value\n * @return {Object} varies on type\n */\nparse._parseValue = function(value, type, designSet, structuredValue) {\n if (type in designSet.value && 'fromICAL' in designSet.value[type]) {\n return designSet.value[type].fromICAL(value, structuredValue);\n }\n return value;\n};\n\n/**\n * Parse parameters from a string to object.\n *\n * @function ICAL.parse._parseParameters\n * @private\n * @param {String} line A single unfolded line\n * @param {Number} start Position to start looking for properties\n * @param {Object} designSet The design data to use for this property\n * @return {Object} key/value pairs\n */\nparse._parseParameters = function(line, start, designSet) {\n let lastParam = start;\n let pos = 0;\n let delim = PARAM_NAME_DELIMITER;\n let result = {};\n let name, lcname;\n let value, valuePos = -1;\n let type, multiValue, mvdelim;\n\n // find the next '=' sign\n // use lastParam and pos to find name\n // check if \" is used if so get value from \"->\"\n // then increment pos to find next ;\n\n while ((pos !== false) &&\n (pos = line.indexOf(delim, pos + 1)) !== -1) {\n\n name = line.slice(lastParam + 1, pos);\n if (name.length == 0) {\n throw new ParserError(\"Empty parameter name in '\" + line + \"'\");\n }\n lcname = name.toLowerCase();\n mvdelim = false;\n multiValue = false;\n\n if (lcname in designSet.param && designSet.param[lcname].valueType) {\n type = designSet.param[lcname].valueType;\n } else {\n type = DEFAULT_PARAM_TYPE;\n }\n\n if (lcname in designSet.param) {\n multiValue = designSet.param[lcname].multiValue;\n if (designSet.param[lcname].multiValueSeparateDQuote) {\n mvdelim = parse._rfc6868Escape('\"' + multiValue + '\"');\n }\n }\n\n let nextChar = line[pos + 1];\n if (nextChar === '\"') {\n valuePos = pos + 2;\n pos = line.indexOf('\"', valuePos);\n if (multiValue && pos != -1) {\n let extendedValue = true;\n while (extendedValue) {\n if (line[pos + 1] == multiValue && line[pos + 2] == '\"') {\n pos = line.indexOf('\"', pos + 3);\n } else {\n extendedValue = false;\n }\n }\n }\n if (pos === -1) {\n throw new ParserError(\n 'invalid line (no matching double quote) \"' + line + '\"'\n );\n }\n value = line.slice(valuePos, pos);\n lastParam = line.indexOf(PARAM_DELIMITER, pos);\n let propValuePos = line.indexOf(VALUE_DELIMITER, pos);\n // if either no next parameter or delimeter in property value, let's stop here\n if (lastParam === -1 || (propValuePos !== -1 && lastParam > propValuePos)) {\n pos = false;\n }\n } else {\n valuePos = pos + 1;\n\n // move to next \";\"\n let nextPos = line.indexOf(PARAM_DELIMITER, valuePos);\n let propValuePos = line.indexOf(VALUE_DELIMITER, valuePos);\n if (propValuePos !== -1 && nextPos > propValuePos) {\n // this is a delimiter in the property value, let's stop here\n nextPos = propValuePos;\n pos = false;\n } else if (nextPos === -1) {\n // no \";\"\n if (propValuePos === -1) {\n nextPos = line.length;\n } else {\n nextPos = propValuePos;\n }\n pos = false;\n } else {\n lastParam = nextPos;\n pos = nextPos;\n }\n\n value = line.slice(valuePos, nextPos);\n }\n\n const length_before = value.length;\n value = parse._rfc6868Escape(value);\n valuePos += length_before - value.length;\n if (multiValue) {\n let delimiter = mvdelim || multiValue;\n value = parse._parseMultiValue(value, delimiter, type, [], null, designSet);\n } else {\n value = parse._parseValue(value, type, designSet);\n }\n\n if (multiValue && (lcname in result)) {\n if (Array.isArray(result[lcname])) {\n result[lcname].push(value);\n } else {\n result[lcname] = [\n result[lcname],\n value\n ];\n }\n } else {\n result[lcname] = value;\n }\n }\n return [result, value, valuePos];\n};\n\n/**\n * Internal helper for rfc6868. Exposing this on ICAL.parse so that\n * hackers can disable the rfc6868 parsing if the really need to.\n *\n * @function ICAL.parse._rfc6868Escape\n * @param {String} val The value to escape\n * @return {String} The escaped value\n */\nparse._rfc6868Escape = function(val) {\n return val.replace(/\\^['n^]/g, function(x) {\n return RFC6868_REPLACE_MAP$1[x];\n });\n};\n\n/**\n * Parse a multi value string. This function is used either for parsing\n * actual multi-value property's values, or for handling parameter values. It\n * can be used for both multi-value properties and structured value properties.\n *\n * @private\n * @function ICAL.parse._parseMultiValue\n * @param {String} buffer The buffer containing the full value\n * @param {String} delim The multi-value delimiter\n * @param {String} type The value type to be parsed\n * @param {Array.>} result The array to append results to, varies on value type\n * @param {String} innerMulti The inner delimiter to split each value with\n * @param {designSet} designSet The design data for this value\n * @return {?|Array.>} Either an array of results, or the first result\n */\nparse._parseMultiValue = function(buffer, delim, type, result, innerMulti, designSet, structuredValue) {\n let pos = 0;\n let lastPos = 0;\n let value;\n if (delim.length === 0) {\n return buffer;\n }\n\n // split each piece\n while ((pos = unescapedIndexOf(buffer, delim, lastPos)) !== -1) {\n value = buffer.slice(lastPos, pos);\n if (innerMulti) {\n value = parse._parseMultiValue(value, innerMulti, type, [], null, designSet, structuredValue);\n } else {\n value = parse._parseValue(value, type, designSet, structuredValue);\n }\n result.push(value);\n lastPos = pos + delim.length;\n }\n\n // on the last piece take the rest of string\n value = buffer.slice(lastPos);\n if (innerMulti) {\n value = parse._parseMultiValue(value, innerMulti, type, [], null, designSet, structuredValue);\n } else {\n value = parse._parseValue(value, type, designSet, structuredValue);\n }\n result.push(value);\n\n return result.length == 1 ? result[0] : result;\n};\n\n/**\n * Process a complete buffer of iCalendar/vCard data line by line, correctly\n * unfolding content. Each line will be processed with the given callback\n *\n * @private\n * @function ICAL.parse._eachLine\n * @param {String} buffer The buffer to process\n * @param {function(?String, String)} callback The callback for each line\n */\nparse._eachLine = function(buffer, callback) {\n let len = buffer.length;\n let lastPos = buffer.search(CHAR);\n let pos = lastPos;\n let line;\n let firstChar;\n\n let newlineOffset;\n\n do {\n pos = buffer.indexOf('\\n', lastPos) + 1;\n\n if (pos > 1 && buffer[pos - 2] === '\\r') {\n newlineOffset = 2;\n } else {\n newlineOffset = 1;\n }\n\n if (pos === 0) {\n pos = len;\n newlineOffset = 0;\n }\n\n firstChar = buffer[lastPos];\n\n if (firstChar === ' ' || firstChar === '\\t') {\n // add to line\n line += buffer.slice(lastPos + 1, pos - newlineOffset);\n } else {\n if (line)\n callback(null, line);\n // push line\n line = buffer.slice(lastPos, pos - newlineOffset);\n }\n\n lastPos = pos;\n } while (pos !== len);\n\n // extra ending line\n line = line.trim();\n\n if (line.length)\n callback(null, line);\n};\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\nconst OPTIONS = [\"tzid\", \"location\", \"tznames\", \"latitude\", \"longitude\"];\n\n/**\n * Timezone representation.\n *\n * @example\n * var vcalendar;\n * var timezoneComp = vcalendar.getFirstSubcomponent('vtimezone');\n * var tzid = timezoneComp.getFirstPropertyValue('tzid');\n *\n * var timezone = new ICAL.Timezone({\n * component: timezoneComp,\n * tzid\n * });\n *\n * @memberof ICAL\n */\nclass Timezone {\n static _compare_change_fn(a, b) {\n if (a.year < b.year) return -1;\n else if (a.year > b.year) return 1;\n\n if (a.month < b.month) return -1;\n else if (a.month > b.month) return 1;\n\n if (a.day < b.day) return -1;\n else if (a.day > b.day) return 1;\n\n if (a.hour < b.hour) return -1;\n else if (a.hour > b.hour) return 1;\n\n if (a.minute < b.minute) return -1;\n else if (a.minute > b.minute) return 1;\n\n if (a.second < b.second) return -1;\n else if (a.second > b.second) return 1;\n\n return 0;\n }\n\n /**\n * Convert the date/time from one zone to the next.\n *\n * @param {Time} tt The time to convert\n * @param {Timezone} from_zone The source zone to convert from\n * @param {Timezone} to_zone The target zone to convert to\n * @return {Time} The converted date/time object\n */\n static convert_time(tt, from_zone, to_zone) {\n if (tt.isDate ||\n from_zone.tzid == to_zone.tzid ||\n from_zone == Timezone.localTimezone ||\n to_zone == Timezone.localTimezone) {\n tt.zone = to_zone;\n return tt;\n }\n\n let utcOffset = from_zone.utcOffset(tt);\n tt.adjust(0, 0, 0, - utcOffset);\n\n utcOffset = to_zone.utcOffset(tt);\n tt.adjust(0, 0, 0, utcOffset);\n\n return null;\n }\n\n /**\n * Creates a new ICAL.Timezone instance from the passed data object.\n *\n * @param {Component|Object} aData options for class\n * @param {String|Component} aData.component\n * If aData is a simple object, then this member can be set to either a\n * string containing the component data, or an already parsed\n * ICAL.Component\n * @param {String} aData.tzid The timezone identifier\n * @param {String} aData.location The timezone locationw\n * @param {String} aData.tznames An alternative string representation of the\n * timezone\n * @param {Number} aData.latitude The latitude of the timezone\n * @param {Number} aData.longitude The longitude of the timezone\n */\n static fromData(aData) {\n let tt = new Timezone();\n return tt.fromData(aData);\n }\n\n /**\n * The instance describing the UTC timezone\n * @type {Timezone}\n * @constant\n * @instance\n */\n static #utcTimezone = null;\n static get utcTimezone() {\n if (!this.#utcTimezone) {\n this.#utcTimezone = Timezone.fromData({\n tzid: \"UTC\"\n });\n }\n return this.#utcTimezone;\n }\n\n /**\n * The instance describing the local timezone\n * @type {Timezone}\n * @constant\n * @instance\n */\n static #localTimezone = null;\n static get localTimezone() {\n if (!this.#localTimezone) {\n this.#localTimezone = Timezone.fromData({\n tzid: \"floating\"\n });\n }\n return this.#localTimezone;\n }\n\n /**\n * Adjust a timezone change object.\n * @private\n * @param {Object} change The timezone change object\n * @param {Number} days The extra amount of days\n * @param {Number} hours The extra amount of hours\n * @param {Number} minutes The extra amount of minutes\n * @param {Number} seconds The extra amount of seconds\n */\n static adjust_change(change, days, hours, minutes, seconds) {\n return Time.prototype.adjust.call(\n change,\n days,\n hours,\n minutes,\n seconds,\n change\n );\n }\n\n static _minimumExpansionYear = -1;\n static EXTRA_COVERAGE = 5;\n\n /**\n * Creates a new ICAL.Timezone instance, by passing in a tzid and component.\n *\n * @param {Component|Object} data options for class\n * @param {String|Component} data.component\n * If data is a simple object, then this member can be set to either a\n * string containing the component data, or an already parsed\n * ICAL.Component\n * @param {String} data.tzid The timezone identifier\n * @param {String} data.location The timezone locationw\n * @param {String} data.tznames An alternative string representation of the\n * timezone\n * @param {Number} data.latitude The latitude of the timezone\n * @param {Number} data.longitude The longitude of the timezone\n */\n constructor(data) {\n this.wrappedJSObject = this;\n this.fromData(data);\n }\n\n\n /**\n * Timezone identifier\n * @type {String}\n */\n tzid = \"\";\n\n /**\n * Timezone location\n * @type {String}\n */\n location = \"\";\n\n /**\n * Alternative timezone name, for the string representation\n * @type {String}\n */\n tznames = \"\";\n\n /**\n * The primary latitude for the timezone.\n * @type {Number}\n */\n latitude = 0.0;\n\n /**\n * The primary longitude for the timezone.\n * @type {Number}\n */\n longitude = 0.0;\n\n /**\n * The vtimezone component for this timezone.\n * @type {Component}\n */\n component = null;\n\n /**\n * The year this timezone has been expanded to. All timezone transition\n * dates until this year are known and can be used for calculation\n *\n * @private\n * @type {Number}\n */\n expandedUntilYear = 0;\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"icaltimezone\"\n */\n icalclass = \"icaltimezone\";\n\n /**\n * Sets up the current instance using members from the passed data object.\n *\n * @param {Component|Object} aData options for class\n * @param {String|Component} aData.component\n * If aData is a simple object, then this member can be set to either a\n * string containing the component data, or an already parsed\n * ICAL.Component\n * @param {String} aData.tzid The timezone identifier\n * @param {String} aData.location The timezone locationw\n * @param {String} aData.tznames An alternative string representation of the\n * timezone\n * @param {Number} aData.latitude The latitude of the timezone\n * @param {Number} aData.longitude The longitude of the timezone\n */\n fromData(aData) {\n this.expandedUntilYear = 0;\n this.changes = [];\n\n if (aData instanceof Component) {\n // Either a component is passed directly\n this.component = aData;\n } else {\n // Otherwise the component may be in the data object\n if (aData && \"component\" in aData) {\n if (typeof aData.component == \"string\") {\n // If a string was passed, parse it as a component\n let jCal = parse(aData.component);\n this.component = new Component(jCal);\n } else if (aData.component instanceof Component) {\n // If it was a component already, then just set it\n this.component = aData.component;\n } else {\n // Otherwise just null out the component\n this.component = null;\n }\n }\n\n // Copy remaining passed properties\n for (let prop of OPTIONS) {\n if (aData && prop in aData) {\n this[prop] = aData[prop];\n }\n }\n }\n\n // If we have a component but no TZID, attempt to get it from the\n // component's properties.\n if (this.component instanceof Component && !this.tzid) {\n this.tzid = this.component.getFirstPropertyValue('tzid');\n }\n\n return this;\n }\n\n /**\n * Finds the utcOffset the given time would occur in this timezone.\n *\n * @param {Time} tt The time to check for\n * @return {Number} utc offset in seconds\n */\n utcOffset(tt) {\n if (this == Timezone.utcTimezone || this == Timezone.localTimezone) {\n return 0;\n }\n\n this._ensureCoverage(tt.year);\n\n if (!this.changes.length) {\n return 0;\n }\n\n let tt_change = {\n year: tt.year,\n month: tt.month,\n day: tt.day,\n hour: tt.hour,\n minute: tt.minute,\n second: tt.second\n };\n\n let change_num = this._findNearbyChange(tt_change);\n let change_num_to_use = -1;\n let step = 1;\n\n // TODO: replace with bin search?\n for (;;) {\n let change = clone(this.changes[change_num], true);\n if (change.utcOffset < change.prevUtcOffset) {\n Timezone.adjust_change(change, 0, 0, 0, change.utcOffset);\n } else {\n Timezone.adjust_change(change, 0, 0, 0,\n change.prevUtcOffset);\n }\n\n let cmp = Timezone._compare_change_fn(tt_change, change);\n\n if (cmp >= 0) {\n change_num_to_use = change_num;\n } else {\n step = -1;\n }\n\n if (step == -1 && change_num_to_use != -1) {\n break;\n }\n\n change_num += step;\n\n if (change_num < 0) {\n return 0;\n }\n\n if (change_num >= this.changes.length) {\n break;\n }\n }\n\n let zone_change = this.changes[change_num_to_use];\n let utcOffset_change = zone_change.utcOffset - zone_change.prevUtcOffset;\n\n if (utcOffset_change < 0 && change_num_to_use > 0) {\n let tmp_change = clone(zone_change, true);\n Timezone.adjust_change(tmp_change, 0, 0, 0, tmp_change.prevUtcOffset);\n\n if (Timezone._compare_change_fn(tt_change, tmp_change) < 0) {\n let prev_zone_change = this.changes[change_num_to_use - 1];\n\n let want_daylight = false; // TODO\n\n if (zone_change.is_daylight != want_daylight &&\n prev_zone_change.is_daylight == want_daylight) {\n zone_change = prev_zone_change;\n }\n }\n }\n\n // TODO return is_daylight?\n return zone_change.utcOffset;\n }\n\n _findNearbyChange(change) {\n // find the closest match\n let idx = binsearchInsert(\n this.changes,\n change,\n Timezone._compare_change_fn\n );\n\n if (idx >= this.changes.length) {\n return this.changes.length - 1;\n }\n\n return idx;\n }\n\n _ensureCoverage(aYear) {\n if (Timezone._minimumExpansionYear == -1) {\n let today = Time.now();\n Timezone._minimumExpansionYear = today.year;\n }\n\n let changesEndYear = aYear;\n if (changesEndYear < Timezone._minimumExpansionYear) {\n changesEndYear = Timezone._minimumExpansionYear;\n }\n\n changesEndYear += Timezone.EXTRA_COVERAGE;\n\n if (!this.changes.length || this.expandedUntilYear < aYear) {\n let subcomps = this.component.getAllSubcomponents();\n let compLen = subcomps.length;\n let compIdx = 0;\n\n for (; compIdx < compLen; compIdx++) {\n this._expandComponent(\n subcomps[compIdx], changesEndYear, this.changes\n );\n }\n\n this.changes.sort(Timezone._compare_change_fn);\n this.expandedUntilYear = changesEndYear;\n }\n }\n\n _expandComponent(aComponent, aYear, changes) {\n if (!aComponent.hasProperty(\"dtstart\") ||\n !aComponent.hasProperty(\"tzoffsetto\") ||\n !aComponent.hasProperty(\"tzoffsetfrom\")) {\n return null;\n }\n\n let dtstart = aComponent.getFirstProperty(\"dtstart\").getFirstValue();\n let change;\n\n function convert_tzoffset(offset) {\n return offset.factor * (offset.hours * 3600 + offset.minutes * 60);\n }\n\n function init_changes() {\n let changebase = {};\n changebase.is_daylight = (aComponent.name == \"daylight\");\n changebase.utcOffset = convert_tzoffset(\n aComponent.getFirstProperty(\"tzoffsetto\").getFirstValue()\n );\n\n changebase.prevUtcOffset = convert_tzoffset(\n aComponent.getFirstProperty(\"tzoffsetfrom\").getFirstValue()\n );\n\n return changebase;\n }\n\n if (!aComponent.hasProperty(\"rrule\") && !aComponent.hasProperty(\"rdate\")) {\n change = init_changes();\n change.year = dtstart.year;\n change.month = dtstart.month;\n change.day = dtstart.day;\n change.hour = dtstart.hour;\n change.minute = dtstart.minute;\n change.second = dtstart.second;\n\n Timezone.adjust_change(change, 0, 0, 0, -change.prevUtcOffset);\n changes.push(change);\n } else {\n let props = aComponent.getAllProperties(\"rdate\");\n for (let rdate of props) {\n let time = rdate.getFirstValue();\n change = init_changes();\n\n change.year = time.year;\n change.month = time.month;\n change.day = time.day;\n\n if (time.isDate) {\n change.hour = dtstart.hour;\n change.minute = dtstart.minute;\n change.second = dtstart.second;\n\n if (dtstart.zone != Timezone.utcTimezone) {\n Timezone.adjust_change(change, 0, 0, 0, -change.prevUtcOffset);\n }\n } else {\n change.hour = time.hour;\n change.minute = time.minute;\n change.second = time.second;\n\n if (time.zone != Timezone.utcTimezone) {\n Timezone.adjust_change(change, 0, 0, 0, -change.prevUtcOffset);\n }\n }\n\n changes.push(change);\n }\n\n let rrule = aComponent.getFirstProperty(\"rrule\");\n\n if (rrule) {\n rrule = rrule.getFirstValue();\n change = init_changes();\n\n if (rrule.until && rrule.until.zone == Timezone.utcTimezone) {\n rrule.until.adjust(0, 0, 0, change.prevUtcOffset);\n rrule.until.zone = Timezone.localTimezone;\n }\n\n let iterator = rrule.iterator(dtstart);\n\n let occ;\n while ((occ = iterator.next())) {\n change = init_changes();\n if (occ.year > aYear || !occ) {\n break;\n }\n\n change.year = occ.year;\n change.month = occ.month;\n change.day = occ.day;\n change.hour = occ.hour;\n change.minute = occ.minute;\n change.second = occ.second;\n change.isDate = occ.isDate;\n\n Timezone.adjust_change(change, 0, 0, 0, -change.prevUtcOffset);\n changes.push(change);\n }\n }\n }\n\n return changes;\n }\n\n /**\n * The string representation of this timezone.\n * @return {String}\n */\n toString() {\n return (this.tznames ? this.tznames : this.tzid);\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\nlet zones = null;\n\n/**\n * @classdesc\n * Singleton class to contain timezones. Right now it is all manual registry in\n * the future we may use this class to download timezone information or handle\n * loading pre-expanded timezones.\n *\n * @exports module:ICAL.TimezoneService\n * @memberof ICAL\n */\nconst TimezoneService = {\n get count() {\n if (zones === null) {\n return 0;\n }\n\n return Object.keys(zones).length;\n },\n\n reset: function() {\n zones = Object.create(null);\n let utc = Timezone.utcTimezone;\n\n zones.Z = utc;\n zones.UTC = utc;\n zones.GMT = utc;\n },\n _hard_reset: function() {\n zones = null;\n },\n\n /**\n * Checks if timezone id has been registered.\n *\n * @param {String} tzid Timezone identifier (e.g. America/Los_Angeles)\n * @return {Boolean} False, when not present\n */\n has: function(tzid) {\n if (zones === null) {\n return false;\n }\n\n return !!zones[tzid];\n },\n\n /**\n * Returns a timezone by its tzid if present.\n *\n * @param {String} tzid Timezone identifier (e.g. America/Los_Angeles)\n * @return {Timezone | undefined} The timezone, or undefined if not found\n */\n get: function(tzid) {\n if (zones === null) {\n this.reset();\n }\n\n return zones[tzid];\n },\n\n /**\n * Registers a timezone object or component.\n *\n * @param {Component|Timezone} timezone\n * The initialized zone or vtimezone.\n *\n * @param {String=} name\n * The name of the timezone. Defaults to the component's TZID if not\n * passed.\n */\n register: function(timezone, name) {\n if (zones === null) {\n this.reset();\n }\n\n // This avoids a breaking change by the change of argument order\n // TODO remove in v3\n if (typeof timezone === \"string\" && name instanceof Timezone) {\n [timezone, name] = [name, timezone];\n }\n\n if (!name) {\n if (timezone instanceof Timezone) {\n name = timezone.tzid;\n } else {\n if (timezone.name === 'vtimezone') {\n timezone = new Timezone(timezone);\n name = timezone.tzid;\n }\n }\n }\n\n if (!name) {\n throw new TypeError(\"Neither a timezone nor a name was passed\");\n }\n\n if (timezone instanceof Timezone) {\n zones[name] = timezone;\n } else {\n throw new TypeError('timezone must be ICAL.Timezone or ICAL.Component');\n }\n },\n\n /**\n * Removes a timezone by its tzid from the list.\n *\n * @param {String} tzid Timezone identifier (e.g. America/Los_Angeles)\n * @return {?Timezone} The removed timezone, or null if not registered\n */\n remove: function(tzid) {\n if (zones === null) {\n return null;\n }\n\n return (delete zones[tzid]);\n }\n};\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * Helper functions used in various places within ical.js\n * @module ICAL.helpers\n */\n\n/**\n * Compiles a list of all referenced TZIDs in all subcomponents and\n * removes any extra VTIMEZONE subcomponents. In addition, if any TZIDs\n * are referenced by a component, but a VTIMEZONE does not exist,\n * an attempt will be made to generate a VTIMEZONE using ICAL.TimezoneService.\n *\n * @param {Component} vcal The top-level VCALENDAR component.\n * @return {Component} The ICAL.Component that was passed in.\n */\nfunction updateTimezones(vcal) {\n let allsubs, properties, vtimezones, reqTzid, i;\n\n if (!vcal || vcal.name !== \"vcalendar\") {\n //not a top-level vcalendar component\n return vcal;\n }\n\n //Store vtimezone subcomponents in an object reference by tzid.\n //Store properties from everything else in another array\n allsubs = vcal.getAllSubcomponents();\n properties = [];\n vtimezones = {};\n for (i = 0; i < allsubs.length; i++) {\n if (allsubs[i].name === \"vtimezone\") {\n let tzid = allsubs[i].getFirstProperty(\"tzid\").getFirstValue();\n vtimezones[tzid] = allsubs[i];\n } else {\n properties = properties.concat(allsubs[i].getAllProperties());\n }\n }\n\n //create an object with one entry for each required tz\n reqTzid = {};\n for (i = 0; i < properties.length; i++) {\n let tzid = properties[i].getParameter(\"tzid\");\n if (tzid) {\n reqTzid[tzid] = true;\n }\n }\n\n //delete any vtimezones that are not on the reqTzid list.\n for (let [tzid, comp] of Object.entries(vtimezones)) {\n if (!reqTzid[tzid]) {\n vcal.removeSubcomponent(comp);\n }\n }\n\n //create any missing, but registered timezones\n for (let tzid of Object.keys(reqTzid)) {\n if (!vtimezones[tzid] && TimezoneService.has(tzid)) {\n vcal.addSubcomponent(TimezoneService.get(tzid).component);\n }\n }\n\n return vcal;\n}\n\n/**\n * Checks if the given type is of the number type and also NaN.\n *\n * @param {Number} number The number to check\n * @return {Boolean} True, if the number is strictly NaN\n */\nfunction isStrictlyNaN(number) {\n return typeof(number) === 'number' && isNaN(number);\n}\n\n/**\n * Parses a string value that is expected to be an integer, when the valid is\n * not an integer throws a decoration error.\n *\n * @param {String} string Raw string input\n * @return {Number} Parsed integer\n */\nfunction strictParseInt(string) {\n let result = parseInt(string, 10);\n\n if (isStrictlyNaN(result)) {\n throw new Error(\n 'Could not extract integer from \"' + string + '\"'\n );\n }\n\n return result;\n}\n\n/**\n * Creates or returns a class instance of a given type with the initialization\n * data if the data is not already an instance of the given type.\n *\n * @example\n * var time = new ICAL.Time(...);\n * var result = ICAL.helpers.formatClassType(time, ICAL.Time);\n *\n * (result instanceof ICAL.Time)\n * // => true\n *\n * result = ICAL.helpers.formatClassType({}, ICAL.Time);\n * (result isntanceof ICAL.Time)\n * // => true\n *\n *\n * @param {Object} data object initialization data\n * @param {Object} type object type (like ICAL.Time)\n * @return {?} An instance of the found type.\n */\nfunction formatClassType(data, type) {\n if (typeof(data) === 'undefined') {\n return undefined;\n }\n\n if (data instanceof type) {\n return data;\n }\n return new type(data);\n}\n\n/**\n * Identical to indexOf but will only match values when they are not preceded\n * by a backslash character.\n *\n * @param {String} buffer String to search\n * @param {String} search Value to look for\n * @param {Number} pos Start position\n * @return {Number} The position, or -1 if not found\n */\nfunction unescapedIndexOf(buffer, search, pos) {\n while ((pos = buffer.indexOf(search, pos)) !== -1) {\n if (pos > 0 && buffer[pos - 1] === '\\\\') {\n pos += 1;\n } else {\n return pos;\n }\n }\n return -1;\n}\n\n/**\n * Find the index for insertion using binary search.\n *\n * @param {Array} list The list to search\n * @param {?} seekVal The value to insert\n * @param {function(?,?)} cmpfunc The comparison func, that can\n * compare two seekVals\n * @return {Number} The insert position\n */\nfunction binsearchInsert(list, seekVal, cmpfunc) {\n if (!list.length)\n return 0;\n\n let low = 0, high = list.length - 1,\n mid, cmpval;\n\n while (low <= high) {\n mid = low + Math.floor((high - low) / 2);\n cmpval = cmpfunc(seekVal, list[mid]);\n\n if (cmpval < 0)\n high = mid - 1;\n else if (cmpval > 0)\n low = mid + 1;\n else\n break;\n }\n\n if (cmpval < 0)\n return mid; // insertion is displacing, so use mid outright.\n else if (cmpval > 0)\n return mid + 1;\n else\n return mid;\n}\n\n/**\n * Clone the passed object or primitive. By default a shallow clone will be\n * executed.\n *\n * @param {*} aSrc The thing to clone\n * @param {Boolean=} aDeep If true, a deep clone will be performed\n * @return {*} The copy of the thing\n */\nfunction clone(aSrc, aDeep) {\n if (!aSrc || typeof aSrc != \"object\") {\n return aSrc;\n } else if (aSrc instanceof Date) {\n return new Date(aSrc.getTime());\n } else if (\"clone\" in aSrc) {\n return aSrc.clone();\n } else if (Array.isArray(aSrc)) {\n let arr = [];\n for (let i = 0; i < aSrc.length; i++) {\n arr.push(aDeep ? clone(aSrc[i], true) : aSrc[i]);\n }\n return arr;\n } else {\n let obj = {};\n for (let [name, value] of Object.entries(aSrc)) {\n if (aDeep) {\n obj[name] = clone(value, true);\n } else {\n obj[name] = value;\n }\n }\n return obj;\n }\n}\n\n/**\n * Performs iCalendar line folding. A line ending character is inserted and\n * the next line begins with a whitespace.\n *\n * @example\n * SUMMARY:This line will be fold\n * ed right in the middle of a word.\n *\n * @param {String} aLine The line to fold\n * @return {String} The folded line\n */\nfunction foldline(aLine) {\n let result = \"\";\n let line = aLine || \"\", pos = 0, line_length = 0;\n //pos counts position in line for the UTF-16 presentation\n //line_length counts the bytes for the UTF-8 presentation\n while (line.length) {\n let cp = line.codePointAt(pos);\n if (cp < 128) ++line_length;\n else if (cp < 2048) line_length += 2;//needs 2 UTF-8 bytes\n else if (cp < 65536) line_length += 3;\n else line_length += 4; //cp is less than 1114112\n if (line_length < ICALmodule.foldLength + 1)\n pos += cp > 65535 ? 2 : 1;\n else {\n result += ICALmodule.newLineChar + \" \" + line.slice(0, Math.max(0, pos));\n line = line.slice(Math.max(0, pos));\n pos = line_length = 0;\n }\n }\n return result.slice(ICALmodule.newLineChar.length + 1);\n}\n\n/**\n * Pads the given string or number with zeros so it will have at least two\n * characters.\n *\n * @param {String|Number} data The string or number to pad\n * @return {String} The number padded as a string\n */\nfunction pad2(data) {\n if (typeof(data) !== 'string') {\n // handle fractions.\n if (typeof(data) === 'number') {\n data = parseInt(data);\n }\n data = String(data);\n }\n\n let len = data.length;\n\n switch (len) {\n case 0:\n return '00';\n case 1:\n return '0' + data;\n default:\n return data;\n }\n}\n\n/**\n * Truncates the given number, correctly handling negative numbers.\n *\n * @param {Number} number The number to truncate\n * @return {Number} The truncated number\n */\nfunction trunc(number) {\n return (number < 0 ? Math.ceil(number) : Math.floor(number));\n}\n\n/**\n * Poor-man's cross-browser object extension. Doesn't support all the\n * features, but enough for our usage. Note that the target's properties are\n * not overwritten with the source properties.\n *\n * @example\n * var child = ICAL.helpers.extend(parent, {\n * \"bar\": 123\n * });\n *\n * @param {Object} source The object to extend\n * @param {Object} target The object to extend with\n * @return {Object} Returns the target.\n */\nfunction extend(source, target) {\n for (let key in source) {\n let descr = Object.getOwnPropertyDescriptor(source, key);\n if (descr && !Object.getOwnPropertyDescriptor(target, key)) {\n Object.defineProperty(target, key, descr);\n }\n }\n return target;\n}\n\nvar helpers = /*#__PURE__*/Object.freeze({\n __proto__: null,\n updateTimezones: updateTimezones,\n isStrictlyNaN: isStrictlyNaN,\n strictParseInt: strictParseInt,\n formatClassType: formatClassType,\n unescapedIndexOf: unescapedIndexOf,\n binsearchInsert: binsearchInsert,\n clone: clone,\n foldline: foldline,\n pad2: pad2,\n trunc: trunc,\n extend: extend\n});\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This class represents the \"utc-offset\" value type, with various calculation and manipulation\n * methods.\n *\n * @memberof ICAL\n */\nclass UtcOffset {\n /**\n * Creates a new {@link ICAL.UtcOffset} instance from the passed string.\n *\n * @param {String} aString The string to parse\n * @return {Duration} The created utc-offset instance\n */\n static fromString(aString) {\n // -05:00\n let options = {};\n //TODO: support seconds per rfc5545 ?\n options.factor = (aString[0] === '+') ? 1 : -1;\n options.hours = strictParseInt(aString.slice(1, 3));\n options.minutes = strictParseInt(aString.slice(4, 6));\n\n return new UtcOffset(options);\n }\n\n /**\n * Creates a new {@link ICAL.UtcOffset} instance from the passed seconds\n * value.\n *\n * @param {Number} aSeconds The number of seconds to convert\n */\n static fromSeconds(aSeconds) {\n let instance = new UtcOffset();\n instance.fromSeconds(aSeconds);\n return instance;\n }\n\n /**\n * Creates a new ICAL.UtcOffset instance.\n *\n * @param {Object} aData An object with members of the utc offset\n * @param {Number=} aData.hours The hours for the utc offset\n * @param {Number=} aData.minutes The minutes in the utc offset\n * @param {Number=} aData.factor The factor for the utc-offset, either -1 or 1\n */\n constructor(aData) {\n this.fromData(aData);\n }\n\n /**\n * The hours in the utc-offset\n * @type {Number}\n */\n hours = 0;\n\n /**\n * The minutes in the utc-offset\n * @type {Number}\n */\n minutes = 0;\n\n /**\n * The sign of the utc offset, 1 for positive offset, -1 for negative\n * offsets.\n * @type {Number}\n */\n factor = 1;\n\n /**\n * The type name, to be used in the jCal object.\n * @constant\n * @type {String}\n * @default \"utc-offset\"\n */\n icaltype = \"utc-offset\";\n\n /**\n * Returns a clone of the utc offset object.\n *\n * @return {UtcOffset} The cloned object\n */\n clone() {\n return UtcOffset.fromSeconds(this.toSeconds());\n }\n\n /**\n * Sets up the current instance using members from the passed data object.\n *\n * @param {Object} aData An object with members of the utc offset\n * @param {Number=} aData.hours The hours for the utc offset\n * @param {Number=} aData.minutes The minutes in the utc offset\n * @param {Number=} aData.factor The factor for the utc-offset, either -1 or 1\n */\n fromData(aData) {\n if (aData) {\n for (let [key, value] of Object.entries(aData)) {\n this[key] = value;\n }\n }\n this._normalize();\n }\n\n /**\n * Sets up the current instance from the given seconds value. The seconds\n * value is truncated to the minute. Offsets are wrapped when the world\n * ends, the hour after UTC+14:00 is UTC-12:00.\n *\n * @param {Number} aSeconds The seconds to convert into an offset\n */\n fromSeconds(aSeconds) {\n let secs = Math.abs(aSeconds);\n\n this.factor = aSeconds < 0 ? -1 : 1;\n this.hours = trunc(secs / 3600);\n\n secs -= (this.hours * 3600);\n this.minutes = trunc(secs / 60);\n return this;\n }\n\n /**\n * Convert the current offset to a value in seconds\n *\n * @return {Number} The offset in seconds\n */\n toSeconds() {\n return this.factor * (60 * this.minutes + 3600 * this.hours);\n }\n\n /**\n * Compare this utc offset with another one.\n *\n * @param {UtcOffset} other The other offset to compare with\n * @return {Number} -1, 0 or 1 for less/equal/greater\n */\n compare(other) {\n let a = this.toSeconds();\n let b = other.toSeconds();\n return (a > b) - (b > a);\n }\n\n _normalize() {\n // Range: 97200 seconds (with 1 hour inbetween)\n let secs = this.toSeconds();\n let factor = this.factor;\n while (secs < -43200) { // = UTC-12:00\n secs += 97200;\n }\n while (secs > 50400) { // = UTC+14:00\n secs -= 97200;\n }\n\n this.fromSeconds(secs);\n\n // Avoid changing the factor when on zero seconds\n if (secs == 0) {\n this.factor = factor;\n }\n }\n\n /**\n * The iCalendar string representation of this utc-offset.\n * @return {String}\n */\n toICALString() {\n return design$1.icalendar.value['utc-offset'].toICAL(this.toString());\n }\n\n /**\n * The string representation of this utc-offset.\n * @return {String}\n */\n toString() {\n return (this.factor == 1 ? \"+\" : \"-\") + pad2(this.hours) + ':' + pad2(this.minutes);\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * Describes a vCard time, which has slight differences to the ICAL.Time.\n * Properties can be null if not specified, for example for dates with\n * reduced accuracy or truncation.\n *\n * Note that currently not all methods are correctly re-implemented for\n * VCardTime. For example, comparison will have undefined results when some\n * members are null.\n *\n * Also, normalization is not yet implemented for this class!\n *\n * @memberof ICAL\n * @extends {ICAL.Time}\n */\nclass VCardTime extends Time {\n /**\n * Returns a new ICAL.VCardTime instance from a date and/or time string.\n *\n * @param {String} aValue The string to create from\n * @param {String} aIcalType The type for this instance, e.g. date-and-or-time\n * @return {VCardTime} The date/time instance\n */\n static fromDateAndOrTimeString(aValue, aIcalType) {\n function part(v, s, e) {\n return v ? strictParseInt(v.slice(s, s + e)) : null;\n }\n let parts = aValue.split('T');\n let dt = parts[0], tmz = parts[1];\n let splitzone = tmz ? design$1.vcard.value.time._splitZone(tmz) : [];\n let zone = splitzone[0], tm = splitzone[1];\n\n let dtlen = dt ? dt.length : 0;\n let tmlen = tm ? tm.length : 0;\n\n let hasDashDate = dt && dt[0] == '-' && dt[1] == '-';\n let hasDashTime = tm && tm[0] == '-';\n\n let o = {\n year: hasDashDate ? null : part(dt, 0, 4),\n month: hasDashDate && (dtlen == 4 || dtlen == 7) ? part(dt, 2, 2) : dtlen == 7 ? part(dt, 5, 2) : dtlen == 10 ? part(dt, 5, 2) : null,\n day: dtlen == 5 ? part(dt, 3, 2) : dtlen == 7 && hasDashDate ? part(dt, 5, 2) : dtlen == 10 ? part(dt, 8, 2) : null,\n\n hour: hasDashTime ? null : part(tm, 0, 2),\n minute: hasDashTime && tmlen == 3 ? part(tm, 1, 2) : tmlen > 4 ? hasDashTime ? part(tm, 1, 2) : part(tm, 3, 2) : null,\n second: tmlen == 4 ? part(tm, 2, 2) : tmlen == 6 ? part(tm, 4, 2) : tmlen == 8 ? part(tm, 6, 2) : null\n };\n\n if (zone == 'Z') {\n zone = Timezone.utcTimezone;\n } else if (zone && zone[3] == ':') {\n zone = UtcOffset.fromString(zone);\n } else {\n zone = null;\n }\n\n return new VCardTime(o, zone, aIcalType);\n }\n\n\n /**\n * Creates a new ICAL.VCardTime instance.\n *\n * @param {Object} data The data for the time instance\n * @param {Number=} data.year The year for this date\n * @param {Number=} data.month The month for this date\n * @param {Number=} data.day The day for this date\n * @param {Number=} data.hour The hour for this date\n * @param {Number=} data.minute The minute for this date\n * @param {Number=} data.second The second for this date\n * @param {Timezone|UtcOffset} zone The timezone to use\n * @param {String} icaltype The type for this date/time object\n */\n constructor(data, zone, icaltype) {\n super(data, zone);\n this.icaltype = icaltype || \"date-and-or-time\";\n }\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"vcardtime\"\n */\n icalclass = \"vcardtime\";\n\n /**\n * The type name, to be used in the jCal object.\n * @type {String}\n * @default \"date-and-or-time\"\n */\n icaltype = \"date-and-or-time\";\n\n /**\n * Returns a clone of the vcard date/time object.\n *\n * @return {VCardTime} The cloned object\n */\n clone() {\n return new VCardTime(this._time, this.zone, this.icaltype);\n }\n\n _normalize() {\n return this;\n }\n\n /**\n * @inheritdoc\n */\n utcOffset() {\n if (this.zone instanceof UtcOffset) {\n return this.zone.toSeconds();\n } else {\n return Time.prototype.utcOffset.apply(this, arguments);\n }\n }\n\n /**\n * Returns an RFC 6350 compliant representation of this object.\n *\n * @return {String} vcard date/time string\n */\n toICALString() {\n return design$1.vcard.value[this.icaltype].toICAL(this.toString());\n }\n\n /**\n * The string representation of this date/time, in jCard form\n * (including : and - separators).\n * @return {String}\n */\n toString() {\n let y = this.year, m = this.month, d = this.day;\n let h = this.hour, mm = this.minute, s = this.second;\n\n let hasYear = y !== null, hasMonth = m !== null, hasDay = d !== null;\n let hasHour = h !== null, hasMinute = mm !== null, hasSecond = s !== null;\n\n let datepart = (hasYear ? pad2(y) + (hasMonth || hasDay ? '-' : '') : (hasMonth || hasDay ? '--' : '')) +\n (hasMonth ? pad2(m) : '') +\n (hasDay ? '-' + pad2(d) : '');\n let timepart = (hasHour ? pad2(h) : '-') + (hasHour && hasMinute ? ':' : '') +\n (hasMinute ? pad2(mm) : '') + (!hasHour && !hasMinute ? '-' : '') +\n (hasMinute && hasSecond ? ':' : '') +\n (hasSecond ? pad2(s) : '');\n\n let zone;\n if (this.zone === Timezone.utcTimezone) {\n zone = 'Z';\n } else if (this.zone instanceof UtcOffset) {\n zone = this.zone.toString();\n } else if (this.zone === Timezone.localTimezone) {\n zone = '';\n } else if (this.zone instanceof Timezone) {\n let offset = UtcOffset.fromSeconds(this.zone.utcOffset(this));\n zone = offset.toString();\n } else {\n zone = '';\n }\n\n switch (this.icaltype) {\n case \"time\":\n return timepart + zone;\n case \"date-and-or-time\":\n case \"date-time\":\n return datepart + (timepart == '--' ? '' : 'T' + timepart + zone);\n case \"date\":\n return datepart;\n }\n return null;\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n *\n * @ignore\n * @typedef {import(\"./types.js\").weekDay} weekDay\n * Imports the 'weekDay' type from the \"types.js\" module\n */\n\n/**\n * An iterator for a single recurrence rule. This class usually doesn't have to be instanciated\n * directly, the convenience method {@link ICAL.Recur#iterator} can be used.\n *\n * @memberof ICAL\n */\nclass RecurIterator {\n static _indexMap = {\n \"BYSECOND\": 0,\n \"BYMINUTE\": 1,\n \"BYHOUR\": 2,\n \"BYDAY\": 3,\n \"BYMONTHDAY\": 4,\n \"BYYEARDAY\": 5,\n \"BYWEEKNO\": 6,\n \"BYMONTH\": 7,\n \"BYSETPOS\": 8\n };\n\n static _expandMap = {\n \"SECONDLY\": [1, 1, 1, 1, 1, 1, 1, 1],\n \"MINUTELY\": [2, 1, 1, 1, 1, 1, 1, 1],\n \"HOURLY\": [2, 2, 1, 1, 1, 1, 1, 1],\n \"DAILY\": [2, 2, 2, 1, 1, 1, 1, 1],\n \"WEEKLY\": [2, 2, 2, 2, 3, 3, 1, 1],\n \"MONTHLY\": [2, 2, 2, 2, 2, 3, 3, 1],\n \"YEARLY\": [2, 2, 2, 2, 2, 2, 2, 2]\n };\n\n static UNKNOWN = 0;\n static CONTRACT = 1;\n static EXPAND = 2;\n static ILLEGAL = 3;\n\n /**\n * Creates a new ICAL.RecurIterator instance. The options object may contain additional members\n * when resuming iteration from a previous run.\n *\n * @param {Object} options The iterator options\n * @param {Recur} options.rule The rule to iterate.\n * @param {Time} options.dtstart The start date of the event.\n * @param {Boolean=} options.initialized When true, assume that options are\n * from a previously constructed iterator. Initialization will not be\n * repeated.\n */\n constructor(options) {\n this.fromData(options);\n }\n\n /**\n * True when iteration is finished.\n * @type {Boolean}\n */\n completed = false;\n\n /**\n * The rule that is being iterated\n * @type {Recur}\n */\n rule = null;\n\n /**\n * The start date of the event being iterated.\n * @type {Time}\n */\n dtstart = null;\n\n /**\n * The last occurrence that was returned from the\n * {@link RecurIterator#next} method.\n * @type {Time}\n */\n last = null;\n\n /**\n * The sequence number from the occurrence\n * @type {Number}\n */\n occurrence_number = 0;\n\n /**\n * The indices used for the {@link ICAL.RecurIterator#by_data} object.\n * @type {Object}\n * @private\n */\n by_indices = null;\n\n /**\n * If true, the iterator has already been initialized\n * @type {Boolean}\n * @private\n */\n initialized = false;\n\n /**\n * The initializd by-data.\n * @type {Object}\n * @private\n */\n by_data = null;\n\n /**\n * The expanded yeardays\n * @type {Array}\n * @private\n */\n days = null;\n\n /**\n * The index in the {@link ICAL.RecurIterator#days} array.\n * @type {Number}\n * @private\n */\n days_index = 0;\n\n /**\n * Initialize the recurrence iterator from the passed data object. This\n * method is usually not called directly, you can initialize the iterator\n * through the constructor.\n *\n * @param {Object} options The iterator options\n * @param {Recur} options.rule The rule to iterate.\n * @param {Time} options.dtstart The start date of the event.\n * @param {Boolean=} options.initialized When true, assume that options are\n * from a previously constructed iterator. Initialization will not be\n * repeated.\n */\n fromData(options) {\n this.rule = formatClassType(options.rule, Recur);\n\n if (!this.rule) {\n throw new Error('iterator requires a (ICAL.Recur) rule');\n }\n\n this.dtstart = formatClassType(options.dtstart, Time);\n\n if (!this.dtstart) {\n throw new Error('iterator requires a (ICAL.Time) dtstart');\n }\n\n if (options.by_data) {\n this.by_data = options.by_data;\n } else {\n this.by_data = clone(this.rule.parts, true);\n }\n\n if (options.occurrence_number)\n this.occurrence_number = options.occurrence_number;\n\n this.days = options.days || [];\n if (options.last) {\n this.last = formatClassType(options.last, Time);\n }\n\n this.by_indices = options.by_indices;\n\n if (!this.by_indices) {\n this.by_indices = {\n \"BYSECOND\": 0,\n \"BYMINUTE\": 0,\n \"BYHOUR\": 0,\n \"BYDAY\": 0,\n \"BYMONTH\": 0,\n \"BYWEEKNO\": 0,\n \"BYMONTHDAY\": 0\n };\n }\n\n this.initialized = options.initialized || false;\n\n if (!this.initialized) {\n try {\n this.init();\n } catch (e) {\n if (e instanceof InvalidRecurrenceRuleError) {\n // Init may error if there are no possible recurrence instances from\n // the rule, but we don't want to bubble this error up. Instead, we\n // create an empty iterator.\n this.completed = true;\n } else {\n // Propagate other errors to consumers.\n throw e;\n }\n }\n }\n }\n\n /**\n * Initialize the iterator\n * @private\n */\n init() {\n this.initialized = true;\n this.last = this.dtstart.clone();\n let parts = this.by_data;\n\n if (\"BYDAY\" in parts) {\n // libical does this earlier when the rule is loaded, but we postpone to\n // now so we can preserve the original order.\n this.sort_byday_rules(parts.BYDAY);\n }\n\n // If the BYYEARDAY appares, no other date rule part may appear\n if (\"BYYEARDAY\" in parts) {\n if (\"BYMONTH\" in parts || \"BYWEEKNO\" in parts ||\n \"BYMONTHDAY\" in parts || \"BYDAY\" in parts) {\n throw new Error(\"Invalid BYYEARDAY rule\");\n }\n }\n\n // BYWEEKNO and BYMONTHDAY rule parts may not both appear\n if (\"BYWEEKNO\" in parts && \"BYMONTHDAY\" in parts) {\n throw new Error(\"BYWEEKNO does not fit to BYMONTHDAY\");\n }\n\n // For MONTHLY recurrences (FREQ=MONTHLY) neither BYYEARDAY nor\n // BYWEEKNO may appear.\n if (this.rule.freq == \"MONTHLY\" &&\n (\"BYYEARDAY\" in parts || \"BYWEEKNO\" in parts)) {\n throw new Error(\"For MONTHLY recurrences neither BYYEARDAY nor BYWEEKNO may appear\");\n }\n\n // For WEEKLY recurrences (FREQ=WEEKLY) neither BYMONTHDAY nor\n // BYYEARDAY may appear.\n if (this.rule.freq == \"WEEKLY\" &&\n (\"BYYEARDAY\" in parts || \"BYMONTHDAY\" in parts)) {\n throw new Error(\"For WEEKLY recurrences neither BYMONTHDAY nor BYYEARDAY may appear\");\n }\n\n // BYYEARDAY may only appear in YEARLY rules\n if (this.rule.freq != \"YEARLY\" && \"BYYEARDAY\" in parts) {\n throw new Error(\"BYYEARDAY may only appear in YEARLY rules\");\n }\n\n this.last.second = this.setup_defaults(\"BYSECOND\", \"SECONDLY\", this.dtstart.second);\n this.last.minute = this.setup_defaults(\"BYMINUTE\", \"MINUTELY\", this.dtstart.minute);\n this.last.hour = this.setup_defaults(\"BYHOUR\", \"HOURLY\", this.dtstart.hour);\n this.last.day = this.setup_defaults(\"BYMONTHDAY\", \"DAILY\", this.dtstart.day);\n this.last.month = this.setup_defaults(\"BYMONTH\", \"MONTHLY\", this.dtstart.month);\n\n if (this.rule.freq == \"WEEKLY\") {\n if (\"BYDAY\" in parts) {\n let [, dow] = this.ruleDayOfWeek(parts.BYDAY[0], this.rule.wkst);\n let wkdy = dow - this.last.dayOfWeek(this.rule.wkst);\n if ((this.last.dayOfWeek(this.rule.wkst) < dow && wkdy >= 0) || wkdy < 0) {\n // Initial time is after first day of BYDAY data\n this.last.day += wkdy;\n }\n } else {\n let dayName = Recur.numericDayToIcalDay(this.dtstart.dayOfWeek());\n parts.BYDAY = [dayName];\n }\n }\n\n if (this.rule.freq == \"YEARLY\") {\n // Some yearly recurrence rules may be specific enough to not actually\n // occur on a yearly basis, e.g. the 29th day of February or the fifth\n // Monday of a given month. The standard isn't clear on the intended\n // behavior in these cases, but `libical` at least will iterate until it\n // finds a matching year.\n // CAREFUL: Some rules may specify an occurrence that can never happen,\n // e.g. the first Monday of April so long as it falls on the 15th\n // through the 21st. Detecting these is non-trivial, so ensure that we\n // stop iterating at some point.\n const untilYear = this.rule.until ? this.rule.until.year : 20000;\n while (this.last.year <= untilYear) {\n this.expand_year_days(this.last.year);\n if (this.days.length > 0) {\n break;\n }\n this.increment_year(this.rule.interval);\n }\n\n if (this.days.length == 0) {\n throw new InvalidRecurrenceRuleError();\n }\n\n this._nextByYearDay();\n }\n\n if (this.rule.freq == \"MONTHLY\") {\n if (this.has_by_data(\"BYDAY\")) {\n let tempLast = null;\n let initLast = this.last.clone();\n let daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n\n // Check every weekday in BYDAY with relative dow and pos.\n for (let bydow of this.by_data.BYDAY) {\n this.last = initLast.clone();\n let [pos, dow] = this.ruleDayOfWeek(bydow);\n let dayOfMonth = this.last.nthWeekDay(dow, pos);\n\n // If |pos| >= 6, the byday is invalid for a monthly rule.\n if (pos >= 6 || pos <= -6) {\n throw new Error(\"Malformed values in BYDAY part\");\n }\n\n // If a Byday with pos=+/-5 is not in the current month it\n // must be searched in the next months.\n if (dayOfMonth > daysInMonth || dayOfMonth <= 0) {\n // Skip if we have already found a \"last\" in this month.\n if (tempLast && tempLast.month == initLast.month) {\n continue;\n }\n while (dayOfMonth > daysInMonth || dayOfMonth <= 0) {\n this.increment_month();\n daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n dayOfMonth = this.last.nthWeekDay(dow, pos);\n }\n }\n\n this.last.day = dayOfMonth;\n if (!tempLast || this.last.compare(tempLast) < 0) {\n tempLast = this.last.clone();\n }\n }\n this.last = tempLast.clone();\n\n //XXX: This feels like a hack, but we need to initialize\n // the BYMONTHDAY case correctly and byDayAndMonthDay handles\n // this case. It accepts a special flag which will avoid incrementing\n // the initial value without the flag days that match the start time\n // would be missed.\n if (this.has_by_data('BYMONTHDAY')) {\n this._byDayAndMonthDay(true);\n }\n\n if (this.last.day > daysInMonth || this.last.day == 0) {\n throw new Error(\"Malformed values in BYDAY part\");\n }\n } else if (this.has_by_data(\"BYMONTHDAY\")) {\n // Change the day value so that normalisation won't change the month.\n this.last.day = 1;\n\n // Get a sorted list of days in the starting month that match the rule.\n let normalized = this.normalizeByMonthDayRules(\n this.last.year,\n this.last.month,\n this.rule.parts.BYMONTHDAY\n ).filter(d => d >= this.last.day);\n\n if (normalized.length) {\n // There's at least one valid day, use it.\n this.last.day = normalized[0];\n this.by_data.BYMONTHDAY = normalized;\n } else {\n // There's no occurrence in this month, find the next valid month.\n // The longest possible sequence of skipped months is February-April-June,\n // so we might need to call next_month up to three times.\n if (!this.next_month() && !this.next_month() && !this.next_month()) {\n throw new Error(\"No possible occurrences\");\n }\n }\n }\n }\n }\n\n /**\n * Retrieve the next occurrence from the iterator.\n * @return {Time}\n */\n next(again = false) {\n let before = (this.last ? this.last.clone() : null);\n\n if ((this.rule.count && this.occurrence_number >= this.rule.count) ||\n (this.rule.until && this.last.compare(this.rule.until) > 0)) {\n this.completed = true;\n }\n\n if (this.completed) {\n return null;\n }\n\n if (this.occurrence_number == 0 && this.last.compare(this.dtstart) >= 0) {\n // First of all, give the instance that was initialized\n this.occurrence_number++;\n return this.last;\n }\n\n let valid;\n do {\n valid = 1;\n\n switch (this.rule.freq) {\n case \"SECONDLY\":\n this.next_second();\n break;\n case \"MINUTELY\":\n this.next_minute();\n break;\n case \"HOURLY\":\n this.next_hour();\n break;\n case \"DAILY\":\n this.next_day();\n break;\n case \"WEEKLY\":\n this.next_week();\n break;\n case \"MONTHLY\":\n valid = this.next_month();\n break;\n case \"YEARLY\":\n this.next_year();\n break;\n\n default:\n return null;\n }\n } while (!this.check_contracting_rules() ||\n this.last.compare(this.dtstart) < 0 ||\n !valid);\n\n if (this.last.compare(before) == 0) {\n if (again) {\n throw new Error(\"Same occurrence found twice, protecting you from death by recursion\");\n }\n this.next(true);\n }\n\n if (this.rule.until && this.last.compare(this.rule.until) > 0) {\n this.completed = true;\n return null;\n } else {\n this.occurrence_number++;\n return this.last;\n }\n }\n\n next_second() {\n return this.next_generic(\"BYSECOND\", \"SECONDLY\", \"second\", \"minute\");\n }\n\n increment_second(inc) {\n return this.increment_generic(inc, \"second\", 60, \"minute\");\n }\n\n next_minute() {\n return this.next_generic(\"BYMINUTE\", \"MINUTELY\",\n \"minute\", \"hour\", \"next_second\");\n }\n\n increment_minute(inc) {\n return this.increment_generic(inc, \"minute\", 60, \"hour\");\n }\n\n next_hour() {\n return this.next_generic(\"BYHOUR\", \"HOURLY\", \"hour\",\n \"monthday\", \"next_minute\");\n }\n\n increment_hour(inc) {\n this.increment_generic(inc, \"hour\", 24, \"monthday\");\n }\n\n next_day() {\n let this_freq = (this.rule.freq == \"DAILY\");\n\n if (this.next_hour() == 0) {\n return 0;\n }\n\n if (this_freq) {\n this.increment_monthday(this.rule.interval);\n } else {\n this.increment_monthday(1);\n }\n\n return 0;\n }\n\n next_week() {\n let end_of_data = 0;\n\n if (this.next_weekday_by_week() == 0) {\n return end_of_data;\n }\n\n if (this.has_by_data(\"BYWEEKNO\")) {\n this.by_indices.BYWEEKNO++;\n\n if (this.by_indices.BYWEEKNO == this.by_data.BYWEEKNO.length) {\n this.by_indices.BYWEEKNO = 0;\n end_of_data = 1;\n }\n\n // HACK should be first month of the year\n this.last.month = 1;\n this.last.day = 1;\n\n let week_no = this.by_data.BYWEEKNO[this.by_indices.BYWEEKNO];\n\n this.last.day += 7 * week_no;\n\n if (end_of_data) {\n this.increment_year(1);\n }\n } else {\n // Jump to the next week\n this.increment_monthday(7 * this.rule.interval);\n }\n\n return end_of_data;\n }\n\n /**\n * Normalize each by day rule for a given year/month.\n * Takes into account ordering and negative rules\n *\n * @private\n * @param {Number} year Current year.\n * @param {Number} month Current month.\n * @param {Array} rules Array of rules.\n *\n * @return {Array} sorted and normalized rules.\n * Negative rules will be expanded to their\n * correct positive values for easier processing.\n */\n normalizeByMonthDayRules(year, month, rules) {\n let daysInMonth = Time.daysInMonth(month, year);\n\n // XXX: This is probably bad for performance to allocate\n // a new array for each month we scan, if possible\n // we should try to optimize this...\n let newRules = [];\n\n let ruleIdx = 0;\n let len = rules.length;\n let rule;\n\n for (; ruleIdx < len; ruleIdx++) {\n rule = parseInt(rules[ruleIdx], 10);\n if (isNaN(rule)) {\n throw new Error('Invalid BYMONTHDAY value');\n }\n\n // if this rule falls outside of given\n // month discard it.\n if (Math.abs(rule) > daysInMonth) {\n continue;\n }\n\n // negative case\n if (rule < 0) {\n // we add (not subtract it is a negative number)\n // one from the rule because 1 === last day of month\n rule = daysInMonth + (rule + 1);\n } else if (rule === 0) {\n // skip zero: it is invalid.\n continue;\n }\n\n // only add unique items...\n if (newRules.indexOf(rule) === -1) {\n newRules.push(rule);\n }\n\n }\n\n // unique and sort\n return newRules.sort(function(a, b) { return a - b; });\n }\n\n /**\n * NOTES:\n * We are given a list of dates in the month (BYMONTHDAY) (23, etc..)\n * Also we are given a list of days (BYDAY) (MO, 2SU, etc..) when\n * both conditions match a given date (this.last.day) iteration stops.\n *\n * @private\n * @param {Boolean=} isInit When given true will not increment the\n * current day (this.last).\n */\n _byDayAndMonthDay(isInit) {\n let byMonthDay; // setup in initMonth\n let byDay = this.by_data.BYDAY;\n\n let date;\n let dateIdx = 0;\n let dateLen; // setup in initMonth\n let dayLen = byDay.length;\n\n // we are not valid by default\n let dataIsValid = 0;\n\n let daysInMonth;\n let self = this;\n // we need a copy of this, because a DateTime gets normalized\n // automatically if the day is out of range. At some points we\n // set the last day to 0 to start counting.\n let lastDay = this.last.day;\n\n function initMonth() {\n daysInMonth = Time.daysInMonth(\n self.last.month, self.last.year\n );\n\n byMonthDay = self.normalizeByMonthDayRules(\n self.last.year,\n self.last.month,\n self.by_data.BYMONTHDAY\n );\n\n dateLen = byMonthDay.length;\n\n // For the case of more than one occurrence in one month\n // we have to be sure to start searching after the last\n // found date or at the last BYMONTHDAY, unless we are\n // initializing the iterator because in this case we have\n // to consider the last found date too.\n while (byMonthDay[dateIdx] <= lastDay &&\n !(isInit && byMonthDay[dateIdx] == lastDay) &&\n dateIdx < dateLen - 1) {\n dateIdx++;\n }\n }\n\n function nextMonth() {\n // since the day is incremented at the start\n // of the loop below, we need to start at 0\n lastDay = 0;\n self.increment_month();\n dateIdx = 0;\n initMonth();\n }\n\n initMonth();\n\n // should come after initMonth\n if (isInit) {\n lastDay -= 1;\n }\n\n // Use a counter to avoid an infinite loop with malformed rules.\n // Stop checking after 4 years so we consider also a leap year.\n let monthsCounter = 48;\n\n while (!dataIsValid && monthsCounter) {\n monthsCounter--;\n // increment the current date. This is really\n // important otherwise we may fall into the infinite\n // loop trap. The initial date takes care of the case\n // where the current date is the date we are looking\n // for.\n date = lastDay + 1;\n\n if (date > daysInMonth) {\n nextMonth();\n continue;\n }\n\n // find next date\n let next = byMonthDay[dateIdx++];\n\n // this logic is dependent on the BYMONTHDAYS\n // being in order (which is done by #normalizeByMonthDayRules)\n if (next >= date) {\n // if the next month day is in the future jump to it.\n lastDay = next;\n } else {\n // in this case the 'next' monthday has past\n // we must move to the month.\n nextMonth();\n continue;\n }\n\n // Now we can loop through the day rules to see\n // if one matches the current month date.\n for (let dayIdx = 0; dayIdx < dayLen; dayIdx++) {\n let parts = this.ruleDayOfWeek(byDay[dayIdx]);\n let pos = parts[0];\n let dow = parts[1];\n\n this.last.day = lastDay;\n if (this.last.isNthWeekDay(dow, pos)) {\n // when we find the valid one we can mark\n // the conditions as met and break the loop.\n // (Because we have this condition above\n // it will also break the parent loop).\n dataIsValid = 1;\n break;\n }\n }\n\n // It is completely possible that the combination\n // cannot be matched in the current month.\n // When we reach the end of possible combinations\n // in the current month we iterate to the next one.\n // since dateIdx is incremented right after getting\n // \"next\", we don't need dateLen -1 here.\n if (!dataIsValid && dateIdx === dateLen) {\n nextMonth();\n continue;\n }\n }\n\n if (monthsCounter <= 0) {\n // Checked 4 years without finding a Byday that matches\n // a Bymonthday. Maybe the rule is not correct.\n throw new Error(\"Malformed values in BYDAY combined with BYMONTHDAY parts\");\n }\n\n\n return dataIsValid;\n }\n\n next_month() {\n let data_valid = 1;\n\n if (this.next_hour() == 0) {\n return data_valid;\n }\n\n if (this.has_by_data(\"BYDAY\") && this.has_by_data(\"BYMONTHDAY\")) {\n data_valid = this._byDayAndMonthDay();\n } else if (this.has_by_data(\"BYDAY\")) {\n let daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n let setpos = 0;\n let setpos_total = 0;\n\n if (this.has_by_data(\"BYSETPOS\")) {\n let last_day = this.last.day;\n for (let day = 1; day <= daysInMonth; day++) {\n this.last.day = day;\n if (this.is_day_in_byday(this.last)) {\n setpos_total++;\n if (day <= last_day) {\n setpos++;\n }\n }\n }\n this.last.day = last_day;\n }\n\n data_valid = 0;\n let day;\n for (day = this.last.day + 1; day <= daysInMonth; day++) {\n this.last.day = day;\n\n if (this.is_day_in_byday(this.last)) {\n if (!this.has_by_data(\"BYSETPOS\") ||\n this.check_set_position(++setpos) ||\n this.check_set_position(setpos - setpos_total - 1)) {\n\n data_valid = 1;\n break;\n }\n }\n }\n\n if (day > daysInMonth) {\n this.last.day = 1;\n this.increment_month();\n\n if (this.is_day_in_byday(this.last)) {\n if (!this.has_by_data(\"BYSETPOS\") || this.check_set_position(1)) {\n data_valid = 1;\n }\n } else {\n data_valid = 0;\n }\n }\n } else if (this.has_by_data(\"BYMONTHDAY\")) {\n this.by_indices.BYMONTHDAY++;\n\n if (this.by_indices.BYMONTHDAY >= this.by_data.BYMONTHDAY.length) {\n this.by_indices.BYMONTHDAY = 0;\n this.increment_month();\n if (this.by_indices.BYMONTHDAY >= this.by_data.BYMONTHDAY.length) {\n return 0;\n }\n }\n\n let daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n let day = this.by_data.BYMONTHDAY[this.by_indices.BYMONTHDAY];\n\n if (day < 0) {\n day = daysInMonth + day + 1;\n }\n\n if (day > daysInMonth) {\n this.last.day = 1;\n data_valid = this.is_day_in_byday(this.last);\n } else {\n this.last.day = day;\n }\n } else {\n this.increment_month();\n let daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n if (this.by_data.BYMONTHDAY[0] > daysInMonth) {\n data_valid = 0;\n } else {\n this.last.day = this.by_data.BYMONTHDAY[0];\n }\n }\n\n return data_valid;\n }\n\n next_weekday_by_week() {\n let end_of_data = 0;\n\n if (this.next_hour() == 0) {\n return end_of_data;\n }\n\n if (!this.has_by_data(\"BYDAY\")) {\n return 1;\n }\n\n for (;;) {\n let tt = new Time();\n this.by_indices.BYDAY++;\n\n if (this.by_indices.BYDAY == Object.keys(this.by_data.BYDAY).length) {\n this.by_indices.BYDAY = 0;\n end_of_data = 1;\n }\n\n let coded_day = this.by_data.BYDAY[this.by_indices.BYDAY];\n let parts = this.ruleDayOfWeek(coded_day);\n let dow = parts[1];\n\n dow -= this.rule.wkst;\n\n if (dow < 0) {\n dow += 7;\n }\n\n tt.year = this.last.year;\n tt.month = this.last.month;\n tt.day = this.last.day;\n\n let startOfWeek = tt.startDoyWeek(this.rule.wkst);\n\n if (dow + startOfWeek < 1) {\n // The selected date is in the previous year\n if (!end_of_data) {\n continue;\n }\n }\n\n let next = Time.fromDayOfYear(startOfWeek + dow, this.last.year);\n\n /**\n * The normalization horrors below are due to\n * the fact that when the year/month/day changes\n * it can effect the other operations that come after.\n */\n this.last.year = next.year;\n this.last.month = next.month;\n this.last.day = next.day;\n\n return end_of_data;\n }\n }\n\n next_year() {\n if (this.next_hour() == 0) {\n return 0;\n }\n\n if (++this.days_index == this.days.length) {\n this.days_index = 0;\n do {\n this.increment_year(this.rule.interval);\n if (this.has_by_data(\"BYMONTHDAY\")) {\n this.by_data.BYMONTHDAY = this.normalizeByMonthDayRules(\n this.last.year,\n this.last.month,\n this.rule.parts.BYMONTHDAY\n );\n }\n this.expand_year_days(this.last.year);\n } while (this.days.length == 0);\n }\n\n this._nextByYearDay();\n\n return 1;\n }\n\n _nextByYearDay() {\n let doy = this.days[this.days_index];\n let year = this.last.year;\n if (doy < 1) {\n // Time.fromDayOfYear(doy, year) indexes relative to the\n // start of the given year. That is different from the\n // semantics of BYYEARDAY where negative indexes are an\n // offset from the end of the given year.\n doy += 1;\n year += 1;\n }\n let next = Time.fromDayOfYear(doy, year);\n this.last.day = next.day;\n this.last.month = next.month;\n }\n\n /**\n * @param dow (eg: '1TU', '-1MO')\n * @param {weekDay=} aWeekStart The week start weekday\n * @return [pos, numericDow] (eg: [1, 3]) numericDow is relative to aWeekStart\n */\n ruleDayOfWeek(dow, aWeekStart) {\n let matches = dow.match(/([+-]?[0-9])?(MO|TU|WE|TH|FR|SA|SU)/);\n if (matches) {\n let pos = parseInt(matches[1] || 0, 10);\n dow = Recur.icalDayToNumericDay(matches[2], aWeekStart);\n return [pos, dow];\n } else {\n return [0, 0];\n }\n }\n\n next_generic(aRuleType, aInterval, aDateAttr, aFollowingAttr, aPreviousIncr) {\n let has_by_rule = (aRuleType in this.by_data);\n let this_freq = (this.rule.freq == aInterval);\n let end_of_data = 0;\n\n if (aPreviousIncr && this[aPreviousIncr]() == 0) {\n return end_of_data;\n }\n\n if (has_by_rule) {\n this.by_indices[aRuleType]++;\n let dta = this.by_data[aRuleType];\n\n if (this.by_indices[aRuleType] == dta.length) {\n this.by_indices[aRuleType] = 0;\n end_of_data = 1;\n }\n this.last[aDateAttr] = dta[this.by_indices[aRuleType]];\n } else if (this_freq) {\n this[\"increment_\" + aDateAttr](this.rule.interval);\n }\n\n if (has_by_rule && end_of_data && this_freq) {\n this[\"increment_\" + aFollowingAttr](1);\n }\n\n return end_of_data;\n }\n\n increment_monthday(inc) {\n for (let i = 0; i < inc; i++) {\n let daysInMonth = Time.daysInMonth(this.last.month, this.last.year);\n this.last.day++;\n\n if (this.last.day > daysInMonth) {\n this.last.day -= daysInMonth;\n this.increment_month();\n }\n }\n }\n\n increment_month() {\n this.last.day = 1;\n if (this.has_by_data(\"BYMONTH\")) {\n this.by_indices.BYMONTH++;\n\n if (this.by_indices.BYMONTH == this.by_data.BYMONTH.length) {\n this.by_indices.BYMONTH = 0;\n this.increment_year(1);\n }\n\n this.last.month = this.by_data.BYMONTH[this.by_indices.BYMONTH];\n } else {\n if (this.rule.freq == \"MONTHLY\") {\n this.last.month += this.rule.interval;\n } else {\n this.last.month++;\n }\n\n this.last.month--;\n let years = trunc(this.last.month / 12);\n this.last.month %= 12;\n this.last.month++;\n\n if (years != 0) {\n this.increment_year(years);\n }\n }\n\n if (this.has_by_data(\"BYMONTHDAY\")) {\n this.by_data.BYMONTHDAY = this.normalizeByMonthDayRules(\n this.last.year,\n this.last.month,\n this.rule.parts.BYMONTHDAY\n );\n }\n }\n\n increment_year(inc) {\n // Don't jump into the next month if this.last is Feb 29.\n this.last.day = 1;\n this.last.year += inc;\n }\n\n increment_generic(inc, aDateAttr, aFactor, aNextIncrement) {\n this.last[aDateAttr] += inc;\n let nextunit = trunc(this.last[aDateAttr] / aFactor);\n this.last[aDateAttr] %= aFactor;\n if (nextunit != 0) {\n this[\"increment_\" + aNextIncrement](nextunit);\n }\n }\n\n has_by_data(aRuleType) {\n return (aRuleType in this.rule.parts);\n }\n\n expand_year_days(aYear) {\n let t = new Time();\n this.days = [];\n\n // We need our own copy with a few keys set\n let parts = {};\n let rules = [\"BYDAY\", \"BYWEEKNO\", \"BYMONTHDAY\", \"BYMONTH\", \"BYYEARDAY\"];\n for (let part of rules) {\n if (part in this.rule.parts) {\n parts[part] = this.rule.parts[part];\n }\n }\n\n if (\"BYMONTH\" in parts && \"BYWEEKNO\" in parts) {\n let valid = 1;\n let validWeeks = {};\n t.year = aYear;\n t.isDate = true;\n\n for (let monthIdx = 0; monthIdx < this.by_data.BYMONTH.length; monthIdx++) {\n let month = this.by_data.BYMONTH[monthIdx];\n t.month = month;\n t.day = 1;\n let first_week = t.weekNumber(this.rule.wkst);\n t.day = Time.daysInMonth(month, aYear);\n let last_week = t.weekNumber(this.rule.wkst);\n for (monthIdx = first_week; monthIdx < last_week; monthIdx++) {\n validWeeks[monthIdx] = 1;\n }\n }\n\n for (let weekIdx = 0; weekIdx < this.by_data.BYWEEKNO.length && valid; weekIdx++) {\n let weekno = this.by_data.BYWEEKNO[weekIdx];\n if (weekno < 52) {\n valid &= validWeeks[weekIdx];\n } else {\n valid = 0;\n }\n }\n\n if (valid) {\n delete parts.BYMONTH;\n } else {\n delete parts.BYWEEKNO;\n }\n }\n\n let partCount = Object.keys(parts).length;\n\n if (partCount == 0) {\n let t1 = this.dtstart.clone();\n t1.year = this.last.year;\n this.days.push(t1.dayOfYear());\n } else if (partCount == 1 && \"BYMONTH\" in parts) {\n for (let month of this.by_data.BYMONTH) {\n let t2 = this.dtstart.clone();\n t2.year = aYear;\n t2.month = month;\n t2.isDate = true;\n this.days.push(t2.dayOfYear());\n }\n } else if (partCount == 1 && \"BYMONTHDAY\" in parts) {\n for (let monthday of this.by_data.BYMONTHDAY) {\n let t3 = this.dtstart.clone();\n if (monthday < 0) {\n let daysInMonth = Time.daysInMonth(t3.month, aYear);\n monthday = monthday + daysInMonth + 1;\n }\n t3.day = monthday;\n t3.year = aYear;\n t3.isDate = true;\n this.days.push(t3.dayOfYear());\n }\n } else if (partCount == 2 &&\n \"BYMONTHDAY\" in parts &&\n \"BYMONTH\" in parts) {\n for (let month of this.by_data.BYMONTH) {\n let daysInMonth = Time.daysInMonth(month, aYear);\n for (let monthday of this.by_data.BYMONTHDAY) {\n if (monthday < 0) {\n monthday = monthday + daysInMonth + 1;\n }\n t.day = monthday;\n t.month = month;\n t.year = aYear;\n t.isDate = true;\n\n this.days.push(t.dayOfYear());\n }\n }\n } else if (partCount == 1 && \"BYWEEKNO\" in parts) ; else if (partCount == 2 &&\n \"BYWEEKNO\" in parts &&\n \"BYMONTHDAY\" in parts) ; else if (partCount == 1 && \"BYDAY\" in parts) {\n this.days = this.days.concat(this.expand_by_day(aYear));\n } else if (partCount == 2 && \"BYDAY\" in parts && \"BYMONTH\" in parts) {\n for (let month of this.by_data.BYMONTH) {\n let daysInMonth = Time.daysInMonth(month, aYear);\n\n t.year = aYear;\n t.month = month;\n t.day = 1;\n t.isDate = true;\n\n let first_dow = t.dayOfWeek();\n let doy_offset = t.dayOfYear() - 1;\n\n t.day = daysInMonth;\n let last_dow = t.dayOfWeek();\n\n if (this.has_by_data(\"BYSETPOS\")) {\n let by_month_day = [];\n for (let day = 1; day <= daysInMonth; day++) {\n t.day = day;\n if (this.is_day_in_byday(t)) {\n by_month_day.push(day);\n }\n }\n\n for (let spIndex = 0; spIndex < by_month_day.length; spIndex++) {\n if (this.check_set_position(spIndex + 1) ||\n this.check_set_position(spIndex - by_month_day.length)) {\n this.days.push(doy_offset + by_month_day[spIndex]);\n }\n }\n } else {\n for (let coded_day of this.by_data.BYDAY) {\n let bydayParts = this.ruleDayOfWeek(coded_day);\n let pos = bydayParts[0];\n let dow = bydayParts[1];\n let month_day;\n\n let first_matching_day = ((dow + 7 - first_dow) % 7) + 1;\n let last_matching_day = daysInMonth - ((last_dow + 7 - dow) % 7);\n\n if (pos == 0) {\n for (let day = first_matching_day; day <= daysInMonth; day += 7) {\n this.days.push(doy_offset + day);\n }\n } else if (pos > 0) {\n month_day = first_matching_day + (pos - 1) * 7;\n\n if (month_day <= daysInMonth) {\n this.days.push(doy_offset + month_day);\n }\n } else {\n month_day = last_matching_day + (pos + 1) * 7;\n\n if (month_day > 0) {\n this.days.push(doy_offset + month_day);\n }\n }\n }\n }\n }\n // Return dates in order of occurrence (1,2,3,...) instead\n // of by groups of weekdays (1,8,15,...,2,9,16,...).\n this.days.sort(function(a, b) { return a - b; }); // Comparator function allows to sort numbers.\n } else if (partCount == 2 && \"BYDAY\" in parts && \"BYMONTHDAY\" in parts) {\n let expandedDays = this.expand_by_day(aYear);\n\n for (let day of expandedDays) {\n let tt = Time.fromDayOfYear(day, aYear);\n if (this.by_data.BYMONTHDAY.indexOf(tt.day) >= 0) {\n this.days.push(day);\n }\n }\n } else if (partCount == 3 &&\n \"BYDAY\" in parts &&\n \"BYMONTHDAY\" in parts &&\n \"BYMONTH\" in parts) {\n let expandedDays = this.expand_by_day(aYear);\n\n for (let day of expandedDays) {\n let tt = Time.fromDayOfYear(day, aYear);\n\n if (this.by_data.BYMONTH.indexOf(tt.month) >= 0 &&\n this.by_data.BYMONTHDAY.indexOf(tt.day) >= 0) {\n this.days.push(day);\n }\n }\n } else if (partCount == 2 && \"BYDAY\" in parts && \"BYWEEKNO\" in parts) {\n let expandedDays = this.expand_by_day(aYear);\n\n for (let day of expandedDays) {\n let tt = Time.fromDayOfYear(day, aYear);\n let weekno = tt.weekNumber(this.rule.wkst);\n\n if (this.by_data.BYWEEKNO.indexOf(weekno)) {\n this.days.push(day);\n }\n }\n } else if (partCount == 3 &&\n \"BYDAY\" in parts &&\n \"BYWEEKNO\" in parts &&\n \"BYMONTHDAY\" in parts) ; else if (partCount == 1 && \"BYYEARDAY\" in parts) {\n this.days = this.days.concat(this.by_data.BYYEARDAY);\n } else {\n this.days = [];\n }\n\n let daysInYear = Time.isLeapYear(aYear) ? 366 : 365;\n this.days.sort((a, b) => {\n if (a < 0) a += daysInYear + 1;\n if (b < 0) b += daysInYear + 1;\n return a - b;\n });\n\n return 0;\n }\n\n expand_by_day(aYear) {\n\n let days_list = [];\n let tmp = this.last.clone();\n\n tmp.year = aYear;\n tmp.month = 1;\n tmp.day = 1;\n tmp.isDate = true;\n\n let start_dow = tmp.dayOfWeek();\n\n tmp.month = 12;\n tmp.day = 31;\n tmp.isDate = true;\n\n let end_dow = tmp.dayOfWeek();\n let end_year_day = tmp.dayOfYear();\n\n for (let day of this.by_data.BYDAY) {\n let parts = this.ruleDayOfWeek(day);\n let pos = parts[0];\n let dow = parts[1];\n\n if (pos == 0) {\n let tmp_start_doy = ((dow + 7 - start_dow) % 7) + 1;\n\n for (let doy = tmp_start_doy; doy <= end_year_day; doy += 7) {\n days_list.push(doy);\n }\n\n } else if (pos > 0) {\n let first;\n if (dow >= start_dow) {\n first = dow - start_dow + 1;\n } else {\n first = dow - start_dow + 8;\n }\n\n days_list.push(first + (pos - 1) * 7);\n } else {\n let last;\n pos = -pos;\n\n if (dow <= end_dow) {\n last = end_year_day - end_dow + dow;\n } else {\n last = end_year_day - end_dow + dow - 7;\n }\n\n days_list.push(last - (pos - 1) * 7);\n }\n }\n return days_list;\n }\n\n is_day_in_byday(tt) {\n if (this.by_data.BYDAY) {\n for (let day of this.by_data.BYDAY) {\n let parts = this.ruleDayOfWeek(day);\n let pos = parts[0];\n let dow = parts[1];\n let this_dow = tt.dayOfWeek();\n\n if ((pos == 0 && dow == this_dow) ||\n (tt.nthWeekDay(dow, pos) == tt.day)) {\n return 1;\n }\n }\n }\n\n return 0;\n }\n\n /**\n * Checks if given value is in BYSETPOS.\n *\n * @private\n * @param {Numeric} aPos position to check for.\n * @return {Boolean} false unless BYSETPOS rules exist\n * and the given value is present in rules.\n */\n check_set_position(aPos) {\n if (this.has_by_data('BYSETPOS')) {\n let idx = this.by_data.BYSETPOS.indexOf(aPos);\n // negative numbers are not false-y\n return idx !== -1;\n }\n return false;\n }\n\n sort_byday_rules(aRules) {\n for (let i = 0; i < aRules.length; i++) {\n for (let j = 0; j < i; j++) {\n let one = this.ruleDayOfWeek(aRules[j], this.rule.wkst)[1];\n let two = this.ruleDayOfWeek(aRules[i], this.rule.wkst)[1];\n\n if (one > two) {\n let tmp = aRules[i];\n aRules[i] = aRules[j];\n aRules[j] = tmp;\n }\n }\n }\n }\n\n check_contract_restriction(aRuleType, v) {\n let indexMapValue = RecurIterator._indexMap[aRuleType];\n let ruleMapValue = RecurIterator._expandMap[this.rule.freq][indexMapValue];\n let pass = false;\n\n if (aRuleType in this.by_data &&\n ruleMapValue == RecurIterator.CONTRACT) {\n\n let ruleType = this.by_data[aRuleType];\n\n for (let bydata of ruleType) {\n if (bydata == v) {\n pass = true;\n break;\n }\n }\n } else {\n // Not a contracting byrule or has no data, test passes\n pass = true;\n }\n return pass;\n }\n\n check_contracting_rules() {\n let dow = this.last.dayOfWeek();\n let weekNo = this.last.weekNumber(this.rule.wkst);\n let doy = this.last.dayOfYear();\n\n return (this.check_contract_restriction(\"BYSECOND\", this.last.second) &&\n this.check_contract_restriction(\"BYMINUTE\", this.last.minute) &&\n this.check_contract_restriction(\"BYHOUR\", this.last.hour) &&\n this.check_contract_restriction(\"BYDAY\", Recur.numericDayToIcalDay(dow)) &&\n this.check_contract_restriction(\"BYWEEKNO\", weekNo) &&\n this.check_contract_restriction(\"BYMONTHDAY\", this.last.day) &&\n this.check_contract_restriction(\"BYMONTH\", this.last.month) &&\n this.check_contract_restriction(\"BYYEARDAY\", doy));\n }\n\n setup_defaults(aRuleType, req, deftime) {\n let indexMapValue = RecurIterator._indexMap[aRuleType];\n let ruleMapValue = RecurIterator._expandMap[this.rule.freq][indexMapValue];\n\n if (ruleMapValue != RecurIterator.CONTRACT) {\n if (!(aRuleType in this.by_data)) {\n this.by_data[aRuleType] = [deftime];\n }\n if (this.rule.freq != req) {\n return this.by_data[aRuleType][0];\n }\n }\n return deftime;\n }\n\n /**\n * Convert iterator into a serialize-able object. Will preserve current\n * iteration sequence to ensure the seamless continuation of the recurrence\n * rule.\n * @return {Object}\n */\n toJSON() {\n let result = Object.create(null);\n\n result.initialized = this.initialized;\n result.rule = this.rule.toJSON();\n result.dtstart = this.dtstart.toJSON();\n result.by_data = this.by_data;\n result.days = this.days;\n result.last = this.last.toJSON();\n result.by_indices = this.by_indices;\n result.occurrence_number = this.occurrence_number;\n\n return result;\n }\n}\n\n/**\n * An error indicating that a recurrence rule is invalid and produces no\n * occurrences.\n *\n * @extends {Error}\n * @class\n */\nclass InvalidRecurrenceRuleError extends Error {\n constructor() {\n super(\"Recurrence rule has no valid occurrences\");\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n *\n * @ignore\n * @typedef {import(\"./types.js\").weekDay} weekDay\n * Imports the 'weekDay' type from the \"types.js\" module\n * @typedef {import(\"./types.js\").frequencyValues} frequencyValues\n * Imports the 'frequencyValues' type from the \"types.js\" module\n */\n\nconst VALID_DAY_NAMES = /^(SU|MO|TU|WE|TH|FR|SA)$/;\nconst VALID_BYDAY_PART = /^([+-])?(5[0-3]|[1-4][0-9]|[1-9])?(SU|MO|TU|WE|TH|FR|SA)$/;\nconst DOW_MAP = {\n SU: Time.SUNDAY,\n MO: Time.MONDAY,\n TU: Time.TUESDAY,\n WE: Time.WEDNESDAY,\n TH: Time.THURSDAY,\n FR: Time.FRIDAY,\n SA: Time.SATURDAY\n};\n\nconst REVERSE_DOW_MAP = Object.fromEntries(Object.entries(DOW_MAP).map(entry => entry.reverse()));\n\nconst ALLOWED_FREQ = ['SECONDLY', 'MINUTELY', 'HOURLY',\n 'DAILY', 'WEEKLY', 'MONTHLY', 'YEARLY'];\n\n/**\n * This class represents the \"recur\" value type, used for example by RRULE. It provides methods to\n * calculate occurrences among others.\n *\n * @memberof ICAL\n */\nclass Recur {\n /**\n * Creates a new {@link ICAL.Recur} instance from the passed string.\n *\n * @param {String} string The string to parse\n * @return {Recur} The created recurrence instance\n */\n static fromString(string) {\n let data = this._stringToData(string, false);\n return new Recur(data);\n }\n\n /**\n * Creates a new {@link ICAL.Recur} instance using members from the passed\n * data object.\n *\n * @param {Object} aData An object with members of the recurrence\n * @param {frequencyValues=} aData.freq The frequency value\n * @param {Number=} aData.interval The INTERVAL value\n * @param {weekDay=} aData.wkst The week start value\n * @param {Time=} aData.until The end of the recurrence set\n * @param {Number=} aData.count The number of occurrences\n * @param {Array.=} aData.bysecond The seconds for the BYSECOND part\n * @param {Array.=} aData.byminute The minutes for the BYMINUTE part\n * @param {Array.=} aData.byhour The hours for the BYHOUR part\n * @param {Array.=} aData.byday The BYDAY values\n * @param {Array.=} aData.bymonthday The days for the BYMONTHDAY part\n * @param {Array.=} aData.byyearday The days for the BYYEARDAY part\n * @param {Array.=} aData.byweekno The weeks for the BYWEEKNO part\n * @param {Array.=} aData.bymonth The month for the BYMONTH part\n * @param {Array.=} aData.bysetpos The positionals for the BYSETPOS part\n */\n static fromData(aData) {\n return new Recur(aData);\n }\n\n /**\n * Converts a recurrence string to a data object, suitable for the fromData\n * method.\n *\n * @private\n * @param {String} string The string to parse\n * @param {Boolean} fmtIcal If true, the string is considered to be an\n * iCalendar string\n * @return {Recur} The recurrence instance\n */\n static _stringToData(string, fmtIcal) {\n let dict = Object.create(null);\n\n // split is slower in FF but fast enough.\n // v8 however this is faster then manual split?\n let values = string.split(';');\n let len = values.length;\n\n for (let i = 0; i < len; i++) {\n let parts = values[i].split('=');\n let ucname = parts[0].toUpperCase();\n let lcname = parts[0].toLowerCase();\n let name = (fmtIcal ? lcname : ucname);\n let value = parts[1];\n\n if (ucname in partDesign) {\n let partArr = value.split(',');\n let partSet = new Set();\n\n for (let part of partArr) {\n partSet.add(partDesign[ucname](part));\n }\n partArr = [...partSet];\n\n dict[name] = (partArr.length == 1 ? partArr[0] : partArr);\n } else if (ucname in optionDesign) {\n optionDesign[ucname](value, dict, fmtIcal);\n } else {\n // Don't swallow unknown values. Just set them as they are.\n dict[lcname] = value;\n }\n }\n\n return dict;\n }\n\n /**\n * Convert an ical representation of a day (SU, MO, etc..)\n * into a numeric value of that day.\n *\n * @param {String} string The iCalendar day name\n * @param {weekDay=} aWeekStart\n * The week start weekday, defaults to SUNDAY\n * @return {Number} Numeric value of given day\n */\n static icalDayToNumericDay(string, aWeekStart) {\n //XXX: this is here so we can deal\n // with possibly invalid string values.\n let firstDow = aWeekStart || Time.SUNDAY;\n return ((DOW_MAP[string] - firstDow + 7) % 7) + 1;\n }\n\n /**\n * Convert a numeric day value into its ical representation (SU, MO, etc..)\n *\n * @param {Number} num Numeric value of given day\n * @param {weekDay=} aWeekStart\n * The week start weekday, defaults to SUNDAY\n * @return {String} The ICAL day value, e.g SU,MO,...\n */\n static numericDayToIcalDay(num, aWeekStart) {\n //XXX: this is here so we can deal with possibly invalid number values.\n // Also, this allows consistent mapping between day numbers and day\n // names for external users.\n let firstDow = aWeekStart || Time.SUNDAY;\n let dow = (num + firstDow - Time.SUNDAY);\n if (dow > 7) {\n dow -= 7;\n }\n return REVERSE_DOW_MAP[dow];\n }\n\n /**\n * Create a new instance of the Recur class.\n *\n * @param {Object} data An object with members of the recurrence\n * @param {frequencyValues=} data.freq The frequency value\n * @param {Number=} data.interval The INTERVAL value\n * @param {weekDay=} data.wkst The week start value\n * @param {Time=} data.until The end of the recurrence set\n * @param {Number=} data.count The number of occurrences\n * @param {Array.=} data.bysecond The seconds for the BYSECOND part\n * @param {Array.=} data.byminute The minutes for the BYMINUTE part\n * @param {Array.=} data.byhour The hours for the BYHOUR part\n * @param {Array.=} data.byday The BYDAY values\n * @param {Array.=} data.bymonthday The days for the BYMONTHDAY part\n * @param {Array.=} data.byyearday The days for the BYYEARDAY part\n * @param {Array.=} data.byweekno The weeks for the BYWEEKNO part\n * @param {Array.=} data.bymonth The month for the BYMONTH part\n * @param {Array.=} data.bysetpos The positionals for the BYSETPOS part\n */\n constructor(data) {\n this.wrappedJSObject = this;\n this.parts = {};\n\n if (data && typeof(data) === 'object') {\n this.fromData(data);\n }\n }\n\n /**\n * An object holding the BY-parts of the recurrence rule\n * @memberof ICAL.Recur\n * @typedef {Object} byParts\n * @property {Array.=} BYSECOND The seconds for the BYSECOND part\n * @property {Array.=} BYMINUTE The minutes for the BYMINUTE part\n * @property {Array.=} BYHOUR The hours for the BYHOUR part\n * @property {Array.=} BYDAY The BYDAY values\n * @property {Array.=} BYMONTHDAY The days for the BYMONTHDAY part\n * @property {Array.=} BYYEARDAY The days for the BYYEARDAY part\n * @property {Array.=} BYWEEKNO The weeks for the BYWEEKNO part\n * @property {Array.=} BYMONTH The month for the BYMONTH part\n * @property {Array.=} BYSETPOS The positionals for the BYSETPOS part\n */\n\n /**\n * An object holding the BY-parts of the recurrence rule\n * @type {byParts}\n */\n parts = null;\n\n /**\n * The interval value for the recurrence rule.\n * @type {Number}\n */\n interval = 1;\n\n /**\n * The week start day\n *\n * @type {weekDay}\n * @default ICAL.Time.MONDAY\n */\n wkst = Time.MONDAY;\n\n /**\n * The end of the recurrence\n * @type {?Time}\n */\n until = null;\n\n /**\n * The maximum number of occurrences\n * @type {?Number}\n */\n count = null;\n\n /**\n * The frequency value.\n * @type {frequencyValues}\n */\n freq = null;\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"icalrecur\"\n */\n icalclass = \"icalrecur\";\n\n /**\n * The type name, to be used in the jCal object.\n * @constant\n * @type {String}\n * @default \"recur\"\n */\n icaltype = \"recur\";\n\n /**\n * Create a new iterator for this recurrence rule. The passed start date\n * must be the start date of the event, not the start of the range to\n * search in.\n *\n * @example\n * let recur = comp.getFirstPropertyValue('rrule');\n * let dtstart = comp.getFirstPropertyValue('dtstart');\n * let iter = recur.iterator(dtstart);\n * for (let next = iter.next(); next; next = iter.next()) {\n * if (next.compare(rangeStart) < 0) {\n * continue;\n * }\n * console.log(next.toString());\n * }\n *\n * @param {Time} aStart The item's start date\n * @return {RecurIterator} The recurrence iterator\n */\n iterator(aStart) {\n return new RecurIterator({\n rule: this,\n dtstart: aStart\n });\n }\n\n /**\n * Returns a clone of the recurrence object.\n *\n * @return {Recur} The cloned object\n */\n clone() {\n return new Recur(this.toJSON());\n }\n\n /**\n * Checks if the current rule is finite, i.e. has a count or until part.\n *\n * @return {Boolean} True, if the rule is finite\n */\n isFinite() {\n return !!(this.count || this.until);\n }\n\n /**\n * Checks if the current rule has a count part, and not limited by an until\n * part.\n *\n * @return {Boolean} True, if the rule is by count\n */\n isByCount() {\n return !!(this.count && !this.until);\n }\n\n /**\n * Adds a component (part) to the recurrence rule. This is not a component\n * in the sense of {@link ICAL.Component}, but a part of the recurrence\n * rule, i.e. BYMONTH.\n *\n * @param {String} aType The name of the component part\n * @param {Array|String} aValue The component value\n */\n addComponent(aType, aValue) {\n let ucname = aType.toUpperCase();\n if (ucname in this.parts) {\n this.parts[ucname].push(aValue);\n } else {\n this.parts[ucname] = [aValue];\n }\n }\n\n /**\n * Sets the component value for the given by-part.\n *\n * @param {String} aType The component part name\n * @param {Array} aValues The component values\n */\n setComponent(aType, aValues) {\n this.parts[aType.toUpperCase()] = aValues.slice();\n }\n\n /**\n * Gets (a copy) of the requested component value.\n *\n * @param {String} aType The component part name\n * @return {Array} The component part value\n */\n getComponent(aType) {\n let ucname = aType.toUpperCase();\n return (ucname in this.parts ? this.parts[ucname].slice() : []);\n }\n\n /**\n * Retrieves the next occurrence after the given recurrence id. See the\n * guide on {@tutorial terminology} for more details.\n *\n * NOTE: Currently, this method iterates all occurrences from the start\n * date. It should not be called in a loop for performance reasons. If you\n * would like to get more than one occurrence, you can iterate the\n * occurrences manually, see the example on the\n * {@link ICAL.Recur#iterator iterator} method.\n *\n * @param {Time} aStartTime The start of the event series\n * @param {Time} aRecurrenceId The date of the last occurrence\n * @return {Time} The next occurrence after\n */\n getNextOccurrence(aStartTime, aRecurrenceId) {\n let iter = this.iterator(aStartTime);\n let next;\n\n do {\n next = iter.next();\n } while (next && next.compare(aRecurrenceId) <= 0);\n\n if (next && aRecurrenceId.zone) {\n next.zone = aRecurrenceId.zone;\n }\n\n return next;\n }\n\n /**\n * Sets up the current instance using members from the passed data object.\n *\n * @param {Object} data An object with members of the recurrence\n * @param {frequencyValues=} data.freq The frequency value\n * @param {Number=} data.interval The INTERVAL value\n * @param {weekDay=} data.wkst The week start value\n * @param {Time=} data.until The end of the recurrence set\n * @param {Number=} data.count The number of occurrences\n * @param {Array.=} data.bysecond The seconds for the BYSECOND part\n * @param {Array.=} data.byminute The minutes for the BYMINUTE part\n * @param {Array.=} data.byhour The hours for the BYHOUR part\n * @param {Array.=} data.byday The BYDAY values\n * @param {Array.=} data.bymonthday The days for the BYMONTHDAY part\n * @param {Array.=} data.byyearday The days for the BYYEARDAY part\n * @param {Array.=} data.byweekno The weeks for the BYWEEKNO part\n * @param {Array.=} data.bymonth The month for the BYMONTH part\n * @param {Array.=} data.bysetpos The positionals for the BYSETPOS part\n */\n fromData(data) {\n for (let key in data) {\n let uckey = key.toUpperCase();\n\n if (uckey in partDesign) {\n if (Array.isArray(data[key])) {\n this.parts[uckey] = data[key];\n } else {\n this.parts[uckey] = [data[key]];\n }\n } else {\n this[key] = data[key];\n }\n }\n\n if (this.interval && typeof this.interval != \"number\") {\n optionDesign.INTERVAL(this.interval, this);\n }\n\n if (this.wkst && typeof this.wkst != \"number\") {\n this.wkst = Recur.icalDayToNumericDay(this.wkst);\n }\n\n if (this.until && !(this.until instanceof Time)) {\n this.until = Time.fromString(this.until);\n }\n }\n\n /**\n * The jCal representation of this recurrence type.\n * @return {Object}\n */\n toJSON() {\n let res = Object.create(null);\n res.freq = this.freq;\n\n if (this.count) {\n res.count = this.count;\n }\n\n if (this.interval > 1) {\n res.interval = this.interval;\n }\n\n for (let [k, kparts] of Object.entries(this.parts)) {\n if (Array.isArray(kparts) && kparts.length == 1) {\n res[k.toLowerCase()] = kparts[0];\n } else {\n res[k.toLowerCase()] = clone(kparts);\n }\n }\n\n if (this.until) {\n res.until = this.until.toString();\n }\n if ('wkst' in this && this.wkst !== Time.DEFAULT_WEEK_START) {\n res.wkst = Recur.numericDayToIcalDay(this.wkst);\n }\n return res;\n }\n\n /**\n * The string representation of this recurrence rule.\n * @return {String}\n */\n toString() {\n // TODO retain order\n let str = \"FREQ=\" + this.freq;\n if (this.count) {\n str += \";COUNT=\" + this.count;\n }\n if (this.interval > 1) {\n str += \";INTERVAL=\" + this.interval;\n }\n for (let [k, v] of Object.entries(this.parts)) {\n str += \";\" + k + \"=\" + v;\n }\n if (this.until) {\n str += ';UNTIL=' + this.until.toICALString();\n }\n if ('wkst' in this && this.wkst !== Time.DEFAULT_WEEK_START) {\n str += ';WKST=' + Recur.numericDayToIcalDay(this.wkst);\n }\n return str;\n }\n}\n\nfunction parseNumericValue(type, min, max, value) {\n let result = value;\n\n if (value[0] === '+') {\n result = value.slice(1);\n }\n\n result = strictParseInt(result);\n\n if (min !== undefined && value < min) {\n throw new Error(\n type + ': invalid value \"' + value + '\" must be > ' + min\n );\n }\n\n if (max !== undefined && value > max) {\n throw new Error(\n type + ': invalid value \"' + value + '\" must be < ' + min\n );\n }\n\n return result;\n}\n\nconst optionDesign = {\n FREQ: function(value, dict, fmtIcal) {\n // yes this is actually equal or faster then regex.\n // upside here is we can enumerate the valid values.\n if (ALLOWED_FREQ.indexOf(value) !== -1) {\n dict.freq = value;\n } else {\n throw new Error(\n 'invalid frequency \"' + value + '\" expected: \"' +\n ALLOWED_FREQ.join(', ') + '\"'\n );\n }\n },\n\n COUNT: function(value, dict, fmtIcal) {\n dict.count = strictParseInt(value);\n },\n\n INTERVAL: function(value, dict, fmtIcal) {\n dict.interval = strictParseInt(value);\n if (dict.interval < 1) {\n // 0 or negative values are not allowed, some engines seem to generate\n // it though. Assume 1 instead.\n dict.interval = 1;\n }\n },\n\n UNTIL: function(value, dict, fmtIcal) {\n if (value.length > 10) {\n dict.until = design$1.icalendar.value['date-time'].fromICAL(value);\n } else {\n dict.until = design$1.icalendar.value.date.fromICAL(value);\n }\n if (!fmtIcal) {\n dict.until = Time.fromString(dict.until);\n }\n },\n\n WKST: function(value, dict, fmtIcal) {\n if (VALID_DAY_NAMES.test(value)) {\n dict.wkst = Recur.icalDayToNumericDay(value);\n } else {\n throw new Error('invalid WKST value \"' + value + '\"');\n }\n }\n};\n\nconst partDesign = {\n BYSECOND: parseNumericValue.bind(undefined, 'BYSECOND', 0, 60),\n BYMINUTE: parseNumericValue.bind(undefined, 'BYMINUTE', 0, 59),\n BYHOUR: parseNumericValue.bind(undefined, 'BYHOUR', 0, 23),\n BYDAY: function(value) {\n if (VALID_BYDAY_PART.test(value)) {\n return value;\n } else {\n throw new Error('invalid BYDAY value \"' + value + '\"');\n }\n },\n BYMONTHDAY: parseNumericValue.bind(undefined, 'BYMONTHDAY', -31, 31),\n BYYEARDAY: parseNumericValue.bind(undefined, 'BYYEARDAY', -366, 366),\n BYWEEKNO: parseNumericValue.bind(undefined, 'BYWEEKNO', -53, 53),\n BYMONTH: parseNumericValue.bind(undefined, 'BYMONTH', 1, 12),\n BYSETPOS: parseNumericValue.bind(undefined, 'BYSETPOS', -366, 366)\n};\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n * @ignore\n * @typedef {import(\"./types.js\").jCalComponent} jCalComponent\n * Imports the 'occurrenceDetails' type from the \"types.js\" module\n */\n\n/**\n * This class represents the \"period\" value type, with various calculation and manipulation methods.\n *\n * @memberof ICAL\n */\nclass Period {\n /**\n * Creates a new {@link ICAL.Period} instance from the passed string.\n *\n * @param {String} str The string to parse\n * @param {Property} prop The property this period will be on\n * @return {Period} The created period instance\n */\n static fromString(str, prop) {\n let parts = str.split('/');\n\n if (parts.length !== 2) {\n throw new Error(\n 'Invalid string value: \"' + str + '\" must contain a \"/\" char.'\n );\n }\n\n let options = {\n start: Time.fromDateTimeString(parts[0], prop)\n };\n\n let end = parts[1];\n\n if (Duration.isValueString(end)) {\n options.duration = Duration.fromString(end);\n } else {\n options.end = Time.fromDateTimeString(end, prop);\n }\n\n return new Period(options);\n }\n\n /**\n * Creates a new {@link ICAL.Period} instance from the given data object.\n * The passed data object cannot contain both and end date and a duration.\n *\n * @param {Object} aData An object with members of the period\n * @param {Time=} aData.start The start of the period\n * @param {Time=} aData.end The end of the period\n * @param {Duration=} aData.duration The duration of the period\n * @return {Period} The period instance\n */\n static fromData(aData) {\n return new Period(aData);\n }\n\n /**\n * Returns a new period instance from the given jCal data array. The first\n * member is always the start date string, the second member is either a\n * duration or end date string.\n *\n * @param {jCalComponent} aData The jCal data array\n * @param {Property} aProp The property this jCal data is on\n * @param {Boolean} aLenient If true, data value can be both date and date-time\n * @return {Period} The period instance\n */\n static fromJSON(aData, aProp, aLenient) {\n function fromDateOrDateTimeString(aValue, dateProp) {\n if (aLenient) {\n return Time.fromString(aValue, dateProp);\n } else {\n return Time.fromDateTimeString(aValue, dateProp);\n }\n }\n\n if (Duration.isValueString(aData[1])) {\n return Period.fromData({\n start: fromDateOrDateTimeString(aData[0], aProp),\n duration: Duration.fromString(aData[1])\n });\n } else {\n return Period.fromData({\n start: fromDateOrDateTimeString(aData[0], aProp),\n end: fromDateOrDateTimeString(aData[1], aProp)\n });\n }\n }\n\n /**\n * Creates a new ICAL.Period instance. The passed data object cannot contain both and end date and\n * a duration.\n *\n * @param {Object} aData An object with members of the period\n * @param {Time=} aData.start The start of the period\n * @param {Time=} aData.end The end of the period\n * @param {Duration=} aData.duration The duration of the period\n */\n constructor(aData) {\n this.wrappedJSObject = this;\n\n if (aData && 'start' in aData) {\n if (aData.start && !(aData.start instanceof Time)) {\n throw new TypeError('.start must be an instance of ICAL.Time');\n }\n this.start = aData.start;\n }\n\n if (aData && aData.end && aData.duration) {\n throw new Error('cannot accept both end and duration');\n }\n\n if (aData && 'end' in aData) {\n if (aData.end && !(aData.end instanceof Time)) {\n throw new TypeError('.end must be an instance of ICAL.Time');\n }\n this.end = aData.end;\n }\n\n if (aData && 'duration' in aData) {\n if (aData.duration && !(aData.duration instanceof Duration)) {\n throw new TypeError('.duration must be an instance of ICAL.Duration');\n }\n this.duration = aData.duration;\n }\n }\n\n\n /**\n * The start of the period\n * @type {Time}\n */\n start = null;\n\n /**\n * The end of the period\n * @type {Time}\n */\n end = null;\n\n /**\n * The duration of the period\n * @type {Duration}\n */\n duration = null;\n\n /**\n * The class identifier.\n * @constant\n * @type {String}\n * @default \"icalperiod\"\n */\n icalclass = \"icalperiod\";\n\n /**\n * The type name, to be used in the jCal object.\n * @constant\n * @type {String}\n * @default \"period\"\n */\n icaltype = \"period\";\n\n /**\n * Returns a clone of the duration object.\n *\n * @return {Period} The cloned object\n */\n clone() {\n return Period.fromData({\n start: this.start ? this.start.clone() : null,\n end: this.end ? this.end.clone() : null,\n duration: this.duration ? this.duration.clone() : null\n });\n }\n\n /**\n * Calculates the duration of the period, either directly or by subtracting\n * start from end date.\n *\n * @return {Duration} The calculated duration\n */\n getDuration() {\n if (this.duration) {\n return this.duration;\n } else {\n return this.end.subtractDate(this.start);\n }\n }\n\n /**\n * Calculates the end date of the period, either directly or by adding\n * duration to start date.\n *\n * @return {Time} The calculated end date\n */\n getEnd() {\n if (this.end) {\n return this.end;\n } else {\n let end = this.start.clone();\n end.addDuration(this.duration);\n return end;\n }\n }\n\n /**\n * The string representation of this period.\n * @return {String}\n */\n toString() {\n return this.start + \"/\" + (this.end || this.duration);\n }\n\n /**\n * The jCal representation of this period type.\n * @return {Object}\n */\n toJSON() {\n return [this.start.toString(), (this.end || this.duration).toString()];\n }\n\n /**\n * The iCalendar string representation of this period.\n * @return {String}\n */\n toICALString() {\n return this.start.toICALString() + \"/\" +\n (this.end || this.duration).toICALString();\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n * @ignore\n * @typedef {import(\"./types.js\").designSet} designSet\n * Imports the 'designSet' type from the \"types.js\" module\n */\n\n/** @module ICAL.design */\n\nconst FROM_ICAL_NEWLINE = /\\\\\\\\|\\\\;|\\\\,|\\\\[Nn]/g;\nconst TO_ICAL_NEWLINE = /\\\\|;|,|\\n/g;\nconst FROM_VCARD_NEWLINE = /\\\\\\\\|\\\\,|\\\\[Nn]/g;\nconst TO_VCARD_NEWLINE = /\\\\|,|\\n/g;\n\nfunction createTextType(fromNewline, toNewline) {\n let result = {\n matches: /.*/,\n\n fromICAL: function(aValue, structuredEscape) {\n return replaceNewline(aValue, fromNewline, structuredEscape);\n },\n\n toICAL: function(aValue, structuredEscape) {\n let regEx = toNewline;\n if (structuredEscape)\n regEx = new RegExp(regEx.source + '|' + structuredEscape, regEx.flags);\n return aValue.replace(regEx, function(str) {\n switch (str) {\n case \"\\\\\":\n return \"\\\\\\\\\";\n case \";\":\n return \"\\\\;\";\n case \",\":\n return \"\\\\,\";\n case \"\\n\":\n return \"\\\\n\";\n /* c8 ignore next 2 */\n default:\n return str;\n }\n });\n }\n };\n return result;\n}\n\n// default types used multiple times\nconst DEFAULT_TYPE_TEXT = { defaultType: \"text\" };\nconst DEFAULT_TYPE_TEXT_MULTI = { defaultType: \"text\", multiValue: \",\" };\nconst DEFAULT_TYPE_TEXT_STRUCTURED = { defaultType: \"text\", structuredValue: \";\" };\nconst DEFAULT_TYPE_INTEGER = { defaultType: \"integer\" };\nconst DEFAULT_TYPE_DATETIME_DATE = { defaultType: \"date-time\", allowedTypes: [\"date-time\", \"date\"] };\nconst DEFAULT_TYPE_DATETIME = { defaultType: \"date-time\" };\nconst DEFAULT_TYPE_URI = { defaultType: \"uri\" };\nconst DEFAULT_TYPE_UTCOFFSET = { defaultType: \"utc-offset\" };\nconst DEFAULT_TYPE_RECUR = { defaultType: \"recur\" };\nconst DEFAULT_TYPE_DATE_ANDOR_TIME = { defaultType: \"date-and-or-time\", allowedTypes: [\"date-time\", \"date\", \"text\"] };\n\nfunction replaceNewlineReplace(string) {\n switch (string) {\n case \"\\\\\\\\\":\n return \"\\\\\";\n case \"\\\\;\":\n return \";\";\n case \"\\\\,\":\n return \",\";\n case \"\\\\n\":\n case \"\\\\N\":\n return \"\\n\";\n /* c8 ignore next 2 */\n default:\n return string;\n }\n}\n\nfunction replaceNewline(value, newline, structuredEscape) {\n // avoid regex when possible.\n if (value.indexOf('\\\\') === -1) {\n return value;\n }\n if (structuredEscape)\n newline = new RegExp(newline.source + '|\\\\\\\\' + structuredEscape, newline.flags);\n return value.replace(newline, replaceNewlineReplace);\n}\n\nlet commonProperties = {\n \"categories\": DEFAULT_TYPE_TEXT_MULTI,\n \"url\": DEFAULT_TYPE_URI,\n \"version\": DEFAULT_TYPE_TEXT,\n \"uid\": DEFAULT_TYPE_TEXT\n};\n\nlet commonValues = {\n \"boolean\": {\n values: [\"TRUE\", \"FALSE\"],\n\n fromICAL: function(aValue) {\n switch (aValue) {\n case 'TRUE':\n return true;\n case 'FALSE':\n return false;\n default:\n //TODO: parser warning\n return false;\n }\n },\n\n toICAL: function(aValue) {\n if (aValue) {\n return 'TRUE';\n }\n return 'FALSE';\n }\n\n },\n float: {\n matches: /^[+-]?\\d+\\.\\d+$/,\n\n fromICAL: function(aValue) {\n let parsed = parseFloat(aValue);\n if (isStrictlyNaN(parsed)) {\n // TODO: parser warning\n return 0.0;\n }\n return parsed;\n },\n\n toICAL: function(aValue) {\n return String(aValue);\n }\n },\n integer: {\n fromICAL: function(aValue) {\n let parsed = parseInt(aValue);\n if (isStrictlyNaN(parsed)) {\n return 0;\n }\n return parsed;\n },\n\n toICAL: function(aValue) {\n return String(aValue);\n }\n },\n \"utc-offset\": {\n toICAL: function(aValue) {\n if (aValue.length < 7) {\n // no seconds\n // -0500\n return aValue.slice(0, 3) +\n aValue.slice(4, 6);\n } else {\n // seconds\n // -050000\n return aValue.slice(0, 3) +\n aValue.slice(4, 6) +\n aValue.slice(7, 9);\n }\n },\n\n fromICAL: function(aValue) {\n if (aValue.length < 6) {\n // no seconds\n // -05:00\n return aValue.slice(0, 3) + ':' +\n aValue.slice(3, 5);\n } else {\n // seconds\n // -05:00:00\n return aValue.slice(0, 3) + ':' +\n aValue.slice(3, 5) + ':' +\n aValue.slice(5, 7);\n }\n },\n\n decorate: function(aValue) {\n return UtcOffset.fromString(aValue);\n },\n\n undecorate: function(aValue) {\n return aValue.toString();\n }\n }\n};\n\nlet icalParams = {\n // Although the syntax is DQUOTE uri DQUOTE, I don't think we should\n // enforce anything aside from it being a valid content line.\n //\n // At least some params require - if multi values are used - DQUOTEs\n // for each of its values - e.g. delegated-from=\"uri1\",\"uri2\"\n // To indicate this, I introduced the new k/v pair\n // multiValueSeparateDQuote: true\n //\n // \"ALTREP\": { ... },\n\n // CN just wants a param-value\n // \"CN\": { ... }\n\n \"cutype\": {\n values: [\"INDIVIDUAL\", \"GROUP\", \"RESOURCE\", \"ROOM\", \"UNKNOWN\"],\n allowXName: true,\n allowIanaToken: true\n },\n\n \"delegated-from\": {\n valueType: \"cal-address\",\n multiValue: \",\",\n multiValueSeparateDQuote: true\n },\n \"delegated-to\": {\n valueType: \"cal-address\",\n multiValue: \",\",\n multiValueSeparateDQuote: true\n },\n // \"DIR\": { ... }, // See ALTREP\n \"encoding\": {\n values: [\"8BIT\", \"BASE64\"]\n },\n // \"FMTTYPE\": { ... }, // See ALTREP\n \"fbtype\": {\n values: [\"FREE\", \"BUSY\", \"BUSY-UNAVAILABLE\", \"BUSY-TENTATIVE\"],\n allowXName: true,\n allowIanaToken: true\n },\n // \"LANGUAGE\": { ... }, // See ALTREP\n \"member\": {\n valueType: \"cal-address\",\n multiValue: \",\",\n multiValueSeparateDQuote: true\n },\n \"partstat\": {\n // TODO These values are actually different per-component\n values: [\"NEEDS-ACTION\", \"ACCEPTED\", \"DECLINED\", \"TENTATIVE\",\n \"DELEGATED\", \"COMPLETED\", \"IN-PROCESS\"],\n allowXName: true,\n allowIanaToken: true\n },\n \"range\": {\n values: [\"THISANDFUTURE\"]\n },\n \"related\": {\n values: [\"START\", \"END\"]\n },\n \"reltype\": {\n values: [\"PARENT\", \"CHILD\", \"SIBLING\"],\n allowXName: true,\n allowIanaToken: true\n },\n \"role\": {\n values: [\"REQ-PARTICIPANT\", \"CHAIR\",\n \"OPT-PARTICIPANT\", \"NON-PARTICIPANT\"],\n allowXName: true,\n allowIanaToken: true\n },\n \"rsvp\": {\n values: [\"TRUE\", \"FALSE\"]\n },\n \"sent-by\": {\n valueType: \"cal-address\"\n },\n \"tzid\": {\n matches: /^\\//\n },\n \"value\": {\n // since the value here is a 'type' lowercase is used.\n values: [\"binary\", \"boolean\", \"cal-address\", \"date\", \"date-time\",\n \"duration\", \"float\", \"integer\", \"period\", \"recur\", \"text\",\n \"time\", \"uri\", \"utc-offset\"],\n allowXName: true,\n allowIanaToken: true\n }\n};\n\n// When adding a value here, be sure to add it to the parameter types!\nconst icalValues = extend(commonValues, {\n text: createTextType(FROM_ICAL_NEWLINE, TO_ICAL_NEWLINE),\n\n uri: {\n // TODO\n /* ... */\n },\n\n \"binary\": {\n decorate: function(aString) {\n return Binary.fromString(aString);\n },\n\n undecorate: function(aBinary) {\n return aBinary.toString();\n }\n },\n \"cal-address\": {\n // needs to be an uri\n },\n \"date\": {\n decorate: function(aValue, aProp) {\n if (design.strict) {\n return Time.fromDateString(aValue, aProp);\n } else {\n return Time.fromString(aValue, aProp);\n }\n },\n\n /**\n * undecorates a time object.\n */\n undecorate: function(aValue) {\n return aValue.toString();\n },\n\n fromICAL: function(aValue) {\n // from: 20120901\n // to: 2012-09-01\n if (!design.strict && aValue.length >= 15) {\n // This is probably a date-time, e.g. 20120901T130000Z\n return icalValues[\"date-time\"].fromICAL(aValue);\n } else {\n return aValue.slice(0, 4) + '-' +\n aValue.slice(4, 6) + '-' +\n aValue.slice(6, 8);\n }\n },\n\n toICAL: function(aValue) {\n // from: 2012-09-01\n // to: 20120901\n let len = aValue.length;\n\n if (len == 10) {\n return aValue.slice(0, 4) +\n aValue.slice(5, 7) +\n aValue.slice(8, 10);\n } else if (len >= 19) {\n return icalValues[\"date-time\"].toICAL(aValue);\n } else {\n //TODO: serialize warning?\n return aValue;\n }\n\n }\n },\n \"date-time\": {\n fromICAL: function(aValue) {\n // from: 20120901T130000\n // to: 2012-09-01T13:00:00\n if (!design.strict && aValue.length == 8) {\n // This is probably a date, e.g. 20120901\n return icalValues.date.fromICAL(aValue);\n } else {\n let result = aValue.slice(0, 4) + '-' +\n aValue.slice(4, 6) + '-' +\n aValue.slice(6, 8) + 'T' +\n aValue.slice(9, 11) + ':' +\n aValue.slice(11, 13) + ':' +\n aValue.slice(13, 15);\n\n if (aValue[15] && aValue[15] === 'Z') {\n result += 'Z';\n }\n\n return result;\n }\n },\n\n toICAL: function(aValue) {\n // from: 2012-09-01T13:00:00\n // to: 20120901T130000\n let len = aValue.length;\n\n if (len == 10 && !design.strict) {\n return icalValues.date.toICAL(aValue);\n } else if (len >= 19) {\n let result = aValue.slice(0, 4) +\n aValue.slice(5, 7) +\n // grab the (DDTHH) segment\n aValue.slice(8, 13) +\n // MM\n aValue.slice(14, 16) +\n // SS\n aValue.slice(17, 19);\n\n if (aValue[19] && aValue[19] === 'Z') {\n result += 'Z';\n }\n return result;\n } else {\n // TODO: error\n return aValue;\n }\n },\n\n decorate: function(aValue, aProp) {\n if (design.strict) {\n return Time.fromDateTimeString(aValue, aProp);\n } else {\n return Time.fromString(aValue, aProp);\n }\n },\n\n undecorate: function(aValue) {\n return aValue.toString();\n }\n },\n duration: {\n decorate: function(aValue) {\n return Duration.fromString(aValue);\n },\n undecorate: function(aValue) {\n return aValue.toString();\n }\n },\n period: {\n fromICAL: function(string) {\n let parts = string.split('/');\n parts[0] = icalValues['date-time'].fromICAL(parts[0]);\n\n if (!Duration.isValueString(parts[1])) {\n parts[1] = icalValues['date-time'].fromICAL(parts[1]);\n }\n\n return parts;\n },\n\n toICAL: function(parts) {\n parts = parts.slice();\n if (!design.strict && parts[0].length == 10) {\n parts[0] = icalValues.date.toICAL(parts[0]);\n } else {\n parts[0] = icalValues['date-time'].toICAL(parts[0]);\n }\n\n if (!Duration.isValueString(parts[1])) {\n if (!design.strict && parts[1].length == 10) {\n parts[1] = icalValues.date.toICAL(parts[1]);\n } else {\n parts[1] = icalValues['date-time'].toICAL(parts[1]);\n }\n }\n\n return parts.join(\"/\");\n },\n\n decorate: function(aValue, aProp) {\n return Period.fromJSON(aValue, aProp, !design.strict);\n },\n\n undecorate: function(aValue) {\n return aValue.toJSON();\n }\n },\n recur: {\n fromICAL: function(string) {\n return Recur._stringToData(string, true);\n },\n\n toICAL: function(data) {\n let str = \"\";\n for (let [k, val] of Object.entries(data)) {\n if (k == \"until\") {\n if (val.length > 10) {\n val = icalValues['date-time'].toICAL(val);\n } else {\n val = icalValues.date.toICAL(val);\n }\n } else if (k == \"wkst\") {\n if (typeof val === 'number') {\n val = Recur.numericDayToIcalDay(val);\n }\n } else if (Array.isArray(val)) {\n val = val.join(\",\");\n }\n str += k.toUpperCase() + \"=\" + val + \";\";\n }\n return str.slice(0, Math.max(0, str.length - 1));\n },\n\n decorate: function decorate(aValue) {\n return Recur.fromData(aValue);\n },\n\n undecorate: function(aRecur) {\n return aRecur.toJSON();\n }\n },\n\n time: {\n fromICAL: function(aValue) {\n // from: MMHHSS(Z)?\n // to: HH:MM:SS(Z)?\n if (aValue.length < 6) {\n // TODO: parser exception?\n return aValue;\n }\n\n // HH::MM::SSZ?\n let result = aValue.slice(0, 2) + ':' +\n aValue.slice(2, 4) + ':' +\n aValue.slice(4, 6);\n\n if (aValue[6] === 'Z') {\n result += 'Z';\n }\n\n return result;\n },\n\n toICAL: function(aValue) {\n // from: HH:MM:SS(Z)?\n // to: MMHHSS(Z)?\n if (aValue.length < 8) {\n //TODO: error\n return aValue;\n }\n\n let result = aValue.slice(0, 2) +\n aValue.slice(3, 5) +\n aValue.slice(6, 8);\n\n if (aValue[8] === 'Z') {\n result += 'Z';\n }\n\n return result;\n }\n }\n});\n\nlet icalProperties = extend(commonProperties, {\n\n \"action\": DEFAULT_TYPE_TEXT,\n \"attach\": { defaultType: \"uri\" },\n \"attendee\": { defaultType: \"cal-address\" },\n \"calscale\": DEFAULT_TYPE_TEXT,\n \"class\": DEFAULT_TYPE_TEXT,\n \"comment\": DEFAULT_TYPE_TEXT,\n \"completed\": DEFAULT_TYPE_DATETIME,\n \"contact\": DEFAULT_TYPE_TEXT,\n \"created\": DEFAULT_TYPE_DATETIME,\n \"description\": DEFAULT_TYPE_TEXT,\n \"dtend\": DEFAULT_TYPE_DATETIME_DATE,\n \"dtstamp\": DEFAULT_TYPE_DATETIME,\n \"dtstart\": DEFAULT_TYPE_DATETIME_DATE,\n \"due\": DEFAULT_TYPE_DATETIME_DATE,\n \"duration\": { defaultType: \"duration\" },\n \"exdate\": {\n defaultType: \"date-time\",\n allowedTypes: [\"date-time\", \"date\"],\n multiValue: ','\n },\n \"exrule\": DEFAULT_TYPE_RECUR,\n \"freebusy\": { defaultType: \"period\", multiValue: \",\" },\n \"geo\": { defaultType: \"float\", structuredValue: \";\" },\n \"last-modified\": DEFAULT_TYPE_DATETIME,\n \"location\": DEFAULT_TYPE_TEXT,\n \"method\": DEFAULT_TYPE_TEXT,\n \"organizer\": { defaultType: \"cal-address\" },\n \"percent-complete\": DEFAULT_TYPE_INTEGER,\n \"priority\": DEFAULT_TYPE_INTEGER,\n \"prodid\": DEFAULT_TYPE_TEXT,\n \"related-to\": DEFAULT_TYPE_TEXT,\n \"repeat\": DEFAULT_TYPE_INTEGER,\n \"rdate\": {\n defaultType: \"date-time\",\n allowedTypes: [\"date-time\", \"date\", \"period\"],\n multiValue: ',',\n detectType: function(string) {\n if (string.indexOf('/') !== -1) {\n return 'period';\n }\n return (string.indexOf('T') === -1) ? 'date' : 'date-time';\n }\n },\n \"recurrence-id\": DEFAULT_TYPE_DATETIME_DATE,\n \"resources\": DEFAULT_TYPE_TEXT_MULTI,\n \"request-status\": DEFAULT_TYPE_TEXT_STRUCTURED,\n \"rrule\": DEFAULT_TYPE_RECUR,\n \"sequence\": DEFAULT_TYPE_INTEGER,\n \"status\": DEFAULT_TYPE_TEXT,\n \"summary\": DEFAULT_TYPE_TEXT,\n \"transp\": DEFAULT_TYPE_TEXT,\n \"trigger\": { defaultType: \"duration\", allowedTypes: [\"duration\", \"date-time\"] },\n \"tzoffsetfrom\": DEFAULT_TYPE_UTCOFFSET,\n \"tzoffsetto\": DEFAULT_TYPE_UTCOFFSET,\n \"tzurl\": DEFAULT_TYPE_URI,\n \"tzid\": DEFAULT_TYPE_TEXT,\n \"tzname\": DEFAULT_TYPE_TEXT\n});\n\n// When adding a value here, be sure to add it to the parameter types!\nconst vcardValues = extend(commonValues, {\n text: createTextType(FROM_VCARD_NEWLINE, TO_VCARD_NEWLINE),\n uri: createTextType(FROM_VCARD_NEWLINE, TO_VCARD_NEWLINE),\n\n date: {\n decorate: function(aValue) {\n return VCardTime.fromDateAndOrTimeString(aValue, \"date\");\n },\n undecorate: function(aValue) {\n return aValue.toString();\n },\n fromICAL: function(aValue) {\n if (aValue.length == 8) {\n return icalValues.date.fromICAL(aValue);\n } else if (aValue[0] == '-' && aValue.length == 6) {\n return aValue.slice(0, 4) + '-' + aValue.slice(4);\n } else {\n return aValue;\n }\n },\n toICAL: function(aValue) {\n if (aValue.length == 10) {\n return icalValues.date.toICAL(aValue);\n } else if (aValue[0] == '-' && aValue.length == 7) {\n return aValue.slice(0, 4) + aValue.slice(5);\n } else {\n return aValue;\n }\n }\n },\n\n time: {\n decorate: function(aValue) {\n return VCardTime.fromDateAndOrTimeString(\"T\" + aValue, \"time\");\n },\n undecorate: function(aValue) {\n return aValue.toString();\n },\n fromICAL: function(aValue) {\n let splitzone = vcardValues.time._splitZone(aValue, true);\n let zone = splitzone[0], value = splitzone[1];\n\n //console.log(\"SPLIT: \",splitzone);\n\n if (value.length == 6) {\n value = value.slice(0, 2) + ':' +\n value.slice(2, 4) + ':' +\n value.slice(4, 6);\n } else if (value.length == 4 && value[0] != '-') {\n value = value.slice(0, 2) + ':' + value.slice(2, 4);\n } else if (value.length == 5) {\n value = value.slice(0, 3) + ':' + value.slice(3, 5);\n }\n\n if (zone.length == 5 && (zone[0] == '-' || zone[0] == '+')) {\n zone = zone.slice(0, 3) + ':' + zone.slice(3);\n }\n\n return value + zone;\n },\n\n toICAL: function(aValue) {\n let splitzone = vcardValues.time._splitZone(aValue);\n let zone = splitzone[0], value = splitzone[1];\n\n if (value.length == 8) {\n value = value.slice(0, 2) +\n value.slice(3, 5) +\n value.slice(6, 8);\n } else if (value.length == 5 && value[0] != '-') {\n value = value.slice(0, 2) + value.slice(3, 5);\n } else if (value.length == 6) {\n value = value.slice(0, 3) + value.slice(4, 6);\n }\n\n if (zone.length == 6 && (zone[0] == '-' || zone[0] == '+')) {\n zone = zone.slice(0, 3) + zone.slice(4);\n }\n\n return value + zone;\n },\n\n _splitZone: function(aValue, isFromIcal) {\n let lastChar = aValue.length - 1;\n let signChar = aValue.length - (isFromIcal ? 5 : 6);\n let sign = aValue[signChar];\n let zone, value;\n\n if (aValue[lastChar] == 'Z') {\n zone = aValue[lastChar];\n value = aValue.slice(0, Math.max(0, lastChar));\n } else if (aValue.length > 6 && (sign == '-' || sign == '+')) {\n zone = aValue.slice(signChar);\n value = aValue.slice(0, Math.max(0, signChar));\n } else {\n zone = \"\";\n value = aValue;\n }\n\n return [zone, value];\n }\n },\n\n \"date-time\": {\n decorate: function(aValue) {\n return VCardTime.fromDateAndOrTimeString(aValue, \"date-time\");\n },\n\n undecorate: function(aValue) {\n return aValue.toString();\n },\n\n fromICAL: function(aValue) {\n return vcardValues['date-and-or-time'].fromICAL(aValue);\n },\n\n toICAL: function(aValue) {\n return vcardValues['date-and-or-time'].toICAL(aValue);\n }\n },\n\n \"date-and-or-time\": {\n decorate: function(aValue) {\n return VCardTime.fromDateAndOrTimeString(aValue, \"date-and-or-time\");\n },\n\n undecorate: function(aValue) {\n return aValue.toString();\n },\n\n fromICAL: function(aValue) {\n let parts = aValue.split('T');\n return (parts[0] ? vcardValues.date.fromICAL(parts[0]) : '') +\n (parts[1] ? 'T' + vcardValues.time.fromICAL(parts[1]) : '');\n },\n\n toICAL: function(aValue) {\n let parts = aValue.split('T');\n return vcardValues.date.toICAL(parts[0]) +\n (parts[1] ? 'T' + vcardValues.time.toICAL(parts[1]) : '');\n\n }\n },\n timestamp: icalValues['date-time'],\n \"language-tag\": {\n matches: /^[a-zA-Z0-9-]+$/ // Could go with a more strict regex here\n },\n \"phone-number\": {\n fromICAL: function(aValue) {\n return Array.from(aValue).filter(function(c) {\n return c === '\\\\' ? undefined : c;\n }).join('');\n },\n toICAL: function(aValue) {\n return Array.from(aValue).map(function(c) {\n return c === ',' || c === \";\" ? '\\\\' + c : c;\n }).join('');\n }\n }\n});\n\nlet vcardParams = {\n \"type\": {\n valueType: \"text\",\n multiValue: \",\"\n },\n \"value\": {\n // since the value here is a 'type' lowercase is used.\n values: [\"text\", \"uri\", \"date\", \"time\", \"date-time\", \"date-and-or-time\",\n \"timestamp\", \"boolean\", \"integer\", \"float\", \"utc-offset\",\n \"language-tag\"],\n allowXName: true,\n allowIanaToken: true\n }\n};\n\nlet vcardProperties = extend(commonProperties, {\n \"adr\": { defaultType: \"text\", structuredValue: \";\", multiValue: \",\" },\n \"anniversary\": DEFAULT_TYPE_DATE_ANDOR_TIME,\n \"bday\": DEFAULT_TYPE_DATE_ANDOR_TIME,\n \"caladruri\": DEFAULT_TYPE_URI,\n \"caluri\": DEFAULT_TYPE_URI,\n \"clientpidmap\": DEFAULT_TYPE_TEXT_STRUCTURED,\n \"email\": DEFAULT_TYPE_TEXT,\n \"fburl\": DEFAULT_TYPE_URI,\n \"fn\": DEFAULT_TYPE_TEXT,\n \"gender\": DEFAULT_TYPE_TEXT_STRUCTURED,\n \"geo\": DEFAULT_TYPE_URI,\n \"impp\": DEFAULT_TYPE_URI,\n \"key\": DEFAULT_TYPE_URI,\n \"kind\": DEFAULT_TYPE_TEXT,\n \"lang\": { defaultType: \"language-tag\" },\n \"logo\": DEFAULT_TYPE_URI,\n \"member\": DEFAULT_TYPE_URI,\n \"n\": { defaultType: \"text\", structuredValue: \";\", multiValue: \",\" },\n \"nickname\": DEFAULT_TYPE_TEXT_MULTI,\n \"note\": DEFAULT_TYPE_TEXT,\n \"org\": { defaultType: \"text\", structuredValue: \";\" },\n \"photo\": DEFAULT_TYPE_URI,\n \"related\": DEFAULT_TYPE_URI,\n \"rev\": { defaultType: \"timestamp\" },\n \"role\": DEFAULT_TYPE_TEXT,\n \"sound\": DEFAULT_TYPE_URI,\n \"source\": DEFAULT_TYPE_URI,\n \"tel\": { defaultType: \"uri\", allowedTypes: [\"uri\", \"text\"] },\n \"title\": DEFAULT_TYPE_TEXT,\n \"tz\": { defaultType: \"text\", allowedTypes: [\"text\", \"utc-offset\", \"uri\"] },\n \"xml\": DEFAULT_TYPE_TEXT\n});\n\nlet vcard3Values = extend(commonValues, {\n binary: icalValues.binary,\n date: vcardValues.date,\n \"date-time\": vcardValues[\"date-time\"],\n \"phone-number\": vcardValues[\"phone-number\"],\n uri: icalValues.uri,\n text: icalValues.text,\n time: icalValues.time,\n vcard: icalValues.text,\n \"utc-offset\": {\n toICAL: function(aValue) {\n return aValue.slice(0, 7);\n },\n\n fromICAL: function(aValue) {\n return aValue.slice(0, 7);\n },\n\n decorate: function(aValue) {\n return UtcOffset.fromString(aValue);\n },\n\n undecorate: function(aValue) {\n return aValue.toString();\n }\n }\n});\n\nlet vcard3Params = {\n \"type\": {\n valueType: \"text\",\n multiValue: \",\"\n },\n \"value\": {\n // since the value here is a 'type' lowercase is used.\n values: [\"text\", \"uri\", \"date\", \"date-time\", \"phone-number\", \"time\",\n \"boolean\", \"integer\", \"float\", \"utc-offset\", \"vcard\", \"binary\"],\n allowXName: true,\n allowIanaToken: true\n }\n};\n\nlet vcard3Properties = extend(commonProperties, {\n fn: DEFAULT_TYPE_TEXT,\n n: { defaultType: \"text\", structuredValue: \";\", multiValue: \",\" },\n nickname: DEFAULT_TYPE_TEXT_MULTI,\n photo: { defaultType: \"binary\", allowedTypes: [\"binary\", \"uri\"] },\n bday: {\n defaultType: \"date-time\",\n allowedTypes: [\"date-time\", \"date\"],\n detectType: function(string) {\n return (string.indexOf('T') === -1) ? 'date' : 'date-time';\n }\n },\n\n adr: { defaultType: \"text\", structuredValue: \";\", multiValue: \",\" },\n label: DEFAULT_TYPE_TEXT,\n\n tel: { defaultType: \"phone-number\" },\n email: DEFAULT_TYPE_TEXT,\n mailer: DEFAULT_TYPE_TEXT,\n\n tz: { defaultType: \"utc-offset\", allowedTypes: [\"utc-offset\", \"text\"] },\n geo: { defaultType: \"float\", structuredValue: \";\" },\n\n title: DEFAULT_TYPE_TEXT,\n role: DEFAULT_TYPE_TEXT,\n logo: { defaultType: \"binary\", allowedTypes: [\"binary\", \"uri\"] },\n agent: { defaultType: \"vcard\", allowedTypes: [\"vcard\", \"text\", \"uri\"] },\n org: DEFAULT_TYPE_TEXT_STRUCTURED,\n\n note: DEFAULT_TYPE_TEXT_MULTI,\n prodid: DEFAULT_TYPE_TEXT,\n rev: {\n defaultType: \"date-time\",\n allowedTypes: [\"date-time\", \"date\"],\n detectType: function(string) {\n return (string.indexOf('T') === -1) ? 'date' : 'date-time';\n }\n },\n \"sort-string\": DEFAULT_TYPE_TEXT,\n sound: { defaultType: \"binary\", allowedTypes: [\"binary\", \"uri\"] },\n\n class: DEFAULT_TYPE_TEXT,\n key: { defaultType: \"binary\", allowedTypes: [\"binary\", \"text\"] }\n});\n\n/**\n * iCalendar design set\n * @type {designSet}\n */\nlet icalSet = {\n value: icalValues,\n param: icalParams,\n property: icalProperties,\n propertyGroups: false\n};\n\n/**\n * vCard 4.0 design set\n * @type {designSet}\n */\nlet vcardSet = {\n value: vcardValues,\n param: vcardParams,\n property: vcardProperties,\n propertyGroups: true\n};\n\n/**\n * vCard 3.0 design set\n * @type {designSet}\n */\nlet vcard3Set = {\n value: vcard3Values,\n param: vcard3Params,\n property: vcard3Properties,\n propertyGroups: true\n};\n\n/**\n * The design data, used by the parser to determine types for properties and\n * other metadata needed to produce correct jCard/jCal data.\n *\n * @alias ICAL.design\n * @exports module:ICAL.design\n */\nconst design = {\n /**\n * Can be set to false to make the parser more lenient.\n */\n strict: true,\n\n /**\n * The default set for new properties and components if none is specified.\n * @type {designSet}\n */\n defaultSet: icalSet,\n\n /**\n * The default type for unknown properties\n * @type {String}\n */\n defaultType: 'unknown',\n\n /**\n * Holds the design set for known top-level components\n *\n * @type {Object}\n * @property {designSet} vcard vCard VCARD\n * @property {designSet} vevent iCalendar VEVENT\n * @property {designSet} vtodo iCalendar VTODO\n * @property {designSet} vjournal iCalendar VJOURNAL\n * @property {designSet} valarm iCalendar VALARM\n * @property {designSet} vtimezone iCalendar VTIMEZONE\n * @property {designSet} daylight iCalendar DAYLIGHT\n * @property {designSet} standard iCalendar STANDARD\n *\n * @example\n * let propertyName = 'fn';\n * let componentDesign = ICAL.design.components.vcard;\n * let propertyDetails = componentDesign.property[propertyName];\n * if (propertyDetails.defaultType == 'text') {\n * // Yep, sure is...\n * }\n */\n components: {\n vcard: vcardSet,\n vcard3: vcard3Set,\n vevent: icalSet,\n vtodo: icalSet,\n vjournal: icalSet,\n valarm: icalSet,\n vtimezone: icalSet,\n daylight: icalSet,\n standard: icalSet\n },\n\n\n /**\n * The design set for iCalendar (rfc5545/rfc7265) components.\n * @type {designSet}\n */\n icalendar: icalSet,\n\n /**\n * The design set for vCard (rfc6350/rfc7095) components.\n * @type {designSet}\n */\n vcard: vcardSet,\n\n /**\n * The design set for vCard (rfc2425/rfc2426/rfc7095) components.\n * @type {designSet}\n */\n vcard3: vcard3Set,\n\n /**\n * Gets the design set for the given component name.\n *\n * @param {String} componentName The name of the component\n * @return {designSet} The design set for the component\n */\n getDesignSet: function(componentName) {\n let isInDesign = componentName && componentName in design.components;\n return isInDesign ? design.components[componentName] : design.defaultSet;\n }\n};\nvar design$1 = design;\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n *\n * @ignore\n * @typedef {import(\"./types.js\").designSet} designSet\n * Imports the 'designSet' type from the \"types.js\" module\n */\n\nconst LINE_ENDING = '\\r\\n';\nconst DEFAULT_VALUE_TYPE = 'unknown';\nconst RFC6868_REPLACE_MAP = { '\"': \"^'\", \"\\n\": \"^n\", \"^\": \"^^\" };\n\n/**\n * Convert a full jCal/jCard array into a iCalendar/vCard string.\n *\n * @function ICAL.stringify\n * @variation function\n * @param {Array} jCal The jCal/jCard document\n * @return {String} The stringified iCalendar/vCard document\n */\nfunction stringify(jCal) {\n if (typeof jCal[0] == \"string\") {\n // This is a single component\n jCal = [jCal];\n }\n\n let i = 0;\n let len = jCal.length;\n let result = '';\n\n for (; i < len; i++) {\n result += stringify.component(jCal[i]) + LINE_ENDING;\n }\n\n return result;\n}\n\n/**\n * Converts an jCal component array into a ICAL string.\n * Recursive will resolve sub-components.\n *\n * Exact component/property order is not saved all\n * properties will come before subcomponents.\n *\n * @function ICAL.stringify.component\n * @param {Array} component\n * jCal/jCard fragment of a component\n * @param {designSet} designSet\n * The design data to use for this component\n * @return {String} The iCalendar/vCard string\n */\nstringify.component = function(component, designSet) {\n let name = component[0].toUpperCase();\n let result = 'BEGIN:' + name + LINE_ENDING;\n\n let props = component[1];\n let propIdx = 0;\n let propLen = props.length;\n\n let designSetName = component[0];\n // rfc6350 requires that in vCard 4.0 the first component is the VERSION\n // component with as value 4.0, note that 3.0 does not have this requirement.\n if (designSetName === 'vcard' && component[1].length > 0 &&\n !(component[1][0][0] === \"version\" && component[1][0][3] === \"4.0\")) {\n designSetName = \"vcard3\";\n }\n designSet = designSet || design$1.getDesignSet(designSetName);\n\n for (; propIdx < propLen; propIdx++) {\n result += stringify.property(props[propIdx], designSet) + LINE_ENDING;\n }\n\n // Ignore subcomponents if none exist, e.g. in vCard.\n let comps = component[2] || [];\n let compIdx = 0;\n let compLen = comps.length;\n\n for (; compIdx < compLen; compIdx++) {\n result += stringify.component(comps[compIdx], designSet) + LINE_ENDING;\n }\n\n result += 'END:' + name;\n return result;\n};\n\n/**\n * Converts a single jCal/jCard property to a iCalendar/vCard string.\n *\n * @function ICAL.stringify.property\n * @param {Array} property\n * jCal/jCard property array\n * @param {designSet} designSet\n * The design data to use for this property\n * @param {Boolean} noFold\n * If true, the line is not folded\n * @return {String} The iCalendar/vCard string\n */\nstringify.property = function(property, designSet, noFold) {\n let name = property[0].toUpperCase();\n let jsName = property[0];\n let params = property[1];\n\n if (!designSet) {\n designSet = design$1.defaultSet;\n }\n\n let groupName = params.group;\n let line;\n if (designSet.propertyGroups && groupName) {\n line = groupName.toUpperCase() + \".\" + name;\n } else {\n line = name;\n }\n\n for (let [paramName, value] of Object.entries(params)) {\n if (designSet.propertyGroups && paramName == 'group') {\n continue;\n }\n\n let paramDesign = designSet.param[paramName];\n let multiValue = paramDesign && paramDesign.multiValue;\n if (multiValue && Array.isArray(value)) {\n value = value.map(function(val) {\n val = stringify._rfc6868Unescape(val);\n val = stringify.paramPropertyValue(val, paramDesign.multiValueSeparateDQuote);\n return val;\n });\n value = stringify.multiValue(value, multiValue, \"unknown\", null, designSet);\n } else {\n value = stringify._rfc6868Unescape(value);\n value = stringify.paramPropertyValue(value);\n }\n\n line += ';' + paramName.toUpperCase() + '=' + value;\n }\n\n if (property.length === 3) {\n // If there are no values, we must assume a blank value\n return line + ':';\n }\n\n let valueType = property[2];\n\n let propDetails;\n let multiValue = false;\n let structuredValue = false;\n let isDefault = false;\n\n if (jsName in designSet.property) {\n propDetails = designSet.property[jsName];\n\n if ('multiValue' in propDetails) {\n multiValue = propDetails.multiValue;\n }\n\n if (('structuredValue' in propDetails) && Array.isArray(property[3])) {\n structuredValue = propDetails.structuredValue;\n }\n\n if ('defaultType' in propDetails) {\n if (valueType === propDetails.defaultType) {\n isDefault = true;\n }\n } else {\n if (valueType === DEFAULT_VALUE_TYPE) {\n isDefault = true;\n }\n }\n } else {\n if (valueType === DEFAULT_VALUE_TYPE) {\n isDefault = true;\n }\n }\n\n // push the VALUE property if type is not the default\n // for the current property.\n if (!isDefault) {\n // value will never contain ;/:/, so we don't escape it here.\n line += ';VALUE=' + valueType.toUpperCase();\n }\n\n line += ':';\n\n if (multiValue && structuredValue) {\n line += stringify.multiValue(\n property[3], structuredValue, valueType, multiValue, designSet, structuredValue\n );\n } else if (multiValue) {\n line += stringify.multiValue(\n property.slice(3), multiValue, valueType, null, designSet, false\n );\n } else if (structuredValue) {\n line += stringify.multiValue(\n property[3], structuredValue, valueType, null, designSet, structuredValue\n );\n } else {\n line += stringify.value(property[3], valueType, designSet, false);\n }\n\n return noFold ? line : foldline(line);\n};\n\n/**\n * Handles escaping of property values that may contain:\n *\n * COLON (:), SEMICOLON (;), or COMMA (,)\n *\n * If any of the above are present the result is wrapped\n * in double quotes.\n *\n * @function ICAL.stringify.paramPropertyValue\n * @param {String} value Raw property value\n * @param {boolean} force If value should be escaped even when unnecessary\n * @return {String} Given or escaped value when needed\n */\nstringify.paramPropertyValue = function(value, force) {\n if (!force &&\n (value.indexOf(',') === -1) &&\n (value.indexOf(':') === -1) &&\n (value.indexOf(';') === -1)) {\n\n return value;\n }\n\n return '\"' + value + '\"';\n};\n\n/**\n * Converts an array of ical values into a single\n * string based on a type and a delimiter value (like \",\").\n *\n * @function ICAL.stringify.multiValue\n * @param {Array} values List of values to convert\n * @param {String} delim Used to join the values (\",\", \";\", \":\")\n * @param {String} type Lowecase ical value type\n * (like boolean, date-time, etc..)\n * @param {?String} innerMulti If set, each value will again be processed\n * Used for structured values\n * @param {designSet} designSet\n * The design data to use for this property\n *\n * @return {String} iCalendar/vCard string for value\n */\nstringify.multiValue = function(values, delim, type, innerMulti, designSet, structuredValue) {\n let result = '';\n let len = values.length;\n let i = 0;\n\n for (; i < len; i++) {\n if (innerMulti && Array.isArray(values[i])) {\n result += stringify.multiValue(values[i], innerMulti, type, null, designSet, structuredValue);\n } else {\n result += stringify.value(values[i], type, designSet, structuredValue);\n }\n\n if (i !== (len - 1)) {\n result += delim;\n }\n }\n\n return result;\n};\n\n/**\n * Processes a single ical value runs the associated \"toICAL\" method from the\n * design value type if available to convert the value.\n *\n * @function ICAL.stringify.value\n * @param {String|Number} value A formatted value\n * @param {String} type Lowercase iCalendar/vCard value type\n * (like boolean, date-time, etc..)\n * @return {String} iCalendar/vCard value for single value\n */\nstringify.value = function(value, type, designSet, structuredValue) {\n if (type in designSet.value && 'toICAL' in designSet.value[type]) {\n return designSet.value[type].toICAL(value, structuredValue);\n }\n return value;\n};\n\n/**\n * Internal helper for rfc6868. Exposing this on ICAL.stringify so that\n * hackers can disable the rfc6868 parsing if the really need to.\n *\n * @param {String} val The value to unescape\n * @return {String} The escaped value\n */\nstringify._rfc6868Unescape = function(val) {\n return val.replace(/[\\n^\"]/g, function(x) {\n return RFC6868_REPLACE_MAP[x];\n });\n};\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\nconst NAME_INDEX$1 = 0;\nconst PROP_INDEX = 1;\nconst TYPE_INDEX = 2;\nconst VALUE_INDEX = 3;\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n * @ignore\n * @typedef {import(\"./types.js\").designSet} designSet\n * Imports the 'designSet' type from the \"types.js\" module\n * @typedef {import(\"./types.js\").Geo} Geo\n * Imports the 'Geo' type from the \"types.js\" module\n */\n\n/**\n * Provides a layer on top of the raw jCal object for manipulating a single property, with its\n * parameters and value.\n *\n * @memberof ICAL\n */\nclass Property {\n /**\n * Create an {@link ICAL.Property} by parsing the passed iCalendar string.\n *\n * @param {String} str The iCalendar string to parse\n * @param {designSet=} designSet The design data to use for this property\n * @return {Property} The created iCalendar property\n */\n static fromString(str, designSet) {\n return new Property(parse.property(str, designSet));\n }\n\n /**\n * Creates a new ICAL.Property instance.\n *\n * It is important to note that mutations done in the wrapper directly mutate the jCal object used\n * to initialize.\n *\n * Can also be used to create new properties by passing the name of the property (as a String).\n *\n * @param {Array|String} jCal Raw jCal representation OR the new name of the property\n * @param {Component=} parent Parent component\n */\n constructor(jCal, parent) {\n this._parent = parent || null;\n\n if (typeof(jCal) === 'string') {\n // We are creating the property by name and need to detect the type\n this.jCal = [jCal, {}, design$1.defaultType];\n this.jCal[TYPE_INDEX] = this.getDefaultType();\n } else {\n this.jCal = jCal;\n }\n this._updateType();\n }\n\n /**\n * The value type for this property\n * @type {String}\n */\n get type() {\n return this.jCal[TYPE_INDEX];\n }\n\n /**\n * The name of this property, in lowercase.\n * @type {String}\n */\n get name() {\n return this.jCal[NAME_INDEX$1];\n }\n\n /**\n * The parent component for this property.\n * @type {Component}\n */\n get parent() {\n return this._parent;\n }\n\n set parent(p) {\n // Before setting the parent, check if the design set has changed. If it\n // has, we later need to update the type if it was unknown before.\n let designSetChanged = !this._parent || (p && p._designSet != this._parent._designSet);\n\n this._parent = p;\n\n if (this.type == design$1.defaultType && designSetChanged) {\n this.jCal[TYPE_INDEX] = this.getDefaultType();\n this._updateType();\n }\n }\n\n /**\n * The design set for this property, e.g. icalendar vs vcard\n *\n * @type {designSet}\n * @private\n */\n get _designSet() {\n return this.parent ? this.parent._designSet : design$1.defaultSet;\n }\n\n /**\n * Updates the type metadata from the current jCal type and design set.\n *\n * @private\n */\n _updateType() {\n let designSet = this._designSet;\n\n if (this.type in designSet.value) {\n if ('decorate' in designSet.value[this.type]) {\n this.isDecorated = true;\n } else {\n this.isDecorated = false;\n }\n\n if (this.name in designSet.property) {\n this.isMultiValue = ('multiValue' in designSet.property[this.name]);\n this.isStructuredValue = ('structuredValue' in designSet.property[this.name]);\n }\n }\n }\n\n /**\n * Hydrate a single value. The act of hydrating means turning the raw jCal\n * value into a potentially wrapped object, for example {@link ICAL.Time}.\n *\n * @private\n * @param {Number} index The index of the value to hydrate\n * @return {?Object} The decorated value.\n */\n _hydrateValue(index) {\n if (this._values && this._values[index]) {\n return this._values[index];\n }\n\n // for the case where there is no value.\n if (this.jCal.length <= (VALUE_INDEX + index)) {\n return null;\n }\n\n if (this.isDecorated) {\n if (!this._values) {\n this._values = [];\n }\n return (this._values[index] = this._decorate(\n this.jCal[VALUE_INDEX + index]\n ));\n } else {\n return this.jCal[VALUE_INDEX + index];\n }\n }\n\n /**\n * Decorate a single value, returning its wrapped object. This is used by\n * the hydrate function to actually wrap the value.\n *\n * @private\n * @param {?} value The value to decorate\n * @return {Object} The decorated value\n */\n _decorate(value) {\n return this._designSet.value[this.type].decorate(value, this);\n }\n\n /**\n * Undecorate a single value, returning its raw jCal data.\n *\n * @private\n * @param {Object} value The value to undecorate\n * @return {?} The undecorated value\n */\n _undecorate(value) {\n return this._designSet.value[this.type].undecorate(value, this);\n }\n\n /**\n * Sets the value at the given index while also hydrating it. The passed\n * value can either be a decorated or undecorated value.\n *\n * @private\n * @param {?} value The value to set\n * @param {Number} index The index to set it at\n */\n _setDecoratedValue(value, index) {\n if (!this._values) {\n this._values = [];\n }\n\n if (typeof(value) === 'object' && 'icaltype' in value) {\n // decorated value\n this.jCal[VALUE_INDEX + index] = this._undecorate(value);\n this._values[index] = value;\n } else {\n // undecorated value\n this.jCal[VALUE_INDEX + index] = value;\n this._values[index] = this._decorate(value);\n }\n }\n\n /**\n * Gets a parameter on the property.\n *\n * @param {String} name Parameter name (lowercase)\n * @return {Array|String} Parameter value\n */\n getParameter(name) {\n if (name in this.jCal[PROP_INDEX]) {\n return this.jCal[PROP_INDEX][name];\n } else {\n return undefined;\n }\n }\n\n /**\n * Gets first parameter on the property.\n *\n * @param {String} name Parameter name (lowercase)\n * @return {String} Parameter value\n */\n getFirstParameter(name) {\n let parameters = this.getParameter(name);\n\n if (Array.isArray(parameters)) {\n return parameters[0];\n }\n\n return parameters;\n }\n\n /**\n * Sets a parameter on the property.\n *\n * @param {String} name The parameter name\n * @param {Array|String} value The parameter value\n */\n setParameter(name, value) {\n let lcname = name.toLowerCase();\n if (typeof value === \"string\" &&\n lcname in this._designSet.param &&\n 'multiValue' in this._designSet.param[lcname]) {\n value = [value];\n }\n this.jCal[PROP_INDEX][name] = value;\n }\n\n /**\n * Removes a parameter\n *\n * @param {String} name The parameter name\n */\n removeParameter(name) {\n delete this.jCal[PROP_INDEX][name];\n }\n\n /**\n * Get the default type based on this property's name.\n *\n * @return {String} The default type for this property\n */\n getDefaultType() {\n let name = this.jCal[NAME_INDEX$1];\n let designSet = this._designSet;\n\n if (name in designSet.property) {\n let details = designSet.property[name];\n if ('defaultType' in details) {\n return details.defaultType;\n }\n }\n return design$1.defaultType;\n }\n\n /**\n * Sets type of property and clears out any existing values of the current\n * type.\n *\n * @param {String} type New iCAL type (see design.*.values)\n */\n resetType(type) {\n this.removeAllValues();\n this.jCal[TYPE_INDEX] = type;\n this._updateType();\n }\n\n /**\n * Finds the first property value.\n *\n * @return {Binary | Duration | Period |\n * Recur | Time | UtcOffset | Geo | string | null} First property value\n */\n getFirstValue() {\n return this._hydrateValue(0);\n }\n\n /**\n * Gets all values on the property.\n *\n * NOTE: this creates an array during each call.\n *\n * @return {Array} List of values\n */\n getValues() {\n let len = this.jCal.length - VALUE_INDEX;\n\n if (len < 1) {\n // it is possible for a property to have no value.\n return [];\n }\n\n let i = 0;\n let result = [];\n\n for (; i < len; i++) {\n result[i] = this._hydrateValue(i);\n }\n\n return result;\n }\n\n /**\n * Removes all values from this property\n */\n removeAllValues() {\n if (this._values) {\n this._values.length = 0;\n }\n this.jCal.length = 3;\n }\n\n /**\n * Sets the values of the property. Will overwrite the existing values.\n * This can only be used for multi-value properties.\n *\n * @param {Array} values An array of values\n */\n setValues(values) {\n if (!this.isMultiValue) {\n throw new Error(\n this.name + ': does not not support mulitValue.\\n' +\n 'override isMultiValue'\n );\n }\n\n let len = values.length;\n let i = 0;\n this.removeAllValues();\n\n if (len > 0 &&\n typeof(values[0]) === 'object' &&\n 'icaltype' in values[0]) {\n this.resetType(values[0].icaltype);\n }\n\n if (this.isDecorated) {\n for (; i < len; i++) {\n this._setDecoratedValue(values[i], i);\n }\n } else {\n for (; i < len; i++) {\n this.jCal[VALUE_INDEX + i] = values[i];\n }\n }\n }\n\n /**\n * Sets the current value of the property. If this is a multi-value\n * property, all other values will be removed.\n *\n * @param {String|Object} value New property value.\n */\n setValue(value) {\n this.removeAllValues();\n if (typeof(value) === 'object' && 'icaltype' in value) {\n this.resetType(value.icaltype);\n }\n\n if (this.isDecorated) {\n this._setDecoratedValue(value, 0);\n } else {\n this.jCal[VALUE_INDEX] = value;\n }\n }\n\n /**\n * Returns the Object representation of this component. The returned object\n * is a live jCal object and should be cloned if modified.\n * @return {Object}\n */\n toJSON() {\n return this.jCal;\n }\n\n /**\n * The string representation of this component.\n * @return {String}\n */\n toICALString() {\n return stringify.property(\n this.jCal, this._designSet, true\n );\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n * @ignore\n * @typedef {import(\"./types.js\").designSet} designSet\n * Imports the 'designSet' type from the \"types.js\" module\n * @typedef {import(\"./types.js\").Geo} Geo\n * Imports the 'Geo' type from the \"types.js\" module\n */\n\nconst NAME_INDEX = 0;\nconst PROPERTY_INDEX = 1;\nconst COMPONENT_INDEX = 2;\n\n/**\n * Wraps a jCal component, adding convenience methods to add, remove and update subcomponents and\n * properties.\n *\n * @memberof ICAL\n */\nclass Component {\n /**\n * Create an {@link ICAL.Component} by parsing the passed iCalendar string.\n *\n * @param {String} str The iCalendar string to parse\n */\n static fromString(str) {\n return new Component(parse.component(str));\n }\n\n /**\n * Creates a new Component instance.\n *\n * @param {Array|String} jCal Raw jCal component data OR name of new\n * component\n * @param {Component=} parent Parent component to associate\n */\n constructor(jCal, parent) {\n if (typeof(jCal) === 'string') {\n // jCal spec (name, properties, components)\n jCal = [jCal, [], []];\n }\n\n // mostly for legacy reasons.\n this.jCal = jCal;\n\n this.parent = parent || null;\n\n if (!this.parent && this.name === 'vcalendar') {\n this._timezoneCache = new Map();\n }\n }\n\n /**\n * Hydrated properties are inserted into the _properties array at the same\n * position as in the jCal array, so it is possible that the array contains\n * undefined values for unhydrdated properties. To avoid iterating the\n * array when checking if all properties have been hydrated, we save the\n * count here.\n *\n * @type {Number}\n * @private\n */\n _hydratedPropertyCount = 0;\n\n /**\n * The same count as for _hydratedPropertyCount, but for subcomponents\n *\n * @type {Number}\n * @private\n */\n _hydratedComponentCount = 0;\n\n /**\n * A cache of hydrated time zone objects which may be used by consumers, keyed\n * by time zone ID.\n *\n * @type {Map}\n * @private\n */\n _timezoneCache = null;\n\n /**\n * @private\n */\n _components = null;\n\n /**\n * @private\n */\n _properties = null;\n\n /**\n * The name of this component\n *\n * @type {String}\n */\n get name() {\n return this.jCal[NAME_INDEX];\n }\n\n /**\n * The design set for this component, e.g. icalendar vs vcard\n *\n * @type {designSet}\n * @private\n */\n get _designSet() {\n let parentDesign = this.parent && this.parent._designSet;\n return parentDesign || design$1.getDesignSet(this.name);\n }\n\n /**\n * @private\n */\n _hydrateComponent(index) {\n if (!this._components) {\n this._components = [];\n this._hydratedComponentCount = 0;\n }\n\n if (this._components[index]) {\n return this._components[index];\n }\n\n let comp = new Component(\n this.jCal[COMPONENT_INDEX][index],\n this\n );\n\n this._hydratedComponentCount++;\n return (this._components[index] = comp);\n }\n\n /**\n * @private\n */\n _hydrateProperty(index) {\n if (!this._properties) {\n this._properties = [];\n this._hydratedPropertyCount = 0;\n }\n\n if (this._properties[index]) {\n return this._properties[index];\n }\n\n let prop = new Property(\n this.jCal[PROPERTY_INDEX][index],\n this\n );\n\n this._hydratedPropertyCount++;\n return (this._properties[index] = prop);\n }\n\n /**\n * Finds first sub component, optionally filtered by name.\n *\n * @param {String=} name Optional name to filter by\n * @return {?Component} The found subcomponent\n */\n getFirstSubcomponent(name) {\n if (name) {\n let i = 0;\n let comps = this.jCal[COMPONENT_INDEX];\n let len = comps.length;\n\n for (; i < len; i++) {\n if (comps[i][NAME_INDEX] === name) {\n let result = this._hydrateComponent(i);\n return result;\n }\n }\n } else {\n if (this.jCal[COMPONENT_INDEX].length) {\n return this._hydrateComponent(0);\n }\n }\n\n // ensure we return a value (strict mode)\n return null;\n }\n\n /**\n * Finds all sub components, optionally filtering by name.\n *\n * @param {String=} name Optional name to filter by\n * @return {Component[]} The found sub components\n */\n getAllSubcomponents(name) {\n let jCalLen = this.jCal[COMPONENT_INDEX].length;\n let i = 0;\n\n if (name) {\n let comps = this.jCal[COMPONENT_INDEX];\n let result = [];\n\n for (; i < jCalLen; i++) {\n if (name === comps[i][NAME_INDEX]) {\n result.push(\n this._hydrateComponent(i)\n );\n }\n }\n return result;\n } else {\n if (!this._components ||\n (this._hydratedComponentCount !== jCalLen)) {\n for (; i < jCalLen; i++) {\n this._hydrateComponent(i);\n }\n }\n\n return this._components || [];\n }\n }\n\n /**\n * Returns true when a named property exists.\n *\n * @param {String} name The property name\n * @return {Boolean} True, when property is found\n */\n hasProperty(name) {\n let props = this.jCal[PROPERTY_INDEX];\n let len = props.length;\n\n let i = 0;\n for (; i < len; i++) {\n // 0 is property name\n if (props[i][NAME_INDEX] === name) {\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * Finds the first property, optionally with the given name.\n *\n * @param {String=} name Lowercase property name\n * @return {?Property} The found property\n */\n getFirstProperty(name) {\n if (name) {\n let i = 0;\n let props = this.jCal[PROPERTY_INDEX];\n let len = props.length;\n\n for (; i < len; i++) {\n if (props[i][NAME_INDEX] === name) {\n let result = this._hydrateProperty(i);\n return result;\n }\n }\n } else {\n if (this.jCal[PROPERTY_INDEX].length) {\n return this._hydrateProperty(0);\n }\n }\n\n return null;\n }\n\n /**\n * Returns first property's value, if available.\n *\n * @param {String=} name Lowercase property name\n * @return {Binary | Duration | Period |\n * Recur | Time | UtcOffset | Geo | string | null} The found property value.\n */\n getFirstPropertyValue(name) {\n let prop = this.getFirstProperty(name);\n if (prop) {\n return prop.getFirstValue();\n }\n\n return null;\n }\n\n /**\n * Get all properties in the component, optionally filtered by name.\n *\n * @param {String=} name Lowercase property name\n * @return {Property[]} List of properties\n */\n getAllProperties(name) {\n let jCalLen = this.jCal[PROPERTY_INDEX].length;\n let i = 0;\n\n if (name) {\n let props = this.jCal[PROPERTY_INDEX];\n let result = [];\n\n for (; i < jCalLen; i++) {\n if (name === props[i][NAME_INDEX]) {\n result.push(\n this._hydrateProperty(i)\n );\n }\n }\n return result;\n } else {\n if (!this._properties ||\n (this._hydratedPropertyCount !== jCalLen)) {\n for (; i < jCalLen; i++) {\n this._hydrateProperty(i);\n }\n }\n\n return this._properties || [];\n }\n }\n\n /**\n * @private\n */\n _removeObjectByIndex(jCalIndex, cache, index) {\n cache = cache || [];\n // remove cached version\n if (cache[index]) {\n let obj = cache[index];\n if (\"parent\" in obj) {\n obj.parent = null;\n }\n }\n\n cache.splice(index, 1);\n\n // remove it from the jCal\n this.jCal[jCalIndex].splice(index, 1);\n }\n\n /**\n * @private\n */\n _removeObject(jCalIndex, cache, nameOrObject) {\n let i = 0;\n let objects = this.jCal[jCalIndex];\n let len = objects.length;\n let cached = this[cache];\n\n if (typeof(nameOrObject) === 'string') {\n for (; i < len; i++) {\n if (objects[i][NAME_INDEX] === nameOrObject) {\n this._removeObjectByIndex(jCalIndex, cached, i);\n return true;\n }\n }\n } else if (cached) {\n for (; i < len; i++) {\n if (cached[i] && cached[i] === nameOrObject) {\n this._removeObjectByIndex(jCalIndex, cached, i);\n return true;\n }\n }\n }\n\n return false;\n }\n\n /**\n * @private\n */\n _removeAllObjects(jCalIndex, cache, name) {\n let cached = this[cache];\n\n // Unfortunately we have to run through all children to reset their\n // parent property.\n let objects = this.jCal[jCalIndex];\n let i = objects.length - 1;\n\n // descending search required because splice\n // is used and will effect the indices.\n for (; i >= 0; i--) {\n if (!name || objects[i][NAME_INDEX] === name) {\n this._removeObjectByIndex(jCalIndex, cached, i);\n }\n }\n }\n\n /**\n * Adds a single sub component.\n *\n * @param {Component} component The component to add\n * @return {Component} The passed in component\n */\n addSubcomponent(component) {\n if (!this._components) {\n this._components = [];\n this._hydratedComponentCount = 0;\n }\n\n if (component.parent) {\n component.parent.removeSubcomponent(component);\n }\n\n let idx = this.jCal[COMPONENT_INDEX].push(component.jCal);\n this._components[idx - 1] = component;\n this._hydratedComponentCount++;\n component.parent = this;\n return component;\n }\n\n /**\n * Removes a single component by name or the instance of a specific\n * component.\n *\n * @param {Component|String} nameOrComp Name of component, or component\n * @return {Boolean} True when comp is removed\n */\n removeSubcomponent(nameOrComp) {\n let removed = this._removeObject(COMPONENT_INDEX, '_components', nameOrComp);\n if (removed) {\n this._hydratedComponentCount--;\n }\n return removed;\n }\n\n /**\n * Removes all components or (if given) all components by a particular\n * name.\n *\n * @param {String=} name Lowercase component name\n */\n removeAllSubcomponents(name) {\n let removed = this._removeAllObjects(COMPONENT_INDEX, '_components', name);\n this._hydratedComponentCount = 0;\n return removed;\n }\n\n /**\n * Adds an {@link ICAL.Property} to the component.\n *\n * @param {Property} property The property to add\n * @return {Property} The passed in property\n */\n addProperty(property) {\n if (!(property instanceof Property)) {\n throw new TypeError('must be instance of ICAL.Property');\n }\n\n if (!this._properties) {\n this._properties = [];\n this._hydratedPropertyCount = 0;\n }\n\n if (property.parent) {\n property.parent.removeProperty(property);\n }\n\n let idx = this.jCal[PROPERTY_INDEX].push(property.jCal);\n this._properties[idx - 1] = property;\n this._hydratedPropertyCount++;\n property.parent = this;\n return property;\n }\n\n /**\n * Helper method to add a property with a value to the component.\n *\n * @param {String} name Property name to add\n * @param {String|Number|Object} value Property value\n * @return {Property} The created property\n */\n addPropertyWithValue(name, value) {\n let prop = new Property(name);\n prop.setValue(value);\n\n this.addProperty(prop);\n\n return prop;\n }\n\n /**\n * Helper method that will update or create a property of the given name\n * and sets its value. If multiple properties with the given name exist,\n * only the first is updated.\n *\n * @param {String} name Property name to update\n * @param {String|Number|Object} value Property value\n * @return {Property} The created property\n */\n updatePropertyWithValue(name, value) {\n let prop = this.getFirstProperty(name);\n\n if (prop) {\n prop.setValue(value);\n } else {\n prop = this.addPropertyWithValue(name, value);\n }\n\n return prop;\n }\n\n /**\n * Removes a single property by name or the instance of the specific\n * property.\n *\n * @param {String|Property} nameOrProp Property name or instance to remove\n * @return {Boolean} True, when deleted\n */\n removeProperty(nameOrProp) {\n let removed = this._removeObject(PROPERTY_INDEX, '_properties', nameOrProp);\n if (removed) {\n this._hydratedPropertyCount--;\n }\n return removed;\n }\n\n /**\n * Removes all properties associated with this component, optionally\n * filtered by name.\n *\n * @param {String=} name Lowercase property name\n * @return {Boolean} True, when deleted\n */\n removeAllProperties(name) {\n let removed = this._removeAllObjects(PROPERTY_INDEX, '_properties', name);\n this._hydratedPropertyCount = 0;\n return removed;\n }\n\n /**\n * Returns the Object representation of this component. The returned object\n * is a live jCal object and should be cloned if modified.\n * @return {Object}\n */\n toJSON() {\n return this.jCal;\n }\n\n /**\n * The string representation of this component.\n * @return {String}\n */\n toString() {\n return stringify.component(\n this.jCal, this._designSet\n );\n }\n\n /**\n * Retrieve a time zone definition from the component tree, if any is present.\n * If the tree contains no time zone definitions or the TZID cannot be\n * matched, returns null.\n *\n * @param {String} tzid The ID of the time zone to retrieve\n * @return {Timezone} The time zone corresponding to the ID, or null\n */\n getTimeZoneByID(tzid) {\n // VTIMEZONE components can only appear as a child of the VCALENDAR\n // component; walk the tree if we're not the root.\n if (this.parent) {\n return this.parent.getTimeZoneByID(tzid);\n }\n\n // If there is no time zone cache, we are probably parsing an incomplete\n // file and will have no time zone definitions.\n if (!this._timezoneCache) {\n return null;\n }\n\n if (this._timezoneCache.has(tzid)) {\n return this._timezoneCache.get(tzid);\n }\n\n // If the time zone is not already cached, hydrate it from the\n // subcomponents.\n const zones = this.getAllSubcomponents('vtimezone');\n for (const zone of zones) {\n if (zone.getFirstProperty('tzid').getFirstValue() === tzid) {\n const hydratedZone = new Timezone({\n component: zone,\n tzid: tzid,\n });\n\n this._timezoneCache.set(tzid, hydratedZone);\n\n return hydratedZone;\n }\n }\n\n // Per the standard, we should always have a time zone defined in a file\n // for any referenced TZID, but don't blow up if the file is invalid.\n return null;\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * Primary class for expanding recurring rules. Can take multiple rrules, rdates, exdate(s) and\n * iterate (in order) over each next occurrence.\n *\n * Once initialized this class can also be serialized saved and continue iteration from the last\n * point.\n *\n * NOTE: it is intended that this class is to be used with {@link ICAL.Event} which handles recurrence\n * exceptions.\n *\n * @example\n * // assuming event is a parsed ical component\n * var event;\n *\n * var expand = new ICAL.RecurExpansion({\n * component: event,\n * dtstart: event.getFirstPropertyValue('dtstart')\n * });\n *\n * // remember there are infinite rules so it is a good idea to limit the scope of the iterations\n * // then resume later on.\n *\n * // next is always an ICAL.Time or null\n * var next;\n *\n * while (someCondition && (next = expand.next())) {\n * // do something with next\n * }\n *\n * // save instance for later\n * var json = JSON.stringify(expand);\n *\n * //...\n *\n * // NOTE: if the component's properties have changed you will need to rebuild the class and start\n * // over. This only works when the component's recurrence info is the same.\n * var expand = new ICAL.RecurExpansion(JSON.parse(json));\n *\n * @memberof ICAL\n */\nclass RecurExpansion {\n /**\n * Creates a new ICAL.RecurExpansion instance.\n *\n * The options object can be filled with the specified initial values. It can also contain\n * additional members, as a result of serializing a previous expansion state, as shown in the\n * example.\n *\n * @param {Object} options\n * Recurrence expansion options\n * @param {Time} options.dtstart\n * Start time of the event\n * @param {Component=} options.component\n * Component for expansion, required if not resuming.\n */\n constructor(options) {\n this.ruleDates = [];\n this.exDates = [];\n this.fromData(options);\n }\n\n /**\n * True when iteration is fully completed.\n * @type {Boolean}\n */\n complete = false;\n\n /**\n * Array of rrule iterators.\n *\n * @type {RecurIterator[]}\n * @private\n */\n ruleIterators = null;\n\n /**\n * Array of rdate instances.\n *\n * @type {Time[]}\n * @private\n */\n ruleDates = null;\n\n /**\n * Array of exdate instances.\n *\n * @type {Time[]}\n * @private\n */\n exDates = null;\n\n /**\n * Current position in ruleDates array.\n * @type {Number}\n * @private\n */\n ruleDateInc = 0;\n\n /**\n * Current position in exDates array\n * @type {Number}\n * @private\n */\n exDateInc = 0;\n\n /**\n * Current negative date.\n *\n * @type {Time}\n * @private\n */\n exDate = null;\n\n /**\n * Current additional date.\n *\n * @type {Time}\n * @private\n */\n ruleDate = null;\n\n /**\n * Start date of recurring rules.\n *\n * @type {Time}\n */\n dtstart = null;\n\n /**\n * Last expanded time\n *\n * @type {Time}\n */\n last = null;\n\n /**\n * Initialize the recurrence expansion from the data object. The options\n * object may also contain additional members, see the\n * {@link ICAL.RecurExpansion constructor} for more details.\n *\n * @param {Object} options\n * Recurrence expansion options\n * @param {Time} options.dtstart\n * Start time of the event\n * @param {Component=} options.component\n * Component for expansion, required if not resuming.\n */\n fromData(options) {\n let start = formatClassType(options.dtstart, Time);\n\n if (!start) {\n throw new Error('.dtstart (ICAL.Time) must be given');\n } else {\n this.dtstart = start;\n }\n\n if (options.component) {\n this._init(options.component);\n } else {\n this.last = formatClassType(options.last, Time) || start.clone();\n\n if (!options.ruleIterators) {\n throw new Error('.ruleIterators or .component must be given');\n }\n\n this.ruleIterators = options.ruleIterators.map(function(item) {\n return formatClassType(item, RecurIterator);\n });\n\n this.ruleDateInc = options.ruleDateInc;\n this.exDateInc = options.exDateInc;\n\n if (options.ruleDates) {\n this.ruleDates = options.ruleDates.map(item => formatClassType(item, Time));\n this.ruleDate = this.ruleDates[this.ruleDateInc];\n }\n\n if (options.exDates) {\n this.exDates = options.exDates.map(item => formatClassType(item, Time));\n this.exDate = this.exDates[this.exDateInc];\n }\n\n if (typeof(options.complete) !== 'undefined') {\n this.complete = options.complete;\n }\n }\n }\n\n /**\n * Retrieve the next occurrence in the series.\n * @return {Time}\n */\n next() {\n let iter;\n let next;\n let compare;\n\n let maxTries = 500;\n let currentTry = 0;\n\n while (true) {\n if (currentTry++ > maxTries) {\n throw new Error(\n 'max tries have occurred, rule may be impossible to fulfill.'\n );\n }\n\n next = this.ruleDate;\n iter = this._nextRecurrenceIter(this.last);\n\n // no more matches\n // because we increment the rule day or rule\n // _after_ we choose a value this should be\n // the only spot where we need to worry about the\n // end of events.\n if (!next && !iter) {\n // there are no more iterators or rdates\n this.complete = true;\n break;\n }\n\n // no next rule day or recurrence rule is first.\n if (!next || (iter && next.compare(iter.last) > 0)) {\n // must be cloned, recur will reuse the time element.\n next = iter.last.clone();\n // move to next so we can continue\n iter.next();\n }\n\n // if the ruleDate is still next increment it.\n if (this.ruleDate === next) {\n this._nextRuleDay();\n }\n\n this.last = next;\n\n // check the negative rules\n if (this.exDate) {\n compare = this.exDate.compare(this.last);\n\n if (compare < 0) {\n this._nextExDay();\n }\n\n // if the current rule is excluded skip it.\n if (compare === 0) {\n this._nextExDay();\n continue;\n }\n }\n\n //XXX: The spec states that after we resolve the final\n // list of dates we execute exdate this seems somewhat counter\n // intuitive to what I have seen most servers do so for now\n // I exclude based on the original date not the one that may\n // have been modified by the exception.\n return this.last;\n }\n }\n\n /**\n * Converts object into a serialize-able format. This format can be passed\n * back into the expansion to resume iteration.\n * @return {Object}\n */\n toJSON() {\n function toJSON(item) {\n return item.toJSON();\n }\n\n let result = Object.create(null);\n result.ruleIterators = this.ruleIterators.map(toJSON);\n\n if (this.ruleDates) {\n result.ruleDates = this.ruleDates.map(toJSON);\n }\n\n if (this.exDates) {\n result.exDates = this.exDates.map(toJSON);\n }\n\n result.ruleDateInc = this.ruleDateInc;\n result.exDateInc = this.exDateInc;\n result.last = this.last.toJSON();\n result.dtstart = this.dtstart.toJSON();\n result.complete = this.complete;\n\n return result;\n }\n\n /**\n * Extract all dates from the properties in the given component. The\n * properties will be filtered by the property name.\n *\n * @private\n * @param {Component} component The component to search in\n * @param {String} propertyName The property name to search for\n * @return {Time[]} The extracted dates.\n */\n _extractDates(component, propertyName) {\n let result = [];\n let props = component.getAllProperties(propertyName);\n\n for (let i = 0, len = props.length; i < len; i++) {\n for (let prop of props[i].getValues()) {\n let idx = binsearchInsert(\n result,\n prop,\n (a, b) => a.compare(b)\n );\n\n // ordered insert\n result.splice(idx, 0, prop);\n }\n }\n\n return result;\n }\n\n /**\n * Initialize the recurrence expansion.\n *\n * @private\n * @param {Component} component The component to initialize from.\n */\n _init(component) {\n this.ruleIterators = [];\n\n this.last = this.dtstart.clone();\n\n // to provide api consistency non-recurring\n // events can also use the iterator though it will\n // only return a single time.\n if (!component.hasProperty('rdate') &&\n !component.hasProperty('rrule') &&\n !component.hasProperty('recurrence-id')) {\n this.ruleDate = this.last.clone();\n this.complete = true;\n return;\n }\n\n if (component.hasProperty('rdate')) {\n this.ruleDates = this._extractDates(component, 'rdate');\n\n // special hack for cases where first rdate is prior\n // to the start date. We only check for the first rdate.\n // This is mostly for google's crazy recurring date logic\n // (contacts birthdays).\n if ((this.ruleDates[0]) &&\n (this.ruleDates[0].compare(this.dtstart) < 0)) {\n\n this.ruleDateInc = 0;\n this.last = this.ruleDates[0].clone();\n } else {\n this.ruleDateInc = binsearchInsert(\n this.ruleDates,\n this.last,\n (a, b) => a.compare(b)\n );\n }\n\n this.ruleDate = this.ruleDates[this.ruleDateInc];\n }\n\n if (component.hasProperty('rrule')) {\n let rules = component.getAllProperties('rrule');\n let i = 0;\n let len = rules.length;\n\n let rule;\n let iter;\n\n for (; i < len; i++) {\n rule = rules[i].getFirstValue();\n iter = rule.iterator(this.dtstart);\n this.ruleIterators.push(iter);\n\n // increment to the next occurrence so future\n // calls to next return times beyond the initial iteration.\n // XXX: I find this suspicious might be a bug?\n iter.next();\n }\n }\n\n if (component.hasProperty('exdate')) {\n this.exDates = this._extractDates(component, 'exdate');\n // if we have a .last day we increment the index to beyond it.\n this.exDateInc = binsearchInsert(\n this.exDates,\n this.last,\n (a, b) => a.compare(b)\n );\n\n this.exDate = this.exDates[this.exDateInc];\n }\n }\n\n /**\n * Advance to the next exdate\n * @private\n */\n _nextExDay() {\n this.exDate = this.exDates[++this.exDateInc];\n }\n\n /**\n * Advance to the next rule date\n * @private\n */\n _nextRuleDay() {\n this.ruleDate = this.ruleDates[++this.ruleDateInc];\n }\n\n /**\n * Find and return the recurrence rule with the most recent event and\n * return it.\n *\n * @private\n * @return {?RecurIterator} Found iterator.\n */\n _nextRecurrenceIter() {\n let iters = this.ruleIterators;\n\n if (iters.length === 0) {\n return null;\n }\n\n let len = iters.length;\n let iter;\n let iterTime;\n let iterIdx = 0;\n let chosenIter;\n\n // loop through each iterator\n for (; iterIdx < len; iterIdx++) {\n iter = iters[iterIdx];\n iterTime = iter.last;\n\n // if iteration is complete\n // then we must exclude it from\n // the search and remove it.\n if (iter.completed) {\n len--;\n if (iterIdx !== 0) {\n iterIdx--;\n }\n iters.splice(iterIdx, 1);\n continue;\n }\n\n // find the most recent possible choice\n if (!chosenIter || chosenIter.last.compare(iterTime) > 0) {\n // that iterator is saved\n chosenIter = iter;\n }\n }\n\n // the chosen iterator is returned but not mutated\n // this iterator contains the most recent event.\n return chosenIter;\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * This lets typescript resolve our custom types in the\n * generated d.ts files (jsdoc typedefs are converted to typescript types).\n * Ignore prevents the typedefs from being documented more than once.\n * @ignore\n * @typedef {import(\"./types.js\").frequencyValues} frequencyValues\n * Imports the 'frequencyValues' type from the \"types.js\" module\n * @typedef {import(\"./types.js\").occurrenceDetails} occurrenceDetails\n * Imports the 'occurrenceDetails' type from the \"types.js\" module\n */\n\n/**\n * ICAL.js is organized into multiple layers. The bottom layer is a raw jCal\n * object, followed by the component/property layer. The highest level is the\n * event representation, which this class is part of. See the\n * {@tutorial layers} guide for more details.\n *\n * @memberof ICAL\n */\nclass Event {\n /**\n * Creates a new ICAL.Event instance.\n *\n * @param {Component=} component The ICAL.Component to base this event on\n * @param {Object} [options] Options for this event\n * @param {Boolean=} options.strictExceptions When true, will verify exceptions are related by\n * their UUID\n * @param {Array=} options.exceptions\n * Exceptions to this event, either as components or events. If not\n * specified exceptions will automatically be set in relation of\n * component's parent\n */\n constructor(component, options) {\n if (!(component instanceof Component)) {\n options = component;\n component = null;\n }\n\n if (component) {\n this.component = component;\n } else {\n this.component = new Component('vevent');\n }\n\n this._rangeExceptionCache = Object.create(null);\n this.exceptions = Object.create(null);\n this.rangeExceptions = [];\n\n if (options && options.strictExceptions) {\n this.strictExceptions = options.strictExceptions;\n }\n\n if (options && options.exceptions) {\n options.exceptions.forEach(this.relateException, this);\n } else if (this.component.parent && !this.isRecurrenceException()) {\n this.component.parent.getAllSubcomponents('vevent').forEach(function(event) {\n if (event.hasProperty('recurrence-id')) {\n this.relateException(event);\n }\n }, this);\n }\n }\n\n\n static THISANDFUTURE = 'THISANDFUTURE';\n\n /**\n * List of related event exceptions.\n *\n * @type {Event[]}\n */\n exceptions = null;\n\n /**\n * When true, will verify exceptions are related by their UUID.\n *\n * @type {Boolean}\n */\n strictExceptions = false;\n\n /**\n * Relates a given event exception to this object. If the given component\n * does not share the UID of this event it cannot be related and will throw\n * an exception.\n *\n * If this component is an exception it cannot have other exceptions\n * related to it.\n *\n * @param {Component|Event} obj Component or event\n */\n relateException(obj) {\n if (this.isRecurrenceException()) {\n throw new Error('cannot relate exception to exceptions');\n }\n\n if (obj instanceof Component) {\n obj = new Event(obj);\n }\n\n if (this.strictExceptions && obj.uid !== this.uid) {\n throw new Error('attempted to relate unrelated exception');\n }\n\n let id = obj.recurrenceId.toString();\n\n // we don't sort or manage exceptions directly\n // here the recurrence expander handles that.\n this.exceptions[id] = obj;\n\n // index RANGE=THISANDFUTURE exceptions so we can\n // look them up later in getOccurrenceDetails.\n if (obj.modifiesFuture()) {\n let item = [\n obj.recurrenceId.toUnixTime(), id\n ];\n\n // we keep them sorted so we can find the nearest\n // value later on...\n let idx = binsearchInsert(\n this.rangeExceptions,\n item,\n compareRangeException\n );\n\n this.rangeExceptions.splice(idx, 0, item);\n }\n }\n\n /**\n * Checks if this record is an exception and has the RANGE=THISANDFUTURE\n * value.\n *\n * @return {Boolean} True, when exception is within range\n */\n modifiesFuture() {\n if (!this.component.hasProperty('recurrence-id')) {\n return false;\n }\n\n let range = this.component.getFirstProperty('recurrence-id').getParameter('range');\n return range === Event.THISANDFUTURE;\n }\n\n /**\n * Finds the range exception nearest to the given date.\n *\n * @param {Time} time usually an occurrence time of an event\n * @return {?Event} the related event/exception or null\n */\n findRangeException(time) {\n if (!this.rangeExceptions.length) {\n return null;\n }\n\n let utc = time.toUnixTime();\n let idx = binsearchInsert(\n this.rangeExceptions,\n [utc],\n compareRangeException\n );\n\n idx -= 1;\n\n // occurs before\n if (idx < 0) {\n return null;\n }\n\n let rangeItem = this.rangeExceptions[idx];\n\n /* c8 ignore next 4 */\n if (utc < rangeItem[0]) {\n // sanity check only\n return null;\n }\n\n return rangeItem[1];\n }\n\n /**\n * Returns the occurrence details based on its start time. If the\n * occurrence has an exception will return the details for that exception.\n *\n * NOTE: this method is intend to be used in conjunction\n * with the {@link ICAL.Event#iterator iterator} method.\n *\n * @param {Time} occurrence time occurrence\n * @return {occurrenceDetails} Information about the occurrence\n */\n getOccurrenceDetails(occurrence) {\n let id = occurrence.toString();\n let utcId = occurrence.convertToZone(Timezone.utcTimezone).toString();\n let item;\n let result = {\n //XXX: Clone?\n recurrenceId: occurrence\n };\n\n if (id in this.exceptions) {\n item = result.item = this.exceptions[id];\n result.startDate = item.startDate;\n result.endDate = item.endDate;\n result.item = item;\n } else if (utcId in this.exceptions) {\n item = this.exceptions[utcId];\n result.startDate = item.startDate;\n result.endDate = item.endDate;\n result.item = item;\n } else {\n // range exceptions (RANGE=THISANDFUTURE) have a\n // lower priority then direct exceptions but\n // must be accounted for first. Their item is\n // always the first exception with the range prop.\n let rangeExceptionId = this.findRangeException(\n occurrence\n );\n let end;\n\n if (rangeExceptionId) {\n let exception = this.exceptions[rangeExceptionId];\n\n // range exception must modify standard time\n // by the difference (if any) in start/end times.\n result.item = exception;\n\n let startDiff = this._rangeExceptionCache[rangeExceptionId];\n\n if (!startDiff) {\n let original = exception.recurrenceId.clone();\n let newStart = exception.startDate.clone();\n\n // zones must be same otherwise subtract may be incorrect.\n original.zone = newStart.zone;\n startDiff = newStart.subtractDate(original);\n\n this._rangeExceptionCache[rangeExceptionId] = startDiff;\n }\n\n let start = occurrence.clone();\n start.zone = exception.startDate.zone;\n start.addDuration(startDiff);\n\n end = start.clone();\n end.addDuration(exception.duration);\n\n result.startDate = start;\n result.endDate = end;\n } else {\n // no range exception standard expansion\n end = occurrence.clone();\n end.addDuration(this.duration);\n\n result.endDate = end;\n result.startDate = occurrence;\n result.item = this;\n }\n }\n\n return result;\n }\n\n /**\n * Builds a recur expansion instance for a specific point in time (defaults\n * to startDate).\n *\n * @param {Time=} startTime Starting point for expansion\n * @return {RecurExpansion} Expansion object\n */\n iterator(startTime) {\n return new RecurExpansion({\n component: this.component,\n dtstart: startTime || this.startDate\n });\n }\n\n /**\n * Checks if the event is recurring\n *\n * @return {Boolean} True, if event is recurring\n */\n isRecurring() {\n let comp = this.component;\n return comp.hasProperty('rrule') || comp.hasProperty('rdate');\n }\n\n /**\n * Checks if the event describes a recurrence exception. See\n * {@tutorial terminology} for details.\n *\n * @return {Boolean} True, if the event describes a recurrence exception\n */\n isRecurrenceException() {\n return this.component.hasProperty('recurrence-id');\n }\n\n /**\n * Returns the types of recurrences this event may have.\n *\n * Returned as an object with the following possible keys:\n *\n * - YEARLY\n * - MONTHLY\n * - WEEKLY\n * - DAILY\n * - MINUTELY\n * - SECONDLY\n *\n * @return {Object.}\n * Object of recurrence flags\n */\n getRecurrenceTypes() {\n let rules = this.component.getAllProperties('rrule');\n let i = 0;\n let len = rules.length;\n let result = Object.create(null);\n\n for (; i < len; i++) {\n let value = rules[i].getFirstValue();\n result[value.freq] = true;\n }\n\n return result;\n }\n\n /**\n * The uid of this event\n * @type {String}\n */\n get uid() {\n return this._firstProp('uid');\n }\n\n set uid(value) {\n this._setProp('uid', value);\n }\n\n /**\n * The start date\n * @type {Time}\n */\n get startDate() {\n return this._firstProp('dtstart');\n }\n\n set startDate(value) {\n this._setTime('dtstart', value);\n }\n\n /**\n * The end date. This can be the result directly from the property, or the\n * end date calculated from start date and duration. Setting the property\n * will remove any duration properties.\n * @type {Time}\n */\n get endDate() {\n let endDate = this._firstProp('dtend');\n if (!endDate) {\n let duration = this._firstProp('duration');\n endDate = this.startDate.clone();\n if (duration) {\n endDate.addDuration(duration);\n } else if (endDate.isDate) {\n endDate.day += 1;\n }\n }\n return endDate;\n }\n\n set endDate(value) {\n if (this.component.hasProperty('duration')) {\n this.component.removeProperty('duration');\n }\n this._setTime('dtend', value);\n }\n\n /**\n * The duration. This can be the result directly from the property, or the\n * duration calculated from start date and end date. Setting the property\n * will remove any `dtend` properties.\n * @type {Duration}\n */\n get duration() {\n let duration = this._firstProp('duration');\n if (!duration) {\n return this.endDate.subtractDateTz(this.startDate);\n }\n return duration;\n }\n\n set duration(value) {\n if (this.component.hasProperty('dtend')) {\n this.component.removeProperty('dtend');\n }\n\n this._setProp('duration', value);\n }\n\n /**\n * The location of the event.\n * @type {String}\n */\n get location() {\n return this._firstProp('location');\n }\n\n set location(value) {\n this._setProp('location', value);\n }\n\n /**\n * The attendees in the event\n * @type {Property[]}\n */\n get attendees() {\n //XXX: This is way lame we should have a better\n // data structure for this later.\n return this.component.getAllProperties('attendee');\n }\n\n /**\n * The event summary\n * @type {String}\n */\n get summary() {\n return this._firstProp('summary');\n }\n\n set summary(value) {\n this._setProp('summary', value);\n }\n\n /**\n * The event description.\n * @type {String}\n */\n get description() {\n return this._firstProp('description');\n }\n\n set description(value) {\n this._setProp('description', value);\n }\n\n /**\n * The event color from [rfc7986](https://datatracker.ietf.org/doc/html/rfc7986)\n * @type {String}\n */\n get color() {\n return this._firstProp('color');\n }\n\n set color(value) {\n this._setProp('color', value);\n }\n\n /**\n * The organizer value as an uri. In most cases this is a mailto: uri, but\n * it can also be something else, like urn:uuid:...\n * @type {String}\n */\n get organizer() {\n return this._firstProp('organizer');\n }\n\n set organizer(value) {\n this._setProp('organizer', value);\n }\n\n /**\n * The sequence value for this event. Used for scheduling\n * see {@tutorial terminology}.\n * @type {Number}\n */\n get sequence() {\n return this._firstProp('sequence');\n }\n\n set sequence(value) {\n this._setProp('sequence', value);\n }\n\n /**\n * The recurrence id for this event. See {@tutorial terminology} for details.\n * @type {Time}\n */\n get recurrenceId() {\n return this._firstProp('recurrence-id');\n }\n\n set recurrenceId(value) {\n this._setTime('recurrence-id', value);\n }\n\n /**\n * Set/update a time property's value.\n * This will also update the TZID of the property.\n *\n * TODO: this method handles the case where we are switching\n * from a known timezone to an implied timezone (one without TZID).\n * This does _not_ handle the case of moving between a known\n * (by TimezoneService) timezone to an unknown timezone...\n *\n * We will not add/remove/update the VTIMEZONE subcomponents\n * leading to invalid ICAL data...\n * @private\n * @param {String} propName The property name\n * @param {Time} time The time to set\n */\n _setTime(propName, time) {\n let prop = this.component.getFirstProperty(propName);\n\n if (!prop) {\n prop = new Property(propName);\n this.component.addProperty(prop);\n }\n\n // utc and local don't get a tzid\n if (\n time.zone === Timezone.localTimezone ||\n time.zone === Timezone.utcTimezone\n ) {\n // remove the tzid\n prop.removeParameter('tzid');\n } else {\n prop.setParameter('tzid', time.zone.tzid);\n }\n\n prop.setValue(time);\n }\n\n _setProp(name, value) {\n this.component.updatePropertyWithValue(name, value);\n }\n\n _firstProp(name) {\n return this.component.getFirstPropertyValue(name);\n }\n\n /**\n * The string representation of this event.\n * @return {String}\n */\n toString() {\n return this.component.toString();\n }\n}\n\nfunction compareRangeException(a, b) {\n if (a[0] > b[0]) return 1;\n if (b[0] > a[0]) return -1;\n return 0;\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * The ComponentParser is used to process a String or jCal Object,\n * firing callbacks for various found components, as well as completion.\n *\n * @example\n * var options = {\n * // when false no events will be emitted for type\n * parseEvent: true,\n * parseTimezone: true\n * };\n *\n * var parser = new ICAL.ComponentParser(options);\n *\n * parser.onevent(eventComponent) {\n * //...\n * }\n *\n * // ontimezone, etc...\n *\n * parser.oncomplete = function() {\n *\n * };\n *\n * parser.process(stringOrComponent);\n *\n * @memberof ICAL\n */\nclass ComponentParser {\n /**\n * Creates a new ICAL.ComponentParser instance.\n *\n * @param {Object=} options Component parser options\n * @param {Boolean} options.parseEvent Whether events should be parsed\n * @param {Boolean} options.parseTimezeone Whether timezones should be parsed\n */\n constructor(options) {\n if (typeof(options) === 'undefined') {\n options = {};\n }\n\n for (let [key, value] of Object.entries(options)) {\n this[key] = value;\n }\n }\n\n /**\n * When true, parse events\n *\n * @type {Boolean}\n */\n parseEvent = true;\n\n /**\n * When true, parse timezones\n *\n * @type {Boolean}\n */\n parseTimezone = true;\n\n\n /* SAX like events here for reference */\n\n /**\n * Fired when parsing is complete\n * @callback\n */\n oncomplete = /* c8 ignore next */ function() {};\n\n /**\n * Fired if an error occurs during parsing.\n *\n * @callback\n * @param {Error} err details of error\n */\n onerror = /* c8 ignore next */ function(err) {};\n\n /**\n * Fired when a top level component (VTIMEZONE) is found\n *\n * @callback\n * @param {Timezone} component Timezone object\n */\n ontimezone = /* c8 ignore next */ function(component) {};\n\n /**\n * Fired when a top level component (VEVENT) is found.\n *\n * @callback\n * @param {Event} component Top level component\n */\n onevent = /* c8 ignore next */ function(component) {};\n\n /**\n * Process a string or parse ical object. This function itself will return\n * nothing but will start the parsing process.\n *\n * Events must be registered prior to calling this method.\n *\n * @param {Component|String|Object} ical The component to process,\n * either in its final form, as a jCal Object, or string representation\n */\n process(ical) {\n //TODO: this is sync now in the future we will have a incremental parser.\n if (typeof(ical) === 'string') {\n ical = parse(ical);\n }\n\n if (!(ical instanceof Component)) {\n ical = new Component(ical);\n }\n\n let components = ical.getAllSubcomponents();\n let i = 0;\n let len = components.length;\n let component;\n\n for (; i < len; i++) {\n component = components[i];\n\n switch (component.name) {\n case 'vtimezone':\n if (this.parseTimezone) {\n let tzid = component.getFirstPropertyValue('tzid');\n if (tzid) {\n this.ontimezone(new Timezone({\n tzid: tzid,\n component: component\n }));\n }\n }\n break;\n case 'vevent':\n if (this.parseEvent) {\n this.onevent(new Event(component));\n }\n break;\n default:\n continue;\n }\n }\n\n //XXX: ideally we should do a \"nextTick\" here\n // so in all cases this is actually async.\n this.oncomplete();\n }\n}\n\n/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n * Portions Copyright (C) Philipp Kewisch */\n\n/**\n * The main ICAL module. Provides access to everything else.\n *\n * @alias ICAL\n * @namespace ICAL\n * @property {ICAL.design} design\n * @property {ICAL.helpers} helpers\n */\nvar ICALmodule = {\n /**\n * The number of characters before iCalendar line folding should occur\n * @type {Number}\n * @default 75\n */\n foldLength: 75,\n\n debug: false,\n\n /**\n * The character(s) to be used for a newline. The default value is provided by\n * rfc5545.\n * @type {String}\n * @default \"\\r\\n\"\n */\n newLineChar: '\\r\\n',\n\n Binary,\n Component,\n ComponentParser,\n Duration,\n Event,\n Period,\n Property,\n Recur,\n RecurExpansion,\n RecurIterator,\n Time,\n Timezone,\n TimezoneService,\n UtcOffset,\n VCardTime,\n\n parse,\n stringify,\n\n design: design$1,\n helpers\n};\n\nexport { ICALmodule as default };\n","import ICAL from \"ical.js\";\nclass Timezone {\n /**\n * Constructor\n *\n * @param {string | ICAL.Timezone | ICAL.Component} timezoneId Id of the timezone\n * @param {string?} ics The iCalendar timezone definition\n */\n constructor(timezoneId, ics) {\n this._timezoneId = null;\n this._ics = null;\n this._innerValue = null;\n this._initialized = false;\n if (timezoneId instanceof ICAL.Timezone) {\n this._innerValue = timezoneId;\n this._initialized = true;\n } else if (timezoneId instanceof ICAL.Component) {\n this._innerValue = new ICAL.Timezone(timezoneId);\n this._initialized = true;\n } else {\n this._timezoneId = timezoneId;\n this._ics = ics;\n }\n }\n /**\n * Gets the timezone id\n *\n * @return {string}\n */\n get timezoneId() {\n if (this._initialized) {\n return this._innerValue.tzid;\n }\n return this._timezoneId;\n }\n /**\n * Gets the UTC Offset for a given date in this timezone\n *\n * @param {number} year Year of the date\n * @param {number} month Month of the date (1-based)\n * @param {number} day Day of the date\n * @param {number} hour Hour of the date\n * @param {number} minute Minute of the date\n * @param {number} second Second of the date\n * @return {number}\n */\n offsetForArray(year, month, day, hour, minute, second) {\n this._initialize();\n const time = new ICAL.Time({\n year,\n month,\n day,\n hour,\n minute,\n second,\n isDate: false\n });\n return this._innerValue.utcOffset(time);\n }\n /**\n * Converts a timestamp to an array of year, month, day, hour, minute, second.\n *\n * @param {number} ms Timestamp in milliseconds\n * @return {number[]}\n */\n timestampToArray(ms) {\n this._initialize();\n const time = ICAL.Time.fromData({\n year: 1970,\n month: 1,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0\n });\n time.fromUnixTime(Math.floor(ms / 1e3));\n const local = time.convertToZone(this._innerValue);\n return [\n local.year,\n local.month,\n // THIS is 1-based !\n local.day,\n local.hour,\n local.minute,\n local.second\n ];\n }\n /**\n * Returns\n *\n * @return {ICAL.Timezone}\n */\n toICALTimezone() {\n this._initialize();\n return this._innerValue;\n }\n /**\n * Returns the corresponding ICAL.\n *\n * @return {ICAL.Component}\n */\n toICALJs() {\n this._initialize();\n return this._innerValue.component;\n }\n /**\n * Initialises the inner ICAL.Timezone component\n *\n * @private\n */\n _initialize() {\n if (!this._initialized) {\n const jCal = ICAL.parse(this._ics);\n const icalComp = new ICAL.Component(jCal);\n this._innerValue = new ICAL.Timezone(icalComp);\n this._initialized = true;\n }\n }\n}\nTimezone.utc = new Timezone(ICAL.Timezone.utcTimezone);\nTimezone.floating = new Timezone(ICAL.Timezone.localTimezone);\nconst version = \"2.2024a\";\nconst aliases = {\n \"AUS Central Standard Time\": {\n aliasTo: \"Australia/Darwin\"\n },\n \"AUS Eastern Standard Time\": {\n aliasTo: \"Australia/Sydney\"\n },\n \"Afghanistan Standard Time\": {\n aliasTo: \"Asia/Kabul\"\n },\n \"Africa/Asmera\": {\n aliasTo: \"Africa/Asmara\"\n },\n \"Africa/Timbuktu\": {\n aliasTo: \"Africa/Bamako\"\n },\n \"Alaskan Standard Time\": {\n aliasTo: \"America/Anchorage\"\n },\n \"America/Argentina/ComodRivadavia\": {\n aliasTo: \"America/Argentina/Catamarca\"\n },\n \"America/Buenos_Aires\": {\n aliasTo: \"America/Argentina/Buenos_Aires\"\n },\n \"America/Louisville\": {\n aliasTo: \"America/Kentucky/Louisville\"\n },\n \"America/Montreal\": {\n aliasTo: \"America/Toronto\"\n },\n \"America/Santa_Isabel\": {\n aliasTo: \"America/Tijuana\"\n },\n \"Arab Standard Time\": {\n aliasTo: \"Asia/Riyadh\"\n },\n \"Arabian Standard Time\": {\n aliasTo: \"Asia/Dubai\"\n },\n \"Arabic Standard Time\": {\n aliasTo: \"Asia/Baghdad\"\n },\n \"Argentina Standard Time\": {\n aliasTo: \"America/Argentina/Buenos_Aires\"\n },\n \"Asia/Calcutta\": {\n aliasTo: \"Asia/Kolkata\"\n },\n \"Asia/Katmandu\": {\n aliasTo: \"Asia/Kathmandu\"\n },\n \"Asia/Rangoon\": {\n aliasTo: \"Asia/Yangon\"\n },\n \"Asia/Saigon\": {\n aliasTo: \"Asia/Ho_Chi_Minh\"\n },\n \"Atlantic Standard Time\": {\n aliasTo: \"America/Halifax\"\n },\n \"Atlantic/Faeroe\": {\n aliasTo: \"Atlantic/Faroe\"\n },\n \"Atlantic/Jan_Mayen\": {\n aliasTo: \"Europe/Oslo\"\n },\n \"Azerbaijan Standard Time\": {\n aliasTo: \"Asia/Baku\"\n },\n \"Azores Standard Time\": {\n aliasTo: \"Atlantic/Azores\"\n },\n \"Bahia Standard Time\": {\n aliasTo: \"America/Bahia\"\n },\n \"Bangladesh Standard Time\": {\n aliasTo: \"Asia/Dhaka\"\n },\n \"Belarus Standard Time\": {\n aliasTo: \"Europe/Minsk\"\n },\n \"Canada Central Standard Time\": {\n aliasTo: \"America/Regina\"\n },\n \"Cape Verde Standard Time\": {\n aliasTo: \"Atlantic/Cape_Verde\"\n },\n \"Caucasus Standard Time\": {\n aliasTo: \"Asia/Yerevan\"\n },\n \"Cen. Australia Standard Time\": {\n aliasTo: \"Australia/Adelaide\"\n },\n \"Central America Standard Time\": {\n aliasTo: \"America/Guatemala\"\n },\n \"Central Asia Standard Time\": {\n aliasTo: \"Asia/Almaty\"\n },\n \"Central Brazilian Standard Time\": {\n aliasTo: \"America/Cuiaba\"\n },\n \"Central Europe Standard Time\": {\n aliasTo: \"Europe/Budapest\"\n },\n \"Central European Standard Time\": {\n aliasTo: \"Europe/Warsaw\"\n },\n \"Central Pacific Standard Time\": {\n aliasTo: \"Pacific/Guadalcanal\"\n },\n \"Central Standard Time\": {\n aliasTo: \"America/Chicago\"\n },\n \"Central Standard Time (Mexico)\": {\n aliasTo: \"America/Mexico_City\"\n },\n \"China Standard Time\": {\n aliasTo: \"Asia/Shanghai\"\n },\n \"E. Africa Standard Time\": {\n aliasTo: \"Africa/Nairobi\"\n },\n \"E. Australia Standard Time\": {\n aliasTo: \"Australia/Brisbane\"\n },\n \"E. South America Standard Time\": {\n aliasTo: \"America/Sao_Paulo\"\n },\n \"Eastern Standard Time\": {\n aliasTo: \"America/New_York\"\n },\n \"Egypt Standard Time\": {\n aliasTo: \"Africa/Cairo\"\n },\n \"Ekaterinburg Standard Time\": {\n aliasTo: \"Asia/Yekaterinburg\"\n },\n \"Etc/GMT\": {\n aliasTo: \"UTC\"\n },\n \"Etc/GMT+0\": {\n aliasTo: \"UTC\"\n },\n \"Etc/UCT\": {\n aliasTo: \"UTC\"\n },\n \"Etc/UTC\": {\n aliasTo: \"UTC\"\n },\n \"Etc/Unversal\": {\n aliasTo: \"UTC\"\n },\n \"Etc/Zulu\": {\n aliasTo: \"UTC\"\n },\n \"Europe/Belfast\": {\n aliasTo: \"Europe/London\"\n },\n \"FLE Standard Time\": {\n aliasTo: \"Europe/Kiev\"\n },\n \"Fiji Standard Time\": {\n aliasTo: \"Pacific/Fiji\"\n },\n GMT: {\n aliasTo: \"UTC\"\n },\n \"GMT Standard Time\": {\n aliasTo: \"Europe/London\"\n },\n \"GMT+0\": {\n aliasTo: \"UTC\"\n },\n GMT0: {\n aliasTo: \"UTC\"\n },\n \"GTB Standard Time\": {\n aliasTo: \"Europe/Bucharest\"\n },\n \"Georgian Standard Time\": {\n aliasTo: \"Asia/Tbilisi\"\n },\n \"Greenland Standard Time\": {\n aliasTo: \"America/Godthab\"\n },\n Greenwich: {\n aliasTo: \"UTC\"\n },\n \"Greenwich Standard Time\": {\n aliasTo: \"Atlantic/Reykjavik\"\n },\n \"Hawaiian Standard Time\": {\n aliasTo: \"Pacific/Honolulu\"\n },\n \"India Standard Time\": {\n aliasTo: \"Asia/Calcutta\"\n },\n \"Iran Standard Time\": {\n aliasTo: \"Asia/Tehran\"\n },\n \"Israel Standard Time\": {\n aliasTo: \"Asia/Jerusalem\"\n },\n \"Jordan Standard Time\": {\n aliasTo: \"Asia/Amman\"\n },\n \"Kaliningrad Standard Time\": {\n aliasTo: \"Europe/Kaliningrad\"\n },\n \"Korea Standard Time\": {\n aliasTo: \"Asia/Seoul\"\n },\n \"Libya Standard Time\": {\n aliasTo: \"Africa/Tripoli\"\n },\n \"Line Islands Standard Time\": {\n aliasTo: \"Pacific/Kiritimati\"\n },\n \"Magadan Standard Time\": {\n aliasTo: \"Asia/Magadan\"\n },\n \"Mauritius Standard Time\": {\n aliasTo: \"Indian/Mauritius\"\n },\n \"Middle East Standard Time\": {\n aliasTo: \"Asia/Beirut\"\n },\n \"Montevideo Standard Time\": {\n aliasTo: \"America/Montevideo\"\n },\n \"Morocco Standard Time\": {\n aliasTo: \"Africa/Casablanca\"\n },\n \"Mountain Standard Time\": {\n aliasTo: \"America/Denver\"\n },\n \"Mountain Standard Time (Mexico)\": {\n aliasTo: \"America/Chihuahua\"\n },\n \"Myanmar Standard Time\": {\n aliasTo: \"Asia/Rangoon\"\n },\n \"N. Central Asia Standard Time\": {\n aliasTo: \"Asia/Novosibirsk\"\n },\n \"Namibia Standard Time\": {\n aliasTo: \"Africa/Windhoek\"\n },\n \"Nepal Standard Time\": {\n aliasTo: \"Asia/Katmandu\"\n },\n \"New Zealand Standard Time\": {\n aliasTo: \"Pacific/Auckland\"\n },\n \"Newfoundland Standard Time\": {\n aliasTo: \"America/St_Johns\"\n },\n \"North Asia East Standard Time\": {\n aliasTo: \"Asia/Irkutsk\"\n },\n \"North Asia Standard Time\": {\n aliasTo: \"Asia/Krasnoyarsk\"\n },\n \"Pacific SA Standard Time\": {\n aliasTo: \"America/Santiago\"\n },\n \"Pacific Standard Time\": {\n aliasTo: \"America/Los_Angeles\"\n },\n \"Pacific Standard Time (Mexico)\": {\n aliasTo: \"America/Santa_Isabel\"\n },\n \"Pacific/Johnston\": {\n aliasTo: \"Pacific/Honolulu\"\n },\n \"Pakistan Standard Time\": {\n aliasTo: \"Asia/Karachi\"\n },\n \"Paraguay Standard Time\": {\n aliasTo: \"America/Asuncion\"\n },\n \"Romance Standard Time\": {\n aliasTo: \"Europe/Paris\"\n },\n \"Russia Time Zone 10\": {\n aliasTo: \"Asia/Srednekolymsk\"\n },\n \"Russia Time Zone 11\": {\n aliasTo: \"Asia/Kamchatka\"\n },\n \"Russia Time Zone 3\": {\n aliasTo: \"Europe/Samara\"\n },\n \"Russian Standard Time\": {\n aliasTo: \"Europe/Moscow\"\n },\n \"SA Eastern Standard Time\": {\n aliasTo: \"America/Cayenne\"\n },\n \"SA Pacific Standard Time\": {\n aliasTo: \"America/Bogota\"\n },\n \"SA Western Standard Time\": {\n aliasTo: \"America/La_Paz\"\n },\n \"SE Asia Standard Time\": {\n aliasTo: \"Asia/Bangkok\"\n },\n \"Samoa Standard Time\": {\n aliasTo: \"Pacific/Apia\"\n },\n \"Singapore Standard Time\": {\n aliasTo: \"Asia/Singapore\"\n },\n \"South Africa Standard Time\": {\n aliasTo: \"Africa/Johannesburg\"\n },\n \"Sri Lanka Standard Time\": {\n aliasTo: \"Asia/Colombo\"\n },\n \"Syria Standard Time\": {\n aliasTo: \"Asia/Damascus\"\n },\n \"Taipei Standard Time\": {\n aliasTo: \"Asia/Taipei\"\n },\n \"Tasmania Standard Time\": {\n aliasTo: \"Australia/Hobart\"\n },\n \"Tokyo Standard Time\": {\n aliasTo: \"Asia/Tokyo\"\n },\n \"Tonga Standard Time\": {\n aliasTo: \"Pacific/Tongatapu\"\n },\n \"Turkey Standard Time\": {\n aliasTo: \"Europe/Istanbul\"\n },\n UCT: {\n aliasTo: \"UTC\"\n },\n \"US Eastern Standard Time\": {\n aliasTo: \"America/Indiana/Indianapolis\"\n },\n \"US Mountain Standard Time\": {\n aliasTo: \"America/Phoenix\"\n },\n \"US/Central\": {\n aliasTo: \"America/Chicago\"\n },\n \"US/Eastern\": {\n aliasTo: \"America/New_York\"\n },\n \"US/Mountain\": {\n aliasTo: \"America/Denver\"\n },\n \"US/Pacific\": {\n aliasTo: \"America/Los_Angeles\"\n },\n \"US/Pacific-New\": {\n aliasTo: \"America/Los_Angeles\"\n },\n \"Ulaanbaatar Standard Time\": {\n aliasTo: \"Asia/Ulaanbaatar\"\n },\n Universal: {\n aliasTo: \"UTC\"\n },\n \"Venezuela Standard Time\": {\n aliasTo: \"America/Caracas\"\n },\n \"Vladivostok Standard Time\": {\n aliasTo: \"Asia/Vladivostok\"\n },\n \"W. Australia Standard Time\": {\n aliasTo: \"Australia/Perth\"\n },\n \"W. Central Africa Standard Time\": {\n aliasTo: \"Africa/Lagos\"\n },\n \"W. Europe Standard Time\": {\n aliasTo: \"Europe/Berlin\"\n },\n \"West Asia Standard Time\": {\n aliasTo: \"Asia/Tashkent\"\n },\n \"West Pacific Standard Time\": {\n aliasTo: \"Pacific/Port_Moresby\"\n },\n \"Yakutsk Standard Time\": {\n aliasTo: \"Asia/Yakutsk\"\n },\n Z: {\n aliasTo: \"UTC\"\n },\n Zulu: {\n aliasTo: \"UTC\"\n },\n utc: {\n aliasTo: \"UTC\"\n }\n};\nconst zones = {\n \"Africa/Abidjan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0051900\",\n longitude: \"-0040200\"\n },\n \"Africa/Accra\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Addis_Ababa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Algiers\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0364700\",\n longitude: \"+0030300\"\n },\n \"Africa/Asmara\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Asmera\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Bamako\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Bangui\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Banjul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Bissau\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0115100\",\n longitude: \"-0153500\"\n },\n \"Africa/Blantyre\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Brazzaville\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Bujumbura\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Cairo\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700424T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=-1FR\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701030T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1FR\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0300300\",\n longitude: \"+0311500\"\n },\n \"Africa/Casablanca\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:+01\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0333900\",\n longitude: \"-0073500\"\n },\n \"Africa/Ceuta\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0355300\",\n longitude: \"-0051900\"\n },\n \"Africa/Conakry\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Dakar\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Dar_es_Salaam\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Djibouti\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Douala\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/El_Aaiun\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:+01\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0270900\",\n longitude: \"-0131200\"\n },\n \"Africa/Freetown\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Gaborone\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Harare\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Johannesburg\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:SAST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0261500\",\n longitude: \"+0280000\"\n },\n \"Africa/Juba\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0045100\",\n longitude: \"+0313700\"\n },\n \"Africa/Kampala\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Khartoum\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0153600\",\n longitude: \"+0323200\"\n },\n \"Africa/Kigali\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Kinshasa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Lagos\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0062700\",\n longitude: \"+0032400\"\n },\n \"Africa/Libreville\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Lome\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Luanda\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Lubumbashi\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Lusaka\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Malabo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Maputo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0255800\",\n longitude: \"+0323500\"\n },\n \"Africa/Maseru\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:SAST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Mbabane\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:SAST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Mogadishu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Monrovia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0061800\",\n longitude: \"-0104700\"\n },\n \"Africa/Nairobi\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0011700\",\n longitude: \"+0364900\"\n },\n \"Africa/Ndjamena\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0120700\",\n longitude: \"+0150300\"\n },\n \"Africa/Niamey\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Nouakchott\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Ouagadougou\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Porto-Novo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Sao_Tome\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0002000\",\n longitude: \"+0064400\"\n },\n \"Africa/Timbuktu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Africa/Tripoli\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0325400\",\n longitude: \"+0131100\"\n },\n \"Africa/Tunis\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0364800\",\n longitude: \"+0101100\"\n },\n \"Africa/Windhoek\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0223400\",\n longitude: \"+0170600\"\n },\n \"America/Adak\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:HDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0515248\",\n longitude: \"-1763929\"\n },\n \"America/Anchorage\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0611305\",\n longitude: \"-1495401\"\n },\n \"America/Anguilla\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Antigua\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Araguaina\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0071200\",\n longitude: \"-0481200\"\n },\n \"America/Argentina/Buenos_Aires\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0343600\",\n longitude: \"-0582700\"\n },\n \"America/Argentina/Catamarca\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0282800\",\n longitude: \"-0654700\"\n },\n \"America/Argentina/ComodRivadavia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Argentina/Cordoba\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0312400\",\n longitude: \"-0641100\"\n },\n \"America/Argentina/Jujuy\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0241100\",\n longitude: \"-0651800\"\n },\n \"America/Argentina/La_Rioja\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0292600\",\n longitude: \"-0665100\"\n },\n \"America/Argentina/Mendoza\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0325300\",\n longitude: \"-0684900\"\n },\n \"America/Argentina/Rio_Gallegos\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0513800\",\n longitude: \"-0691300\"\n },\n \"America/Argentina/Salta\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0244700\",\n longitude: \"-0652500\"\n },\n \"America/Argentina/San_Juan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0313200\",\n longitude: \"-0683100\"\n },\n \"America/Argentina/San_Luis\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0331900\",\n longitude: \"-0662100\"\n },\n \"America/Argentina/Tucuman\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0264900\",\n longitude: \"-0651300\"\n },\n \"America/Argentina/Ushuaia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0544800\",\n longitude: \"-0681800\"\n },\n \"America/Aruba\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Asuncion\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19701004T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700322T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=4SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0251600\",\n longitude: \"-0574000\"\n },\n \"America/Atikokan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Atka\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:HDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Bahia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0125900\",\n longitude: \"-0383100\"\n },\n \"America/Bahia_Banderas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0204800\",\n longitude: \"-1051500\"\n },\n \"America/Barbados\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0130600\",\n longitude: \"-0593700\"\n },\n \"America/Belem\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0012700\",\n longitude: \"-0482900\"\n },\n \"America/Belize\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0173000\",\n longitude: \"-0881200\"\n },\n \"America/Blanc-Sablon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Boa_Vista\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0024900\",\n longitude: \"-0604000\"\n },\n \"America/Bogota\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0043600\",\n longitude: \"-0740500\"\n },\n \"America/Boise\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0433649\",\n longitude: \"-1161209\"\n },\n \"America/Buenos_Aires\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Cambridge_Bay\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0690650\",\n longitude: \"-1050310\"\n },\n \"America/Campo_Grande\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0202700\",\n longitude: \"-0543700\"\n },\n \"America/Cancun\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0210500\",\n longitude: \"-0864600\"\n },\n \"America/Caracas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0103000\",\n longitude: \"-0665600\"\n },\n \"America/Catamarca\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Cayenne\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0045600\",\n longitude: \"-0522000\"\n },\n \"America/Cayman\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Chicago\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0415100\",\n longitude: \"-0873900\"\n },\n \"America/Chihuahua\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0283800\",\n longitude: \"-1060500\"\n },\n \"America/Ciudad_Juarez\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0314400\",\n longitude: \"-1062900\"\n },\n \"America/Coral_Harbour\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Cordoba\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Costa_Rica\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0095600\",\n longitude: \"-0840500\"\n },\n \"America/Creston\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Cuiaba\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0153500\",\n longitude: \"-0560500\"\n },\n \"America/Curacao\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Danmarkshavn\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0764600\",\n longitude: \"-0184000\"\n },\n \"America/Dawson\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0640400\",\n longitude: \"-1392500\"\n },\n \"America/Dawson_Creek\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0554600\",\n longitude: \"-1201400\"\n },\n \"America/Denver\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0394421\",\n longitude: \"-1045903\"\n },\n \"America/Detroit\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0421953\",\n longitude: \"-0830245\"\n },\n \"America/Dominica\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Edmonton\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0533300\",\n longitude: \"-1132800\"\n },\n \"America/Eirunepe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0064000\",\n longitude: \"-0695200\"\n },\n \"America/El_Salvador\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0134200\",\n longitude: \"-0891200\"\n },\n \"America/Ensenada\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Fort_Nelson\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0584800\",\n longitude: \"-1224200\"\n },\n \"America/Fort_Wayne\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Fortaleza\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0034300\",\n longitude: \"-0383000\"\n },\n \"America/Glace_Bay\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0461200\",\n longitude: \"-0595700\"\n },\n \"America/Godthab\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0100\\r\\nTZNAME:-01\\r\\nDTSTART:19700328T230000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SA\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0100\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19701025T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Goose_Bay\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0532000\",\n longitude: \"-0602500\"\n },\n \"America/Grand_Turk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0212800\",\n longitude: \"-0710800\"\n },\n \"America/Grenada\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Guadeloupe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Guatemala\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0143800\",\n longitude: \"-0903100\"\n },\n \"America/Guayaquil\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0021000\",\n longitude: \"-0795000\"\n },\n \"America/Guyana\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0064800\",\n longitude: \"-0581000\"\n },\n \"America/Halifax\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0443900\",\n longitude: \"-0633600\"\n },\n \"America/Havana\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0230800\",\n longitude: \"-0822200\"\n },\n \"America/Hermosillo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0290400\",\n longitude: \"-1105800\"\n },\n \"America/Indiana/Indianapolis\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0394606\",\n longitude: \"-0860929\"\n },\n \"America/Indiana/Knox\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0411745\",\n longitude: \"-0863730\"\n },\n \"America/Indiana/Marengo\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0382232\",\n longitude: \"-0862041\"\n },\n \"America/Indiana/Petersburg\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0382931\",\n longitude: \"-0871643\"\n },\n \"America/Indiana/Tell_City\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0375711\",\n longitude: \"-0864541\"\n },\n \"America/Indiana/Vevay\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0384452\",\n longitude: \"-0850402\"\n },\n \"America/Indiana/Vincennes\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0384038\",\n longitude: \"-0873143\"\n },\n \"America/Indiana/Winamac\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0410305\",\n longitude: \"-0863611\"\n },\n \"America/Indianapolis\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Inuvik\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0682059\",\n longitude: \"-1334300\"\n },\n \"America/Iqaluit\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0634400\",\n longitude: \"-0682800\"\n },\n \"America/Jamaica\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0175805\",\n longitude: \"-0764736\"\n },\n \"America/Jujuy\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Juneau\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0581807\",\n longitude: \"-1342511\"\n },\n \"America/Kentucky/Louisville\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0381515\",\n longitude: \"-0854534\"\n },\n \"America/Kentucky/Monticello\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0364947\",\n longitude: \"-0845057\"\n },\n \"America/Knox_IN\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Kralendijk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/La_Paz\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0163000\",\n longitude: \"-0680900\"\n },\n \"America/Lima\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0120300\",\n longitude: \"-0770300\"\n },\n \"America/Los_Angeles\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0340308\",\n longitude: \"-1181434\"\n },\n \"America/Louisville\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Lower_Princes\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Maceio\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0094000\",\n longitude: \"-0354300\"\n },\n \"America/Managua\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0120900\",\n longitude: \"-0861700\"\n },\n \"America/Manaus\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0030800\",\n longitude: \"-0600100\"\n },\n \"America/Marigot\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Martinique\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0143600\",\n longitude: \"-0610500\"\n },\n \"America/Matamoros\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0255000\",\n longitude: \"-0973000\"\n },\n \"America/Mazatlan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0231300\",\n longitude: \"-1062500\"\n },\n \"America/Mendoza\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Menominee\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0450628\",\n longitude: \"-0873651\"\n },\n \"America/Merida\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0205800\",\n longitude: \"-0893700\"\n },\n \"America/Metlakatla\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0550737\",\n longitude: \"-1313435\"\n },\n \"America/Mexico_City\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0192400\",\n longitude: \"-0990900\"\n },\n \"America/Miquelon\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0470300\",\n longitude: \"-0562000\"\n },\n \"America/Moncton\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0460600\",\n longitude: \"-0644700\"\n },\n \"America/Monterrey\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0254000\",\n longitude: \"-1001900\"\n },\n \"America/Montevideo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0345433\",\n longitude: \"-0561245\"\n },\n \"America/Montreal\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Montserrat\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Nassau\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/New_York\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0404251\",\n longitude: \"-0740023\"\n },\n \"America/Nipigon\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Nome\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0643004\",\n longitude: \"-1652423\"\n },\n \"America/Noronha\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0035100\",\n longitude: \"-0322500\"\n },\n \"America/North_Dakota/Beulah\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0471551\",\n longitude: \"-1014640\"\n },\n \"America/North_Dakota/Center\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0470659\",\n longitude: \"-1011757\"\n },\n \"America/North_Dakota/New_Salem\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0465042\",\n longitude: \"-1012439\"\n },\n \"America/Nuuk\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0100\\r\\nTZNAME:-01\\r\\nDTSTART:19700328T230000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SA\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0100\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19701025T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0641100\",\n longitude: \"-0514400\"\n },\n \"America/Ojinaga\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0293400\",\n longitude: \"-1042500\"\n },\n \"America/Panama\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0085800\",\n longitude: \"-0793200\"\n },\n \"America/Pangnirtung\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Paramaribo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0055000\",\n longitude: \"-0551000\"\n },\n \"America/Phoenix\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0332654\",\n longitude: \"-1120424\"\n },\n \"America/Port-au-Prince\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0183200\",\n longitude: \"-0722000\"\n },\n \"America/Port_of_Spain\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Porto_Acre\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Porto_Velho\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0084600\",\n longitude: \"-0635400\"\n },\n \"America/Puerto_Rico\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0182806\",\n longitude: \"-0660622\"\n },\n \"America/Punta_Arenas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0530900\",\n longitude: \"-0705500\"\n },\n \"America/Rainy_River\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Rankin_Inlet\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0624900\",\n longitude: \"-0920459\"\n },\n \"America/Recife\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0080300\",\n longitude: \"-0345400\"\n },\n \"America/Regina\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0502400\",\n longitude: \"-1043900\"\n },\n \"America/Resolute\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0744144\",\n longitude: \"-0944945\"\n },\n \"America/Rio_Branco\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0095800\",\n longitude: \"-0674800\"\n },\n \"America/Rosario\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Santa_Isabel\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Santarem\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0022600\",\n longitude: \"-0545200\"\n },\n \"America/Santiago\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700405T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700906T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0332700\",\n longitude: \"-0704000\"\n },\n \"America/Santo_Domingo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0182800\",\n longitude: \"-0695400\"\n },\n \"America/Sao_Paulo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0233200\",\n longitude: \"-0463700\"\n },\n \"America/Scoresbysund\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0100\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19701025T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0100\\r\\nTZNAME:-01\\r\\nDTSTART:19700328T230000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SA\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0702900\",\n longitude: \"-0215800\"\n },\n \"America/Shiprock\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Sitka\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0571035\",\n longitude: \"-1351807\"\n },\n \"America/St_Barthelemy\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/St_Johns\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0230\\r\\nTZOFFSETTO:-0330\\r\\nTZNAME:NST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0330\\r\\nTZOFFSETTO:-0230\\r\\nTZNAME:NDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0473400\",\n longitude: \"-0524300\"\n },\n \"America/St_Kitts\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/St_Lucia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/St_Thomas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/St_Vincent\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Swift_Current\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0501700\",\n longitude: \"-1075000\"\n },\n \"America/Tegucigalpa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0140600\",\n longitude: \"-0871300\"\n },\n \"America/Thule\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0763400\",\n longitude: \"-0684700\"\n },\n \"America/Thunder_Bay\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Tijuana\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0323200\",\n longitude: \"-1170100\"\n },\n \"America/Toronto\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0433900\",\n longitude: \"-0792300\"\n },\n \"America/Tortola\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Vancouver\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0491600\",\n longitude: \"-1230700\"\n },\n \"America/Virgin\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"America/Whitehorse\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0604300\",\n longitude: \"-1350300\"\n },\n \"America/Winnipeg\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0495300\",\n longitude: \"-0970900\"\n },\n \"America/Yakutat\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0593249\",\n longitude: \"-1394338\"\n },\n \"America/Yellowknife\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Antarctica/Casey\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0661700\",\n longitude: \"+1103100\"\n },\n \"Antarctica/Davis\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0683500\",\n longitude: \"+0775800\"\n },\n \"Antarctica/DumontDUrville\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Antarctica/Macquarie\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0543000\",\n longitude: \"+1585700\"\n },\n \"Antarctica/Mawson\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0673600\",\n longitude: \"+0625300\"\n },\n \"Antarctica/McMurdo\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:NZDT\\r\\nDTSTART:19700927T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:NZST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Antarctica/Palmer\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0644800\",\n longitude: \"-0640600\"\n },\n \"Antarctica/Rothera\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0673400\",\n longitude: \"-0680800\"\n },\n \"Antarctica/South_Pole\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:NZDT\\r\\nDTSTART:19700927T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:NZST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Antarctica/Syowa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Antarctica/Troll\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:+02\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:+00\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0720041\",\n longitude: \"+0023206\"\n },\n \"Antarctica/Vostok\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0782400\",\n longitude: \"+1065400\"\n },\n \"Arctic/Longyearbyen\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Aden\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Almaty\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0431500\",\n longitude: \"+0765700\"\n },\n \"Asia/Amman\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0315700\",\n longitude: \"+0355600\"\n },\n \"Asia/Anadyr\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0644500\",\n longitude: \"+1772900\"\n },\n \"Asia/Aqtau\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0443100\",\n longitude: \"+0501600\"\n },\n \"Asia/Aqtobe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0501700\",\n longitude: \"+0571000\"\n },\n \"Asia/Ashgabat\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0375700\",\n longitude: \"+0582300\"\n },\n \"Asia/Ashkhabad\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Atyrau\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0470700\",\n longitude: \"+0515600\"\n },\n \"Asia/Baghdad\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0332100\",\n longitude: \"+0442500\"\n },\n \"Asia/Bahrain\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Baku\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0402300\",\n longitude: \"+0495100\"\n },\n \"Asia/Bangkok\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0134500\",\n longitude: \"+1003100\"\n },\n \"Asia/Barnaul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0532200\",\n longitude: \"+0834500\"\n },\n \"Asia/Beirut\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0335300\",\n longitude: \"+0353000\"\n },\n \"Asia/Bishkek\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0425400\",\n longitude: \"+0743600\"\n },\n \"Asia/Brunei\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Calcutta\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0530\\r\\nTZOFFSETTO:+0530\\r\\nTZNAME:IST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Chita\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:+09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0520300\",\n longitude: \"+1132800\"\n },\n \"Asia/Choibalsan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0480400\",\n longitude: \"+1143000\"\n },\n \"Asia/Chongqing\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Chungking\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Colombo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0530\\r\\nTZOFFSETTO:+0530\\r\\nTZNAME:+0530\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0065600\",\n longitude: \"+0795100\"\n },\n \"Asia/Dacca\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Damascus\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0333000\",\n longitude: \"+0361800\"\n },\n \"Asia/Dhaka\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0234300\",\n longitude: \"+0902500\"\n },\n \"Asia/Dili\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:+09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0083300\",\n longitude: \"+1253500\"\n },\n \"Asia/Dubai\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0251800\",\n longitude: \"+0551800\"\n },\n \"Asia/Dushanbe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0383500\",\n longitude: \"+0684800\"\n },\n \"Asia/Famagusta\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0350700\",\n longitude: \"+0335700\"\n },\n \"Asia/Gaza\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700328T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SA\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701031T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SA\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0313000\",\n longitude: \"+0342800\"\n },\n \"Asia/Harbin\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Hebron\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700328T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SA\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701031T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SA\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0313200\",\n longitude: \"+0350542\"\n },\n \"Asia/Ho_Chi_Minh\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0104500\",\n longitude: \"+1064000\"\n },\n \"Asia/Hong_Kong\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:HKT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0221700\",\n longitude: \"+1140900\"\n },\n \"Asia/Hovd\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0480100\",\n longitude: \"+0913900\"\n },\n \"Asia/Irkutsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0521600\",\n longitude: \"+1042000\"\n },\n \"Asia/Istanbul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Jakarta\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:WIB\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0061000\",\n longitude: \"+1064800\"\n },\n \"Asia/Jayapura\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:WIT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0023200\",\n longitude: \"+1404200\"\n },\n \"Asia/Jerusalem\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:IDT\\r\\nDTSTART:19700327T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1FR\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:IST\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0314650\",\n longitude: \"+0351326\"\n },\n \"Asia/Kabul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0430\\r\\nTZOFFSETTO:+0430\\r\\nTZNAME:+0430\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0343100\",\n longitude: \"+0691200\"\n },\n \"Asia/Kamchatka\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0530100\",\n longitude: \"+1583900\"\n },\n \"Asia/Karachi\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:PKT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0245200\",\n longitude: \"+0670300\"\n },\n \"Asia/Kashgar\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Kathmandu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0545\\r\\nTZOFFSETTO:+0545\\r\\nTZNAME:+0545\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0274300\",\n longitude: \"+0851900\"\n },\n \"Asia/Katmandu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0545\\r\\nTZOFFSETTO:+0545\\r\\nTZNAME:+0545\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Khandyga\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:+09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0623923\",\n longitude: \"+1353314\"\n },\n \"Asia/Kolkata\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0530\\r\\nTZOFFSETTO:+0530\\r\\nTZNAME:IST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0223200\",\n longitude: \"+0882200\"\n },\n \"Asia/Krasnoyarsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0560100\",\n longitude: \"+0925000\"\n },\n \"Asia/Kuala_Lumpur\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Kuching\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0013300\",\n longitude: \"+1102000\"\n },\n \"Asia/Kuwait\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Macao\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Macau\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0221150\",\n longitude: \"+1133230\"\n },\n \"Asia/Magadan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0593400\",\n longitude: \"+1504800\"\n },\n \"Asia/Makassar\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:WITA\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0050700\",\n longitude: \"+1192400\"\n },\n \"Asia/Manila\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:PST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0143500\",\n longitude: \"+1210000\"\n },\n \"Asia/Muscat\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Nicosia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0351000\",\n longitude: \"+0332200\"\n },\n \"Asia/Novokuznetsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0534500\",\n longitude: \"+0870700\"\n },\n \"Asia/Novosibirsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0550200\",\n longitude: \"+0825500\"\n },\n \"Asia/Omsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0550000\",\n longitude: \"+0732400\"\n },\n \"Asia/Oral\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0511300\",\n longitude: \"+0512100\"\n },\n \"Asia/Phnom_Penh\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Pontianak\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:WIB\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0000200\",\n longitude: \"+1092000\"\n },\n \"Asia/Pyongyang\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:KST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0390100\",\n longitude: \"+1254500\"\n },\n \"Asia/Qatar\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0251700\",\n longitude: \"+0513200\"\n },\n \"Asia/Qostanay\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0531200\",\n longitude: \"+0633700\"\n },\n \"Asia/Qyzylorda\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0444800\",\n longitude: \"+0652800\"\n },\n \"Asia/Rangoon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0630\\r\\nTZOFFSETTO:+0630\\r\\nTZNAME:+0630\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Riyadh\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0243800\",\n longitude: \"+0464300\"\n },\n \"Asia/Saigon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Sakhalin\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0465800\",\n longitude: \"+1424200\"\n },\n \"Asia/Samarkand\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0394000\",\n longitude: \"+0664800\"\n },\n \"Asia/Seoul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:KST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0373300\",\n longitude: \"+1265800\"\n },\n \"Asia/Shanghai\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0311400\",\n longitude: \"+1212800\"\n },\n \"Asia/Singapore\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0011700\",\n longitude: \"+1035100\"\n },\n \"Asia/Srednekolymsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0672800\",\n longitude: \"+1534300\"\n },\n \"Asia/Taipei\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0250300\",\n longitude: \"+1213000\"\n },\n \"Asia/Tashkent\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0412000\",\n longitude: \"+0691800\"\n },\n \"Asia/Tbilisi\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0414300\",\n longitude: \"+0444900\"\n },\n \"Asia/Tehran\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0330\\r\\nTZOFFSETTO:+0330\\r\\nTZNAME:+0330\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0354000\",\n longitude: \"+0512600\"\n },\n \"Asia/Tel_Aviv\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:IDT\\r\\nDTSTART:19700327T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1FR\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:IST\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Thimbu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Thimphu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0272800\",\n longitude: \"+0893900\"\n },\n \"Asia/Tokyo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:JST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0353916\",\n longitude: \"+1394441\"\n },\n \"Asia/Tomsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0563000\",\n longitude: \"+0845800\"\n },\n \"Asia/Ujung_Pandang\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:WITA\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Ulaanbaatar\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0475500\",\n longitude: \"+1065300\"\n },\n \"Asia/Ulan_Bator\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:+08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Urumqi\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0434800\",\n longitude: \"+0873500\"\n },\n \"Asia/Ust-Nera\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0643337\",\n longitude: \"+1431336\"\n },\n \"Asia/Vientiane\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Asia/Vladivostok\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0431000\",\n longitude: \"+1315600\"\n },\n \"Asia/Yakutsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:+09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0620000\",\n longitude: \"+1294000\"\n },\n \"Asia/Yangon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0630\\r\\nTZOFFSETTO:+0630\\r\\nTZNAME:+0630\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0164700\",\n longitude: \"+0961000\"\n },\n \"Asia/Yekaterinburg\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0565100\",\n longitude: \"+0603600\"\n },\n \"Asia/Yerevan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0401100\",\n longitude: \"+0443000\"\n },\n \"Atlantic/Azores\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:+00\\r\\nDTSTART:19700329T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:-0100\\r\\nTZNAME:-01\\r\\nDTSTART:19701025T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0374400\",\n longitude: \"-0254000\"\n },\n \"Atlantic/Bermuda\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0321700\",\n longitude: \"-0644600\"\n },\n \"Atlantic/Canary\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WEST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:WET\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0280600\",\n longitude: \"-0152400\"\n },\n \"Atlantic/Cape_Verde\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0100\\r\\nTZOFFSETTO:-0100\\r\\nTZNAME:-01\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0145500\",\n longitude: \"-0233100\"\n },\n \"Atlantic/Faeroe\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WEST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:WET\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Atlantic/Faroe\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WEST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:WET\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0620100\",\n longitude: \"-0064600\"\n },\n \"Atlantic/Jan_Mayen\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Atlantic/Madeira\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WEST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:WET\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0323800\",\n longitude: \"-0165400\"\n },\n \"Atlantic/Reykjavik\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Atlantic/South_Georgia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0541600\",\n longitude: \"-0363200\"\n },\n \"Atlantic/St_Helena\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Atlantic/Stanley\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0514200\",\n longitude: \"-0575100\"\n },\n \"Australia/ACT\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/Adelaide\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:ACDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0345500\",\n longitude: \"+1383500\"\n },\n \"Australia/Brisbane\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0272800\",\n longitude: \"+1530200\"\n },\n \"Australia/Broken_Hill\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:ACDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0315700\",\n longitude: \"+1412700\"\n },\n \"Australia/Canberra\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/Currie\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Australia/Darwin\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0122800\",\n longitude: \"+1305000\"\n },\n \"Australia/Eucla\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0845\\r\\nTZOFFSETTO:+0845\\r\\nTZNAME:+0845\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0314300\",\n longitude: \"+1285200\"\n },\n \"Australia/Hobart\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0425300\",\n longitude: \"+1471900\"\n },\n \"Australia/LHI\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:+1030\\r\\nDTSTART:19700405T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/Lindeman\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0201600\",\n longitude: \"+1490000\"\n },\n \"Australia/Lord_Howe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:+1030\\r\\nDTSTART:19700405T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0313300\",\n longitude: \"+1590500\"\n },\n \"Australia/Melbourne\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0374900\",\n longitude: \"+1445800\"\n },\n \"Australia/NSW\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/North\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Australia/Perth\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:AWST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0315700\",\n longitude: \"+1155100\"\n },\n \"Australia/Queensland\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Australia/South\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:ACDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/Sydney\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0335200\",\n longitude: \"+1511300\"\n },\n \"Australia/Tasmania\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Australia/Victoria\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:AEST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:AEDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Australia/West\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0800\\r\\nTZOFFSETTO:+0800\\r\\nTZNAME:AWST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Australia/Yancowinna\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1030\\r\\nTZOFFSETTO:+0930\\r\\nTZNAME:ACST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0930\\r\\nTZOFFSETTO:+1030\\r\\nTZNAME:ACDT\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Brazil/Acre\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Brazil/DeNoronha\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0200\\r\\nTZOFFSETTO:-0200\\r\\nTZNAME:-02\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Brazil/East\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Brazil/West\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Atlantic\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:ADT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:AST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Central\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Eastern\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Mountain\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Newfoundland\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0230\\r\\nTZOFFSETTO:-0330\\r\\nTZNAME:NST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0330\\r\\nTZOFFSETTO:-0230\\r\\nTZNAME:NDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Canada/Pacific\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Saskatchewan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Canada/Yukon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Chile/Continental\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0300\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:-04\\r\\nDTSTART:19700405T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0300\\r\\nTZNAME:-03\\r\\nDTSTART:19700906T000000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Chile/EasterIsland\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:-06\\r\\nDTSTART:19700404T220000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SA\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700905T220000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=1SA\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Europe/Amsterdam\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Andorra\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0423000\",\n longitude: \"+0013100\"\n },\n \"Europe/Astrakhan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0462100\",\n longitude: \"+0480300\"\n },\n \"Europe/Athens\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0375800\",\n longitude: \"+0234300\"\n },\n \"Europe/Belfast\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:BST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Belgrade\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0445000\",\n longitude: \"+0203000\"\n },\n \"Europe/Berlin\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0523000\",\n longitude: \"+0132200\"\n },\n \"Europe/Bratislava\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Brussels\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0505000\",\n longitude: \"+0042000\"\n },\n \"Europe/Bucharest\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0442600\",\n longitude: \"+0260600\"\n },\n \"Europe/Budapest\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0473000\",\n longitude: \"+0190500\"\n },\n \"Europe/Busingen\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Chisinau\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0470000\",\n longitude: \"+0285000\"\n },\n \"Europe/Copenhagen\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Dublin\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:IST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0532000\",\n longitude: \"-0061500\"\n },\n \"Europe/Gibraltar\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0360800\",\n longitude: \"-0052100\"\n },\n \"Europe/Guernsey\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:BST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Helsinki\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0601000\",\n longitude: \"+0245800\"\n },\n \"Europe/Isle_of_Man\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:BST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Istanbul\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0410100\",\n longitude: \"+0285800\"\n },\n \"Europe/Jersey\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:BST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Kaliningrad\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0544300\",\n longitude: \"+0203000\"\n },\n \"Europe/Kiev\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Europe/Kirov\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:MSK\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0583600\",\n longitude: \"+0493900\"\n },\n \"Europe/Kyiv\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0502600\",\n longitude: \"+0303100\"\n },\n \"Europe/Lisbon\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:WET\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:WEST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"+0384300\",\n longitude: \"-0090800\"\n },\n \"Europe/Ljubljana\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/London\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0000\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:BST\\r\\nDTSTART:19700329T010000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0000\\r\\nTZNAME:GMT\\r\\nDTSTART:19701025T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0513030\",\n longitude: \"+0000731\"\n },\n \"Europe/Luxembourg\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Madrid\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0402400\",\n longitude: \"-0034100\"\n },\n \"Europe/Malta\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0355400\",\n longitude: \"+0143100\"\n },\n \"Europe/Mariehamn\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Minsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:+03\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0535400\",\n longitude: \"+0273400\"\n },\n \"Europe/Monaco\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Moscow\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:MSK\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0554521\",\n longitude: \"+0373704\"\n },\n \"Europe/Nicosia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Europe/Oslo\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Paris\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0485200\",\n longitude: \"+0022000\"\n },\n \"Europe/Podgorica\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Prague\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0500500\",\n longitude: \"+0142600\"\n },\n \"Europe/Riga\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0565700\",\n longitude: \"+0240600\"\n },\n \"Europe/Rome\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0415400\",\n longitude: \"+0122900\"\n },\n \"Europe/Samara\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0531200\",\n longitude: \"+0500900\"\n },\n \"Europe/San_Marino\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Sarajevo\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Saratov\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0513400\",\n longitude: \"+0460200\"\n },\n \"Europe/Simferopol\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:MSK\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0445700\",\n longitude: \"+0340600\"\n },\n \"Europe/Skopje\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Sofia\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0424100\",\n longitude: \"+0231900\"\n },\n \"Europe/Stockholm\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Tallinn\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0592500\",\n longitude: \"+0244500\"\n },\n \"Europe/Tirane\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0412000\",\n longitude: \"+0195000\"\n },\n \"Europe/Tiraspol\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Ulyanovsk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0542000\",\n longitude: \"+0482400\"\n },\n \"Europe/Uzhgorod\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Europe/Vaduz\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Vatican\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Vienna\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0481300\",\n longitude: \"+0162000\"\n },\n \"Europe/Vilnius\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0544100\",\n longitude: \"+0251900\"\n },\n \"Europe/Volgograd\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:MSK\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0484400\",\n longitude: \"+0442500\"\n },\n \"Europe/Warsaw\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0521500\",\n longitude: \"+0210000\"\n },\n \"Europe/Zagreb\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Europe/Zaporozhye\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:EET\\r\\nDTSTART:19701025T040000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EEST\\r\\nDTSTART:19700329T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\"\n ]\n },\n \"Europe/Zurich\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+0100\\r\\nTZOFFSETTO:+0200\\r\\nTZNAME:CEST\\r\\nDTSTART:19700329T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0200\\r\\nTZOFFSETTO:+0100\\r\\nTZNAME:CET\\r\\nDTSTART:19701025T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0472300\",\n longitude: \"+0083200\"\n },\n \"Indian/Antananarivo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Chagos\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0600\\r\\nTZOFFSETTO:+0600\\r\\nTZNAME:+06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0072000\",\n longitude: \"+0722500\"\n },\n \"Indian/Christmas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0700\\r\\nTZOFFSETTO:+0700\\r\\nTZNAME:+07\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Cocos\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0630\\r\\nTZOFFSETTO:+0630\\r\\nTZNAME:+0630\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Comoro\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Kerguelen\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Mahe\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Maldives\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0500\\r\\nTZOFFSETTO:+0500\\r\\nTZNAME:+05\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0041000\",\n longitude: \"+0733000\"\n },\n \"Indian/Mauritius\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0201000\",\n longitude: \"+0573000\"\n },\n \"Indian/Mayotte\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0300\\r\\nTZOFFSETTO:+0300\\r\\nTZNAME:EAT\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Indian/Reunion\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0400\\r\\nTZOFFSETTO:+0400\\r\\nTZNAME:+04\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Mexico/BajaNorte\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"Mexico/BajaSur\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Mexico/General\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Apia\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:+13\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0135000\",\n longitude: \"-1714400\"\n },\n \"Pacific/Auckland\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:NZDT\\r\\nDTSTART:19700927T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:NZST\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0365200\",\n longitude: \"+1744600\"\n },\n \"Pacific/Bougainville\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0061300\",\n longitude: \"+1553400\"\n },\n \"Pacific/Chatham\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1245\\r\\nTZOFFSETTO:+1345\\r\\nTZNAME:+1345\\r\\nDTSTART:19700927T024500\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=-1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1345\\r\\nTZOFFSETTO:+1245\\r\\nTZNAME:+1245\\r\\nDTSTART:19700405T034500\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0435700\",\n longitude: \"-1763300\"\n },\n \"Pacific/Chuuk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Easter\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:-06\\r\\nDTSTART:19700404T220000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SA\\r\\nEND:STANDARD\",\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:-05\\r\\nDTSTART:19700905T220000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=1SA\\r\\nEND:DAYLIGHT\"\n ],\n latitude: \"-0270900\",\n longitude: \"-1092600\"\n },\n \"Pacific/Efate\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0174000\",\n longitude: \"+1682500\"\n },\n \"Pacific/Enderbury\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:+13\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Fakaofo\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:+13\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0092200\",\n longitude: \"-1711400\"\n },\n \"Pacific/Fiji\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0180800\",\n longitude: \"+1782500\"\n },\n \"Pacific/Funafuti\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Galapagos\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:-06\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0005400\",\n longitude: \"-0893600\"\n },\n \"Pacific/Gambier\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:-09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0230800\",\n longitude: \"-1345700\"\n },\n \"Pacific/Guadalcanal\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0093200\",\n longitude: \"+1601200\"\n },\n \"Pacific/Guam\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:ChST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0132800\",\n longitude: \"+1444500\"\n },\n \"Pacific/Honolulu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0211825\",\n longitude: \"-1575130\"\n },\n \"Pacific/Johnston\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Kanton\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:+13\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0024700\",\n longitude: \"-1714300\"\n },\n \"Pacific/Kiritimati\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1400\\r\\nTZOFFSETTO:+1400\\r\\nTZNAME:+14\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0015200\",\n longitude: \"-1572000\"\n },\n \"Pacific/Kosrae\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0051900\",\n longitude: \"+1625900\"\n },\n \"Pacific/Kwajalein\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0090500\",\n longitude: \"+1672000\"\n },\n \"Pacific/Majuro\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Marquesas\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0930\\r\\nTZOFFSETTO:-0930\\r\\nTZNAME:-0930\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0090000\",\n longitude: \"-1393000\"\n },\n \"Pacific/Midway\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1100\\r\\nTZOFFSETTO:-1100\\r\\nTZNAME:SST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Nauru\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0003100\",\n longitude: \"+1665500\"\n },\n \"Pacific/Niue\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1100\\r\\nTZOFFSETTO:-1100\\r\\nTZNAME:-11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0190100\",\n longitude: \"-1695500\"\n },\n \"Pacific/Norfolk\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19701004T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=1SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700405T030000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0290300\",\n longitude: \"+1675800\"\n },\n \"Pacific/Noumea\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0221600\",\n longitude: \"+1662700\"\n },\n \"Pacific/Pago_Pago\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1100\\r\\nTZOFFSETTO:-1100\\r\\nTZNAME:SST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0141600\",\n longitude: \"-1704200\"\n },\n \"Pacific/Palau\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+0900\\r\\nTZOFFSETTO:+0900\\r\\nTZNAME:+09\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0072000\",\n longitude: \"+1342900\"\n },\n \"Pacific/Pitcairn\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:-08\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0250400\",\n longitude: \"-1300500\"\n },\n \"Pacific/Pohnpei\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Ponape\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1100\\r\\nTZOFFSETTO:+1100\\r\\nTZNAME:+11\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Port_Moresby\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0093000\",\n longitude: \"+1471000\"\n },\n \"Pacific/Rarotonga\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:-10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0211400\",\n longitude: \"-1594600\"\n },\n \"Pacific/Saipan\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:ChST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Samoa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1100\\r\\nTZOFFSETTO:-1100\\r\\nTZNAME:SST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Tahiti\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:-10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0173200\",\n longitude: \"-1493400\"\n },\n \"Pacific/Tarawa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"+0012500\",\n longitude: \"+1730000\"\n },\n \"Pacific/Tongatapu\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1300\\r\\nTZOFFSETTO:+1300\\r\\nTZNAME:+13\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ],\n latitude: \"-0210800\",\n longitude: \"-1751200\"\n },\n \"Pacific/Truk\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Wake\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Wallis\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1200\\r\\nTZOFFSETTO:+1200\\r\\nTZNAME:+12\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"Pacific/Yap\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:+1000\\r\\nTZOFFSETTO:+1000\\r\\nTZNAME:+10\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Alaska\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:AKDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:AKST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Aleutian\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-0900\\r\\nTZNAME:HDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0900\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Arizona\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Central\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/East-Indiana\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Eastern\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Hawaii\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1000\\r\\nTZOFFSETTO:-1000\\r\\nTZNAME:HST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Indiana-Starke\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:CDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:CST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Michigan\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0500\\r\\nTZOFFSETTO:-0400\\r\\nTZNAME:EDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0400\\r\\nTZOFFSETTO:-0500\\r\\nTZNAME:EST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Mountain\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0600\\r\\nTZNAME:MDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0600\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:MST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Pacific\": {\n ics: [\n \"BEGIN:DAYLIGHT\\r\\nTZOFFSETFROM:-0800\\r\\nTZOFFSETTO:-0700\\r\\nTZNAME:PDT\\r\\nDTSTART:19700308T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU\\r\\nEND:DAYLIGHT\",\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-0700\\r\\nTZOFFSETTO:-0800\\r\\nTZNAME:PST\\r\\nDTSTART:19701101T020000\\r\\nRRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU\\r\\nEND:STANDARD\"\n ]\n },\n \"US/Samoa\": {\n ics: [\n \"BEGIN:STANDARD\\r\\nTZOFFSETFROM:-1100\\r\\nTZOFFSETTO:-1100\\r\\nTZNAME:SST\\r\\nDTSTART:19700101T000000\\r\\nEND:STANDARD\"\n ]\n }\n};\nconst tzData = {\n version,\n aliases,\n zones\n};\nclass TimezoneManager {\n /**\n * Constructor\n */\n constructor() {\n this._aliases = /* @__PURE__ */ new Map();\n this._pendingAliases = [];\n this._timezones = /* @__PURE__ */ new Map();\n }\n /**\n * Gets a timezone for the given id\n *\n * @param {string} timezoneId The id of the timezone\n * @return {Timezone|null}\n */\n getTimezoneForId(timezoneId) {\n return this._getTimezoneForIdRec(timezoneId, 0);\n }\n _getTimezoneForIdRec(timezoneId, level) {\n if (this._timezones.has(timezoneId)) {\n return this._timezones.get(timezoneId);\n }\n if (level >= 20) {\n console.error(\"TimezoneManager.getTimezoneForIdRec() exceeds recursion limits\");\n return null;\n }\n if (this._aliases.has(timezoneId)) {\n const resolvedTimezoneId = this._aliases.get(timezoneId);\n return this._getTimezoneForIdRec(resolvedTimezoneId, level + 1);\n }\n return null;\n }\n /**\n * Checks if there is a timezone for the given id stored in this manager\n *\n * @param {string} timezoneId The id of the timezone\n * @return {boolean}\n */\n hasTimezoneForId(timezoneId) {\n return this._timezones.has(timezoneId) || this._aliases.has(timezoneId);\n }\n /**\n * Checks if the given timezone id is an alias\n *\n * @param {string} timezoneId The id of the timezone\n * @return {boolean}\n */\n isAlias(timezoneId) {\n return !this._timezones.has(timezoneId) && this._aliases.has(timezoneId);\n }\n /**\n * Lists all timezones\n *\n * @param {boolean=} includeAliases Whether or not to include aliases\n * @return {string[]}\n */\n listAllTimezones(includeAliases = false) {\n const timezones = Array.from(this._timezones.keys());\n if (includeAliases) {\n return timezones.concat(Array.from(this._aliases.keys()));\n }\n return timezones;\n }\n /**\n * Registers a timezone\n *\n * @param {Timezone} timezone The timezone-object to register\n */\n registerTimezone(timezone) {\n this._timezones.set(timezone.timezoneId, timezone);\n ICAL.TimezoneService.register(timezone.timezoneId, timezone.toICALTimezone());\n this._pendingAliases = this._pendingAliases.filter(([aliasName, timezoneId]) => {\n if (timezoneId !== timezone.timezoneId) {\n return true;\n }\n ICAL.TimezoneService.register(aliasName, timezone.toICALTimezone());\n return false;\n });\n }\n registerDefaultTimezones() {\n console.debug(`@nextcloud/calendar-js app is using version ${tzData.version} of the timezone database`);\n for (const tzid in tzData.zones) {\n if (Object.prototype.hasOwnProperty.call(tzData.zones, [tzid])) {\n const ics = [\n \"BEGIN:VTIMEZONE\",\n \"TZID:\" + tzid,\n ...tzData.zones[tzid].ics,\n \"END:VTIMEZONE\"\n ].join(\"\\r\\n\");\n this.registerTimezoneFromICS(tzid, ics);\n }\n }\n for (const tzid in tzData.aliases) {\n if (Object.prototype.hasOwnProperty.call(tzData.aliases, [tzid])) {\n this.registerAlias(tzid, tzData.aliases[tzid].aliasTo);\n }\n }\n }\n /**\n * Registers a timezone based on ics data\n *\n * @param {string} timezoneId The id of the timezone\n * @param {string} ics The iCalendar timezone definition\n */\n registerTimezoneFromICS(timezoneId, ics) {\n const timezone = new Timezone(timezoneId, ics);\n this.registerTimezone(timezone);\n }\n /**\n * Registers a new timezone-alias\n *\n * @param {string} aliasName The timezone-id of the alias\n * @param {string} timezoneId The timezone-id to resolve the alias to\n */\n registerAlias(aliasName, timezoneId) {\n this._aliases.set(aliasName, timezoneId);\n const resolvedTimezone = this.getTimezoneForId(timezoneId);\n if (!resolvedTimezone) {\n this._pendingAliases.push([aliasName, timezoneId]);\n return;\n }\n ICAL.TimezoneService.register(aliasName, resolvedTimezone.toICALTimezone());\n }\n /**\n * Unregisters a timezone\n *\n * @param {string} timezoneId Unregisters a timezone by Id\n */\n unregisterTimezones(timezoneId) {\n this._timezones.delete(timezoneId);\n ICAL.TimezoneService.remove(timezoneId);\n }\n /**\n * Unregisters a timezone-alias\n *\n * @param {string} aliasName The alias to unregister\n */\n unregisterAlias(aliasName) {\n this._aliases.delete(aliasName);\n this._pendingAliases = this._pendingAliases.filter(([pendingAliasName]) => pendingAliasName !== aliasName);\n ICAL.TimezoneService.remove(aliasName);\n }\n /**\n * Clear all timezones\n */\n clearAllTimezones() {\n this._aliases = /* @__PURE__ */ new Map();\n this._pendingAliases = [];\n this._timezones = /* @__PURE__ */ new Map();\n ICAL.TimezoneService.reset();\n timezoneManager.registerTimezone(Timezone.utc);\n timezoneManager.registerTimezone(Timezone.floating);\n timezoneManager.registerAlias(\"GMT\", Timezone.utc.timezoneId);\n timezoneManager.registerAlias(\"Z\", Timezone.utc.timezoneId);\n }\n}\nconst timezoneManager = new TimezoneManager();\ntimezoneManager.clearAllTimezones();\nfunction getTimezoneManager() {\n return timezoneManager;\n}\nfunction isOlsonTimezone(tzName) {\n const hasSlash = tzName.indexOf(\"/\") !== -1;\n const hasSpace = tzName.indexOf(\" \") !== -1;\n const startsWithETC = tzName.startsWith(\"Etc\");\n const startsWithUS = tzName.startsWith(\"US/\");\n return hasSlash && !hasSpace && !startsWithETC && !startsWithUS;\n}\nfunction getSortedTimezoneList(timezoneList = [], additionalTimezones = [], globalTimezoneName = \"Global\") {\n const sortedByContinent = {};\n const sortedList = [];\n for (const timezoneId of timezoneList) {\n const components = timezoneId.split(\"/\");\n let [continent, name] = [components.shift(), components.join(\"/\")];\n if (!name) {\n name = continent;\n continent = globalTimezoneName;\n }\n sortedByContinent[continent] = sortedByContinent[continent] || {\n continent,\n regions: []\n };\n sortedByContinent[continent].regions.push({\n label: getReadableTimezoneName(name),\n cities: [],\n timezoneId\n });\n }\n for (const additionalTimezone of additionalTimezones) {\n const { continent, label, timezoneId } = additionalTimezone;\n sortedByContinent[continent] = sortedByContinent[continent] || {\n continent,\n regions: []\n };\n sortedByContinent[continent].regions.push({\n label,\n cities: [],\n timezoneId\n });\n }\n for (const continent in sortedByContinent) {\n if (!Object.prototype.hasOwnProperty.call(sortedByContinent, continent)) {\n continue;\n }\n sortedByContinent[continent].regions.sort((a, b) => {\n if (a.label < b.label) {\n return -1;\n }\n return 1;\n });\n sortedList.push(sortedByContinent[continent]);\n }\n sortedList.sort((a, b) => {\n if (a.continent < b.continent) {\n return -1;\n }\n return 1;\n });\n return sortedList;\n}\nfunction getReadableTimezoneName(timezoneId) {\n return timezoneId.split(\"_\").join(\" \").replace(\"St \", \"St. \").split(\"/\").join(\" - \");\n}\nexport {\n Timezone,\n getReadableTimezoneName,\n getSortedTimezoneList,\n getTimezoneManager,\n isOlsonTimezone\n};\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.VueSelect=t():e.VueSelect=t()}(\"undefined\"!=typeof self?self:this,(function(){return(()=>{var e={646:e=>{e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t{e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},860:e=>{e.exports=function(e){if(Symbol.iterator in Object(e)||\"[object Arguments]\"===Object.prototype.toString.call(e))return Array.from(e)}},206:e=>{e.exports=function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance\")}},319:(e,t,n)=>{var o=n(646),i=n(860),s=n(206);e.exports=function(e){return o(e)||i(e)||s()}},8:e=>{function t(n){return\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?e.exports=t=function(e){return typeof e}:e.exports=t=function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},t(n)}e.exports=t}},t={};function n(o){var i=t[o];if(void 0!==i)return i.exports;var s=t[o]={exports:{}};return e[o](s,s.exports,n),s.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var o={};return(()=>{\"use strict\";n.r(o),n.d(o,{VueSelect:()=>m,default:()=>_,mixins:()=>O});var e=n(319),t=n.n(e),i=n(8),s=n.n(i),r=n(713),a=n.n(r);const l={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer:function(){this.autoscroll&&this.maybeAdjustScroll()},open:function(e){var t=this;this.autoscroll&&e&&this.$nextTick((function(){return t.maybeAdjustScroll()}))}},methods:{maybeAdjustScroll:function(){var e,t=(null===(e=this.$refs.dropdownMenu)||void 0===e?void 0:e.children[this.typeAheadPointer])||!1;if(t){var n=this.getDropdownViewport(),o=t.getBoundingClientRect(),i=o.top,s=o.bottom,r=o.height;if(in.bottom)return this.$refs.dropdownMenu.scrollTop=t.offsetTop-(n.height-r)}},getDropdownViewport:function(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},c={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){if(this.resetFocusOnOptionsChange)for(var e=0;e=0;e--)if(this.selectable(this.filteredOptions[e])){this.typeAheadPointer=e;break}},typeAheadDown:function(){for(var e=this.typeAheadPointer+1;e0&&void 0!==arguments[0]?arguments[0]:null;return this.mutableLoading=null==e?!this.mutableLoading:e}}};function p(e,t,n,o,i,s,r,a){var l,c=\"function\"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),o&&(c.functional=!0),s&&(c._scopeId=\"data-v-\"+s),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},c._ssrRegister=l):i&&(l=a?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(e,t){return l.call(t),u(e,t)}}else{var p=c.beforeCreate;c.beforeCreate=p?[].concat(p,l):[l]}return{exports:e,options:c}}const d={Deselect:p({},(function(){var e=this.$createElement,t=this._self._c||e;return t(\"svg\",{attrs:{xmlns:\"http://www.w3.org/2000/svg\",width:\"10\",height:\"10\"}},[t(\"path\",{attrs:{d:\"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z\"}})])}),[],!1,null,null,null).exports,OpenIndicator:p({},(function(){var e=this.$createElement,t=this._self._c||e;return t(\"svg\",{attrs:{xmlns:\"http://www.w3.org/2000/svg\",width:\"14\",height:\"10\"}},[t(\"path\",{attrs:{d:\"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z\"}})])}),[],!1,null,null,null).exports},h={inserted:function(e,t,n){var o=n.context;if(o.appendToBody){document.body.appendChild(e);var i=o.$refs.toggle.getBoundingClientRect(),s=i.height,r=i.top,a=i.left,l=i.width,c=window.scrollX||window.pageXOffset,u=window.scrollY||window.pageYOffset;e.unbindPosition=o.calculatePosition(e,o,{width:l+\"px\",left:c+a+\"px\",top:u+r+s+\"px\"})}},unbind:function(e,t,n){n.context.appendToBody&&(e.unbindPosition&&\"function\"==typeof e.unbindPosition&&e.unbindPosition(),e.parentNode&&e.parentNode.removeChild(e))}};const f=function(e){var t={};return Object.keys(e).sort().forEach((function(n){t[n]=e[n]})),JSON.stringify(t)};var y=0;const b=function(){return++y};function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function v(e){for(var t=1;t-1}},filter:{type:Function,default:function(e,t){var n=this;return e.filter((function(e){var o=n.getOptionLabel(e);return\"number\"==typeof o&&(o=o.toString()),n.filterBy(e,o,t)}))}},createOption:{type:Function,default:function(e){return\"object\"===s()(this.optionList[0])?a()({},this.label,e):e}},resetFocusOnOptionsChange:{type:Boolean,default:!0},resetOnOptionsChange:{default:!1,validator:function(e){return[\"function\",\"boolean\"].includes(s()(e))}},clearSearchOnBlur:{type:Function,default:function(e){var t=e.clearSearchOnSelect,n=e.multiple;return t&&!n}},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:\"auto\"},selectOnTab:{type:Boolean,default:!1},selectOnKeyCodes:{type:Array,default:function(){return[13]}},searchInputQuerySelector:{type:String,default:\"[type=search]\"},mapKeydown:{type:Function,default:function(e,t){return e}},appendToBody:{type:Boolean,default:!1},calculatePosition:{type:Function,default:function(e,t,n){var o=n.width,i=n.top,s=n.left;e.style.top=i,e.style.left=s,e.style.width=o}},dropdownShouldOpen:{type:Function,default:function(e){var t=e.noDrop,n=e.open,o=e.mutableLoading;return!t&&(n&&!o)}},keyboardFocusBorder:{type:Boolean,default:!1},uid:{type:[String,Number],default:function(){return b()}}},data:function(){return{search:\"\",open:!1,isComposing:!1,isKeyboardNavigation:!1,pushedTags:[],_value:[]}},computed:{isTrackingValues:function(){return void 0===this.value||this.$options.propsData.hasOwnProperty(\"reduce\")},selectedValue:function(){var e=this.value;return this.isTrackingValues&&(e=this.$data._value),null!=e&&\"\"!==e?[].concat(e):[]},optionList:function(){return this.options.concat(this.pushTags?this.pushedTags:[])},searchEl:function(){return this.$scopedSlots.search?this.$refs.selectedOptions.querySelector(this.searchInputQuerySelector):this.$refs.search},scope:function(){var e=this,t={search:this.search,loading:this.loading,searching:this.searching,filteredOptions:this.filteredOptions};return{search:{attributes:v({id:this.inputId,disabled:this.disabled,placeholder:this.searchPlaceholder,tabindex:this.tabindex,readonly:!this.searchable,role:\"combobox\",\"aria-autocomplete\":\"list\",\"aria-label\":this.ariaLabelCombobox,\"aria-controls\":\"vs-\".concat(this.uid,\"__listbox\"),\"aria-owns\":\"vs-\".concat(this.uid,\"__listbox\"),\"aria-expanded\":this.dropdownOpen.toString(),ref:\"search\",type:\"search\",autocomplete:this.autocomplete,value:this.search},this.dropdownOpen&&this.filteredOptions[this.typeAheadPointer]?{\"aria-activedescendant\":\"vs-\".concat(this.uid,\"__option-\").concat(this.typeAheadPointer)}:{}),events:{compositionstart:function(){return e.isComposing=!0},compositionend:function(){return e.isComposing=!1},keydown:this.onSearchKeyDown,keypress:this.onSearchKeyPress,blur:this.onSearchBlur,focus:this.onSearchFocus,input:function(t){return e.search=t.target.value}}},spinner:{loading:this.mutableLoading},noOptions:{search:this.search,loading:this.mutableLoading,searching:this.searching},openIndicator:{attributes:{ref:\"openIndicator\",role:\"presentation\",class:\"vs__open-indicator\"}},listHeader:t,listFooter:t,header:v({},t,{deselect:this.deselect}),footer:v({},t,{deselect:this.deselect})}},childComponents:function(){return v({},d,{},this.components)},stateClasses:function(){return{\"vs--open\":this.dropdownOpen,\"vs--single\":!this.multiple,\"vs--multiple\":this.multiple,\"vs--searching\":this.searching&&!this.noDrop,\"vs--searchable\":this.searchable&&!this.noDrop,\"vs--unsearchable\":!this.searchable,\"vs--loading\":this.mutableLoading,\"vs--disabled\":this.disabled}},searching:function(){return!!this.search},dropdownOpen:function(){return this.dropdownShouldOpen(this)},searchPlaceholder:function(){return this.isValueEmpty&&this.placeholder?this.placeholder:void 0},filteredOptions:function(){var e=this,t=function(t){return null!==e.limit?t.slice(0,e.limit):t},n=[].concat(this.optionList);if(!this.filterable&&!this.taggable)return t(n);var o=this.search.length?this.filter(n,this.search,this):n;if(this.taggable&&this.search.length){var i=this.createOption(this.search);this.optionExists(i)||o.unshift(i)}return t(o)},isValueEmpty:function(){return 0===this.selectedValue.length},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&!this.isValueEmpty}},watch:{options:function(e,t){var n=this;!this.taggable&&(\"function\"==typeof n.resetOnOptionsChange?n.resetOnOptionsChange(e,t,n.selectedValue):n.resetOnOptionsChange)&&this.clearSelection(),this.value&&this.isTrackingValues&&this.setInternalValueFromOptions(this.value)},value:{immediate:!0,handler:function(e){this.isTrackingValues&&this.setInternalValueFromOptions(e)}},multiple:function(){this.clearSelection()},open:function(e){this.$emit(e?\"open\":\"close\")},search:function(e){e.length&&(this.open=!0)}},created:function(){this.mutableLoading=this.loading,this.$on(\"option:created\",this.pushTag)},methods:{setInternalValueFromOptions:function(e){var t=this;Array.isArray(e)?this.$data._value=e.map((function(e){return t.findOptionFromReducedValue(e)})):this.$data._value=this.findOptionFromReducedValue(e)},select:function(e){this.$emit(\"option:selecting\",e),this.isOptionSelected(e)?this.deselectFromDropdown&&(this.clearable||this.multiple&&this.selectedValue.length>1)&&this.deselect(e):(this.taggable&&!this.optionExists(e)&&this.$emit(\"option:created\",e),this.multiple&&(e=this.selectedValue.concat(e)),this.updateValue(e),this.$emit(\"option:selected\",e)),this.onAfterSelect(e)},deselect:function(e){var t=this;this.$emit(\"option:deselecting\",e),this.updateValue(this.selectedValue.filter((function(n){return!t.optionComparator(n,e)}))),this.$emit(\"option:deselected\",e)},keyboardDeselect:function(e,t){var n,o;this.deselect(e);var i=null===(n=this.$refs.deselectButtons)||void 0===n?void 0:n[t+1],s=null===(o=this.$refs.deselectButtons)||void 0===o?void 0:o[t-1],r=null!=i?i:s;r?r.focus():this.searchEl.focus()},clearSelection:function(){this.updateValue(this.multiple?[]:null),this.searchEl.focus()},onAfterSelect:function(e){var t=this;this.closeOnSelect&&(this.open=!this.open),this.clearSearchOnSelect&&(this.search=\"\"),this.noDrop&&this.multiple&&this.$nextTick((function(){return t.$refs.search.focus()}))},updateValue:function(e){var t=this;void 0===this.value&&(this.$data._value=e),null!==e&&(e=Array.isArray(e)?e.map((function(e){return t.reduce(e)})):this.reduce(e)),this.$emit(\"input\",e)},toggleDropdown:function(e){var n=e.target!==this.searchEl;n&&e.preventDefault();var o=[].concat(t()(this.$refs.deselectButtons||[]),t()([this.$refs.clearButton]||0));void 0===this.searchEl||o.filter(Boolean).some((function(t){return t.contains(e.target)||t===e.target}))?e.preventDefault():this.open&&n?this.searchEl.blur():this.disabled||(this.open=!0,this.searchEl.focus())},isOptionSelected:function(e){var t=this;return this.selectedValue.some((function(n){return t.optionComparator(n,e)}))},isOptionDeselectable:function(e){return this.isOptionSelected(e)&&this.deselectFromDropdown},hasKeyboardFocusBorder:function(e){return!(!this.keyboardFocusBorder||!this.isKeyboardNavigation)&&e===this.typeAheadPointer},optionComparator:function(e,t){return this.getOptionKey(e)===this.getOptionKey(t)},findOptionFromReducedValue:function(e){var n=this,o=[].concat(t()(this.options),t()(this.pushedTags)).filter((function(t){return JSON.stringify(n.reduce(t))===JSON.stringify(e)}));return 1===o.length?o[0]:o.find((function(e){return n.optionComparator(e,n.$data._value)}))||e},closeSearchOptions:function(){this.open=!1,this.$emit(\"search:blur\")},maybeDeleteValue:function(){if(!this.searchEl.value.length&&this.selectedValue&&this.selectedValue.length&&this.clearable){var e=null;this.multiple&&(e=t()(this.selectedValue.slice(0,this.selectedValue.length-1))),this.updateValue(e)}},optionExists:function(e){var t=this;return this.optionList.some((function(n){return t.optionComparator(n,e)}))},optionAriaSelected:function(e){return this.selectable(e)?String(this.isOptionSelected(e)):null},normalizeOptionForSlot:function(e){return\"object\"===s()(e)?e:a()({},this.label,e)},pushTag:function(e){this.pushedTags.push(e)},onEscape:function(){this.search.length?this.search=\"\":this.open=!1},onSearchBlur:function(){if(!this.mousedown||this.searching){var e=this.clearSearchOnSelect,t=this.multiple;return this.clearSearchOnBlur({clearSearchOnSelect:e,multiple:t})&&(this.search=\"\"),void this.closeSearchOptions()}this.mousedown=!1,0!==this.search.length||0!==this.options.length||this.closeSearchOptions()},onSearchFocus:function(){this.open=!0,this.$emit(\"search:focus\")},onMousedown:function(){this.mousedown=!0},onMouseUp:function(){this.mousedown=!1},onMouseMove:function(e,t){this.isKeyboardNavigation=!1,this.selectable(e)&&(this.typeAheadPointer=t)},onSearchKeyDown:function(e){var t=this,n=function(e){if(e.preventDefault(),t.open)return!t.isComposing&&t.typeAheadSelect();t.open=!0},o={8:function(e){return t.maybeDeleteValue()},9:function(e){return t.onTab()},27:function(e){return t.onEscape()},38:function(e){if(e.preventDefault(),t.isKeyboardNavigation=!0,t.open)return t.typeAheadUp();t.open=!0},40:function(e){if(e.preventDefault(),t.isKeyboardNavigation=!0,t.open)return t.typeAheadDown();t.open=!0}};this.selectOnKeyCodes.forEach((function(e){return o[e]=n}));var i=this.mapKeydown(o,this);if(\"function\"==typeof i[e.keyCode])return i[e.keyCode](e)},onSearchKeyPress:function(e){this.open||32!==e.keyCode||(e.preventDefault(),this.open=!0)}}},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(\"div\",{staticClass:\"v-select\",class:e.stateClasses,attrs:{id:\"v-select-\"+e.uid,dir:e.dir}},[e._t(\"header\",null,null,e.scope.header),e._v(\" \"),n(\"div\",{ref:\"toggle\",staticClass:\"vs__dropdown-toggle\"},[n(\"div\",{ref:\"selectedOptions\",staticClass:\"vs__selected-options\",on:{mousedown:e.toggleDropdown}},[e._l(e.selectedValue,(function(t,o){return e._t(\"selected-option-container\",[n(\"span\",{key:e.getOptionKey(t),staticClass:\"vs__selected\"},[e._t(\"selected-option\",[e._v(\"\\n \"+e._s(e.getOptionLabel(t))+\"\\n \")],null,e.normalizeOptionForSlot(t)),e._v(\" \"),e.multiple?n(\"button\",{ref:\"deselectButtons\",refInFor:!0,staticClass:\"vs__deselect\",attrs:{disabled:e.disabled,type:\"button\",title:e.ariaLabelDeselectOption(e.getOptionLabel(t)),\"aria-label\":e.ariaLabelDeselectOption(e.getOptionLabel(t))},on:{mousedown:function(n){return n.stopPropagation(),e.deselect(t)},keydown:function(n){return!n.type.indexOf(\"key\")&&e._k(n.keyCode,\"enter\",13,n.key,\"Enter\")?null:e.keyboardDeselect(t,o)}}},[n(e.childComponents.Deselect,{tag:\"component\"})],1):e._e()],2)],{option:e.normalizeOptionForSlot(t),deselect:e.deselect,multiple:e.multiple,disabled:e.disabled})})),e._v(\" \"),e._t(\"search\",[n(\"input\",e._g(e._b({staticClass:\"vs__search\"},\"input\",e.scope.search.attributes,!1),e.scope.search.events))],null,e.scope.search)],2),e._v(\" \"),n(\"div\",{ref:\"actions\",staticClass:\"vs__actions\"},[n(\"button\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.showClearButton,expression:\"showClearButton\"}],ref:\"clearButton\",staticClass:\"vs__clear\",attrs:{disabled:e.disabled,type:\"button\",title:e.ariaLabelClearSelected,\"aria-label\":e.ariaLabelClearSelected},on:{click:e.clearSelection}},[n(e.childComponents.Deselect,{tag:\"component\"})],1),e._v(\" \"),e.noDrop?e._e():n(\"button\",{ref:\"openIndicatorButton\",staticClass:\"vs__open-indicator-button\",attrs:{type:\"button\",tabindex:\"-1\",\"aria-labelledby\":\"vs-\"+e.uid+\"__listbox\",\"aria-controls\":\"vs-\"+e.uid+\"__listbox\",\"aria-expanded\":e.dropdownOpen.toString()},on:{mousedown:e.toggleDropdown}},[e._t(\"open-indicator\",[n(e.childComponents.OpenIndicator,e._b({tag:\"component\"},\"component\",e.scope.openIndicator.attributes,!1))],null,e.scope.openIndicator)],2),e._v(\" \"),e._t(\"spinner\",[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.mutableLoading,expression:\"mutableLoading\"}],staticClass:\"vs__spinner\"},[e._v(\"Loading...\")])],null,e.scope.spinner)],2)]),e._v(\" \"),n(\"transition\",{attrs:{name:e.transition}},[e.dropdownOpen?n(\"ul\",{directives:[{name:\"append-to-body\",rawName:\"v-append-to-body\"}],key:\"vs-\"+e.uid+\"__listbox\",ref:\"dropdownMenu\",staticClass:\"vs__dropdown-menu\",attrs:{id:\"vs-\"+e.uid+\"__listbox\",role:\"listbox\",\"aria-label\":e.ariaLabelListbox,\"aria-multiselectable\":e.multiple,tabindex:\"-1\"},on:{mousedown:function(t){return t.preventDefault(),e.onMousedown(t)},mouseup:e.onMouseUp}},[e._t(\"list-header\",null,null,e.scope.listHeader),e._v(\" \"),e._l(e.filteredOptions,(function(t,o){return n(\"li\",{key:e.getOptionKey(t),staticClass:\"vs__dropdown-option\",class:{\"vs__dropdown-option--deselect\":e.isOptionDeselectable(t)&&o===e.typeAheadPointer,\"vs__dropdown-option--selected\":e.isOptionSelected(t),\"vs__dropdown-option--highlight\":o===e.typeAheadPointer,\"vs__dropdown-option--kb-focus\":e.hasKeyboardFocusBorder(o),\"vs__dropdown-option--disabled\":!e.selectable(t)},attrs:{id:\"vs-\"+e.uid+\"__option-\"+o,role:\"option\",\"aria-selected\":e.optionAriaSelected(t)},on:{mousemove:function(n){return e.onMouseMove(t,o)},click:function(n){n.preventDefault(),n.stopPropagation(),e.selectable(t)&&e.select(t)}}},[e._t(\"option\",[e._v(\"\\n \"+e._s(e.getOptionLabel(t))+\"\\n \")],null,e.normalizeOptionForSlot(t))],2)})),e._v(\" \"),0===e.filteredOptions.length?n(\"li\",{staticClass:\"vs__no-options\"},[e._t(\"no-options\",[e._v(\"\\n Sorry, no matching options.\\n \")],null,e.scope.noOptions)],2):e._e(),e._v(\" \"),e._t(\"list-footer\",null,null,e.scope.listFooter)],2):n(\"ul\",{staticStyle:{display:\"none\",visibility:\"hidden\"},attrs:{id:\"vs-\"+e.uid+\"__listbox\",role:\"listbox\",\"aria-label\":e.ariaLabelListbox}})]),e._v(\" \"),e._t(\"footer\",null,null,e.scope.footer)],2)}),[],!1,null,null,null).exports,O={ajax:u,pointer:c,pointerScroll:l},_=m})(),o})()}));\n//# sourceMappingURL=vue-select.js.map","/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n x,\n y,\n width: rects.floating.width,\n height: rects.floating.height\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n elements,\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const initialSideAxis = getSideAxis(initialPlacement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';\n if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$filter2;\n const placement = (_overflowsData$filter2 = overflowsData.filter(d => {\n if (hasFallbackAxisSideDirection) {\n const currentSideAxis = getSideAxis(d.placement);\n return currentSideAxis === initialSideAxis ||\n // Create a bias to the `y` side axis due to horizontal\n // reading directions favoring greater width.\n currentSideAxis === 'y';\n }\n return true;\n }).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\n\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: rawValue.mainAxis || 0,\n crossAxis: rawValue.crossAxis || 0,\n alignmentAxis: rawValue.alignmentAxis\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n var _middlewareData$offse, _middlewareData$arrow;\n const {\n x,\n y,\n placement,\n middlewareData\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n\n // If the placement is the same and the arrow caused an alignment offset\n // then we don't need to change the positioning coordinates.\n if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: {\n ...diffCoords,\n placement\n }\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y,\n enabled: {\n [mainAxis]: checkMainAxis,\n [crossAxis]: checkCrossAxis\n }\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n var _state$middlewareData, _state$middlewareData2;\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n const maximumClippingWidth = width - overflow.left - overflow.right;\n const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);\n const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {\n availableWidth = maximumClippingWidth;\n }\n if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {\n availableHeight = maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\n","function hasWindow() {\n return typeof window !== 'undefined';\n}\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n if (!hasWindow() || typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isTopLayer(element) {\n return [':popover-open', ':modal'].some(selector => {\n try {\n return element.matches(selector);\n } catch (e) {\n return false;\n }\n });\n}\nfunction isContainingBlock(elementOrCss) {\n const webkit = isWebKit();\n const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else if (isTopLayer(currentNode)) {\n return null;\n }\n currentNode = getParentNode(currentNode);\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.scrollX,\n scrollTop: element.scrollY\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n const frameElement = getFrameElement(win);\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\nfunction getFrameElement(win) {\n return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getFrameElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isTopLayer, isWebKit };\n","import { rectToClientRect, detectOverflow as detectOverflow$1, offset as offset$1, autoPlacement as autoPlacement$1, shift as shift$1, flip as flip$1, size as size$1, hide as hide$1, arrow as arrow$1, inline as inline$1, limitShift as limitShift$1, computePosition as computePosition$1 } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle, isHTMLElement, isElement, getWindow, isWebKit, getFrameElement, getDocumentElement, isTopLayer, getNodeName, isOverflowElement, getNodeScroll, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentWin = win;\n let currentIFrame = getFrameElement(currentWin);\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentWin = getWindow(currentIFrame);\n currentIFrame = getFrameElement(currentWin);\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = getDocumentElement(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\n// If has a CSS width greater than the viewport, then this will be\n// incorrect for RTL.\nfunction getWindowScrollBarX(element, rect) {\n const leftScroll = getNodeScroll(element).scrollLeft;\n if (!rect) {\n return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;\n }\n return rect.left + leftScroll;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n ...clippingAncestor,\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n // If the scrollbar appears on the left (e.g. RTL systems). Use\n // Firefox with layout.scrollbar.side = 3 in about:config to test this.\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n let htmlX = 0;\n let htmlY = 0;\n if (documentElement && !isOffsetParentAnElement && !isFixed) {\n const htmlRect = documentElement.getBoundingClientRect();\n htmlY = htmlRect.top + scroll.scrollTop;\n htmlX = htmlRect.left + scroll.scrollLeft -\n // RTL scrollbar.\n getWindowScrollBarX(documentElement, htmlRect);\n }\n const x = rect.left + scroll.scrollLeft - offsets.x - htmlX;\n const y = rect.top + scroll.scrollTop - offsets.y - htmlY;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction isStaticPositioned(element) {\n return getComputedStyle(element).position === 'static';\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n let rawOffsetParent = element.offsetParent;\n\n // Firefox returns the element as the offsetParent if it's non-static,\n // while Chrome and Safari return the element. The element must\n // be used to perform the correct calculations even if the element is\n // non-static.\n if (getDocumentElement(element) === rawOffsetParent) {\n rawOffsetParent = rawOffsetParent.ownerDocument.body;\n }\n return rawOffsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const win = getWindow(element);\n if (isTopLayer(element)) {\n return win;\n }\n if (!isHTMLElement(element)) {\n let svgOffsetParent = getParentNode(element);\n while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {\n if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n return svgOffsetParent;\n }\n svgOffsetParent = getParentNode(svgOffsetParent);\n }\n return win;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {\n return win;\n }\n return offsetParent || getContainingBlock(element) || win;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n const floatingDimensions = await getDimensionsFn(data.floating);\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n width: floatingDimensions.width,\n height: floatingDimensions.height\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const {\n left,\n top,\n width,\n height\n } = element.getBoundingClientRect();\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n // If the reference is clipped, the ratio is 0. Throttle the refresh\n // to prevent an infinite loop of updates.\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 1000);\n } else {\n refresh(false, ratio);\n }\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle