@oslokommune/punkt-elements 12.11.0 → 12.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import { r as H, P as ht, x as D, E as _, n as m } from "./index-Dw-V4--g.js";
2
- import { a as R } from "./converters-DNCwIFwr.js";
1
+ import { r as _, P as ht, x as D, E as I, n as m } from "./index-Dw-V4--g.js";
2
+ import { a as L } from "./converters-DNCwIFwr.js";
3
3
  import { t as dt } from "./custom-element-CWfU4dcr.js";
4
4
  import { e as ft } from "./class-map-DpN1m5lh.js";
5
5
  import "./index-DkLa0YLm.js";
@@ -17,20 +17,20 @@ function z(t, e, n) {
17
17
  function yt(t, e, n) {
18
18
  return S(t, +v(t) + e);
19
19
  }
20
- function I(t, e, n) {
20
+ function W(t, e, n) {
21
21
  return yt(t, e * gt);
22
22
  }
23
23
  let pt = {};
24
- function L() {
24
+ function R() {
25
25
  return pt;
26
26
  }
27
- function F(t, e) {
27
+ function H(t, e) {
28
28
  var c, o, d, g;
29
- const n = L(), r = (e == null ? void 0 : e.weekStartsOn) ?? ((o = (c = e == null ? void 0 : e.locale) == null ? void 0 : c.options) == null ? void 0 : o.weekStartsOn) ?? n.weekStartsOn ?? ((g = (d = n.locale) == null ? void 0 : d.options) == null ? void 0 : g.weekStartsOn) ?? 0, a = v(t, e == null ? void 0 : e.in), s = a.getDay(), i = (s < r ? 7 : 0) + s - r;
29
+ const n = R(), r = (e == null ? void 0 : e.weekStartsOn) ?? ((o = (c = e == null ? void 0 : e.locale) == null ? void 0 : c.options) == null ? void 0 : o.weekStartsOn) ?? n.weekStartsOn ?? ((g = (d = n.locale) == null ? void 0 : d.options) == null ? void 0 : g.weekStartsOn) ?? 0, a = v(t, e == null ? void 0 : e.in), s = a.getDay(), i = (s < r ? 7 : 0) + s - r;
30
30
  return a.setDate(a.getDate() - i), a.setHours(0, 0, 0, 0), a;
31
31
  }
32
32
  function q(t, e) {
33
- return F(t, { ...e, weekStartsOn: 1 });
33
+ return H(t, { ...e, weekStartsOn: 1 });
34
34
  }
35
35
  function st(t, e) {
36
36
  const n = v(t, e == null ? void 0 : e.in), r = n.getFullYear(), a = S(n, 0);
@@ -211,7 +211,7 @@ const Tt = {
211
211
  nextWeek: "eeee 'at' p",
212
212
  other: "P"
213
213
  }, Et = (t, e, n, r) => $t[t];
214
- function W(t) {
214
+ function N(t) {
215
215
  return (e, n) => {
216
216
  const r = n != null && n.context ? String(n.context) : "standalone";
217
217
  let a;
@@ -353,36 +353,36 @@ const Wt = {
353
353
  return n + "th";
354
354
  }, It = {
355
355
  ordinalNumber: _t,
356
- era: W({
356
+ era: N({
357
357
  values: Wt,
358
358
  defaultWidth: "wide"
359
359
  }),
360
- quarter: W({
360
+ quarter: N({
361
361
  values: Nt,
362
362
  defaultWidth: "wide",
363
363
  argumentCallback: (t) => t - 1
364
364
  }),
365
- month: W({
365
+ month: N({
366
366
  values: Yt,
367
367
  defaultWidth: "wide"
368
368
  }),
369
- day: W({
369
+ day: N({
370
370
  values: At,
371
371
  defaultWidth: "wide"
372
372
  }),
373
- dayPeriod: W({
373
+ dayPeriod: N({
374
374
  values: Ft,
375
375
  defaultWidth: "wide",
376
376
  formattingValues: Ht,
377
377
  defaultFormattingWidth: "wide"
378
378
  })
379
379
  };
380
- function N(t) {
380
+ function Y(t) {
381
381
  return (e, n = {}) => {
382
382
  const r = n.width, a = r && t.matchPatterns[r] || t.matchPatterns[t.defaultMatchWidth], s = e.match(a);
383
383
  if (!s)
384
384
  return null;
385
- const i = s[0], c = r && t.parsePatterns[r] || t.parsePatterns[t.defaultParseWidth], o = Array.isArray(c) ? Rt(c, (y) => y.test(i)) : (
385
+ const i = s[0], c = r && t.parsePatterns[r] || t.parsePatterns[t.defaultParseWidth], o = Array.isArray(c) ? Lt(c, (y) => y.test(i)) : (
386
386
  // [TODO] -- I challenge you to fix the type
387
387
  qt(c, (y) => y.test(i))
388
388
  );
@@ -400,12 +400,12 @@ function qt(t, e) {
400
400
  if (Object.prototype.hasOwnProperty.call(t, n) && e(t[n]))
401
401
  return n;
402
402
  }
403
- function Rt(t, e) {
403
+ function Lt(t, e) {
404
404
  for (let n = 0; n < t.length; n++)
405
405
  if (e(t[n]))
406
406
  return n;
407
407
  }
408
- function Lt(t) {
408
+ function Rt(t) {
409
409
  return (e, n = {}) => {
410
410
  const r = e.match(t.matchPattern);
411
411
  if (!r) return null;
@@ -485,37 +485,37 @@ const Ut = /^(\d+)(th|st|nd|rd)?/i, zt = /\d+/i, Bt = {
485
485
  night: /night/i
486
486
  }
487
487
  }, ee = {
488
- ordinalNumber: Lt({
488
+ ordinalNumber: Rt({
489
489
  matchPattern: Ut,
490
490
  parsePattern: zt,
491
491
  valueCallback: (t) => parseInt(t, 10)
492
492
  }),
493
- era: N({
493
+ era: Y({
494
494
  matchPatterns: Bt,
495
495
  defaultMatchWidth: "wide",
496
496
  parsePatterns: Qt,
497
497
  defaultParseWidth: "any"
498
498
  }),
499
- quarter: N({
499
+ quarter: Y({
500
500
  matchPatterns: jt,
501
501
  defaultMatchWidth: "wide",
502
502
  parsePatterns: Gt,
503
503
  defaultParseWidth: "any",
504
504
  valueCallback: (t) => t + 1
505
505
  }),
506
- month: N({
506
+ month: Y({
507
507
  matchPatterns: Xt,
508
508
  defaultMatchWidth: "wide",
509
509
  parsePatterns: Vt,
510
510
  defaultParseWidth: "any"
511
511
  }),
512
- day: N({
512
+ day: Y({
513
513
  matchPatterns: Jt,
514
514
  defaultMatchWidth: "wide",
515
515
  parsePatterns: Kt,
516
516
  defaultParseWidth: "any"
517
517
  }),
518
- dayPeriod: N({
518
+ dayPeriod: Y({
519
519
  matchPatterns: Zt,
520
520
  defaultMatchWidth: "any",
521
521
  parsePatterns: te,
@@ -543,20 +543,20 @@ function ae(t, e) {
543
543
  }
544
544
  function ot(t, e) {
545
545
  var g, y, f, x;
546
- const n = v(t, e == null ? void 0 : e.in), r = n.getFullYear(), a = L(), s = (e == null ? void 0 : e.firstWeekContainsDate) ?? ((y = (g = e == null ? void 0 : e.locale) == null ? void 0 : g.options) == null ? void 0 : y.firstWeekContainsDate) ?? a.firstWeekContainsDate ?? ((x = (f = a.locale) == null ? void 0 : f.options) == null ? void 0 : x.firstWeekContainsDate) ?? 1, i = S((e == null ? void 0 : e.in) || t, 0);
546
+ const n = v(t, e == null ? void 0 : e.in), r = n.getFullYear(), a = R(), s = (e == null ? void 0 : e.firstWeekContainsDate) ?? ((y = (g = e == null ? void 0 : e.locale) == null ? void 0 : g.options) == null ? void 0 : y.firstWeekContainsDate) ?? a.firstWeekContainsDate ?? ((x = (f = a.locale) == null ? void 0 : f.options) == null ? void 0 : x.firstWeekContainsDate) ?? 1, i = S((e == null ? void 0 : e.in) || t, 0);
547
547
  i.setFullYear(r + 1, 0, s), i.setHours(0, 0, 0, 0);
548
- const c = F(i, e), o = S((e == null ? void 0 : e.in) || t, 0);
548
+ const c = H(i, e), o = S((e == null ? void 0 : e.in) || t, 0);
549
549
  o.setFullYear(r, 0, s), o.setHours(0, 0, 0, 0);
550
- const d = F(o, e);
550
+ const d = H(o, e);
551
551
  return +n >= +c ? r + 1 : +n >= +d ? r : r - 1;
552
552
  }
553
553
  function se(t, e) {
554
554
  var c, o, d, g;
555
- const n = L(), r = (e == null ? void 0 : e.firstWeekContainsDate) ?? ((o = (c = e == null ? void 0 : e.locale) == null ? void 0 : c.options) == null ? void 0 : o.firstWeekContainsDate) ?? n.firstWeekContainsDate ?? ((g = (d = n.locale) == null ? void 0 : d.options) == null ? void 0 : g.firstWeekContainsDate) ?? 1, a = ot(t, e), s = S((e == null ? void 0 : e.in) || t, 0);
556
- return s.setFullYear(a, 0, r), s.setHours(0, 0, 0, 0), F(s, e);
555
+ const n = R(), r = (e == null ? void 0 : e.firstWeekContainsDate) ?? ((o = (c = e == null ? void 0 : e.locale) == null ? void 0 : c.options) == null ? void 0 : o.firstWeekContainsDate) ?? n.firstWeekContainsDate ?? ((g = (d = n.locale) == null ? void 0 : d.options) == null ? void 0 : g.firstWeekContainsDate) ?? 1, a = ot(t, e), s = S((e == null ? void 0 : e.in) || t, 0);
556
+ return s.setFullYear(a, 0, r), s.setHours(0, 0, 0, 0), H(s, e);
557
557
  }
558
558
  function ct(t, e) {
559
- const n = v(t, e == null ? void 0 : e.in), r = +F(n, e) - +se(n, e);
559
+ const n = v(t, e == null ? void 0 : e.in), r = +H(n, e) - +se(n, e);
560
560
  return Math.round(r / at) + 1;
561
561
  }
562
562
  function l(t, e) {
@@ -1190,7 +1190,7 @@ function me(t, e, n) {
1190
1190
  const ge = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, ye = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, pe = /^'([^]*?)'?$/, we = /''/g, be = /[a-zA-Z]/;
1191
1191
  function ke(t, e, n) {
1192
1192
  var g, y, f, x;
1193
- const r = L(), a = r.locale ?? ne, s = r.firstWeekContainsDate ?? ((y = (g = r.locale) == null ? void 0 : g.options) == null ? void 0 : y.firstWeekContainsDate) ?? 1, i = r.weekStartsOn ?? ((x = (f = r.locale) == null ? void 0 : f.options) == null ? void 0 : x.weekStartsOn) ?? 0, c = v(t, n == null ? void 0 : n.in);
1193
+ const r = R(), a = r.locale ?? ne, s = r.firstWeekContainsDate ?? ((y = (g = r.locale) == null ? void 0 : g.options) == null ? void 0 : y.firstWeekContainsDate) ?? 1, i = r.weekStartsOn ?? ((x = (f = r.locale) == null ? void 0 : f.options) == null ? void 0 : x.weekStartsOn) ?? 0, c = v(t, n == null ? void 0 : n.in);
1194
1194
  if (!vt(c))
1195
1195
  throw new RangeError("Invalid time value");
1196
1196
  let o = e.match(ye).map((p) => {
@@ -1236,17 +1236,17 @@ function De(t, e) {
1236
1236
  const n = v(t, e == null ? void 0 : e.in).getDay();
1237
1237
  return n === 0 ? 7 : n;
1238
1238
  }
1239
- const j = {}, Y = {};
1240
- function A(t, e) {
1239
+ const j = {}, A = {};
1240
+ function F(t, e) {
1241
1241
  try {
1242
1242
  const r = (j[t] || (j[t] = new Intl.DateTimeFormat("en-GB", {
1243
1243
  timeZone: t,
1244
1244
  hour: "numeric",
1245
1245
  timeZoneName: "longOffset"
1246
1246
  }).format))(e).split("GMT")[1] || "";
1247
- return r in Y ? Y[r] : nt(r, r.split(":"));
1247
+ return r in A ? A[r] : nt(r, r.split(":"));
1248
1248
  } catch {
1249
- if (t in Y) return Y[t];
1249
+ if (t in A) return A[t];
1250
1250
  const n = t == null ? void 0 : t.match(Se);
1251
1251
  return n ? nt(t, n.slice(1)) : NaN;
1252
1252
  }
@@ -1254,12 +1254,12 @@ function A(t, e) {
1254
1254
  const Se = /([+-]\d\d):?(\d\d)?/;
1255
1255
  function nt(t, e) {
1256
1256
  const n = +e[0], r = +(e[1] || 0);
1257
- return Y[t] = n > 0 ? n * 60 + r : n * 60 - r;
1257
+ return A[t] = n > 0 ? n * 60 + r : n * 60 - r;
1258
1258
  }
1259
1259
  class M extends Date {
1260
1260
  //#region static
1261
1261
  constructor(...e) {
1262
- super(), e.length > 1 && typeof e[e.length - 1] == "string" && (this.timeZone = e.pop()), this.internal = /* @__PURE__ */ new Date(), isNaN(A(this.timeZone, this)) ? this.setTime(NaN) : e.length ? typeof e[0] == "number" && (e.length === 1 || e.length === 2 && typeof e[1] != "number") ? this.setTime(e[0]) : typeof e[0] == "string" ? this.setTime(+new Date(e[0])) : e[0] instanceof Date ? this.setTime(+e[0]) : (this.setTime(+new Date(...e)), ut(this), G(this)) : this.setTime(Date.now());
1262
+ super(), e.length > 1 && typeof e[e.length - 1] == "string" && (this.timeZone = e.pop()), this.internal = /* @__PURE__ */ new Date(), isNaN(F(this.timeZone, this)) ? this.setTime(NaN) : e.length ? typeof e[0] == "number" && (e.length === 1 || e.length === 2 && typeof e[1] != "number") ? this.setTime(e[0]) : typeof e[0] == "string" ? this.setTime(+new Date(e[0])) : e[0] instanceof Date ? this.setTime(+e[0]) : (this.setTime(+new Date(...e)), ut(this), G(this)) : this.setTime(Date.now());
1263
1263
  }
1264
1264
  static tz(e, ...n) {
1265
1265
  return n.length ? new M(...n, e) : new M(Date.now(), e);
@@ -1270,7 +1270,7 @@ class M extends Date {
1270
1270
  return new M(+this, e);
1271
1271
  }
1272
1272
  getTimezoneOffset() {
1273
- return -A(this.timeZone, this);
1273
+ return -F(this.timeZone, this);
1274
1274
  }
1275
1275
  //#endregion
1276
1276
  //#region time
@@ -1303,16 +1303,16 @@ function Me(t) {
1303
1303
  Date.prototype.setFullYear.call(t, t.internal.getUTCFullYear(), t.internal.getUTCMonth(), t.internal.getUTCDate()), Date.prototype.setHours.call(t, t.internal.getUTCHours(), t.internal.getUTCMinutes(), t.internal.getUTCSeconds(), t.internal.getUTCMilliseconds()), ut(t);
1304
1304
  }
1305
1305
  function ut(t) {
1306
- const e = A(t.timeZone, t), n = /* @__PURE__ */ new Date(+t);
1306
+ const e = F(t.timeZone, t), n = /* @__PURE__ */ new Date(+t);
1307
1307
  n.setUTCHours(n.getUTCHours() - 1);
1308
1308
  const r = -(/* @__PURE__ */ new Date(+t)).getTimezoneOffset(), a = -(/* @__PURE__ */ new Date(+n)).getTimezoneOffset(), s = r - a, i = Date.prototype.getHours.apply(t) !== t.internal.getUTCHours();
1309
1309
  s && i && t.internal.setUTCMinutes(t.internal.getUTCMinutes() + s);
1310
1310
  const c = r - e;
1311
1311
  c && Date.prototype.setUTCMinutes.call(t, Date.prototype.getUTCMinutes.call(t) + c);
1312
- const o = A(t.timeZone, t), g = -(/* @__PURE__ */ new Date(+t)).getTimezoneOffset() - o, y = o !== e, f = g - c;
1312
+ const o = F(t.timeZone, t), g = -(/* @__PURE__ */ new Date(+t)).getTimezoneOffset() - o, y = o !== e, f = g - c;
1313
1313
  if (y && f) {
1314
1314
  Date.prototype.setUTCMinutes.call(t, Date.prototype.getUTCMinutes.call(t) + f);
1315
- const x = A(t.timeZone, t), p = o - x;
1315
+ const x = F(t.timeZone, t), p = o - x;
1316
1316
  p && (t.internal.setUTCMinutes(t.internal.getUTCMinutes() + p), Date.prototype.setUTCMinutes.call(t, Date.prototype.getUTCMinutes.call(t) + p));
1317
1317
  }
1318
1318
  }
@@ -1382,12 +1382,12 @@ window.pktTz = window.pktTz === void 0 ? "Europe/Oslo" : window.pktTz;
1382
1382
  const w = (t) => t.toISOString().split("T")[0], He = (t) => {
1383
1383
  if (!t)
1384
1384
  return null;
1385
- const e = I(new T(t, window.pktTz), 12);
1385
+ const e = W(new T(t, window.pktTz), 12);
1386
1386
  return isNaN(e.getTime()) ? null : e;
1387
1387
  }, _e = (t, e) => {
1388
1388
  const n = b(t);
1389
1389
  return isNaN(n.getTime()) ? "" : ke(n, e);
1390
- }, b = (t = "") => I(t === "" || !t ? new T(/* @__PURE__ */ new Date(), window.pktTz) : new T(t, window.pktTz), 12), P = (t, e, n = 1) => I(new T(t, e, n, window.pktTz), 12), Te = (t) => new Intl.DateTimeFormat("no", { dateStyle: "full", timeZone: window.pktTz }).format(t), Oe = "pkt-calendar", Pe = {
1390
+ }, b = (t = "") => W(t === "" || !t ? new T(/* @__PURE__ */ new Date(), window.pktTz) : new T(t, window.pktTz), 12), P = (t, e, n = 1) => W(new T(t, e, n, window.pktTz), 12), Te = (t) => new Intl.DateTimeFormat("no", { dateStyle: "full", timeZone: window.pktTz }).format(t), Oe = "pkt-calendar", Pe = {
1391
1391
  id: {
1392
1392
  type: "string",
1393
1393
  name: "ID",
@@ -1565,7 +1565,7 @@ let u = class extends ht {
1565
1565
  render() {
1566
1566
  return D`
1567
1567
  <div
1568
- class="pkt-calendar ${this.weeknumbers ? "pkt-cal-weeknumbers" : _}"
1568
+ class="pkt-calendar ${this.weeknumbers ? "pkt-cal-weeknumbers" : I}"
1569
1569
  @focusout=${this.closeEvent}
1570
1570
  @keydown=${(t) => {
1571
1571
  t.key === "Escape" && (t.preventDefault(), this.close());
@@ -1580,7 +1580,7 @@ let u = class extends ht {
1580
1580
  (t.key === "Enter" || t.key === " ") && (t.preventDefault(), this.isNextMonthAllowed() && this.prevMonth());
1581
1581
  }}
1582
1582
  class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only ${this.isPrevMonthAllowed() ? "" : "pkt-hide"}"
1583
- .data-disabled=${this.isPrevMonthAllowed() ? _ : "disabled"}
1583
+ .data-disabled=${this.isPrevMonthAllowed() ? I : "disabled"}
1584
1584
  ?aria-disabled=${!this.isPrevMonthAllowed()}
1585
1585
  tabindex=${this.isPrevMonthAllowed() ? "0" : "-1"}
1586
1586
  >
@@ -1597,7 +1597,7 @@ let u = class extends ht {
1597
1597
  (t.key === "Enter" || t.key === " ") && (t.preventDefault(), this.isNextMonthAllowed() && this.nextMonth());
1598
1598
  }}
1599
1599
  class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only ${this.isNextMonthAllowed() ? "" : "pkt-hide"}"
1600
- .data-disabled=${this.isNextMonthAllowed() ? _ : "disabled"}
1600
+ .data-disabled=${this.isNextMonthAllowed() ? I : "disabled"}
1601
1601
  ?aria-disabled=${!this.isNextMonthAllowed()}
1602
1602
  tabindex=${this.isNextMonthAllowed() ? "0" : "-1"}
1603
1603
  >
@@ -1693,7 +1693,7 @@ let u = class extends ht {
1693
1693
  }}
1694
1694
  aria-label="${c}"
1695
1695
  tabindex=${(y = this.selectableDates.find((f) => f.currentDateISO === a)) == null ? void 0 : y.tabindex}
1696
- data-disabled=${o ? "disabled" : _}
1696
+ data-disabled=${o ? "disabled" : I}
1697
1697
  data-date=${a}
1698
1698
  @keydown=${(f) => {
1699
1699
  (f.key === "Enter" || f.key === " ") && (f.preventDefault(), this.handleDateSelect(r));
@@ -1746,7 +1746,7 @@ let u = class extends ht {
1746
1746
  return d;
1747
1747
  }
1748
1748
  isExcluded(t, e) {
1749
- return this.excludeweekdays.includes(t.toString()) || this.earliest && e < b(this.earliest) || this.latest && e > b(this.latest) ? !0 : this.excludedates.some((n) => typeof n == "string" ? n === w(e) : n.toDateString() === e.toDateString());
1749
+ return this.excludeweekdays.includes(t.toString()) || this.earliest && W(e, 1) < b(this.earliest) || this.latest && W(e, -1) > b(this.latest) ? !0 : this.excludedates.some((n) => typeof n == "string" ? n === w(e) : n.toDateString() === e.toDateString());
1750
1750
  }
1751
1751
  isPrevMonthAllowed() {
1752
1752
  const t = P(this.year, this.month, 0);
@@ -1757,7 +1757,11 @@ let u = class extends ht {
1757
1757
  this.changeMonth(e, t);
1758
1758
  }
1759
1759
  isNextMonthAllowed() {
1760
- const t = P(this.year, this.month === 11 ? 0 : this.month + 1, 1);
1760
+ const t = P(
1761
+ this.month === 11 ? this.year + 1 : this.year,
1762
+ this.month === 11 ? 0 : this.month + 1,
1763
+ 1
1764
+ );
1761
1765
  return !(this.latest && b(this.latest) < t);
1762
1766
  }
1763
1767
  nextMonth() {
@@ -1849,7 +1853,7 @@ let u = class extends ht {
1849
1853
  }
1850
1854
  }
1851
1855
  closeEvent(t) {
1852
- this.contains(t.relatedTarget) || this.close();
1856
+ !this.contains(t.relatedTarget) && !t.target.classList.contains("pkt-hide") && this.close();
1853
1857
  }
1854
1858
  close() {
1855
1859
  this.dispatchEvent(
@@ -1877,7 +1881,7 @@ h([
1877
1881
  m({ type: Boolean })
1878
1882
  ], u.prototype, "withcontrols", 2);
1879
1883
  h([
1880
- m({ converter: R.csvToArray })
1884
+ m({ converter: L.csvToArray })
1881
1885
  ], u.prototype, "selected", 2);
1882
1886
  h([
1883
1887
  m({ type: String })
@@ -1886,13 +1890,13 @@ h([
1886
1890
  m({ type: String })
1887
1891
  ], u.prototype, "latest", 2);
1888
1892
  h([
1889
- m({ converter: R.stringsToDate })
1893
+ m({ converter: L.stringsToDate })
1890
1894
  ], u.prototype, "excludedates", 2);
1891
1895
  h([
1892
- m({ converter: R.csvToArray })
1896
+ m({ converter: L.csvToArray })
1893
1897
  ], u.prototype, "excludeweekdays", 2);
1894
1898
  h([
1895
- m({ converter: R.stringToDate })
1899
+ m({ converter: L.stringToDate })
1896
1900
  ], u.prototype, "currentmonth", 2);
1897
1901
  h([
1898
1902
  m({ type: Array })
@@ -1928,19 +1932,19 @@ h([
1928
1932
  m({ type: Date })
1929
1933
  ], u.prototype, "rangeHovered", 2);
1930
1934
  h([
1931
- H()
1935
+ _()
1932
1936
  ], u.prototype, "inRange", 2);
1933
1937
  h([
1934
- H()
1938
+ _()
1935
1939
  ], u.prototype, "focusedDate", 2);
1936
1940
  h([
1937
- H()
1941
+ _()
1938
1942
  ], u.prototype, "selectableDates", 2);
1939
1943
  h([
1940
- H()
1944
+ _()
1941
1945
  ], u.prototype, "currentmonthtouched", 2);
1942
1946
  h([
1943
- H()
1947
+ _()
1944
1948
  ], u.prototype, "tabIndexSet", 2);
1945
1949
  u = h([
1946
1950
  dt("pkt-calendar")
@@ -1,4 +1,4 @@
1
- "use strict";const o=require("./index-CBFF6OHE.cjs"),H=require("./converters-DhM11VlY.cjs"),ot=require("./custom-element-B-TlBwRu.cjs"),ct=require("./class-map-B9m-NycN.cjs");require("./index-CqWQt14b.cjs");const tt=6048e5,lt=864e5,ut=36e5,B=Symbol.for("constructDateFrom");function D(n,t){return typeof n=="function"?n(t):n&&typeof n=="object"&&B in n?n[B](t):n instanceof Date?new n.constructor(t):new Date(t)}function v(n,t){return D(t||n,n)}function q(n,t,e){const r=v(n,e==null?void 0:e.in);return isNaN(t)?D(n,NaN):(t&&r.setDate(r.getDate()+t),r)}function ht(n,t,e){return D(n,+v(n)+t)}function A(n,t,e){return ht(n,t*ut)}let dt={};function _(){return dt}function Y(n,t){var c,l,u,f;const e=_(),r=(t==null?void 0:t.weekStartsOn)??((l=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:l.weekStartsOn)??e.weekStartsOn??((f=(u=e.locale)==null?void 0:u.options)==null?void 0:f.weekStartsOn)??0,a=v(n,t==null?void 0:t.in),s=a.getDay(),i=(s<r?7:0)+s-r;return a.setDate(a.getDate()-i),a.setHours(0,0,0,0),a}function F(n,t){return Y(n,{...t,weekStartsOn:1})}function et(n,t){const e=v(n,t==null?void 0:t.in),r=e.getFullYear(),a=D(e,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const s=F(a),i=D(e,0);i.setFullYear(r,0,4),i.setHours(0,0,0,0);const c=F(i);return e.getTime()>=s.getTime()?r+1:e.getTime()>=c.getTime()?r:r-1}function Q(n){const t=v(n),e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),+n-+e}function nt(n,...t){const e=D.bind(null,t.find(r=>typeof r=="object"));return t.map(e)}function j(n,t){const e=v(n,t==null?void 0:t.in);return e.setHours(0,0,0,0),e}function ft(n,t,e){const[r,a]=nt(e==null?void 0:e.in,n,t),s=j(r),i=j(a),c=+s-Q(s),l=+i-Q(i);return Math.round((c-l)/lt)}function mt(n,t){const e=et(n,t),r=D(n,0);return r.setFullYear(e,0,4),r.setHours(0,0,0,0),F(r)}function gt(n){return n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]"}function yt(n){return!(!gt(n)&&typeof n!="number"||isNaN(+v(n)))}function pt(n,t){const[e,r]=nt(n,t.start,t.end);return{start:e,end:r}}function L(n,t){const{start:e,end:r}=pt(t==null?void 0:t.in,n);let a=+e>+r;const s=a?+e:+r,i=a?r:e;i.setHours(0,0,0,0);let c=1;const l=[];for(;+i<=s;)l.push(D(e,i)),i.setDate(i.getDate()+c),i.setHours(0,0,0,0);return a?l.reverse():l}function wt(n,t){const e=v(n,t==null?void 0:t.in);return e.setFullYear(e.getFullYear(),0,1),e.setHours(0,0,0,0),e}const bt={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},kt=(n,t,e)=>{let r;const a=bt[n];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"in "+r:r+" ago":r};function R(n){return(t={})=>{const e=t.width?String(t.width):n.defaultWidth;return n.formats[e]||n.formats[n.defaultWidth]}}const vt={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Dt={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},St={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Mt={date:R({formats:vt,defaultWidth:"full"}),time:R({formats:Dt,defaultWidth:"full"}),dateTime:R({formats:St,defaultWidth:"full"})},xt={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Tt=(n,t,e,r)=>xt[n];function $(n){return(t,e)=>{const r=e!=null&&e.context?String(e.context):"standalone";let a;if(r==="formatting"&&n.formattingValues){const i=n.defaultFormattingWidth||n.defaultWidth,c=e!=null&&e.width?String(e.width):i;a=n.formattingValues[c]||n.formattingValues[i]}else{const i=n.defaultWidth,c=e!=null&&e.width?String(e.width):n.defaultWidth;a=n.values[c]||n.values[i]}const s=n.argumentCallback?n.argumentCallback(t):t;return a[s]}}const Pt={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ot={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ct={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$t={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Et={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Wt={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Nt=(n,t)=>{const e=Number(n),r=e%100;if(r>20||r<10)switch(r%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},Yt={ordinalNumber:Nt,era:$({values:Pt,defaultWidth:"wide"}),quarter:$({values:Ot,defaultWidth:"wide",argumentCallback:n=>n-1}),month:$({values:Ct,defaultWidth:"wide"}),day:$({values:$t,defaultWidth:"wide"}),dayPeriod:$({values:Et,defaultWidth:"wide",formattingValues:Wt,defaultFormattingWidth:"wide"})};function E(n){return(t,e={})=>{const r=e.width,a=r&&n.matchPatterns[r]||n.matchPatterns[n.defaultMatchWidth],s=t.match(a);if(!s)return null;const i=s[0],c=r&&n.parsePatterns[r]||n.parsePatterns[n.defaultParseWidth],l=Array.isArray(c)?Ft(c,p=>p.test(i)):At(c,p=>p.test(i));let u;u=n.valueCallback?n.valueCallback(l):l,u=e.valueCallback?e.valueCallback(u):u;const f=t.slice(i.length);return{value:u,rest:f}}}function At(n,t){for(const e in n)if(Object.prototype.hasOwnProperty.call(n,e)&&t(n[e]))return e}function Ft(n,t){for(let e=0;e<n.length;e++)if(t(n[e]))return e}function Ht(n){return(t,e={})=>{const r=t.match(n.matchPattern);if(!r)return null;const a=r[0],s=t.match(n.parsePattern);if(!s)return null;let i=n.valueCallback?n.valueCallback(s[0]):s[0];i=e.valueCallback?e.valueCallback(i):i;const c=t.slice(a.length);return{value:i,rest:c}}}const _t=/^(\d+)(th|st|nd|rd)?/i,It=/\d+/i,qt={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Lt={any:[/^b/i,/^(a|c)/i]},Rt={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ut={any:[/1/i,/2/i,/3/i,/4/i]},zt={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Bt={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Qt={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},jt={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Gt={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Xt={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Vt={ordinalNumber:Ht({matchPattern:_t,parsePattern:It,valueCallback:n=>parseInt(n,10)}),era:E({matchPatterns:qt,defaultMatchWidth:"wide",parsePatterns:Lt,defaultParseWidth:"any"}),quarter:E({matchPatterns:Rt,defaultMatchWidth:"wide",parsePatterns:Ut,defaultParseWidth:"any",valueCallback:n=>n+1}),month:E({matchPatterns:zt,defaultMatchWidth:"wide",parsePatterns:Bt,defaultParseWidth:"any"}),day:E({matchPatterns:Qt,defaultMatchWidth:"wide",parsePatterns:jt,defaultParseWidth:"any"}),dayPeriod:E({matchPatterns:Gt,defaultMatchWidth:"any",parsePatterns:Xt,defaultParseWidth:"any"})},Jt={code:"en-US",formatDistance:kt,formatLong:Mt,formatRelative:Tt,localize:Yt,match:Vt,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Kt(n,t){const e=v(n,t==null?void 0:t.in);return ft(e,wt(e))+1}function Zt(n,t){const e=v(n,t==null?void 0:t.in),r=+F(e)-+mt(e);return Math.round(r/tt)+1}function rt(n,t){var f,p,w,m;const e=v(n,t==null?void 0:t.in),r=e.getFullYear(),a=_(),s=(t==null?void 0:t.firstWeekContainsDate)??((p=(f=t==null?void 0:t.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??a.firstWeekContainsDate??((m=(w=a.locale)==null?void 0:w.options)==null?void 0:m.firstWeekContainsDate)??1,i=D((t==null?void 0:t.in)||n,0);i.setFullYear(r+1,0,s),i.setHours(0,0,0,0);const c=Y(i,t),l=D((t==null?void 0:t.in)||n,0);l.setFullYear(r,0,s),l.setHours(0,0,0,0);const u=Y(l,t);return+e>=+c?r+1:+e>=+u?r:r-1}function te(n,t){var c,l,u,f;const e=_(),r=(t==null?void 0:t.firstWeekContainsDate)??((l=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:l.firstWeekContainsDate)??e.firstWeekContainsDate??((f=(u=e.locale)==null?void 0:u.options)==null?void 0:f.firstWeekContainsDate)??1,a=rt(n,t),s=D((t==null?void 0:t.in)||n,0);return s.setFullYear(a,0,r),s.setHours(0,0,0,0),Y(s,t)}function at(n,t){const e=v(n,t==null?void 0:t.in),r=+Y(e,t)-+te(e,t);return Math.round(r/tt)+1}function h(n,t){const e=n<0?"-":"",r=Math.abs(n).toString().padStart(t,"0");return e+r}const x={y(n,t){const e=n.getFullYear(),r=e>0?e:1-e;return h(t==="yy"?r%100:r,t.length)},M(n,t){const e=n.getMonth();return t==="M"?String(e+1):h(e+1,2)},d(n,t){return h(n.getDate(),t.length)},a(n,t){const e=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.toUpperCase();case"aaa":return e;case"aaaaa":return e[0];case"aaaa":default:return e==="am"?"a.m.":"p.m."}},h(n,t){return h(n.getHours()%12||12,t.length)},H(n,t){return h(n.getHours(),t.length)},m(n,t){return h(n.getMinutes(),t.length)},s(n,t){return h(n.getSeconds(),t.length)},S(n,t){const e=t.length,r=n.getMilliseconds(),a=Math.trunc(r*Math.pow(10,e-3));return h(a,t.length)}},C={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},G={G:function(n,t,e){const r=n.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return e.era(r,{width:"abbreviated"});case"GGGGG":return e.era(r,{width:"narrow"});case"GGGG":default:return e.era(r,{width:"wide"})}},y:function(n,t,e){if(t==="yo"){const r=n.getFullYear(),a=r>0?r:1-r;return e.ordinalNumber(a,{unit:"year"})}return x.y(n,t)},Y:function(n,t,e,r){const a=rt(n,r),s=a>0?a:1-a;if(t==="YY"){const i=s%100;return h(i,2)}return t==="Yo"?e.ordinalNumber(s,{unit:"year"}):h(s,t.length)},R:function(n,t){const e=et(n);return h(e,t.length)},u:function(n,t){const e=n.getFullYear();return h(e,t.length)},Q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return h(r,2);case"Qo":return e.ordinalNumber(r,{unit:"quarter"});case"QQQ":return e.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return e.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return e.quarter(r,{width:"wide",context:"formatting"})}},q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return h(r,2);case"qo":return e.ordinalNumber(r,{unit:"quarter"});case"qqq":return e.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return e.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return e.quarter(r,{width:"wide",context:"standalone"})}},M:function(n,t,e){const r=n.getMonth();switch(t){case"M":case"MM":return x.M(n,t);case"Mo":return e.ordinalNumber(r+1,{unit:"month"});case"MMM":return e.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return e.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return e.month(r,{width:"wide",context:"formatting"})}},L:function(n,t,e){const r=n.getMonth();switch(t){case"L":return String(r+1);case"LL":return h(r+1,2);case"Lo":return e.ordinalNumber(r+1,{unit:"month"});case"LLL":return e.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return e.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return e.month(r,{width:"wide",context:"standalone"})}},w:function(n,t,e,r){const a=at(n,r);return t==="wo"?e.ordinalNumber(a,{unit:"week"}):h(a,t.length)},I:function(n,t,e){const r=Zt(n);return t==="Io"?e.ordinalNumber(r,{unit:"week"}):h(r,t.length)},d:function(n,t,e){return t==="do"?e.ordinalNumber(n.getDate(),{unit:"date"}):x.d(n,t)},D:function(n,t,e){const r=Kt(n);return t==="Do"?e.ordinalNumber(r,{unit:"dayOfYear"}):h(r,t.length)},E:function(n,t,e){const r=n.getDay();switch(t){case"E":case"EE":case"EEE":return e.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return e.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return e.day(r,{width:"short",context:"formatting"});case"EEEE":default:return e.day(r,{width:"wide",context:"formatting"})}},e:function(n,t,e,r){const a=n.getDay(),s=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return h(s,2);case"eo":return e.ordinalNumber(s,{unit:"day"});case"eee":return e.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return e.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return e.day(a,{width:"short",context:"formatting"});case"eeee":default:return e.day(a,{width:"wide",context:"formatting"})}},c:function(n,t,e,r){const a=n.getDay(),s=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return h(s,t.length);case"co":return e.ordinalNumber(s,{unit:"day"});case"ccc":return e.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return e.day(a,{width:"narrow",context:"standalone"});case"cccccc":return e.day(a,{width:"short",context:"standalone"});case"cccc":default:return e.day(a,{width:"wide",context:"standalone"})}},i:function(n,t,e){const r=n.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return h(a,t.length);case"io":return e.ordinalNumber(a,{unit:"day"});case"iii":return e.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return e.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return e.day(r,{width:"short",context:"formatting"});case"iiii":default:return e.day(r,{width:"wide",context:"formatting"})}},a:function(n,t,e){const a=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(n,t,e){const r=n.getHours();let a;switch(r===12?a=C.noon:r===0?a=C.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(n,t,e){const r=n.getHours();let a;switch(r>=17?a=C.evening:r>=12?a=C.afternoon:r>=4?a=C.morning:a=C.night,t){case"B":case"BB":case"BBB":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(n,t,e){if(t==="ho"){let r=n.getHours()%12;return r===0&&(r=12),e.ordinalNumber(r,{unit:"hour"})}return x.h(n,t)},H:function(n,t,e){return t==="Ho"?e.ordinalNumber(n.getHours(),{unit:"hour"}):x.H(n,t)},K:function(n,t,e){const r=n.getHours()%12;return t==="Ko"?e.ordinalNumber(r,{unit:"hour"}):h(r,t.length)},k:function(n,t,e){let r=n.getHours();return r===0&&(r=24),t==="ko"?e.ordinalNumber(r,{unit:"hour"}):h(r,t.length)},m:function(n,t,e){return t==="mo"?e.ordinalNumber(n.getMinutes(),{unit:"minute"}):x.m(n,t)},s:function(n,t,e){return t==="so"?e.ordinalNumber(n.getSeconds(),{unit:"second"}):x.s(n,t)},S:function(n,t){return x.S(n,t)},X:function(n,t,e){const r=n.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return V(r);case"XXXX":case"XX":return O(r);case"XXXXX":case"XXX":default:return O(r,":")}},x:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"x":return V(r);case"xxxx":case"xx":return O(r);case"xxxxx":case"xxx":default:return O(r,":")}},O:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+X(r,":");case"OOOO":default:return"GMT"+O(r,":")}},z:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+X(r,":");case"zzzz":default:return"GMT"+O(r,":")}},t:function(n,t,e){const r=Math.trunc(+n/1e3);return h(r,t.length)},T:function(n,t,e){return h(+n,t.length)}};function X(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),a=Math.trunc(r/60),s=r%60;return s===0?e+String(a):e+String(a)+t+h(s,2)}function V(n,t){return n%60===0?(n>0?"-":"+")+h(Math.abs(n)/60,2):O(n,t)}function O(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),a=h(Math.trunc(r/60),2),s=h(r%60,2);return e+a+t+s}const J=(n,t)=>{switch(n){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},st=(n,t)=>{switch(n){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},ee=(n,t)=>{const e=n.match(/(P+)(p+)?/)||[],r=e[1],a=e[2];if(!a)return J(n,t);let s;switch(r){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",J(r,t)).replace("{{time}}",st(a,t))},ne={p:st,P:ee},re=/^D+$/,ae=/^Y+$/,se=["D","DD","YY","YYYY"];function ie(n){return re.test(n)}function oe(n){return ae.test(n)}function ce(n,t,e){const r=le(n,t,e);if(console.warn(r),se.includes(n))throw new RangeError(r)}function le(n,t,e){const r=n[0]==="Y"?"years":"days of the month";return`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${t}\`) for formatting ${r} to the input \`${e}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const ue=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,he=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,de=/^'([^]*?)'?$/,fe=/''/g,me=/[a-zA-Z]/;function ge(n,t,e){var f,p,w,m;const r=_(),a=r.locale??Jt,s=r.firstWeekContainsDate??((p=(f=r.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??1,i=r.weekStartsOn??((m=(w=r.locale)==null?void 0:w.options)==null?void 0:m.weekStartsOn)??0,c=v(n,e==null?void 0:e.in);if(!yt(c))throw new RangeError("Invalid time value");let l=t.match(he).map(g=>{const k=g[0];if(k==="p"||k==="P"){const I=ne[k];return I(g,a.formatLong)}return g}).join("").match(ue).map(g=>{if(g==="''")return{isToken:!1,value:"'"};const k=g[0];if(k==="'")return{isToken:!1,value:ye(g)};if(G[k])return{isToken:!0,value:g};if(k.match(me))throw new RangeError("Format string contains an unescaped latin alphabet character `"+k+"`");return{isToken:!1,value:g}});a.localize.preprocessor&&(l=a.localize.preprocessor(c,l));const u={firstWeekContainsDate:s,weekStartsOn:i,locale:a};return l.map(g=>{if(!g.isToken)return g.value;const k=g.value;(oe(k)||ie(k))&&ce(k,t,String(n));const I=G[k[0]];return I(c,k,a.localize,u)}).join("")}function ye(n){const t=n.match(de);return t?t[1].replace(fe,"'"):n}function pe(n,t){const e=v(n,t==null?void 0:t.in).getDay();return e===0?7:e}const U={},W={};function N(n,t){try{const r=(U[n]||(U[n]=new Intl.DateTimeFormat("en-GB",{timeZone:n,hour:"numeric",timeZoneName:"longOffset"}).format))(t).split("GMT")[1]||"";return r in W?W[r]:K(r,r.split(":"))}catch{if(n in W)return W[n];const e=n==null?void 0:n.match(we);return e?K(n,e.slice(1)):NaN}}const we=/([+-]\d\d):?(\d\d)?/;function K(n,t){const e=+t[0],r=+(t[1]||0);return W[n]=e>0?e*60+r:e*60-r}class S extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(N(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),it(this),z(this)):this.setTime(Date.now())}static tz(t,...e){return e.length?new S(...e,t):new S(Date.now(),t)}withTimeZone(t){return new S(+this,t)}getTimezoneOffset(){return-N(this.timeZone,this)}setTime(t){return Date.prototype.setTime.apply(this,arguments),z(this),+this}[Symbol.for("constructDateFrom")](t){return new S(+new Date(t),this.timeZone)}}const Z=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(n=>{if(!Z.test(n))return;const t=n.replace(Z,"$1UTC");S.prototype[t]&&(n.startsWith("get")?S.prototype[n]=function(){return this.internal[t]()}:(S.prototype[n]=function(){return Date.prototype[t].apply(this.internal,arguments),be(this),+this},S.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),z(this),+this}))});function z(n){n.internal.setTime(+n),n.internal.setUTCMinutes(n.internal.getUTCMinutes()-n.getTimezoneOffset())}function be(n){Date.prototype.setFullYear.call(n,n.internal.getUTCFullYear(),n.internal.getUTCMonth(),n.internal.getUTCDate()),Date.prototype.setHours.call(n,n.internal.getUTCHours(),n.internal.getUTCMinutes(),n.internal.getUTCSeconds(),n.internal.getUTCMilliseconds()),it(n)}function it(n){const t=N(n.timeZone,n),e=new Date(+n);e.setUTCHours(e.getUTCHours()-1);const r=-new Date(+n).getTimezoneOffset(),a=-new Date(+e).getTimezoneOffset(),s=r-a,i=Date.prototype.getHours.apply(n)!==n.internal.getUTCHours();s&&i&&n.internal.setUTCMinutes(n.internal.getUTCMinutes()+s);const c=r-t;c&&Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+c);const l=N(n.timeZone,n),f=-new Date(+n).getTimezoneOffset()-l,p=l!==t,w=f-c;if(p&&w){Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+w);const m=N(n.timeZone,n),g=l-m;g&&(n.internal.setUTCMinutes(n.internal.getUTCMinutes()+g),Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+g))}}class M extends S{static tz(t,...e){return e.length?new M(...e,t):new M(Date.now(),t)}toISOString(){const[t,e,r]=this.tzComponents(),a=`${t}${e}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,e,r,a]=this.internal.toUTCString().split(" ");return`${t==null?void 0:t.slice(0,-1)} ${r} ${e} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[e,r,a]=this.tzComponents();return`${t} GMT${e}${r}${a} (${ke(this.timeZone,this)})`}toLocaleString(t,e){return Date.prototype.toLocaleString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}toLocaleDateString(t,e){return Date.prototype.toLocaleDateString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}toLocaleTimeString(t,e){return Date.prototype.toLocaleTimeString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),e=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[e,r,a]}withTimeZone(t){return new M(+this,t)}[Symbol.for("constructDateFrom")](t){return new M(+new Date(t),this.timeZone)}}function ke(n,t){return new Intl.DateTimeFormat("en-GB",{timeZone:n,timeZoneName:"long"}).format(t).slice(12)}window.pktTz=window.pktTz===void 0?"Europe/Oslo":window.pktTz;const y=n=>n.toISOString().split("T")[0],ve=n=>{if(!n)return null;const t=A(new M(n,window.pktTz),12);return isNaN(t.getTime())?null:t},De=(n,t)=>{const e=b(n);return isNaN(e.getTime())?"":ge(e,t)},b=(n="")=>A(n===""||!n?new M(new Date,window.pktTz):new M(n,window.pktTz),12),T=(n,t,e=1)=>A(new M(n,t,e,window.pktTz),12),Se=n=>new Intl.DateTimeFormat("no",{dateStyle:"full",timeZone:window.pktTz}).format(n),Me="pkt-calendar",xe={id:{type:"string",name:"ID",description:"Unique identifier for the calendar"},currentmonth:{type:"date",converter:"stringToDate",description:"The current month to display"},selected:{type:"array",converter:"csvToArray",reflect:!0,items:{type:"date"},description:"Array of selected dates"},excludeweekdays:{type:"array",converter:"csvToArray",items:{type:"string"},description:"Array of weekdays (1-7) to exclude"},excludedates:{type:"array",converter:"stringsToDate",items:{type:"date"},description:"Array of specific dates to exclude"},earliest:{type:"date",converter:"stringToDate",default:null,description:"Earliest selectable date"},latest:{type:"date",converter:"stringToDate",default:null,description:"Latest selectable date"},weeknumbers:{type:"boolean",reflect:!0,default:!1,description:"Show week numbers in calendar"},withcontrols:{type:"boolean",reflect:!0,default:!1,description:"Show month and year navigation controls"},multiple:{type:"boolean",reflect:!0,default:!1,description:"Allow multiple date selection"},maxMultiple:{type:"number",default:4,description:"Maximum number of dates that can be selected"},range:{type:"boolean",reflect:!0,default:!1,description:"Allow date range selection"}},Te={"date-selected":{description:"Returns ISO formatted date string"}},P={name:Me,"css-class":"pkt-calendar",props:xe,events:Te};var Pe=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,d=(n,t,e,r)=>{for(var a=r>1?void 0:r?Oe(t,e):t,s=n.length-1,i;s>=0;s--)(i=n[s])&&(a=(r?i(t,e,a):i(a))||a);return r&&a&&Pe(t,e,a),a};exports.PktCalendar=class extends o.PktElement{constructor(){super(...arguments),this.multiple=P.props.multiple.default,this.maxMultiple=P.props.maxMultiple.default,this.range=P.props.range.default,this.weeknumbers=P.props.weeknumbers.default,this.withcontrols=P.props.withcontrols.default,this.selected=[],this.earliest=P.props.earliest.default,this.latest=P.props.latest.default,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=null,this.dayStrings=this.strings.dates.daysShort,this.dayStringsLong=this.strings.dates.days,this.monthStrings=this.strings.dates.months,this.weekString=this.strings.dates.week,this.prevMonthString=this.strings.dates.prevMonth,this.nextMonthString=this.strings.dates.nextMonth,this._selected=[],this.year=0,this.month=0,this.week=0,this.rangeHovered=null,this.inRange={},this.focusedDate=null,this.selectableDates=[],this.currentmonthtouched=!1,this.tabIndexSet=0}connectedCallback(){super.connectedCallback()}disconnectedCallback(){this.removeEventListener("keydown",this.handleKeydown),super.disconnectedCallback()}attributeChangedCallback(t,e,r){t==="selected"&&r&&this.convertSelected(),super.attributeChangedCallback(t,e,r)}updated(t){t.has("selected")&&this.convertSelected(),super.updated(t)}firstUpdated(t){this.addEventListener("keydown",this.handleKeydown)}convertSelected(){if(typeof this.selected=="string"&&(this.selected=this.selected.split(",")),this.selected.length===1&&this.selected[0]===""&&(this.selected=[]),this._selected=this.selected.map(t=>b(t)),this.range&&this.selected.length===2){const t=L({start:b(this.selected[0]),end:b(this.selected[1])});if(this.inRange={},Array.isArray(t)&&t.length){const e={};for(let r=0;r<t.length;r++)e[y(t[r])]=this.isInRange(t[r]);this.inRange=e}}this.setCurrentMonth()}setCurrentMonth(){if(this.currentmonth===null&&!this.currentmonthtouched){this.currentmonthtouched=!0;return}this.selected.length&&this.selected[0]!==""?this.currentmonth=b(this.selected[this.selected.length-1]):this.currentmonth===null&&(this.currentmonth=b()),this.year=this.currentmonth.getFullYear(),this.month=this.currentmonth.getMonth()}handleKeydown(t){switch(t.key){case"ArrowLeft":this.handleArrowKey(t,-1);break;case"ArrowRight":this.handleArrowKey(t,1);break;case"ArrowUp":this.handleArrowKey(t,-7);break;case"ArrowDown":this.handleArrowKey(t,7);break}}handleArrowKey(t,e){var s,i,c;if(((s=t.target)==null?void 0:s.nodeName)==="INPUT"||((i=t.target)==null?void 0:i.nodeName)==="SELECT"||((c=t.target)==null?void 0:c.nodeName)==="BUTTON")return;t.preventDefault(),this.focusedDate||this.focusOnCurrentDate();const r=this.focusedDate?b(this.focusedDate):T(this.year,this.month,1);let a=q(r,e);if(a){let l=this.querySelector(`div[data-date="${y(a)}"]`);if(l instanceof HTMLDivElement){if(l.dataset.disabled){a=q(a,e);let u=this.querySelector(`div[data-date="${y(a)}"]`);for(;u&&u instanceof HTMLDivElement&&u.dataset.disabled;)a=q(a,e),u=this.querySelector(`div[data-date="${y(a)}"]`);l=u}l instanceof HTMLDivElement&&!l.dataset.disabled&&(this.focusedDate=y(a),l.focus())}}}render(){return o.x`
1
+ "use strict";const o=require("./index-CBFF6OHE.cjs"),H=require("./converters-DhM11VlY.cjs"),ot=require("./custom-element-B-TlBwRu.cjs"),ct=require("./class-map-B9m-NycN.cjs");require("./index-CqWQt14b.cjs");const tt=6048e5,lt=864e5,ut=36e5,B=Symbol.for("constructDateFrom");function D(n,t){return typeof n=="function"?n(t):n&&typeof n=="object"&&B in n?n[B](t):n instanceof Date?new n.constructor(t):new Date(t)}function v(n,t){return D(t||n,n)}function q(n,t,e){const r=v(n,e==null?void 0:e.in);return isNaN(t)?D(n,NaN):(t&&r.setDate(r.getDate()+t),r)}function ht(n,t,e){return D(n,+v(n)+t)}function $(n,t,e){return ht(n,t*ut)}let dt={};function _(){return dt}function A(n,t){var c,l,u,f;const e=_(),r=(t==null?void 0:t.weekStartsOn)??((l=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:l.weekStartsOn)??e.weekStartsOn??((f=(u=e.locale)==null?void 0:u.options)==null?void 0:f.weekStartsOn)??0,a=v(n,t==null?void 0:t.in),s=a.getDay(),i=(s<r?7:0)+s-r;return a.setDate(a.getDate()-i),a.setHours(0,0,0,0),a}function F(n,t){return A(n,{...t,weekStartsOn:1})}function et(n,t){const e=v(n,t==null?void 0:t.in),r=e.getFullYear(),a=D(e,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const s=F(a),i=D(e,0);i.setFullYear(r,0,4),i.setHours(0,0,0,0);const c=F(i);return e.getTime()>=s.getTime()?r+1:e.getTime()>=c.getTime()?r:r-1}function Q(n){const t=v(n),e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),+n-+e}function nt(n,...t){const e=D.bind(null,t.find(r=>typeof r=="object"));return t.map(e)}function j(n,t){const e=v(n,t==null?void 0:t.in);return e.setHours(0,0,0,0),e}function ft(n,t,e){const[r,a]=nt(e==null?void 0:e.in,n,t),s=j(r),i=j(a),c=+s-Q(s),l=+i-Q(i);return Math.round((c-l)/lt)}function mt(n,t){const e=et(n,t),r=D(n,0);return r.setFullYear(e,0,4),r.setHours(0,0,0,0),F(r)}function gt(n){return n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]"}function yt(n){return!(!gt(n)&&typeof n!="number"||isNaN(+v(n)))}function pt(n,t){const[e,r]=nt(n,t.start,t.end);return{start:e,end:r}}function L(n,t){const{start:e,end:r}=pt(t==null?void 0:t.in,n);let a=+e>+r;const s=a?+e:+r,i=a?r:e;i.setHours(0,0,0,0);let c=1;const l=[];for(;+i<=s;)l.push(D(e,i)),i.setDate(i.getDate()+c),i.setHours(0,0,0,0);return a?l.reverse():l}function wt(n,t){const e=v(n,t==null?void 0:t.in);return e.setFullYear(e.getFullYear(),0,1),e.setHours(0,0,0,0),e}const bt={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},kt=(n,t,e)=>{let r;const a=bt[n];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"in "+r:r+" ago":r};function R(n){return(t={})=>{const e=t.width?String(t.width):n.defaultWidth;return n.formats[e]||n.formats[n.defaultWidth]}}const vt={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Dt={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},St={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Mt={date:R({formats:vt,defaultWidth:"full"}),time:R({formats:Dt,defaultWidth:"full"}),dateTime:R({formats:St,defaultWidth:"full"})},xt={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Tt=(n,t,e,r)=>xt[n];function E(n){return(t,e)=>{const r=e!=null&&e.context?String(e.context):"standalone";let a;if(r==="formatting"&&n.formattingValues){const i=n.defaultFormattingWidth||n.defaultWidth,c=e!=null&&e.width?String(e.width):i;a=n.formattingValues[c]||n.formattingValues[i]}else{const i=n.defaultWidth,c=e!=null&&e.width?String(e.width):n.defaultWidth;a=n.values[c]||n.values[i]}const s=n.argumentCallback?n.argumentCallback(t):t;return a[s]}}const Pt={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ot={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ct={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$t={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Et={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Wt={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Nt=(n,t)=>{const e=Number(n),r=e%100;if(r>20||r<10)switch(r%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},Yt={ordinalNumber:Nt,era:E({values:Pt,defaultWidth:"wide"}),quarter:E({values:Ot,defaultWidth:"wide",argumentCallback:n=>n-1}),month:E({values:Ct,defaultWidth:"wide"}),day:E({values:$t,defaultWidth:"wide"}),dayPeriod:E({values:Et,defaultWidth:"wide",formattingValues:Wt,defaultFormattingWidth:"wide"})};function W(n){return(t,e={})=>{const r=e.width,a=r&&n.matchPatterns[r]||n.matchPatterns[n.defaultMatchWidth],s=t.match(a);if(!s)return null;const i=s[0],c=r&&n.parsePatterns[r]||n.parsePatterns[n.defaultParseWidth],l=Array.isArray(c)?Ft(c,p=>p.test(i)):At(c,p=>p.test(i));let u;u=n.valueCallback?n.valueCallback(l):l,u=e.valueCallback?e.valueCallback(u):u;const f=t.slice(i.length);return{value:u,rest:f}}}function At(n,t){for(const e in n)if(Object.prototype.hasOwnProperty.call(n,e)&&t(n[e]))return e}function Ft(n,t){for(let e=0;e<n.length;e++)if(t(n[e]))return e}function Ht(n){return(t,e={})=>{const r=t.match(n.matchPattern);if(!r)return null;const a=r[0],s=t.match(n.parsePattern);if(!s)return null;let i=n.valueCallback?n.valueCallback(s[0]):s[0];i=e.valueCallback?e.valueCallback(i):i;const c=t.slice(a.length);return{value:i,rest:c}}}const _t=/^(\d+)(th|st|nd|rd)?/i,It=/\d+/i,qt={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Lt={any:[/^b/i,/^(a|c)/i]},Rt={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ut={any:[/1/i,/2/i,/3/i,/4/i]},zt={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Bt={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Qt={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},jt={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Gt={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Xt={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Vt={ordinalNumber:Ht({matchPattern:_t,parsePattern:It,valueCallback:n=>parseInt(n,10)}),era:W({matchPatterns:qt,defaultMatchWidth:"wide",parsePatterns:Lt,defaultParseWidth:"any"}),quarter:W({matchPatterns:Rt,defaultMatchWidth:"wide",parsePatterns:Ut,defaultParseWidth:"any",valueCallback:n=>n+1}),month:W({matchPatterns:zt,defaultMatchWidth:"wide",parsePatterns:Bt,defaultParseWidth:"any"}),day:W({matchPatterns:Qt,defaultMatchWidth:"wide",parsePatterns:jt,defaultParseWidth:"any"}),dayPeriod:W({matchPatterns:Gt,defaultMatchWidth:"any",parsePatterns:Xt,defaultParseWidth:"any"})},Jt={code:"en-US",formatDistance:kt,formatLong:Mt,formatRelative:Tt,localize:Yt,match:Vt,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Kt(n,t){const e=v(n,t==null?void 0:t.in);return ft(e,wt(e))+1}function Zt(n,t){const e=v(n,t==null?void 0:t.in),r=+F(e)-+mt(e);return Math.round(r/tt)+1}function rt(n,t){var f,p,w,m;const e=v(n,t==null?void 0:t.in),r=e.getFullYear(),a=_(),s=(t==null?void 0:t.firstWeekContainsDate)??((p=(f=t==null?void 0:t.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??a.firstWeekContainsDate??((m=(w=a.locale)==null?void 0:w.options)==null?void 0:m.firstWeekContainsDate)??1,i=D((t==null?void 0:t.in)||n,0);i.setFullYear(r+1,0,s),i.setHours(0,0,0,0);const c=A(i,t),l=D((t==null?void 0:t.in)||n,0);l.setFullYear(r,0,s),l.setHours(0,0,0,0);const u=A(l,t);return+e>=+c?r+1:+e>=+u?r:r-1}function te(n,t){var c,l,u,f;const e=_(),r=(t==null?void 0:t.firstWeekContainsDate)??((l=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:l.firstWeekContainsDate)??e.firstWeekContainsDate??((f=(u=e.locale)==null?void 0:u.options)==null?void 0:f.firstWeekContainsDate)??1,a=rt(n,t),s=D((t==null?void 0:t.in)||n,0);return s.setFullYear(a,0,r),s.setHours(0,0,0,0),A(s,t)}function at(n,t){const e=v(n,t==null?void 0:t.in),r=+A(e,t)-+te(e,t);return Math.round(r/tt)+1}function h(n,t){const e=n<0?"-":"",r=Math.abs(n).toString().padStart(t,"0");return e+r}const x={y(n,t){const e=n.getFullYear(),r=e>0?e:1-e;return h(t==="yy"?r%100:r,t.length)},M(n,t){const e=n.getMonth();return t==="M"?String(e+1):h(e+1,2)},d(n,t){return h(n.getDate(),t.length)},a(n,t){const e=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.toUpperCase();case"aaa":return e;case"aaaaa":return e[0];case"aaaa":default:return e==="am"?"a.m.":"p.m."}},h(n,t){return h(n.getHours()%12||12,t.length)},H(n,t){return h(n.getHours(),t.length)},m(n,t){return h(n.getMinutes(),t.length)},s(n,t){return h(n.getSeconds(),t.length)},S(n,t){const e=t.length,r=n.getMilliseconds(),a=Math.trunc(r*Math.pow(10,e-3));return h(a,t.length)}},C={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},G={G:function(n,t,e){const r=n.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return e.era(r,{width:"abbreviated"});case"GGGGG":return e.era(r,{width:"narrow"});case"GGGG":default:return e.era(r,{width:"wide"})}},y:function(n,t,e){if(t==="yo"){const r=n.getFullYear(),a=r>0?r:1-r;return e.ordinalNumber(a,{unit:"year"})}return x.y(n,t)},Y:function(n,t,e,r){const a=rt(n,r),s=a>0?a:1-a;if(t==="YY"){const i=s%100;return h(i,2)}return t==="Yo"?e.ordinalNumber(s,{unit:"year"}):h(s,t.length)},R:function(n,t){const e=et(n);return h(e,t.length)},u:function(n,t){const e=n.getFullYear();return h(e,t.length)},Q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return h(r,2);case"Qo":return e.ordinalNumber(r,{unit:"quarter"});case"QQQ":return e.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return e.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return e.quarter(r,{width:"wide",context:"formatting"})}},q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return h(r,2);case"qo":return e.ordinalNumber(r,{unit:"quarter"});case"qqq":return e.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return e.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return e.quarter(r,{width:"wide",context:"standalone"})}},M:function(n,t,e){const r=n.getMonth();switch(t){case"M":case"MM":return x.M(n,t);case"Mo":return e.ordinalNumber(r+1,{unit:"month"});case"MMM":return e.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return e.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return e.month(r,{width:"wide",context:"formatting"})}},L:function(n,t,e){const r=n.getMonth();switch(t){case"L":return String(r+1);case"LL":return h(r+1,2);case"Lo":return e.ordinalNumber(r+1,{unit:"month"});case"LLL":return e.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return e.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return e.month(r,{width:"wide",context:"standalone"})}},w:function(n,t,e,r){const a=at(n,r);return t==="wo"?e.ordinalNumber(a,{unit:"week"}):h(a,t.length)},I:function(n,t,e){const r=Zt(n);return t==="Io"?e.ordinalNumber(r,{unit:"week"}):h(r,t.length)},d:function(n,t,e){return t==="do"?e.ordinalNumber(n.getDate(),{unit:"date"}):x.d(n,t)},D:function(n,t,e){const r=Kt(n);return t==="Do"?e.ordinalNumber(r,{unit:"dayOfYear"}):h(r,t.length)},E:function(n,t,e){const r=n.getDay();switch(t){case"E":case"EE":case"EEE":return e.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return e.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return e.day(r,{width:"short",context:"formatting"});case"EEEE":default:return e.day(r,{width:"wide",context:"formatting"})}},e:function(n,t,e,r){const a=n.getDay(),s=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return h(s,2);case"eo":return e.ordinalNumber(s,{unit:"day"});case"eee":return e.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return e.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return e.day(a,{width:"short",context:"formatting"});case"eeee":default:return e.day(a,{width:"wide",context:"formatting"})}},c:function(n,t,e,r){const a=n.getDay(),s=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return h(s,t.length);case"co":return e.ordinalNumber(s,{unit:"day"});case"ccc":return e.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return e.day(a,{width:"narrow",context:"standalone"});case"cccccc":return e.day(a,{width:"short",context:"standalone"});case"cccc":default:return e.day(a,{width:"wide",context:"standalone"})}},i:function(n,t,e){const r=n.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return h(a,t.length);case"io":return e.ordinalNumber(a,{unit:"day"});case"iii":return e.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return e.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return e.day(r,{width:"short",context:"formatting"});case"iiii":default:return e.day(r,{width:"wide",context:"formatting"})}},a:function(n,t,e){const a=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(n,t,e){const r=n.getHours();let a;switch(r===12?a=C.noon:r===0?a=C.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(n,t,e){const r=n.getHours();let a;switch(r>=17?a=C.evening:r>=12?a=C.afternoon:r>=4?a=C.morning:a=C.night,t){case"B":case"BB":case"BBB":return e.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return e.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return e.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(n,t,e){if(t==="ho"){let r=n.getHours()%12;return r===0&&(r=12),e.ordinalNumber(r,{unit:"hour"})}return x.h(n,t)},H:function(n,t,e){return t==="Ho"?e.ordinalNumber(n.getHours(),{unit:"hour"}):x.H(n,t)},K:function(n,t,e){const r=n.getHours()%12;return t==="Ko"?e.ordinalNumber(r,{unit:"hour"}):h(r,t.length)},k:function(n,t,e){let r=n.getHours();return r===0&&(r=24),t==="ko"?e.ordinalNumber(r,{unit:"hour"}):h(r,t.length)},m:function(n,t,e){return t==="mo"?e.ordinalNumber(n.getMinutes(),{unit:"minute"}):x.m(n,t)},s:function(n,t,e){return t==="so"?e.ordinalNumber(n.getSeconds(),{unit:"second"}):x.s(n,t)},S:function(n,t){return x.S(n,t)},X:function(n,t,e){const r=n.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return V(r);case"XXXX":case"XX":return O(r);case"XXXXX":case"XXX":default:return O(r,":")}},x:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"x":return V(r);case"xxxx":case"xx":return O(r);case"xxxxx":case"xxx":default:return O(r,":")}},O:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+X(r,":");case"OOOO":default:return"GMT"+O(r,":")}},z:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+X(r,":");case"zzzz":default:return"GMT"+O(r,":")}},t:function(n,t,e){const r=Math.trunc(+n/1e3);return h(r,t.length)},T:function(n,t,e){return h(+n,t.length)}};function X(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),a=Math.trunc(r/60),s=r%60;return s===0?e+String(a):e+String(a)+t+h(s,2)}function V(n,t){return n%60===0?(n>0?"-":"+")+h(Math.abs(n)/60,2):O(n,t)}function O(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),a=h(Math.trunc(r/60),2),s=h(r%60,2);return e+a+t+s}const J=(n,t)=>{switch(n){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},st=(n,t)=>{switch(n){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},ee=(n,t)=>{const e=n.match(/(P+)(p+)?/)||[],r=e[1],a=e[2];if(!a)return J(n,t);let s;switch(r){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",J(r,t)).replace("{{time}}",st(a,t))},ne={p:st,P:ee},re=/^D+$/,ae=/^Y+$/,se=["D","DD","YY","YYYY"];function ie(n){return re.test(n)}function oe(n){return ae.test(n)}function ce(n,t,e){const r=le(n,t,e);if(console.warn(r),se.includes(n))throw new RangeError(r)}function le(n,t,e){const r=n[0]==="Y"?"years":"days of the month";return`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${t}\`) for formatting ${r} to the input \`${e}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const ue=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,he=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,de=/^'([^]*?)'?$/,fe=/''/g,me=/[a-zA-Z]/;function ge(n,t,e){var f,p,w,m;const r=_(),a=r.locale??Jt,s=r.firstWeekContainsDate??((p=(f=r.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??1,i=r.weekStartsOn??((m=(w=r.locale)==null?void 0:w.options)==null?void 0:m.weekStartsOn)??0,c=v(n,e==null?void 0:e.in);if(!yt(c))throw new RangeError("Invalid time value");let l=t.match(he).map(g=>{const k=g[0];if(k==="p"||k==="P"){const I=ne[k];return I(g,a.formatLong)}return g}).join("").match(ue).map(g=>{if(g==="''")return{isToken:!1,value:"'"};const k=g[0];if(k==="'")return{isToken:!1,value:ye(g)};if(G[k])return{isToken:!0,value:g};if(k.match(me))throw new RangeError("Format string contains an unescaped latin alphabet character `"+k+"`");return{isToken:!1,value:g}});a.localize.preprocessor&&(l=a.localize.preprocessor(c,l));const u={firstWeekContainsDate:s,weekStartsOn:i,locale:a};return l.map(g=>{if(!g.isToken)return g.value;const k=g.value;(oe(k)||ie(k))&&ce(k,t,String(n));const I=G[k[0]];return I(c,k,a.localize,u)}).join("")}function ye(n){const t=n.match(de);return t?t[1].replace(fe,"'"):n}function pe(n,t){const e=v(n,t==null?void 0:t.in).getDay();return e===0?7:e}const U={},N={};function Y(n,t){try{const r=(U[n]||(U[n]=new Intl.DateTimeFormat("en-GB",{timeZone:n,hour:"numeric",timeZoneName:"longOffset"}).format))(t).split("GMT")[1]||"";return r in N?N[r]:K(r,r.split(":"))}catch{if(n in N)return N[n];const e=n==null?void 0:n.match(we);return e?K(n,e.slice(1)):NaN}}const we=/([+-]\d\d):?(\d\d)?/;function K(n,t){const e=+t[0],r=+(t[1]||0);return N[n]=e>0?e*60+r:e*60-r}class S extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Y(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),it(this),z(this)):this.setTime(Date.now())}static tz(t,...e){return e.length?new S(...e,t):new S(Date.now(),t)}withTimeZone(t){return new S(+this,t)}getTimezoneOffset(){return-Y(this.timeZone,this)}setTime(t){return Date.prototype.setTime.apply(this,arguments),z(this),+this}[Symbol.for("constructDateFrom")](t){return new S(+new Date(t),this.timeZone)}}const Z=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(n=>{if(!Z.test(n))return;const t=n.replace(Z,"$1UTC");S.prototype[t]&&(n.startsWith("get")?S.prototype[n]=function(){return this.internal[t]()}:(S.prototype[n]=function(){return Date.prototype[t].apply(this.internal,arguments),be(this),+this},S.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),z(this),+this}))});function z(n){n.internal.setTime(+n),n.internal.setUTCMinutes(n.internal.getUTCMinutes()-n.getTimezoneOffset())}function be(n){Date.prototype.setFullYear.call(n,n.internal.getUTCFullYear(),n.internal.getUTCMonth(),n.internal.getUTCDate()),Date.prototype.setHours.call(n,n.internal.getUTCHours(),n.internal.getUTCMinutes(),n.internal.getUTCSeconds(),n.internal.getUTCMilliseconds()),it(n)}function it(n){const t=Y(n.timeZone,n),e=new Date(+n);e.setUTCHours(e.getUTCHours()-1);const r=-new Date(+n).getTimezoneOffset(),a=-new Date(+e).getTimezoneOffset(),s=r-a,i=Date.prototype.getHours.apply(n)!==n.internal.getUTCHours();s&&i&&n.internal.setUTCMinutes(n.internal.getUTCMinutes()+s);const c=r-t;c&&Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+c);const l=Y(n.timeZone,n),f=-new Date(+n).getTimezoneOffset()-l,p=l!==t,w=f-c;if(p&&w){Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+w);const m=Y(n.timeZone,n),g=l-m;g&&(n.internal.setUTCMinutes(n.internal.getUTCMinutes()+g),Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+g))}}class M extends S{static tz(t,...e){return e.length?new M(...e,t):new M(Date.now(),t)}toISOString(){const[t,e,r]=this.tzComponents(),a=`${t}${e}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,e,r,a]=this.internal.toUTCString().split(" ");return`${t==null?void 0:t.slice(0,-1)} ${r} ${e} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[e,r,a]=this.tzComponents();return`${t} GMT${e}${r}${a} (${ke(this.timeZone,this)})`}toLocaleString(t,e){return Date.prototype.toLocaleString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}toLocaleDateString(t,e){return Date.prototype.toLocaleDateString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}toLocaleTimeString(t,e){return Date.prototype.toLocaleTimeString.call(this,t,{...e,timeZone:(e==null?void 0:e.timeZone)||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),e=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[e,r,a]}withTimeZone(t){return new M(+this,t)}[Symbol.for("constructDateFrom")](t){return new M(+new Date(t),this.timeZone)}}function ke(n,t){return new Intl.DateTimeFormat("en-GB",{timeZone:n,timeZoneName:"long"}).format(t).slice(12)}window.pktTz=window.pktTz===void 0?"Europe/Oslo":window.pktTz;const y=n=>n.toISOString().split("T")[0],ve=n=>{if(!n)return null;const t=$(new M(n,window.pktTz),12);return isNaN(t.getTime())?null:t},De=(n,t)=>{const e=b(n);return isNaN(e.getTime())?"":ge(e,t)},b=(n="")=>$(n===""||!n?new M(new Date,window.pktTz):new M(n,window.pktTz),12),T=(n,t,e=1)=>$(new M(n,t,e,window.pktTz),12),Se=n=>new Intl.DateTimeFormat("no",{dateStyle:"full",timeZone:window.pktTz}).format(n),Me="pkt-calendar",xe={id:{type:"string",name:"ID",description:"Unique identifier for the calendar"},currentmonth:{type:"date",converter:"stringToDate",description:"The current month to display"},selected:{type:"array",converter:"csvToArray",reflect:!0,items:{type:"date"},description:"Array of selected dates"},excludeweekdays:{type:"array",converter:"csvToArray",items:{type:"string"},description:"Array of weekdays (1-7) to exclude"},excludedates:{type:"array",converter:"stringsToDate",items:{type:"date"},description:"Array of specific dates to exclude"},earliest:{type:"date",converter:"stringToDate",default:null,description:"Earliest selectable date"},latest:{type:"date",converter:"stringToDate",default:null,description:"Latest selectable date"},weeknumbers:{type:"boolean",reflect:!0,default:!1,description:"Show week numbers in calendar"},withcontrols:{type:"boolean",reflect:!0,default:!1,description:"Show month and year navigation controls"},multiple:{type:"boolean",reflect:!0,default:!1,description:"Allow multiple date selection"},maxMultiple:{type:"number",default:4,description:"Maximum number of dates that can be selected"},range:{type:"boolean",reflect:!0,default:!1,description:"Allow date range selection"}},Te={"date-selected":{description:"Returns ISO formatted date string"}},P={name:Me,"css-class":"pkt-calendar",props:xe,events:Te};var Pe=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,d=(n,t,e,r)=>{for(var a=r>1?void 0:r?Oe(t,e):t,s=n.length-1,i;s>=0;s--)(i=n[s])&&(a=(r?i(t,e,a):i(a))||a);return r&&a&&Pe(t,e,a),a};exports.PktCalendar=class extends o.PktElement{constructor(){super(...arguments),this.multiple=P.props.multiple.default,this.maxMultiple=P.props.maxMultiple.default,this.range=P.props.range.default,this.weeknumbers=P.props.weeknumbers.default,this.withcontrols=P.props.withcontrols.default,this.selected=[],this.earliest=P.props.earliest.default,this.latest=P.props.latest.default,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=null,this.dayStrings=this.strings.dates.daysShort,this.dayStringsLong=this.strings.dates.days,this.monthStrings=this.strings.dates.months,this.weekString=this.strings.dates.week,this.prevMonthString=this.strings.dates.prevMonth,this.nextMonthString=this.strings.dates.nextMonth,this._selected=[],this.year=0,this.month=0,this.week=0,this.rangeHovered=null,this.inRange={},this.focusedDate=null,this.selectableDates=[],this.currentmonthtouched=!1,this.tabIndexSet=0}connectedCallback(){super.connectedCallback()}disconnectedCallback(){this.removeEventListener("keydown",this.handleKeydown),super.disconnectedCallback()}attributeChangedCallback(t,e,r){t==="selected"&&r&&this.convertSelected(),super.attributeChangedCallback(t,e,r)}updated(t){t.has("selected")&&this.convertSelected(),super.updated(t)}firstUpdated(t){this.addEventListener("keydown",this.handleKeydown)}convertSelected(){if(typeof this.selected=="string"&&(this.selected=this.selected.split(",")),this.selected.length===1&&this.selected[0]===""&&(this.selected=[]),this._selected=this.selected.map(t=>b(t)),this.range&&this.selected.length===2){const t=L({start:b(this.selected[0]),end:b(this.selected[1])});if(this.inRange={},Array.isArray(t)&&t.length){const e={};for(let r=0;r<t.length;r++)e[y(t[r])]=this.isInRange(t[r]);this.inRange=e}}this.setCurrentMonth()}setCurrentMonth(){if(this.currentmonth===null&&!this.currentmonthtouched){this.currentmonthtouched=!0;return}this.selected.length&&this.selected[0]!==""?this.currentmonth=b(this.selected[this.selected.length-1]):this.currentmonth===null&&(this.currentmonth=b()),this.year=this.currentmonth.getFullYear(),this.month=this.currentmonth.getMonth()}handleKeydown(t){switch(t.key){case"ArrowLeft":this.handleArrowKey(t,-1);break;case"ArrowRight":this.handleArrowKey(t,1);break;case"ArrowUp":this.handleArrowKey(t,-7);break;case"ArrowDown":this.handleArrowKey(t,7);break}}handleArrowKey(t,e){var s,i,c;if(((s=t.target)==null?void 0:s.nodeName)==="INPUT"||((i=t.target)==null?void 0:i.nodeName)==="SELECT"||((c=t.target)==null?void 0:c.nodeName)==="BUTTON")return;t.preventDefault(),this.focusedDate||this.focusOnCurrentDate();const r=this.focusedDate?b(this.focusedDate):T(this.year,this.month,1);let a=q(r,e);if(a){let l=this.querySelector(`div[data-date="${y(a)}"]`);if(l instanceof HTMLDivElement){if(l.dataset.disabled){a=q(a,e);let u=this.querySelector(`div[data-date="${y(a)}"]`);for(;u&&u instanceof HTMLDivElement&&u.dataset.disabled;)a=q(a,e),u=this.querySelector(`div[data-date="${y(a)}"]`);l=u}l instanceof HTMLDivElement&&!l.dataset.disabled&&(this.focusedDate=y(a),l.focus())}}}render(){return o.x`
2
2
  <div
3
3
  class="pkt-calendar ${this.weeknumbers?"pkt-cal-weeknumbers":o.E}"
4
4
  @focusout=${this.closeEvent}
@@ -105,4 +105,4 @@
105
105
  </div>
106
106
  </td>`),u++):(w.push(this.renderDayView(u,t,m)),u++);f.push(o.x`<tr class="pkt-cal-week-row" role="row">
107
107
  ${w}
108
- </tr>`)}return f}isExcluded(t,e){return this.excludeweekdays.includes(t.toString())||this.earliest&&e<b(this.earliest)||this.latest&&e>b(this.latest)?!0:this.excludedates.some(r=>typeof r=="string"?r===y(e):r.toDateString()===e.toDateString())}isPrevMonthAllowed(){const t=T(this.year,this.month,0);return!(this.earliest&&b(this.earliest)>t)}prevMonth(){const t=this.month===0?11:this.month-1,e=this.month===0?this.year-1:this.year;this.changeMonth(e,t)}isNextMonthAllowed(){const t=T(this.year,this.month===11?0:this.month+1,1);return!(this.latest&&b(this.latest)<t)}nextMonth(){const t=this.month===11?0:this.month+1,e=this.month===11?this.year+1:this.year;this.changeMonth(e,t)}changeMonth(t,e){this.year=t,this.month=e,this.tabIndexSet=0,this.focusedDate=null,this.selectableDates=[],this.requestUpdate()}isInRange(t){if(this.range&&this.selected.length===2){if(t>b(this.selected[0])&&t<b(this.selected[1]))return!0}else if(this.range&&this.selected.length===1&&this.rangeHovered&&t>b(this.selected[0])&&t<this.rangeHovered)return!0;return!1}isRangeAllowed(t){let e=!0;if(this._selected.length===1){const r=L({start:this._selected[0],end:t});if(Array.isArray(r)&&r.length)for(let a=0;a<r.length;a++)this.excludedates.forEach(s=>{s>this._selected[0]&&s<t&&(e=!1)}),this.excludeweekdays.includes(pe(r[a]).toString())&&(e=!1)}return e}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}addToSelected(t){this.selected.includes(y(t))||(this.selected=[...this.selected,y(t)],this._selected=[...this._selected,t],this.range&&this.selected.length===2&&this.close())}removeFromSelected(t){if(this.selected.length===1)this.emptySelected();else{const e=this.selected.indexOf(y(t)),r=[...this.selected],a=[...this._selected];r.splice(e,1),a.splice(e,1),this.selected=r,this._selected=a}}toggleSelected(t){const e=y(t);this.selected.includes(e)?this.removeFromSelected(t):this.maxMultiple&&this.selected.length>=this.maxMultiple||this.addToSelected(t)}handleRangeSelect(t){const e=y(t);return this.selected.includes(e)?this.selected.indexOf(e)===0?this.emptySelected():this.removeFromSelected(t):this.selected.length>1?(this.emptySelected(),this.addToSelected(t)):(this.selected.length===1&&!this.isRangeAllowed(t)&&this.emptySelected(),this.selected.length===1&&this._selected[0]>t&&this.emptySelected(),this.addToSelected(t)),Promise.resolve()}handleRangeHover(t){if(this.range&&this._selected.length===1&&this.isRangeAllowed(t)&&this._selected[0]<t){this.rangeHovered=t,this.inRange={};const e=L({start:this._selected[0],end:t});if(Array.isArray(e)&&e.length)for(let r=0;r<e.length;r++)this.inRange[y(e[r])]=this.isInRange(e[r])}else this.rangeHovered=null}handleDateSelect(t){if(t)return this.range?this.handleRangeSelect(t):this.multiple?this.toggleSelected(t):(this.selected.includes(y(t))?this.emptySelected():(this.emptySelected(),this.addToSelected(t)),this.close()),this.dispatchEvent(new CustomEvent("date-selected",{detail:this.selected,bubbles:!0,composed:!0})),Promise.resolve()}focusOnCurrentDate(){const t=y(b()),e=this.querySelector(`div[data-date="${t}"]`);if(e instanceof HTMLDivElement)this.focusedDate=t,e.focus();else{const r=this.selectableDates.find(a=>!a.isDisabled);if(r){const a=this.querySelector(`div[data-date="${r.currentDateISO}"]`);a instanceof HTMLDivElement&&(this.focusedDate=r.currentDateISO,a.focus())}}}closeEvent(t){this.contains(t.relatedTarget)||this.close()}close(){this.dispatchEvent(new CustomEvent("close",{detail:!0,bubbles:!0,composed:!0}))}};d([o.n({type:Boolean})],exports.PktCalendar.prototype,"multiple",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"maxMultiple",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"range",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"weeknumbers",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"withcontrols",2);d([o.n({converter:H.converters.csvToArray})],exports.PktCalendar.prototype,"selected",2);d([o.n({type:String})],exports.PktCalendar.prototype,"earliest",2);d([o.n({type:String})],exports.PktCalendar.prototype,"latest",2);d([o.n({converter:H.converters.stringsToDate})],exports.PktCalendar.prototype,"excludedates",2);d([o.n({converter:H.converters.csvToArray})],exports.PktCalendar.prototype,"excludeweekdays",2);d([o.n({converter:H.converters.stringToDate})],exports.PktCalendar.prototype,"currentmonth",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"dayStrings",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"dayStringsLong",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"monthStrings",2);d([o.n({type:String})],exports.PktCalendar.prototype,"weekString",2);d([o.n({type:String})],exports.PktCalendar.prototype,"prevMonthString",2);d([o.n({type:String})],exports.PktCalendar.prototype,"nextMonthString",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"_selected",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"year",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"month",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"week",2);d([o.n({type:Date})],exports.PktCalendar.prototype,"rangeHovered",2);d([o.r()],exports.PktCalendar.prototype,"inRange",2);d([o.r()],exports.PktCalendar.prototype,"focusedDate",2);d([o.r()],exports.PktCalendar.prototype,"selectableDates",2);d([o.r()],exports.PktCalendar.prototype,"currentmonthtouched",2);d([o.r()],exports.PktCalendar.prototype,"tabIndexSet",2);exports.PktCalendar=d([ot.t("pkt-calendar")],exports.PktCalendar);exports.formatISODate=y;exports.fromISOToDate=ve;exports.fromISOtoLocal=De;exports.newDate=b;
108
+ </tr>`)}return f}isExcluded(t,e){return this.excludeweekdays.includes(t.toString())||this.earliest&&$(e,1)<b(this.earliest)||this.latest&&$(e,-1)>b(this.latest)?!0:this.excludedates.some(r=>typeof r=="string"?r===y(e):r.toDateString()===e.toDateString())}isPrevMonthAllowed(){const t=T(this.year,this.month,0);return!(this.earliest&&b(this.earliest)>t)}prevMonth(){const t=this.month===0?11:this.month-1,e=this.month===0?this.year-1:this.year;this.changeMonth(e,t)}isNextMonthAllowed(){const t=T(this.month===11?this.year+1:this.year,this.month===11?0:this.month+1,1);return!(this.latest&&b(this.latest)<t)}nextMonth(){const t=this.month===11?0:this.month+1,e=this.month===11?this.year+1:this.year;this.changeMonth(e,t)}changeMonth(t,e){this.year=t,this.month=e,this.tabIndexSet=0,this.focusedDate=null,this.selectableDates=[],this.requestUpdate()}isInRange(t){if(this.range&&this.selected.length===2){if(t>b(this.selected[0])&&t<b(this.selected[1]))return!0}else if(this.range&&this.selected.length===1&&this.rangeHovered&&t>b(this.selected[0])&&t<this.rangeHovered)return!0;return!1}isRangeAllowed(t){let e=!0;if(this._selected.length===1){const r=L({start:this._selected[0],end:t});if(Array.isArray(r)&&r.length)for(let a=0;a<r.length;a++)this.excludedates.forEach(s=>{s>this._selected[0]&&s<t&&(e=!1)}),this.excludeweekdays.includes(pe(r[a]).toString())&&(e=!1)}return e}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}addToSelected(t){this.selected.includes(y(t))||(this.selected=[...this.selected,y(t)],this._selected=[...this._selected,t],this.range&&this.selected.length===2&&this.close())}removeFromSelected(t){if(this.selected.length===1)this.emptySelected();else{const e=this.selected.indexOf(y(t)),r=[...this.selected],a=[...this._selected];r.splice(e,1),a.splice(e,1),this.selected=r,this._selected=a}}toggleSelected(t){const e=y(t);this.selected.includes(e)?this.removeFromSelected(t):this.maxMultiple&&this.selected.length>=this.maxMultiple||this.addToSelected(t)}handleRangeSelect(t){const e=y(t);return this.selected.includes(e)?this.selected.indexOf(e)===0?this.emptySelected():this.removeFromSelected(t):this.selected.length>1?(this.emptySelected(),this.addToSelected(t)):(this.selected.length===1&&!this.isRangeAllowed(t)&&this.emptySelected(),this.selected.length===1&&this._selected[0]>t&&this.emptySelected(),this.addToSelected(t)),Promise.resolve()}handleRangeHover(t){if(this.range&&this._selected.length===1&&this.isRangeAllowed(t)&&this._selected[0]<t){this.rangeHovered=t,this.inRange={};const e=L({start:this._selected[0],end:t});if(Array.isArray(e)&&e.length)for(let r=0;r<e.length;r++)this.inRange[y(e[r])]=this.isInRange(e[r])}else this.rangeHovered=null}handleDateSelect(t){if(t)return this.range?this.handleRangeSelect(t):this.multiple?this.toggleSelected(t):(this.selected.includes(y(t))?this.emptySelected():(this.emptySelected(),this.addToSelected(t)),this.close()),this.dispatchEvent(new CustomEvent("date-selected",{detail:this.selected,bubbles:!0,composed:!0})),Promise.resolve()}focusOnCurrentDate(){const t=y(b()),e=this.querySelector(`div[data-date="${t}"]`);if(e instanceof HTMLDivElement)this.focusedDate=t,e.focus();else{const r=this.selectableDates.find(a=>!a.isDisabled);if(r){const a=this.querySelector(`div[data-date="${r.currentDateISO}"]`);a instanceof HTMLDivElement&&(this.focusedDate=r.currentDateISO,a.focus())}}}closeEvent(t){!this.contains(t.relatedTarget)&&!t.target.classList.contains("pkt-hide")&&this.close()}close(){this.dispatchEvent(new CustomEvent("close",{detail:!0,bubbles:!0,composed:!0}))}};d([o.n({type:Boolean})],exports.PktCalendar.prototype,"multiple",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"maxMultiple",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"range",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"weeknumbers",2);d([o.n({type:Boolean})],exports.PktCalendar.prototype,"withcontrols",2);d([o.n({converter:H.converters.csvToArray})],exports.PktCalendar.prototype,"selected",2);d([o.n({type:String})],exports.PktCalendar.prototype,"earliest",2);d([o.n({type:String})],exports.PktCalendar.prototype,"latest",2);d([o.n({converter:H.converters.stringsToDate})],exports.PktCalendar.prototype,"excludedates",2);d([o.n({converter:H.converters.csvToArray})],exports.PktCalendar.prototype,"excludeweekdays",2);d([o.n({converter:H.converters.stringToDate})],exports.PktCalendar.prototype,"currentmonth",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"dayStrings",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"dayStringsLong",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"monthStrings",2);d([o.n({type:String})],exports.PktCalendar.prototype,"weekString",2);d([o.n({type:String})],exports.PktCalendar.prototype,"prevMonthString",2);d([o.n({type:String})],exports.PktCalendar.prototype,"nextMonthString",2);d([o.n({type:Array})],exports.PktCalendar.prototype,"_selected",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"year",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"month",2);d([o.n({type:Number})],exports.PktCalendar.prototype,"week",2);d([o.n({type:Date})],exports.PktCalendar.prototype,"rangeHovered",2);d([o.r()],exports.PktCalendar.prototype,"inRange",2);d([o.r()],exports.PktCalendar.prototype,"focusedDate",2);d([o.r()],exports.PktCalendar.prototype,"selectableDates",2);d([o.r()],exports.PktCalendar.prototype,"currentmonthtouched",2);d([o.r()],exports.PktCalendar.prototype,"tabIndexSet",2);exports.PktCalendar=d([ot.t("pkt-calendar")],exports.PktCalendar);exports.formatISODate=y;exports.fromISOToDate=ve;exports.fromISOtoLocal=De;exports.newDate=b;
package/dist/index.d.ts CHANGED
@@ -415,7 +415,7 @@ export declare class PktModal extends PktElement implements IPktModal {
415
415
  private handleKeyDown;
416
416
  private handleBackdropClick;
417
417
  private isElementInViewport;
418
- close: (event: Event) => void;
418
+ close: (event: Event, bypassNativeClose?: boolean) => void;
419
419
  showModal: (event: Event) => void;
420
420
  render(): TemplateResult<1>;
421
421
  }
@@ -50,53 +50,55 @@ const y = "pkt-modal", _ = !0, C = {
50
50
  props: E,
51
51
  slots: w
52
52
  };
53
- var B = Object.defineProperty, O = Object.getOwnPropertyDescriptor, l = (t, e, o, n) => {
54
- for (var s = n > 1 ? void 0 : n ? O(e, o) : e, d = t.length - 1, r; d >= 0; d--)
55
- (r = t[d]) && (s = (n ? r(e, o, s) : r(s)) || s);
56
- return n && s && B(e, o, s), s;
53
+ var B = Object.defineProperty, O = Object.getOwnPropertyDescriptor, i = (e, t, o, l) => {
54
+ for (var s = l > 1 ? void 0 : l ? O(t, o) : t, d = e.length - 1, r; d >= 0; d--)
55
+ (r = e[d]) && (s = (l ? r(t, o, s) : r(s)) || s);
56
+ return l && s && B(t, o, s), s;
57
57
  };
58
- let i = class extends b {
58
+ let n = class extends b {
59
59
  constructor() {
60
- super(), this.headingText = "", this.hideCloseButton = p.props.hideCloseButton.default, this.closeOnBackdropClick = p.props.closeOnBackdropClick.default, this.size = p.props.size.default, this.defaultSlot = k(), this.dialogRef = k(), this._isOpen = !1, this.close = (t) => {
61
- var n;
62
- this._isOpen = !1, (n = this.dialogRef.value) == null || n.close();
63
- const e = document.activeElement;
64
- e && !this.isElementInViewport(e) && e.scrollIntoView({ behavior: "smooth", block: "nearest" }), this.dispatchEvent(
65
- new CustomEvent("close", { detail: { origin: t }, bubbles: !0, composed: !0 })
60
+ super(), this.headingText = "", this.hideCloseButton = p.props.hideCloseButton.default, this.closeOnBackdropClick = p.props.closeOnBackdropClick.default, this.size = p.props.size.default, this.defaultSlot = k(), this.dialogRef = k(), this._isOpen = !1, this.close = (e, t = !1) => {
61
+ var s;
62
+ this._isOpen = !1, t || (s = this.dialogRef.value) == null || s.close();
63
+ const o = document.activeElement;
64
+ o && !this.isElementInViewport(o) && o.scrollIntoView({ behavior: "smooth", block: "nearest" }), this.dispatchEvent(
65
+ new CustomEvent("close", { detail: { origin: e }, bubbles: !0, composed: !0 })
66
66
  ), document.querySelector(".pkt-modal") && document.body.classList.remove("pkt-modal--open"), this.requestUpdate();
67
- }, this.showModal = (t) => {
67
+ }, this.showModal = (e) => {
68
68
  var o;
69
69
  this._isOpen = !0, (o = this.dialogRef.value) == null || o.showModal(), document.querySelector(".pkt-modal") && document.body.classList.add("pkt-modal--open"), this.dispatchEvent(
70
- new CustomEvent("showModal", { detail: { origin: t }, bubbles: !0, composed: !0 })
70
+ new CustomEvent("showModal", { detail: { origin: e }, bubbles: !0, composed: !0 })
71
71
  ), this.requestUpdate();
72
72
  }, this.slotController = new v(this, this.defaultSlot), this._isOpen = !1;
73
73
  }
74
74
  async connectedCallback() {
75
- super.connectedCallback(), document.addEventListener("keydown", this.handleKeyDown.bind(this)), document.addEventListener("click", this.handleBackdropClick.bind(this));
75
+ var e;
76
+ super.connectedCallback(), document.addEventListener("keydown", this.handleKeyDown.bind(this)), document.addEventListener("click", this.handleBackdropClick.bind(this)), (e = this.dialogRef.value) == null || e.addEventListener("submit", (t) => this.close(t, !0));
76
77
  }
77
78
  disconnectedCallback() {
78
- super.disconnectedCallback(), document.removeEventListener("keydown", this.handleKeyDown.bind(this)), document.removeEventListener("click", this.handleBackdropClick.bind(this));
79
+ var e;
80
+ super.disconnectedCallback(), document.removeEventListener("keydown", this.handleKeyDown.bind(this)), document.removeEventListener("click", this.handleBackdropClick.bind(this)), (e = this.dialogRef.value) == null || e.removeEventListener("submit", (t) => this.close(t, !0));
79
81
  }
80
82
  // P R I V A T E M E T H O D S
81
- handleKeyDown(t) {
82
- t.key === "Escape" && this.close(t);
83
+ handleKeyDown(e) {
84
+ e.key === "Escape" && this.close(e);
83
85
  }
84
- handleBackdropClick(t) {
85
- var e;
86
- this.closeOnBackdropClick && t.target === ((e = this.dialogRef) == null ? void 0 : e.value) && this.close(t);
86
+ handleBackdropClick(e) {
87
+ var t;
88
+ this.closeOnBackdropClick && e.target === ((t = this.dialogRef) == null ? void 0 : t.value) && this.close(e);
87
89
  }
88
- isElementInViewport(t) {
89
- const e = t.getBoundingClientRect();
90
- return e.top >= 0 && e.left >= 0 && e.bottom <= (window.innerHeight || document.documentElement.clientHeight) && e.right <= (window.innerWidth || document.documentElement.clientWidth);
90
+ isElementInViewport(e) {
91
+ const t = e.getBoundingClientRect();
92
+ return t.top >= 0 && t.left >= 0 && t.bottom <= (window.innerHeight || document.documentElement.clientHeight) && t.right <= (window.innerWidth || document.documentElement.clientWidth);
91
93
  }
92
94
  render() {
93
- const t = {
95
+ const e = {
94
96
  "pkt-modal": !0,
95
97
  [`pkt-modal--${this.size}`]: this.size !== void 0
96
98
  };
97
99
  return c`
98
100
  <dialog
99
- class=${u(t)}
101
+ class=${u(e)}
100
102
  aria-modal=${this._isOpen}
101
103
  ${h(this.dialogRef)}
102
104
  aria-labelledby="pkt-modal__headingText"
@@ -109,7 +111,7 @@ let i = class extends b {
109
111
  </h1>` : m}
110
112
  ${this.hideCloseButton ? m : c`<div class="pkt-modal__closeButton">
111
113
  <button
112
- @click=${(e) => this.close(e)}
114
+ @click=${(t) => this.close(t)}
113
115
  class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
114
116
  aria-label="close"
115
117
  >
@@ -126,24 +128,24 @@ let i = class extends b {
126
128
  `;
127
129
  }
128
130
  };
129
- l([
131
+ i([
130
132
  a({ type: String, reflect: !0 })
131
- ], i.prototype, "headingText", 2);
132
- l([
133
+ ], n.prototype, "headingText", 2);
134
+ i([
133
135
  a({ type: Boolean, reflect: !0 })
134
- ], i.prototype, "hideCloseButton", 2);
135
- l([
136
+ ], n.prototype, "hideCloseButton", 2);
137
+ i([
136
138
  a({ type: Boolean, reflect: !0 })
137
- ], i.prototype, "closeOnBackdropClick", 2);
138
- l([
139
+ ], n.prototype, "closeOnBackdropClick", 2);
140
+ i([
139
141
  a({ type: String, reflect: !0 })
140
- ], i.prototype, "size", 2);
141
- l([
142
+ ], n.prototype, "size", 2);
143
+ i([
142
144
  g()
143
- ], i.prototype, "_isOpen", 2);
144
- i = l([
145
+ ], n.prototype, "_isOpen", 2);
146
+ n = i([
145
147
  f("pkt-modal")
146
- ], i);
148
+ ], n);
147
149
  export {
148
- i as P
150
+ n as P
149
151
  };
@@ -0,0 +1,30 @@
1
+ "use strict";const p=require("./class-map-B9m-NycN.cjs"),k=require("./custom-element-B-TlBwRu.cjs"),n=require("./index-CBFF6OHE.cjs"),a=require("./ref-3QXuhm6y.cjs");require("./index-CqWQt14b.cjs");const u="pkt-modal",m=!0,h={"background-click":{description:"Event som trigges når bakgrunnen trykkes på"},close:{description:"Event som trigges når meldingsboksen lukkes"}},f={headingText:{name:"Heading text",description:"Heading tekst på modalen",type:"string"},hideCloseButton:{name:"Gjem 'Lukk'-knapp",description:"Gjemmer lukkeknappen. Dersom denne er satt til true, vil ikke lukkeknappen vises, og dermed er det viktig at man tilbyr en annen måte som f.eks. en knapp for å lukke modalen på.",type:"boolean",default:!1},closeOnBackdropClick:{name:"Lukk modalen når bakgrunnen trykkes på",description:"Lukk modalen når bakgrunnen trykkes på",type:"boolean",default:!1},size:{name:"Størrelse",description:"Størrelsen på modalen",type:["small","medium","large"],default:"medium"}},g={default:{description:"Innholdet i meldingen. Her tilbyr vi støtteklasser for å style 1-3 knapper i modalen."}},c={name:u,"css-class":"pkt-modal",isElements:m,events:h,props:f,slots:g};var b=Object.defineProperty,v=Object.getOwnPropertyDescriptor,l=(d,e,t,s)=>{for(var o=s>1?void 0:s?v(e,t):e,i=d.length-1,r;i>=0;i--)(r=d[i])&&(o=(s?r(e,t,o):r(o))||o);return s&&o&&b(e,t,o),o};exports.PktModal=class extends n.PktElement{constructor(){super(),this.headingText="",this.hideCloseButton=c.props.hideCloseButton.default,this.closeOnBackdropClick=c.props.closeOnBackdropClick.default,this.size=c.props.size.default,this.defaultSlot=a.e(),this.dialogRef=a.e(),this._isOpen=!1,this.close=(e,t=!1)=>{var i;this._isOpen=!1,t||(i=this.dialogRef.value)==null||i.close();const s=document.activeElement;s&&!this.isElementInViewport(s)&&s.scrollIntoView({behavior:"smooth",block:"nearest"}),this.dispatchEvent(new CustomEvent("close",{detail:{origin:e},bubbles:!0,composed:!0})),document.querySelector(".pkt-modal")&&document.body.classList.remove("pkt-modal--open"),this.requestUpdate()},this.showModal=e=>{var s;this._isOpen=!0,(s=this.dialogRef.value)==null||s.showModal(),document.querySelector(".pkt-modal")&&document.body.classList.add("pkt-modal--open"),this.dispatchEvent(new CustomEvent("showModal",{detail:{origin:e},bubbles:!0,composed:!0})),this.requestUpdate()},this.slotController=new a.PktSlotController(this,this.defaultSlot),this._isOpen=!1}async connectedCallback(){var e;super.connectedCallback(),document.addEventListener("keydown",this.handleKeyDown.bind(this)),document.addEventListener("click",this.handleBackdropClick.bind(this)),(e=this.dialogRef.value)==null||e.addEventListener("submit",t=>this.close(t,!0))}disconnectedCallback(){var e;super.disconnectedCallback(),document.removeEventListener("keydown",this.handleKeyDown.bind(this)),document.removeEventListener("click",this.handleBackdropClick.bind(this)),(e=this.dialogRef.value)==null||e.removeEventListener("submit",t=>this.close(t,!0))}handleKeyDown(e){e.key==="Escape"&&this.close(e)}handleBackdropClick(e){var t;this.closeOnBackdropClick&&e.target===((t=this.dialogRef)==null?void 0:t.value)&&this.close(e)}isElementInViewport(e){const t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}render(){const e={"pkt-modal":!0,[`pkt-modal--${this.size}`]:this.size!==void 0};return n.x`
2
+ <dialog
3
+ class=${p.e(e)}
4
+ aria-modal=${this._isOpen}
5
+ ${a.n(this.dialogRef)}
6
+ aria-labelledby="pkt-modal__headingText"
7
+ aria-describedby="pkt-modal__content"
8
+ autofocus
9
+ >
10
+ <div class="pkt-modal__header">
11
+ ${this.headingText?n.x`<h1 id="pkt-modal__headingText" class="pkt-modal__headingText pkt-txt-24">
12
+ ${this.headingText}
13
+ </h1>`:n.E}
14
+ ${this.hideCloseButton?n.E:n.x`<div class="pkt-modal__closeButton">
15
+ <button
16
+ @click=${t=>this.close(t)}
17
+ class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
18
+ aria-label="close"
19
+ >
20
+ <pkt-icon name="close" class="pkt-link__icon"></pkt-icon>
21
+ </button>
22
+ </div>`}
23
+ </div>
24
+ <div
25
+ id="pkt-modal__content"
26
+ class="pkt-modal__content pkt-txt-18-light"
27
+ ${a.n(this.defaultSlot)}
28
+ ></div>
29
+ </dialog>
30
+ `}};l([n.n({type:String,reflect:!0})],exports.PktModal.prototype,"headingText",2);l([n.n({type:Boolean,reflect:!0})],exports.PktModal.prototype,"hideCloseButton",2);l([n.n({type:Boolean,reflect:!0})],exports.PktModal.prototype,"closeOnBackdropClick",2);l([n.n({type:String,reflect:!0})],exports.PktModal.prototype,"size",2);l([n.r()],exports.PktModal.prototype,"_isOpen",2);exports.PktModal=l([k.t("pkt-modal")],exports.PktModal);
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-CBFF6OHE.cjs");require("./converters-DhM11VlY.cjs");require("./custom-element-B-TlBwRu.cjs");require("./class-map-B9m-NycN.cjs");const e=require("./index-Bb6UaG_m.cjs");require("./index-CqWQt14b.cjs");Object.defineProperty(exports,"PktCalendar",{enumerable:!0,get:()=>e.PktCalendar});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-CBFF6OHE.cjs");require("./converters-DhM11VlY.cjs");require("./custom-element-B-TlBwRu.cjs");require("./class-map-B9m-NycN.cjs");const e=require("./index-aLVFdclF.cjs");require("./index-CqWQt14b.cjs");Object.defineProperty(exports,"PktCalendar",{enumerable:!0,get:()=>e.PktCalendar});
@@ -2,7 +2,7 @@ import "./index-Dw-V4--g.js";
2
2
  import "./converters-DNCwIFwr.js";
3
3
  import "./custom-element-CWfU4dcr.js";
4
4
  import "./class-map-DpN1m5lh.js";
5
- import { P as e } from "./index-DHfWkUot.js";
5
+ import { P as e } from "./index-DmedytuY.js";
6
6
  import "./index-DkLa0YLm.js";
7
7
  export {
8
8
  e as PktCalendar
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-CBFF6OHE.cjs"),b=require("./custom-element-B-TlBwRu.cjs"),n=require("./ref-3QXuhm6y.cjs"),y=require("./class-map-B9m-NycN.cjs"),T=require("./converters-DhM11VlY.cjs"),g=require("./index-Bb6UaG_m.cjs");require("./pkt-input-wrapper.cjs");require("./index-CqWQt14b.cjs");require("./pkt-tag.cjs");/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-CBFF6OHE.cjs"),b=require("./custom-element-B-TlBwRu.cjs"),n=require("./ref-3QXuhm6y.cjs"),y=require("./class-map-B9m-NycN.cjs"),T=require("./converters-DhM11VlY.cjs"),g=require("./index-aLVFdclF.cjs");require("./pkt-input-wrapper.cjs");require("./index-CqWQt14b.cjs");require("./pkt-tag.cjs");/**
2
2
  * @license
3
3
  * Copyright 2017 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
@@ -3,7 +3,7 @@ import { e as j, i as F, a as q, t as H } from "./custom-element-CWfU4dcr.js";
3
3
  import { p as U, v as y, r as b, M as S, m as L, e as x, n as $ } from "./ref-D5FOI49b.js";
4
4
  import { e as w } from "./class-map-DpN1m5lh.js";
5
5
  import { a as P } from "./converters-DNCwIFwr.js";
6
- import { n as C, f as _, a as N, b as M } from "./index-DHfWkUot.js";
6
+ import { n as C, f as _, a as N, b as M } from "./index-DmedytuY.js";
7
7
  import "./pkt-input-wrapper.js";
8
8
  import "./index-DkLa0YLm.js";
9
9
  import "./pkt-tag.js";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./pkt-alert.cjs"),t=require("./index-Bb6UaG_m.cjs"),r=require("./pkt-card.cjs"),n=require("./pkt-component-template.cjs"),o=require("./pkt-datepicker.cjs"),u=require("./helptext-0fI9cWEe.cjs"),a=require("./index-CqWQt14b.cjs"),P=require("./pkt-input-wrapper.cjs"),c=require("./pkt-link.cjs"),i=require("./pkt-messagebox.cjs"),p=require("./modal-BDkZRwul.cjs"),k=require("./pkt-tag.cjs");Object.defineProperty(exports,"PktAlert",{enumerable:!0,get:()=>e.PktAlert});Object.defineProperty(exports,"PktCalendar",{enumerable:!0,get:()=>t.PktCalendar});Object.defineProperty(exports,"PktCard",{enumerable:!0,get:()=>r.PktCard});Object.defineProperty(exports,"PktComponent",{enumerable:!0,get:()=>n.PktComponent});Object.defineProperty(exports,"PktDatepicker",{enumerable:!0,get:()=>o.PktDatepicker});Object.defineProperty(exports,"PktHelptext",{enumerable:!0,get:()=>u.PktHelptext});Object.defineProperty(exports,"PktIcon",{enumerable:!0,get:()=>a.PktIcon});Object.defineProperty(exports,"PktInputWrapper",{enumerable:!0,get:()=>P.PktInputWrapper});Object.defineProperty(exports,"PktLink",{enumerable:!0,get:()=>c.PktLink});Object.defineProperty(exports,"PktMessagebox",{enumerable:!0,get:()=>i.PktMessagebox});Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>p.PktModal});Object.defineProperty(exports,"PktTag",{enumerable:!0,get:()=>k.PktTag});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./pkt-alert.cjs"),t=require("./index-aLVFdclF.cjs"),r=require("./pkt-card.cjs"),n=require("./pkt-component-template.cjs"),o=require("./pkt-datepicker.cjs"),u=require("./helptext-0fI9cWEe.cjs"),a=require("./index-CqWQt14b.cjs"),P=require("./pkt-input-wrapper.cjs"),c=require("./pkt-link.cjs"),i=require("./pkt-messagebox.cjs"),p=require("./modal-FnkYHLoK.cjs"),k=require("./pkt-tag.cjs");Object.defineProperty(exports,"PktAlert",{enumerable:!0,get:()=>e.PktAlert});Object.defineProperty(exports,"PktCalendar",{enumerable:!0,get:()=>t.PktCalendar});Object.defineProperty(exports,"PktCard",{enumerable:!0,get:()=>r.PktCard});Object.defineProperty(exports,"PktComponent",{enumerable:!0,get:()=>n.PktComponent});Object.defineProperty(exports,"PktDatepicker",{enumerable:!0,get:()=>o.PktDatepicker});Object.defineProperty(exports,"PktHelptext",{enumerable:!0,get:()=>u.PktHelptext});Object.defineProperty(exports,"PktIcon",{enumerable:!0,get:()=>a.PktIcon});Object.defineProperty(exports,"PktInputWrapper",{enumerable:!0,get:()=>P.PktInputWrapper});Object.defineProperty(exports,"PktLink",{enumerable:!0,get:()=>c.PktLink});Object.defineProperty(exports,"PktMessagebox",{enumerable:!0,get:()=>i.PktMessagebox});Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>p.PktModal});Object.defineProperty(exports,"PktTag",{enumerable:!0,get:()=>k.PktTag});
package/dist/pkt-index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { PktAlert as o } from "./pkt-alert.js";
2
- import { P as p } from "./index-DHfWkUot.js";
2
+ import { P as p } from "./index-DmedytuY.js";
3
3
  import { PktCard as k } from "./pkt-card.js";
4
4
  import { PktComponent as m } from "./pkt-component-template.js";
5
5
  import { PktDatepicker as f } from "./pkt-datepicker.js";
@@ -8,7 +8,7 @@ import { P as d } from "./index-DkLa0YLm.js";
8
8
  import { PktInputWrapper as c } from "./pkt-input-wrapper.js";
9
9
  import { PktLink as i } from "./pkt-link.js";
10
10
  import { PktMessagebox as M } from "./pkt-messagebox.js";
11
- import { P as u } from "./modal-CZUWZuRC.js";
11
+ import { P as u } from "./modal-D6J8TqCp.js";
12
12
  import { PktTag as D } from "./pkt-tag.js";
13
13
  export {
14
14
  o as PktAlert,
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./modal-BDkZRwul.cjs"),t=e.PktModal;Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>e.PktModal});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./modal-FnkYHLoK.cjs"),t=e.PktModal;Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>e.PktModal});exports.default=t;
package/dist/pkt-modal.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as a } from "./modal-CZUWZuRC.js";
1
+ import { P as a } from "./modal-D6J8TqCp.js";
2
2
  const t = a;
3
3
  export {
4
4
  a as PktModal,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oslokommune/punkt-elements",
3
- "version": "12.11.0",
3
+ "version": "12.11.2",
4
4
  "description": "Komponentbiblioteket til Punkt, et designsystem laget av Oslo Origo",
5
5
  "homepage": "https://punkt.oslo.kommune.no",
6
6
  "author": "Team Designsystem, Oslo Origo",
@@ -56,5 +56,5 @@
56
56
  "url": "https://github.com/oslokommune/punkt/issues"
57
57
  },
58
58
  "license": "MIT",
59
- "gitHead": "727c8399a34e90ebfb7e843f0adfe0c4f828fa9f"
59
+ "gitHead": "48ca46f595c98cb45be257a3bb8440572ab2fb52"
60
60
  }
@@ -3,7 +3,7 @@ import converters from '../../helpers/converters'
3
3
 
4
4
  import { customElement, property, state } from 'lit/decorators.js'
5
5
  import { classMap } from 'lit/directives/class-map.js'
6
- import { getWeek, eachDayOfInterval, getISODay, addDays } from 'date-fns'
6
+ import { getWeek, eachDayOfInterval, getISODay, addDays, addHours } from 'date-fns'
7
7
  import { TZDate } from '@date-fns/tz'
8
8
  import { PktElement } from '../element'
9
9
  import { formatISODate, newDate, newDateYMD, formatReadableDate } from '@/utils/dateutils'
@@ -476,8 +476,8 @@ export class PktCalendar extends PktElement {
476
476
 
477
477
  private isExcluded(weekday: number, date: TZDate) {
478
478
  if (this.excludeweekdays.includes(weekday.toString())) return true
479
- if (this.earliest && date < newDate(this.earliest)) return true
480
- if (this.latest && date > newDate(this.latest)) return true
479
+ if (this.earliest && addHours(date, 1) < newDate(this.earliest)) return true
480
+ if (this.latest && addHours(date, -1) > newDate(this.latest)) return true
481
481
  return this.excludedates.some((x: TZDate | Date | string) => {
482
482
  if (typeof x === 'string') {
483
483
  return x === formatISODate(date)
@@ -500,7 +500,11 @@ export class PktCalendar extends PktElement {
500
500
  }
501
501
 
502
502
  isNextMonthAllowed() {
503
- const nextMonth = newDateYMD(this.year, this.month === 11 ? 0 : this.month + 1, 1)
503
+ const nextMonth = newDateYMD(
504
+ this.month === 11 ? this.year + 1 : this.year,
505
+ this.month === 11 ? 0 : this.month + 1,
506
+ 1,
507
+ )
504
508
  if (this.latest && newDate(this.latest) < nextMonth) return false
505
509
  return true
506
510
  }
@@ -688,7 +692,10 @@ export class PktCalendar extends PktElement {
688
692
  }
689
693
 
690
694
  public closeEvent(e: FocusEvent) {
691
- if (!this.contains(e.relatedTarget as Node)) {
695
+ if (
696
+ !this.contains(e.relatedTarget as Node) &&
697
+ !(e.target as Element).classList.contains('pkt-hide')
698
+ ) {
692
699
  this.close()
693
700
  }
694
701
  }
@@ -43,12 +43,14 @@ export class PktModal extends PktElement implements IPktModal {
43
43
  super.connectedCallback()
44
44
  document.addEventListener('keydown', this.handleKeyDown.bind(this))
45
45
  document.addEventListener('click', this.handleBackdropClick.bind(this))
46
+ this.dialogRef.value?.addEventListener('submit', (e) => this.close(e, true))
46
47
  }
47
48
 
48
49
  disconnectedCallback(): void {
49
50
  super.disconnectedCallback()
50
51
  document.removeEventListener('keydown', this.handleKeyDown.bind(this))
51
52
  document.removeEventListener('click', this.handleBackdropClick.bind(this))
53
+ this.dialogRef.value?.removeEventListener('submit', (e) => this.close(e, true))
52
54
  }
53
55
 
54
56
  // P R I V A T E M E T H O D S
@@ -75,9 +77,9 @@ export class PktModal extends PktElement implements IPktModal {
75
77
  }
76
78
 
77
79
  // P U B L I C M E T H O D S
78
- public close = (event: Event) => {
80
+ public close = (event: Event, bypassNativeClose: boolean = false) => {
79
81
  this._isOpen = false
80
- this.dialogRef.value?.close()
82
+ if (!bypassNativeClose) this.dialogRef.value?.close()
81
83
 
82
84
  // Scroll to the opener element if it's not in the viewport
83
85
  const openerElement = document.activeElement as HTMLElement
@@ -1,30 +0,0 @@
1
- "use strict";const p=require("./class-map-B9m-NycN.cjs"),k=require("./custom-element-B-TlBwRu.cjs"),n=require("./index-CBFF6OHE.cjs"),i=require("./ref-3QXuhm6y.cjs");require("./index-CqWQt14b.cjs");const m="pkt-modal",u=!0,h={"background-click":{description:"Event som trigges når bakgrunnen trykkes på"},close:{description:"Event som trigges når meldingsboksen lukkes"}},g={headingText:{name:"Heading text",description:"Heading tekst på modalen",type:"string"},hideCloseButton:{name:"Gjem 'Lukk'-knapp",description:"Gjemmer lukkeknappen. Dersom denne er satt til true, vil ikke lukkeknappen vises, og dermed er det viktig at man tilbyr en annen måte som f.eks. en knapp for å lukke modalen på.",type:"boolean",default:!1},closeOnBackdropClick:{name:"Lukk modalen når bakgrunnen trykkes på",description:"Lukk modalen når bakgrunnen trykkes på",type:"boolean",default:!1},size:{name:"Størrelse",description:"Størrelsen på modalen",type:["small","medium","large"],default:"medium"}},b={default:{description:"Innholdet i meldingen. Her tilbyr vi støtteklasser for å style 1-3 knapper i modalen."}},c={name:m,"css-class":"pkt-modal",isElements:u,events:h,props:g,slots:b};var f=Object.defineProperty,v=Object.getOwnPropertyDescriptor,l=(a,e,t,s)=>{for(var o=s>1?void 0:s?v(e,t):e,d=a.length-1,r;d>=0;d--)(r=a[d])&&(o=(s?r(e,t,o):r(o))||o);return s&&o&&f(e,t,o),o};exports.PktModal=class extends n.PktElement{constructor(){super(),this.headingText="",this.hideCloseButton=c.props.hideCloseButton.default,this.closeOnBackdropClick=c.props.closeOnBackdropClick.default,this.size=c.props.size.default,this.defaultSlot=i.e(),this.dialogRef=i.e(),this._isOpen=!1,this.close=e=>{var o;this._isOpen=!1,(o=this.dialogRef.value)==null||o.close();const t=document.activeElement;t&&!this.isElementInViewport(t)&&t.scrollIntoView({behavior:"smooth",block:"nearest"}),this.dispatchEvent(new CustomEvent("close",{detail:{origin:e},bubbles:!0,composed:!0})),document.querySelector(".pkt-modal")&&document.body.classList.remove("pkt-modal--open"),this.requestUpdate()},this.showModal=e=>{var s;this._isOpen=!0,(s=this.dialogRef.value)==null||s.showModal(),document.querySelector(".pkt-modal")&&document.body.classList.add("pkt-modal--open"),this.dispatchEvent(new CustomEvent("showModal",{detail:{origin:e},bubbles:!0,composed:!0})),this.requestUpdate()},this.slotController=new i.PktSlotController(this,this.defaultSlot),this._isOpen=!1}async connectedCallback(){super.connectedCallback(),document.addEventListener("keydown",this.handleKeyDown.bind(this)),document.addEventListener("click",this.handleBackdropClick.bind(this))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.handleKeyDown.bind(this)),document.removeEventListener("click",this.handleBackdropClick.bind(this))}handleKeyDown(e){e.key==="Escape"&&this.close(e)}handleBackdropClick(e){var t;this.closeOnBackdropClick&&e.target===((t=this.dialogRef)==null?void 0:t.value)&&this.close(e)}isElementInViewport(e){const t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}render(){const e={"pkt-modal":!0,[`pkt-modal--${this.size}`]:this.size!==void 0};return n.x`
2
- <dialog
3
- class=${p.e(e)}
4
- aria-modal=${this._isOpen}
5
- ${i.n(this.dialogRef)}
6
- aria-labelledby="pkt-modal__headingText"
7
- aria-describedby="pkt-modal__content"
8
- autofocus
9
- >
10
- <div class="pkt-modal__header">
11
- ${this.headingText?n.x`<h1 id="pkt-modal__headingText" class="pkt-modal__headingText pkt-txt-24">
12
- ${this.headingText}
13
- </h1>`:n.E}
14
- ${this.hideCloseButton?n.E:n.x`<div class="pkt-modal__closeButton">
15
- <button
16
- @click=${t=>this.close(t)}
17
- class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
18
- aria-label="close"
19
- >
20
- <pkt-icon name="close" class="pkt-link__icon"></pkt-icon>
21
- </button>
22
- </div>`}
23
- </div>
24
- <div
25
- id="pkt-modal__content"
26
- class="pkt-modal__content pkt-txt-18-light"
27
- ${i.n(this.defaultSlot)}
28
- ></div>
29
- </dialog>
30
- `}};l([n.n({type:String,reflect:!0})],exports.PktModal.prototype,"headingText",2);l([n.n({type:Boolean,reflect:!0})],exports.PktModal.prototype,"hideCloseButton",2);l([n.n({type:Boolean,reflect:!0})],exports.PktModal.prototype,"closeOnBackdropClick",2);l([n.n({type:String,reflect:!0})],exports.PktModal.prototype,"size",2);l([n.r()],exports.PktModal.prototype,"_isOpen",2);exports.PktModal=l([k.t("pkt-modal")],exports.PktModal);