@tachybase/module-cron 1.3.18 → 1.3.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/cron-jobs-table/CronJobsTable.schema.d.ts +2 -3
- package/dist/client/index.js +3 -3
- package/dist/externalVersion.js +7 -7
- package/dist/node_modules/cron-parser/LICENSE +1 -1
- package/dist/node_modules/cron-parser/lib/date.js +252 -0
- package/dist/node_modules/cron-parser/lib/expression.js +1002 -0
- package/dist/node_modules/cron-parser/lib/field_compactor.js +70 -0
- package/dist/node_modules/cron-parser/lib/field_stringify.js +58 -0
- package/dist/node_modules/cron-parser/lib/parser.js +1 -0
- package/dist/node_modules/cron-parser/package.json +1 -1
- package/dist/node_modules/cron-parser/types/common.d.ts +131 -0
- package/dist/node_modules/cron-parser/types/index.d.ts +45 -0
- package/dist/node_modules/cron-parser/types/ts3/index.d.ts +28 -0
- package/dist/server/service/StaticScheduleTrigger.d.ts +1 -1
- package/package.json +10 -10
- package/dist/node_modules/cron-parser/dist/CronDate.js +0 -497
- package/dist/node_modules/cron-parser/dist/CronExpression.js +0 -376
- package/dist/node_modules/cron-parser/dist/CronExpressionParser.js +0 -384
- package/dist/node_modules/cron-parser/dist/CronFieldCollection.js +0 -371
- package/dist/node_modules/cron-parser/dist/CronFileParser.js +0 -109
- package/dist/node_modules/cron-parser/dist/fields/CronDayOfMonth.js +0 -44
- package/dist/node_modules/cron-parser/dist/fields/CronDayOfWeek.js +0 -51
- package/dist/node_modules/cron-parser/dist/fields/CronField.js +0 -183
- package/dist/node_modules/cron-parser/dist/fields/CronHour.js +0 -40
- package/dist/node_modules/cron-parser/dist/fields/CronMinute.js +0 -40
- package/dist/node_modules/cron-parser/dist/fields/CronMonth.js +0 -44
- package/dist/node_modules/cron-parser/dist/fields/CronSecond.js +0 -40
- package/dist/node_modules/cron-parser/dist/fields/index.js +0 -24
- package/dist/node_modules/cron-parser/dist/fields/types.js +0 -2
- package/dist/node_modules/cron-parser/dist/index.js +0 -1
- package/dist/node_modules/cron-parser/dist/types/CronDate.d.ts +0 -273
- package/dist/node_modules/cron-parser/dist/types/CronExpression.d.ts +0 -110
- package/dist/node_modules/cron-parser/dist/types/CronExpressionParser.d.ts +0 -70
- package/dist/node_modules/cron-parser/dist/types/CronFieldCollection.d.ts +0 -153
- package/dist/node_modules/cron-parser/dist/types/CronFileParser.d.ts +0 -30
- package/dist/node_modules/cron-parser/dist/types/fields/CronDayOfMonth.d.ts +0 -25
- package/dist/node_modules/cron-parser/dist/types/fields/CronDayOfWeek.d.ts +0 -30
- package/dist/node_modules/cron-parser/dist/types/fields/CronField.d.ts +0 -114
- package/dist/node_modules/cron-parser/dist/types/fields/CronHour.d.ts +0 -23
- package/dist/node_modules/cron-parser/dist/types/fields/CronMinute.d.ts +0 -23
- package/dist/node_modules/cron-parser/dist/types/fields/CronMonth.d.ts +0 -24
- package/dist/node_modules/cron-parser/dist/types/fields/CronSecond.d.ts +0 -23
- package/dist/node_modules/cron-parser/dist/types/fields/index.d.ts +0 -8
- package/dist/node_modules/cron-parser/dist/types/fields/types.d.ts +0 -18
- package/dist/node_modules/cron-parser/dist/types/index.d.ts +0 -8
- package/dist/node_modules/cron-parser/dist/types/utils/random.d.ts +0 -10
- package/dist/node_modules/cron-parser/dist/utils/random.js +0 -38
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function(){"use strict";var e={557:function(e,t){Object.defineProperty(t,"__esModule",{value:true});class LuxonError extends Error{}class InvalidDateTimeError extends LuxonError{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class InvalidIntervalError extends LuxonError{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class InvalidDurationError extends LuxonError{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class ConflictingSpecificationError extends LuxonError{}class InvalidUnitError extends LuxonError{constructor(e){super(`Invalid unit ${e}`)}}class InvalidArgumentError extends LuxonError{}class ZoneIsAbstractError extends LuxonError{constructor(){super("Zone is an abstract class")}}const n="numeric",r="short",s="long";const i={year:n,month:n,day:n};const a={year:n,month:r,day:n};const o={year:n,month:r,day:n,weekday:r};const u={year:n,month:s,day:n};const l={year:n,month:s,day:n,weekday:s};const c={hour:n,minute:n};const d={hour:n,minute:n,second:n};const f={hour:n,minute:n,second:n,timeZoneName:r};const h={hour:n,minute:n,second:n,timeZoneName:s};const m={hour:n,minute:n,hourCycle:"h23"};const y={hour:n,minute:n,second:n,hourCycle:"h23"};const g={hour:n,minute:n,second:n,hourCycle:"h23",timeZoneName:r};const p={hour:n,minute:n,second:n,hourCycle:"h23",timeZoneName:s};const O={year:n,month:n,day:n,hour:n,minute:n};const w={year:n,month:n,day:n,hour:n,minute:n,second:n};const v={year:n,month:r,day:n,hour:n,minute:n};const D={year:n,month:r,day:n,hour:n,minute:n,second:n};const k={year:n,month:r,day:n,weekday:r,hour:n,minute:n};const T={year:n,month:s,day:n,hour:n,minute:n,timeZoneName:r};const S={year:n,month:s,day:n,hour:n,minute:n,second:n,timeZoneName:r};const b={year:n,month:s,day:n,weekday:s,hour:n,minute:n,timeZoneName:s};const I={year:n,month:s,day:n,weekday:s,hour:n,minute:n,second:n,timeZoneName:s};class Zone{get type(){throw new ZoneIsAbstractError}get name(){throw new ZoneIsAbstractError}get ianaName(){return this.name}get isUniversal(){throw new ZoneIsAbstractError}offsetName(e,t){throw new ZoneIsAbstractError}formatOffset(e,t){throw new ZoneIsAbstractError}offset(e){throw new ZoneIsAbstractError}equals(e){throw new ZoneIsAbstractError}get isValid(){throw new ZoneIsAbstractError}}let M=null;class SystemZone extends Zone{static get instance(){if(M===null){M=new SystemZone}return M}get type(){return"system"}get name(){return(new Intl.DateTimeFormat).resolvedOptions().timeZone}get isUniversal(){return false}offsetName(e,{format:t,locale:n}){return parseZoneInfo(e,t,n)}formatOffset(e,t){return formatOffset(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return true}}const C=new Map;function makeDTF(e){let t=C.get(e);if(t===undefined){t=new Intl.DateTimeFormat("en-US",{hour12:false,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"});C.set(e,t)}return t}const x={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function hackyOffset(e,t){const n=e.format(t).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,s,i,a,o,u,l,c]=r;return[a,s,i,o,u,l,c]}function partsOffset(e,t){const n=e.formatToParts(t);const r=[];for(let e=0;e<n.length;e++){const{type:t,value:s}=n[e];const i=x[t];if(t==="era"){r[i]=s}else if(!isUndefined(i)){r[i]=parseInt(s,10)}}return r}const E=new Map;class IANAZone extends Zone{static create(e){let t=E.get(e);if(t===undefined){E.set(e,t=new IANAZone(e))}return t}static resetCache(){E.clear();C.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e){return false}try{new Intl.DateTimeFormat("en-US",{timeZone:e}).format();return true}catch(e){return false}}constructor(e){super();this.zoneName=e;this.valid=IANAZone.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return false}offsetName(e,{format:t,locale:n}){return parseZoneInfo(e,t,n,this.name)}formatOffset(e,t){return formatOffset(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=makeDTF(this.name);let[r,s,i,a,o,u,l]=n.formatToParts?partsOffset(n,t):hackyOffset(n,t);if(a==="BC"){r=-Math.abs(r)+1}const c=o===24?0:o;const d=objToLocalTS({year:r,month:s,day:i,hour:c,minute:u,second:l,millisecond:0});let f=+t;const h=f%1e3;f-=h>=0?h:1e3+h;return(d-f)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let F={};function getCachedLF(e,t={}){const n=JSON.stringify([e,t]);let r=F[n];if(!r){r=new Intl.ListFormat(e,t);F[n]=r}return r}const N=new Map;function getCachedDTF(e,t={}){const n=JSON.stringify([e,t]);let r=N.get(n);if(r===undefined){r=new Intl.DateTimeFormat(e,t);N.set(n,r)}return r}const W=new Map;function getCachedINF(e,t={}){const n=JSON.stringify([e,t]);let r=W.get(n);if(r===undefined){r=new Intl.NumberFormat(e,t);W.set(n,r)}return r}const L=new Map;function getCachedRTF(e,t={}){const{base:n,...r}=t;const s=JSON.stringify([e,r]);let i=L.get(s);if(i===undefined){i=new Intl.RelativeTimeFormat(e,t);L.set(s,i)}return i}let Z=null;function systemLocale(){if(Z){return Z}else{Z=(new Intl.DateTimeFormat).resolvedOptions().locale;return Z}}const V=new Map;function getCachedIntResolvedOptions(e){let t=V.get(e);if(t===undefined){t=new Intl.DateTimeFormat(e).resolvedOptions();V.set(e,t)}return t}const U=new Map;function getCachedWeekInfo(e){let t=U.get(e);if(!t){const n=new Intl.Locale(e);t="getWeekInfo"in n?n.getWeekInfo():n.weekInfo;if(!("minimalDays"in t)){t={...$,...t}}U.set(e,t)}return t}function parseLocaleString(e){const t=e.indexOf("-x-");if(t!==-1){e=e.substring(0,t)}const n=e.indexOf("-u-");if(n===-1){return[e]}else{let t;let r;try{t=getCachedDTF(e).resolvedOptions();r=e}catch(s){const i=e.substring(0,n);t=getCachedDTF(i).resolvedOptions();r=i}const{numberingSystem:s,calendar:i}=t;return[r,s,i]}}function intlConfigString(e,t,n){if(n||t){if(!e.includes("-u-")){e+="-u"}if(n){e+=`-ca-${n}`}if(t){e+=`-nu-${t}`}return e}else{return e}}function mapMonths(e){const t=[];for(let n=1;n<=12;n++){const r=DateTime.utc(2009,n,1);t.push(e(r))}return t}function mapWeekdays(e){const t=[];for(let n=1;n<=7;n++){const r=DateTime.utc(2016,11,13+n);t.push(e(r))}return t}function listStuff(e,t,n,r){const s=e.listingMode();if(s==="error"){return null}else if(s==="en"){return n(t)}else{return r(t)}}function supportsFastNumbers(e){if(e.numberingSystem&&e.numberingSystem!=="latn"){return false}else{return e.numberingSystem==="latn"||!e.locale||e.locale.startsWith("en")||getCachedIntResolvedOptions(e.locale).numberingSystem==="latn"}}class PolyNumberFormatter{constructor(e,t,n){this.padTo=n.padTo||0;this.floor=n.floor||false;const{padTo:r,floor:s,...i}=n;if(!t||Object.keys(i).length>0){const t={useGrouping:false,...n};if(n.padTo>0)t.minimumIntegerDigits=n.padTo;this.inf=getCachedINF(e,t)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):roundTo(e,3);return padStart(t,this.padTo)}}}class PolyDateFormatter{constructor(e,t,n){this.opts=n;this.originalZone=undefined;let r=undefined;if(this.opts.timeZone){this.dt=e}else if(e.zone.type==="fixed"){const t=-1*(e.offset/60);const n=t>=0?`Etc/GMT+${t}`:`Etc/GMT${t}`;if(e.offset!==0&&IANAZone.create(n).valid){r=n;this.dt=e}else{r="UTC";this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset});this.originalZone=e.zone}}else if(e.zone.type==="system"){this.dt=e}else if(e.zone.type==="iana"){this.dt=e;r=e.zone.name}else{r="UTC";this.dt=e.setZone("UTC").plus({minutes:e.offset});this.originalZone=e.zone}const s={...this.opts};s.timeZone=s.timeZone||r;this.dtf=getCachedDTF(t,s)}format(){if(this.originalZone){return this.formatToParts().map((({value:e})=>e)).join("")}return this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());if(this.originalZone){return e.map((e=>{if(e.type==="timeZoneName"){const t=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...e,value:t}}else{return e}}))}return e}resolvedOptions(){return this.dtf.resolvedOptions()}}class PolyRelFormatter{constructor(e,t,n){this.opts={style:"long",...n};if(!t&&hasRelative()){this.rtf=getCachedRTF(e,n)}}format(e,t){if(this.rtf){return this.rtf.format(e,t)}else{return formatRelativeTime(t,e,this.opts.numeric,this.opts.style!=="long")}}formatToParts(e,t){if(this.rtf){return this.rtf.formatToParts(e,t)}else{return[]}}}const $={firstDay:1,minimalDays:4,weekend:[6,7]};class Locale{static fromOpts(e){return Locale.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,r,s=false){const i=e||Settings.defaultLocale;const a=i||(s?"en-US":systemLocale());const o=t||Settings.defaultNumberingSystem;const u=n||Settings.defaultOutputCalendar;const l=validateWeekSettings(r)||Settings.defaultWeekSettings;return new Locale(a,o,u,l,i)}static resetCache(){Z=null;N.clear();W.clear();L.clear();V.clear();U.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:r}={}){return Locale.create(e,t,n,r)}constructor(e,t,n,r,s){const[i,a,o]=parseLocaleString(e);this.locale=i;this.numberingSystem=t||a||null;this.outputCalendar=n||o||null;this.weekSettings=r;this.intl=intlConfigString(this.locale,this.numberingSystem,this.outputCalendar);this.weekdaysCache={format:{},standalone:{}};this.monthsCache={format:{},standalone:{}};this.meridiemCache=null;this.eraCache={};this.specifiedLocale=s;this.fastNumbersCached=null}get fastNumbers(){if(this.fastNumbersCached==null){this.fastNumbersCached=supportsFastNumbers(this)}return this.fastNumbersCached}listingMode(){const e=this.isEnglish();const t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){if(!e||Object.getOwnPropertyNames(e).length===0){return this}else{return Locale.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,validateWeekSettings(e.weekSettings)||this.weekSettings,e.defaultToEN||false)}}redefaultToEN(e={}){return this.clone({...e,defaultToEN:true})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:false})}months(e,t=false){return listStuff(this,e,months,(()=>{const n=this.intl==="ja"||this.intl.startsWith("ja-");t&=!n;const r=t?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";if(!this.monthsCache[s][e]){const t=!n?e=>this.extract(e,r,"month"):e=>this.dtFormatter(e,r).format();this.monthsCache[s][e]=mapMonths(t)}return this.monthsCache[s][e]}))}weekdays(e,t=false){return listStuff(this,e,weekdays,(()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},r=t?"format":"standalone";if(!this.weekdaysCache[r][e]){this.weekdaysCache[r][e]=mapWeekdays((e=>this.extract(e,n,"weekday")))}return this.weekdaysCache[r][e]}))}meridiems(){return listStuff(this,undefined,(()=>ie),(()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[DateTime.utc(2016,11,13,9),DateTime.utc(2016,11,13,19)].map((t=>this.extract(t,e,"dayperiod")))}return this.meridiemCache}))}eras(e){return listStuff(this,e,eras,(()=>{const t={era:e};if(!this.eraCache[e]){this.eraCache[e]=[DateTime.utc(-40,1,1),DateTime.utc(2017,1,1)].map((e=>this.extract(e,t,"era")))}return this.eraCache[e]}))}extract(e,t,n){const r=this.dtFormatter(e,t),s=r.formatToParts(),i=s.find((e=>e.type.toLowerCase()===n));return i?i.value:null}numberFormatter(e={}){return new PolyNumberFormatter(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new PolyDateFormatter(e,this.intl,t)}relFormatter(e={}){return new PolyRelFormatter(this.intl,this.isEnglish(),e)}listFormatter(e={}){return getCachedLF(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||getCachedIntResolvedOptions(this.intl).locale.startsWith("en-us")}getWeekSettings(){if(this.weekSettings){return this.weekSettings}else if(!hasLocaleWeekInfo()){return $}else{return getCachedWeekInfo(this.locale)}}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let j=null;class FixedOffsetZone extends Zone{static get utcInstance(){if(j===null){j=new FixedOffsetZone(0)}return j}static instance(e){return e===0?FixedOffsetZone.utcInstance:new FixedOffsetZone(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t){return new FixedOffsetZone(signedOffset(t[1],t[2]))}}return null}constructor(e){super();this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${formatOffset(this.fixed,"narrow")}`}get ianaName(){if(this.fixed===0){return"Etc/UTC"}else{return`Etc/GMT${formatOffset(-this.fixed,"narrow")}`}}offsetName(){return this.name}formatOffset(e,t){return formatOffset(this.fixed,t)}get isUniversal(){return true}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return true}}class InvalidZone extends Zone{constructor(e){super();this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return false}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return false}get isValid(){return false}}function normalizeZone(e,t){if(isUndefined(e)||e===null){return t}else if(e instanceof Zone){return e}else if(isString(e)){const n=e.toLowerCase();if(n==="default")return t;else if(n==="local"||n==="system")return SystemZone.instance;else if(n==="utc"||n==="gmt")return FixedOffsetZone.utcInstance;else return FixedOffsetZone.parseSpecifier(n)||IANAZone.create(e)}else if(isNumber(e)){return FixedOffsetZone.instance(e)}else if(typeof e==="object"&&"offset"in e&&typeof e.offset==="function"){return e}else{return new InvalidZone(e)}}const A={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"};const _={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]};const z=A.hanidec.replace(/[\[|\]]/g,"").split("");function parseDigits(e){let t=parseInt(e,10);if(isNaN(t)){t="";for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);if(e[n].search(A.hanidec)!==-1){t+=z.indexOf(e[n])}else{for(const e in _){const[n,s]=_[e];if(r>=n&&r<=s){t+=r-n}}}}return parseInt(t,10)}else{return t}}const R=new Map;function resetDigitRegexCache(){R.clear()}function digitRegex({numberingSystem:e},t=""){const n=e||"latn";let r=R.get(n);if(r===undefined){r=new Map;R.set(n,r)}let s=r.get(t);if(s===undefined){s=new RegExp(`${A[n]}${t}`);r.set(t,s)}return s}let now=()=>Date.now(),P="system",H=null,Y=null,q=null,J=60,G,B=null;class Settings{static get now(){return now}static set now(e){now=e}static set defaultZone(e){P=e}static get defaultZone(){return normalizeZone(P,SystemZone.instance)}static get defaultLocale(){return H}static set defaultLocale(e){H=e}static get defaultNumberingSystem(){return Y}static set defaultNumberingSystem(e){Y=e}static get defaultOutputCalendar(){return q}static set defaultOutputCalendar(e){q=e}static get defaultWeekSettings(){return B}static set defaultWeekSettings(e){B=validateWeekSettings(e)}static get twoDigitCutoffYear(){return J}static set twoDigitCutoffYear(e){J=e%100}static get throwOnInvalid(){return G}static set throwOnInvalid(e){G=e}static resetCaches(){Locale.resetCache();IANAZone.resetCache();DateTime.resetCache();resetDigitRegexCache()}}class Invalid{constructor(e,t){this.reason=e;this.explanation=t}toMessage(){if(this.explanation){return`${this.reason}: ${this.explanation}`}else{return this.reason}}}const Q=[0,31,59,90,120,151,181,212,243,273,304,334],K=[0,31,60,91,121,152,182,213,244,274,305,335];function unitOutOfRange(e,t){return new Invalid("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function dayOfWeek(e,t,n){const r=new Date(Date.UTC(e,t-1,n));if(e<100&&e>=0){r.setUTCFullYear(r.getUTCFullYear()-1900)}const s=r.getUTCDay();return s===0?7:s}function computeOrdinal(e,t,n){return n+(isLeapYear(e)?K:Q)[t-1]}function uncomputeOrdinal(e,t){const n=isLeapYear(e)?K:Q,r=n.findIndex((e=>e<t)),s=t-n[r];return{month:r+1,day:s}}function isoWeekdayToLocal(e,t){return(e-t+7)%7+1}function gregorianToWeek(e,t=4,n=1){const{year:r,month:s,day:i}=e,a=computeOrdinal(r,s,i),o=isoWeekdayToLocal(dayOfWeek(r,s,i),n);let u=Math.floor((a-o+14-t)/7),l;if(u<1){l=r-1;u=weeksInWeekYear(l,t,n)}else if(u>weeksInWeekYear(r,t,n)){l=r+1;u=1}else{l=r}return{weekYear:l,weekNumber:u,weekday:o,...timeObject(e)}}function weekToGregorian(e,t=4,n=1){const{weekYear:r,weekNumber:s,weekday:i}=e,a=isoWeekdayToLocal(dayOfWeek(r,1,t),n),o=daysInYear(r);let u=s*7+i-a-7+t,l;if(u<1){l=r-1;u+=daysInYear(l)}else if(u>o){l=r+1;u-=daysInYear(r)}else{l=r}const{month:c,day:d}=uncomputeOrdinal(l,u);return{year:l,month:c,day:d,...timeObject(e)}}function gregorianToOrdinal(e){const{year:t,month:n,day:r}=e;const s=computeOrdinal(t,n,r);return{year:t,ordinal:s,...timeObject(e)}}function ordinalToGregorian(e){const{year:t,ordinal:n}=e;const{month:r,day:s}=uncomputeOrdinal(t,n);return{year:t,month:r,day:s,...timeObject(e)}}function usesLocalWeekValues(e,t){const n=!isUndefined(e.localWeekday)||!isUndefined(e.localWeekNumber)||!isUndefined(e.localWeekYear);if(n){const n=!isUndefined(e.weekday)||!isUndefined(e.weekNumber)||!isUndefined(e.weekYear);if(n){throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields")}if(!isUndefined(e.localWeekday))e.weekday=e.localWeekday;if(!isUndefined(e.localWeekNumber))e.weekNumber=e.localWeekNumber;if(!isUndefined(e.localWeekYear))e.weekYear=e.localWeekYear;delete e.localWeekday;delete e.localWeekNumber;delete e.localWeekYear;return{minDaysInFirstWeek:t.getMinDaysInFirstWeek(),startOfWeek:t.getStartOfWeek()}}else{return{minDaysInFirstWeek:4,startOfWeek:1}}}function hasInvalidWeekData(e,t=4,n=1){const r=isInteger(e.weekYear),s=integerBetween(e.weekNumber,1,weeksInWeekYear(e.weekYear,t,n)),i=integerBetween(e.weekday,1,7);if(!r){return unitOutOfRange("weekYear",e.weekYear)}else if(!s){return unitOutOfRange("week",e.weekNumber)}else if(!i){return unitOutOfRange("weekday",e.weekday)}else return false}function hasInvalidOrdinalData(e){const t=isInteger(e.year),n=integerBetween(e.ordinal,1,daysInYear(e.year));if(!t){return unitOutOfRange("year",e.year)}else if(!n){return unitOutOfRange("ordinal",e.ordinal)}else return false}function hasInvalidGregorianData(e){const t=isInteger(e.year),n=integerBetween(e.month,1,12),r=integerBetween(e.day,1,daysInMonth(e.year,e.month));if(!t){return unitOutOfRange("year",e.year)}else if(!n){return unitOutOfRange("month",e.month)}else if(!r){return unitOutOfRange("day",e.day)}else return false}function hasInvalidTimeData(e){const{hour:t,minute:n,second:r,millisecond:s}=e;const i=integerBetween(t,0,23)||t===24&&n===0&&r===0&&s===0,a=integerBetween(n,0,59),o=integerBetween(r,0,59),u=integerBetween(s,0,999);if(!i){return unitOutOfRange("hour",t)}else if(!a){return unitOutOfRange("minute",n)}else if(!o){return unitOutOfRange("second",r)}else if(!u){return unitOutOfRange("millisecond",s)}else return false}function isUndefined(e){return typeof e==="undefined"}function isNumber(e){return typeof e==="number"}function isInteger(e){return typeof e==="number"&&e%1===0}function isString(e){return typeof e==="string"}function isDate(e){return Object.prototype.toString.call(e)==="[object Date]"}function hasRelative(){try{return typeof Intl!=="undefined"&&!!Intl.RelativeTimeFormat}catch(e){return false}}function hasLocaleWeekInfo(){try{return typeof Intl!=="undefined"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch(e){return false}}function maybeArray(e){return Array.isArray(e)?e:[e]}function bestBy(e,t,n){if(e.length===0){return undefined}return e.reduce(((e,r)=>{const s=[t(r),r];if(!e){return s}else if(n(e[0],s[0])===e[0]){return e}else{return s}}),null)[1]}function pick(e,t){return t.reduce(((t,n)=>{t[n]=e[n];return t}),{})}function hasOwnProperty(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function validateWeekSettings(e){if(e==null){return null}else if(typeof e!=="object"){throw new InvalidArgumentError("Week settings must be an object")}else{if(!integerBetween(e.firstDay,1,7)||!integerBetween(e.minimalDays,1,7)||!Array.isArray(e.weekend)||e.weekend.some((e=>!integerBetween(e,1,7)))){throw new InvalidArgumentError("Invalid week settings")}return{firstDay:e.firstDay,minimalDays:e.minimalDays,weekend:Array.from(e.weekend)}}}function integerBetween(e,t,n){return isInteger(e)&&e>=t&&e<=n}function floorMod(e,t){return e-t*Math.floor(e/t)}function padStart(e,t=2){const n=e<0;let r;if(n){r="-"+(""+-e).padStart(t,"0")}else{r=(""+e).padStart(t,"0")}return r}function parseInteger(e){if(isUndefined(e)||e===null||e===""){return undefined}else{return parseInt(e,10)}}function parseFloating(e){if(isUndefined(e)||e===null||e===""){return undefined}else{return parseFloat(e)}}function parseMillis(e){if(isUndefined(e)||e===null||e===""){return undefined}else{const t=parseFloat("0."+e)*1e3;return Math.floor(t)}}function roundTo(e,t,n="round"){const r=10**t;switch(n){case"expand":return e>0?Math.ceil(e*r)/r:Math.floor(e*r)/r;case"trunc":return Math.trunc(e*r)/r;case"round":return Math.round(e*r)/r;case"floor":return Math.floor(e*r)/r;case"ceil":return Math.ceil(e*r)/r;default:throw new RangeError(`Value rounding ${n} is out of range`)}}function isLeapYear(e){return e%4===0&&(e%100!==0||e%400===0)}function daysInYear(e){return isLeapYear(e)?366:365}function daysInMonth(e,t){const n=floorMod(t-1,12)+1,r=e+(t-n)/12;if(n===2){return isLeapYear(r)?29:28}else{return[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}}function objToLocalTS(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);if(e.year<100&&e.year>=0){t=new Date(t);t.setUTCFullYear(e.year,e.month-1,e.day)}return+t}function firstWeekOffset(e,t,n){const r=isoWeekdayToLocal(dayOfWeek(e,1,t),n);return-r+t-1}function weeksInWeekYear(e,t=4,n=1){const r=firstWeekOffset(e,t,n);const s=firstWeekOffset(e+1,t,n);return(daysInYear(e)-r+s)/7}function untruncateYear(e){if(e>99){return e}else return e>Settings.twoDigitCutoffYear?1900+e:2e3+e}function parseZoneInfo(e,t,n,r=null){const s=new Date(e),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};if(r){i.timeZone=r}const a={timeZoneName:t,...i};const o=new Intl.DateTimeFormat(n,a).formatToParts(s).find((e=>e.type.toLowerCase()==="timezonename"));return o?o.value:null}function signedOffset(e,t){let n=parseInt(e,10);if(Number.isNaN(n)){n=0}const r=parseInt(t,10)||0,s=n<0||Object.is(n,-0)?-r:r;return n*60+s}function asNumber(e){const t=Number(e);if(typeof e==="boolean"||e===""||!Number.isFinite(t))throw new InvalidArgumentError(`Invalid unit value ${e}`);return t}function normalizeObject(e,t){const n={};for(const r in e){if(hasOwnProperty(e,r)){const s=e[r];if(s===undefined||s===null)continue;n[t(r)]=asNumber(s)}}return n}function formatOffset(e,t){const n=Math.trunc(Math.abs(e/60)),r=Math.trunc(Math.abs(e%60)),s=e>=0?"+":"-";switch(t){case"short":return`${s}${padStart(n,2)}:${padStart(r,2)}`;case"narrow":return`${s}${n}${r>0?`:${r}`:""}`;case"techie":return`${s}${padStart(n,2)}${padStart(r,2)}`;default:throw new RangeError(`Value format ${t} is out of range for property format`)}}function timeObject(e){return pick(e,["hour","minute","second","millisecond"])}const X=["January","February","March","April","May","June","July","August","September","October","November","December"];const ee=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];const te=["J","F","M","A","M","J","J","A","S","O","N","D"];function months(e){switch(e){case"narrow":return[...te];case"short":return[...ee];case"long":return[...X];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const ne=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];const re=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];const se=["M","T","W","T","F","S","S"];function weekdays(e){switch(e){case"narrow":return[...se];case"short":return[...re];case"long":return[...ne];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const ie=["AM","PM"];const ae=["Before Christ","Anno Domini"];const oe=["BC","AD"];const ue=["B","A"];function eras(e){switch(e){case"narrow":return[...ue];case"short":return[...oe];case"long":return[...ae];default:return null}}function meridiemForDateTime(e){return ie[e.hour<12?0:1]}function weekdayForDateTime(e,t){return weekdays(t)[e.weekday-1]}function monthForDateTime(e,t){return months(t)[e.month-1]}function eraForDateTime(e,t){return eras(t)[e.year<0?0:1]}function formatRelativeTime(e,t,n="always",r=false){const s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]};const i=["hours","minutes","seconds"].indexOf(e)===-1;if(n==="auto"&&i){const n=e==="days";switch(t){case 1:return n?"tomorrow":`next ${s[e][0]}`;case-1:return n?"yesterday":`last ${s[e][0]}`;case 0:return n?"today":`this ${s[e][0]}`}}const a=Object.is(t,-0)||t<0,o=Math.abs(t),u=o===1,l=s[e],c=r?u?l[1]:l[2]||l[1]:u?s[e][0]:e;return a?`${o} ${c} ago`:`in ${o} ${c}`}function stringifyTokens(e,t){let n="";for(const r of e){if(r.literal){n+=r.val}else{n+=t(r.val)}}return n}const le={D:i,DD:a,DDD:u,DDDD:l,t:c,tt:d,ttt:f,tttt:h,T:m,TT:y,TTT:g,TTTT:p,f:O,ff:v,fff:T,ffff:b,F:w,FF:D,FFF:S,FFFF:I};class Formatter{static create(e,t={}){return new Formatter(e,t)}static parseFormat(e){let t=null,n="",r=false;const s=[];for(let i=0;i<e.length;i++){const a=e.charAt(i);if(a==="'"){if(n.length>0||r){s.push({literal:r||/^\s+$/.test(n),val:n===""?"'":n})}t=null;n="";r=!r}else if(r){n+=a}else if(a===t){n+=a}else{if(n.length>0){s.push({literal:/^\s+$/.test(n),val:n})}n=a;t=a}}if(n.length>0){s.push({literal:r||/^\s+$/.test(n),val:n})}return s}static macroTokenToFormatOpts(e){return le[e]}constructor(e,t){this.opts=t;this.loc=e;this.systemLoc=null}formatWithSystemDefault(e,t){if(this.systemLoc===null){this.systemLoc=this.loc.redefaultToSystem()}const n=this.systemLoc.dtFormatter(e,{...this.opts,...t});return n.format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){const n=this.dtFormatter(e.start,t);return n.dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0,n=undefined){if(this.opts.forceSimple){return padStart(e,t)}const r={...this.opts};if(t>0){r.padTo=t}if(n){r.signDisplay=n}return this.loc.numberFormatter(r).format(e)}formatDateTimeFromString(e,t){const n=this.loc.listingMode()==="en",r=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",string=(t,n)=>this.loc.extract(e,t,n),formatOffset=t=>{if(e.isOffsetFixed&&e.offset===0&&t.allowZ){return"Z"}return e.isValid?e.zone.formatOffset(e.ts,t.format):""},meridiem=()=>n?meridiemForDateTime(e):string({hour:"numeric",hourCycle:"h12"},"dayperiod"),month=(t,r)=>n?monthForDateTime(e,t):string(r?{month:t}:{month:t,day:"numeric"},"month"),weekday=(t,r)=>n?weekdayForDateTime(e,t):string(r?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday"),maybeMacro=t=>{const n=Formatter.macroTokenToFormatOpts(t);if(n){return this.formatWithSystemDefault(e,n)}else{return t}},era=t=>n?eraForDateTime(e,t):string({era:t},"era"),tokenToString=t=>{switch(t){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return formatOffset({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return formatOffset({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return formatOffset({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return meridiem();case"d":return r?string({day:"numeric"},"day"):this.num(e.day);case"dd":return r?string({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return weekday("short",true);case"cccc":return weekday("long",true);case"ccccc":return weekday("narrow",true);case"E":return this.num(e.weekday);case"EEE":return weekday("short",false);case"EEEE":return weekday("long",false);case"EEEEE":return weekday("narrow",false);case"L":return r?string({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return r?string({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return month("short",true);case"LLLL":return month("long",true);case"LLLLL":return month("narrow",true);case"M":return r?string({month:"numeric"},"month"):this.num(e.month);case"MM":return r?string({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return month("short",false);case"MMMM":return month("long",false);case"MMMMM":return month("narrow",false);case"y":return r?string({year:"numeric"},"year"):this.num(e.year);case"yy":return r?string({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return r?string({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return r?string({year:"numeric"},"year"):this.num(e.year,6);case"G":return era("short");case"GG":return era("long");case"GGGGG":return era("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return maybeMacro(t)}};return stringifyTokens(Formatter.parseFormat(t),tokenToString)}formatDurationFromString(e,t){const n=this.opts.signMode==="negativeLargestOnly"?-1:1;const tokenToField=e=>{switch(e[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},tokenToString=(e,t)=>r=>{const s=tokenToField(r);if(s){const i=t.isNegativeDuration&&s!==t.largestUnit?n:1;let a;if(this.opts.signMode==="negativeLargestOnly"&&s!==t.largestUnit){a="never"}else if(this.opts.signMode==="all"){a="always"}else{a="auto"}return this.num(e.get(s)*i,r.length,a)}else{return r}},r=Formatter.parseFormat(t),s=r.reduce(((e,{literal:t,val:n})=>t?e:e.concat(n)),[]),i=e.shiftTo(...s.map(tokenToField).filter((e=>e))),a={isNegativeDuration:i<0,largestUnit:Object.keys(i.values)[0]};return stringifyTokens(r,tokenToString(i,a))}}const ce=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function combineRegexes(...e){const t=e.reduce(((e,t)=>e+t.source),"");return RegExp(`^${t}$`)}function combineExtractors(...e){return t=>e.reduce((([e,n,r],s)=>{const[i,a,o]=s(t,r);return[{...e,...i},a||n,o]}),[{},null,1]).slice(0,2)}function parse(e,...t){if(e==null){return[null,null]}for(const[n,r]of t){const t=n.exec(e);if(t){return r(t)}}return[null,null]}function simpleParse(...e){return(t,n)=>{const r={};let s;for(s=0;s<e.length;s++){r[e[s]]=parseInteger(t[n+s])}return[r,null,n+s]}}const de=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/;const fe=`(?:${de.source}?(?:\\[(${ce.source})\\])?)?`;const he=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/;const me=RegExp(`${he.source}${fe}`);const ye=RegExp(`(?:[Tt]${me.source})?`);const ge=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/;const pe=/(\d{4})-?W(\d\d)(?:-?(\d))?/;const Oe=/(\d{4})-?(\d{3})/;const we=simpleParse("weekYear","weekNumber","weekDay");const ve=simpleParse("year","ordinal");const De=/(\d{4})-(\d\d)-(\d\d)/;const ke=RegExp(`${he.source} ?(?:${de.source}|(${ce.source}))?`);const Te=RegExp(`(?: ${ke.source})?`);function int(e,t,n){const r=e[t];return isUndefined(r)?n:parseInteger(r)}function extractISOYmd(e,t){const n={year:int(e,t),month:int(e,t+1,1),day:int(e,t+2,1)};return[n,null,t+3]}function extractISOTime(e,t){const n={hours:int(e,t,0),minutes:int(e,t+1,0),seconds:int(e,t+2,0),milliseconds:parseMillis(e[t+3])};return[n,null,t+4]}function extractISOOffset(e,t){const n=!e[t]&&!e[t+1],r=signedOffset(e[t+1],e[t+2]),s=n?null:FixedOffsetZone.instance(r);return[{},s,t+3]}function extractIANAZone(e,t){const n=e[t]?IANAZone.create(e[t]):null;return[{},n,t+1]}const Se=RegExp(`^T?${he.source}$`);const be=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function extractISODuration(e){const[t,n,r,s,i,a,o,u,l]=e;const c=t[0]==="-";const d=u&&u[0]==="-";const maybeNegate=(e,t=false)=>e!==undefined&&(t||e&&c)?-e:e;return[{years:maybeNegate(parseFloating(n)),months:maybeNegate(parseFloating(r)),weeks:maybeNegate(parseFloating(s)),days:maybeNegate(parseFloating(i)),hours:maybeNegate(parseFloating(a)),minutes:maybeNegate(parseFloating(o)),seconds:maybeNegate(parseFloating(u),u==="-0"),milliseconds:maybeNegate(parseMillis(l),d)}]}const Ie={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function fromStrings(e,t,n,r,s,i,a){const o={year:t.length===2?untruncateYear(parseInteger(t)):parseInteger(t),month:ee.indexOf(n)+1,day:parseInteger(r),hour:parseInteger(s),minute:parseInteger(i)};if(a)o.second=parseInteger(a);if(e){o.weekday=e.length>3?ne.indexOf(e)+1:re.indexOf(e)+1}return o}const Me=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function extractRFC2822(e){const[,t,n,r,s,i,a,o,u,l,c,d]=e,f=fromStrings(t,s,r,n,i,a,o);let h;if(u){h=Ie[u]}else if(l){h=0}else{h=signedOffset(c,d)}return[f,new FixedOffsetZone(h)]}function preprocessRFC2822(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const Ce=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,xe=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Ee=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function extractRFC1123Or850(e){const[,t,n,r,s,i,a,o]=e,u=fromStrings(t,s,r,n,i,a,o);return[u,FixedOffsetZone.utcInstance]}function extractASCII(e){const[,t,n,r,s,i,a,o]=e,u=fromStrings(t,o,n,r,s,i,a);return[u,FixedOffsetZone.utcInstance]}const Fe=combineRegexes(ge,ye);const Ne=combineRegexes(pe,ye);const We=combineRegexes(Oe,ye);const Le=combineRegexes(me);const Ze=combineExtractors(extractISOYmd,extractISOTime,extractISOOffset,extractIANAZone);const Ve=combineExtractors(we,extractISOTime,extractISOOffset,extractIANAZone);const Ue=combineExtractors(ve,extractISOTime,extractISOOffset,extractIANAZone);const $e=combineExtractors(extractISOTime,extractISOOffset,extractIANAZone);function parseISODate(e){return parse(e,[Fe,Ze],[Ne,Ve],[We,Ue],[Le,$e])}function parseRFC2822Date(e){return parse(preprocessRFC2822(e),[Me,extractRFC2822])}function parseHTTPDate(e){return parse(e,[Ce,extractRFC1123Or850],[xe,extractRFC1123Or850],[Ee,extractASCII])}function parseISODuration(e){return parse(e,[be,extractISODuration])}const je=combineExtractors(extractISOTime);function parseISOTimeOnly(e){return parse(e,[Se,je])}const Ae=combineRegexes(De,Te);const _e=combineRegexes(ke);const ze=combineExtractors(extractISOTime,extractISOOffset,extractIANAZone);function parseSQL(e){return parse(e,[Ae,Ze],[_e,ze])}const Re="Invalid Duration";const Pe={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},He={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...Pe},Ye=146097/400,qe=146097/4800,Je={years:{quarters:4,months:12,weeks:Ye/7,days:Ye,hours:Ye*24,minutes:Ye*24*60,seconds:Ye*24*60*60,milliseconds:Ye*24*60*60*1e3},quarters:{months:3,weeks:Ye/28,days:Ye/4,hours:Ye*24/4,minutes:Ye*24*60/4,seconds:Ye*24*60*60/4,milliseconds:Ye*24*60*60*1e3/4},months:{weeks:qe/7,days:qe,hours:qe*24,minutes:qe*24*60,seconds:qe*24*60*60,milliseconds:qe*24*60*60*1e3},...Pe};const Ge=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"];const Be=Ge.slice(0).reverse();function clone$1(e,t,n=false){const r={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new Duration(r)}function durationToMillis(e,t){var n;let r=(n=t.milliseconds)!=null?n:0;for(const n of Be.slice(1)){if(t[n]){r+=t[n]*e[n]["milliseconds"]}}return r}function normalizeValues(e,t){const n=durationToMillis(e,t)<0?-1:1;Ge.reduceRight(((r,s)=>{if(!isUndefined(t[s])){if(r){const i=t[r]*n;const a=e[s][r];const o=Math.floor(i/a);t[s]+=o*n;t[r]-=o*a*n}return s}else{return r}}),null);Ge.reduce(((n,r)=>{if(!isUndefined(t[r])){if(n){const s=t[n]%1;t[n]-=s;t[r]+=s*e[n][r]}return r}else{return n}}),null)}function removeZeroes(e){const t={};for(const[n,r]of Object.entries(e)){if(r!==0){t[n]=r}}return t}class Duration{constructor(e){const t=e.conversionAccuracy==="longterm"||false;let n=t?Je:He;if(e.matrix){n=e.matrix}this.values=e.values;this.loc=e.loc||Locale.create();this.conversionAccuracy=t?"longterm":"casual";this.invalid=e.invalid||null;this.matrix=n;this.isLuxonDuration=true}static fromMillis(e,t){return Duration.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!=="object"){throw new InvalidArgumentError(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`)}return new Duration({values:normalizeObject(e,Duration.normalizeUnit),loc:Locale.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(isNumber(e)){return Duration.fromMillis(e)}else if(Duration.isDuration(e)){return e}else if(typeof e==="object"){return Duration.fromObject(e)}else{throw new InvalidArgumentError(`Unknown duration argument ${e} of type ${typeof e}`)}}static fromISO(e,t){const[n]=parseISODuration(e);if(n){return Duration.fromObject(n,t)}else{return Duration.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}}static fromISOTime(e,t){const[n]=parseISOTimeOnly(e);if(n){return Duration.fromObject(n,t)}else{return Duration.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}}static invalid(e,t=null){if(!e){throw new InvalidArgumentError("need to specify a reason the Duration is invalid")}const n=e instanceof Invalid?e:new Invalid(e,t);if(Settings.throwOnInvalid){throw new InvalidDurationError(n)}else{return new Duration({invalid:n})}}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e?e.toLowerCase():e];if(!t)throw new InvalidUnitError(e);return t}static isDuration(e){return e&&e.isLuxonDuration||false}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:t.round!==false&&t.floor!==false};return this.isValid?Formatter.create(this.loc,n).formatDurationFromString(this,e):Re}toHuman(e={}){if(!this.isValid)return Re;const t=e.showZeros!==false;const n=Ge.map((n=>{const r=this.values[n];if(isUndefined(r)||r===0&&!t){return null}return this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(r)})).filter((e=>e));return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(n)}toObject(){if(!this.isValid)return{};return{...this.values}}toISO(){if(!this.isValid)return null;let e="P";if(this.years!==0)e+=this.years+"Y";if(this.months!==0||this.quarters!==0)e+=this.months+this.quarters*3+"M";if(this.weeks!==0)e+=this.weeks+"W";if(this.days!==0)e+=this.days+"D";if(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)e+="T";if(this.hours!==0)e+=this.hours+"H";if(this.minutes!==0)e+=this.minutes+"M";if(this.seconds!==0||this.milliseconds!==0)e+=roundTo(this.seconds+this.milliseconds/1e3,3)+"S";if(e==="P")e+="T0S";return e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();if(t<0||t>=864e5)return null;e={suppressMilliseconds:false,suppressSeconds:false,includePrefix:false,format:"extended",...e,includeOffset:false};const n=DateTime.fromMillis(t,{zone:"UTC"});return n.toISOTime(e)}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){if(this.isValid){return`Duration { values: ${JSON.stringify(this.values)} }`}else{return`Duration { Invalid, reason: ${this.invalidReason} }`}}toMillis(){if(!this.isValid)return NaN;return durationToMillis(this.matrix,this.values)}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=Duration.fromDurationLike(e),n={};for(const e of Ge){if(hasOwnProperty(t.values,e)||hasOwnProperty(this.values,e)){n[e]=t.get(e)+this.get(e)}}return clone$1(this,{values:n},true)}minus(e){if(!this.isValid)return this;const t=Duration.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values)){t[n]=asNumber(e(this.values[n],n))}return clone$1(this,{values:t},true)}get(e){return this[Duration.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...normalizeObject(e,Duration.normalizeUnit)};return clone$1(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:r}={}){const s=this.loc.clone({locale:e,numberingSystem:t});const i={loc:s,matrix:r,conversionAccuracy:n};return clone$1(this,i)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();normalizeValues(this.matrix,e);return clone$1(this,{values:e},true)}rescale(){if(!this.isValid)return this;const e=removeZeroes(this.normalize().shiftToAll().toObject());return clone$1(this,{values:e},true)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0){return this}e=e.map((e=>Duration.normalizeUnit(e)));const t={},n={},r=this.toObject();let s;for(const i of Ge){if(e.indexOf(i)>=0){s=i;let e=0;for(const t in n){e+=this.matrix[t][i]*n[t];n[t]=0}if(isNumber(r[i])){e+=r[i]}const a=Math.trunc(e);t[i]=a;n[i]=(e*1e3-a*1e3)/1e3}else if(isNumber(r[i])){n[i]=r[i]}}for(const e in n){if(n[e]!==0){t[s]+=e===s?n[e]:n[e]/this.matrix[s][e]}}normalizeValues(this.matrix,t);return clone$1(this,{values:t},true)}shiftToAll(){if(!this.isValid)return this;return this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds")}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values)){e[t]=this.values[t]===0?0:-this.values[t]}return clone$1(this,{values:e},true)}removeZeros(){if(!this.isValid)return this;const e=removeZeroes(this.values);return clone$1(this,{values:e},true)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid){return false}if(!this.loc.equals(e.loc)){return false}function eq(e,t){if(e===undefined||e===0)return t===undefined||t===0;return e===t}for(const t of Ge){if(!eq(this.values[t],e.values[t])){return false}}return true}}const Qe="Invalid Interval";function validateStartEnd(e,t){if(!e||!e.isValid){return Interval.invalid("missing or invalid start")}else if(!t||!t.isValid){return Interval.invalid("missing or invalid end")}else if(t<e){return Interval.invalid("end before start",`The end of an interval must be after its start, but you had start=${e.toISO()} and end=${t.toISO()}`)}else{return null}}class Interval{constructor(e){this.s=e.start;this.e=e.end;this.invalid=e.invalid||null;this.isLuxonInterval=true}static invalid(e,t=null){if(!e){throw new InvalidArgumentError("need to specify a reason the Interval is invalid")}const n=e instanceof Invalid?e:new Invalid(e,t);if(Settings.throwOnInvalid){throw new InvalidIntervalError(n)}else{return new Interval({invalid:n})}}static fromDateTimes(e,t){const n=friendlyDateTime(e),r=friendlyDateTime(t);const s=validateStartEnd(n,r);if(s==null){return new Interval({start:n,end:r})}else{return s}}static after(e,t){const n=Duration.fromDurationLike(t),r=friendlyDateTime(e);return Interval.fromDateTimes(r,r.plus(n))}static before(e,t){const n=Duration.fromDurationLike(t),r=friendlyDateTime(e);return Interval.fromDateTimes(r.minus(n),r)}static fromISO(e,t){const[n,r]=(e||"").split("/",2);if(n&&r){let e,s;try{e=DateTime.fromISO(n,t);s=e.isValid}catch(r){s=false}let i,a;try{i=DateTime.fromISO(r,t);a=i.isValid}catch(r){a=false}if(s&&a){return Interval.fromDateTimes(e,i)}if(s){const n=Duration.fromISO(r,t);if(n.isValid){return Interval.after(e,n)}}else if(a){const e=Duration.fromISO(n,t);if(e.isValid){return Interval.before(i,e)}}}return Interval.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||false}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid?this.e?this.e.minus(1):null:null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(...[e]).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let r;if(t!=null&&t.useLocaleWeeks){r=this.end.reconfigure({locale:n.locale})}else{r=this.end}r=r.startOf(e,t);return Math.floor(r.diff(n,e).get(e))+(r.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):false}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){if(!this.isValid)return false;return this.s>e}isBefore(e){if(!this.isValid)return false;return this.e<=e}contains(e){if(!this.isValid)return false;return this.s<=e&&this.e>e}set({start:e,end:t}={}){if(!this.isValid)return this;return Interval.fromDateTimes(e||this.s,t||this.e)}splitAt(...e){if(!this.isValid)return[];const t=e.map(friendlyDateTime).filter((e=>this.contains(e))).sort(((e,t)=>e.toMillis()-t.toMillis())),n=[];let{s:r}=this,s=0;while(r<this.e){const e=t[s]||this.e,i=+e>+this.e?this.e:e;n.push(Interval.fromDateTimes(r,i));r=i;s+=1}return n}splitBy(e){const t=Duration.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0){return[]}let{s:n}=this,r=1,s;const i=[];while(n<this.e){const e=this.start.plus(t.mapUnits((e=>e*r)));s=+e>+this.e?this.e:e;i.push(Interval.fromDateTimes(n,s));n=s;r+=1}return i}divideEqually(e){if(!this.isValid)return[];return this.splitBy(this.length()/e).slice(0,e)}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){if(!this.isValid)return false;return+this.e===+e.s}abutsEnd(e){if(!this.isValid)return false;return+e.e===+this.s}engulfs(e){if(!this.isValid)return false;return this.s<=e.s&&this.e>=e.e}equals(e){if(!this.isValid||!e.isValid){return false}return this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;if(t>=n){return null}else{return Interval.fromDateTimes(t,n)}}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return Interval.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort(((e,t)=>e.s-t.s)).reduce((([e,t],n)=>{if(!t){return[e,n]}else if(t.overlaps(n)||t.abutsStart(n)){return[e,t.union(n)]}else{return[e.concat([t]),n]}}),[[],null]);if(n){t.push(n)}return t}static xor(e){let t=null,n=0;const r=[],s=e.map((e=>[{time:e.s,type:"s"},{time:e.e,type:"e"}])),i=Array.prototype.concat(...s),a=i.sort(((e,t)=>e.time-t.time));for(const e of a){n+=e.type==="s"?1:-1;if(n===1){t=e.time}else{if(t&&+t!==+e.time){r.push(Interval.fromDateTimes(t,e.time))}t=null}}return Interval.merge(r)}difference(...e){return Interval.xor([this].concat(e)).map((e=>this.intersection(e))).filter((e=>e&&!e.isEmpty()))}toString(){if(!this.isValid)return Qe;return`[${this.s.toISO()} – ${this.e.toISO()})`}[Symbol.for("nodejs.util.inspect.custom")](){if(this.isValid){return`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`}else{return`Interval { Invalid, reason: ${this.invalidReason} }`}}toLocaleString(e=i,t={}){return this.isValid?Formatter.create(this.s.loc.clone(t),e).formatInterval(this):Qe}toISO(e){if(!this.isValid)return Qe;return`${this.s.toISO(e)}/${this.e.toISO(e)}`}toISODate(){if(!this.isValid)return Qe;return`${this.s.toISODate()}/${this.e.toISODate()}`}toISOTime(e){if(!this.isValid)return Qe;return`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`}toFormat(e,{separator:t=" – "}={}){if(!this.isValid)return Qe;return`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`}toDuration(e,t){if(!this.isValid){return Duration.invalid(this.invalidReason)}return this.e.diff(this.s,e,t)}mapEndpoints(e){return Interval.fromDateTimes(e(this.s),e(this.e))}}class Info{static hasDST(e=Settings.defaultZone){const t=DateTime.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return IANAZone.isValidZone(e)}static normalizeZone(e){return normalizeZone(e,Settings.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||Locale.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||Locale.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||Locale.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:s="gregory"}={}){return(r||Locale.create(t,n,s)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:s="gregory"}={}){return(r||Locale.create(t,n,s)).months(e,true)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Locale.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Locale.create(t,n,null)).weekdays(e,true)}static meridiems({locale:e=null}={}){return Locale.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return Locale.create(t,null,"gregory").eras(e)}static features(){return{relative:hasRelative(),localeWeek:hasLocaleWeekInfo()}}}function dayDiff(e,t){const utcDayStart=e=>e.toUTC(0,{keepLocalTime:true}).startOf("day").valueOf(),n=utcDayStart(t)-utcDayStart(e);return Math.floor(Duration.fromMillis(n).as("days"))}function highOrderDiffs(e,t,n){const r=[["years",(e,t)=>t.year-e.year],["quarters",(e,t)=>t.quarter-e.quarter+(t.year-e.year)*4],["months",(e,t)=>t.month-e.month+(t.year-e.year)*12],["weeks",(e,t)=>{const n=dayDiff(e,t);return(n-n%7)/7}],["days",dayDiff]];const s={};const i=e;let a,o;for(const[u,l]of r){if(n.indexOf(u)>=0){a=u;s[u]=l(e,t);o=i.plus(s);if(o>t){s[u]--;e=i.plus(s);if(e>t){o=e;s[u]--;e=i.plus(s)}}else{e=o}}}return[e,s,o,a]}function diff(e,t,n,r){let[s,i,a,o]=highOrderDiffs(e,t,n);const u=t-s;const l=n.filter((e=>["hours","minutes","seconds","milliseconds"].indexOf(e)>=0));if(l.length===0){if(a<t){a=s.plus({[o]:1})}if(a!==s){i[o]=(i[o]||0)+u/(a-s)}}const c=Duration.fromObject(i,r);if(l.length>0){return Duration.fromMillis(u,r).shiftTo(...l).plus(c)}else{return c}}const Ke="missing Intl.DateTimeFormat.formatToParts support";function intUnit(e,t=e=>e){return{regex:e,deser:([e])=>t(parseDigits(e))}}const Xe=String.fromCharCode(160);const et=`[ ${Xe}]`;const tt=new RegExp(et,"g");function fixListRegex(e){return e.replace(/\./g,"\\.?").replace(tt,et)}function stripInsensitivities(e){return e.replace(/\./g,"").replace(tt," ").toLowerCase()}function oneOf(e,t){if(e===null){return null}else{return{regex:RegExp(e.map(fixListRegex).join("|")),deser:([n])=>e.findIndex((e=>stripInsensitivities(n)===stripInsensitivities(e)))+t}}}function offset(e,t){return{regex:e,deser:([,e,t])=>signedOffset(e,t),groups:t}}function simple(e){return{regex:e,deser:([e])=>e}}function escapeToken(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function unitForToken(e,t){const n=digitRegex(t),r=digitRegex(t,"{2}"),s=digitRegex(t,"{3}"),i=digitRegex(t,"{4}"),a=digitRegex(t,"{6}"),o=digitRegex(t,"{1,2}"),u=digitRegex(t,"{1,3}"),l=digitRegex(t,"{1,6}"),c=digitRegex(t,"{1,9}"),d=digitRegex(t,"{2,4}"),f=digitRegex(t,"{4,6}"),literal=e=>({regex:RegExp(escapeToken(e.val)),deser:([e])=>e,literal:true}),unitate=h=>{if(e.literal){return literal(h)}switch(h.val){case"G":return oneOf(t.eras("short"),0);case"GG":return oneOf(t.eras("long"),0);case"y":return intUnit(l);case"yy":return intUnit(d,untruncateYear);case"yyyy":return intUnit(i);case"yyyyy":return intUnit(f);case"yyyyyy":return intUnit(a);case"M":return intUnit(o);case"MM":return intUnit(r);case"MMM":return oneOf(t.months("short",true),1);case"MMMM":return oneOf(t.months("long",true),1);case"L":return intUnit(o);case"LL":return intUnit(r);case"LLL":return oneOf(t.months("short",false),1);case"LLLL":return oneOf(t.months("long",false),1);case"d":return intUnit(o);case"dd":return intUnit(r);case"o":return intUnit(u);case"ooo":return intUnit(s);case"HH":return intUnit(r);case"H":return intUnit(o);case"hh":return intUnit(r);case"h":return intUnit(o);case"mm":return intUnit(r);case"m":return intUnit(o);case"q":return intUnit(o);case"qq":return intUnit(r);case"s":return intUnit(o);case"ss":return intUnit(r);case"S":return intUnit(u);case"SSS":return intUnit(s);case"u":return simple(c);case"uu":return simple(o);case"uuu":return intUnit(n);case"a":return oneOf(t.meridiems(),0);case"kkkk":return intUnit(i);case"kk":return intUnit(d,untruncateYear);case"W":return intUnit(o);case"WW":return intUnit(r);case"E":case"c":return intUnit(n);case"EEE":return oneOf(t.weekdays("short",false),1);case"EEEE":return oneOf(t.weekdays("long",false),1);case"ccc":return oneOf(t.weekdays("short",true),1);case"cccc":return oneOf(t.weekdays("long",true),1);case"Z":case"ZZ":return offset(new RegExp(`([+-]${o.source})(?::(${r.source}))?`),2);case"ZZZ":return offset(new RegExp(`([+-]${o.source})(${r.source})?`),2);case"z":return simple(/[a-z_+-/]{1,256}?/i);case" ":return simple(/[^\S\n\r]/);default:return literal(h)}};const h=unitate(e)||{invalidReason:Ke};h.token=e;return h}const nt={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function tokenForPart(e,t,n){const{type:r,value:s}=e;if(r==="literal"){const e=/^\s+$/.test(s);return{literal:!e,val:e?" ":s}}const i=t[r];let a=r;if(r==="hour"){if(t.hour12!=null){a=t.hour12?"hour12":"hour24"}else if(t.hourCycle!=null){if(t.hourCycle==="h11"||t.hourCycle==="h12"){a="hour12"}else{a="hour24"}}else{a=n.hour12?"hour12":"hour24"}}let o=nt[a];if(typeof o==="object"){o=o[i]}if(o){return{literal:false,val:o}}return undefined}function buildRegex(e){const t=e.map((e=>e.regex)).reduce(((e,t)=>`${e}(${t.source})`),"");return[`^${t}$`,e]}function match(e,t,n){const r=e.match(t);if(r){const e={};let t=1;for(const s in n){if(hasOwnProperty(n,s)){const i=n[s],a=i.groups?i.groups+1:1;if(!i.literal&&i.token){e[i.token.val[0]]=i.deser(r.slice(t,t+a))}t+=a}}return[r,e]}else{return[r,{}]}}function dateTimeFromMatches(e){const toField=e=>{switch(e){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let t=null;let n;if(!isUndefined(e.z)){t=IANAZone.create(e.z)}if(!isUndefined(e.Z)){if(!t){t=new FixedOffsetZone(e.Z)}n=e.Z}if(!isUndefined(e.q)){e.M=(e.q-1)*3+1}if(!isUndefined(e.h)){if(e.h<12&&e.a===1){e.h+=12}else if(e.h===12&&e.a===0){e.h=0}}if(e.G===0&&e.y){e.y=-e.y}if(!isUndefined(e.u)){e.S=parseMillis(e.u)}const r=Object.keys(e).reduce(((t,n)=>{const r=toField(n);if(r){t[r]=e[n]}return t}),{});return[r,t,n]}let rt=null;function getDummyDateTime(){if(!rt){rt=DateTime.fromMillis(1555555555555)}return rt}function maybeExpandMacroToken(e,t){if(e.literal){return e}const n=Formatter.macroTokenToFormatOpts(e.val);const r=formatOptsToTokens(n,t);if(r==null||r.includes(undefined)){return e}return r}function expandMacroTokens(e,t){return Array.prototype.concat(...e.map((e=>maybeExpandMacroToken(e,t))))}class TokenParser{constructor(e,t){this.locale=e;this.format=t;this.tokens=expandMacroTokens(Formatter.parseFormat(t),e);this.units=this.tokens.map((t=>unitForToken(t,e)));this.disqualifyingUnit=this.units.find((e=>e.invalidReason));if(!this.disqualifyingUnit){const[e,t]=buildRegex(this.units);this.regex=RegExp(e,"i");this.handlers=t}}explainFromTokens(e){if(!this.isValid){return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}else{const[t,n]=match(e,this.regex,this.handlers),[r,s,i]=n?dateTimeFromMatches(n):[null,null,undefined];if(hasOwnProperty(n,"a")&&hasOwnProperty(n,"H")){throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format")}return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:r,zone:s,specificOffset:i}}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function explainFromTokens(e,t,n){const r=new TokenParser(e,n);return r.explainFromTokens(t)}function parseFromTokens(e,t,n){const{result:r,zone:s,specificOffset:i,invalidReason:a}=explainFromTokens(e,t,n);return[r,s,i,a]}function formatOptsToTokens(e,t){if(!e){return null}const n=Formatter.create(t,e);const r=n.dtFormatter(getDummyDateTime());const s=r.formatToParts();const i=r.resolvedOptions();return s.map((t=>tokenForPart(t,e,i)))}const st="Invalid DateTime";const it=864e13;function unsupportedZone(e){return new Invalid("unsupported zone",`the zone "${e.name}" is not supported`)}function possiblyCachedWeekData(e){if(e.weekData===null){e.weekData=gregorianToWeek(e.c)}return e.weekData}function possiblyCachedLocalWeekData(e){if(e.localWeekData===null){e.localWeekData=gregorianToWeek(e.c,e.loc.getMinDaysInFirstWeek(),e.loc.getStartOfWeek())}return e.localWeekData}function clone(e,t){const n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new DateTime({...n,...t,old:n})}function fixOffset(e,t,n){let r=e-t*60*1e3;const s=n.offset(r);if(t===s){return[r,t]}r-=(s-t)*60*1e3;const i=n.offset(r);if(s===i){return[r,s]}return[e-Math.min(s,i)*60*1e3,Math.max(s,i)]}function tsToObj(e,t){e+=t*60*1e3;const n=new Date(e);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function objToTS(e,t,n){return fixOffset(objToLocalTS(e),t,n)}function adjustTime(e,t){const n=e.o,r=e.c.year+Math.trunc(t.years),s=e.c.month+Math.trunc(t.months)+Math.trunc(t.quarters)*3,i={...e.c,year:r,month:s,day:Math.min(e.c.day,daysInMonth(r,s))+Math.trunc(t.days)+Math.trunc(t.weeks)*7},a=Duration.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),o=objToLocalTS(i);let[u,l]=fixOffset(o,n,e.zone);if(a!==0){u+=a;l=e.zone.offset(u)}return{ts:u,o:l}}function parseDataToDateTime(e,t,n,r,s,i){const{setZone:a,zone:o}=n;if(e&&Object.keys(e).length!==0||t){const r=t||o,s=DateTime.fromObject(e,{...n,zone:r,specificOffset:i});return a?s:s.setZone(o)}else{return DateTime.invalid(new Invalid("unparsable",`the input "${s}" can't be parsed as ${r}`))}}function toTechFormat(e,t,n=true){return e.isValid?Formatter.create(Locale.create("en-US"),{allowZ:n,forceSimple:true}).formatDateTimeFromString(e,t):null}function toISODate(e,t,n){const r=e.c.year>9999||e.c.year<0;let s="";if(r&&e.c.year>=0)s+="+";s+=padStart(e.c.year,r?6:4);if(n==="year")return s;if(t){s+="-";s+=padStart(e.c.month);if(n==="month")return s;s+="-"}else{s+=padStart(e.c.month);if(n==="month")return s}s+=padStart(e.c.day);return s}function toISOTime(e,t,n,r,s,i,a){let o=!n||e.c.millisecond!==0||e.c.second!==0,u="";switch(a){case"day":case"month":case"year":break;default:u+=padStart(e.c.hour);if(a==="hour")break;if(t){u+=":";u+=padStart(e.c.minute);if(a==="minute")break;if(o){u+=":";u+=padStart(e.c.second)}}else{u+=padStart(e.c.minute);if(a==="minute")break;if(o){u+=padStart(e.c.second)}}if(a==="second")break;if(o&&(!r||e.c.millisecond!==0)){u+=".";u+=padStart(e.c.millisecond,3)}}if(s){if(e.isOffsetFixed&&e.offset===0&&!i){u+="Z"}else if(e.o<0){u+="-";u+=padStart(Math.trunc(-e.o/60));u+=":";u+=padStart(Math.trunc(-e.o%60))}else{u+="+";u+=padStart(Math.trunc(e.o/60));u+=":";u+=padStart(Math.trunc(e.o%60))}}if(i){u+="["+e.zone.ianaName+"]"}return u}const at={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},ot={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},ut={ordinal:1,hour:0,minute:0,second:0,millisecond:0};const lt=["year","month","day","hour","minute","second","millisecond"],ct=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],dt=["year","ordinal","hour","minute","second","millisecond"];function normalizeUnit(e){const t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new InvalidUnitError(e);return t}function normalizeUnitWithLocalWeeks(e){switch(e.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return normalizeUnit(e)}}function guessOffsetForZone(e){if(ft===undefined){ft=Settings.now()}if(e.type!=="iana"){return e.offset(ft)}const t=e.name;let n=ht.get(t);if(n===undefined){n=e.offset(ft);ht.set(t,n)}return n}function quickDT(e,t){const n=normalizeZone(t.zone,Settings.defaultZone);if(!n.isValid){return DateTime.invalid(unsupportedZone(n))}const r=Locale.fromObject(t);let s,i;if(!isUndefined(e.year)){for(const t of lt){if(isUndefined(e[t])){e[t]=at[t]}}const t=hasInvalidGregorianData(e)||hasInvalidTimeData(e);if(t){return DateTime.invalid(t)}const r=guessOffsetForZone(n);[s,i]=objToTS(e,r,n)}else{s=Settings.now()}return new DateTime({ts:s,zone:n,loc:r,o:i})}function diffRelative(e,t,n){const r=isUndefined(n.round)?true:n.round,s=isUndefined(n.rounding)?"trunc":n.rounding,format=(e,i)=>{e=roundTo(e,r||n.calendary?0:2,n.calendary?"round":s);const a=t.loc.clone(n).relFormatter(n);return a.format(e,i)},differ=r=>{if(n.calendary){if(!t.hasSame(e,r)){return t.startOf(r).diff(e.startOf(r),r).get(r)}else return 0}else{return t.diff(e,r).get(r)}};if(n.unit){return format(differ(n.unit),n.unit)}for(const e of n.units){const t=differ(e);if(Math.abs(t)>=1){return format(t,e)}}return format(e>t?-0:0,n.units[n.units.length-1])}function lastOpts(e){let t={},n;if(e.length>0&&typeof e[e.length-1]==="object"){t=e[e.length-1];n=Array.from(e).slice(0,e.length-1)}else{n=Array.from(e)}return[t,n]}let ft;const ht=new Map;class DateTime{constructor(e){const t=e.zone||Settings.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new Invalid("invalid input"):null)||(!t.isValid?unsupportedZone(t):null);this.ts=isUndefined(e.ts)?Settings.now():e.ts;let r=null,s=null;if(!n){const i=e.old&&e.old.ts===this.ts&&e.old.zone.equals(t);if(i){[r,s]=[e.old.c,e.old.o]}else{const i=isNumber(e.o)&&!e.old?e.o:t.offset(this.ts);r=tsToObj(this.ts,i);n=Number.isNaN(r.year)?new Invalid("invalid input"):null;r=n?null:r;s=n?null:i}}this._zone=t;this.loc=e.loc||Locale.create();this.invalid=n;this.weekData=null;this.localWeekData=null;this.c=r;this.o=s;this.isLuxonDateTime=true}static now(){return new DateTime({})}static local(){const[e,t]=lastOpts(arguments),[n,r,s,i,a,o,u]=t;return quickDT({year:n,month:r,day:s,hour:i,minute:a,second:o,millisecond:u},e)}static utc(){const[e,t]=lastOpts(arguments),[n,r,s,i,a,o,u]=t;e.zone=FixedOffsetZone.utcInstance;return quickDT({year:n,month:r,day:s,hour:i,minute:a,second:o,millisecond:u},e)}static fromJSDate(e,t={}){const n=isDate(e)?e.valueOf():NaN;if(Number.isNaN(n)){return DateTime.invalid("invalid input")}const r=normalizeZone(t.zone,Settings.defaultZone);if(!r.isValid){return DateTime.invalid(unsupportedZone(r))}return new DateTime({ts:n,zone:r,loc:Locale.fromObject(t)})}static fromMillis(e,t={}){if(!isNumber(e)){throw new InvalidArgumentError(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}else if(e<-it||e>it){return DateTime.invalid("Timestamp out of range")}else{return new DateTime({ts:e,zone:normalizeZone(t.zone,Settings.defaultZone),loc:Locale.fromObject(t)})}}static fromSeconds(e,t={}){if(!isNumber(e)){throw new InvalidArgumentError("fromSeconds requires a numerical input")}else{return new DateTime({ts:e*1e3,zone:normalizeZone(t.zone,Settings.defaultZone),loc:Locale.fromObject(t)})}}static fromObject(e,t={}){e=e||{};const n=normalizeZone(t.zone,Settings.defaultZone);if(!n.isValid){return DateTime.invalid(unsupportedZone(n))}const r=Locale.fromObject(t);const s=normalizeObject(e,normalizeUnitWithLocalWeeks);const{minDaysInFirstWeek:i,startOfWeek:a}=usesLocalWeekValues(s,r);const o=Settings.now(),u=!isUndefined(t.specificOffset)?t.specificOffset:n.offset(o),l=!isUndefined(s.ordinal),c=!isUndefined(s.year),d=!isUndefined(s.month)||!isUndefined(s.day),f=c||d,h=s.weekYear||s.weekNumber;if((f||l)&&h){throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals")}if(d&&l){throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day")}const m=h||s.weekday&&!f;let y,g,p=tsToObj(o,u);if(m){y=ct;g=ot;p=gregorianToWeek(p,i,a)}else if(l){y=dt;g=ut;p=gregorianToOrdinal(p)}else{y=lt;g=at}let O=false;for(const e of y){const t=s[e];if(!isUndefined(t)){O=true}else if(O){s[e]=g[e]}else{s[e]=p[e]}}const w=m?hasInvalidWeekData(s,i,a):l?hasInvalidOrdinalData(s):hasInvalidGregorianData(s),v=w||hasInvalidTimeData(s);if(v){return DateTime.invalid(v)}const D=m?weekToGregorian(s,i,a):l?ordinalToGregorian(s):s,[k,T]=objToTS(D,u,n),S=new DateTime({ts:k,zone:n,o:T,loc:r});if(s.weekday&&f&&e.weekday!==S.weekday){return DateTime.invalid("mismatched weekday",`you can't specify both a weekday of ${s.weekday} and a date of ${S.toISO()}`)}if(!S.isValid){return DateTime.invalid(S.invalid)}return S}static fromISO(e,t={}){const[n,r]=parseISODate(e);return parseDataToDateTime(n,r,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,r]=parseRFC2822Date(e);return parseDataToDateTime(n,r,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,r]=parseHTTPDate(e);return parseDataToDateTime(n,r,t,"HTTP",t)}static fromFormat(e,t,n={}){if(isUndefined(e)||isUndefined(t)){throw new InvalidArgumentError("fromFormat requires an input string and a format")}const{locale:r=null,numberingSystem:s=null}=n,i=Locale.fromOpts({locale:r,numberingSystem:s,defaultToEN:true}),[a,o,u,l]=parseFromTokens(i,e,t);if(l){return DateTime.invalid(l)}else{return parseDataToDateTime(a,o,n,`format ${t}`,e,u)}}static fromString(e,t,n={}){return DateTime.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,r]=parseSQL(e);return parseDataToDateTime(n,r,t,"SQL",e)}static invalid(e,t=null){if(!e){throw new InvalidArgumentError("need to specify a reason the DateTime is invalid")}const n=e instanceof Invalid?e:new Invalid(e,t);if(Settings.throwOnInvalid){throw new InvalidDateTimeError(n)}else{return new DateTime({invalid:n})}}static isDateTime(e){return e&&e.isLuxonDateTime||false}static parseFormatForOpts(e,t={}){const n=formatOptsToTokens(e,Locale.fromObject(t));return!n?null:n.map((e=>e?e.val:null)).join("")}static expandFormat(e,t={}){const n=expandMacroTokens(Formatter.parseFormat(e),Locale.fromObject(t));return n.map((e=>e.val)).join("")}static resetCache(){ft=undefined;ht.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?possiblyCachedWeekData(this).weekYear:NaN}get weekNumber(){return this.isValid?possiblyCachedWeekData(this).weekNumber:NaN}get weekday(){return this.isValid?possiblyCachedWeekData(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?possiblyCachedLocalWeekData(this).weekday:NaN}get localWeekNumber(){return this.isValid?possiblyCachedLocalWeekData(this).weekNumber:NaN}get localWeekYear(){return this.isValid?possiblyCachedLocalWeekData(this).weekYear:NaN}get ordinal(){return this.isValid?gregorianToOrdinal(this.c).ordinal:NaN}get monthShort(){return this.isValid?Info.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Info.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Info.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Info.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){if(this.isValid){return this.zone.offsetName(this.ts,{format:"short",locale:this.locale})}else{return null}}get offsetNameLong(){if(this.isValid){return this.zone.offsetName(this.ts,{format:"long",locale:this.locale})}else{return null}}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){if(this.isOffsetFixed){return false}else{return this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed){return[this]}const e=864e5;const t=6e4;const n=objToLocalTS(this.c);const r=this.zone.offset(n-e);const s=this.zone.offset(n+e);const i=this.zone.offset(n-r*t);const a=this.zone.offset(n-s*t);if(i===a){return[this]}const o=n-i*t;const u=n-a*t;const l=tsToObj(o,i);const c=tsToObj(u,a);if(l.hour===c.hour&&l.minute===c.minute&&l.second===c.second&&l.millisecond===c.millisecond){return[clone(this,{ts:o}),clone(this,{ts:u})]}return[this]}get isInLeapYear(){return isLeapYear(this.year)}get daysInMonth(){return daysInMonth(this.year,this.month)}get daysInYear(){return this.isValid?daysInYear(this.year):NaN}get weeksInWeekYear(){return this.isValid?weeksInWeekYear(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?weeksInWeekYear(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:r}=Formatter.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:r}}toUTC(e=0,t={}){return this.setZone(FixedOffsetZone.instance(e),t)}toLocal(){return this.setZone(Settings.defaultZone)}setZone(e,{keepLocalTime:t=false,keepCalendarTime:n=false}={}){e=normalizeZone(e,Settings.defaultZone);if(e.equals(this.zone)){return this}else if(!e.isValid){return DateTime.invalid(unsupportedZone(e))}else{let r=this.ts;if(t||n){const t=e.offset(this.ts);const n=this.toObject();[r]=objToTS(n,t,e)}return clone(this,{ts:r,zone:e})}}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){const r=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return clone(this,{loc:r})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=normalizeObject(e,normalizeUnitWithLocalWeeks);const{minDaysInFirstWeek:n,startOfWeek:r}=usesLocalWeekValues(t,this.loc);const s=!isUndefined(t.weekYear)||!isUndefined(t.weekNumber)||!isUndefined(t.weekday),i=!isUndefined(t.ordinal),a=!isUndefined(t.year),o=!isUndefined(t.month)||!isUndefined(t.day),u=a||o,l=t.weekYear||t.weekNumber;if((u||i)&&l){throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals")}if(o&&i){throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day")}let c;if(s){c=weekToGregorian({...gregorianToWeek(this.c,n,r),...t},n,r)}else if(!isUndefined(t.ordinal)){c=ordinalToGregorian({...gregorianToOrdinal(this.c),...t})}else{c={...this.toObject(),...t};if(isUndefined(t.day)){c.day=Math.min(daysInMonth(c.year,c.month),c.day)}}const[d,f]=objToTS(c,this.o,this.zone);return clone(this,{ts:d,o:f})}plus(e){if(!this.isValid)return this;const t=Duration.fromDurationLike(e);return clone(this,adjustTime(this,t))}minus(e){if(!this.isValid)return this;const t=Duration.fromDurationLike(e).negate();return clone(this,adjustTime(this,t))}startOf(e,{useLocaleWeeks:t=false}={}){if(!this.isValid)return this;const n={},r=Duration.normalizeUnit(e);switch(r){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(r==="weeks"){if(t){const e=this.loc.getStartOfWeek();const{weekday:t}=this;if(t<e){n.weekNumber=this.weekNumber-1}n.weekday=e}else{n.weekday=1}}if(r==="quarters"){const e=Math.ceil(this.month/3);n.month=(e-1)*3+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?Formatter.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):st}toLocaleString(e=i,t={}){return this.isValid?Formatter.create(this.loc.clone(t),e).formatDateTime(this):st}toLocaleParts(e={}){return this.isValid?Formatter.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=false,suppressMilliseconds:n=false,includeOffset:r=true,extendedZone:s=false,precision:i="milliseconds"}={}){if(!this.isValid){return null}i=normalizeUnit(i);const a=e==="extended";let o=toISODate(this,a,i);if(lt.indexOf(i)>=3)o+="T";o+=toISOTime(this,a,t,n,r,s,i);return o}toISODate({format:e="extended",precision:t="day"}={}){if(!this.isValid){return null}return toISODate(this,e==="extended",normalizeUnit(t))}toISOWeekDate(){return toTechFormat(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=false,suppressSeconds:t=false,includeOffset:n=true,includePrefix:r=false,extendedZone:s=false,format:i="extended",precision:a="milliseconds"}={}){if(!this.isValid){return null}a=normalizeUnit(a);let o=r&<.indexOf(a)>=3?"T":"";return o+toISOTime(this,i==="extended",t,e,n,s,a)}toRFC2822(){return toTechFormat(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",false)}toHTTP(){return toTechFormat(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){if(!this.isValid){return null}return toISODate(this,true)}toSQLTime({includeOffset:e=true,includeZone:t=false,includeOffsetSpace:n=true}={}){let r="HH:mm:ss.SSS";if(t||e){if(n){r+=" "}if(t){r+="z"}else if(e){r+="ZZ"}}return toTechFormat(this,r,true)}toSQL(e={}){if(!this.isValid){return null}return`${this.toSQLDate()} ${this.toSQLTime(e)}`}toString(){return this.isValid?this.toISO():st}[Symbol.for("nodejs.util.inspect.custom")](){if(this.isValid){return`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`}else{return`DateTime { Invalid, reason: ${this.invalidReason} }`}}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};if(e.includeConfig){t.outputCalendar=this.outputCalendar;t.numberingSystem=this.loc.numberingSystem;t.locale=this.loc.locale}return t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid){return Duration.invalid("created by diffing an invalid DateTime")}const r={locale:this.locale,numberingSystem:this.numberingSystem,...n};const s=maybeArray(t).map(Duration.normalizeUnit),i=e.valueOf()>this.valueOf(),a=i?this:e,o=i?e:this,u=diff(a,o,s,r);return i?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(DateTime.now(),e,t)}until(e){return this.isValid?Interval.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return false;const r=e.valueOf();const s=this.setZone(e.zone,{keepLocalTime:true});return s.startOf(t,n)<=r&&r<=s.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||DateTime.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let r=["years","months","days","hours","minutes","seconds"];let s=e.unit;if(Array.isArray(e.unit)){r=e.unit;s=undefined}return diffRelative(t,this.plus(n),{...e,numeric:"always",units:r,unit:s})}toRelativeCalendar(e={}){if(!this.isValid)return null;return diffRelative(e.base||DateTime.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:true})}static min(...e){if(!e.every(DateTime.isDateTime)){throw new InvalidArgumentError("min requires all arguments be DateTimes")}return bestBy(e,(e=>e.valueOf()),Math.min)}static max(...e){if(!e.every(DateTime.isDateTime)){throw new InvalidArgumentError("max requires all arguments be DateTimes")}return bestBy(e,(e=>e.valueOf()),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:r=null,numberingSystem:s=null}=n,i=Locale.fromOpts({locale:r,numberingSystem:s,defaultToEN:true});return explainFromTokens(i,e,t)}static fromStringExplain(e,t,n={}){return DateTime.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:r=null}=t,s=Locale.fromOpts({locale:n,numberingSystem:r,defaultToEN:true});return new TokenParser(s,e)}static fromFormatParser(e,t,n={}){if(isUndefined(e)||isUndefined(t)){throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser")}const{locale:r=null,numberingSystem:s=null}=n,i=Locale.fromOpts({locale:r,numberingSystem:s,defaultToEN:true});if(!i.equals(t.locale)){throw new InvalidArgumentError(`fromFormatParser called with a locale of ${i}, `+`but the format parser was created for ${t.locale}`)}const{result:a,zone:o,specificOffset:u,invalidReason:l}=t.explainFromTokens(e);if(l){return DateTime.invalid(l)}else{return parseDataToDateTime(a,o,n,`format ${t.format}`,e,u)}}static get DATE_SHORT(){return i}static get DATE_MED(){return a}static get DATE_MED_WITH_WEEKDAY(){return o}static get DATE_FULL(){return u}static get DATE_HUGE(){return l}static get TIME_SIMPLE(){return c}static get TIME_WITH_SECONDS(){return d}static get TIME_WITH_SHORT_OFFSET(){return f}static get TIME_WITH_LONG_OFFSET(){return h}static get TIME_24_SIMPLE(){return m}static get TIME_24_WITH_SECONDS(){return y}static get TIME_24_WITH_SHORT_OFFSET(){return g}static get TIME_24_WITH_LONG_OFFSET(){return p}static get DATETIME_SHORT(){return O}static get DATETIME_SHORT_WITH_SECONDS(){return w}static get DATETIME_MED(){return v}static get DATETIME_MED_WITH_SECONDS(){return D}static get DATETIME_MED_WITH_WEEKDAY(){return k}static get DATETIME_FULL(){return T}static get DATETIME_FULL_WITH_SECONDS(){return S}static get DATETIME_HUGE(){return b}static get DATETIME_HUGE_WITH_SECONDS(){return I}}function friendlyDateTime(e){if(DateTime.isDateTime(e)){return e}else if(e&&e.valueOf&&isNumber(e.valueOf())){return DateTime.fromJSDate(e)}else if(e&&typeof e==="object"){return DateTime.fromObject(e)}else{throw new InvalidArgumentError(`Unknown datetime argument: ${e}, of type ${typeof e}`)}}const mt="3.7.1";t.DateTime=DateTime;t.Duration=Duration;t.FixedOffsetZone=FixedOffsetZone;t.IANAZone=IANAZone;t.Info=Info;t.Interval=Interval;t.InvalidZone=InvalidZone;t.Settings=Settings;t.SystemZone=SystemZone;t.VERSION=mt;t.Zone=Zone},896:function(e){e.exports=require("fs")},943:function(e){e.exports=require("fs/promises")},812:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronDate=t.DAYS_IN_MONTH=t.DateMathOp=t.TimeUnit=void 0;const r=n(557);var s;(function(e){e["Second"]="Second";e["Minute"]="Minute";e["Hour"]="Hour";e["Day"]="Day";e["Month"]="Month";e["Year"]="Year"})(s||(t.TimeUnit=s={}));var i;(function(e){e["Add"]="Add";e["Subtract"]="Subtract"})(i||(t.DateMathOp=i={}));t.DAYS_IN_MONTH=Object.freeze([31,29,31,30,31,30,31,31,30,31,30,31]);class CronDate{#e;#t=null;#n=null;#r={add:{[s.Year]:this.addYear.bind(this),[s.Month]:this.addMonth.bind(this),[s.Day]:this.addDay.bind(this),[s.Hour]:this.addHour.bind(this),[s.Minute]:this.addMinute.bind(this),[s.Second]:this.addSecond.bind(this)},subtract:{[s.Year]:this.subtractYear.bind(this),[s.Month]:this.subtractMonth.bind(this),[s.Day]:this.subtractDay.bind(this),[s.Hour]:this.subtractHour.bind(this),[s.Minute]:this.subtractMinute.bind(this),[s.Second]:this.subtractSecond.bind(this)}};constructor(e,t){const n={zone:t};if(!e){this.#e=r.DateTime.local()}else if(e instanceof CronDate){this.#e=e.#e;this.#t=e.#t;this.#n=e.#n}else if(e instanceof Date){this.#e=r.DateTime.fromJSDate(e,n)}else if(typeof e==="number"){this.#e=r.DateTime.fromMillis(e,n)}else{this.#e=r.DateTime.fromISO(e,n);this.#e.isValid||(this.#e=r.DateTime.fromRFC2822(e,n));this.#e.isValid||(this.#e=r.DateTime.fromSQL(e,n));this.#e.isValid||(this.#e=r.DateTime.fromFormat(e,"EEE, d MMM yyyy HH:mm:ss",n))}if(!this.#e.isValid){throw new Error(`CronDate: unhandled timestamp: ${e}`)}if(t&&t!==this.#e.zoneName){this.#e=this.#e.setZone(t)}}static#s(e){return e%4===0&&e%100!==0||e%400===0}get dstStart(){return this.#t}set dstStart(e){this.#t=e}get dstEnd(){return this.#n}set dstEnd(e){this.#n=e}addYear(){this.#e=this.#e.plus({years:1})}addMonth(){this.#e=this.#e.plus({months:1}).startOf("month")}addDay(){this.#e=this.#e.plus({days:1}).startOf("day")}addHour(){this.#e=this.#e.plus({hours:1}).startOf("hour")}addMinute(){this.#e=this.#e.plus({minutes:1}).startOf("minute")}addSecond(){this.#e=this.#e.plus({seconds:1})}subtractYear(){this.#e=this.#e.minus({years:1})}subtractMonth(){this.#e=this.#e.minus({months:1}).endOf("month").startOf("second")}subtractDay(){this.#e=this.#e.minus({days:1}).endOf("day").startOf("second")}subtractHour(){this.#e=this.#e.minus({hours:1}).endOf("hour").startOf("second")}subtractMinute(){this.#e=this.#e.minus({minutes:1}).endOf("minute").startOf("second")}subtractSecond(){this.#e=this.#e.minus({seconds:1})}addUnit(e){this.#r.add[e]()}subtractUnit(e){this.#r.subtract[e]()}invokeDateOperation(e,t){if(e===i.Add){this.addUnit(t);return}if(e===i.Subtract){this.subtractUnit(t);return}throw new Error(`Invalid verb: ${e}`)}getDate(){return this.#e.day}getFullYear(){return this.#e.year}getDay(){const e=this.#e.weekday;return e===7?0:e}getMonth(){return this.#e.month-1}getHours(){return this.#e.hour}getMinutes(){return this.#e.minute}getSeconds(){return this.#e.second}getMilliseconds(){return this.#e.millisecond}getTime(){return this.#e.valueOf()}getUTCDate(){return this.#i().day}getUTCFullYear(){return this.#i().year}getUTCDay(){const e=this.#i().weekday;return e===7?0:e}getUTCMonth(){return this.#i().month-1}getUTCHours(){return this.#i().hour}getUTCMinutes(){return this.#i().minute}getUTCSeconds(){return this.#i().second}toISOString(){return this.#e.toUTC().toISO()}toJSON(){return this.#e.toJSON()}setDate(e){this.#e=this.#e.set({day:e})}setFullYear(e){this.#e=this.#e.set({year:e})}setDay(e){this.#e=this.#e.set({weekday:e})}setMonth(e){this.#e=this.#e.set({month:e+1})}setHours(e){this.#e=this.#e.set({hour:e})}setMinutes(e){this.#e=this.#e.set({minute:e})}setSeconds(e){this.#e=this.#e.set({second:e})}setMilliseconds(e){this.#e=this.#e.set({millisecond:e})}toString(){return this.toDate().toString()}toDate(){return this.#e.toJSDate()}isLastDayOfMonth(){const{day:e,month:n}=this.#e;if(n===2){const r=CronDate.#s(this.#e.year);return e===t.DAYS_IN_MONTH[n-1]-(r?0:1)}return e===t.DAYS_IN_MONTH[n-1]}isLastWeekdayOfMonth(){const{day:e,month:n}=this.#e;let r;if(n===2){r=t.DAYS_IN_MONTH[n-1]-(CronDate.#s(this.#e.year)?0:1)}else{r=t.DAYS_IN_MONTH[n-1]}return e>r-7}applyDateOperation(e,t,n){if(t===s.Month||t===s.Day){this.invokeDateOperation(e,t);return}const r=this.getHours();this.invokeDateOperation(e,t);const i=this.getHours();const a=i-r;if(a===2){if(n!==24){this.dstStart=i}}else if(a===0&&this.getMinutes()===0&&this.getSeconds()===0){if(n!==24){this.dstEnd=i}}}#i(){return this.#e.toUTC()}}t.CronDate=CronDate;t["default"]=CronDate},862:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronExpression=void 0;const r=n(812);const s=1e4;class CronExpression{#a;#o;#u;#l;#c;#d;constructor(e,t){this.#a=t;this.#o=t.tz;this.#u=new r.CronDate(t.currentDate,this.#o);this.#l=t.startDate?new r.CronDate(t.startDate,this.#o):null;this.#c=t.endDate?new r.CronDate(t.endDate,this.#o):null;this.#d=e}get fields(){return this.#d}static fieldsToExpression(e,t){return new CronExpression(e,t||{})}static#f(e,t){return t.some((t=>t===e))}static#h(e,t){const n=t.isLastWeekdayOfMonth();return e.some((e=>{const r=parseInt(e.toString().charAt(0),10)%7;if(Number.isNaN(r)){throw new Error(`Invalid last weekday of the month expression: ${e}`)}return t.getDay()===r&&n}))}next(){return this.#m()}prev(){return this.#m(true)}hasNext(){const e=this.#u;try{this.#m();return true}catch{return false}finally{this.#u=e}}hasPrev(){const e=this.#u;try{this.#m(true);return true}catch{return false}finally{this.#u=e}}take(e){const t=[];if(e>=0){for(let n=0;n<e;n++){try{t.push(this.next())}catch{return t}}}else{for(let n=0;n>e;n--){try{t.push(this.prev())}catch{return t}}}return t}reset(e){this.#u=new r.CronDate(e||this.#a.currentDate)}stringify(e=false){return this.#d.stringify(e)}includesDate(e){const{second:t,minute:n,hour:s,month:i}=this.#d;const a=new r.CronDate(e,this.#o);if(!t.values.includes(a.getSeconds())||!n.values.includes(a.getMinutes())||!s.values.includes(a.getHours())||!i.values.includes(a.getMonth()+1)){return false}if(!this.#y(a)){return false}if(this.#d.dayOfWeek.nthDay>0){const e=Math.ceil(a.getDate()/7);if(e!==this.#d.dayOfWeek.nthDay){return false}}return true}toString(){return this.#a.expression||this.stringify(true)}#y(e){const t=this.#d.dayOfMonth.isWildcard;const n=!t;const r=this.#d.dayOfWeek.isWildcard;const s=!r;const i=CronExpression.#f(e.getDate(),this.#d.dayOfMonth.values)||this.#d.dayOfMonth.hasLastChar&&e.isLastDayOfMonth();const a=CronExpression.#f(e.getDay(),this.#d.dayOfWeek.values)||this.#d.dayOfWeek.hasLastChar&&CronExpression.#h(this.#d.dayOfWeek.values,e);if(n&&s&&(i||a)){return true}if(i&&!s){return true}if(t&&!r&&a){return true}return false}#g(e,t,n){const s=e.getHours();const i=CronExpression.#f(s,this.#d.hour.values);const a=e.dstStart===s;const o=e.dstEnd===s;if(!i&&!a){e.dstStart=null;e.applyDateOperation(t,r.TimeUnit.Hour,this.#d.hour.values.length);return false}if(a&&!CronExpression.#f(s-1,this.#d.hour.values)){e.invokeDateOperation(t,r.TimeUnit.Hour);return false}if(o&&!n){e.dstEnd=null;e.applyDateOperation(r.DateMathOp.Add,r.TimeUnit.Hour,this.#d.hour.values.length);return false}return true}#m(e=false){const t=e?r.DateMathOp.Subtract:r.DateMathOp.Add;const n=new r.CronDate(this.#u);const i=this.#l;const a=this.#c;const o=n.getTime();let u=0;while(u++<s){if(u>s){throw new Error("Invalid expression, loop limit exceeded")}if(e&&i&&i.getTime()>n.getTime()){throw new Error("Out of the timespan range")}if(!e&&a&&n.getTime()>a.getTime()){throw new Error("Out of the timespan range")}if(!this.#y(n)){n.applyDateOperation(t,r.TimeUnit.Day,this.#d.hour.values.length);continue}if(!(this.#d.dayOfWeek.nthDay<=0||Math.ceil(n.getDate()/7)===this.#d.dayOfWeek.nthDay)){n.applyDateOperation(t,r.TimeUnit.Day,this.#d.hour.values.length);continue}if(!CronExpression.#f(n.getMonth()+1,this.#d.month.values)){n.applyDateOperation(t,r.TimeUnit.Month,this.#d.hour.values.length);continue}if(!this.#g(n,t,e)){continue}if(!CronExpression.#f(n.getMinutes(),this.#d.minute.values)){n.applyDateOperation(t,r.TimeUnit.Minute,this.#d.hour.values.length);continue}if(!CronExpression.#f(n.getSeconds(),this.#d.second.values)){n.applyDateOperation(t,r.TimeUnit.Second,this.#d.hour.values.length);continue}if(o===n.getTime()){if(t==="Add"||n.getMilliseconds()===0){n.applyDateOperation(t,r.TimeUnit.Second,this.#d.hour.values.length)}continue}break}if(n.getMilliseconds()!==0){n.setMilliseconds(0)}this.#u=n;return n}[Symbol.iterator](){return{next:()=>{const e=this.#m();return{value:e,done:!this.hasNext()}}}}}t.CronExpression=CronExpression;t["default"]=CronExpression},365:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronExpressionParser=t.DayOfWeek=t.Months=t.CronUnit=t.PredefinedExpressions=void 0;const r=n(554);const s=n(812);const i=n(862);const a=n(765);const o=n(514);var u;(function(e){e["@yearly"]="0 0 0 1 1 *";e["@annually"]="0 0 0 1 1 *";e["@monthly"]="0 0 0 1 * *";e["@weekly"]="0 0 0 * * 0";e["@daily"]="0 0 0 * * *";e["@hourly"]="0 0 * * * *";e["@minutely"]="0 * * * * *";e["@secondly"]="* * * * * *";e["@weekdays"]="0 0 0 * * 1-5";e["@weekends"]="0 0 0 * * 0,6"})(u||(t.PredefinedExpressions=u={}));var l;(function(e){e["Second"]="Second";e["Minute"]="Minute";e["Hour"]="Hour";e["DayOfMonth"]="DayOfMonth";e["Month"]="Month";e["DayOfWeek"]="DayOfWeek"})(l||(t.CronUnit=l={}));var c;(function(e){e[e["jan"]=1]="jan";e[e["feb"]=2]="feb";e[e["mar"]=3]="mar";e[e["apr"]=4]="apr";e[e["may"]=5]="may";e[e["jun"]=6]="jun";e[e["jul"]=7]="jul";e[e["aug"]=8]="aug";e[e["sep"]=9]="sep";e[e["oct"]=10]="oct";e[e["nov"]=11]="nov";e[e["dec"]=12]="dec"})(c||(t.Months=c={}));var d;(function(e){e[e["sun"]=0]="sun";e[e["mon"]=1]="mon";e[e["tue"]=2]="tue";e[e["wed"]=3]="wed";e[e["thu"]=4]="thu";e[e["fri"]=5]="fri";e[e["sat"]=6]="sat"})(d||(t.DayOfWeek=d={}));class CronExpressionParser{static parse(e,t={}){const{strict:n=false}=t;const c=t.currentDate||new s.CronDate;const d=(0,a.seededRandom)(t.hashSeed);e=u[e]||e;const f=CronExpressionParser.#p(e,n);if(!(f.dayOfMonth==="*"||f.dayOfWeek==="*"||!n)){throw new Error("Cannot use both dayOfMonth and dayOfWeek together in strict mode!")}const h=CronExpressionParser.#O(l.Second,f.second,o.CronSecond.constraints,d);const m=CronExpressionParser.#O(l.Minute,f.minute,o.CronMinute.constraints,d);const y=CronExpressionParser.#O(l.Hour,f.hour,o.CronHour.constraints,d);const g=CronExpressionParser.#O(l.Month,f.month,o.CronMonth.constraints,d);const p=CronExpressionParser.#O(l.DayOfMonth,f.dayOfMonth,o.CronDayOfMonth.constraints,d);const{dayOfWeek:O,nthDayOfWeek:w}=CronExpressionParser.#w(f.dayOfWeek);const v=CronExpressionParser.#O(l.DayOfWeek,O,o.CronDayOfWeek.constraints,d);const D=new r.CronFieldCollection({second:new o.CronSecond(h,{rawValue:f.second}),minute:new o.CronMinute(m,{rawValue:f.minute}),hour:new o.CronHour(y,{rawValue:f.hour}),dayOfMonth:new o.CronDayOfMonth(p,{rawValue:f.dayOfMonth}),month:new o.CronMonth(g,{rawValue:f.month}),dayOfWeek:new o.CronDayOfWeek(v,{rawValue:f.dayOfWeek,nthDayOfWeek:w})});return new i.CronExpression(D,{...t,expression:e,currentDate:c})}static#p(e,t){if(t&&!e.length){throw new Error("Invalid cron expression")}e=e||"0 * * * * *";const n=e.trim().split(/\s+/);if(t&&n.length<6){throw new Error("Invalid cron expression, expected 6 fields")}if(n.length>6){throw new Error("Invalid cron expression, too many fields")}const r=["*","*","*","*","*","0"];if(n.length<r.length){n.unshift(...r.slice(n.length))}const[s,i,a,o,u,l]=n;return{second:s,minute:i,hour:a,dayOfMonth:o,month:u,dayOfWeek:l}}static#O(e,t,n,r){if(e===l.Month||e===l.DayOfWeek){t=t.replace(/[a-z]{3}/gi,(e=>{e=e.toLowerCase();const t=c[e]||d[e];if(t===undefined){throw new Error(`Validation error, cannot resolve alias "${e}"`)}return t.toString()}))}if(!n.validChars.test(t)){throw new Error(`Invalid characters, got value: ${t}`)}t=this.#v(t,n);t=this.#D(t,n,r);return this.#k(e,t,n)}static#v(e,t){return e.replace(/[*?]/g,t.min+"-"+t.max)}static#D(e,t,n){const r=n();return e.replace(/H(?:\((\d+)-(\d+)\))?(?:\/(\d+))?/g,((e,n,s,i)=>{if(n&&s&&i){const e=parseInt(n,10);const a=parseInt(s,10);const o=parseInt(i,10);if(e>a){throw new Error(`Invalid range: ${e}-${a}, min > max`)}if(o<=0){throw new Error(`Invalid step: ${o}, must be positive`)}const u=Math.max(e,t.min);const l=Math.floor(r*o);const c=[];for(let e=Math.floor(u/o)*o+l;e<=a;e+=o){if(e>=u){c.push(e)}}return c.join(",")}else if(n&&s){const e=parseInt(n,10);const t=parseInt(s,10);if(e>t){throw new Error(`Invalid range: ${e}-${t}, min > max`)}return String(Math.floor(r*(t-e+1))+e)}else if(i){const e=parseInt(i,10);if(e<=0){throw new Error(`Invalid step: ${e}, must be positive`)}const n=Math.floor(r*e);const s=[];for(let r=Math.floor(t.min/e)*e+n;r<=t.max;r+=e){if(r>=t.min){s.push(r)}}return s.join(",")}else{return String(Math.floor(r*(t.max-t.min+1)+t.min))}}))}static#k(e,t,n){const r=[];function handleResult(t,n){if(Array.isArray(t)){r.push(...t)}else{if(CronExpressionParser.#T(n,t)){r.push(t)}else{const s=parseInt(t.toString(),10);const i=s>=n.min&&s<=n.max;if(!i){throw new Error(`Constraint error, got value ${t} expected range ${n.min}-${n.max}`)}r.push(e===l.DayOfWeek?s%7:t)}}}const s=t.split(",");s.forEach((t=>{if(!(t.length>0)){throw new Error("Invalid list value format")}handleResult(CronExpressionParser.#S(e,t,n),n)}));return r}static#S(e,t,n){const r=t.split("/");if(r.length>2){throw new Error(`Invalid repeat: ${t}`)}if(r.length===2){if(!isNaN(parseInt(r[0],10))){r[0]=`${r[0]}-${n.max}`}return CronExpressionParser.#b(e,r[0],parseInt(r[1],10),n)}return CronExpressionParser.#b(e,t,1,n)}static#I(e,t,n){const r=!isNaN(e)&&!isNaN(t)&&e>=n.min&&t<=n.max;if(!r){throw new Error(`Constraint error, got range ${e}-${t} expected range ${n.min}-${n.max}`)}if(e>t){throw new Error(`Invalid range: ${e}-${t}, min(${e}) > max(${t})`)}}static#M(e){if(!(!isNaN(e)&&e>0)){throw new Error(`Constraint error, cannot repeat at every ${e} time.`)}}static#C(e,t,n,r){const s=[];if(e===l.DayOfWeek&&n%7===0){s.push(0)}for(let e=t;e<=n;e+=r){if(s.indexOf(e)===-1){s.push(e)}}return s}static#b(e,t,n,r){const s=t.split("-");if(s.length<=1){return isNaN(+t)?t:+t}const[i,a]=s.map((e=>parseInt(e,10)));this.#I(i,a,r);this.#M(n);return this.#C(e,i,a,n)}static#w(e){const t=e.split("#");if(t.length<=1){return{dayOfWeek:t[0]}}const n=+t[t.length-1];const r=e.match(/([,-/])/);if(r!==null){throw new Error(`Constraint error, invalid dayOfWeek \`#\` and \`${r?.[0]}\` special characters are incompatible`)}if(!(t.length<=2&&!isNaN(n)&&n>=1&&n<=5)){throw new Error("Constraint error, invalid dayOfWeek occurrence number (#)")}return{dayOfWeek:t[0],nthDayOfWeek:n}}static#T(e,t){return e.chars.some((e=>t.toString().includes(e)))}}t.CronExpressionParser=CronExpressionParser},554:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronFieldCollection=void 0;const r=n(514);class CronFieldCollection{#x;#E;#F;#N;#W;#L;static from(e,t){return new CronFieldCollection({second:this.resolveField(r.CronSecond,e.second,t.second),minute:this.resolveField(r.CronMinute,e.minute,t.minute),hour:this.resolveField(r.CronHour,e.hour,t.hour),dayOfMonth:this.resolveField(r.CronDayOfMonth,e.dayOfMonth,t.dayOfMonth),month:this.resolveField(r.CronMonth,e.month,t.month),dayOfWeek:this.resolveField(r.CronDayOfWeek,e.dayOfWeek,t.dayOfWeek)})}static resolveField(e,t,n){if(!n){return t}if(n instanceof r.CronField){return n}return new e(n)}constructor({second:e,minute:t,hour:n,dayOfMonth:s,month:i,dayOfWeek:a}){if(!e){throw new Error("Validation error, Field second is missing")}if(!t){throw new Error("Validation error, Field minute is missing")}if(!n){throw new Error("Validation error, Field hour is missing")}if(!s){throw new Error("Validation error, Field dayOfMonth is missing")}if(!i){throw new Error("Validation error, Field month is missing")}if(!a){throw new Error("Validation error, Field dayOfWeek is missing")}if(i.values.length===1&&!s.hasLastChar){if(!(parseInt(s.values[0],10)<=r.CronMonth.daysInMonth[i.values[0]-1])){throw new Error("Invalid explicit day of month definition")}}this.#x=e;this.#E=t;this.#F=n;this.#W=i;this.#L=a;this.#N=s}get second(){return this.#x}get minute(){return this.#E}get hour(){return this.#F}get dayOfMonth(){return this.#N}get month(){return this.#W}get dayOfWeek(){return this.#L}static compactField(e){if(e.length===0){return[]}const t=[];let n=undefined;e.forEach(((e,r,s)=>{if(n===undefined){n={start:e,count:1};return}const i=s[r-1]||n.start;const a=s[r+1];if(e==="L"||e==="W"){t.push(n);t.push({start:e,count:1});n=undefined;return}if(n.step===undefined&&a!==undefined){const t=e-i;const r=a-e;if(t<=r){n={...n,count:2,end:e,step:t};return}n.step=1}if(e-(n.end??0)===n.step){n.count++;n.end=e}else{if(n.count===1){t.push({start:n.start,count:1})}else if(n.count===2){t.push({start:n.start,count:1});t.push({start:n.end??i,count:1})}else{t.push(n)}n={start:e,count:1}}}));if(n){t.push(n)}return t}static#Z(e,t,n){const r=t.step;if(!r){return null}if(r===1&&t.start===e.min&&t.end&&t.end>=n){return e.hasQuestionMarkChar?"?":"*"}if(r!==1&&t.start===e.min&&t.end&&t.end>=n-r+1){return`*/${r}`}return null}static#V(e,t){const n=e.step;if(n===1){return`${e.start}-${e.end}`}const r=e.start===0?e.count-1:e.count;if(!n){throw new Error("Unexpected range step")}if(!e.end){throw new Error("Unexpected range end")}if(n*r>e.end){const mapFn=(t,r)=>{if(typeof e.start!=="number"){throw new Error("Unexpected range start")}return r%n===0?e.start+r:null};if(typeof e.start!=="number"){throw new Error("Unexpected range start")}const t={length:e.end-e.start+1};return Array.from(t,mapFn).filter((e=>e!==null)).join(",")}return e.end===t-n+1?`${e.start}/${n}`:`${e.start}-${e.end}/${n}`}stringifyField(e){let t=e.max;let n=e.values;if(e instanceof r.CronDayOfWeek){t=6;const e=this.#L.values;n=e[e.length-1]===7?e.slice(0,-1):e}if(e instanceof r.CronDayOfMonth){t=this.#W.values.length===1?r.CronMonth.daysInMonth[this.#W.values[0]-1]:e.max}const s=CronFieldCollection.compactField(n);if(s.length===1){const n=CronFieldCollection.#Z(e,s[0],t);if(n){return n}}return s.map((n=>{const s=n.count===1?n.start.toString():CronFieldCollection.#V(n,t);if(e instanceof r.CronDayOfWeek&&e.nthDay>0){return`${s}#${e.nthDay}`}return s})).join(",")}stringify(e=false){const t=[];if(e){t.push(this.stringifyField(this.#x))}t.push(this.stringifyField(this.#E),this.stringifyField(this.#F),this.stringifyField(this.#N),this.stringifyField(this.#W),this.stringifyField(this.#L));return t.join(" ")}serialize(){return{second:this.#x.serialize(),minute:this.#E.serialize(),hour:this.#F.serialize(),dayOfMonth:this.#N.serialize(),month:this.#W.serialize(),dayOfWeek:this.#L.serialize()}}}t.CronFieldCollection=CronFieldCollection},693:function(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){if(r===undefined)r=n;var s=Object.getOwnPropertyDescriptor(t,n);if(!s||("get"in s?!t.__esModule:s.writable||s.configurable)){s={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,r,s)}:function(e,t,n,r){if(r===undefined)r=n;e[r]=t[n]});var s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var i=this&&this.__importStar||function(){var ownKeys=function(e){ownKeys=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n))t[t.length]=n;return t};return ownKeys(e)};return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n=ownKeys(e),i=0;i<n.length;i++)if(n[i]!=="default")r(t,e,n[i]);s(t,e);return t}}();Object.defineProperty(t,"__esModule",{value:true});t.CronFileParser=void 0;const a=n(365);class CronFileParser{static async parseFile(e){const{readFile:t}=await Promise.resolve().then((()=>i(n(943))));const r=await t(e,"utf8");return CronFileParser.#U(r)}static parseFileSync(e){const{readFileSync:t}=n(896);const r=t(e,"utf8");return CronFileParser.#U(r)}static#U(e){const t=e.split("\n");const n={variables:{},expressions:[],errors:{}};for(const e of t){const t=e.trim();if(t.length===0||t.startsWith("#")){continue}const r=t.match(/^(.*)=(.*)$/);if(r){const[,e,t]=r;n.variables[e]=t.replace(/["']/g,"");continue}try{const e=CronFileParser.#$(t);n.expressions.push(e.interval)}catch(e){n.errors[t]=e}}return n}static#$(e){const t=e.split(" ");return{interval:a.CronExpressionParser.parse(t.slice(0,5).join(" ")),command:t.slice(5,t.length)}}}t.CronFileParser=CronFileParser},15:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronDayOfMonth=void 0;const r=n(530);const s=1;const i=31;const a=Object.freeze(["L"]);class CronDayOfMonth extends r.CronField{static get min(){return s}static get max(){return i}static get chars(){return a}static get validChars(){return/^[?,*\dLH/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}}t.CronDayOfMonth=CronDayOfMonth},125:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronDayOfWeek=void 0;const r=n(530);const s=0;const i=7;const a=Object.freeze(["L"]);class CronDayOfWeek extends r.CronField{static get min(){return s}static get max(){return i}static get chars(){return a}static get validChars(){return/^[?,*\dLH#/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}get nthDay(){return this.options.nthDayOfWeek??0}}t.CronDayOfWeek=CronDayOfWeek},530:function(e,t){Object.defineProperty(t,"__esModule",{value:true});t.CronField=void 0;class CronField{#j=false;#A=false;#_=false;#z=[];options={rawValue:""};static get min(){throw new Error("min must be overridden")}static get max(){throw new Error("max must be overridden")}static get chars(){return Object.freeze([])}static get validChars(){return/^[?,*\dH/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}static get constraints(){return{min:this.min,max:this.max,chars:this.chars,validChars:this.validChars}}constructor(e,t={rawValue:""}){if(!Array.isArray(e)){throw new Error(`${this.constructor.name} Validation error, values is not an array`)}if(!(e.length>0)){throw new Error(`${this.constructor.name} Validation error, values contains no values`)}this.options={...t,rawValue:t.rawValue??""};this.#z=e.sort(CronField.sorter);this.#_=this.options.wildcard!==undefined?this.options.wildcard:this.#R();this.#j=this.options.rawValue.includes("L");this.#A=this.options.rawValue.includes("?")}get min(){return this.constructor.min}get max(){return this.constructor.max}get chars(){return this.constructor.chars}get hasLastChar(){return this.#j}get hasQuestionMarkChar(){return this.#A}get isWildcard(){return this.#_}get values(){return this.#z}static sorter(e,t){const n=typeof e==="number";const r=typeof t==="number";if(n&&r)return e-t;if(!n&&!r)return e.localeCompare(t);return n?-1:1}serialize(){return{wildcard:this.#_,values:this.#z}}validate(){let e;const t=this.chars.length>0?` or chars ${this.chars.join("")}`:"";const charTest=e=>t=>new RegExp(`^\\d{0,2}${t}$`).test(e);const rangeTest=t=>{e=t;return typeof t==="number"?t>=this.min&&t<=this.max:this.chars.some(charTest(t))};const n=this.#z.every(rangeTest);if(!n){throw new Error(`${this.constructor.name} Validation error, got value ${e} expected range ${this.min}-${this.max}${t}`)}const r=this.#z.find(((e,t)=>this.#z.indexOf(e)!==t));if(r){throw new Error(`${this.constructor.name} Validation error, duplicate values found: ${r}`)}}#R(){if(this.options.rawValue.length>0){return["*","?"].includes(this.options.rawValue)}return Array.from({length:this.max-this.min+1},((e,t)=>t+this.min)).every((e=>this.#z.includes(e)))}}t.CronField=CronField},746:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronHour=void 0;const r=n(530);const s=0;const i=23;const a=Object.freeze([]);class CronHour extends r.CronField{static get min(){return s}static get max(){return i}static get chars(){return a}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}}t.CronHour=CronHour},548:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronMinute=void 0;const r=n(530);const s=0;const i=59;const a=Object.freeze([]);class CronMinute extends r.CronField{static get min(){return s}static get max(){return i}static get chars(){return a}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}}t.CronMinute=CronMinute},168:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronMonth=void 0;const r=n(812);const s=n(530);const i=1;const a=12;const o=Object.freeze([]);class CronMonth extends s.CronField{static get min(){return i}static get max(){return a}static get chars(){return o}static get daysInMonth(){return r.DAYS_IN_MONTH}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}}t.CronMonth=CronMonth},636:function(e,t,n){Object.defineProperty(t,"__esModule",{value:true});t.CronSecond=void 0;const r=n(530);const s=0;const i=59;const a=Object.freeze([]);class CronSecond extends r.CronField{static get min(){return s}static get max(){return i}static get chars(){return a}constructor(e,t){super(e,t);this.validate()}get values(){return super.values}}t.CronSecond=CronSecond},514:function(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){if(r===undefined)r=n;var s=Object.getOwnPropertyDescriptor(t,n);if(!s||("get"in s?!t.__esModule:s.writable||s.configurable)){s={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,r,s)}:function(e,t,n,r){if(r===undefined)r=n;e[r]=t[n]});var s=this&&this.__exportStar||function(e,t){for(var n in e)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(t,n))r(t,e,n)};Object.defineProperty(t,"__esModule",{value:true});s(n(479),t);s(n(15),t);s(n(125),t);s(n(530),t);s(n(746),t);s(n(548),t);s(n(168),t);s(n(636),t)},479:function(e,t){Object.defineProperty(t,"__esModule",{value:true})},838:function(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){if(r===undefined)r=n;var s=Object.getOwnPropertyDescriptor(t,n);if(!s||("get"in s?!t.__esModule:s.writable||s.configurable)){s={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,r,s)}:function(e,t,n,r){if(r===undefined)r=n;e[r]=t[n]});var s=this&&this.__exportStar||function(e,t){for(var n in e)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(t,n))r(t,e,n)};Object.defineProperty(t,"__esModule",{value:true});t.CronFileParser=t.CronExpressionParser=t.CronExpression=t.CronFieldCollection=t.CronDate=void 0;const i=n(365);var a=n(812);Object.defineProperty(t,"CronDate",{enumerable:true,get:function(){return a.CronDate}});var o=n(554);Object.defineProperty(t,"CronFieldCollection",{enumerable:true,get:function(){return o.CronFieldCollection}});var u=n(862);Object.defineProperty(t,"CronExpression",{enumerable:true,get:function(){return u.CronExpression}});var l=n(365);Object.defineProperty(t,"CronExpressionParser",{enumerable:true,get:function(){return l.CronExpressionParser}});var c=n(693);Object.defineProperty(t,"CronFileParser",{enumerable:true,get:function(){return c.CronFileParser}});s(n(514),t);t["default"]=i.CronExpressionParser},765:function(e,t){Object.defineProperty(t,"__esModule",{value:true});t.seededRandom=seededRandom;function xfnv1a(e){let t=2166136261>>>0;for(let n=0;n<e.length;n++){t^=e.charCodeAt(n);t=Math.imul(t,16777619)}return()=>t>>>0}function mulberry32(e){return()=>{let t=e+=1831565813;t=Math.imul(t^t>>>15,t|1);t^=t+Math.imul(t^t>>>7,t|61);return((t^t>>>14)>>>0)/4294967296}}function seededRandom(e){const t=e?xfnv1a(e)():Math.floor(Math.random()*1e10);return mulberry32(t)}}};var t={};function __nccwpck_require__(n){var r=t[n];if(r!==undefined){return r.exports}var s=t[n]={exports:{}};var i=true;try{e[n].call(s.exports,s,s.exports,__nccwpck_require__);i=false}finally{if(i)delete t[n]}return s.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var n=__nccwpck_require__(838);module.exports=n})();
|
|
@@ -1,273 +0,0 @@
|
|
|
1
|
-
export declare enum TimeUnit {
|
|
2
|
-
Second = "Second",
|
|
3
|
-
Minute = "Minute",
|
|
4
|
-
Hour = "Hour",
|
|
5
|
-
Day = "Day",
|
|
6
|
-
Month = "Month",
|
|
7
|
-
Year = "Year"
|
|
8
|
-
}
|
|
9
|
-
export declare enum DateMathOp {
|
|
10
|
-
Add = "Add",
|
|
11
|
-
Subtract = "Subtract"
|
|
12
|
-
}
|
|
13
|
-
export declare const DAYS_IN_MONTH: readonly number[];
|
|
14
|
-
/**
|
|
15
|
-
* CronDate class that wraps the Luxon DateTime object to provide
|
|
16
|
-
* a consistent API for working with dates and times in the context of cron.
|
|
17
|
-
*/
|
|
18
|
-
export declare class CronDate {
|
|
19
|
-
#private;
|
|
20
|
-
/**
|
|
21
|
-
* Constructs a new CronDate instance.
|
|
22
|
-
* @param {CronDate | Date | number | string} [timestamp] - The timestamp to initialize the CronDate with.
|
|
23
|
-
* @param {string} [tz] - The timezone to use for the CronDate.
|
|
24
|
-
*/
|
|
25
|
-
constructor(timestamp?: CronDate | Date | number | string, tz?: string);
|
|
26
|
-
/**
|
|
27
|
-
* Returns daylight savings start time.
|
|
28
|
-
* @returns {number | null}
|
|
29
|
-
*/
|
|
30
|
-
get dstStart(): number | null;
|
|
31
|
-
/**
|
|
32
|
-
* Sets daylight savings start time.
|
|
33
|
-
* @param {number | null} value
|
|
34
|
-
*/
|
|
35
|
-
set dstStart(value: number | null);
|
|
36
|
-
/**
|
|
37
|
-
* Returns daylight savings end time.
|
|
38
|
-
* @returns {number | null}
|
|
39
|
-
*/
|
|
40
|
-
get dstEnd(): number | null;
|
|
41
|
-
/**
|
|
42
|
-
* Sets daylight savings end time.
|
|
43
|
-
* @param {number | null} value
|
|
44
|
-
*/
|
|
45
|
-
set dstEnd(value: number | null);
|
|
46
|
-
/**
|
|
47
|
-
* Adds one year to the current CronDate.
|
|
48
|
-
*/
|
|
49
|
-
addYear(): void;
|
|
50
|
-
/**
|
|
51
|
-
* Adds one month to the current CronDate.
|
|
52
|
-
*/
|
|
53
|
-
addMonth(): void;
|
|
54
|
-
/**
|
|
55
|
-
* Adds one day to the current CronDate.
|
|
56
|
-
*/
|
|
57
|
-
addDay(): void;
|
|
58
|
-
/**
|
|
59
|
-
* Adds one hour to the current CronDate.
|
|
60
|
-
*/
|
|
61
|
-
addHour(): void;
|
|
62
|
-
/**
|
|
63
|
-
* Adds one minute to the current CronDate.
|
|
64
|
-
*/
|
|
65
|
-
addMinute(): void;
|
|
66
|
-
/**
|
|
67
|
-
* Adds one second to the current CronDate.
|
|
68
|
-
*/
|
|
69
|
-
addSecond(): void;
|
|
70
|
-
/**
|
|
71
|
-
* Subtracts one year from the current CronDate.
|
|
72
|
-
*/
|
|
73
|
-
subtractYear(): void;
|
|
74
|
-
/**
|
|
75
|
-
* Subtracts one month from the current CronDate.
|
|
76
|
-
* If the month is 1, it will subtract one year instead.
|
|
77
|
-
*/
|
|
78
|
-
subtractMonth(): void;
|
|
79
|
-
/**
|
|
80
|
-
* Subtracts one day from the current CronDate.
|
|
81
|
-
* If the day is 1, it will subtract one month instead.
|
|
82
|
-
*/
|
|
83
|
-
subtractDay(): void;
|
|
84
|
-
/**
|
|
85
|
-
* Subtracts one hour from the current CronDate.
|
|
86
|
-
* If the hour is 0, it will subtract one day instead.
|
|
87
|
-
*/
|
|
88
|
-
subtractHour(): void;
|
|
89
|
-
/**
|
|
90
|
-
* Subtracts one minute from the current CronDate.
|
|
91
|
-
* If the minute is 0, it will subtract one hour instead.
|
|
92
|
-
*/
|
|
93
|
-
subtractMinute(): void;
|
|
94
|
-
/**
|
|
95
|
-
* Subtracts one second from the current CronDate.
|
|
96
|
-
* If the second is 0, it will subtract one minute instead.
|
|
97
|
-
*/
|
|
98
|
-
subtractSecond(): void;
|
|
99
|
-
/**
|
|
100
|
-
* Adds a unit of time to the current CronDate.
|
|
101
|
-
* @param {TimeUnit} unit
|
|
102
|
-
*/
|
|
103
|
-
addUnit(unit: TimeUnit): void;
|
|
104
|
-
/**
|
|
105
|
-
* Subtracts a unit of time from the current CronDate.
|
|
106
|
-
* @param {TimeUnit} unit
|
|
107
|
-
*/
|
|
108
|
-
subtractUnit(unit: TimeUnit): void;
|
|
109
|
-
/**
|
|
110
|
-
* Handles a math operation.
|
|
111
|
-
* @param {DateMathOp} verb - {'add' | 'subtract'}
|
|
112
|
-
* @param {TimeUnit} unit - {'year' | 'month' | 'day' | 'hour' | 'minute' | 'second'}
|
|
113
|
-
*/
|
|
114
|
-
invokeDateOperation(verb: DateMathOp, unit: TimeUnit): void;
|
|
115
|
-
/**
|
|
116
|
-
* Returns the day.
|
|
117
|
-
* @returns {number}
|
|
118
|
-
*/
|
|
119
|
-
getDate(): number;
|
|
120
|
-
/**
|
|
121
|
-
* Returns the year.
|
|
122
|
-
* @returns {number}
|
|
123
|
-
*/
|
|
124
|
-
getFullYear(): number;
|
|
125
|
-
/**
|
|
126
|
-
* Returns the day of the week.
|
|
127
|
-
* @returns {number}
|
|
128
|
-
*/
|
|
129
|
-
getDay(): number;
|
|
130
|
-
/**
|
|
131
|
-
* Returns the month.
|
|
132
|
-
* @returns {number}
|
|
133
|
-
*/
|
|
134
|
-
getMonth(): number;
|
|
135
|
-
/**
|
|
136
|
-
* Returns the hour.
|
|
137
|
-
* @returns {number}
|
|
138
|
-
*/
|
|
139
|
-
getHours(): number;
|
|
140
|
-
/**
|
|
141
|
-
* Returns the minutes.
|
|
142
|
-
* @returns {number}
|
|
143
|
-
*/
|
|
144
|
-
getMinutes(): number;
|
|
145
|
-
/**
|
|
146
|
-
* Returns the seconds.
|
|
147
|
-
* @returns {number}
|
|
148
|
-
*/
|
|
149
|
-
getSeconds(): number;
|
|
150
|
-
/**
|
|
151
|
-
* Returns the milliseconds.
|
|
152
|
-
* @returns {number}
|
|
153
|
-
*/
|
|
154
|
-
getMilliseconds(): number;
|
|
155
|
-
/**
|
|
156
|
-
* Returns the time.
|
|
157
|
-
* @returns {number}
|
|
158
|
-
*/
|
|
159
|
-
getTime(): number;
|
|
160
|
-
/**
|
|
161
|
-
* Returns the UTC day.
|
|
162
|
-
* @returns {number}
|
|
163
|
-
*/
|
|
164
|
-
getUTCDate(): number;
|
|
165
|
-
/**
|
|
166
|
-
* Returns the UTC year.
|
|
167
|
-
* @returns {number}
|
|
168
|
-
*/
|
|
169
|
-
getUTCFullYear(): number;
|
|
170
|
-
/**
|
|
171
|
-
* Returns the UTC day of the week.
|
|
172
|
-
* @returns {number}
|
|
173
|
-
*/
|
|
174
|
-
getUTCDay(): number;
|
|
175
|
-
/**
|
|
176
|
-
* Returns the UTC month.
|
|
177
|
-
* @returns {number}
|
|
178
|
-
*/
|
|
179
|
-
getUTCMonth(): number;
|
|
180
|
-
/**
|
|
181
|
-
* Returns the UTC hour.
|
|
182
|
-
* @returns {number}
|
|
183
|
-
*/
|
|
184
|
-
getUTCHours(): number;
|
|
185
|
-
/**
|
|
186
|
-
* Returns the UTC minutes.
|
|
187
|
-
* @returns {number}
|
|
188
|
-
*/
|
|
189
|
-
getUTCMinutes(): number;
|
|
190
|
-
/**
|
|
191
|
-
* Returns the UTC seconds.
|
|
192
|
-
* @returns {number}
|
|
193
|
-
*/
|
|
194
|
-
getUTCSeconds(): number;
|
|
195
|
-
/**
|
|
196
|
-
* Returns the UTC milliseconds.
|
|
197
|
-
* @returns {string | null}
|
|
198
|
-
*/
|
|
199
|
-
toISOString(): string | null;
|
|
200
|
-
/**
|
|
201
|
-
* Returns the date as a JSON string.
|
|
202
|
-
* @returns {string | null}
|
|
203
|
-
*/
|
|
204
|
-
toJSON(): string | null;
|
|
205
|
-
/**
|
|
206
|
-
* Sets the day.
|
|
207
|
-
* @param d
|
|
208
|
-
*/
|
|
209
|
-
setDate(d: number): void;
|
|
210
|
-
/**
|
|
211
|
-
* Sets the year.
|
|
212
|
-
* @param y
|
|
213
|
-
*/
|
|
214
|
-
setFullYear(y: number): void;
|
|
215
|
-
/**
|
|
216
|
-
* Sets the day of the week.
|
|
217
|
-
* @param d
|
|
218
|
-
*/
|
|
219
|
-
setDay(d: number): void;
|
|
220
|
-
/**
|
|
221
|
-
* Sets the month.
|
|
222
|
-
* @param m
|
|
223
|
-
*/
|
|
224
|
-
setMonth(m: number): void;
|
|
225
|
-
/**
|
|
226
|
-
* Sets the hour.
|
|
227
|
-
* @param h
|
|
228
|
-
*/
|
|
229
|
-
setHours(h: number): void;
|
|
230
|
-
/**
|
|
231
|
-
* Sets the minutes.
|
|
232
|
-
* @param m
|
|
233
|
-
*/
|
|
234
|
-
setMinutes(m: number): void;
|
|
235
|
-
/**
|
|
236
|
-
* Sets the seconds.
|
|
237
|
-
* @param s
|
|
238
|
-
*/
|
|
239
|
-
setSeconds(s: number): void;
|
|
240
|
-
/**
|
|
241
|
-
* Sets the milliseconds.
|
|
242
|
-
* @param s
|
|
243
|
-
*/
|
|
244
|
-
setMilliseconds(s: number): void;
|
|
245
|
-
/**
|
|
246
|
-
* Returns the date as a string.
|
|
247
|
-
* @returns {string}
|
|
248
|
-
*/
|
|
249
|
-
toString(): string;
|
|
250
|
-
/**
|
|
251
|
-
* Returns the date as a Date object.
|
|
252
|
-
* @returns {Date}
|
|
253
|
-
*/
|
|
254
|
-
toDate(): Date;
|
|
255
|
-
/**
|
|
256
|
-
* Returns true if the day is the last day of the month.
|
|
257
|
-
* @returns {boolean}
|
|
258
|
-
*/
|
|
259
|
-
isLastDayOfMonth(): boolean;
|
|
260
|
-
/**
|
|
261
|
-
* Returns true if the day is the last weekday of the month.
|
|
262
|
-
* @returns {boolean}
|
|
263
|
-
*/
|
|
264
|
-
isLastWeekdayOfMonth(): boolean;
|
|
265
|
-
/**
|
|
266
|
-
* Primarily for internal use.
|
|
267
|
-
* @param {DateMathOp} op - The operation to perform.
|
|
268
|
-
* @param {TimeUnit} unit - The unit of time to use.
|
|
269
|
-
* @param {number} [hoursLength] - The length of the hours. Required when unit is not month or day.
|
|
270
|
-
*/
|
|
271
|
-
applyDateOperation(op: DateMathOp, unit: TimeUnit, hoursLength?: number): void;
|
|
272
|
-
}
|
|
273
|
-
export default CronDate;
|