forked from GitHubMirrors/silverbullet-icalendar
All checks were successful
Build SilverBullet Plug / build (push) Successful in 31s
6 lines
47 KiB
JavaScript
6 lines
47 KiB
JavaScript
"use strict";var dt=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var Tn=Object.getOwnPropertyNames;var In=Object.prototype.hasOwnProperty;var En=(t,e)=>{for(var r in e)dt(t,r,{get:e[r],enumerable:!0})},xn=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Tn(e))!In.call(t,o)&&o!==r&&dt(t,o,{get:()=>e[o],enumerable:!(n=ln(e,o))||n.enumerable});return t};var Sn=t=>xn(dt({},"__esModule",{value:!0}),t);var Ro={};En(Ro,{BREAK_REGEX:()=>ue,COMMA:()=>b,CRLF_BREAK:()=>Ve,CRLF_BREAK_REGEX:()=>lt,DEFAULT_END_IN_YEARS:()=>Xr,EQUAL_SIGN:()=>de,ICS_COMPONENTS:()=>Yn,LF_BREAK:()=>Ze,MAX_LINE_LENGTH:()=>Xe,OBJECT_END:()=>we,OBJECT_START:()=>Je,QUOTE:()=>It,RRULE_KEYS:()=>Mn,RRULE_OBJECT_KEYS:()=>zn,RRULE_TO_KEYS:()=>ft,RRULE_TO_OBJECT_KEYS:()=>je,SEMICOLON:()=>$,SEPARATOR:()=>Tt,SPACE:()=>Bn,TIMEZONE_PROP_COMPONENTS:()=>Rt,VALARM_KEYS:()=>Dn,VALARM_OBJECT_KEY:()=>J,VALARM_OBJECT_KEYS:()=>gn,VALARM_TO_KEYS:()=>ge,VALARM_TO_OBJECT_KEYS:()=>Pe,VCALENDAR_KEYS:()=>On,VCALENDAR_OBJECT_KEY:()=>pe,VCALENDAR_OBJECT_KEYS:()=>Rn,VCALENDAR_TO_KEYS:()=>Oe,VCALENDAR_TO_OBJECT_KEYS:()=>ke,VEVENT_KEYS:()=>Cn,VEVENT_OBJECT_KEY:()=>G,VEVENT_OBJECT_KEYS:()=>Nn,VEVENT_TO_KEYS:()=>Re,VEVENT_TO_OBJECT_KEYS:()=>Ye,VFREEBUSY_KEYS:()=>Pn,VFREEBUSY_OBJECT_KEY:()=>q,VFREEBUSY_OBJECT_KEYS:()=>kn,VFREEBUSY_TO_KEYS:()=>be,VFREEBUSY_TO_OBJECT_KEYS:()=>Ge,VJOURNAL_KEYS:()=>hn,VJOURNAL_OBJECT_KEY:()=>H,VJOURNAL_OBJECT_KEYS:()=>Kn,VJOURNAL_TO_KEYS:()=>Ae,VJOURNAL_TO_OBJECT_KEYS:()=>We,VTIMEZONE_DAYLIGHT_OBJECT_KEY:()=>qe,VTIMEZONE_KEYS:()=>vn,VTIMEZONE_OBJECT_KEY:()=>W,VTIMEZONE_OBJECT_KEYS:()=>An,VTIMEZONE_PROP_KEYS:()=>bn,VTIMEZONE_PROP_OBJECT_KEYS:()=>Vn,VTIMEZONE_PROP_TO_KEYS:()=>Ne,VTIMEZONE_PROP_TO_OBJECT_KEYS:()=>Fe,VTIMEZONE_STANDARD_OBJECT_KEY:()=>He,VTIMEZONE_TO_KEYS:()=>Ce,VTIMEZONE_TO_OBJECT_KEYS:()=>Be,VTODO_KEYS:()=>Ln,VTODO_OBJECT_KEY:()=>w,VTODO_OBJECT_KEYS:()=>_n,VTODO_TO_KEYS:()=>ve,VTODO_TO_OBJECT_KEYS:()=>Ue,attachmentEncodingTypes:()=>Zn,attachmentValueTypes:()=>Xn,attendeePartStatusTypes:()=>Qn,calendarMethods:()=>Hn,calendarVersions:()=>qn,classTypes:()=>ao,convertIcsAlarm:()=>er,convertIcsAttachment:()=>jt,convertIcsAttendee:()=>z,convertIcsCalendar:()=>Oo,convertIcsClass:()=>me,convertIcsDate:()=>Ut,convertIcsDateTime:()=>B,convertIcsDuration:()=>L,convertIcsEvent:()=>tr,convertIcsEventStatus:()=>Zt,convertIcsExceptionDates:()=>ie,convertIcsFreeBusy:()=>sr,convertIcsInteger:()=>K,convertIcsJournal:()=>ar,convertIcsJournalStatus:()=>Qt,convertIcsLocalOnlyDateTime:()=>Wt,convertIcsOrganizer:()=>F,convertIcsRecurrenceId:()=>ce,convertIcsRecurrenceRule:()=>j,convertIcsText:()=>R,convertIcsTimeStamp:()=>y,convertIcsTimeTransparent:()=>$t,convertIcsTimezone:()=>nr,convertIcsTimezoneProp:()=>rr,convertIcsTodo:()=>or,convertIcsTodoStatus:()=>Xt,convertIcsTrigger:()=>Gt,convertIcsWeekDay:()=>qt,convertIcsWeekDayNumber:()=>Ht,convertNonStandardValues:()=>wt,createGetRegex:()=>$e,createReplaceRegex:()=>yt,dateObjectTypes:()=>eo,eventStatusTypes:()=>to,extendByRecurrenceRule:()=>vt,extendTimezoneProps:()=>At,freeBusyTypes:()=>$n,generateIcsAlarm:()=>_t,generateIcsAttachment:()=>Et,generateIcsAttendee:()=>V,generateIcsCalendar:()=>po,generateIcsDate:()=>Ke,generateIcsDuration:()=>M,generateIcsEvent:()=>Kt,generateIcsFreeBusy:()=>Ft,generateIcsInteger:()=>h,generateIcsJournal:()=>Bt,generateIcsLocalDateTime:()=>bt,generateIcsLocalOnlyDateTime:()=>Mt,generateIcsMail:()=>P,generateIcsOrganizer:()=>k,generateIcsRecurrenceRule:()=>Y,generateIcsText:()=>O,generateIcsTimeStamp:()=>T,generateIcsTimezone:()=>kt,generateIcsTimezoneProp:()=>Pt,generateIcsTodo:()=>Yt,generateIcsTrigger:()=>zt,generateIcsUtcDateTime:()=>v,generateIcsWeekdayNumber:()=>ht,generateNonStandardValues:()=>Lt,getDurationFromInterval:()=>Jn,getEventEnd:()=>wn,getEventEndFromDuration:()=>Ot,getTimezoneObjectOffset:()=>he,journalStatusTypes:()=>no,recurrenceObjectKeyIsNumber:()=>dn,recurrenceObjectKeyIsNumberArray:()=>pn,recurrenceObjectKeyIsTimeStamp:()=>mn,recurrenceObjectKeyIsWeekdayNumberArray:()=>un,recurrenceRuleFrequencies:()=>Ct,timeTransparentTypes:()=>so,timeZoneOffsetToMilliseconds:()=>ne,todoStatusTypes:()=>ro,triggerRelations:()=>oo,weekDays:()=>_e});module.exports=Sn(Ro);var g=t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[r,e])),I=t=>Object.keys(t);var ge={action:"ACTION",description:"DESCRIPTION",duration:"DURATION",repeat:"REPEAT",summary:"SUMMARY",trigger:"TRIGGER",attachments:"ATTACH",attendees:"ATTENDEE"},Pe=g(ge),Dn=I(Pe),gn=I(ge);var Oe={method:"METHOD",prodId:"PRODID",version:"VERSION",name:"X-WR-CALNAME"},ke=g(Oe),On=I(ke),Rn=I(Oe);var Re={alarms:"ALARM",categories:"CATEGORIES",created:"CREATED",description:"DESCRIPTION",lastModified:"LAST-MODIFIED",location:"LOCATION",exceptionDates:"EXDATE",recurrenceRule:"RRULE",stamp:"DTSTAMP",start:"DTSTART",summary:"SUMMARY",uid:"UID",timeTransparent:"TRANSP",url:"URL",end:"DTEND",duration:"DURATION",geo:"GEO",class:"CLASS",organizer:"ORGANIZER",priority:"PRIORITY",sequence:"SEQUENCE",status:"STATUS",attach:"ATTACH",recurrenceId:"RECURRENCE-ID",attendees:"ATTENDEE",comment:"COMMENT"},Ye=g(Re),Cn=I(Ye),Nn=I(Re);var Ce={id:"TZID",lastModified:"LAST-MODIFIED",url:"TZURL"},Be=g(Ce),vn=I(Be),An=I(Ce);var Ne={comment:"COMMENT",name:"TZNAME",offsetFrom:"TZOFFSETFROM",offsetTo:"TZOFFSETTO",recurrenceDate:"RDATE",recurrenceRule:"RRULE",start:"DTSTART"},Fe=g(Ne),bn=I(Fe),Vn=I(Ne);var ft={byDay:"BYDAY",byHour:"BYHOUR",byMinute:"BYMINUTE",byMonth:"BYMONTH",byMonthday:"BYMONTHDAY",bySecond:"BYSECOND",bySetPos:"BYSETPOS",byWeekNo:"BYWEEKNO",byYearday:"BYYEARDAY",count:"COUNT",frequency:"FREQ",interval:"INTERVAL",until:"UNTIL",workweekStart:"WKST"},je=g(ft),Mn=I(je),zn=I(ft);var ve={categories:"CATEGORIES",created:"CREATED",description:"DESCRIPTION",lastModified:"LAST-MODIFIED",location:"LOCATION",exceptionDates:"EXDATE",recurrenceRule:"RRULE",stamp:"DTSTAMP",start:"DTSTART",summary:"SUMMARY",uid:"UID",url:"URL",duration:"DURATION",geo:"GEO",class:"CLASS",organizer:"ORGANIZER",priority:"PRIORITY",sequence:"SEQUENCE",status:"STATUS",attach:"ATTACH",recurrenceId:"RECURRENCE-ID",attendees:"ATTENDEE",comment:"COMMENT",completed:"COMPLETED",due:"DUE",percentComplete:"PERCENT-COMPLETE"},Ue=g(ve),Ln=I(Ue),_n=I(ve);var Ae={categories:"CATEGORIES",created:"CREATED",description:"DESCRIPTION",lastModified:"LAST-MODIFIED",exceptionDates:"EXDATE",recurrenceRule:"RRULE",stamp:"DTSTAMP",start:"DTSTART",summary:"SUMMARY",uid:"UID",url:"URL",geo:"GEO",class:"CLASS",organizer:"ORGANIZER",sequence:"SEQUENCE",status:"STATUS",attach:"ATTACH",recurrenceId:"RECURRENCE-ID",attendees:"ATTENDEE",comment:"COMMENT"},We=g(Ae),hn=I(We),Kn=I(Ae);var be={stamp:"DTSTAMP",start:"DTSTART",uid:"UID",url:"URL",organizer:"ORGANIZER",attendees:"ATTENDEE",comment:"COMMENT",end:"DTEND",freeBusy:"FREEBUSY"},Ge=g(be),Pn=I(Ge),kn=I(be);var Je="BEGIN",we="END",pe="VCALENDAR",W="VTIMEZONE",He="STANDARD",qe="DAYLIGHT",G="VEVENT",J="VALARM",w="VTODO",H="VJOURNAL",q="VFREEBUSY",Yn=[pe,W,He,qe,G,J,w,H,q];var $e=t=>new RegExp(`${Je}:${t}([\\s\\S]*?)${we}:${t}`,"g"),yt=t=>new RegExp(`${Je}:${t}|${we}:${t}`,"g");var lt=/\r\n/,ue=/\r\n|\r|\n/,Ve=`\r
|
|
`,Ze=`
|
|
`,Tt=":",b=",",It='"',$=";",Bn=" ",de="=",Xe=75;var Qe=t=>`${t}${Ve}`,f=(t,e,r)=>r?e==null?"":Qe(`${t};${r}:${e}`):Qe(`${t}:${e}`),cr=t=>Qe(`BEGIN:${t}`),mr=t=>Qe(`END:${t}`);var S=t=>{if(!(t.length<1))return`${t.map(e=>`${e.key}${de}${e.value}`).join($)}`};var Et=t=>{if(t.type==="uri"){let e=S([t.formatType&&{key:"FMTTYPE",value:t.formatType}].filter(r=>!!r));return f("ATTACH",t.url,e)}if(t.type==="binary"){let e=S([t.value&&{key:"VALUE",value:t.value},t.encoding&&{key:"ENCODING",value:t.encoding}].filter(r=>!!r));return f("ATTACH",t.binary,e)}throw Error(`IcsAttachment has no type! ${JSON.stringify(t)}`)};var P=(t,e)=>e?`"MAILTO:${t}"`:`MAILTO:${t}`;var V=(t,e)=>{let r=S([t.dir&&{key:"DIR",value:`"${t.dir}"`},t.delegatedFrom&&{key:"DELEGATED-FROM",value:P(t.delegatedFrom,!0)},t.member&&{key:"MEMBER",value:P(t.member,!0)},t.role&&{key:"ROLE",value:t.role},t.name&&{key:"CN",value:t.name},t.partstat&&{key:"PARTSTAT",value:t.partstat},t.sentBy&&{key:"SENT-BY",value:P(t.sentBy,!0)},t.rsvp!==void 0&&(t.rsvp===!0||t.rsvp===!1)&&{key:"RSVP",value:t.rsvp===!0?"TRUE":"FALSE"}].filter(n=>!!n));return f(e,P(t.email),r)};var M=t=>{if(Object.values(t).filter(r=>typeof r=="number").length===0)return;let e="";return t.before&&(e+="-"),e+="P",t.weeks!==void 0&&(e+=`${t.weeks}W`),t.days!==void 0&&(e+=`${t.days}D`),(t.hours!==void 0||t.minutes!==void 0||t.seconds!==void 0)&&(e+="T",t.hours!==void 0&&(e+=`${t.hours}H`),t.minutes!==void 0&&(e+=`${t.minutes}M`),t.seconds!==void 0&&(e+=`${t.seconds}S`)),e};var Fn=Math.pow(10,8)*24*60*60*1e3,Da=-Fn,ir=6048e5,pr=864e5,fe=6e4,ye=36e5;var jn=3600;var ur=jn*24,ga=ur*7,Un=ur*365.2425,Wn=Un/12,Oa=Wn*3,xt=Symbol.for("constructDateFrom");function x(t,e){return typeof t=="function"?t(e):t&&typeof t=="object"&&xt in t?t[xt](e):t instanceof Date?new t.constructor(e):new Date(e)}function i(t,e){return x(e||t,t)}function Z(t,e,r){let n=i(t,r==null?void 0:r.in);return isNaN(e)?x((r==null?void 0:r.in)||t,NaN):(e&&n.setDate(n.getDate()+e),n)}function et(t,e,r){let n=i(t,r==null?void 0:r.in);if(isNaN(e))return x((r==null?void 0:r.in)||t,NaN);if(!e)return n;let o=n.getDate(),s=x((r==null?void 0:r.in)||t,n.getTime());s.setMonth(n.getMonth()+e+1,0);let a=s.getDate();return o>=a?s:(n.setFullYear(s.getFullYear(),s.getMonth(),o),n)}function _(t,e,r){return x((r==null?void 0:r.in)||t,+i(t)+e)}function tt(t,e,r){return _(t,e*ye,r)}var Gn={};function X(){return Gn}function se(t,e){var c,m,p,d;let r=X(),n=(e==null?void 0:e.weekStartsOn)??((m=(c=e==null?void 0:e.locale)==null?void 0:c.options)==null?void 0:m.weekStartsOn)??r.weekStartsOn??((d=(p=r.locale)==null?void 0:p.options)==null?void 0:d.weekStartsOn)??0,o=i(t,e==null?void 0:e.in),s=o.getDay(),a=(s<n?7:0)+s-n;return o.setDate(o.getDate()-a),o.setHours(0,0,0,0),o}function St(t){let e=i(t),r=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return r.setUTCFullYear(e.getFullYear()),+t-+r}function Q(t,...e){let r=x.bind(null,t||e.find(n=>typeof n=="object"));return e.map(r)}function Me(t,e){let r=i(t,e==null?void 0:e.in);return r.setHours(0,0,0,0),r}function dr(t,e,r){let[n,o]=Q(r==null?void 0:r.in,t,e),s=Me(n),a=Me(o),c=+s-St(s),m=+a-St(a);return Math.round((c-m)/pr)}function le(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setTime(n.getTime()+e*fe),n}function rt(t,e,r){return _(t,e*1e3,r)}function ee(t,e,r){return Z(t,e*7,r)}function nt(t,e,r){return et(t,e*12,r)}function Te(t,e){let r=+i(t)-+i(e);return r<0?-1:r>0?1:r}function ot(t){return t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]"}function at(t,e,r){let[n,o]=Q(r==null?void 0:r.in,t,e),s=fr(n,o),a=Math.abs(dr(n,o));n.setDate(n.getDate()-s*a);let c=+(fr(n,o)===-s),m=s*(a-c);return m===0?0:m}function fr(t,e){let r=t.getFullYear()-e.getFullYear()||t.getMonth()-e.getMonth()||t.getDate()-e.getDate()||t.getHours()-e.getHours()||t.getMinutes()-e.getMinutes()||t.getSeconds()-e.getSeconds()||t.getMilliseconds()-e.getMilliseconds();return r<0?-1:r>0?1:r}function te(t){return e=>{let n=(t?Math[t]:Math.trunc)(e);return n===0?0:n}}function yr(t,e,r){let[n,o]=Q(r==null?void 0:r.in,t,e),s=(+n-+o)/ye;return te(r==null?void 0:r.roundingMethod)(s)}function st(t,e){return+i(t)-+i(e)}function lr(t,e,r){let n=st(t,e)/fe;return te(r==null?void 0:r.roundingMethod)(n)}function Dt(t,e){let r=i(t,e==null?void 0:e.in),n=r.getMonth();return r.setFullYear(r.getFullYear(),n+1,0),r.setHours(23,59,59,999),r}function Tr(t,e,r){let n=st(t,e)/1e3;return te(r==null?void 0:r.roundingMethod)(n)}function Ir(t,e,r){let n=at(t,e,r)/7;return te(r==null?void 0:r.roundingMethod)(n)}function Er(t,e){let[r,n]=Q(t,e.start,e.end);return{start:r,end:n}}function xr(t,e){let{start:r,end:n}=Er(e==null?void 0:e.in,t),o=+r>+n,s=o?+r:+n,a=o?n:r;a.setHours(0,0,0,0);let c=(e==null?void 0:e.step)??1;if(!c)return[];c<0&&(c=-c,o=!o);let m=[];for(;+a<=s;)m.push(x(r,a)),a.setDate(a.getDate()+c),a.setHours(0,0,0,0);return o?m.reverse():m}function gt(t,e){let r=i(t,e==null?void 0:e.in);return r.setDate(1),r.setHours(0,0,0,0),r}function Sr(t,e){let r=i(t,e==null?void 0:e.in),n=r.getFullYear();return r.setFullYear(n+1,0,0),r.setHours(23,59,59,999),r}function Dr(t,e){let r=i(t,e==null?void 0:e.in);return r.setFullYear(r.getFullYear(),0,1),r.setHours(0,0,0,0),r}function gr(t,e){var d,l,E,A;let r=i(t,e==null?void 0:e.in),n=r.getFullYear(),o=X(),s=(e==null?void 0:e.firstWeekContainsDate)??((l=(d=e==null?void 0:e.locale)==null?void 0:d.options)==null?void 0:l.firstWeekContainsDate)??o.firstWeekContainsDate??((A=(E=o.locale)==null?void 0:E.options)==null?void 0:A.firstWeekContainsDate)??1,a=x((e==null?void 0:e.in)||t,0);a.setFullYear(n+1,0,s),a.setHours(0,0,0,0);let c=se(a,e),m=x((e==null?void 0:e.in)||t,0);m.setFullYear(n,0,s),m.setHours(0,0,0,0);let p=se(m,e);return+r>=+c?n+1:+r>=+p?n:n-1}function Or(t,e){var c,m,p,d;let r=X(),n=(e==null?void 0:e.firstWeekContainsDate)??((m=(c=e==null?void 0:e.locale)==null?void 0:c.options)==null?void 0:m.firstWeekContainsDate)??r.firstWeekContainsDate??((d=(p=r.locale)==null?void 0:p.options)==null?void 0:d.firstWeekContainsDate)??1,o=gr(t,e),s=x((e==null?void 0:e.in)||t,0);return s.setFullYear(o,0,n),s.setHours(0,0,0,0),se(s,e)}function Rr(t,e){let r=i(t,e==null?void 0:e.in),n=+se(r,e)-+Or(r,e);return Math.round(n/ir)+1}function ze(t,e){return i(t,e==null?void 0:e.in).getDay()}function ct(t,e){let r=i(t,e==null?void 0:e.in),n=r.getFullYear(),o=r.getMonth(),s=x(r,0);return s.setFullYear(n,o+1,0),s.setHours(0,0,0,0),s.getDate()}function Cr(t,e){return i(t,e==null?void 0:e.in).getHours()}function Nr(t,e){return i(t,e==null?void 0:e.in).getMinutes()}function mt(t,e){return i(t,e==null?void 0:e.in).getMonth()}function vr(t){return i(t).getSeconds()}function Ar(t,e){return i(t,e==null?void 0:e.in).getFullYear()}function br(t,e){return+i(t)==+i(e)}function Vr(t,e,r){let n=i(t,r==null?void 0:r.in),o=Rr(n,r)-e;return n.setDate(n.getDate()-o*7),i(n,r==null?void 0:r.in)}function Le(t,e,r){var l,E,A,D;let n=X(),o=(r==null?void 0:r.weekStartsOn)??((E=(l=r==null?void 0:r.locale)==null?void 0:l.options)==null?void 0:E.weekStartsOn)??n.weekStartsOn??((D=(A=n.locale)==null?void 0:A.options)==null?void 0:D.weekStartsOn)??0,s=i(t,r==null?void 0:r.in),a=s.getDay(),m=(e%7+7)%7,p=7-o,d=e<0||e>6?e-(a+p)%7:(m+p)%7-(a+p)%7;return Z(s,d,r)}function it(t,e,r){let n=+i(t,r==null?void 0:r.in),[o,s]=[+i(e.start,r==null?void 0:r.in),+i(e.end,r==null?void 0:r.in)].sort((a,c)=>a-c);return n>=o&&n<=s}function Mr(t){let e=t/ye;return Math.trunc(e)}function zr(t){let e=t/fe;return Math.trunc(e)}function Lr(t,e,r){let n=i(t,r==null?void 0:r.in),o=n.getFullYear(),s=n.getDate(),a=x((r==null?void 0:r.in)||t,0);a.setFullYear(o,e,15),a.setHours(0,0,0,0);let c=ct(a);return n.setMonth(e,Math.min(s,c)),n}function _r(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setDate(e),n}function hr(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setMonth(0),n.setDate(e),n}function Kr(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setHours(e),n}function Pr(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setMinutes(e),n}function kr(t,e,r){let n=i(t,r==null?void 0:r.in);return n.setSeconds(e),n}function Yr(t,e,r){return _(t,-e,r)}function Br(t,e,r){return ee(t,-e,r)}var Jn=(t,e)=>{let r=Math.abs(Ir(e,t)),n=Math.abs(at(e,t)),o=n-r*7,s=Math.abs(yr(e,t)),a=s-n*24,c=Math.abs(lr(e,t)),m=c-s*60,d=Math.abs(Tr(e,t))-c*60;return{before:t>e,weeks:r,days:o,hours:a,minutes:m,seconds:d}};var Ot=(t,e)=>{let r=e.before?-1:1,n=(e.seconds||0)*r,o=(e.minutes||0)*r,s=(e.hours||0)*r,a=(e.days||0)*r,c=(e.weeks||0)*r;return ee(Z(tt(le(rt(t,n),o),s),a),c)};var wn=t=>t.end?t.end.date:Ot(t.start.date,t.duration);var Hn=["PUBLISH"],qn=["2.0"];var Rt=[He,qe];var $n=["FREE","BUSY","BUSY-UNAVAILABLE","BUSY-TENTATIVE"];var Zn=["BASE64"],Xn=["BINARY"];var Qn=["NEEDS-ACTION","ACCEPTED","DECLINED","TENTATIVE","DELEGATED"];var eo=["DATE","DATE-TIME"];var Ct=["SECONDLY","MINUTELY","HOURLY","DAILY","WEEKLY","MONTHLY","YEARLY"];var to=["TENTATIVE","CONFIRMED","CANCELLED"],ro=["NEEDS-ACTION","COMPLETED","IN-PROGRESS","CANCELLED"],no=["DRAFT","FINAL","CANCELLED"];var oo=["START","END"];var _e=["SU","MO","TU","WE","TH","FR","SA"];var ao=["PRIVATE","PUBLIC","CONFIDENTIAL"];var so=["TRANSPARENT","OPAQUE"];var Ie=(t,e)=>e===void 0?!1:t>=e,Fr=(t,{start:e,end:r},n)=>{if(Ie(n.length,t.count))return;let o=t.frequency,s=t.interval||1;if(!o)return;let a=e;if(o==="SECONDLY"){for(;a<r;){if(Ie(n.length,t.count))return;a=rt(a,s),n.push([a])}return}if(o==="MINUTELY"){for(;a<r;){if(Ie(n.length,t.count))return;a=le(a,s),n.push([a])}return}if(o==="HOURLY"){for(;a<r;){if(Ie(n.length,t.count))return;a=tt(a,s),n.push([a])}return}if(o==="DAILY"){for(;a<r;){if(Ie(n.length,t.count))return;a=Z(a,s),n.push([a])}return}if(o==="WEEKLY"){for(;a<r;){if(Ie(n.length,t.count))return;a=ee(a,s),n.push([a])}return}if(o==="MONTHLY"){for(;a<r;)a=et(a,s),n.push([a]);return}if(o==="YEARLY"){for(;a<r;)a=nt(a,s),n.push([a]);return}};var jr=(t,e,r,n)=>{let o=r.map(({day:s,occurrence:a})=>({occurrence:a,day:_e.indexOf(s)}));return t.frequency==="YEARLY"?t.byYearday||t.byMonthday?e.map(s=>s.filter(a=>o.find(({day:c})=>c===ze(a)))):t.byWeekNo?e.map(s=>s.flatMap(a=>o.map(({day:c})=>Le(a,c,{weekStartsOn:n})))):t.byMonth?e.map(s=>s.flatMap(a=>o.flatMap(({day:c,occurrence:m})=>Nt(re(gt(a)),re(Dt(a)),c,n,m)))):e.map(s=>s.flatMap(a=>o.flatMap(({day:c,occurrence:m})=>Nt(re(Dr(a)),re(Sr(a)),c,n,m)))):t.frequency==="MONTHLY"?t.byMonthday?e.map(s=>s.filter(a=>o.find(({day:c})=>c===ze(a)))):e.map(s=>s.flatMap(a=>o.flatMap(({day:c,occurrence:m})=>Nt(re(gt(a)),re(Dt(a)),c,n,m)))):t.frequency==="WEEKLY"?e.map(s=>s.flatMap(a=>o.map(({day:c})=>Le(a,c,{weekStartsOn:n})))):e.map(s=>s.filter(a=>o.find(({day:c})=>c===ze(a))))},Nt=(t,e,r,n,o)=>{if(o!==void 0){if(!(o<0)){let d=Le(t,r,{weekStartsOn:n}),l=t>d;return ee(d,(o||1)-1+(l?1:0))}let c=Le(e,r,{weekStartsOn:n}),m=e<c;return re(Me(Br(c,-(o||1)-1+(m?1:0))))}return xr({start:t,end:e}).map(a=>re(a)).filter(a=>it(a,{start:t,end:e})).filter(a=>r===ze(a))},re=t=>le(t,-t.getTimezoneOffset());var Ur=(t,e,r)=>t.frequency==="YEARLY"||t.frequency==="MONTHLY"||t.frequency==="WEEKLY"||t.frequency==="DAILY"?e.map(n=>n.flatMap(o=>r.map(s=>Kr(o,s)))):e.map(n=>n.filter(o=>r.includes(Cr(o))));var Wr=(t,e,r)=>t.frequency==="YEARLY"||t.frequency==="MONTHLY"||t.frequency==="WEEKLY"||t.frequency==="DAILY"||t.frequency==="HOURLY"?e.map(n=>n.flatMap(o=>r.map(s=>Pr(o,s)))):e.map(n=>n.filter(o=>r.includes(Nr(o))));var Gr=(t,e,r)=>t.frequency==="YEARLY"?e.map(n=>n.flatMap(o=>r.map(s=>Lr(o,s)))):e.map(n=>n.filter(o=>r.includes(mt(o))));var Jr=(t,e,r)=>t.frequency==="YEARLY"||t.frequency==="MONTHLY"?e.map(n=>n.flatMap(o=>{let s=ct(o);return r.map(a=>a>s?void 0:_r(o,a)).filter(a=>!!a)})):t.frequency==="WEEKLY"?e:e.map(n=>n.filter(o=>r.includes(mt(o))));var wr=(t,e,r)=>t.frequency==="YEARLY"||t.frequency==="MONTHLY"||t.frequency==="WEEKLY"||t.frequency==="DAILY"||t.frequency==="HOURLY"||t.frequency==="MINUTELY"?e.map(n=>n.flatMap(o=>r.map(s=>kr(o,s)))):e.map(n=>n.filter(o=>r.includes(vr(o))));var Hr=(t,e,r)=>!t.byYearday&&!t.byWeekNo&&!t.byMonthday&&!t.byMonth&&!t.byDay&&!t.byHour&&!t.byMinute&&!t.bySecond?e:e.map(n=>n.sort(Te).filter((o,s)=>r.some(a=>a>0?s===0?!1:s%a===0:s===0?n.length-1+a===0:s%(n.length-1+a)===0)));var qr=(t,e,r,n)=>t.frequency==="YEARLY"?e.map(o=>o.flatMap(s=>r.map(a=>Vr(s,a,{weekStartsOn:n})))):e;var $r=(t,e,r)=>t.frequency==="YEARLY"?e.map(n=>n.flatMap(o=>r.map(s=>hr(o,s)))):t.frequency==="MONTHLY"||t.frequency==="WEEKLY"||t.frequency==="DAILY"?e:e.map(n=>n.filter(o=>r.includes(Ar(o))));var Zr=(t,e,r)=>{let n=r;return t.byMonth&&(n=Gr(t,n,t.byMonth)),t.byWeekNo&&(n=qr(t,n,t.byWeekNo,e.weekStartsOn)),t.byYearday&&(n=$r(t,n,t.byYearday)),t.byMonthday&&(n=Jr(t,n,t.byMonthday)),t.byDay&&(n=jr(t,n,t.byDay,e.weekStartsOn)),t.byHour&&(n=Ur(t,n,t.byHour)),t.byMinute&&(n=Wr(t,n,t.byMinute)),t.bySecond&&(n=wr(t,n,t.bySecond)),t.bySetPos&&(n=Hr(t,n,t.bySetPos)),n.map(s=>s.sort(Te).filter(a=>!(e.exceptions.length>0&&e.exceptions.some(c=>br(c,a))||!it(a,{start:e.start,end:e.end}))))};var Xr=2,vt=(t,e)=>{var p;let r=e.start,n=((p=t.until)==null?void 0:p.date)||(e==null?void 0:e.end)||nt(r,Xr),o=e.exceptions||[],s=(t.workweekStart?_e.indexOf(t.workweekStart):1)%7,a=[[r]];Fr(t,{start:r,end:n},a);let c=Zr(t,{start:r,end:n,exceptions:o,weekStartsOn:s},a);return t.count?c.flat().splice(0,t.count):c.flat()};var At=(t,e)=>e.flatMap(r=>!r.recurrenceRule||r.recurrenceRule.until&&r.recurrenceRule.until.date<t?r:vt(r.recurrenceRule,{start:r.start,end:t}).map(o=>({...r,start:o})));var ne=t=>{let e=t[0]==="+"?1:-1,r=Number(t.slice(1,3)),n=t.length>3?Number(t.slice(3,5)):0,o=t.length>5?Number(t.slice(5,7)):0;return((r*60+n)*60+o)*1e3*e};var Qr=(t,e)=>{let r="en-US",n=new Date(e.toLocaleString(r,{timeZone:"UTC"}));try{return new Date(e.toLocaleString(r,{timeZone:t})).getTime()-n.getTime()}catch{return e.getTime()-n.getTime()}};var he=(t,e,r)=>{let n=r==null?void 0:r.find(s=>s.id===e);if(n){let s=At(t,n.props).sort((m,p)=>Te(m.start,p.start));for(let m=0;m<s.length;m+=1)if(t<s[m].start){let p=s[m-1]?s[m-1].offsetTo:s[m].offsetFrom,d=p.length>5?p.substring(0,5):p;return{offset:d,milliseconds:ne(d)}}let a=s[s.length-1].offsetTo,c=a.length>5?a.substring(0,5):a;return{offset:c,milliseconds:ne(c)}}let o=Qr(e,t);if(!Number.isNaN(o)){let s=o<0,a=Math.abs(Mr(o)),c=Math.abs(zr(o))-a*60,m=a.toString().length===1?`0${a}`:a.toString(),p=c.toString().length===1?`0${c}`:c.toString();return{offset:`${s?"-":"+"}${m}${p}`,milliseconds:o}}};var Ke=t=>{if(!ot(t))throw Error(`Incorrect date object: ${t}`);let e=t.toISOString(),r=e.slice(0,4),n=e.slice(5,7),o=e.slice(8,10);return`${r}${n}${o}`},v=t=>{if(!ot(t))throw Error(`Incorrect date object: ${t}`);return Vt(t)},bt=(t,e,r)=>{let n=e.date;if(!ot(n))throw Error(`Incorrect date object: ${n}`);return he(n,e.timezone,r)?Vt(n,!0):v(t)},Vt=(t,e)=>{let r=t.toISOString(),n=r.slice(0,4),o=r.slice(5,7),s=r.slice(8,10),a=r.slice(11,13),c=r.slice(14,16),m=r.slice(17,19);return`${n}${o}${s}T${a}${c}${m}${e?"":"Z"}`},Mt=(t,e)=>{let r=ne(e),n=_(t,r);return Vt(n,!0)};var zt=t=>{var r,n;let e=S([((r=t.options)==null?void 0:r.related)&&{key:"RELATED",value:t.options.related}].filter(o=>!!o));if(t.type==="absolute")return f("TRIGGER",v((n=t.value)==null?void 0:n.date));if(t.type==="relative")return f("TRIGGER",M(t.value),e)};var pt=t=>Object.keys(t);var Lt=(t,e)=>{if(!t)return"";let r="";return Object.entries(t).forEach(([n,o])=>{let s=e==null?void 0:e[n];if(!s){r+=f(co(n),o==null?void 0:o.toString());return}let a=s.generate(o);a&&(r+=f(s.name,a.value,a.options?S(Object.entries(a.options).map(([c,m])=>({key:c,value:m}))):void 0))}),r},co=t=>{let e="X-";for(let r of t)r===r.toUpperCase()&&(e+="-"),e+=r.toUpperCase();return e};var mo=t=>{let e=(t.match(/\n/g)||[]).length;return t.length+e},en=t=>{let e=t.split(lt),r=[];return e.forEach(n=>{if(mo(n)<75){r.push(n);return}io(n,75).forEach(o=>{r.push(o)})}),r.join(Ve)},io=(t,e)=>{let r=[],n="",o=0;for(let s=0;s<t.length;s++){let a=t[s],m=a===`
|
|
`?2:1;o+m>e?(r.push(r.length===0?n:` ${n}`),n=a,o=m):(n+=a,o+=m)}return n&&r.push(r.length===0?n:` ${n}`),r};var C=(t,e)=>{let r=pt(t),n=e.childComponents,o=n?pt(n):[],s=e.generateArrayValues,a=s?pt(s):[],c="";return c+=cr(e.icsComponent),r.forEach(m=>{if(o.includes(m)||a.includes(m)||m==="nonStandard")return;let p=e.icsKeyMap[m];if(!p)return;let d=t[m];if(d==null)return;let l=e.generateValues[m];if(l){c+=l({icsKey:p,value:d,key:m});return}c+=f(p,String(d))}),n&&o&&o.length>0&&o.forEach(m=>{let p=t[m];!p||!Array.isArray(p)||p.length===0||p.forEach(d=>{let l=n[m];l&&(c+=l(d))})}),s&&a&&a.length>0&&a.forEach(m=>{let p=s[m];if(!p)return;let d=e.icsKeyMap[m];if(!d)return;let l=t[m];!l||!Array.isArray(l)||l.length===0||l.forEach(E=>{c+=p({icsKey:d,value:E})})}),t.nonStandard&&(c+=Lt(t.nonStandard,e==null?void 0:e.nonStandard)),c+=mr(e.icsComponent),e!=null&&e.skipFormatLines?c:en(c)};var h=(t,e)=>f(t,Math.trunc(e).toString());var _t=(t,e)=>C(t,{icsComponent:J,icsKeyMap:ge,generateValues:{trigger:({value:r})=>zt(r),duration:({icsKey:r,value:n})=>f(r,M(n)),repeat:({icsKey:r,value:n})=>h(r,n)},generateArrayValues:{attendees:({value:r})=>V(r,"ATTENDEE"),attachments:({value:r})=>Et(r)},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines});var T=(t,e,r=[],n)=>{let o=S([e.type&&{key:"VALUE",value:e.type},e.local&&!(n!=null&&n.forceUtc)&&{key:"TZID",value:e.local.timezone},...r].filter(a=>!!a)),s=e.type==="DATE"?Ke(e.date):e.local&&!(n!=null&&n.forceUtc)?bt(e.date,e.local,n==null?void 0:n.timezones):v(e.date);return f(t,s,o)};var Ee=(t,e,r)=>T(e,t,void 0,r);var k=t=>{let e=S([t.dir&&{key:"DIR",value:`"${t.dir}"`},t.name&&{key:"CN",value:t.name},t.sentBy&&{key:"SENT-BY",value:P(t.sentBy)}].filter(r=>!!r));return f("ORGANIZER",P(t.email),e)};var ht=t=>t.occurrence?`${t.occurrence}${t.day}`:t.day;var Y=t=>{var n;let e="",r=S([t.byDay&&{key:"BYDAY",value:t.byDay.map(o=>ht(o)).join(",")},t.byHour&&{key:"BYHOUR",value:t.byHour.join(",")},t.byMinute&&{key:"BYMINUTE",value:t.byMinute.join(",")},t.byMonth&&{key:"BYMONTH",value:t.byMonth.map(o=>o+1).join(",")},t.byMonthday&&{key:"BYMONTHDAY",value:t.byMonthday.join(",")},t.bySecond&&{key:"BYSECOND",value:t.bySecond.join(",")},t.bySetPos&&{key:"BYSETPOS",value:t.bySetPos.join(",")},t.byWeekNo&&{key:"BYWEEKNO",value:t.byWeekNo.join(",")},t.byYearday&&{key:"BYYEARDAY",value:t.byYearday.join(",")},t.count&&{key:"COUNT",value:t.count.toString()},t.frequency&&{key:"FREQ",value:t.frequency},t.interval&&{key:"INTERVAL",value:t.interval.toString()},t.until&&{key:"UNTIL",value:t.until.type==="DATE"?Ke(t.until.date):v(((n=t.until.local)==null?void 0:n.date)||t.until.date)},t.workweekStart&&{key:"WKST",value:t.workweekStart}].filter(o=>!!o));return e+=f("RRULE",r),e};var xe=(t,e)=>{let r="";return r+=T("RECURRENCE-ID",t.value,t.range?[{key:"RANGE",value:t.range}]:void 0,e),r};var tn=t=>t.replace(/([\\;,])|(\n)/g,(e,r)=>r?`\\${r}`:"\\n");var O=(t,e,r)=>f(t,tn(e),r?S(r):void 0);var Kt=(t,e)=>C(t,{icsComponent:G,icsKeyMap:Re,omitGenerateKeys:["descriptionAltRep"],generateValues:{stamp:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones,forceUtc:!0}),start:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),end:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),created:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),lastModified:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),categories:({icsKey:r,value:n})=>f(r,n.join(",")),description:({icsKey:r,value:n})=>O(r,n,t.descriptionAltRep?[{key:"ALTREP",value:`"${t.descriptionAltRep}"`}]:void 0),location:({icsKey:r,value:n})=>O(r,n),comment:({icsKey:r,value:n})=>O(r,n),summary:({icsKey:r,value:n})=>O(r,n),recurrenceRule:({value:r})=>Y(r),duration:({icsKey:r,value:n})=>f(r,M(n)),organizer:({value:r})=>k(r),sequence:({icsKey:r,value:n})=>h(r,n),recurrenceId:({value:r})=>xe(r,{timezones:e==null?void 0:e.timezones})},generateArrayValues:{attendees:({value:r})=>V(r,"ATTENDEE"),exceptionDates:({value:r})=>Ee(r,"EXDATE",{timezones:e==null?void 0:e.timezones})},childComponents:{alarms:r=>_t(r,{nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:!0})},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines,timezones:e==null?void 0:e.timezones});var Pt=(t,e)=>C(t,{icsComponent:t.type,icsKeyMap:Ne,generateValues:{start:({icsKey:r,value:n})=>f(r,Mt(n,t.offsetTo)),recurrenceRule:({value:r})=>Y(r),recurrenceDate:({icsKey:r,value:n})=>T(r,n)},omitGenerateKeys:["type"],nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines});var kt=(t,e)=>C(t,{icsComponent:W,icsKeyMap:Ce,generateValues:{lastModified:({icsKey:r,value:n})=>f(r,v(n))},childComponents:{props:r=>Pt(r,{nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:!0})},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines});var Yt=(t,e)=>C(t,{icsComponent:w,icsKeyMap:ve,generateValues:{stamp:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones,forceUtc:!0}),start:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),due:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),created:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),lastModified:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),completed:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),categories:({icsKey:r,value:n})=>f(r,n.join(",")),description:({icsKey:r,value:n})=>O(r,n),location:({icsKey:r,value:n})=>O(r,n),comment:({icsKey:r,value:n})=>O(r,n),summary:({icsKey:r,value:n})=>O(r,n),recurrenceRule:({value:r})=>Y(r),duration:({icsKey:r,value:n})=>f(r,M(n)),organizer:({value:r})=>k(r),sequence:({icsKey:r,value:n})=>h(r,n),percentComplete:({icsKey:r,value:n})=>h(r,n),recurrenceId:({value:r})=>xe(r,{timezones:e==null?void 0:e.timezones})},generateArrayValues:{attendees:({value:r})=>V(r,"ATTENDEE"),exceptionDates:({value:r})=>Ee(r,"EXDATE",{timezones:e==null?void 0:e.timezones})},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines,timezones:e==null?void 0:e.timezones});var Bt=(t,e)=>C(t,{icsComponent:H,icsKeyMap:Ae,generateValues:{stamp:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones,forceUtc:!0}),start:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),created:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),lastModified:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),categories:({icsKey:r,value:n})=>f(r,n.join(",")),description:({icsKey:r,value:n})=>O(r,n),comment:({icsKey:r,value:n})=>O(r,n),summary:({icsKey:r,value:n})=>O(r,n),recurrenceRule:({value:r})=>Y(r),organizer:({value:r})=>k(r),sequence:({icsKey:r,value:n})=>h(r,n),recurrenceId:({value:r})=>xe(r,{timezones:e==null?void 0:e.timezones})},generateArrayValues:{attendees:({value:r})=>V(r,"ATTENDEE"),exceptionDates:({value:r})=>Ee(r,"EXDATE",{timezones:e==null?void 0:e.timezones})},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines,timezones:e==null?void 0:e.timezones});var rn=(t,e)=>{let r=t.values.map(o=>`${v(o.start)}/${o.end?v(o.end):M(o.duration)}`).join(","),n=S([t.type&&{key:"FBTYPE",value:t.type}].filter(o=>!!o));return f(e,r,n)};var Ft=(t,e)=>C(t,{icsComponent:q,icsKeyMap:be,generateValues:{stamp:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones,forceUtc:!0}),start:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),end:({icsKey:r,value:n})=>T(r,n,void 0,{timezones:e==null?void 0:e.timezones}),comment:({icsKey:r,value:n})=>O(r,n),organizer:({value:r})=>k(r)},generateArrayValues:{attendees:({value:r})=>V(r,"ATTENDEE"),freeBusy:({value:r})=>rn(r,"FREEBUSY")},nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:e==null?void 0:e.skipFormatLines,timezones:e==null?void 0:e.timezones});var po=(t,e)=>C(t,{icsComponent:pe,icsKeyMap:Oe,generateValues:{},childComponents:{timezones:r=>kt(r,{nonStandard:e==null?void 0:e.nonStandard,skipFormatLines:!0}),events:r=>Kt(r,{skipFormatLines:!0,timezones:t.timezones,nonStandard:e==null?void 0:e.nonStandard}),todos:r=>Yt(r,{skipFormatLines:!0,timezones:t.timezones,nonStandard:e==null?void 0:e.nonStandard}),journals:r=>Bt(r,{skipFormatLines:!0,timezones:t.timezones,nonStandard:e==null?void 0:e.nonStandard}),freeBusy:r=>Ft(r,{skipFormatLines:!0,timezones:t.timezones,nonStandard:e==null?void 0:e.nonStandard})},nonStandard:e==null?void 0:e.nonStandard});var u=(t,e)=>{if(t===void 0)return e;let r=t["~standard"].validate(e);if(r instanceof Promise)throw new TypeError("Schema validation must be synchronous");if(r.issues)throw new Error(JSON.stringify(r.issues,null,2));return r.value};var jt=(t,e)=>{var n,o,s,a;let r=((n=e.options)==null?void 0:n.VALUE)==="BINARY"?{type:"binary",encoding:((o=e.options)==null?void 0:o.ENCODING)||"BASE64",binary:e.value,value:(s=e.options)==null?void 0:s.VALUE}:{type:"uri",url:e.value,formatType:(a=e.options)==null?void 0:a.FMTTYPE};return u(t,r)};var oe=t=>t.replace(/mailto:/gi,"");var z=(t,e)=>{var r,n,o,s,a,c,m,p,d,l,E;return u(t,{email:oe(e.value),delegatedFrom:(r=e.options)!=null&&r["DELEGATED-FROM"]?oe((n=e.options)==null?void 0:n["DELEGATED-FROM"]):void 0,dir:(o=e.options)==null?void 0:o.DIR,member:(s=e.options)!=null&&s.MEMBER?oe(e.options.MEMBER):void 0,name:(a=e.options)==null?void 0:a.CN,partstat:(c=e.options)==null?void 0:c.PARTSTAT,role:(m=e.options)==null?void 0:m.ROLE,sentBy:(p=e.options)!=null&&p["SENT-BY"]?oe(e.options["SENT-BY"]):void 0,rsvp:(d=e.options)!=null&&d.RSVP?((l=e.options)==null?void 0:l.RSVP)==="TRUE"?!0:((E=e.options)==null?void 0:E.RSVP)==="FALSE"?!1:void 0:void 0})};var L=(t,e)=>{let r=e.value,n={};r[0]==="-"&&(n.before=!0,r=r.slice(1)),r=r.slice(1);let o=r.split("T"),s=o[0];if(s.includes("D")){let[c,m]=s.split("D");n.days=Number(c),s=m}if(s.includes("W")){let[c,m]=s.split("W");n.weeks=Number(c),s=m}let a=o[1];if(a){if(a.includes("H")){let[c,m]=a.split("H");n.hours=Number(c),a=m}if(a.includes("M")){let[c,m]=a.split("M");n.minutes=Number(c),a=m}if(a.includes("S")){let[c,m]=a.split("S");n.seconds=Number(c),a=m}}return u(t,n)};var Ut=(t,e)=>{let r=Number.parseInt(e.value.slice(0,4),10),n=Number.parseInt(e.value.slice(4,6),10)-1,o=Number.parseInt(e.value.slice(6,8),10),s=new Date(Date.UTC(r,n,o));return u(t,s)},B=(t,e)=>{let r=Number.parseInt(e.value.slice(0,4),10),n=Number.parseInt(e.value.slice(4,6),10)-1,o=Number.parseInt(e.value.slice(6,8),10),s=Number.parseInt(e.value.slice(9,11),10),a=Number.parseInt(e.value.slice(11,13),10),c=Number.parseInt(e.value.slice(13,15),10),m=new Date(Date.UTC(r,n,o,s,a,c));return u(t,m)},Wt=(t,e,r)=>{let n=ne(r),o=B(void 0,e),s=Yr(o,n);return u(t,s)};var uo=(t,e)=>{var s,a,c,m,p,d;if(((s=t.options)==null?void 0:s.VALUE)==="DATE")return{date:Ut(void 0,t),type:(a=t.options)==null?void 0:a.VALUE};let r=((c=t.options)==null?void 0:c.VALUE)||"DATE-TIME",n=B(void 0,t);if(!((m=t.options)!=null&&m.TZID))return{date:n,type:r};let o=he(n,t.options.TZID,e==null?void 0:e.timezones);return o?{date:_(n,-o.milliseconds),type:r,local:(p=t.options)!=null&&p.TZID?{date:n,timezone:(d=t.options)==null?void 0:d.TZID,tzoffset:o.offset}:void 0}:{date:n,type:r}},y=(t,e,r)=>u(t,uo(e,r));var Gt=(t,e,r)=>{var o,s,a,c;let n=((o=e.options)==null?void 0:o.VALUE)==="DATE-TIME"||((s=e.options)==null?void 0:s.VALUE)==="DATE"?{type:"absolute",value:y(void 0,e,r),options:{related:(a=e.options)==null?void 0:a.RELATED}}:{type:"relative",value:L(void 0,e),options:{related:(c=e.options)==null?void 0:c.RELATED}};return u(t,n)};var fo=t=>t.startsWith('"')&&t.endsWith('"')?t.slice(1,-1):t,Jt=t=>t.map(e=>{let[r,...n]=e.split(de),o=n.join(de);return{property:r,value:fo(o)}},{}),yo=t=>t.reduce((e,r)=>(e[r.property]=r.value,e),{}),nn=t=>yo(Jt(t));var lo=t=>{let e=!1,r;for(let s=0;s<t.length&&r===void 0;s+=1)t.charAt(s)===It&&(e=!e),t.charAt(s)===Tt&&!e&&(r=s);if(r===void 0)throw Error(`Line not valid: ${t}`);let n=t.substring(0,r),o=t.substring(r+1);return{property:n,value:o}},on=t=>{let{property:e,value:r}=lo(t);if(e.includes($)){let[n,...o]=e.split($),s=nn(o);return{property:n,line:{options:s,value:r}}}return{property:e,line:{value:r}}};var an=t=>/^[ \t]/.test(t),To=t=>/^[A-Z]+(?:-[A-Z]+)*[:;]/.test(t),sn=t=>{let e=[],r=t.split(ue);for(;r[0]==="";)r.shift();let n=r.length;for(;n>0&&r[n-1]==="";)n-=1,r.pop();for(let o=0;o<r.length;){let s=r[o];for(o+=1;r[o]!==void 0&&(an(r[o])||!To(r[o]));)r[o]===""?s+=Ze:an(r[o])?s+=r[o].substring(1):(s+=Ze,s+=r[o]),o+=1;e.push(s)}return e.filter(o=>o!=="")};var wt=(t,e,r)=>{if(!e)return t;let n={};return Object.entries(e).forEach(([o,s])=>{let a=Object.entries(r||{}).find(([p,d])=>d.name===o);if(!a){n[Io(o)]=s.value;return}let c=a[1].convert(s),m=a[1].schema;if(!m){n[a[0]]=c;return}n[a[0]]=u(m,c)}),t.nonStandard=n,t},Io=t=>{let e=t.startsWith("X-")?t.slice(2):t,r="",n=!1;for(let o of e)o==="-"?n=!0:(r+=n?o.toUpperCase():o.toLowerCase(),n=!1);return r};var cn=t=>t.startsWith("X-");var N=(t,e,r)=>{let n=e.replace(yt(r==null?void 0:r.icsComponent),""),o=[...new Set(Object.values(r.childComponents||{}).flatMap(({icsComponent:l})=>l))],s=sn(o.reduce((l,E)=>l.replace($e(E),""),n)),a=r.defaultValues||{},c={};s.forEach(l=>{var U,De;let{property:E,line:A}=on(l);cn(E)&&(c[E]=A);let D=r.objectKeyMap[E];if(!D)return;let Se=(U=r.convertArrayValues)==null?void 0:U[D];if(Se){let ae=Se({line:A});if(!ae)return;(a[D]===void 0||a[D]===null||!Array.isArray(a[D]))&&(a[D]=[]),Array.isArray(ae)?a[D].push(...ae):a[D].push(ae);return}let ut=(De=r.convertValues)==null?void 0:De[D];if(ut){let ae=ut({line:A});if(!ae)return;a[D]=ae;return}a[D]=A.value});let m=r.childComponents,p=m?Object.keys(m||{}):[];m&&p.length>0&&p.forEach(l=>{let E=m==null?void 0:m[l];if(!E)return;let A=Array.isArray(E.icsComponent)?E.icsComponent:[E.icsComponent],D=[],Se=[];A.forEach(U=>{Se.push(...n.matchAll($e(U)))}),Se.map(U=>U[0]).forEach(U=>{let De=E.convert(U,{data:a});De&&D.push(De)}),D.length!==0&&(a[l]=D)});let d=u(t,a);return r!=null&&r.nonStandard?wt(d,c,r==null?void 0:r.nonStandard):d};var F=(t,e)=>{var r,n,o;return u(t,{name:(r=e.options)==null?void 0:r.CN,dir:(n=e.options)==null?void 0:n.DIR,sentBy:(o=e.options)!=null&&o["SENT-BY"]?oe(e.options["SENT-BY"]):void 0,email:oe(e.value)})};var ce=(t,e,r)=>{var n;return u(t,{value:y(void 0,e,r),range:(n=e.options)==null?void 0:n.RANGE})};var Eo=t=>{if(t.length===2)return{day:t};let r=t.slice(0,-2);return{day:t.replace(r,""),occurrence:Number(r)}},Ht=(t,e)=>u(t,Eo(e.value));var qt=(t,e)=>u(t,e.value);var xo=["until"],mn=t=>xo.includes(t),So=["bySecond","byMinute","byHour","byMonthday","byYearday","byWeekNo","bySetPos"],pn=t=>So.includes(t),Do=["byDay"],un=t=>Do.includes(t),go=["count","interval"],dn=t=>go.includes(t),j=(t,e,r)=>{let n={};return Jt(e.value.split($)).forEach(s=>{let{property:a,value:c}=s,m=je[a];if(m){if(mn(m)){n[m]=y(void 0,{value:c,options:{VALUE:c.includes("T")?"DATE-TIME":"DATE"}},{timezones:r==null?void 0:r.timezones});return}if(pn(m)){n[m]=c.split(b).map(p=>Number(p));return}if(m==="byMonth"){n[m]=c.split(b).map(p=>Number(p)-1);return}if(un(m)){n[m]=c.split(b).map(p=>Ht(void 0,{value:p}));return}if(dn(m)){n[m]=Number(c);return}if(m==="frequency"){if(!c||!Ct.includes(c))return;n[m]=c;return}if(m==="workweekStart"){n[m]=qt(void 0,{value:c});return}}}),u(t,n)};var me=(t,e)=>u(t,e.value);var $t=(t,e)=>u(t,e.value);var ie=(t,e,r)=>u(t,e.value.split(",").map(n=>y(void 0,{value:n,options:e.options},r)));var Zt=(t,e)=>u(t,e.value),Xt=(t,e)=>u(t,e.value),Qt=(t,e)=>u(t,e.value);var K=(t,e)=>u(t,Number.parseInt(e.value,10));var fn=t=>t.replace(/\\(([,;\\])|([nN]))/g,(e,r,n)=>n||`
|
|
`);var R=(t,e)=>u(t,fn(e.value));var er=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:J,objectKeyMap:Pe,convertValues:{trigger:({line:o})=>Gt(void 0,o,{timezones:n==null?void 0:n.timezones}),duration:({line:o})=>L(void 0,o),repeat:({line:o})=>K(void 0,o)},convertArrayValues:{attachments:({line:o})=>jt(void 0,o),attendees:({line:o})=>z(void 0,o)},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var tr=(...t)=>{let[e,r,n]=t,o,s=N(e,r,{icsComponent:G,objectKeyMap:Ye,convertValues:{stamp:({line:a})=>y(void 0,a,{timezones:n==null?void 0:n.timezones}),start:({line:a})=>y(void 0,a,{timezones:n==null?void 0:n.timezones}),end:({line:a})=>y(void 0,a,{timezones:n==null?void 0:n.timezones}),created:({line:a})=>y(void 0,a,{timezones:n==null?void 0:n.timezones}),lastModified:({line:a})=>y(void 0,a,{timezones:n==null?void 0:n.timezones}),categories:({line:a})=>a.value.split(b),description:({line:a})=>{var c;return(c=a.options)!=null&&c.ALTREP&&(o=a.options.ALTREP),R(void 0,a)},location:({line:a})=>R(void 0,a),comment:({line:a})=>R(void 0,a),summary:({line:a})=>R(void 0,a),recurrenceRule:({line:a})=>j(void 0,a,{timezones:n==null?void 0:n.timezones}),duration:({line:a})=>L(void 0,a),organizer:({line:a})=>F(void 0,a),sequence:({line:a})=>K(void 0,a),class:({line:a})=>me(void 0,a),recurrenceId:({line:a})=>ce(void 0,a,{timezones:n==null?void 0:n.timezones}),status:({line:a})=>Zt(void 0,a),timeTransparent:({line:a})=>$t(void 0,a)},convertArrayValues:{attendees:({line:a})=>z(void 0,a),exceptionDates:({line:a})=>ie(void 0,a,{timezones:n==null?void 0:n.timezones})},childComponents:{alarms:{icsComponent:J,convert:a=>er(void 0,a,{nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})}},timezones:n==null?void 0:n.timezones,nonStandard:n==null?void 0:n.nonStandard});return o&&(s.descriptionAltRep=o),s};var rr=(...t)=>{let[e,r,n]=t,o=r.split("BEGIN:")[1].split(ue)[0],s=Rt.includes(o)?o:"STANDARD",a=r.split("TZOFFSETTO:")[1].split(ue)[0];return N(e,r,{icsComponent:s,objectKeyMap:Fe,defaultValues:{type:s},convertValues:{start:({line:c})=>Wt(void 0,c,a),recurrenceRule:({line:c})=>j(void 0,c,{timezones:n==null?void 0:n.timezones}),recurrenceDate:({line:c})=>y(void 0,c,{timezones:n==null?void 0:n.timezones})},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var nr=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:W,objectKeyMap:Be,convertValues:{lastModified:({line:o})=>B(void 0,o)},childComponents:{props:{icsComponent:["DAYLIGHT","STANDARD"],convert:o=>rr(void 0,o,{nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})}},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var or=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:w,objectKeyMap:Ue,convertValues:{stamp:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),start:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),due:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),created:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),lastModified:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),completed:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),categories:({line:o})=>o.value.split(b),description:({line:o})=>R(void 0,o),location:({line:o})=>R(void 0,o),comment:({line:o})=>R(void 0,o),summary:({line:o})=>R(void 0,o),recurrenceRule:({line:o})=>j(void 0,o,{timezones:n==null?void 0:n.timezones}),duration:({line:o})=>L(void 0,o),organizer:({line:o})=>F(void 0,o),sequence:({line:o})=>K(void 0,o),percentComplete:({line:o})=>K(void 0,o),class:({line:o})=>me(void 0,o),recurrenceId:({line:o})=>ce(void 0,o,{timezones:n==null?void 0:n.timezones}),status:({line:o})=>Xt(void 0,o)},convertArrayValues:{attendees:({line:o})=>z(void 0,o),exceptionDates:({line:o})=>ie(void 0,o,{timezones:n==null?void 0:n.timezones})},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var ar=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:H,objectKeyMap:We,convertValues:{stamp:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),start:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),created:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),lastModified:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),categories:({line:o})=>o.value.split(b),description:({line:o})=>R(void 0,o),comment:({line:o})=>R(void 0,o),summary:({line:o})=>R(void 0,o),recurrenceRule:({line:o})=>j(void 0,o,{timezones:n==null?void 0:n.timezones}),organizer:({line:o})=>F(void 0,o),sequence:({line:o})=>K(void 0,o),class:({line:o})=>me(void 0,o),recurrenceId:({line:o})=>ce(void 0,o,{timezones:n==null?void 0:n.timezones}),status:({line:o})=>Qt(void 0,o)},convertArrayValues:{attendees:({line:o})=>z(void 0,o),exceptionDates:({line:o})=>ie(void 0,o,{timezones:n==null?void 0:n.timezones})},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var yn=(t,e)=>{var r;return u(t,{type:(r=e.options)==null?void 0:r.FBTYPE,values:e.value.split(",").map(n=>{let[o,s]=n.split("/"),a=B(void 0,{value:o});if(s.startsWith("PT")){let m=L(void 0,{value:s});return{start:a,duration:m}}let c=B(void 0,{value:s});return{start:a,end:c}})})};var sr=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:q,objectKeyMap:Ge,convertValues:{stamp:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),start:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),end:({line:o})=>y(void 0,o,{timezones:n==null?void 0:n.timezones}),comment:({line:o})=>R(void 0,o),organizer:({line:o})=>F(void 0,o)},convertArrayValues:{attendees:({line:o})=>z(void 0,o),freeBusy:({line:o})=>yn(void 0,o)},nonStandard:n==null?void 0:n.nonStandard,timezones:n==null?void 0:n.timezones})};var Oo=(...t)=>{let[e,r,n]=t;return N(e,r,{icsComponent:pe,objectKeyMap:ke,convertValues:{version:({line:o})=>o.value},childComponents:{timezones:{icsComponent:W,convert:o=>nr(void 0,o,{nonStandard:n==null?void 0:n.nonStandard})},events:{icsComponent:G,convert:(o,{data:s})=>tr(void 0,o,{nonStandard:n==null?void 0:n.nonStandard,timezones:s.timezones})},todos:{icsComponent:w,convert:(o,{data:s})=>or(void 0,o,{nonStandard:n==null?void 0:n.nonStandard,timezones:s.timezones})},journals:{icsComponent:H,convert:(o,{data:s})=>ar(void 0,o,{nonStandard:n==null?void 0:n.nonStandard,timezones:s.timezones})},freeBusy:{icsComponent:q,convert:(o,{data:s})=>sr(void 0,o,{nonStandard:n==null?void 0:n.nonStandard,timezones:s.timezones})}},nonStandard:n==null?void 0:n.nonStandard})};0&&(module.exports={BREAK_REGEX,COMMA,CRLF_BREAK,CRLF_BREAK_REGEX,DEFAULT_END_IN_YEARS,EQUAL_SIGN,ICS_COMPONENTS,LF_BREAK,MAX_LINE_LENGTH,OBJECT_END,OBJECT_START,QUOTE,RRULE_KEYS,RRULE_OBJECT_KEYS,RRULE_TO_KEYS,RRULE_TO_OBJECT_KEYS,SEMICOLON,SEPARATOR,SPACE,TIMEZONE_PROP_COMPONENTS,VALARM_KEYS,VALARM_OBJECT_KEY,VALARM_OBJECT_KEYS,VALARM_TO_KEYS,VALARM_TO_OBJECT_KEYS,VCALENDAR_KEYS,VCALENDAR_OBJECT_KEY,VCALENDAR_OBJECT_KEYS,VCALENDAR_TO_KEYS,VCALENDAR_TO_OBJECT_KEYS,VEVENT_KEYS,VEVENT_OBJECT_KEY,VEVENT_OBJECT_KEYS,VEVENT_TO_KEYS,VEVENT_TO_OBJECT_KEYS,VFREEBUSY_KEYS,VFREEBUSY_OBJECT_KEY,VFREEBUSY_OBJECT_KEYS,VFREEBUSY_TO_KEYS,VFREEBUSY_TO_OBJECT_KEYS,VJOURNAL_KEYS,VJOURNAL_OBJECT_KEY,VJOURNAL_OBJECT_KEYS,VJOURNAL_TO_KEYS,VJOURNAL_TO_OBJECT_KEYS,VTIMEZONE_DAYLIGHT_OBJECT_KEY,VTIMEZONE_KEYS,VTIMEZONE_OBJECT_KEY,VTIMEZONE_OBJECT_KEYS,VTIMEZONE_PROP_KEYS,VTIMEZONE_PROP_OBJECT_KEYS,VTIMEZONE_PROP_TO_KEYS,VTIMEZONE_PROP_TO_OBJECT_KEYS,VTIMEZONE_STANDARD_OBJECT_KEY,VTIMEZONE_TO_KEYS,VTIMEZONE_TO_OBJECT_KEYS,VTODO_KEYS,VTODO_OBJECT_KEY,VTODO_OBJECT_KEYS,VTODO_TO_KEYS,VTODO_TO_OBJECT_KEYS,attachmentEncodingTypes,attachmentValueTypes,attendeePartStatusTypes,calendarMethods,calendarVersions,classTypes,convertIcsAlarm,convertIcsAttachment,convertIcsAttendee,convertIcsCalendar,convertIcsClass,convertIcsDate,convertIcsDateTime,convertIcsDuration,convertIcsEvent,convertIcsEventStatus,convertIcsExceptionDates,convertIcsFreeBusy,convertIcsInteger,convertIcsJournal,convertIcsJournalStatus,convertIcsLocalOnlyDateTime,convertIcsOrganizer,convertIcsRecurrenceId,convertIcsRecurrenceRule,convertIcsText,convertIcsTimeStamp,convertIcsTimeTransparent,convertIcsTimezone,convertIcsTimezoneProp,convertIcsTodo,convertIcsTodoStatus,convertIcsTrigger,convertIcsWeekDay,convertIcsWeekDayNumber,convertNonStandardValues,createGetRegex,createReplaceRegex,dateObjectTypes,eventStatusTypes,extendByRecurrenceRule,extendTimezoneProps,freeBusyTypes,generateIcsAlarm,generateIcsAttachment,generateIcsAttendee,generateIcsCalendar,generateIcsDate,generateIcsDuration,generateIcsEvent,generateIcsFreeBusy,generateIcsInteger,generateIcsJournal,generateIcsLocalDateTime,generateIcsLocalOnlyDateTime,generateIcsMail,generateIcsOrganizer,generateIcsRecurrenceRule,generateIcsText,generateIcsTimeStamp,generateIcsTimezone,generateIcsTimezoneProp,generateIcsTodo,generateIcsTrigger,generateIcsUtcDateTime,generateIcsWeekdayNumber,generateNonStandardValues,getDurationFromInterval,getEventEnd,getEventEndFromDuration,getTimezoneObjectOffset,journalStatusTypes,recurrenceObjectKeyIsNumber,recurrenceObjectKeyIsNumberArray,recurrenceObjectKeyIsTimeStamp,recurrenceObjectKeyIsWeekdayNumberArray,recurrenceRuleFrequencies,timeTransparentTypes,timeZoneOffsetToMilliseconds,todoStatusTypes,triggerRelations,weekDays});
|