@antcde/vue-utils 0.2.27 → 0.2.28-rc.10

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/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { objectOmit as e, objectPick as t, useAsyncState as n, useColorMode as r, useMagicKeys as i, watchDebounced as a, whenever as o } from "@vueuse/core";
2
2
  import { computed as s, inject as c, onBeforeUnmount as l, onMounted as u, onScopeDispose as d, onUnmounted as f, readonly as p, ref as m, shallowRef as h, watch as g } from "vue";
3
3
  import { useI18n as _ } from "vue-i18n";
4
- import { clone as v, isAuthorizationRequired as y, newCommsClient as b, newCommsHost as x } from "@antcde/connect-ts";
5
- import { BehaviorSubject as S, Subject as C, concat as w, concatMap as T, debounceTime as E, distinctUntilChanged as D, filter as O, map as k } from "rxjs";
4
+ import { clone as v, isAuthorizationRequired as y, newCommsClient as b, newCommsHost as ee } from "@antcde/connect-ts";
5
+ import { BehaviorSubject as x, Subject as te, concat as ne, concatMap as re, debounceTime as ie, distinctUntilChanged as ae, filter as S, map as C } from "rxjs";
6
6
  //#region src/formatDate.ts
7
- var A = "nl", j = {
7
+ var w = "nl", T = {
8
8
  short: {
9
9
  day: "2-digit",
10
10
  month: "2-digit",
@@ -40,36 +40,1915 @@ var A = "nl", j = {
40
40
  minute: "2-digit",
41
41
  hour12: !1
42
42
  }
43
- }, M = /* @__PURE__ */ new Set(["short", "shortDateTime"]);
44
- function N(e) {
43
+ }, oe = /* @__PURE__ */ new Set(["short", "shortDateTime"]);
44
+ function se(e) {
45
45
  return e instanceof Date ? e : new Date(e);
46
46
  }
47
- function P(e) {
47
+ function ce(e) {
48
48
  return `${e.getFullYear()}-${String(e.getMonth() + 1).padStart(2, "0")}-${String(e.getDate()).padStart(2, "0")}`;
49
49
  }
50
- function F(e, t = {}) {
51
- let { preset: n = "short", locale: r = A, fallback: i = "" } = t;
50
+ function le(e, t = {}) {
51
+ let { preset: n = "short", locale: r = w, fallback: i = "" } = t;
52
52
  if (e == null || e === "") return i;
53
- let a = N(e);
53
+ let a = se(e);
54
54
  if (Number.isNaN(a.getTime())) return i;
55
- if (n === "iso") return P(a);
56
- let o = M.has(n) && /^en\b/i.test(r) ? A : r;
57
- return new Intl.DateTimeFormat(o, j[n]).format(a);
55
+ if (n === "iso") return ce(a);
56
+ let o = oe.has(n) && /^en\b/i.test(r) ? w : r;
57
+ return new Intl.DateTimeFormat(o, T[n]).format(a);
58
58
  }
59
- function I(e, t, n = {}) {
60
- let { preset: r = "medium", locale: i = A, fallback: a = "" } = n, o = e == null || e === "" ? null : N(e), s = t == null || t === "" ? null : N(t), c = o && !Number.isNaN(o.getTime()) ? o : null, l = s && !Number.isNaN(s.getTime()) ? s : null;
59
+ function ue(e, t, n = {}) {
60
+ let { preset: r = "medium", locale: i = w, fallback: a = "" } = n, o = e == null || e === "" ? null : se(e), s = t == null || t === "" ? null : se(t), c = o && !Number.isNaN(o.getTime()) ? o : null, l = s && !Number.isNaN(s.getTime()) ? s : null;
61
61
  if (!c && !l) return a;
62
- if (!c || !l || P(c) === P(l)) return F(c ?? l, {
62
+ if (!c || !l || ce(c) === ce(l)) return le(c ?? l, {
63
63
  preset: r === "iso" ? "medium" : r,
64
64
  locale: i,
65
65
  fallback: a
66
66
  });
67
67
  let u = r === "iso" ? "medium" : r;
68
- return new Intl.DateTimeFormat(i, j[u]).formatRange(c, l);
68
+ return new Intl.DateTimeFormat(i, T[u]).formatRange(c, l);
69
+ }
70
+ //#endregion
71
+ //#region src/refreshLabel.ts
72
+ var de = {
73
+ 1: "first",
74
+ 2: "second",
75
+ 3: "third",
76
+ 4: "fourth",
77
+ [-1]: "last"
78
+ };
79
+ function fe(e, t) {
80
+ let { t: n, locale: r, prefix: i } = t, a = (e) => `${i}.${e}`;
81
+ if (e.kind === "interval") return n(a(`interval.${e.preset}`), {});
82
+ if (e.kind === "custom") {
83
+ let t = e.nextRefreshAt ? new Date(e.nextRefreshAt) : null;
84
+ return t && !Number.isNaN(t.getTime()) ? n(a("customNext"), { date: new Intl.DateTimeFormat(r, {
85
+ weekday: "short",
86
+ day: "numeric",
87
+ month: "short",
88
+ hour: "2-digit",
89
+ minute: "2-digit"
90
+ }).format(t) }) : n(a("custom"), {});
91
+ }
92
+ let { spec: o } = e, s = o.interval, c = (e) => new Intl.DateTimeFormat(r, {
93
+ weekday: "long",
94
+ timeZone: "UTC"
95
+ }).format(new Date(Date.UTC(2024, 0, 1 + e))), l = o.time ?? "", u;
96
+ switch (o.freq) {
97
+ case "hourly":
98
+ u = n(a("hourly"), { count: s }, s);
99
+ break;
100
+ case "daily":
101
+ u = n(a("daily"), {
102
+ count: s,
103
+ time: l
104
+ }, s);
105
+ break;
106
+ case "weekly":
107
+ u = n(a("weekly"), {
108
+ count: s,
109
+ time: l,
110
+ days: new Intl.ListFormat(r, { type: "conjunction" }).format(o.weekdays.map(c))
111
+ }, s);
112
+ break;
113
+ default: {
114
+ let e = o.monthly ?? { day: 1 };
115
+ if ("day" in e) {
116
+ let t = new Intl.PluralRules(r, { type: "ordinal" }).select(e.day);
117
+ u = n(a("monthlyDay"), {
118
+ count: s,
119
+ time: l,
120
+ day: n(a(`ordinal.${t}`), { n: e.day })
121
+ }, s);
122
+ } else u = n(a("monthlyNth"), {
123
+ count: s,
124
+ time: l,
125
+ nth: n(a(`nth.${de[e.nth]}`), {}),
126
+ weekday: c(e.weekday)
127
+ }, s);
128
+ }
129
+ }
130
+ return e.foreignZone ? n(a("inZone"), {
131
+ label: u,
132
+ zone: o.timezone
133
+ }) : u;
134
+ }
135
+ //#endregion
136
+ //#region src/refreshSchedule.ts
137
+ var pe = [
138
+ "MO",
139
+ "TU",
140
+ "WE",
141
+ "TH",
142
+ "FR",
143
+ "SA",
144
+ "SU"
145
+ ], me = [
146
+ "hourly",
147
+ "daily",
148
+ "weekly",
149
+ "monthly"
150
+ ], he = [
151
+ 1,
152
+ 2,
153
+ 3,
154
+ 4,
155
+ -1
156
+ ], ge = /* @__PURE__ */ new Set([
157
+ "FREQ",
158
+ "INTERVAL",
159
+ "BYDAY",
160
+ "BYMONTHDAY",
161
+ "BYSETPOS",
162
+ "WKST"
163
+ ]);
164
+ function _e() {
165
+ return new Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
166
+ }
167
+ function ve(e = /* @__PURE__ */ new Date()) {
168
+ let t = (e) => String(e).padStart(2, "0");
169
+ return {
170
+ freq: "weekly",
171
+ interval: 1,
172
+ weekdays: [0],
173
+ monthly: null,
174
+ time: "06:00",
175
+ startDate: `${e.getFullYear()}-${t(e.getMonth() + 1)}-${t(e.getDate())}`,
176
+ timezone: _e()
177
+ };
178
+ }
179
+ function ye(e) {
180
+ return ((/* @__PURE__ */ new Date(`${e}T00:00:00Z`)).getUTCDay() + 6) % 7;
181
+ }
182
+ function be(e) {
183
+ let t = e.freq === "hourly" ? "00:00" : e.time ?? "00:00", n = `DTSTART;TZID=${e.timezone}:${e.startDate.replaceAll("-", "")}T${t.replace(":", "")}00`, r = [`FREQ=${e.freq.toUpperCase()}`, `INTERVAL=${Math.max(1, Math.trunc(e.interval))}`];
184
+ return e.freq === "weekly" && e.weekdays.length && r.push(`BYDAY=${[...e.weekdays].sort((e, t) => e - t).map((e) => pe[e]).join(",")}`), e.freq === "monthly" && e.monthly && r.push("day" in e.monthly ? `BYMONTHDAY=${e.monthly.day}` : `BYDAY=${pe[e.monthly.weekday]};BYSETPOS=${e.monthly.nth}`), `${n}\nRRULE:${r.join(";")}`;
185
+ }
186
+ function xe(e) {
187
+ let t = pe.indexOf(e);
188
+ return t >= 0 ? t : null;
189
+ }
190
+ function Se(e, t) {
191
+ let n = e.get("BYMONTHDAY"), r = e.get("BYDAY");
192
+ if (n && !r) {
193
+ let e = Number(n);
194
+ return Number.isInteger(e) && e >= 1 && e <= 31 ? { day: e } : null;
195
+ }
196
+ if (!r) return n ? null : { day: Number(t.slice(8, 10)) };
197
+ let i = /^([+-]?\d)?([A-Z]{2})$/.exec(r), a = i ? xe(i[2]) : null, o = Number(i?.[1] ?? e.get("BYSETPOS"));
198
+ return a !== null && he.includes(o) ? {
199
+ nth: o,
200
+ weekday: a
201
+ } : null;
202
+ }
203
+ function Ce(e) {
204
+ let t = (e ?? "").trim().split(/\r?\n/).map((e) => e.trim()), n = /^DTSTART;TZID=([^:]+):(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})00$/.exec(t.find((e) => e.startsWith("DTSTART")) ?? ""), r = t.find((e) => e.startsWith("RRULE:"));
205
+ if (!n || !r || t.length !== 2) return null;
206
+ let i = new Map(r.slice(6).split(";").map((e) => e.split("=")));
207
+ if ([...i.keys()].some((e) => !ge.has(e))) return null;
208
+ let a = (i.get("FREQ") ?? "").toLowerCase(), o = Number(i.get("INTERVAL") ?? 1);
209
+ if (!me.includes(a) || !Number.isInteger(o) || o < 1) return null;
210
+ let s = `${n[2]}-${n[3]}-${n[4]}`, c = i.get("BYDAY");
211
+ if ((a === "hourly" || a === "daily") && (c || i.has("BYMONTHDAY") || i.has("BYSETPOS"))) return null;
212
+ let l = [];
213
+ if (a === "weekly") {
214
+ let e = c ? c.split(",").map(xe) : [ye(s)];
215
+ if (e.includes(null) || i.has("BYMONTHDAY") || i.has("BYSETPOS")) return null;
216
+ l = e;
217
+ }
218
+ let u = a === "monthly" ? Se(i, s) : null;
219
+ return a === "monthly" && !u ? null : {
220
+ freq: a,
221
+ interval: o,
222
+ weekdays: l,
223
+ monthly: u,
224
+ time: a === "hourly" ? null : `${n[5]}:${n[6]}`,
225
+ startDate: s,
226
+ timezone: n[1]
227
+ };
228
+ }
229
+ function we(e, t = _e()) {
230
+ if (!e) return null;
231
+ if (e.kind === "interval") return {
232
+ kind: "interval",
233
+ preset: e.seconds
234
+ };
235
+ let n = Ce(e.rule);
236
+ return n ? {
237
+ kind: "schedule",
238
+ spec: n,
239
+ foreignZone: n.timezone !== t
240
+ } : {
241
+ kind: "custom",
242
+ nextRefreshAt: e.next_refresh_at ?? null
243
+ };
244
+ }
245
+ //#endregion
246
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/weekday.js
247
+ var Te = [
248
+ "MO",
249
+ "TU",
250
+ "WE",
251
+ "TH",
252
+ "FR",
253
+ "SA",
254
+ "SU"
255
+ ], E = function() {
256
+ function e(e, t) {
257
+ if (t === 0) throw Error("Can't create weekday with n == 0");
258
+ this.weekday = e, this.n = t;
259
+ }
260
+ return e.fromStr = function(t) {
261
+ return new e(Te.indexOf(t));
262
+ }, e.prototype.nth = function(t) {
263
+ return this.n === t ? this : new e(this.weekday, t);
264
+ }, e.prototype.equals = function(e) {
265
+ return this.weekday === e.weekday && this.n === e.n;
266
+ }, e.prototype.toString = function() {
267
+ var e = Te[this.weekday];
268
+ return this.n && (e = (this.n > 0 ? "+" : "") + String(this.n) + e), e;
269
+ }, e.prototype.getJsWeekday = function() {
270
+ return this.weekday === 6 ? 0 : this.weekday + 1;
271
+ }, e;
272
+ }(), D = function(e) {
273
+ return e != null;
274
+ }, O = function(e) {
275
+ return typeof e == "number";
276
+ }, Ee = function(e) {
277
+ return typeof e == "string" && Te.includes(e);
278
+ }, k = Array.isArray, A = function(e, t) {
279
+ t === void 0 && (t = e), arguments.length === 1 && (t = e, e = 0);
280
+ for (var n = [], r = e; r < t; r++) n.push(r);
281
+ return n;
282
+ }, j = function(e, t) {
283
+ var n = 0, r = [];
284
+ if (k(e)) for (; n < t; n++) r[n] = [].concat(e);
285
+ else for (; n < t; n++) r[n] = e;
286
+ return r;
287
+ }, De = function(e) {
288
+ return k(e) ? e : [e];
289
+ };
290
+ function M(e, t, n) {
291
+ n === void 0 && (n = " ");
292
+ var r = String(e);
293
+ return t >>= 0, r.length > t ? String(r) : (t -= r.length, t > n.length && (n += j(n, t / n.length)), n.slice(0, t) + String(r));
294
+ }
295
+ var Oe = function(e, t, n) {
296
+ var r = e.split(t);
297
+ return n ? r.slice(0, n).concat([r.slice(n).join(t)]) : r;
298
+ }, N = function(e, t) {
299
+ var n = e % t;
300
+ return n * t < 0 ? n + t : n;
301
+ }, ke = function(e, t) {
302
+ return {
303
+ div: Math.floor(e / t),
304
+ mod: N(e, t)
305
+ };
306
+ }, P = function(e) {
307
+ return !D(e) || e.length === 0;
308
+ }, F = function(e) {
309
+ return !P(e);
310
+ }, I = function(e, t) {
311
+ return F(e) && e.indexOf(t) !== -1;
312
+ }, L = function(e, t, n, r, i, a) {
313
+ return r === void 0 && (r = 0), i === void 0 && (i = 0), a === void 0 && (a = 0), new Date(Date.UTC(e, t - 1, n, r, i, a));
314
+ }, Ae = [
315
+ 31,
316
+ 28,
317
+ 31,
318
+ 30,
319
+ 31,
320
+ 30,
321
+ 31,
322
+ 31,
323
+ 30,
324
+ 31,
325
+ 30,
326
+ 31
327
+ ], je = 864e5, Me = L(1970, 1, 1), Ne = [
328
+ 6,
329
+ 0,
330
+ 1,
331
+ 2,
332
+ 3,
333
+ 4,
334
+ 5
335
+ ], Pe = function(e) {
336
+ return e % 4 == 0 && e % 100 != 0 || e % 400 == 0;
337
+ }, Fe = function(e) {
338
+ return e instanceof Date;
339
+ }, R = function(e) {
340
+ return Fe(e) && !isNaN(e.getTime());
341
+ }, Ie = function(e, t) {
342
+ var n = e.getTime() - t.getTime();
343
+ return Math.round(n / je);
344
+ }, Le = function(e) {
345
+ return Ie(e, Me);
346
+ }, Re = function(e) {
347
+ return new Date(Me.getTime() + e * je);
348
+ }, ze = function(e) {
349
+ var t = e.getUTCMonth();
350
+ return t === 1 && Pe(e.getUTCFullYear()) ? 29 : Ae[t];
351
+ }, z = function(e) {
352
+ return Ne[e.getUTCDay()];
353
+ }, Be = function(e, t) {
354
+ var n = L(e, t + 1, 1);
355
+ return [z(n), ze(n)];
356
+ }, Ve = function(e, t) {
357
+ return t ||= e, new Date(Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate(), t.getHours(), t.getMinutes(), t.getSeconds(), t.getMilliseconds()));
358
+ }, He = function(e) {
359
+ return new Date(e.getTime());
360
+ }, Ue = function(e) {
361
+ for (var t = [], n = 0; n < e.length; n++) t.push(He(e[n]));
362
+ return t;
363
+ }, B = function(e) {
364
+ e.sort(function(e, t) {
365
+ return e.getTime() - t.getTime();
366
+ });
367
+ }, We = function(e, t) {
368
+ t === void 0 && (t = !0);
369
+ var n = new Date(e);
370
+ return [
371
+ M(n.getUTCFullYear().toString(), 4, "0"),
372
+ M(n.getUTCMonth() + 1, 2, "0"),
373
+ M(n.getUTCDate(), 2, "0"),
374
+ "T",
375
+ M(n.getUTCHours(), 2, "0"),
376
+ M(n.getUTCMinutes(), 2, "0"),
377
+ M(n.getUTCSeconds(), 2, "0"),
378
+ t ? "Z" : ""
379
+ ].join("");
380
+ }, Ge = function(e) {
381
+ var t = /^(\d{4})(\d{2})(\d{2})(T(\d{2})(\d{2})(\d{2})Z?)?$/.exec(e);
382
+ if (!t) throw Error(`Invalid UNTIL value: ${e}`);
383
+ return new Date(Date.UTC(parseInt(t[1], 10), parseInt(t[2], 10) - 1, parseInt(t[3], 10), parseInt(t[5], 10) || 0, parseInt(t[6], 10) || 0, parseInt(t[7], 10) || 0));
384
+ }, Ke = function(e, t) {
385
+ return e.toLocaleString("sv-SE", { timeZone: t }).replace(" ", "T") + "Z";
386
+ }, qe = function(e, t) {
387
+ var n = Intl.DateTimeFormat().resolvedOptions().timeZone, r = new Date(Ke(e, n)), i = new Date(Ke(e, t ?? "UTC")).getTime() - r.getTime();
388
+ return new Date(e.getTime() - i);
389
+ }, V = function() {
390
+ function e(e, t) {
391
+ this.minDate = null, this.maxDate = null, this._result = [], this.total = 0, this.method = e, this.args = t, e === "between" ? (this.maxDate = t.inc ? t.before : /* @__PURE__ */ new Date(t.before.getTime() - 1), this.minDate = t.inc ? t.after : new Date(t.after.getTime() + 1)) : e === "before" ? this.maxDate = t.inc ? t.dt : /* @__PURE__ */ new Date(t.dt.getTime() - 1) : e === "after" && (this.minDate = t.inc ? t.dt : new Date(t.dt.getTime() + 1));
392
+ }
393
+ return e.prototype.accept = function(e) {
394
+ ++this.total;
395
+ var t = this.minDate && e < this.minDate, n = this.maxDate && e > this.maxDate;
396
+ if (this.method === "between") {
397
+ if (t) return !0;
398
+ if (n) return !1;
399
+ } else if (this.method === "before") {
400
+ if (n) return !1;
401
+ } else if (this.method === "after") return t ? !0 : (this.add(e), !1);
402
+ return this.add(e);
403
+ }, e.prototype.add = function(e) {
404
+ return this._result.push(e), !0;
405
+ }, e.prototype.getValue = function() {
406
+ var e = this._result;
407
+ switch (this.method) {
408
+ case "all":
409
+ case "between": return e;
410
+ default: return e.length ? e[e.length - 1] : null;
411
+ }
412
+ }, e.prototype.clone = function() {
413
+ return new e(this.method, this.args);
414
+ }, e;
415
+ }(), Je = function(e, t) {
416
+ return Je = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, t) {
417
+ e.__proto__ = t;
418
+ } || function(e, t) {
419
+ for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
420
+ }, Je(e, t);
421
+ };
422
+ function Ye(e, t) {
423
+ if (typeof t != "function" && t !== null) throw TypeError("Class extends value " + String(t) + " is not a constructor or null");
424
+ Je(e, t);
425
+ function n() {
426
+ this.constructor = e;
427
+ }
428
+ e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n());
429
+ }
430
+ var H = function() {
431
+ return H = Object.assign || function(e) {
432
+ for (var t, n = 1, r = arguments.length; n < r; n++) for (var i in t = arguments[n], t) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);
433
+ return e;
434
+ }, H.apply(this, arguments);
435
+ };
436
+ function U(e, t, n) {
437
+ if (n || arguments.length === 2) for (var r = 0, i = t.length, a; r < i; r++) (a || !(r in t)) && (a ||= Array.prototype.slice.call(t, 0, r), a[r] = t[r]);
438
+ return e.concat(a || Array.prototype.slice.call(t));
439
+ }
440
+ //#endregion
441
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/callbackiterresult.js
442
+ var Xe = function(e) {
443
+ Ye(t, e);
444
+ function t(t, n, r) {
445
+ var i = e.call(this, t, n) || this;
446
+ return i.iterator = r, i;
447
+ }
448
+ return t.prototype.add = function(e) {
449
+ return this.iterator(e, this._result.length) ? (this._result.push(e), !0) : !1;
450
+ }, t;
451
+ }(V), Ze = {
452
+ dayNames: [
453
+ "Sunday",
454
+ "Monday",
455
+ "Tuesday",
456
+ "Wednesday",
457
+ "Thursday",
458
+ "Friday",
459
+ "Saturday"
460
+ ],
461
+ monthNames: [
462
+ "January",
463
+ "February",
464
+ "March",
465
+ "April",
466
+ "May",
467
+ "June",
468
+ "July",
469
+ "August",
470
+ "September",
471
+ "October",
472
+ "November",
473
+ "December"
474
+ ],
475
+ tokens: {
476
+ SKIP: /^[ \r\n\t]+|^\.$/,
477
+ number: /^[1-9][0-9]*/,
478
+ numberAsText: /^(one|two|three)/i,
479
+ every: /^every/i,
480
+ "day(s)": /^days?/i,
481
+ "weekday(s)": /^weekdays?/i,
482
+ "week(s)": /^weeks?/i,
483
+ "hour(s)": /^hours?/i,
484
+ "minute(s)": /^minutes?/i,
485
+ "month(s)": /^months?/i,
486
+ "year(s)": /^years?/i,
487
+ on: /^(on|in)/i,
488
+ at: /^(at)/i,
489
+ the: /^the/i,
490
+ first: /^first/i,
491
+ second: /^second/i,
492
+ third: /^third/i,
493
+ nth: /^([1-9][0-9]*)(\.|th|nd|rd|st)/i,
494
+ last: /^last/i,
495
+ for: /^for/i,
496
+ "time(s)": /^times?/i,
497
+ until: /^(un)?til/i,
498
+ monday: /^mo(n(day)?)?/i,
499
+ tuesday: /^tu(e(s(day)?)?)?/i,
500
+ wednesday: /^we(d(n(esday)?)?)?/i,
501
+ thursday: /^th(u(r(sday)?)?)?/i,
502
+ friday: /^fr(i(day)?)?/i,
503
+ saturday: /^sa(t(urday)?)?/i,
504
+ sunday: /^su(n(day)?)?/i,
505
+ january: /^jan(uary)?/i,
506
+ february: /^feb(ruary)?/i,
507
+ march: /^mar(ch)?/i,
508
+ april: /^apr(il)?/i,
509
+ may: /^may/i,
510
+ june: /^june?/i,
511
+ july: /^july?/i,
512
+ august: /^aug(ust)?/i,
513
+ september: /^sep(t(ember)?)?/i,
514
+ october: /^oct(ober)?/i,
515
+ november: /^nov(ember)?/i,
516
+ december: /^dec(ember)?/i,
517
+ comma: /^(,\s*|(and|or)\s*)+/i
518
+ }
519
+ }, Qe = function(e, t) {
520
+ return e.indexOf(t) !== -1;
521
+ }, $e = function(e) {
522
+ return e.toString();
523
+ }, et = function(e, t, n) {
524
+ return `${t} ${n}, ${e}`;
525
+ }, W = function() {
526
+ function e(e, t, n, r) {
527
+ if (t === void 0 && (t = $e), n === void 0 && (n = Ze), r === void 0 && (r = et), this.text = [], this.language = n || Ze, this.gettext = t, this.dateFormatter = r, this.rrule = e, this.options = e.options, this.origOptions = e.origOptions, this.origOptions.bymonthday) {
528
+ var i = [].concat(this.options.bymonthday), a = [].concat(this.options.bynmonthday);
529
+ i.sort(function(e, t) {
530
+ return e - t;
531
+ }), a.sort(function(e, t) {
532
+ return t - e;
533
+ }), this.bymonthday = i.concat(a), this.bymonthday.length || (this.bymonthday = null);
534
+ }
535
+ if (D(this.origOptions.byweekday)) {
536
+ var o = k(this.origOptions.byweekday) ? this.origOptions.byweekday : [this.origOptions.byweekday], s = String(o);
537
+ this.byweekday = {
538
+ allWeeks: o.filter(function(e) {
539
+ return !e.n;
540
+ }),
541
+ someWeeks: o.filter(function(e) {
542
+ return !!e.n;
543
+ }),
544
+ isWeekdays: s.indexOf("MO") !== -1 && s.indexOf("TU") !== -1 && s.indexOf("WE") !== -1 && s.indexOf("TH") !== -1 && s.indexOf("FR") !== -1 && s.indexOf("SA") === -1 && s.indexOf("SU") === -1,
545
+ isEveryDay: s.indexOf("MO") !== -1 && s.indexOf("TU") !== -1 && s.indexOf("WE") !== -1 && s.indexOf("TH") !== -1 && s.indexOf("FR") !== -1 && s.indexOf("SA") !== -1 && s.indexOf("SU") !== -1
546
+ };
547
+ var c = function(e, t) {
548
+ return e.weekday - t.weekday;
549
+ };
550
+ this.byweekday.allWeeks.sort(c), this.byweekday.someWeeks.sort(c), this.byweekday.allWeeks.length || (this.byweekday.allWeeks = null), this.byweekday.someWeeks.length || (this.byweekday.someWeeks = null);
551
+ } else this.byweekday = null;
552
+ }
553
+ return e.isFullyConvertible = function(t) {
554
+ var n = !0;
555
+ if (!(t.options.freq in e.IMPLEMENTED) || t.origOptions.until && t.origOptions.count) return !1;
556
+ for (var r in t.origOptions) {
557
+ if (Qe([
558
+ "dtstart",
559
+ "tzid",
560
+ "wkst",
561
+ "freq"
562
+ ], r)) return !0;
563
+ if (!Qe(e.IMPLEMENTED[t.options.freq], r)) return !1;
564
+ }
565
+ return n;
566
+ }, e.prototype.isFullyConvertible = function() {
567
+ return e.isFullyConvertible(this.rrule);
568
+ }, e.prototype.toString = function() {
569
+ var t = this.gettext;
570
+ if (!(this.options.freq in e.IMPLEMENTED)) return t("RRule error: Unable to fully convert this rrule to text");
571
+ if (this.text = [t("every")], this[$.FREQUENCIES[this.options.freq]](), this.options.until) {
572
+ this.add(t("until"));
573
+ var n = this.options.until;
574
+ this.add(this.dateFormatter(n.getUTCFullYear(), this.language.monthNames[n.getUTCMonth()], n.getUTCDate()));
575
+ } else this.options.count && this.add(t("for")).add(this.options.count.toString()).add(this.plural(this.options.count) ? t("times") : t("time"));
576
+ return this.isFullyConvertible() || this.add(t("(~ approximate)")), this.text.join("");
577
+ }, e.prototype.HOURLY = function() {
578
+ var e = this.gettext;
579
+ this.options.interval !== 1 && this.add(this.options.interval.toString()), this.add(this.plural(this.options.interval) ? e("hours") : e("hour"));
580
+ }, e.prototype.MINUTELY = function() {
581
+ var e = this.gettext;
582
+ this.options.interval !== 1 && this.add(this.options.interval.toString()), this.add(this.plural(this.options.interval) ? e("minutes") : e("minute"));
583
+ }, e.prototype.DAILY = function() {
584
+ var e = this.gettext;
585
+ this.options.interval !== 1 && this.add(this.options.interval.toString()), this.byweekday && this.byweekday.isWeekdays ? this.add(this.plural(this.options.interval) ? e("weekdays") : e("weekday")) : this.add(this.plural(this.options.interval) ? e("days") : e("day")), this.origOptions.bymonth && (this.add(e("in")), this._bymonth()), this.bymonthday ? this._bymonthday() : this.byweekday ? this._byweekday() : this.origOptions.byhour && this._byhour();
586
+ }, e.prototype.WEEKLY = function() {
587
+ var e = this.gettext;
588
+ this.options.interval !== 1 && this.add(this.options.interval.toString()).add(this.plural(this.options.interval) ? e("weeks") : e("week")), this.byweekday && this.byweekday.isWeekdays ? this.options.interval === 1 ? this.add(this.plural(this.options.interval) ? e("weekdays") : e("weekday")) : this.add(e("on")).add(e("weekdays")) : this.byweekday && this.byweekday.isEveryDay ? this.add(this.plural(this.options.interval) ? e("days") : e("day")) : (this.options.interval === 1 && this.add(e("week")), this.origOptions.bymonth && (this.add(e("in")), this._bymonth()), this.bymonthday ? this._bymonthday() : this.byweekday && this._byweekday(), this.origOptions.byhour && this._byhour());
589
+ }, e.prototype.MONTHLY = function() {
590
+ var e = this.gettext;
591
+ this.origOptions.bymonth ? (this.options.interval !== 1 && (this.add(this.options.interval.toString()).add(e("months")), this.plural(this.options.interval) && this.add(e("in"))), this._bymonth()) : (this.options.interval !== 1 && this.add(this.options.interval.toString()), this.add(this.plural(this.options.interval) ? e("months") : e("month"))), this.bymonthday ? this._bymonthday() : this.byweekday && this.byweekday.isWeekdays ? this.add(e("on")).add(e("weekdays")) : this.byweekday && this._byweekday();
592
+ }, e.prototype.YEARLY = function() {
593
+ var e = this.gettext;
594
+ this.origOptions.bymonth ? (this.options.interval !== 1 && (this.add(this.options.interval.toString()), this.add(e("years"))), this._bymonth()) : (this.options.interval !== 1 && this.add(this.options.interval.toString()), this.add(this.plural(this.options.interval) ? e("years") : e("year"))), this.bymonthday ? this._bymonthday() : this.byweekday && this._byweekday(), this.options.byyearday && this.add(e("on the")).add(this.list(this.options.byyearday, this.nth, e("and"))).add(e("day")), this.options.byweekno && this.add(e("in")).add(this.plural(this.options.byweekno.length) ? e("weeks") : e("week")).add(this.list(this.options.byweekno, void 0, e("and")));
595
+ }, e.prototype._bymonthday = function() {
596
+ var e = this.gettext;
597
+ this.byweekday && this.byweekday.allWeeks ? this.add(e("on")).add(this.list(this.byweekday.allWeeks, this.weekdaytext, e("or"))).add(e("the")).add(this.list(this.bymonthday, this.nth, e("or"))) : this.add(e("on the")).add(this.list(this.bymonthday, this.nth, e("and")));
598
+ }, e.prototype._byweekday = function() {
599
+ var e = this.gettext;
600
+ this.byweekday.allWeeks && !this.byweekday.isWeekdays && this.add(e("on")).add(this.list(this.byweekday.allWeeks, this.weekdaytext)), this.byweekday.someWeeks && (this.byweekday.allWeeks && this.add(e("and")), this.add(e("on the")).add(this.list(this.byweekday.someWeeks, this.weekdaytext, e("and"))));
601
+ }, e.prototype._byhour = function() {
602
+ var e = this.gettext;
603
+ this.add(e("at")).add(this.list(this.origOptions.byhour, void 0, e("and")));
604
+ }, e.prototype._bymonth = function() {
605
+ this.add(this.list(this.options.bymonth, this.monthtext, this.gettext("and")));
606
+ }, e.prototype.nth = function(e) {
607
+ e = parseInt(e.toString(), 10);
608
+ var t, n = this.gettext;
609
+ if (e === -1) return n("last");
610
+ var r = Math.abs(e);
611
+ switch (r) {
612
+ case 1:
613
+ case 21:
614
+ case 31:
615
+ t = r + n("st");
616
+ break;
617
+ case 2:
618
+ case 22:
619
+ t = r + n("nd");
620
+ break;
621
+ case 3:
622
+ case 23:
623
+ t = r + n("rd");
624
+ break;
625
+ default: t = r + n("th");
626
+ }
627
+ return e < 0 ? t + " " + n("last") : t;
628
+ }, e.prototype.monthtext = function(e) {
629
+ return this.language.monthNames[e - 1];
630
+ }, e.prototype.weekdaytext = function(e) {
631
+ var t = O(e) ? (e + 1) % 7 : e.getJsWeekday();
632
+ return (e.n ? this.nth(e.n) + " " : "") + this.language.dayNames[t];
633
+ }, e.prototype.plural = function(e) {
634
+ return e % 100 != 1;
635
+ }, e.prototype.add = function(e) {
636
+ return this.text.push(" "), this.text.push(e), this;
637
+ }, e.prototype.list = function(e, t, n, r) {
638
+ var i = this;
639
+ r === void 0 && (r = ","), k(e) || (e = [e]);
640
+ var a = function(e, t, n) {
641
+ for (var r = "", i = 0; i < e.length; i++) i !== 0 && (i === e.length - 1 ? r += " " + n + " " : r += t + " "), r += e[i];
642
+ return r;
643
+ };
644
+ t ||= function(e) {
645
+ return e.toString();
646
+ };
647
+ var o = function(e) {
648
+ return t && t.call(i, e);
649
+ };
650
+ return n ? a(e.map(o), r, n) : e.map(o).join(r + " ");
651
+ }, e;
652
+ }(), tt = function() {
653
+ function e(e) {
654
+ this.done = !0, this.rules = e;
655
+ }
656
+ return e.prototype.start = function(e) {
657
+ return this.text = e, this.done = !1, this.nextSymbol();
658
+ }, e.prototype.isDone = function() {
659
+ return this.done && this.symbol === null;
660
+ }, e.prototype.nextSymbol = function() {
661
+ var e, t;
662
+ this.symbol = null, this.value = null;
663
+ do {
664
+ if (this.done) return !1;
665
+ var n = void 0;
666
+ for (var r in e = null, this.rules) {
667
+ n = this.rules[r];
668
+ var i = n.exec(this.text);
669
+ i && (e === null || i[0].length > e[0].length) && (e = i, t = r);
670
+ }
671
+ if (e != null && (this.text = this.text.substr(e[0].length), this.text === "" && (this.done = !0)), e == null) {
672
+ this.done = !0, this.symbol = null, this.value = null;
673
+ return;
674
+ }
675
+ } while (t === "SKIP");
676
+ return this.symbol = t, this.value = e, !0;
677
+ }, e.prototype.accept = function(e) {
678
+ if (this.symbol === e) {
679
+ if (this.value) {
680
+ var t = this.value;
681
+ return this.nextSymbol(), t;
682
+ }
683
+ return this.nextSymbol(), !0;
684
+ }
685
+ return !1;
686
+ }, e.prototype.acceptNumber = function() {
687
+ return this.accept("number");
688
+ }, e.prototype.expect = function(e) {
689
+ if (this.accept(e)) return !0;
690
+ throw Error("expected " + e + " but found " + this.symbol);
691
+ }, e;
692
+ }();
693
+ function nt(e, t) {
694
+ t === void 0 && (t = Ze);
695
+ var n = {}, r = new tt(t.tokens);
696
+ return r.start(e) ? (i(), n) : null;
697
+ function i() {
698
+ r.expect("every");
699
+ var e = r.acceptNumber();
700
+ if (e && (n.interval = parseInt(e[0], 10)), r.isDone()) throw Error("Unexpected end");
701
+ switch (r.symbol) {
702
+ case "day(s)":
703
+ n.freq = $.DAILY, r.nextSymbol() && (o(), d());
704
+ break;
705
+ case "weekday(s)":
706
+ n.freq = $.WEEKLY, n.byweekday = [
707
+ $.MO,
708
+ $.TU,
709
+ $.WE,
710
+ $.TH,
711
+ $.FR
712
+ ], r.nextSymbol(), o(), d();
713
+ break;
714
+ case "week(s)":
715
+ n.freq = $.WEEKLY, r.nextSymbol() && (a(), o(), d());
716
+ break;
717
+ case "hour(s)":
718
+ n.freq = $.HOURLY, r.nextSymbol() && (a(), d());
719
+ break;
720
+ case "minute(s)":
721
+ n.freq = $.MINUTELY, r.nextSymbol() && (a(), d());
722
+ break;
723
+ case "month(s)":
724
+ n.freq = $.MONTHLY, r.nextSymbol() && (a(), d());
725
+ break;
726
+ case "year(s)":
727
+ n.freq = $.YEARLY, r.nextSymbol() && (a(), d());
728
+ break;
729
+ case "monday":
730
+ case "tuesday":
731
+ case "wednesday":
732
+ case "thursday":
733
+ case "friday":
734
+ case "saturday":
735
+ case "sunday":
736
+ if (n.freq = $.WEEKLY, n.byweekday = [$[r.symbol.substr(0, 2).toUpperCase()]], !r.nextSymbol()) return;
737
+ for (; r.accept("comma");) {
738
+ if (r.isDone()) throw Error("Unexpected end");
739
+ var t = c();
740
+ if (!t) throw Error("Unexpected symbol " + r.symbol + ", expected weekday");
741
+ n.byweekday.push($[t]), r.nextSymbol();
742
+ }
743
+ o(), u(), d();
744
+ break;
745
+ case "january":
746
+ case "february":
747
+ case "march":
748
+ case "april":
749
+ case "may":
750
+ case "june":
751
+ case "july":
752
+ case "august":
753
+ case "september":
754
+ case "october":
755
+ case "november":
756
+ case "december":
757
+ if (n.freq = $.YEARLY, n.bymonth = [s()], !r.nextSymbol()) return;
758
+ for (; r.accept("comma");) {
759
+ if (r.isDone()) throw Error("Unexpected end");
760
+ var i = s();
761
+ if (!i) throw Error("Unexpected symbol " + r.symbol + ", expected month");
762
+ n.bymonth.push(i), r.nextSymbol();
763
+ }
764
+ a(), d();
765
+ break;
766
+ default: throw Error("Unknown symbol");
767
+ }
768
+ }
769
+ function a() {
770
+ var e = r.accept("on"), t = r.accept("the");
771
+ if (e || t) do {
772
+ var i = l(), a = c(), o = s();
773
+ if (i) a ? (r.nextSymbol(), n.byweekday ||= [], n.byweekday.push($[a].nth(i))) : (n.bymonthday ||= [], n.bymonthday.push(i), r.accept("day(s)"));
774
+ else if (a) r.nextSymbol(), n.byweekday ||= [], n.byweekday.push($[a]);
775
+ else if (r.symbol === "weekday(s)") r.nextSymbol(), n.byweekday ||= [
776
+ $.MO,
777
+ $.TU,
778
+ $.WE,
779
+ $.TH,
780
+ $.FR
781
+ ];
782
+ else if (r.symbol === "week(s)") {
783
+ r.nextSymbol();
784
+ var u = r.acceptNumber();
785
+ if (!u) throw Error("Unexpected symbol " + r.symbol + ", expected week number");
786
+ for (n.byweekno = [parseInt(u[0], 10)]; r.accept("comma");) {
787
+ if (u = r.acceptNumber(), !u) throw Error("Unexpected symbol " + r.symbol + "; expected monthday");
788
+ n.byweekno.push(parseInt(u[0], 10));
789
+ }
790
+ } else if (o) r.nextSymbol(), n.bymonth ||= [], n.bymonth.push(o);
791
+ else return;
792
+ } while (r.accept("comma") || r.accept("the") || r.accept("on"));
793
+ }
794
+ function o() {
795
+ if (r.accept("at")) do {
796
+ var e = r.acceptNumber();
797
+ if (!e) throw Error("Unexpected symbol " + r.symbol + ", expected hour");
798
+ for (n.byhour = [parseInt(e[0], 10)]; r.accept("comma");) {
799
+ if (e = r.acceptNumber(), !e) throw Error("Unexpected symbol " + r.symbol + "; expected hour");
800
+ n.byhour.push(parseInt(e[0], 10));
801
+ }
802
+ } while (r.accept("comma") || r.accept("at"));
803
+ }
804
+ function s() {
805
+ switch (r.symbol) {
806
+ case "january": return 1;
807
+ case "february": return 2;
808
+ case "march": return 3;
809
+ case "april": return 4;
810
+ case "may": return 5;
811
+ case "june": return 6;
812
+ case "july": return 7;
813
+ case "august": return 8;
814
+ case "september": return 9;
815
+ case "october": return 10;
816
+ case "november": return 11;
817
+ case "december": return 12;
818
+ default: return !1;
819
+ }
820
+ }
821
+ function c() {
822
+ switch (r.symbol) {
823
+ case "monday":
824
+ case "tuesday":
825
+ case "wednesday":
826
+ case "thursday":
827
+ case "friday":
828
+ case "saturday":
829
+ case "sunday": return r.symbol.substr(0, 2).toUpperCase();
830
+ default: return !1;
831
+ }
832
+ }
833
+ function l() {
834
+ switch (r.symbol) {
835
+ case "last": return r.nextSymbol(), -1;
836
+ case "first": return r.nextSymbol(), 1;
837
+ case "second": return r.nextSymbol(), r.accept("last") ? -2 : 2;
838
+ case "third": return r.nextSymbol(), r.accept("last") ? -3 : 3;
839
+ case "nth":
840
+ var e = parseInt(r.value[1], 10);
841
+ if (e < -366 || e > 366) throw Error("Nth out of range: " + e);
842
+ return r.nextSymbol(), r.accept("last") ? -e : e;
843
+ default: return !1;
844
+ }
845
+ }
846
+ function u() {
847
+ r.accept("on"), r.accept("the");
848
+ var e = l();
849
+ if (e) for (n.bymonthday = [e], r.nextSymbol(); r.accept("comma");) {
850
+ if (e = l(), !e) throw Error("Unexpected symbol " + r.symbol + "; expected monthday");
851
+ n.bymonthday.push(e), r.nextSymbol();
852
+ }
853
+ }
854
+ function d() {
855
+ if (r.symbol === "until") {
856
+ var e = Date.parse(r.text);
857
+ if (!e) throw Error("Cannot parse until date:" + r.text);
858
+ n.until = new Date(e);
859
+ } else r.accept("for") && (n.count = parseInt(r.value[0], 10), r.expect("number"));
860
+ }
861
+ }
862
+ //#endregion
863
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/types.js
864
+ var G;
865
+ (function(e) {
866
+ e[e.YEARLY = 0] = "YEARLY", e[e.MONTHLY = 1] = "MONTHLY", e[e.WEEKLY = 2] = "WEEKLY", e[e.DAILY = 3] = "DAILY", e[e.HOURLY = 4] = "HOURLY", e[e.MINUTELY = 5] = "MINUTELY", e[e.SECONDLY = 6] = "SECONDLY";
867
+ })(G ||= {});
868
+ function rt(e) {
869
+ return e < G.HOURLY;
870
+ }
871
+ //#endregion
872
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/nlp/index.js
873
+ var it = function(e, t) {
874
+ return t === void 0 && (t = Ze), new $(nt(e, t) || void 0);
875
+ }, K = [
876
+ "count",
877
+ "until",
878
+ "interval",
879
+ "byweekday",
880
+ "bymonthday",
881
+ "bymonth"
882
+ ];
883
+ W.IMPLEMENTED = [], W.IMPLEMENTED[G.HOURLY] = K, W.IMPLEMENTED[G.MINUTELY] = K, W.IMPLEMENTED[G.DAILY] = ["byhour"].concat(K), W.IMPLEMENTED[G.WEEKLY] = K, W.IMPLEMENTED[G.MONTHLY] = K, W.IMPLEMENTED[G.YEARLY] = ["byweekno", "byyearday"].concat(K);
884
+ var at = function(e, t, n, r) {
885
+ return new W(e, t, n, r).toString();
886
+ }, ot = W.isFullyConvertible, st = function() {
887
+ function e(e, t, n, r) {
888
+ this.hour = e, this.minute = t, this.second = n, this.millisecond = r || 0;
889
+ }
890
+ return e.prototype.getHours = function() {
891
+ return this.hour;
892
+ }, e.prototype.getMinutes = function() {
893
+ return this.minute;
894
+ }, e.prototype.getSeconds = function() {
895
+ return this.second;
896
+ }, e.prototype.getMilliseconds = function() {
897
+ return this.millisecond;
898
+ }, e.prototype.getTime = function() {
899
+ return (this.hour * 60 * 60 + this.minute * 60 + this.second) * 1e3 + this.millisecond;
900
+ }, e;
901
+ }(), ct = function(e) {
902
+ Ye(t, e);
903
+ function t(t, n, r, i, a, o, s) {
904
+ var c = e.call(this, i, a, o, s) || this;
905
+ return c.year = t, c.month = n, c.day = r, c;
906
+ }
907
+ return t.fromDate = function(e) {
908
+ return new this(e.getUTCFullYear(), e.getUTCMonth() + 1, e.getUTCDate(), e.getUTCHours(), e.getUTCMinutes(), e.getUTCSeconds(), e.valueOf() % 1e3);
909
+ }, t.prototype.getWeekday = function() {
910
+ return z(new Date(this.getTime()));
911
+ }, t.prototype.getTime = function() {
912
+ return new Date(Date.UTC(this.year, this.month - 1, this.day, this.hour, this.minute, this.second, this.millisecond)).getTime();
913
+ }, t.prototype.getDay = function() {
914
+ return this.day;
915
+ }, t.prototype.getMonth = function() {
916
+ return this.month;
917
+ }, t.prototype.getYear = function() {
918
+ return this.year;
919
+ }, t.prototype.addYears = function(e) {
920
+ this.year += e;
921
+ }, t.prototype.addMonths = function(e) {
922
+ if (this.month += e, this.month > 12) {
923
+ var t = Math.floor(this.month / 12), n = N(this.month, 12);
924
+ this.month = n, this.year += t, this.month === 0 && (this.month = 12, --this.year);
925
+ }
926
+ }, t.prototype.addWeekly = function(e, t) {
927
+ t > this.getWeekday() ? this.day += -(this.getWeekday() + 1 + (6 - t)) + e * 7 : this.day += -(this.getWeekday() - t) + e * 7, this.fixDay();
928
+ }, t.prototype.addDaily = function(e) {
929
+ this.day += e, this.fixDay();
930
+ }, t.prototype.addHours = function(e, t, n) {
931
+ for (t && (this.hour += Math.floor((23 - this.hour) / e) * e);;) {
932
+ this.hour += e;
933
+ var r = ke(this.hour, 24), i = r.div, a = r.mod;
934
+ if (i && (this.hour = a, this.addDaily(i)), P(n) || I(n, this.hour)) break;
935
+ }
936
+ }, t.prototype.addMinutes = function(e, t, n, r) {
937
+ for (t && (this.minute += Math.floor((1439 - (this.hour * 60 + this.minute)) / e) * e);;) {
938
+ this.minute += e;
939
+ var i = ke(this.minute, 60), a = i.div, o = i.mod;
940
+ if (a && (this.minute = o, this.addHours(a, !1, n)), (P(n) || I(n, this.hour)) && (P(r) || I(r, this.minute))) break;
941
+ }
942
+ }, t.prototype.addSeconds = function(e, t, n, r, i) {
943
+ for (t && (this.second += Math.floor((86399 - (this.hour * 3600 + this.minute * 60 + this.second)) / e) * e);;) {
944
+ this.second += e;
945
+ var a = ke(this.second, 60), o = a.div, s = a.mod;
946
+ if (o && (this.second = s, this.addMinutes(o, !1, n, r)), (P(n) || I(n, this.hour)) && (P(r) || I(r, this.minute)) && (P(i) || I(i, this.second))) break;
947
+ }
948
+ }, t.prototype.fixDay = function() {
949
+ if (!(this.day <= 28)) {
950
+ var e = Be(this.year, this.month - 1)[1];
951
+ if (!(this.day <= e)) for (; this.day > e;) {
952
+ if (this.day -= e, ++this.month, this.month === 13 && (this.month = 1, ++this.year, this.year > 9999)) return;
953
+ e = Be(this.year, this.month - 1)[1];
954
+ }
955
+ }
956
+ }, t.prototype.add = function(e, t) {
957
+ var n = e.freq, r = e.interval, i = e.wkst, a = e.byhour, o = e.byminute, s = e.bysecond;
958
+ switch (n) {
959
+ case G.YEARLY: return this.addYears(r);
960
+ case G.MONTHLY: return this.addMonths(r);
961
+ case G.WEEKLY: return this.addWeekly(r, i);
962
+ case G.DAILY: return this.addDaily(r);
963
+ case G.HOURLY: return this.addHours(r, t, a);
964
+ case G.MINUTELY: return this.addMinutes(r, t, a, o);
965
+ case G.SECONDLY: return this.addSeconds(r, t, a, o, s);
966
+ }
967
+ }, t;
968
+ }(st);
969
+ //#endregion
970
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/parseoptions.js
971
+ function lt(e) {
972
+ for (var t = [], n = Object.keys(e), r = 0, i = n; r < i.length; r++) {
973
+ var a = i[r];
974
+ I(Yt, a) || t.push(a), Fe(e[a]) && !R(e[a]) && t.push(a);
975
+ }
976
+ if (t.length) throw Error("Invalid options: " + t.join(", "));
977
+ return H({}, e);
978
+ }
979
+ function ut(e) {
980
+ var t = H(H({}, Jt), lt(e));
981
+ if (D(t.byeaster) && (t.freq = $.YEARLY), !(D(t.freq) && $.FREQUENCIES[t.freq])) throw Error(`Invalid frequency: ${t.freq} ${e.freq}`);
982
+ if (t.dtstart ||= new Date((/* @__PURE__ */ new Date()).setMilliseconds(0)), D(t.wkst) ? O(t.wkst) || (t.wkst = t.wkst.weekday) : t.wkst = $.MO.weekday, D(t.bysetpos)) {
983
+ O(t.bysetpos) && (t.bysetpos = [t.bysetpos]);
984
+ for (var n = 0; n < t.bysetpos.length; n++) {
985
+ var r = t.bysetpos[n];
986
+ if (r === 0 || !(r >= -366 && r <= 366)) throw Error("bysetpos must be between 1 and 366, or between -366 and -1");
987
+ }
988
+ }
989
+ if (!(t.byweekno || F(t.byweekno) || F(t.byyearday) || t.bymonthday || F(t.bymonthday) || D(t.byweekday) || D(t.byeaster))) switch (t.freq) {
990
+ case $.YEARLY:
991
+ t.bymonth ||= t.dtstart.getUTCMonth() + 1, t.bymonthday = t.dtstart.getUTCDate();
992
+ break;
993
+ case $.MONTHLY:
994
+ t.bymonthday = t.dtstart.getUTCDate();
995
+ break;
996
+ case $.WEEKLY: t.byweekday = [z(t.dtstart)];
997
+ }
998
+ if (D(t.bymonth) && !k(t.bymonth) && (t.bymonth = [t.bymonth]), D(t.byyearday) && !k(t.byyearday) && O(t.byyearday) && (t.byyearday = [t.byyearday]), !D(t.bymonthday)) t.bymonthday = [], t.bynmonthday = [];
999
+ else if (k(t.bymonthday)) {
1000
+ for (var i = [], a = [], n = 0; n < t.bymonthday.length; n++) {
1001
+ var r = t.bymonthday[n];
1002
+ r > 0 ? i.push(r) : r < 0 && a.push(r);
1003
+ }
1004
+ t.bymonthday = i, t.bynmonthday = a;
1005
+ } else t.bymonthday < 0 ? (t.bynmonthday = [t.bymonthday], t.bymonthday = []) : (t.bynmonthday = [], t.bymonthday = [t.bymonthday]);
1006
+ if (D(t.byweekno) && !k(t.byweekno) && (t.byweekno = [t.byweekno]), !D(t.byweekday)) t.bynweekday = null;
1007
+ else if (O(t.byweekday)) t.byweekday = [t.byweekday], t.bynweekday = null;
1008
+ else if (Ee(t.byweekday)) t.byweekday = [E.fromStr(t.byweekday).weekday], t.bynweekday = null;
1009
+ else if (t.byweekday instanceof E) !t.byweekday.n || t.freq > $.MONTHLY ? (t.byweekday = [t.byweekday.weekday], t.bynweekday = null) : (t.bynweekday = [[t.byweekday.weekday, t.byweekday.n]], t.byweekday = null);
1010
+ else {
1011
+ for (var o = [], s = [], n = 0; n < t.byweekday.length; n++) {
1012
+ var c = t.byweekday[n];
1013
+ if (O(c)) {
1014
+ o.push(c);
1015
+ continue;
1016
+ }
1017
+ if (Ee(c)) {
1018
+ o.push(E.fromStr(c).weekday);
1019
+ continue;
1020
+ }
1021
+ !c.n || t.freq > $.MONTHLY ? o.push(c.weekday) : s.push([c.weekday, c.n]);
1022
+ }
1023
+ t.byweekday = F(o) ? o : null, t.bynweekday = F(s) ? s : null;
1024
+ }
1025
+ return D(t.byhour) ? O(t.byhour) && (t.byhour = [t.byhour]) : t.byhour = t.freq < $.HOURLY ? [t.dtstart.getUTCHours()] : null, D(t.byminute) ? O(t.byminute) && (t.byminute = [t.byminute]) : t.byminute = t.freq < $.MINUTELY ? [t.dtstart.getUTCMinutes()] : null, D(t.bysecond) ? O(t.bysecond) && (t.bysecond = [t.bysecond]) : t.bysecond = t.freq < $.SECONDLY ? [t.dtstart.getUTCSeconds()] : null, { parsedOptions: t };
1026
+ }
1027
+ function dt(e) {
1028
+ var t = e.dtstart.getTime() % 1e3;
1029
+ if (!rt(e.freq)) return [];
1030
+ var n = [];
1031
+ return e.byhour.forEach(function(r) {
1032
+ e.byminute.forEach(function(i) {
1033
+ e.bysecond.forEach(function(e) {
1034
+ n.push(new st(r, i, e, t));
1035
+ });
1036
+ });
1037
+ }), n;
1038
+ }
1039
+ //#endregion
1040
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/parsestring.js
1041
+ function ft(e) {
1042
+ var t = e.split("\n").map(mt).filter(function(e) {
1043
+ return e !== null;
1044
+ });
1045
+ return H(H({}, t[0]), t[1]);
1046
+ }
1047
+ function pt(e) {
1048
+ var t = {}, n = /DTSTART(?:;TZID=([^:=]+?))?(?::|=)([^;\s]+)/i.exec(e);
1049
+ if (!n) return t;
1050
+ var r = n[1], i = n[2];
1051
+ return r && (t.tzid = r), t.dtstart = Ge(i), t;
1052
+ }
1053
+ function mt(e) {
1054
+ if (e = e.replace(/^\s+|\s+$/, ""), !e.length) return null;
1055
+ var t = /^([A-Z]+?)[:;]/.exec(e.toUpperCase());
1056
+ if (!t) return ht(e);
1057
+ var n = t[1];
1058
+ switch (n.toUpperCase()) {
1059
+ case "RRULE":
1060
+ case "EXRULE": return ht(e);
1061
+ case "DTSTART": return pt(e);
1062
+ default: throw Error(`Unsupported RFC prop ${n} in ${e}`);
1063
+ }
1064
+ }
1065
+ function ht(e) {
1066
+ var t = pt(e.replace(/^RRULE:/i, ""));
1067
+ return e.replace(/^(?:RRULE|EXRULE):/i, "").split(";").forEach(function(n) {
1068
+ var r = n.split("="), i = r[0], a = r[1];
1069
+ switch (i.toUpperCase()) {
1070
+ case "FREQ":
1071
+ t.freq = G[a.toUpperCase()];
1072
+ break;
1073
+ case "WKST":
1074
+ t.wkst = Q[a.toUpperCase()];
1075
+ break;
1076
+ case "COUNT":
1077
+ case "INTERVAL":
1078
+ case "BYSETPOS":
1079
+ case "BYMONTH":
1080
+ case "BYMONTHDAY":
1081
+ case "BYYEARDAY":
1082
+ case "BYWEEKNO":
1083
+ case "BYHOUR":
1084
+ case "BYMINUTE":
1085
+ case "BYSECOND":
1086
+ var o = gt(a), s = i.toLowerCase();
1087
+ t[s] = o;
1088
+ break;
1089
+ case "BYWEEKDAY":
1090
+ case "BYDAY":
1091
+ t.byweekday = vt(a);
1092
+ break;
1093
+ case "DTSTART":
1094
+ case "TZID":
1095
+ var c = pt(e);
1096
+ t.tzid = c.tzid, t.dtstart = c.dtstart;
1097
+ break;
1098
+ case "UNTIL":
1099
+ t.until = Ge(a);
1100
+ break;
1101
+ case "BYEASTER":
1102
+ t.byeaster = Number(a);
1103
+ break;
1104
+ default: throw Error("Unknown RRULE property '" + i + "'");
1105
+ }
1106
+ }), t;
1107
+ }
1108
+ function gt(e) {
1109
+ return e.indexOf(",") === -1 ? _t(e) : e.split(",").map(_t);
1110
+ }
1111
+ function _t(e) {
1112
+ return /^[+-]?\d+$/.test(e) ? Number(e) : e;
1113
+ }
1114
+ function vt(e) {
1115
+ return e.split(",").map(function(e) {
1116
+ if (e.length === 2) return Q[e];
1117
+ var t = e.match(/^([+-]?\d{1,2})([A-Z]{2})$/);
1118
+ if (!t || t.length < 3) throw SyntaxError(`Invalid weekday string: ${e}`);
1119
+ var n = Number(t[1]), r = Q[t[2]].weekday;
1120
+ return new E(r, n);
1121
+ });
1122
+ }
1123
+ //#endregion
1124
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/datewithzone.js
1125
+ var yt = function() {
1126
+ function e(e, t) {
1127
+ if (isNaN(e.getTime())) throw RangeError("Invalid date passed to DateWithZone");
1128
+ this.date = e, this.tzid = t;
1129
+ }
1130
+ return Object.defineProperty(e.prototype, "isUTC", {
1131
+ get: function() {
1132
+ return !this.tzid || this.tzid.toUpperCase() === "UTC";
1133
+ },
1134
+ enumerable: !1,
1135
+ configurable: !0
1136
+ }), e.prototype.toString = function() {
1137
+ var e = We(this.date.getTime(), this.isUTC);
1138
+ return this.isUTC ? `:${e}` : `;TZID=${this.tzid}:${e}`;
1139
+ }, e.prototype.getTime = function() {
1140
+ return this.date.getTime();
1141
+ }, e.prototype.rezonedDate = function() {
1142
+ return this.isUTC ? this.date : qe(this.date, this.tzid);
1143
+ }, e;
1144
+ }();
1145
+ //#endregion
1146
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/optionstostring.js
1147
+ function bt(e) {
1148
+ for (var t = [], n = "", r = Object.keys(e), i = Object.keys(Jt), a = 0; a < r.length; a++) if (r[a] !== "tzid" && I(i, r[a])) {
1149
+ var o = r[a].toUpperCase(), s = e[r[a]], c = "";
1150
+ if (!(!D(s) || k(s) && !s.length)) {
1151
+ switch (o) {
1152
+ case "FREQ":
1153
+ c = $.FREQUENCIES[e.freq];
1154
+ break;
1155
+ case "WKST":
1156
+ c = O(s) ? new E(s).toString() : s.toString();
1157
+ break;
1158
+ case "BYWEEKDAY":
1159
+ o = "BYDAY", c = De(s).map(function(e) {
1160
+ return e instanceof E ? e : k(e) ? new E(e[0], e[1]) : new E(e);
1161
+ }).toString();
1162
+ break;
1163
+ case "DTSTART":
1164
+ n = xt(s, e.tzid);
1165
+ break;
1166
+ case "UNTIL":
1167
+ c = We(s, !e.tzid);
1168
+ break;
1169
+ default: if (k(s)) {
1170
+ for (var l = [], u = 0; u < s.length; u++) l[u] = String(s[u]);
1171
+ c = l.toString();
1172
+ } else c = String(s);
1173
+ }
1174
+ c && t.push([o, c]);
1175
+ }
1176
+ }
1177
+ var d = t.map(function(e) {
1178
+ return `${e[0]}=${e[1].toString()}`;
1179
+ }).join(";"), f = "";
1180
+ return d !== "" && (f = `RRULE:${d}`), [n, f].filter(function(e) {
1181
+ return !!e;
1182
+ }).join("\n");
1183
+ }
1184
+ function xt(e, t) {
1185
+ return e ? "DTSTART" + new yt(new Date(e), t).toString() : "";
1186
+ }
1187
+ //#endregion
1188
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/cache.js
1189
+ function St(e, t) {
1190
+ return Array.isArray(e) ? !Array.isArray(t) || e.length !== t.length ? !1 : e.every(function(e, n) {
1191
+ return e.getTime() === t[n].getTime();
1192
+ }) : e instanceof Date ? t instanceof Date && e.getTime() === t.getTime() : e === t;
1193
+ }
1194
+ var Ct = function() {
1195
+ function e() {
1196
+ this.all = !1, this.before = [], this.after = [], this.between = [];
1197
+ }
1198
+ return e.prototype._cacheAdd = function(e, t, n) {
1199
+ t &&= t instanceof Date ? He(t) : Ue(t), e === "all" ? this.all = t : (n._value = t, this[e].push(n));
1200
+ }, e.prototype._cacheGet = function(e, t) {
1201
+ var n = !1, r = t ? Object.keys(t) : [], i = function(e) {
1202
+ for (var n = 0; n < r.length; n++) {
1203
+ var i = r[n];
1204
+ if (!St(t[i], e[i])) return !0;
1205
+ }
1206
+ return !1;
1207
+ }, a = this[e];
1208
+ if (e === "all") n = this.all;
1209
+ else if (k(a)) for (var o = 0; o < a.length; o++) {
1210
+ var s = a[o];
1211
+ if (!(r.length && i(s))) {
1212
+ n = s._value;
1213
+ break;
1214
+ }
1215
+ }
1216
+ if (!n && this.all) {
1217
+ for (var c = new V(e, t), o = 0; o < this.all.length && c.accept(this.all[o]); o++);
1218
+ n = c.getValue(), this._cacheAdd(e, n, t);
1219
+ }
1220
+ return k(n) ? Ue(n) : n instanceof Date ? He(n) : n;
1221
+ }, e;
1222
+ }(), wt = U(U(U(U(U(U(U(U(U(U(U(U(U([], j(1, 31), !0), j(2, 28), !0), j(3, 31), !0), j(4, 30), !0), j(5, 31), !0), j(6, 30), !0), j(7, 31), !0), j(8, 31), !0), j(9, 30), !0), j(10, 31), !0), j(11, 30), !0), j(12, 31), !0), j(1, 7), !0), Tt = U(U(U(U(U(U(U(U(U(U(U(U(U([], j(1, 31), !0), j(2, 29), !0), j(3, 31), !0), j(4, 30), !0), j(5, 31), !0), j(6, 30), !0), j(7, 31), !0), j(8, 31), !0), j(9, 30), !0), j(10, 31), !0), j(11, 30), !0), j(12, 31), !0), j(1, 7), !0), Et = A(1, 29), Dt = A(1, 30), q = A(1, 31), J = A(1, 32), Ot = U(U(U(U(U(U(U(U(U(U(U(U(U([], J, !0), Dt, !0), J, !0), q, !0), J, !0), q, !0), J, !0), J, !0), q, !0), J, !0), q, !0), J, !0), J.slice(0, 7), !0), kt = U(U(U(U(U(U(U(U(U(U(U(U(U([], J, !0), Et, !0), J, !0), q, !0), J, !0), q, !0), J, !0), J, !0), q, !0), J, !0), q, !0), J, !0), J.slice(0, 7), !0), At = A(-28, 0), jt = A(-29, 0), Y = A(-30, 0), X = A(-31, 0), Mt = U(U(U(U(U(U(U(U(U(U(U(U(U([], X, !0), jt, !0), X, !0), Y, !0), X, !0), Y, !0), X, !0), X, !0), Y, !0), X, !0), Y, !0), X, !0), X.slice(0, 7), !0), Nt = U(U(U(U(U(U(U(U(U(U(U(U(U([], X, !0), At, !0), X, !0), Y, !0), X, !0), Y, !0), X, !0), X, !0), Y, !0), X, !0), Y, !0), X, !0), X.slice(0, 7), !0), Pt = [
1223
+ 0,
1224
+ 31,
1225
+ 60,
1226
+ 91,
1227
+ 121,
1228
+ 152,
1229
+ 182,
1230
+ 213,
1231
+ 244,
1232
+ 274,
1233
+ 305,
1234
+ 335,
1235
+ 366
1236
+ ], Ft = [
1237
+ 0,
1238
+ 31,
1239
+ 59,
1240
+ 90,
1241
+ 120,
1242
+ 151,
1243
+ 181,
1244
+ 212,
1245
+ 243,
1246
+ 273,
1247
+ 304,
1248
+ 334,
1249
+ 365
1250
+ ], It = (function() {
1251
+ for (var e = [], t = 0; t < 55; t++) e = e.concat(A(7));
1252
+ return e;
1253
+ })();
1254
+ //#endregion
1255
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iterinfo/yearinfo.js
1256
+ function Lt(e, t) {
1257
+ var n = L(e, 1, 1), r = Pe(e) ? 366 : 365, i = Pe(e + 1) ? 366 : 365, a = Le(n), o = z(n), s = H(H({
1258
+ yearlen: r,
1259
+ nextyearlen: i,
1260
+ yearordinal: a,
1261
+ yearweekday: o
1262
+ }, Rt(e)), { wnomask: null });
1263
+ if (P(t.byweekno)) return s;
1264
+ s.wnomask = j(0, r + 7);
1265
+ var c, l, u = c = N(7 - o + t.wkst, 7);
1266
+ u >= 4 ? (u = 0, l = s.yearlen + N(o - t.wkst, 7)) : l = r - u;
1267
+ for (var d = Math.floor(l / 7), f = N(l, 7), p = Math.floor(d + f / 4), m = 0; m < t.byweekno.length; m++) {
1268
+ var h = t.byweekno[m];
1269
+ if (h < 0 && (h += p + 1), h > 0 && h <= p) {
1270
+ var g = void 0;
1271
+ h > 1 ? (g = u + (h - 1) * 7, u !== c && (g -= 7 - c)) : g = u;
1272
+ for (var _ = 0; _ < 7 && (s.wnomask[g] = 1, g++, s.wdaymask[g] !== t.wkst); _++);
1273
+ }
1274
+ }
1275
+ if (I(t.byweekno, 1)) {
1276
+ var g = u + p * 7;
1277
+ if (u !== c && (g -= 7 - c), g < r) for (var m = 0; m < 7 && (s.wnomask[g] = 1, g += 1, s.wdaymask[g] !== t.wkst); m++);
1278
+ }
1279
+ if (u) {
1280
+ var v = void 0;
1281
+ if (I(t.byweekno, -1)) v = -1;
1282
+ else {
1283
+ var y = z(L(e - 1, 1, 1)), b = N(7 - y.valueOf() + t.wkst, 7), ee = Pe(e - 1) ? 366 : 365, x = void 0;
1284
+ b >= 4 ? (b = 0, x = ee + N(y - t.wkst, 7)) : x = r - u, v = Math.floor(52 + N(x, 7) / 4);
1285
+ }
1286
+ if (I(t.byweekno, v)) for (var g = 0; g < u; g++) s.wnomask[g] = 1;
1287
+ }
1288
+ return s;
1289
+ }
1290
+ function Rt(e) {
1291
+ var t = Pe(e) ? 366 : 365, n = z(L(e, 1, 1));
1292
+ return t === 365 ? {
1293
+ mmask: wt,
1294
+ mdaymask: kt,
1295
+ nmdaymask: Nt,
1296
+ wdaymask: It.slice(n),
1297
+ mrange: Ft
1298
+ } : {
1299
+ mmask: Tt,
1300
+ mdaymask: Ot,
1301
+ nmdaymask: Mt,
1302
+ wdaymask: It.slice(n),
1303
+ mrange: Pt
1304
+ };
1305
+ }
1306
+ //#endregion
1307
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iterinfo/monthinfo.js
1308
+ function zt(e, t, n, r, i, a) {
1309
+ var o = {
1310
+ lastyear: e,
1311
+ lastmonth: t,
1312
+ nwdaymask: []
1313
+ }, s = [];
1314
+ if (a.freq === $.YEARLY) {
1315
+ if (P(a.bymonth)) s = [[0, n]];
1316
+ else for (var c = 0; c < a.bymonth.length; c++) t = a.bymonth[c], s.push(r.slice(t - 1, t + 1));
1317
+ } else a.freq === $.MONTHLY && (s = [r.slice(t - 1, t + 1)]);
1318
+ if (P(s)) return o;
1319
+ o.nwdaymask = j(0, n);
1320
+ for (var c = 0; c < s.length; c++) for (var l = s[c], u = l[0], d = l[1] - 1, f = 0; f < a.bynweekday.length; f++) {
1321
+ var p = void 0, m = a.bynweekday[f], h = m[0], g = m[1];
1322
+ g < 0 ? (p = d + (g + 1) * 7, p -= N(i[p] - h, 7)) : (p = u + (g - 1) * 7, p += N(7 - i[p] + h, 7)), u <= p && p <= d && (o.nwdaymask[p] = 1);
1323
+ }
1324
+ return o;
1325
+ }
1326
+ //#endregion
1327
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iterinfo/easter.js
1328
+ function Bt(e, t) {
1329
+ t === void 0 && (t = 0);
1330
+ var n = e % 19, r = Math.floor(e / 100), i = e % 100, a = Math.floor(r / 4), o = r % 4, s = Math.floor((r + 8) / 25), c = Math.floor((r - s + 1) / 3), l = Math.floor(19 * n + r - a - c + 15) % 30, u = Math.floor(i / 4), d = i % 4, f = Math.floor(32 + 2 * o + 2 * u - l - d) % 7, p = Math.floor((n + 11 * l + 22 * f) / 451), m = Math.floor((l + f - 7 * p + 114) / 31), h = (l + f - 7 * p + 114) % 31 + 1, g = Date.UTC(e, m - 1, h + t);
1331
+ return [Math.ceil((g - Date.UTC(e, 0, 1)) / 864e5)];
1332
+ }
1333
+ //#endregion
1334
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iterinfo/index.js
1335
+ var Vt = function() {
1336
+ function e(e) {
1337
+ this.options = e;
1338
+ }
1339
+ return e.prototype.rebuild = function(e, t) {
1340
+ var n = this.options;
1341
+ if (e !== this.lastyear && (this.yearinfo = Lt(e, n)), F(n.bynweekday) && (t !== this.lastmonth || e !== this.lastyear)) {
1342
+ var r = this.yearinfo, i = r.yearlen, a = r.mrange, o = r.wdaymask;
1343
+ this.monthinfo = zt(e, t, i, a, o, n);
1344
+ }
1345
+ D(n.byeaster) && (this.eastermask = Bt(e, n.byeaster));
1346
+ }, Object.defineProperty(e.prototype, "lastyear", {
1347
+ get: function() {
1348
+ return this.monthinfo ? this.monthinfo.lastyear : null;
1349
+ },
1350
+ enumerable: !1,
1351
+ configurable: !0
1352
+ }), Object.defineProperty(e.prototype, "lastmonth", {
1353
+ get: function() {
1354
+ return this.monthinfo ? this.monthinfo.lastmonth : null;
1355
+ },
1356
+ enumerable: !1,
1357
+ configurable: !0
1358
+ }), Object.defineProperty(e.prototype, "yearlen", {
1359
+ get: function() {
1360
+ return this.yearinfo.yearlen;
1361
+ },
1362
+ enumerable: !1,
1363
+ configurable: !0
1364
+ }), Object.defineProperty(e.prototype, "yearordinal", {
1365
+ get: function() {
1366
+ return this.yearinfo.yearordinal;
1367
+ },
1368
+ enumerable: !1,
1369
+ configurable: !0
1370
+ }), Object.defineProperty(e.prototype, "mrange", {
1371
+ get: function() {
1372
+ return this.yearinfo.mrange;
1373
+ },
1374
+ enumerable: !1,
1375
+ configurable: !0
1376
+ }), Object.defineProperty(e.prototype, "wdaymask", {
1377
+ get: function() {
1378
+ return this.yearinfo.wdaymask;
1379
+ },
1380
+ enumerable: !1,
1381
+ configurable: !0
1382
+ }), Object.defineProperty(e.prototype, "mmask", {
1383
+ get: function() {
1384
+ return this.yearinfo.mmask;
1385
+ },
1386
+ enumerable: !1,
1387
+ configurable: !0
1388
+ }), Object.defineProperty(e.prototype, "wnomask", {
1389
+ get: function() {
1390
+ return this.yearinfo.wnomask;
1391
+ },
1392
+ enumerable: !1,
1393
+ configurable: !0
1394
+ }), Object.defineProperty(e.prototype, "nwdaymask", {
1395
+ get: function() {
1396
+ return this.monthinfo ? this.monthinfo.nwdaymask : [];
1397
+ },
1398
+ enumerable: !1,
1399
+ configurable: !0
1400
+ }), Object.defineProperty(e.prototype, "nextyearlen", {
1401
+ get: function() {
1402
+ return this.yearinfo.nextyearlen;
1403
+ },
1404
+ enumerable: !1,
1405
+ configurable: !0
1406
+ }), Object.defineProperty(e.prototype, "mdaymask", {
1407
+ get: function() {
1408
+ return this.yearinfo.mdaymask;
1409
+ },
1410
+ enumerable: !1,
1411
+ configurable: !0
1412
+ }), Object.defineProperty(e.prototype, "nmdaymask", {
1413
+ get: function() {
1414
+ return this.yearinfo.nmdaymask;
1415
+ },
1416
+ enumerable: !1,
1417
+ configurable: !0
1418
+ }), e.prototype.ydayset = function() {
1419
+ return [
1420
+ A(this.yearlen),
1421
+ 0,
1422
+ this.yearlen
1423
+ ];
1424
+ }, e.prototype.mdayset = function(e, t) {
1425
+ for (var n = this.mrange[t - 1], r = this.mrange[t], i = j(null, this.yearlen), a = n; a < r; a++) i[a] = a;
1426
+ return [
1427
+ i,
1428
+ n,
1429
+ r
1430
+ ];
1431
+ }, e.prototype.wdayset = function(e, t, n) {
1432
+ for (var r = j(null, this.yearlen + 7), i = Le(L(e, t, n)) - this.yearordinal, a = i, o = 0; o < 7 && (r[i] = i, ++i, this.wdaymask[i] !== this.options.wkst); o++);
1433
+ return [
1434
+ r,
1435
+ a,
1436
+ i
1437
+ ];
1438
+ }, e.prototype.ddayset = function(e, t, n) {
1439
+ var r = j(null, this.yearlen), i = Le(L(e, t, n)) - this.yearordinal;
1440
+ return r[i] = i, [
1441
+ r,
1442
+ i,
1443
+ i + 1
1444
+ ];
1445
+ }, e.prototype.htimeset = function(e, t, n, r) {
1446
+ var i = this, a = [];
1447
+ return this.options.byminute.forEach(function(t) {
1448
+ a = a.concat(i.mtimeset(e, t, n, r));
1449
+ }), B(a), a;
1450
+ }, e.prototype.mtimeset = function(e, t, n, r) {
1451
+ var i = this.options.bysecond.map(function(n) {
1452
+ return new st(e, t, n, r);
1453
+ });
1454
+ return B(i), i;
1455
+ }, e.prototype.stimeset = function(e, t, n, r) {
1456
+ return [new st(e, t, n, r)];
1457
+ }, e.prototype.getdayset = function(e) {
1458
+ switch (e) {
1459
+ case G.YEARLY: return this.ydayset.bind(this);
1460
+ case G.MONTHLY: return this.mdayset.bind(this);
1461
+ case G.WEEKLY: return this.wdayset.bind(this);
1462
+ case G.DAILY: return this.ddayset.bind(this);
1463
+ default: return this.ddayset.bind(this);
1464
+ }
1465
+ }, e.prototype.gettimeset = function(e) {
1466
+ switch (e) {
1467
+ case G.HOURLY: return this.htimeset.bind(this);
1468
+ case G.MINUTELY: return this.mtimeset.bind(this);
1469
+ case G.SECONDLY: return this.stimeset.bind(this);
1470
+ }
1471
+ }, e;
1472
+ }();
1473
+ //#endregion
1474
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iter/poslist.js
1475
+ function Ht(e, t, n, r, i, a) {
1476
+ for (var o = [], s = 0; s < e.length; s++) {
1477
+ var c = void 0, l = void 0, u = e[s];
1478
+ u < 0 ? (c = Math.floor(u / t.length), l = N(u, t.length)) : (c = Math.floor((u - 1) / t.length), l = N(u - 1, t.length));
1479
+ for (var d = [], f = n; f < r; f++) {
1480
+ var p = a[f];
1481
+ D(p) && d.push(p);
1482
+ }
1483
+ var m = void 0;
1484
+ m = c < 0 ? d.slice(c)[0] : d[c];
1485
+ var h = t[l], g = Ve(Re(i.yearordinal + m), h);
1486
+ I(o, g) || o.push(g);
1487
+ }
1488
+ return B(o), o;
1489
+ }
1490
+ //#endregion
1491
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iter/index.js
1492
+ function Ut(e, t) {
1493
+ var n = t.dtstart, r = t.freq, i = t.interval, a = t.until, o = t.bysetpos, s = t.count;
1494
+ if (s === 0 || i === 0) return Z(e);
1495
+ var c = ct.fromDate(n), l = new Vt(t);
1496
+ l.rebuild(c.year, c.month);
1497
+ for (var u = qt(l, c, t);;) {
1498
+ var d = l.getdayset(r)(c.year, c.month, c.day), f = d[0], p = d[1], m = d[2], h = Kt(f, p, m, l, t);
1499
+ if (F(o)) for (var g = Ht(o, u, p, m, l, f), _ = 0; _ < g.length; _++) {
1500
+ var v = g[_];
1501
+ if (a && v > a) return Z(e);
1502
+ if (v >= n) {
1503
+ var y = Gt(v, t);
1504
+ if (!e.accept(y) || s && (--s, !s)) return Z(e);
1505
+ }
1506
+ }
1507
+ else for (var _ = p; _ < m; _++) {
1508
+ var b = f[_];
1509
+ if (D(b)) for (var ee = Re(l.yearordinal + b), x = 0; x < u.length; x++) {
1510
+ var te = u[x], v = Ve(ee, te);
1511
+ if (a && v > a) return Z(e);
1512
+ if (v >= n) {
1513
+ var y = Gt(v, t);
1514
+ if (!e.accept(y) || s && (--s, !s)) return Z(e);
1515
+ }
1516
+ }
1517
+ }
1518
+ if (t.interval === 0 || (c.add(t, h), c.year > 9999)) return Z(e);
1519
+ rt(r) || (u = l.gettimeset(r)(c.hour, c.minute, c.second, 0)), l.rebuild(c.year, c.month);
1520
+ }
1521
+ }
1522
+ function Wt(e, t, n) {
1523
+ var r = n.bymonth, i = n.byweekno, a = n.byweekday, o = n.byeaster, s = n.bymonthday, c = n.bynmonthday, l = n.byyearday;
1524
+ return F(r) && !I(r, e.mmask[t]) || F(i) && !e.wnomask[t] || F(a) && !I(a, e.wdaymask[t]) || F(e.nwdaymask) && !e.nwdaymask[t] || o !== null && !I(e.eastermask, t) || (F(s) || F(c)) && !I(s, e.mdaymask[t]) && !I(c, e.nmdaymask[t]) || F(l) && (t < e.yearlen && !I(l, t + 1) && !I(l, -e.yearlen + t) || t >= e.yearlen && !I(l, t + 1 - e.yearlen) && !I(l, -e.nextyearlen + t - e.yearlen));
1525
+ }
1526
+ function Gt(e, t) {
1527
+ return new yt(e, t.tzid).rezonedDate();
1528
+ }
1529
+ function Z(e) {
1530
+ return e.getValue();
1531
+ }
1532
+ function Kt(e, t, n, r, i) {
1533
+ for (var a = !1, o = t; o < n; o++) {
1534
+ var s = e[o];
1535
+ a = Wt(r, s, i), a && (e[s] = null);
1536
+ }
1537
+ return a;
1538
+ }
1539
+ function qt(e, t, n) {
1540
+ var r = n.freq, i = n.byhour, a = n.byminute, o = n.bysecond;
1541
+ return rt(r) ? dt(n) : r >= $.HOURLY && F(i) && !I(i, t.hour) || r >= $.MINUTELY && F(a) && !I(a, t.minute) || r >= $.SECONDLY && F(o) && !I(o, t.second) ? [] : e.gettimeset(r)(t.hour, t.minute, t.second, t.millisecond);
1542
+ }
1543
+ //#endregion
1544
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/rrule.js
1545
+ var Q = {
1546
+ MO: new E(0),
1547
+ TU: new E(1),
1548
+ WE: new E(2),
1549
+ TH: new E(3),
1550
+ FR: new E(4),
1551
+ SA: new E(5),
1552
+ SU: new E(6)
1553
+ }, Jt = {
1554
+ freq: G.YEARLY,
1555
+ dtstart: null,
1556
+ interval: 1,
1557
+ wkst: Q.MO,
1558
+ count: null,
1559
+ until: null,
1560
+ tzid: null,
1561
+ bysetpos: null,
1562
+ bymonth: null,
1563
+ bymonthday: null,
1564
+ bynmonthday: null,
1565
+ byyearday: null,
1566
+ byweekno: null,
1567
+ byweekday: null,
1568
+ bynweekday: null,
1569
+ byhour: null,
1570
+ byminute: null,
1571
+ bysecond: null,
1572
+ byeaster: null
1573
+ }, Yt = Object.keys(Jt), $ = function() {
1574
+ function e(e, t) {
1575
+ e === void 0 && (e = {}), t === void 0 && (t = !1), this._cache = t ? null : new Ct(), this.origOptions = lt(e);
1576
+ var n = ut(e).parsedOptions;
1577
+ this.options = n;
1578
+ }
1579
+ return e.parseText = function(e, t) {
1580
+ return nt(e, t);
1581
+ }, e.fromText = function(e, t) {
1582
+ return it(e, t);
1583
+ }, e.fromString = function(t) {
1584
+ return new e(e.parseString(t) || void 0);
1585
+ }, e.prototype._iter = function(e) {
1586
+ return Ut(e, this.options);
1587
+ }, e.prototype._cacheGet = function(e, t) {
1588
+ return this._cache ? this._cache._cacheGet(e, t) : !1;
1589
+ }, e.prototype._cacheAdd = function(e, t, n) {
1590
+ if (this._cache) return this._cache._cacheAdd(e, t, n);
1591
+ }, e.prototype.all = function(e) {
1592
+ if (e) return this._iter(new Xe("all", {}, e));
1593
+ var t = this._cacheGet("all");
1594
+ return t === !1 && (t = this._iter(new V("all", {})), this._cacheAdd("all", t)), t;
1595
+ }, e.prototype.between = function(e, t, n, r) {
1596
+ if (n === void 0 && (n = !1), !R(e) || !R(t)) throw Error("Invalid date passed in to RRule.between");
1597
+ var i = {
1598
+ before: t,
1599
+ after: e,
1600
+ inc: n
1601
+ };
1602
+ if (r) return this._iter(new Xe("between", i, r));
1603
+ var a = this._cacheGet("between", i);
1604
+ return a === !1 && (a = this._iter(new V("between", i)), this._cacheAdd("between", a, i)), a;
1605
+ }, e.prototype.before = function(e, t) {
1606
+ if (t === void 0 && (t = !1), !R(e)) throw Error("Invalid date passed in to RRule.before");
1607
+ var n = {
1608
+ dt: e,
1609
+ inc: t
1610
+ }, r = this._cacheGet("before", n);
1611
+ return r === !1 && (r = this._iter(new V("before", n)), this._cacheAdd("before", r, n)), r;
1612
+ }, e.prototype.after = function(e, t) {
1613
+ if (t === void 0 && (t = !1), !R(e)) throw Error("Invalid date passed in to RRule.after");
1614
+ var n = {
1615
+ dt: e,
1616
+ inc: t
1617
+ }, r = this._cacheGet("after", n);
1618
+ return r === !1 && (r = this._iter(new V("after", n)), this._cacheAdd("after", r, n)), r;
1619
+ }, e.prototype.count = function() {
1620
+ return this.all().length;
1621
+ }, e.prototype.toString = function() {
1622
+ return bt(this.origOptions);
1623
+ }, e.prototype.toText = function(e, t, n) {
1624
+ return at(this, e, t, n);
1625
+ }, e.prototype.isFullyConvertibleToText = function() {
1626
+ return ot(this);
1627
+ }, e.prototype.clone = function() {
1628
+ return new e(this.origOptions);
1629
+ }, e.FREQUENCIES = [
1630
+ "YEARLY",
1631
+ "MONTHLY",
1632
+ "WEEKLY",
1633
+ "DAILY",
1634
+ "HOURLY",
1635
+ "MINUTELY",
1636
+ "SECONDLY"
1637
+ ], e.YEARLY = G.YEARLY, e.MONTHLY = G.MONTHLY, e.WEEKLY = G.WEEKLY, e.DAILY = G.DAILY, e.HOURLY = G.HOURLY, e.MINUTELY = G.MINUTELY, e.SECONDLY = G.SECONDLY, e.MO = Q.MO, e.TU = Q.TU, e.WE = Q.WE, e.TH = Q.TH, e.FR = Q.FR, e.SA = Q.SA, e.SU = Q.SU, e.parseString = ft, e.optionsToString = bt, e;
1638
+ }();
1639
+ //#endregion
1640
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/iterset.js
1641
+ function Xt(e, t, n, r, i, a) {
1642
+ var o = {}, s = e.accept;
1643
+ function c(e, t) {
1644
+ n.forEach(function(n) {
1645
+ n.between(e, t, !0).forEach(function(e) {
1646
+ o[Number(e)] = !0;
1647
+ });
1648
+ });
1649
+ }
1650
+ i.forEach(function(e) {
1651
+ var t = new yt(e, a).rezonedDate();
1652
+ o[Number(t)] = !0;
1653
+ }), e.accept = function(e) {
1654
+ var t = Number(e);
1655
+ return isNaN(t) ? s.call(this, e) : !o[t] && (c(/* @__PURE__ */ new Date(t - 1), new Date(t + 1)), !o[t]) ? (o[t] = !0, s.call(this, e)) : !0;
1656
+ }, e.method === "between" && (c(e.args.after, e.args.before), e.accept = function(e) {
1657
+ var t = Number(e);
1658
+ return o[t] ? !0 : (o[t] = !0, s.call(this, e));
1659
+ });
1660
+ for (var l = 0; l < r.length; l++) {
1661
+ var u = new yt(r[l], a).rezonedDate();
1662
+ if (!e.accept(new Date(u.getTime()))) break;
1663
+ }
1664
+ t.forEach(function(t) {
1665
+ Ut(e, t.options);
1666
+ });
1667
+ var d = e._result;
1668
+ switch (B(d), e.method) {
1669
+ case "all":
1670
+ case "between": return d;
1671
+ case "before": return d.length && d[d.length - 1] || null;
1672
+ default: return d.length && d[0] || null;
1673
+ }
1674
+ }
1675
+ //#endregion
1676
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/rrulestr.js
1677
+ var Zt = {
1678
+ dtstart: null,
1679
+ cache: !1,
1680
+ unfold: !1,
1681
+ forceset: !1,
1682
+ compatible: !1,
1683
+ tzid: null
1684
+ };
1685
+ function Qt(e, t) {
1686
+ var n = [], r = [], i = [], a = [], o = pt(e), s = o.dtstart, c = o.tzid;
1687
+ return on(e, t.unfold).forEach(function(e) {
1688
+ if (e) {
1689
+ var t = an(e), o = t.name, s = t.parms, l = t.value;
1690
+ switch (o.toUpperCase()) {
1691
+ case "RRULE":
1692
+ if (s.length) throw Error(`unsupported RRULE parm: ${s.join(",")}`);
1693
+ n.push(ft(e));
1694
+ break;
1695
+ case "RDATE":
1696
+ var u = (/RDATE(?:;TZID=([^:=]+))?/i.exec(e) ?? [])[1];
1697
+ u && !c && (c = u), r = r.concat(cn(l, s));
1698
+ break;
1699
+ case "EXRULE":
1700
+ if (s.length) throw Error(`unsupported EXRULE parm: ${s.join(",")}`);
1701
+ i.push(ft(l));
1702
+ break;
1703
+ case "EXDATE":
1704
+ a = a.concat(cn(l, s));
1705
+ break;
1706
+ case "DTSTART": break;
1707
+ default: throw Error("unsupported property: " + o);
1708
+ }
1709
+ }
1710
+ }), {
1711
+ dtstart: s,
1712
+ tzid: c,
1713
+ rrulevals: n,
1714
+ rdatevals: r,
1715
+ exrulevals: i,
1716
+ exdatevals: a
1717
+ };
1718
+ }
1719
+ function $t(e, t) {
1720
+ var n = Qt(e, t), r = n.rrulevals, i = n.rdatevals, a = n.exrulevals, o = n.exdatevals, s = n.dtstart, c = n.tzid, l = t.cache === !1;
1721
+ if (t.compatible && (t.forceset = !0, t.unfold = !0), t.forceset || r.length > 1 || i.length || a.length || o.length) {
1722
+ var u = new un(l);
1723
+ return u.dtstart(s), u.tzid(c || void 0), r.forEach(function(e) {
1724
+ u.rrule(new $(tn(e, s, c), l));
1725
+ }), i.forEach(function(e) {
1726
+ u.rdate(e);
1727
+ }), a.forEach(function(e) {
1728
+ u.exrule(new $(tn(e, s, c), l));
1729
+ }), o.forEach(function(e) {
1730
+ u.exdate(e);
1731
+ }), t.compatible && t.dtstart && u.rdate(s), u;
1732
+ }
1733
+ var d = r[0] || {};
1734
+ return new $(tn(d, d.dtstart || t.dtstart || s, d.tzid || t.tzid || c), l);
1735
+ }
1736
+ function en(e, t) {
1737
+ return t === void 0 && (t = {}), $t(e, nn(t));
1738
+ }
1739
+ function tn(e, t, n) {
1740
+ return H(H({}, e), {
1741
+ dtstart: t,
1742
+ tzid: n
1743
+ });
1744
+ }
1745
+ function nn(e) {
1746
+ var t = [], n = Object.keys(e), r = Object.keys(Zt);
1747
+ if (n.forEach(function(e) {
1748
+ I(r, e) || t.push(e);
1749
+ }), t.length) throw Error("Invalid options: " + t.join(", "));
1750
+ return H(H({}, Zt), e);
1751
+ }
1752
+ function rn(e) {
1753
+ if (e.indexOf(":") === -1) return {
1754
+ name: "RRULE",
1755
+ value: e
1756
+ };
1757
+ var t = Oe(e, ":", 1);
1758
+ return {
1759
+ name: t[0],
1760
+ value: t[1]
1761
+ };
1762
+ }
1763
+ function an(e) {
1764
+ var t = rn(e), n = t.name, r = t.value, i = n.split(";");
1765
+ if (!i) throw Error("empty property name");
1766
+ return {
1767
+ name: i[0].toUpperCase(),
1768
+ parms: i.slice(1),
1769
+ value: r
1770
+ };
1771
+ }
1772
+ function on(e, t) {
1773
+ if (t === void 0 && (t = !1), e &&= e.trim(), !e) throw Error("Invalid empty string");
1774
+ if (!t) return e.split(/\s/);
1775
+ for (var n = e.split("\n"), r = 0; r < n.length;) {
1776
+ var i = n[r] = n[r].replace(/\s+$/g, "");
1777
+ i ? r > 0 && i[0] === " " ? (n[r - 1] += i.slice(1), n.splice(r, 1)) : r += 1 : n.splice(r, 1);
1778
+ }
1779
+ return n;
1780
+ }
1781
+ function sn(e) {
1782
+ e.forEach(function(e) {
1783
+ if (!/(VALUE=DATE(-TIME)?)|(TZID=)/.test(e)) throw Error("unsupported RDATE/EXDATE parm: " + e);
1784
+ });
1785
+ }
1786
+ function cn(e, t) {
1787
+ return sn(t), e.split(",").map(function(e) {
1788
+ return Ge(e);
1789
+ });
1790
+ }
1791
+ //#endregion
1792
+ //#region ../../node_modules/.pnpm/rrule@2.8.1/node_modules/rrule/dist/esm/rruleset.js
1793
+ function ln(e) {
1794
+ var t = this;
1795
+ return function(n) {
1796
+ if (n !== void 0 && (t[`_${e}`] = n), t[`_${e}`] !== void 0) return t[`_${e}`];
1797
+ for (var r = 0; r < t._rrule.length; r++) {
1798
+ var i = t._rrule[r].origOptions[e];
1799
+ if (i) return i;
1800
+ }
1801
+ };
1802
+ }
1803
+ var un = function(e) {
1804
+ Ye(t, e);
1805
+ function t(t) {
1806
+ t === void 0 && (t = !1);
1807
+ var n = e.call(this, {}, t) || this;
1808
+ return n.dtstart = ln.apply(n, ["dtstart"]), n.tzid = ln.apply(n, ["tzid"]), n._rrule = [], n._rdate = [], n._exrule = [], n._exdate = [], n;
1809
+ }
1810
+ return t.prototype._iter = function(e) {
1811
+ return Xt(e, this._rrule, this._exrule, this._rdate, this._exdate, this.tzid());
1812
+ }, t.prototype.rrule = function(e) {
1813
+ dn(e, this._rrule);
1814
+ }, t.prototype.exrule = function(e) {
1815
+ dn(e, this._exrule);
1816
+ }, t.prototype.rdate = function(e) {
1817
+ fn(e, this._rdate);
1818
+ }, t.prototype.exdate = function(e) {
1819
+ fn(e, this._exdate);
1820
+ }, t.prototype.rrules = function() {
1821
+ return this._rrule.map(function(e) {
1822
+ return en(e.toString());
1823
+ });
1824
+ }, t.prototype.exrules = function() {
1825
+ return this._exrule.map(function(e) {
1826
+ return en(e.toString());
1827
+ });
1828
+ }, t.prototype.rdates = function() {
1829
+ return this._rdate.map(function(e) {
1830
+ return new Date(e.getTime());
1831
+ });
1832
+ }, t.prototype.exdates = function() {
1833
+ return this._exdate.map(function(e) {
1834
+ return new Date(e.getTime());
1835
+ });
1836
+ }, t.prototype.valueOf = function() {
1837
+ var e = [];
1838
+ return !this._rrule.length && this._dtstart && (e = e.concat(bt({ dtstart: this._dtstart }))), this._rrule.forEach(function(t) {
1839
+ e = e.concat(t.toString().split("\n"));
1840
+ }), this._exrule.forEach(function(t) {
1841
+ e = e.concat(t.toString().split("\n").map(function(e) {
1842
+ return e.replace(/^RRULE:/, "EXRULE:");
1843
+ }).filter(function(e) {
1844
+ return !/^DTSTART/.test(e);
1845
+ }));
1846
+ }), this._rdate.length && e.push(pn("RDATE", this._rdate, this.tzid())), this._exdate.length && e.push(pn("EXDATE", this._exdate, this.tzid())), e;
1847
+ }, t.prototype.toString = function() {
1848
+ return this.valueOf().join("\n");
1849
+ }, t.prototype.clone = function() {
1850
+ var e = new t(!!this._cache);
1851
+ return this._rrule.forEach(function(t) {
1852
+ return e.rrule(t.clone());
1853
+ }), this._exrule.forEach(function(t) {
1854
+ return e.exrule(t.clone());
1855
+ }), this._rdate.forEach(function(t) {
1856
+ return e.rdate(new Date(t.getTime()));
1857
+ }), this._exdate.forEach(function(t) {
1858
+ return e.exdate(new Date(t.getTime()));
1859
+ }), e;
1860
+ }, t;
1861
+ }($);
1862
+ function dn(e, t) {
1863
+ if (!(e instanceof $)) throw TypeError(String(e) + " is not RRule instance");
1864
+ I(t.map(String), String(e)) || t.push(e);
1865
+ }
1866
+ function fn(e, t) {
1867
+ if (!(e instanceof Date)) throw TypeError(String(e) + " is not Date instance");
1868
+ I(t.map(Number), Number(e)) || (t.push(e), B(t));
1869
+ }
1870
+ function pn(e, t, n) {
1871
+ var r = !n || n.toUpperCase() === "UTC";
1872
+ return `${r ? `${e}:` : `${e};TZID=${n}:`}${t.map(function(e) {
1873
+ return We(e.valueOf(), r);
1874
+ }).join(",")}`;
1875
+ }
1876
+ //#endregion
1877
+ //#region src/refreshScheduleOccurrences.ts
1878
+ var mn = {
1879
+ hourly: $.HOURLY,
1880
+ daily: $.DAILY,
1881
+ weekly: $.WEEKLY,
1882
+ monthly: $.MONTHLY
1883
+ }, hn = [
1884
+ $.MO,
1885
+ $.TU,
1886
+ $.WE,
1887
+ $.TH,
1888
+ $.FR,
1889
+ $.SA,
1890
+ $.SU
1891
+ ];
1892
+ function gn(e, t) {
1893
+ let n = new Intl.DateTimeFormat("en-US", {
1894
+ timeZone: t,
1895
+ hourCycle: "h23",
1896
+ year: "numeric",
1897
+ month: "numeric",
1898
+ day: "numeric",
1899
+ hour: "numeric",
1900
+ minute: "numeric",
1901
+ second: "numeric"
1902
+ }).formatToParts(new Date(e)), r = (e) => Number(n.find((t) => t.type === e)?.value);
1903
+ return Date.UTC(r("year"), r("month") - 1, r("day"), r("hour"), r("minute"), r("second")) - e;
1904
+ }
1905
+ var _n = 864e5;
1906
+ function vn(e, t) {
1907
+ let n = e.getTime(), r = gn(n - _n, t), i = gn(n + _n, t), a = [n - r, n - i].filter((e) => e + gn(e, t) === n);
1908
+ return new Date(a.length ? Math.min(...a) : n - r);
1909
+ }
1910
+ function yn(e, t = 3, n = /* @__PURE__ */ new Date()) {
1911
+ let [r, i] = (e.freq === "hourly" ? "00:00" : e.time ?? "00:00").split(":").map(Number), [a, o, s] = e.startDate.split("-").map(Number), c = e.freq === "weekly", l = e.freq === "monthly" ? e.monthly : null, u = new $({
1912
+ freq: mn[e.freq],
1913
+ interval: Math.max(1, e.interval),
1914
+ dtstart: new Date(Date.UTC(a, o - 1, s, r, i)),
1915
+ byweekday: c ? (e.weekdays.length ? e.weekdays : [ye(e.startDate)]).map((e) => hn[e]) : l && "nth" in l ? [hn[l.weekday]] : null,
1916
+ bysetpos: l && "nth" in l ? l.nth : null,
1917
+ bymonthday: l && "day" in l ? l.day : null
1918
+ }), d = new Date(n.getTime() + gn(n.getTime(), e.timezone)), f = [], p = u.after(d, !0);
1919
+ for (; p && f.length < t;) f.push({
1920
+ at: vn(p, e.timezone),
1921
+ wall: p
1922
+ }), p = u.after(p, !1);
1923
+ return f;
1924
+ }
1925
+ //#endregion
1926
+ //#region src/taskPriority.ts
1927
+ var bn = [
1928
+ "low",
1929
+ "normal",
1930
+ "high",
1931
+ "urgent"
1932
+ ], xn = {
1933
+ low: "mdi-signal-cellular-1",
1934
+ normal: "mdi-signal-cellular-2",
1935
+ high: "mdi-signal-cellular-3",
1936
+ urgent: "mdi-alert"
1937
+ }, Sn = {
1938
+ low: "blue-lighten-1",
1939
+ normal: "green-lighten-1",
1940
+ high: "yellow-lighten-1",
1941
+ urgent: "red-lighten-1"
1942
+ };
1943
+ function Cn(e) {
1944
+ return xn[e];
1945
+ }
1946
+ function wn(e) {
1947
+ return Sn[e];
69
1948
  }
70
1949
  //#endregion
71
1950
  //#region src/useAntColorMode.ts
72
- function L(e, n) {
1951
+ function Tn(e, n) {
73
1952
  let i = r(n), a = s(() => e.context.value.darkMode), o = s(() => {
74
1953
  switch (a.value) {
75
1954
  case null: return "auto";
@@ -95,28 +1974,28 @@ function L(e, n) {
95
1974
  }
96
1975
  //#endregion
97
1976
  //#region src/useAntI18n.ts
98
- function R(e, t) {
1977
+ function En(e, t) {
99
1978
  let n = _(t);
100
1979
  return g(() => e.context.value.user?.language, (e) => n.locale.value = e ?? "en", { immediate: !0 }), n;
101
1980
  }
102
1981
  //#endregion
103
1982
  //#region src/useAppTourMode.ts
104
- var z = m(!1), B = m(null);
105
- function V() {
1983
+ var Dn = m(!1), On = m(null);
1984
+ function kn() {
106
1985
  function e(e) {
107
1986
  g(() => e.value.tourMode, (e) => {
108
- z.value = !!e, e || (B.value = null);
1987
+ Dn.value = !!e, e || (On.value = null);
109
1988
  }, { immediate: !0 });
110
1989
  }
111
1990
  function t(e) {
112
- z.value && (B.value = e);
1991
+ Dn.value && (On.value = e);
113
1992
  }
114
1993
  function n() {
115
- z.value = !1, B.value = null;
1994
+ Dn.value = !1, On.value = null;
116
1995
  }
117
1996
  return {
118
- isActive: p(z),
119
- activeZoneId: p(B),
1997
+ isActive: p(Dn),
1998
+ activeZoneId: p(On),
120
1999
  connectContext: e,
121
2000
  setActiveZone: t,
122
2001
  exit: n
@@ -124,7 +2003,7 @@ function V() {
124
2003
  }
125
2004
  //#endregion
126
2005
  //#region src/useCommsClient.ts
127
- function H(t, n, r) {
2006
+ function An(t, n, r) {
128
2007
  let i = m({}), a = b({
129
2008
  parent: window.parent,
130
2009
  connect: t,
@@ -133,17 +2012,17 @@ function H(t, n, r) {
133
2012
  get: () => o.value,
134
2013
  set: (e) => a.appState.set(e)
135
2014
  });
136
- return a.context.subscribe((e) => i.value = e), w(a.appState.get(), a.appState).subscribe((e) => o.value = e), W(a.signal, a, n), l(() => a.unsubscribe()), Object.assign(e(a, [
2015
+ return a.context.subscribe((e) => i.value = e), ne(a.appState.get(), a.appState).subscribe((e) => o.value = e), Mn(a.signal, a, n), l(() => a.unsubscribe()), Object.assign(e(a, [
137
2016
  "context",
138
2017
  "toolbar",
139
2018
  "appState"
140
2019
  ]), {
141
2020
  context: i,
142
- toolbar: U(a),
2021
+ toolbar: jn(a),
143
2022
  appState: c
144
2023
  });
145
2024
  }
146
- function U(e) {
2025
+ function jn(e) {
147
2026
  let t = m(""), n = {
148
2027
  title: s({
149
2028
  get: () => e.toolbar.get().title,
@@ -194,16 +2073,16 @@ function U(e) {
194
2073
  }))
195
2074
  })
196
2075
  };
197
- return e.toolbar.pipe(k((e) => e.search.input ?? ""), D(), E(300)).forEach((e) => t.value = e), n;
2076
+ return e.toolbar.pipe(C((e) => e.search.input ?? ""), ae(), ie(300)).forEach((e) => t.value = e), n;
198
2077
  }
199
- function W(e, t, n) {
200
- let r = i(), a = r.ctrl ?? s(() => !1), c = r.shift ?? s(() => !1), l = new C(), u = l.pipe(T(n ?? ((e) => Promise.resolve(e))), T((t) => e(t))).subscribe();
2078
+ function Mn(e, t, n) {
2079
+ let r = i(), a = r.ctrl ?? s(() => !1), c = r.shift ?? s(() => !1), l = new te(), u = l.pipe(re(n ?? ((e) => Promise.resolve(e))), re((t) => e(t))).subscribe();
201
2080
  return t.add(u), u.add(o(a, () => l.next({ hotkeys: { ctrl: !0 } }))), u.add(o(c, () => l.next({ hotkeys: { shift: !0 } }))), u;
202
2081
  }
203
2082
  //#endregion
204
2083
  //#region src/useCommsHost.ts
205
- function G(e) {
206
- let { context: t } = e, n = new S({}), r = (e) => n.next(e(n.value)), i = m(), o = new S(void 0), c = g(i, (e) => o.next(e), { immediate: !0 }), l = o.asObservable().pipe(k((e) => e?.contentWindow), O((e) => !!e)), u = x({
2084
+ function Nn(e) {
2085
+ let { context: t } = e, n = new x({}), r = (e) => n.next(e(n.value)), i = m(), o = new x(void 0), c = g(i, (e) => o.next(e), { immediate: !0 }), l = o.asObservable().pipe(C((e) => e?.contentWindow), S((e) => !!e)), u = ee({
207
2086
  ...e,
208
2087
  contextChanges: n,
209
2088
  windowChanges: l
@@ -229,7 +2108,7 @@ function G(e) {
229
2108
  u.isConnectionInitialized.subscribe((e) => h.value = e);
230
2109
  let _ = m(null);
231
2110
  u.manifest?.subscribe((e) => _.value = e);
232
- let { unsubscribe: y, signal: b, closed: C } = u;
2111
+ let { unsubscribe: y, signal: b, closed: te } = u;
233
2112
  return {
234
2113
  ...e,
235
2114
  client: i,
@@ -238,12 +2117,17 @@ function G(e) {
238
2117
  manifest: _,
239
2118
  unsubscribe: y,
240
2119
  signal: b,
241
- closed: C
2120
+ closed: te
242
2121
  };
243
2122
  }
244
2123
  //#endregion
2124
+ //#region src/useFeature.ts
2125
+ function Pn(e, t) {
2126
+ return s(() => e.value?.features?.[t] === !0);
2127
+ }
2128
+ //#endregion
245
2129
  //#region src/usePermissions.ts
246
- function K(e) {
2130
+ function Fn(e) {
247
2131
  let t = s(() => e.value?.user), n = s(() => e.value?.license), r = s(() => e.value?.project), i = s(() => !!t.value?.is_admin), a = s(() => !!n.value?.user_is_admin), o = s(() => !!r.value?.user_is_admin || a.value);
248
2132
  function c(e) {
249
2133
  return !t.value || !n.value ? !1 : i.value || a.value ? !0 : (n.value.user_roles ?? []).some((t) => t.name === e);
@@ -269,7 +2153,7 @@ function K(e) {
269
2153
  }
270
2154
  //#endregion
271
2155
  //#region src/useTemplateVersioning.ts
272
- function q(e) {
2156
+ function In(e) {
273
2157
  let t = h(null), n = h(null), r = h(null), i = h(null), a = h([]), o = h(null), c = m(!1), l = m(!1), u = m(!1), d = m(!1), f = m(!1), p = m(!1), g = s(() => t.value?.has_update ?? !1), _ = s(() => t.value?.current_version ?? null), v = s(() => t.value?.latest_version ?? null), y = s(() => n.value ? n.value.added.length + n.value.removed.length + n.value.modified.length + n.value.relations_added.length + n.value.relations_removed.length : 0);
274
2158
  async function b(n) {
275
2159
  c.value = !0;
@@ -282,7 +2166,7 @@ function q(e) {
282
2166
  c.value = !1;
283
2167
  }
284
2168
  }
285
- async function x(t, r) {
2169
+ async function ee(t, r) {
286
2170
  l.value = !0;
287
2171
  try {
288
2172
  let i = await e.tasks.versionDiff(t, r);
@@ -293,7 +2177,7 @@ function q(e) {
293
2177
  l.value = !1;
294
2178
  }
295
2179
  }
296
- async function S(t, r, i) {
2180
+ async function x(t, r, i) {
297
2181
  l.value = !0;
298
2182
  try {
299
2183
  let a = await e.tasks.versionCompare(t, r, i);
@@ -304,7 +2188,7 @@ function q(e) {
304
2188
  l.value = !1;
305
2189
  }
306
2190
  }
307
- async function C(t) {
2191
+ async function te(t) {
308
2192
  u.value = !0;
309
2193
  try {
310
2194
  let n = await e.tasks.versionDiffOriginal(t);
@@ -315,7 +2199,7 @@ function q(e) {
315
2199
  u.value = !1;
316
2200
  }
317
2201
  }
318
- async function w(r, a) {
2202
+ async function ne(r, a) {
319
2203
  d.value = !0;
320
2204
  try {
321
2205
  let o = await e.tasks.syncToLatestVersion(r, a);
@@ -326,7 +2210,7 @@ function q(e) {
326
2210
  d.value = !1;
327
2211
  }
328
2212
  }
329
- async function T(t, n) {
2213
+ async function re(t, n) {
330
2214
  f.value = !0;
331
2215
  try {
332
2216
  let r = (await e.tasks.publishVersion(t, { change_summary: n }))?.data ?? null;
@@ -337,7 +2221,7 @@ function q(e) {
337
2221
  f.value = !1;
338
2222
  }
339
2223
  }
340
- async function E(t) {
2224
+ async function ie(t) {
341
2225
  p.value = !0;
342
2226
  try {
343
2227
  let n = await e.tasks.listVersions(t);
@@ -348,7 +2232,7 @@ function q(e) {
348
2232
  p.value = !1;
349
2233
  }
350
2234
  }
351
- async function D(t) {
2235
+ async function ae(t) {
352
2236
  try {
353
2237
  let n = await e.tasks.latestVersion(t);
354
2238
  return o.value = n?.data ?? null, o.value;
@@ -356,31 +2240,31 @@ function q(e) {
356
2240
  return o.value = null, null;
357
2241
  }
358
2242
  }
359
- let O = h([]), k = m(!1), A = m(!1), j = h([]);
360
- async function M(t) {
361
- k.value = !0;
2243
+ let S = h([]), C = m(!1), w = m(!1), T = h([]);
2244
+ async function oe(t) {
2245
+ C.value = !0;
362
2246
  try {
363
2247
  let n = await e.tasks.getInstances(t);
364
- return O.value = n?.data ?? [], O.value;
2248
+ return S.value = n?.data ?? [], S.value;
365
2249
  } catch {
366
- return O.value = [], [];
2250
+ return S.value = [], [];
367
2251
  } finally {
368
- k.value = !1;
2252
+ C.value = !1;
369
2253
  }
370
2254
  }
371
- async function N(t, n) {
372
- A.value = !0, j.value = [];
2255
+ async function se(t, n) {
2256
+ w.value = !0, T.value = [];
373
2257
  try {
374
2258
  let r = await e.tasks.pushSync(t, n);
375
- return j.value = r?.data ?? [], j.value;
2259
+ return T.value = r?.data ?? [], T.value;
376
2260
  } catch {
377
- return j.value = [], [];
2261
+ return T.value = [], [];
378
2262
  } finally {
379
- A.value = !1;
2263
+ w.value = !1;
380
2264
  }
381
2265
  }
382
- function P() {
383
- t.value = null, n.value = null, r.value = null, i.value = null, a.value = [], o.value = null, O.value = [], j.value = [];
2266
+ function ce() {
2267
+ t.value = null, n.value = null, r.value = null, i.value = null, a.value = [], o.value = null, S.value = [], T.value = [];
384
2268
  }
385
2269
  return {
386
2270
  updateCheck: t,
@@ -389,36 +2273,36 @@ function q(e) {
389
2273
  syncResult: i,
390
2274
  versions: a,
391
2275
  latestVersion: o,
392
- instances: O,
393
- pushSyncResults: j,
2276
+ instances: S,
2277
+ pushSyncResults: T,
394
2278
  isCheckingUpdate: c,
395
2279
  isFetchingDiff: l,
396
2280
  isFetchingCustomizations: u,
397
2281
  isSyncing: d,
398
2282
  isPublishing: f,
399
2283
  isFetchingVersions: p,
400
- isFetchingInstances: k,
401
- isPushSyncing: A,
2284
+ isFetchingInstances: C,
2285
+ isPushSyncing: w,
402
2286
  hasUpdate: g,
403
2287
  currentVersion: _,
404
2288
  availableVersion: v,
405
2289
  totalChanges: y,
406
2290
  checkForUpdates: b,
407
- fetchDiff: x,
408
- fetchUserCustomizations: C,
409
- compareVersions: S,
410
- syncToVersion: w,
411
- publishVersion: T,
412
- fetchVersions: E,
413
- fetchLatestVersion: D,
414
- fetchInstances: M,
415
- pushSync: N,
416
- reset: P
2291
+ fetchDiff: ee,
2292
+ fetchUserCustomizations: te,
2293
+ compareVersions: x,
2294
+ syncToVersion: ne,
2295
+ publishVersion: re,
2296
+ fetchVersions: ie,
2297
+ fetchLatestVersion: ae,
2298
+ fetchInstances: oe,
2299
+ pushSync: se,
2300
+ reset: ce
417
2301
  };
418
2302
  }
419
2303
  //#endregion
420
2304
  //#region src/useTriggerDispatch.ts
421
- function J(e, t = {}) {
2305
+ function Ln(e, t = {}) {
422
2306
  let n = t.authorizationTimeoutMs ?? 3e5, r = /* @__PURE__ */ new Set();
423
2307
  d(() => {
424
2308
  for (let e of r) e();
@@ -445,18 +2329,18 @@ function J(e, t = {}) {
445
2329
  }
446
2330
  //#endregion
447
2331
  //#region src/utils.ts
448
- function Y(e = "comms") {
449
- let [t, n] = X(e, () => H(), (e) => e.unsubscribe());
2332
+ function Rn(e = "comms") {
2333
+ let [t, n] = zn(e, () => An(), (e) => e.unsubscribe());
450
2334
  return {
451
2335
  provideComms: t,
452
2336
  injectComms: n
453
2337
  };
454
2338
  }
455
- function X(e, t, n) {
2339
+ function zn(e, t, n) {
456
2340
  let r, i = () => (!r && (r = t()), r);
457
2341
  return [(t) => (t.onUnmount(() => n && r && n(r)), t.provide(e, i)), () => c(e)()];
458
2342
  }
459
- function Z(t, r, i) {
2343
+ function Bn(t, r, i) {
460
2344
  let a = n(t, r, {
461
2345
  immediate: !1,
462
2346
  ...i
@@ -466,9 +2350,9 @@ function Z(t, r, i) {
466
2350
  executeDelayed: a.execute
467
2351
  });
468
2352
  }
469
- function Q(e) {
2353
+ function Vn(e) {
470
2354
  let t, n = m(void 0);
471
2355
  return u(() => t = e.signal.receive((e) => n.value = e)), f(() => t?.()), [p(n), () => t?.()];
472
2356
  }
473
2357
  //#endregion
474
- export { F as formatDate, I as formatDateRange, L as useAntColorMode, R as useAntI18n, Z as useApi, V as useAppTourMode, H as useCommsClient, G as useCommsHost, Y as useCommsInjection, K as usePermissions, Q as useSignal, X as useSingleton, q as useTemplateVersioning, J as useTriggerDispatch };
2358
+ export { pe as SCHEDULE_DAYS, bn as TASK_PRIORITIES, _e as browserZone, be as buildScheduleRule, ve as defaultScheduleSpec, we as describeRefresh, le as formatDate, ue as formatDateRange, fe as formatRefreshLabel, yn as nextOccurrences, Ce as parseScheduleRule, wn as taskPriorityColor, Cn as taskPriorityIcon, Tn as useAntColorMode, En as useAntI18n, Bn as useApi, kn as useAppTourMode, An as useCommsClient, Nn as useCommsHost, Rn as useCommsInjection, Pn as useFeature, Fn as usePermissions, Vn as useSignal, zn as useSingleton, In as useTemplateVersioning, Ln as useTriggerDispatch, ye as weekdayOf };