@oslokommune/punkt-elements 12.3.9 → 12.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{index-CiTPWPc2.js → index-BAKMcM4b.js} +28 -14
- package/dist/{index-ZXmkp0To.cjs → index-C92NwPcv.cjs} +5 -5
- package/dist/index.d.ts +2 -1
- package/dist/pkt-calendar.cjs +1 -1
- package/dist/pkt-calendar.js +1 -1
- package/dist/pkt-datepicker.cjs +39 -30
- package/dist/pkt-datepicker.js +149 -121
- package/dist/pkt-index.cjs +1 -1
- package/dist/pkt-index.js +1 -1
- package/package.json +3 -3
- package/src/components/calendar/index.ts +18 -0
- package/src/components/datepicker/index.ts +55 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as O, P as
|
|
1
|
+
import { r as O, P as _, k as f, D as w, n as c } from "./index-BoxUN9GL.js";
|
|
2
2
|
import { a as b } from "./converters-DNCwIFwr.js";
|
|
3
3
|
import { t as A } from "./directive-DA0-wdk7.js";
|
|
4
4
|
import { R as I } from "./class-map-DnAEF9tj.js";
|
|
@@ -12,12 +12,12 @@ function M(e, t) {
|
|
|
12
12
|
}
|
|
13
13
|
const T = 6048e5, U = 864e5;
|
|
14
14
|
let E = {};
|
|
15
|
-
function
|
|
15
|
+
function $() {
|
|
16
16
|
return E;
|
|
17
17
|
}
|
|
18
18
|
function v(e, t) {
|
|
19
19
|
var p, h, u, d;
|
|
20
|
-
const s =
|
|
20
|
+
const s = $(), n = (t == null ? void 0 : t.weekStartsOn) ?? ((h = (p = t == null ? void 0 : t.locale) == null ? void 0 : p.options) == null ? void 0 : h.weekStartsOn) ?? s.weekStartsOn ?? ((d = (u = s.locale) == null ? void 0 : u.options) == null ? void 0 : d.weekStartsOn) ?? 0, a = k(e), l = a.getDay(), i = (l < n ? 7 : 0) + l - n;
|
|
21
21
|
return a.setDate(a.getDate() - i), a.setHours(0, 0, 0, 0), a;
|
|
22
22
|
}
|
|
23
23
|
function S(e, t) {
|
|
@@ -32,8 +32,8 @@ function S(e, t) {
|
|
|
32
32
|
return a ? h.reverse() : h;
|
|
33
33
|
}
|
|
34
34
|
function C(e, t) {
|
|
35
|
-
var d, y, m,
|
|
36
|
-
const s = k(e), n = s.getFullYear(), a =
|
|
35
|
+
var d, y, m, D;
|
|
36
|
+
const s = k(e), n = s.getFullYear(), a = $(), l = (t == null ? void 0 : t.firstWeekContainsDate) ?? ((y = (d = t == null ? void 0 : t.locale) == null ? void 0 : d.options) == null ? void 0 : y.firstWeekContainsDate) ?? a.firstWeekContainsDate ?? ((D = (m = a.locale) == null ? void 0 : m.options) == null ? void 0 : D.firstWeekContainsDate) ?? 1, i = M(e, 0);
|
|
37
37
|
i.setFullYear(n + 1, 0, l), i.setHours(0, 0, 0, 0);
|
|
38
38
|
const p = v(i, t), h = M(e, 0);
|
|
39
39
|
h.setFullYear(n, 0, l), h.setHours(0, 0, 0, 0);
|
|
@@ -42,7 +42,7 @@ function C(e, t) {
|
|
|
42
42
|
}
|
|
43
43
|
function R(e, t) {
|
|
44
44
|
var p, h, u, d;
|
|
45
|
-
const s =
|
|
45
|
+
const s = $(), n = (t == null ? void 0 : t.firstWeekContainsDate) ?? ((h = (p = t == null ? void 0 : t.locale) == null ? void 0 : p.options) == null ? void 0 : h.firstWeekContainsDate) ?? s.firstWeekContainsDate ?? ((d = (u = s.locale) == null ? void 0 : u.options) == null ? void 0 : d.firstWeekContainsDate) ?? 1, a = C(e, t), l = M(e, 0);
|
|
46
46
|
return l.setFullYear(a, 0, n), l.setHours(0, 0, 0, 0), v(l, t);
|
|
47
47
|
}
|
|
48
48
|
function x(e, t) {
|
|
@@ -145,7 +145,7 @@ var Y = Object.defineProperty, F = Object.getOwnPropertyDescriptor, o = (e, t, s
|
|
|
145
145
|
(i = e[l]) && (a = (n ? i(t, s, a) : i(a)) || a);
|
|
146
146
|
return n && a && Y(t, s, a), a;
|
|
147
147
|
};
|
|
148
|
-
let r = class extends
|
|
148
|
+
let r = class extends _ {
|
|
149
149
|
/**
|
|
150
150
|
* If we are initializing props, slots and events from specs, we should do it in the constructor
|
|
151
151
|
*/
|
|
@@ -226,7 +226,7 @@ let r = class extends $ {
|
|
|
226
226
|
render() {
|
|
227
227
|
return f`
|
|
228
228
|
<div
|
|
229
|
-
class="pkt-calendar ${this.weeknumbers ? "pkt-cal-weeknumbers" :
|
|
229
|
+
class="pkt-calendar ${this.weeknumbers ? "pkt-cal-weeknumbers" : w}"
|
|
230
230
|
@focusout=${this.closeEvent}
|
|
231
231
|
@keydown=${(e) => {
|
|
232
232
|
e.key === "Escape" && (e.preventDefault(), this.close());
|
|
@@ -239,7 +239,7 @@ let r = class extends $ {
|
|
|
239
239
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), this.isNextMonthAllowed() && this.prevMonth());
|
|
240
240
|
}}
|
|
241
241
|
class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
|
|
242
|
-
.data-disabled=${this.isPrevMonthAllowed() ?
|
|
242
|
+
.data-disabled=${this.isPrevMonthAllowed() ? w : "disabled"}
|
|
243
243
|
?aria-disabled=${!this.isPrevMonthAllowed()}
|
|
244
244
|
tabindex="0"
|
|
245
245
|
>
|
|
@@ -253,7 +253,7 @@ let r = class extends $ {
|
|
|
253
253
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), this.isNextMonthAllowed() && this.nextMonth());
|
|
254
254
|
}}
|
|
255
255
|
class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
|
|
256
|
-
.data-disabled=${this.isNextMonthAllowed() ?
|
|
256
|
+
.data-disabled=${this.isNextMonthAllowed() ? w : "disabled"}
|
|
257
257
|
?aria-disabled=${!this.isNextMonthAllowed()}
|
|
258
258
|
tabindex="0"
|
|
259
259
|
>
|
|
@@ -333,7 +333,7 @@ let r = class extends $ {
|
|
|
333
333
|
this.range && !this.isExcluded(s, n) && this.handleRangeHover(n), this.focusedDate = a;
|
|
334
334
|
}}
|
|
335
335
|
tabindex=${h}
|
|
336
|
-
data-disabled=${p ? "disabled" :
|
|
336
|
+
data-disabled=${p ? "disabled" : w}
|
|
337
337
|
data-date=${a}
|
|
338
338
|
@keydown=${(d) => {
|
|
339
339
|
(d.key === "Enter" || d.key === " ") && (d.preventDefault(), this.handleDateSelect(n));
|
|
@@ -356,14 +356,14 @@ let r = class extends $ {
|
|
|
356
356
|
this.weeknumbers && y.push(f`<td class="pkt-cal-week">${this.week}</td>`), this.week++;
|
|
357
357
|
for (let m = 1; m < 8; m++)
|
|
358
358
|
if (d === 0 && m < n + 1) {
|
|
359
|
-
const
|
|
359
|
+
const D = p - (n - m - 1);
|
|
360
360
|
y.push(
|
|
361
361
|
f`<td class="pkt-cal-other">
|
|
362
362
|
<div
|
|
363
363
|
class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--label-only"
|
|
364
364
|
data-disabled="disabled"
|
|
365
365
|
>
|
|
366
|
-
<span class="pkt-btn__text pkt-txt-14-light">${
|
|
366
|
+
<span class="pkt-btn__text pkt-txt-14-light">${D}</span>
|
|
367
367
|
</div>
|
|
368
368
|
</td>`
|
|
369
369
|
);
|
|
@@ -477,6 +477,20 @@ let r = class extends $ {
|
|
|
477
477
|
})
|
|
478
478
|
), Promise.resolve();
|
|
479
479
|
}
|
|
480
|
+
focusOnCurrentDate() {
|
|
481
|
+
const e = this.formatISODate(/* @__PURE__ */ new Date()), t = this.querySelector(`div[data-date="${e}"]`);
|
|
482
|
+
if (t instanceof HTMLDivElement)
|
|
483
|
+
t.focus();
|
|
484
|
+
else {
|
|
485
|
+
const s = this.selectableDates.find((n) => !n.isDisabled);
|
|
486
|
+
if (s) {
|
|
487
|
+
const n = this.querySelector(
|
|
488
|
+
`div[data-date="${s.currentDateISO}"]`
|
|
489
|
+
);
|
|
490
|
+
n instanceof HTMLDivElement && n.focus();
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
}
|
|
480
494
|
closeEvent(e) {
|
|
481
495
|
this.contains(e.relatedTarget) || this.close();
|
|
482
496
|
}
|
|
@@ -570,7 +584,7 @@ export {
|
|
|
570
584
|
T as a,
|
|
571
585
|
x as b,
|
|
572
586
|
M as c,
|
|
573
|
-
|
|
587
|
+
$ as d,
|
|
574
588
|
C as g,
|
|
575
589
|
U as m,
|
|
576
590
|
v as s,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const a=require("./index-DZGlpxj6.cjs"),v=require("./converters-DhM11VlY.cjs"),
|
|
1
|
+
"use strict";const a=require("./index-DZGlpxj6.cjs"),v=require("./converters-DhM11VlY.cjs"),C=require("./directive-19_ixLKS.cjs"),$=require("./class-map-CFiVus5w.cjs");require("./index-DZ0cjZdG.cjs");function k(i){const e=Object.prototype.toString.call(i);return i instanceof Date||typeof i=="object"&&e==="[object Date]"?new i.constructor(+i):typeof i=="number"||e==="[object Number]"||typeof i=="string"||e==="[object String]"?new Date(i):new Date(NaN)}function w(i,e){return i instanceof Date?new i.constructor(e):new Date(e)}const x=6048e5,_=864e5;let P={};function b(){return P}function m(i,e){var h,c,d,p;const t=b(),s=(e==null?void 0:e.weekStartsOn)??((c=(h=e==null?void 0:e.locale)==null?void 0:h.options)==null?void 0:c.weekStartsOn)??t.weekStartsOn??((p=(d=t.locale)==null?void 0:d.options)==null?void 0:p.weekStartsOn)??0,n=k(i),r=n.getDay(),l=(r<s?7:0)+r-s;return n.setDate(n.getDate()-l),n.setHours(0,0,0,0),n}function S(i,e){const t=k(i.start),s=k(i.end);let n=+t>+s;const r=n?+t:+s,l=n?s:t;l.setHours(0,0,0,0);let h=1;const c=[];for(;+l<=r;)c.push(k(l)),l.setDate(l.getDate()+h),l.setHours(0,0,0,0);return n?c.reverse():c}function M(i,e){var p,u,f,y;const t=k(i),s=t.getFullYear(),n=b(),r=(e==null?void 0:e.firstWeekContainsDate)??((u=(p=e==null?void 0:e.locale)==null?void 0:p.options)==null?void 0:u.firstWeekContainsDate)??n.firstWeekContainsDate??((y=(f=n.locale)==null?void 0:f.options)==null?void 0:y.firstWeekContainsDate)??1,l=w(i,0);l.setFullYear(s+1,0,r),l.setHours(0,0,0,0);const h=m(l,e),c=w(i,0);c.setFullYear(s,0,r),c.setHours(0,0,0,0);const d=m(c,e);return t.getTime()>=h.getTime()?s+1:t.getTime()>=d.getTime()?s:s-1}function A(i,e){var h,c,d,p;const t=b(),s=(e==null?void 0:e.firstWeekContainsDate)??((c=(h=e==null?void 0:e.locale)==null?void 0:h.options)==null?void 0:c.firstWeekContainsDate)??t.firstWeekContainsDate??((p=(d=t.locale)==null?void 0:d.options)==null?void 0:p.firstWeekContainsDate)??1,n=M(i,e),r=w(i,0);return r.setFullYear(n,0,s),r.setHours(0,0,0,0),m(r,e)}function D(i,e){const t=k(i),s=+m(t,e)-+A(t,e);return Math.round(s/x)+1}function I(i){let t=k(i).getDay();return t===0&&(t=7),t}const T="pkt-calendar",E={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"}},R={"date-selected":{description:"Returns ISO formatted date string"}},g={name:T,"css-class":"pkt-calendar",props:E,events:R};var H=Object.defineProperty,W=Object.getOwnPropertyDescriptor,o=(i,e,t,s)=>{for(var n=s>1?void 0:s?W(e,t):e,r=i.length-1,l;r>=0;r--)(l=i[r])&&(n=(s?l(e,t,n):l(n))||n);return s&&n&&H(e,t,n),n};exports.PktCalendar=class extends a.PktElement{constructor(){super(),this.multiple=g.props.multiple.default,this.maxMultiple=g.props.maxMultiple.default,this.range=g.props.range.default,this.weeknumbers=g.props.weeknumbers.default,this.withcontrols=g.props.withcontrols.default,this.selected=[],this.earliest=g.props.earliest.default,this.latest=g.props.latest.default,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=new Date,this.dayStrings=this.strings.dates.daysShort,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=[]}connectedCallback(){const e=this.currentmonth;this.year=e.getFullYear(),this.month=e.getMonth(),this.week=D(new Date(this.year,this.month,1,12)),this.selected&&this.selected.length&&this.selected.forEach(t=>{this._selected.push(new Date(t))}),super.connectedCallback()}disconnectedCallback(){this.removeEventListener("keydown",this.handleKeydown),super.disconnectedCallback()}attributeChangedCallback(e,t,s){e==="currentmonth"&&s&&(this.currentmonth=new Date(s),this.year=this.currentmonth.getFullYear(),this.month=this.currentmonth.getMonth(),this.week=D(new Date(this.year,this.month,1,12))),e==="selected"&&s&&(this._selected=[],this.selected.forEach(n=>{this._selected.push(new Date(n))})),super.attributeChangedCallback(e,t,s)}updated(e){if(e.has("selected")&&this.selected.length===2){const t=S({start:new Date(this.selected[0]),end:new Date(this.selected[1])});if(this.inRange={},Array.isArray(t)&&t.length){const s={};for(let n=0;n<t.length;n++)s[this.formatISODate(t[n])]=this.isInRange(t[n]);this.inRange=s}}super.updated(e)}firstUpdated(e){this.addEventListener("keydown",this.handleKeydown)}handleKeydown(e){switch(e.key){case"ArrowLeft":this.handleArrowKey(e,-1);break;case"ArrowRight":this.handleArrowKey(e,1);break;case"ArrowUp":this.handleArrowKey(e,-7);break;case"ArrowDown":this.handleArrowKey(e,7);break}}handleArrowKey(e,t){if(e.preventDefault(),!this.focusedDate)return;const s=new Date(this.focusedDate);let n=new Date(s.setDate(s.getDate()+t));if(n){let r=this.querySelector(`div[data-date="${this.formatISODate(n)}"]`);if(r instanceof HTMLDivElement){if(r.dataset.disabled){let l=new Date(s.setDate(s.getDate()+t)),h=this.querySelector(`div[data-date="${this.formatISODate(l)}"]`);for(;h&&h instanceof HTMLDivElement&&h.dataset.disabled;)l=new Date(l.setDate(l.getDate()+t)),h=this.querySelector(`div[data-date="${this.formatISODate(l)}"]`);r=h}r instanceof HTMLDivElement&&!r.dataset.disabled&&r.focus()}}}render(){return a.ke`
|
|
2
2
|
<div
|
|
3
3
|
class="pkt-calendar ${this.weeknumbers?"pkt-cal-weeknumbers":a.D}"
|
|
4
4
|
@focusout=${this.closeEvent}
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
/>
|
|
57
57
|
</div> `):e.push(a.ke`<div class="pkt-txt-16-medium" aria-live="polite">
|
|
58
58
|
${this.monthStrings[this.month]} ${this.year}
|
|
59
|
-
</div>`),e}renderDayView(e,t,s){const n=new Date(this.year,this.month,e,12),r=this.formatISODate(n),l=r===this.formatISODate(t),h=this.selected.includes(r),c=this.isExcluded(s,n)||!h&&this.multiple&&this.maxMultiple>0&&this.selected.length>=this.maxMultiple,d=this.focusedDate?this.focusedDate===r?"0":"-1":e===1?"0":"-1";this.selectableDates.push({currentDateISO:r,isDisabled:c});const p={"pkt-cal-today":l,"pkt-cal-selected":h,"pkt-cal-in-range":this.inRange[r],"pkt-cal-excluded":this.isExcluded(s,n),"pkt-cal-in-range-first":this.range&&(this.selected.length===2||this.rangeHovered!==null)&&r===this.selected[0],"pkt-cal-in-range-last":this.range&&this.selected.length===2&&r===this.selected[1],"pkt-cal-range-hover":this.rangeHovered!==null&&r===this.formatISODate(this.rangeHovered)};return a.ke`<td class=${
|
|
59
|
+
</div>`),e}renderDayView(e,t,s){const n=new Date(this.year,this.month,e,12),r=this.formatISODate(n),l=r===this.formatISODate(t),h=this.selected.includes(r),c=this.isExcluded(s,n)||!h&&this.multiple&&this.maxMultiple>0&&this.selected.length>=this.maxMultiple,d=this.focusedDate?this.focusedDate===r?"0":"-1":e===1?"0":"-1";this.selectableDates.push({currentDateISO:r,isDisabled:c});const p={"pkt-cal-today":l,"pkt-cal-selected":h,"pkt-cal-in-range":this.inRange[r],"pkt-cal-excluded":this.isExcluded(s,n),"pkt-cal-in-range-first":this.range&&(this.selected.length===2||this.rangeHovered!==null)&&r===this.selected[0],"pkt-cal-in-range-last":this.range&&this.selected.length===2&&r===this.selected[1],"pkt-cal-range-hover":this.rangeHovered!==null&&r===this.formatISODate(this.rangeHovered)};return a.ke`<td class=${$.Rt(p)}>
|
|
60
60
|
<div
|
|
61
61
|
?aria-selected=${h}
|
|
62
62
|
role="gridcell"
|
|
@@ -71,12 +71,12 @@
|
|
|
71
71
|
>
|
|
72
72
|
<span class="pkt-btn__text pkt-txt-14-light">${e}</span>
|
|
73
73
|
</div>
|
|
74
|
-
</td>`}renderCalendarBody(){const e=new Date,t=new Date(this.year,this.month,1,12),s=new Date(this.year,this.month+1,0,12),n=(t.getDay()+6)%7,r=s.getDate(),l=Math.ceil((r+n)/7),c=new Date(this.year,this.month,0,12).getDate();let d=1;this.week=D(new Date(this.year,this.month,1,12));const p=[];for(let u=0;u<l;u++){const f=[];this.weeknumbers&&f.push(a.ke`<td class="pkt-cal-week">${this.week}</td>`),this.week++;for(let y=1;y<8;y++)if(u===0&&y<n+1){const
|
|
74
|
+
</td>`}renderCalendarBody(){const e=new Date,t=new Date(this.year,this.month,1,12),s=new Date(this.year,this.month+1,0,12),n=(t.getDay()+6)%7,r=s.getDate(),l=Math.ceil((r+n)/7),c=new Date(this.year,this.month,0,12).getDate();let d=1;this.week=D(new Date(this.year,this.month,1,12));const p=[];for(let u=0;u<l;u++){const f=[];this.weeknumbers&&f.push(a.ke`<td class="pkt-cal-week">${this.week}</td>`),this.week++;for(let y=1;y<8;y++)if(u===0&&y<n+1){const O=c-(n-y-1);f.push(a.ke`<td class="pkt-cal-other">
|
|
75
75
|
<div
|
|
76
76
|
class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--label-only"
|
|
77
77
|
data-disabled="disabled"
|
|
78
78
|
>
|
|
79
|
-
<span class="pkt-btn__text pkt-txt-14-light">${
|
|
79
|
+
<span class="pkt-btn__text pkt-txt-14-light">${O}</span>
|
|
80
80
|
</div>
|
|
81
81
|
</td>`)}else d>r?(f.push(a.ke`<td class="pkt-cal-other">
|
|
82
82
|
<div
|
|
@@ -87,4 +87,4 @@
|
|
|
87
87
|
</div>
|
|
88
88
|
</td>`),d++):(f.push(this.renderDayView(d,e,y)),d++);p.push(a.ke`<tr class="pkt-cal-week-row" role="row">
|
|
89
89
|
${f}
|
|
90
|
-
</tr>`)}return p}isExcluded(e,t){return this.excludeweekdays.includes(e.toString())||this.earliest&&t<new Date(this.earliest)||this.latest&&t>new Date(this.latest)?!0:this.excludedates.some(s=>typeof s=="string"?s===this.formatISODate(t):s.toDateString()===t.toDateString())}formatISODate(e){return e.toISOString().split("T")[0]}isPrevMonthAllowed(){const e=new Date(this.year,this.month,0,12);return!(this.earliest&&new Date(this.earliest)>e)}prevMonth(){const e=this.month===0?11:this.month-1,t=this.month===0?this.year-1:this.year;this.changeMonth(t,e)}isNextMonthAllowed(){const e=new Date(this.year,this.month===11?0:this.month+1,1,12);return!(this.latest&&new Date(this.latest)<e)}nextMonth(){const e=this.month===11?0:this.month+1,t=this.month===11?this.year+1:this.year;this.changeMonth(t,e)}changeMonth(e,t){this.year=e,this.month=t,this.selectableDates=[],this.requestUpdate("currentmonth")}isInRange(e){if(this.range&&this.selected.length===2){if(e>new Date(this.selected[0])&&e<new Date(this.selected[1]))return!0}else if(this.range&&this.selected.length===1&&this.rangeHovered&&e>new Date(this.selected[0])&&e<this.rangeHovered)return!0;return!1}isRangeAllowed(e){let t=!0;if(this._selected.length===1){const s=S({start:this._selected[0],end:e});if(Array.isArray(s)&&s.length)for(let n=0;n<s.length;n++)this.excludedates.forEach(r=>{r>this._selected[0]&&r<e&&(t=!1)}),this.excludeweekdays.includes(I(s[n]).toString())&&(t=!1)}return t}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}addToSelected(e){this.selected.includes(this.formatISODate(e))||(this.selected=[...this.selected,this.formatISODate(e)],this._selected=[...this._selected,e],this.range&&this.selected.length===2&&this.close())}removeFromSelected(e){if(this.selected.length===1)this.emptySelected();else{const t=this.selected.indexOf(this.formatISODate(e)),s=[...this.selected],n=[...this._selected];s.splice(t,1),n.splice(t,1),this.selected=s,this._selected=n}}toggleSelected(e){const t=this.formatISODate(e);this.selected.includes(t)?this.removeFromSelected(e):this.maxMultiple&&this.selected.length>=this.maxMultiple||this.addToSelected(e)}handleRangeSelect(e){const t=this.formatISODate(e);return this.selected.includes(t)?this.selected.indexOf(t)===0?this.emptySelected():this.removeFromSelected(e):this.selected.length>1?(this.emptySelected(),this.addToSelected(e)):(this.selected.length===1&&!this.isRangeAllowed(e)&&this.emptySelected(),this.selected.length===1&&this._selected[0]>e&&this.emptySelected(),this.addToSelected(e)),Promise.resolve()}handleRangeHover(e){if(this.range&&this._selected.length===1&&this.isRangeAllowed(e)&&this._selected[0]<e){this.rangeHovered=e,this.inRange={};const t=S({start:this._selected[0],end:e});if(Array.isArray(t)&&t.length)for(let s=0;s<t.length;s++)this.inRange[this.formatISODate(t[s])]=this.isInRange(t[s])}else this.rangeHovered=null}handleDateSelect(e){if(e)return this.range?this.handleRangeSelect(e):this.multiple?this.toggleSelected(e):(this.selected.includes(this.formatISODate(e))?this.emptySelected():(this.emptySelected(),this.addToSelected(e)),this.close()),this.dispatchEvent(new CustomEvent("date-selected",{detail:this.selected,bubbles:!0,composed:!0})),Promise.resolve()}closeEvent(e){this.contains(e.relatedTarget)||this.close()}close(){this.dispatchEvent(new CustomEvent("close",{detail:!0,bubbles:!0,composed:!0}))}};o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"multiple",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"maxMultiple",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"range",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"weeknumbers",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"withcontrols",2);o([a.n({converter:v.converters.csvToArray})],exports.PktCalendar.prototype,"selected",2);o([a.n({type:String,reflect:!0})],exports.PktCalendar.prototype,"earliest",2);o([a.n({type:String,reflect:!0})],exports.PktCalendar.prototype,"latest",2);o([a.n({converter:v.converters.stringsToDate})],exports.PktCalendar.prototype,"excludedates",2);o([a.n({converter:v.converters.csvToArray})],exports.PktCalendar.prototype,"excludeweekdays",2);o([a.n({converter:v.converters.stringToDate})],exports.PktCalendar.prototype,"currentmonth",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"dayStrings",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"monthStrings",2);o([a.n({type:String})],exports.PktCalendar.prototype,"weekString",2);o([a.n({type:String})],exports.PktCalendar.prototype,"prevMonthString",2);o([a.n({type:String})],exports.PktCalendar.prototype,"nextMonthString",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"_selected",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"year",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"month",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"week",2);o([a.n({type:Date})],exports.PktCalendar.prototype,"rangeHovered",2);o([a.r()],exports.PktCalendar.prototype,"inRange",2);o([a.r()],exports.PktCalendar.prototype,"focusedDate",2);o([a.r()],exports.PktCalendar.prototype,"selectableDates",2);exports.PktCalendar=o([
|
|
90
|
+
</tr>`)}return p}isExcluded(e,t){return this.excludeweekdays.includes(e.toString())||this.earliest&&t<new Date(this.earliest)||this.latest&&t>new Date(this.latest)?!0:this.excludedates.some(s=>typeof s=="string"?s===this.formatISODate(t):s.toDateString()===t.toDateString())}formatISODate(e){return e.toISOString().split("T")[0]}isPrevMonthAllowed(){const e=new Date(this.year,this.month,0,12);return!(this.earliest&&new Date(this.earliest)>e)}prevMonth(){const e=this.month===0?11:this.month-1,t=this.month===0?this.year-1:this.year;this.changeMonth(t,e)}isNextMonthAllowed(){const e=new Date(this.year,this.month===11?0:this.month+1,1,12);return!(this.latest&&new Date(this.latest)<e)}nextMonth(){const e=this.month===11?0:this.month+1,t=this.month===11?this.year+1:this.year;this.changeMonth(t,e)}changeMonth(e,t){this.year=e,this.month=t,this.selectableDates=[],this.requestUpdate("currentmonth")}isInRange(e){if(this.range&&this.selected.length===2){if(e>new Date(this.selected[0])&&e<new Date(this.selected[1]))return!0}else if(this.range&&this.selected.length===1&&this.rangeHovered&&e>new Date(this.selected[0])&&e<this.rangeHovered)return!0;return!1}isRangeAllowed(e){let t=!0;if(this._selected.length===1){const s=S({start:this._selected[0],end:e});if(Array.isArray(s)&&s.length)for(let n=0;n<s.length;n++)this.excludedates.forEach(r=>{r>this._selected[0]&&r<e&&(t=!1)}),this.excludeweekdays.includes(I(s[n]).toString())&&(t=!1)}return t}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}addToSelected(e){this.selected.includes(this.formatISODate(e))||(this.selected=[...this.selected,this.formatISODate(e)],this._selected=[...this._selected,e],this.range&&this.selected.length===2&&this.close())}removeFromSelected(e){if(this.selected.length===1)this.emptySelected();else{const t=this.selected.indexOf(this.formatISODate(e)),s=[...this.selected],n=[...this._selected];s.splice(t,1),n.splice(t,1),this.selected=s,this._selected=n}}toggleSelected(e){const t=this.formatISODate(e);this.selected.includes(t)?this.removeFromSelected(e):this.maxMultiple&&this.selected.length>=this.maxMultiple||this.addToSelected(e)}handleRangeSelect(e){const t=this.formatISODate(e);return this.selected.includes(t)?this.selected.indexOf(t)===0?this.emptySelected():this.removeFromSelected(e):this.selected.length>1?(this.emptySelected(),this.addToSelected(e)):(this.selected.length===1&&!this.isRangeAllowed(e)&&this.emptySelected(),this.selected.length===1&&this._selected[0]>e&&this.emptySelected(),this.addToSelected(e)),Promise.resolve()}handleRangeHover(e){if(this.range&&this._selected.length===1&&this.isRangeAllowed(e)&&this._selected[0]<e){this.rangeHovered=e,this.inRange={};const t=S({start:this._selected[0],end:e});if(Array.isArray(t)&&t.length)for(let s=0;s<t.length;s++)this.inRange[this.formatISODate(t[s])]=this.isInRange(t[s])}else this.rangeHovered=null}handleDateSelect(e){if(e)return this.range?this.handleRangeSelect(e):this.multiple?this.toggleSelected(e):(this.selected.includes(this.formatISODate(e))?this.emptySelected():(this.emptySelected(),this.addToSelected(e)),this.close()),this.dispatchEvent(new CustomEvent("date-selected",{detail:this.selected,bubbles:!0,composed:!0})),Promise.resolve()}focusOnCurrentDate(){const e=this.formatISODate(new Date),t=this.querySelector(`div[data-date="${e}"]`);if(t instanceof HTMLDivElement)t.focus();else{const s=this.selectableDates.find(n=>!n.isDisabled);if(s){const n=this.querySelector(`div[data-date="${s.currentDateISO}"]`);n instanceof HTMLDivElement&&n.focus()}}}closeEvent(e){this.contains(e.relatedTarget)||this.close()}close(){this.dispatchEvent(new CustomEvent("close",{detail:!0,bubbles:!0,composed:!0}))}};o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"multiple",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"maxMultiple",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"range",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"weeknumbers",2);o([a.n({type:Boolean,reflect:!0})],exports.PktCalendar.prototype,"withcontrols",2);o([a.n({converter:v.converters.csvToArray})],exports.PktCalendar.prototype,"selected",2);o([a.n({type:String,reflect:!0})],exports.PktCalendar.prototype,"earliest",2);o([a.n({type:String,reflect:!0})],exports.PktCalendar.prototype,"latest",2);o([a.n({converter:v.converters.stringsToDate})],exports.PktCalendar.prototype,"excludedates",2);o([a.n({converter:v.converters.csvToArray})],exports.PktCalendar.prototype,"excludeweekdays",2);o([a.n({converter:v.converters.stringToDate})],exports.PktCalendar.prototype,"currentmonth",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"dayStrings",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"monthStrings",2);o([a.n({type:String})],exports.PktCalendar.prototype,"weekString",2);o([a.n({type:String})],exports.PktCalendar.prototype,"prevMonthString",2);o([a.n({type:String})],exports.PktCalendar.prototype,"nextMonthString",2);o([a.n({type:Array})],exports.PktCalendar.prototype,"_selected",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"year",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"month",2);o([a.n({type:Number})],exports.PktCalendar.prototype,"week",2);o([a.n({type:Date})],exports.PktCalendar.prototype,"rangeHovered",2);o([a.r()],exports.PktCalendar.prototype,"inRange",2);o([a.r()],exports.PktCalendar.prototype,"focusedDate",2);o([a.r()],exports.PktCalendar.prototype,"selectableDates",2);exports.PktCalendar=o([C.t("pkt-calendar")],exports.PktCalendar);exports.constructFrom=w;exports.getDefaultOptions=b;exports.getWeek=D;exports.getWeekYear=M;exports.millisecondsInDay=_;exports.millisecondsInWeek=x;exports.startOfWeek=m;exports.toDate=k;
|
package/dist/index.d.ts
CHANGED
|
@@ -93,6 +93,7 @@ export declare class PktCalendar extends PktElement {
|
|
|
93
93
|
private handleRangeSelect;
|
|
94
94
|
private handleRangeHover;
|
|
95
95
|
handleDateSelect(selectedDate: Date | null): Promise<void> | undefined;
|
|
96
|
+
focusOnCurrentDate(): void;
|
|
96
97
|
closeEvent(e: FocusEvent): void;
|
|
97
98
|
close(): void;
|
|
98
99
|
}
|
|
@@ -228,7 +229,7 @@ export declare class PktDatepicker extends PktInputElement {
|
|
|
228
229
|
private handleFocusOut;
|
|
229
230
|
showCalendar(): Promise<void>;
|
|
230
231
|
hideCalendar(): void;
|
|
231
|
-
toggleCalendar(e: Event): void
|
|
232
|
+
toggleCalendar(e: Event): Promise<void>;
|
|
232
233
|
}
|
|
233
234
|
|
|
234
235
|
/**
|
package/dist/pkt-calendar.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-DZGlpxj6.cjs");require("./converters-DhM11VlY.cjs");require("./directive-19_ixLKS.cjs");require("./class-map-CFiVus5w.cjs");const e=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-DZGlpxj6.cjs");require("./converters-DhM11VlY.cjs");require("./directive-19_ixLKS.cjs");require("./class-map-CFiVus5w.cjs");const e=require("./index-C92NwPcv.cjs");require("./index-DZ0cjZdG.cjs");Object.defineProperty(exports,"PktCalendar",{enumerable:!0,get:()=>e.PktCalendar});
|
package/dist/pkt-calendar.js
CHANGED
|
@@ -2,7 +2,7 @@ import "./index-BoxUN9GL.js";
|
|
|
2
2
|
import "./converters-DNCwIFwr.js";
|
|
3
3
|
import "./directive-DA0-wdk7.js";
|
|
4
4
|
import "./class-map-DnAEF9tj.js";
|
|
5
|
-
import { P as e } from "./index-
|
|
5
|
+
import { P as e } from "./index-BAKMcM4b.js";
|
|
6
6
|
import "./index-CsKoXqeT.js";
|
|
7
7
|
export {
|
|
8
8
|
e as PktCalendar
|
package/dist/pkt-datepicker.cjs
CHANGED
|
@@ -1,72 +1,79 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./index-DZGlpxj6.cjs"),S=require("./directive-19_ixLKS.cjs"),o=require("./ref-G2cIenWo.cjs"),M=require("./class-map-CFiVus5w.cjs"),j=require("./converters-DhM11VlY.cjs"),g=require("./index-ZXmkp0To.cjs");require("./pkt-input-wrapper.cjs");require("./index-DZ0cjZdG.cjs");require("./pkt-tag.cjs");function C(n){return g.startOfWeek(n,{weekStartsOn:1})}function H(n){const t=g.toDate(n),e=t.getFullYear(),a=g.constructFrom(n,0);a.setFullYear(e+1,0,4),a.setHours(0,0,0,0);const r=C(a),i=g.constructFrom(n,0);i.setFullYear(e,0,4),i.setHours(0,0,0,0);const s=C(i);return t.getTime()>=r.getTime()?e+1:t.getTime()>=s.getTime()?e:e-1}function W(n){const t=g.toDate(n);return t.setHours(0,0,0,0),t}function _(n){const t=g.toDate(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 A(n,t){const e=W(n),a=W(t),r=+e-_(e),i=+a-_(a);return Math.round((r-i)/g.millisecondsInDay)}function L(n){const t=H(n),e=g.constructFrom(n,0);return e.setFullYear(t,0,4),e.setHours(0,0,0,0),C(e)}function Q(n){return n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]"}function X(n){if(!Q(n)&&typeof n!="number")return!1;const t=g.toDate(n);return!isNaN(Number(t))}function G(n){const t=g.toDate(n),e=g.constructFrom(n,0);return e.setFullYear(t.getFullYear(),0,1),e.setHours(0,0,0,0),e}const K={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"}},U=(n,t,e)=>{let a;const r=K[n];return typeof r=="string"?a=r:t===1?a=r.one:a=r.other.replace("{{count}}",t.toString()),e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"in "+a:a+" ago":a};function R(n){return(t={})=>{const e=t.width?String(t.width):n.defaultWidth;return n.formats[e]||n.formats[n.defaultWidth]}}const J={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},z={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Z={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},tt={date:R({formats:J,defaultWidth:"full"}),time:R({formats:z,defaultWidth:"full"}),dateTime:R({formats:Z,defaultWidth:"full"})},et={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},nt=(n,t,e,a)=>et[n];function T(n){return(t,e)=>{const a=e!=null&&e.context?String(e.context):"standalone";let r;if(a==="formatting"&&n.formattingValues){const s=n.defaultFormattingWidth||n.defaultWidth,h=e!=null&&e.width?String(e.width):s;r=n.formattingValues[h]||n.formattingValues[s]}else{const s=n.defaultWidth,h=e!=null&&e.width?String(e.width):n.defaultWidth;r=n.values[h]||n.values[s]}const i=n.argumentCallback?n.argumentCallback(t):t;return r[i]}}const at={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},rt={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},it={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"]},st={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"]},ot={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"}},ut={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"}},lt=(n,t)=>{const e=Number(n),a=e%100;if(a>20||a<10)switch(a%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},dt={ordinalNumber:lt,era:T({values:at,defaultWidth:"wide"}),quarter:T({values:rt,defaultWidth:"wide",argumentCallback:n=>n-1}),month:T({values:it,defaultWidth:"wide"}),day:T({values:st,defaultWidth:"wide"}),dayPeriod:T({values:ot,defaultWidth:"wide",formattingValues:ut,defaultFormattingWidth:"wide"})};function $(n){return(t,e={})=>{const a=e.width,r=a&&n.matchPatterns[a]||n.matchPatterns[n.defaultMatchWidth],i=t.match(r);if(!i)return null;const s=i[0],h=a&&n.parsePatterns[a]||n.parsePatterns[n.defaultParseWidth],v=Array.isArray(h)?ht(h,c=>c.test(s)):ct(h,c=>c.test(s));let w;w=n.valueCallback?n.valueCallback(v):v,w=e.valueCallback?e.valueCallback(w):w;const x=t.slice(s.length);return{value:w,rest:x}}}function ct(n,t){for(const e in n)if(Object.prototype.hasOwnProperty.call(n,e)&&t(n[e]))return e}function ht(n,t){for(let e=0;e<n.length;e++)if(t(n[e]))return e}function mt(n){return(t,e={})=>{const a=t.match(n.matchPattern);if(!a)return null;const r=a[0],i=t.match(n.parsePattern);if(!i)return null;let s=n.valueCallback?n.valueCallback(i[0]):i[0];s=e.valueCallback?e.valueCallback(s):s;const h=t.slice(r.length);return{value:s,rest:h}}}const ft=/^(\d+)(th|st|nd|rd)?/i,pt=/\d+/i,gt={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},yt={any:[/^b/i,/^(a|c)/i]},vt={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},wt={any:[/1/i,/2/i,/3/i,/4/i]},kt={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]},xt={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},Dt={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]},Pt={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},Ot={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}},Mt={ordinalNumber:mt({matchPattern:ft,parsePattern:pt,valueCallback:n=>parseInt(n,10)}),era:$({matchPatterns:gt,defaultMatchWidth:"wide",parsePatterns:yt,defaultParseWidth:"any"}),quarter:$({matchPatterns:vt,defaultMatchWidth:"wide",parsePatterns:wt,defaultParseWidth:"any",valueCallback:n=>n+1}),month:$({matchPatterns:kt,defaultMatchWidth:"wide",parsePatterns:bt,defaultParseWidth:"any"}),day:$({matchPatterns:xt,defaultMatchWidth:"wide",parsePatterns:Dt,defaultParseWidth:"any"}),dayPeriod:$({matchPatterns:Pt,defaultMatchWidth:"any",parsePatterns:Ot,defaultParseWidth:"any"})},Tt={code:"en-US",formatDistance:U,formatLong:tt,formatRelative:nt,localize:dt,match:Mt,options:{weekStartsOn:0,firstWeekContainsDate:1}};function $t(n){const t=g.toDate(n);return A(t,G(t))+1}function St(n){const t=g.toDate(n),e=+C(t)-+L(t);return Math.round(e/g.millisecondsInWeek)+1}function u(n,t){const e=n<0?"-":"",a=Math.abs(n).toString().padStart(t,"0");return e+a}const b={y(n,t){const e=n.getFullYear(),a=e>0?e:1-e;return u(t==="yy"?a%100:a,t.length)},M(n,t){const e=n.getMonth();return t==="M"?String(e+1):u(e+1,2)},d(n,t){return u(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 u(n.getHours()%12||12,t.length)},H(n,t){return u(n.getHours(),t.length)},m(n,t){return u(n.getMinutes(),t.length)},s(n,t){return u(n.getSeconds(),t.length)},S(n,t){const e=t.length,a=n.getMilliseconds(),r=Math.trunc(a*Math.pow(10,e-3));return u(r,t.length)}},O={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},q={G:function(n,t,e){const a=n.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return e.era(a,{width:"abbreviated"});case"GGGGG":return e.era(a,{width:"narrow"});case"GGGG":default:return e.era(a,{width:"wide"})}},y:function(n,t,e){if(t==="yo"){const a=n.getFullYear(),r=a>0?a:1-a;return e.ordinalNumber(r,{unit:"year"})}return b.y(n,t)},Y:function(n,t,e,a){const r=g.getWeekYear(n,a),i=r>0?r:1-r;if(t==="YY"){const s=i%100;return u(s,2)}return t==="Yo"?e.ordinalNumber(i,{unit:"year"}):u(i,t.length)},R:function(n,t){const e=H(n);return u(e,t.length)},u:function(n,t){const e=n.getFullYear();return u(e,t.length)},Q:function(n,t,e){const a=Math.ceil((n.getMonth()+1)/3);switch(t){case"Q":return String(a);case"QQ":return u(a,2);case"Qo":return e.ordinalNumber(a,{unit:"quarter"});case"QQQ":return e.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return e.quarter(a,{width:"narrow",context:"formatting"});case"QQQQ":default:return e.quarter(a,{width:"wide",context:"formatting"})}},q:function(n,t,e){const a=Math.ceil((n.getMonth()+1)/3);switch(t){case"q":return String(a);case"qq":return u(a,2);case"qo":return e.ordinalNumber(a,{unit:"quarter"});case"qqq":return e.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return e.quarter(a,{width:"narrow",context:"standalone"});case"qqqq":default:return e.quarter(a,{width:"wide",context:"standalone"})}},M:function(n,t,e){const a=n.getMonth();switch(t){case"M":case"MM":return b.M(n,t);case"Mo":return e.ordinalNumber(a+1,{unit:"month"});case"MMM":return e.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return e.month(a,{width:"narrow",context:"formatting"});case"MMMM":default:return e.month(a,{width:"wide",context:"formatting"})}},L:function(n,t,e){const a=n.getMonth();switch(t){case"L":return String(a+1);case"LL":return u(a+1,2);case"Lo":return e.ordinalNumber(a+1,{unit:"month"});case"LLL":return e.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return e.month(a,{width:"narrow",context:"standalone"});case"LLLL":default:return e.month(a,{width:"wide",context:"standalone"})}},w:function(n,t,e,a){const r=g.getWeek(n,a);return t==="wo"?e.ordinalNumber(r,{unit:"week"}):u(r,t.length)},I:function(n,t,e){const a=St(n);return t==="Io"?e.ordinalNumber(a,{unit:"week"}):u(a,t.length)},d:function(n,t,e){return t==="do"?e.ordinalNumber(n.getDate(),{unit:"date"}):b.d(n,t)},D:function(n,t,e){const a=$t(n);return t==="Do"?e.ordinalNumber(a,{unit:"dayOfYear"}):u(a,t.length)},E:function(n,t,e){const a=n.getDay();switch(t){case"E":case"EE":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"})}},e:function(n,t,e,a){const r=n.getDay(),i=(r-a.weekStartsOn+8)%7||7;switch(t){case"e":return String(i);case"ee":return u(i,2);case"eo":return e.ordinalNumber(i,{unit:"day"});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"})}},c:function(n,t,e,a){const r=n.getDay(),i=(r-a.weekStartsOn+8)%7||7;switch(t){case"c":return String(i);case"cc":return u(i,t.length);case"co":return e.ordinalNumber(i,{unit:"day"});case"ccc":return e.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return e.day(r,{width:"narrow",context:"standalone"});case"cccccc":return e.day(r,{width:"short",context:"standalone"});case"cccc":default:return e.day(r,{width:"wide",context:"standalone"})}},i:function(n,t,e){const a=n.getDay(),r=a===0?7:a;switch(t){case"i":return String(r);case"ii":return u(r,t.length);case"io":return e.ordinalNumber(r,{unit:"day"});case"iii":return e.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return e.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return e.day(a,{width:"short",context:"formatting"});case"iiii":default:return e.day(a,{width:"wide",context:"formatting"})}},a:function(n,t,e){const r=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return e.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return e.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(n,t,e){const a=n.getHours();let r;switch(a===12?r=O.noon:a===0?r=O.midnight:r=a/12>=1?"pm":"am",t){case"b":case"bb":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return e.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return e.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(n,t,e){const a=n.getHours();let r;switch(a>=17?r=O.evening:a>=12?r=O.afternoon:a>=4?r=O.morning:r=O.night,t){case"B":case"BB":case"BBB":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return e.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return e.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(n,t,e){if(t==="ho"){let a=n.getHours()%12;return a===0&&(a=12),e.ordinalNumber(a,{unit:"hour"})}return b.h(n,t)},H:function(n,t,e){return t==="Ho"?e.ordinalNumber(n.getHours(),{unit:"hour"}):b.H(n,t)},K:function(n,t,e){const a=n.getHours()%12;return t==="Ko"?e.ordinalNumber(a,{unit:"hour"}):u(a,t.length)},k:function(n,t,e){let a=n.getHours();return a===0&&(a=24),t==="ko"?e.ordinalNumber(a,{unit:"hour"}):u(a,t.length)},m:function(n,t,e){return t==="mo"?e.ordinalNumber(n.getMinutes(),{unit:"minute"}):b.m(n,t)},s:function(n,t,e){return t==="so"?e.ordinalNumber(n.getSeconds(),{unit:"second"}):b.s(n,t)},S:function(n,t){return b.S(n,t)},X:function(n,t,e){const a=n.getTimezoneOffset();if(a===0)return"Z";switch(t){case"X":return F(a);case"XXXX":case"XX":return P(a);case"XXXXX":case"XXX":default:return P(a,":")}},x:function(n,t,e){const a=n.getTimezoneOffset();switch(t){case"x":return F(a);case"xxxx":case"xx":return P(a);case"xxxxx":case"xxx":default:return P(a,":")}},O:function(n,t,e){const a=n.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Y(a,":");case"OOOO":default:return"GMT"+P(a,":")}},z:function(n,t,e){const a=n.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Y(a,":");case"zzzz":default:return"GMT"+P(a,":")}},t:function(n,t,e){const a=Math.trunc(n.getTime()/1e3);return u(a,t.length)},T:function(n,t,e){const a=n.getTime();return u(a,t.length)}};function Y(n,t=""){const e=n>0?"-":"+",a=Math.abs(n),r=Math.trunc(a/60),i=a%60;return i===0?e+String(r):e+String(r)+t+u(i,2)}function F(n,t){return n%60===0?(n>0?"-":"+")+u(Math.abs(n)/60,2):P(n,t)}function P(n,t=""){const e=n>0?"-":"+",a=Math.abs(n),r=u(Math.trunc(a/60),2),i=u(a%60,2);return e+r+t+i}const I=(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"})}},V=(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"})}},Ct=(n,t)=>{const e=n.match(/(P+)(p+)?/)||[],a=e[1],r=e[2];if(!r)return I(n,t);let i;switch(a){case"P":i=t.dateTime({width:"short"});break;case"PP":i=t.dateTime({width:"medium"});break;case"PPP":i=t.dateTime({width:"long"});break;case"PPPP":default:i=t.dateTime({width:"full"});break}return i.replace("{{date}}",I(a,t)).replace("{{time}}",V(r,t))},Rt={p:V,P:Ct},Et=/^D+$/,Wt=/^Y+$/,_t=["D","DD","YY","YYYY"];function qt(n){return Et.test(n)}function Yt(n){return Wt.test(n)}function Ft(n,t,e){const a=It(n,t,e);if(console.warn(a),_t.includes(n))throw new RangeError(a)}function It(n,t,e){const a=n[0]==="Y"?"years":"days of the month";return`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${t}\`) for formatting ${a} to the input \`${e}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Nt=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Bt=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,jt=/^'([^]*?)'?$/,Ht=/''/g,Vt=/[a-zA-Z]/;function At(n,t,e){var x,c,p,f;const a=g.getDefaultOptions(),r=a.locale??Tt,i=a.firstWeekContainsDate??((c=(x=a.locale)==null?void 0:x.options)==null?void 0:c.firstWeekContainsDate)??1,s=a.weekStartsOn??((f=(p=a.locale)==null?void 0:p.options)==null?void 0:f.weekStartsOn)??0,h=g.toDate(n);if(!X(h))throw new RangeError("Invalid time value");let v=t.match(Bt).map(d=>{const m=d[0];if(m==="p"||m==="P"){const D=Rt[m];return D(d,r.formatLong)}return d}).join("").match(Nt).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const m=d[0];if(m==="'")return{isToken:!1,value:Lt(d)};if(q[m])return{isToken:!0,value:d};if(m.match(Vt))throw new RangeError("Format string contains an unescaped latin alphabet character `"+m+"`");return{isToken:!1,value:d}});r.localize.preprocessor&&(v=r.localize.preprocessor(h,v));const w={firstWeekContainsDate:i,weekStartsOn:s,locale:r};return v.map(d=>{if(!d.isToken)return d.value;const m=d.value;(Yt(m)||qt(m))&&Ft(m,t,String(n));const D=q[m[0]];return D(h,m,r.localize,w)}).join("")}function Lt(n){const t=n.match(jt);return t?t[1].replace(Ht,"'"):n}/**
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./index-DZGlpxj6.cjs"),S=require("./directive-19_ixLKS.cjs"),o=require("./ref-G2cIenWo.cjs"),O=require("./class-map-CFiVus5w.cjs"),V=require("./converters-DhM11VlY.cjs"),g=require("./index-C92NwPcv.cjs");require("./pkt-input-wrapper.cjs");require("./index-DZ0cjZdG.cjs");require("./pkt-tag.cjs");function C(n){return g.startOfWeek(n,{weekStartsOn:1})}function j(n){const e=g.toDate(n),t=e.getFullYear(),a=g.constructFrom(n,0);a.setFullYear(t+1,0,4),a.setHours(0,0,0,0);const r=C(a),i=g.constructFrom(n,0);i.setFullYear(t,0,4),i.setHours(0,0,0,0);const s=C(i);return e.getTime()>=r.getTime()?t+1:e.getTime()>=s.getTime()?t:t-1}function _(n){const e=g.toDate(n);return e.setHours(0,0,0,0),e}function q(n){const e=g.toDate(n),t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),+n-+t}function A(n,e){const t=_(n),a=_(e),r=+t-q(t),i=+a-q(a);return Math.round((r-i)/g.millisecondsInDay)}function L(n){const e=j(n),t=g.constructFrom(n,0);return t.setFullYear(e,0,4),t.setHours(0,0,0,0),C(t)}function Q(n){return n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]"}function X(n){if(!Q(n)&&typeof n!="number")return!1;const e=g.toDate(n);return!isNaN(Number(e))}function G(n){const e=g.toDate(n),t=g.constructFrom(n,0);return t.setFullYear(e.getFullYear(),0,1),t.setHours(0,0,0,0),t}const K={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"}},U=(n,e,t)=>{let a;const r=K[n];return typeof r=="string"?a=r:e===1?a=r.one:a=r.other.replace("{{count}}",e.toString()),t!=null&&t.addSuffix?t.comparison&&t.comparison>0?"in "+a:a+" ago":a};function R(n){return(e={})=>{const t=e.width?String(e.width):n.defaultWidth;return n.formats[t]||n.formats[n.defaultWidth]}}const J={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},z={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Z={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ee={date:R({formats:J,defaultWidth:"full"}),time:R({formats:z,defaultWidth:"full"}),dateTime:R({formats:Z,defaultWidth:"full"})},te={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ne=(n,e,t,a)=>te[n];function $(n){return(e,t)=>{const a=t!=null&&t.context?String(t.context):"standalone";let r;if(a==="formatting"&&n.formattingValues){const s=n.defaultFormattingWidth||n.defaultWidth,h=t!=null&&t.width?String(t.width):s;r=n.formattingValues[h]||n.formattingValues[s]}else{const s=n.defaultWidth,h=t!=null&&t.width?String(t.width):n.defaultWidth;r=n.values[h]||n.values[s]}const i=n.argumentCallback?n.argumentCallback(e):e;return r[i]}}const ae={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},re={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},ie={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"]},se={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"]},oe={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"}},ue={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"}},le=(n,e)=>{const t=Number(n),a=t%100;if(a>20||a<10)switch(a%10){case 1:return t+"st";case 2:return t+"nd";case 3:return t+"rd"}return t+"th"},de={ordinalNumber:le,era:$({values:ae,defaultWidth:"wide"}),quarter:$({values:re,defaultWidth:"wide",argumentCallback:n=>n-1}),month:$({values:ie,defaultWidth:"wide"}),day:$({values:se,defaultWidth:"wide"}),dayPeriod:$({values:oe,defaultWidth:"wide",formattingValues:ue,defaultFormattingWidth:"wide"})};function T(n){return(e,t={})=>{const a=t.width,r=a&&n.matchPatterns[a]||n.matchPatterns[n.defaultMatchWidth],i=e.match(r);if(!i)return null;const s=i[0],h=a&&n.parsePatterns[a]||n.parsePatterns[n.defaultParseWidth],v=Array.isArray(h)?he(h,c=>c.test(s)):ce(h,c=>c.test(s));let w;w=n.valueCallback?n.valueCallback(v):v,w=t.valueCallback?t.valueCallback(w):w;const x=e.slice(s.length);return{value:w,rest:x}}}function ce(n,e){for(const t in n)if(Object.prototype.hasOwnProperty.call(n,t)&&e(n[t]))return t}function he(n,e){for(let t=0;t<n.length;t++)if(e(n[t]))return t}function fe(n){return(e,t={})=>{const a=e.match(n.matchPattern);if(!a)return null;const r=a[0],i=e.match(n.parsePattern);if(!i)return null;let s=n.valueCallback?n.valueCallback(i[0]):i[0];s=t.valueCallback?t.valueCallback(s):s;const h=e.slice(r.length);return{value:s,rest:h}}}const me=/^(\d+)(th|st|nd|rd)?/i,pe=/\d+/i,ge={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},ye={any:[/^b/i,/^(a|c)/i]},ve={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},we={any:[/1/i,/2/i,/3/i,/4/i]},ke={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},be={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]},xe={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},De={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]},Pe={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},Me={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}},Oe={ordinalNumber:fe({matchPattern:me,parsePattern:pe,valueCallback:n=>parseInt(n,10)}),era:T({matchPatterns:ge,defaultMatchWidth:"wide",parsePatterns:ye,defaultParseWidth:"any"}),quarter:T({matchPatterns:ve,defaultMatchWidth:"wide",parsePatterns:we,defaultParseWidth:"any",valueCallback:n=>n+1}),month:T({matchPatterns:ke,defaultMatchWidth:"wide",parsePatterns:be,defaultParseWidth:"any"}),day:T({matchPatterns:xe,defaultMatchWidth:"wide",parsePatterns:De,defaultParseWidth:"any"}),dayPeriod:T({matchPatterns:Pe,defaultMatchWidth:"any",parsePatterns:Me,defaultParseWidth:"any"})},$e={code:"en-US",formatDistance:U,formatLong:ee,formatRelative:ne,localize:de,match:Oe,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Te(n){const e=g.toDate(n);return A(e,G(e))+1}function Se(n){const e=g.toDate(n),t=+C(e)-+L(e);return Math.round(t/g.millisecondsInWeek)+1}function u(n,e){const t=n<0?"-":"",a=Math.abs(n).toString().padStart(e,"0");return t+a}const b={y(n,e){const t=n.getFullYear(),a=t>0?t:1-t;return u(e==="yy"?a%100:a,e.length)},M(n,e){const t=n.getMonth();return e==="M"?String(t+1):u(t+1,2)},d(n,e){return u(n.getDate(),e.length)},a(n,e){const t=n.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return t.toUpperCase();case"aaa":return t;case"aaaaa":return t[0];case"aaaa":default:return t==="am"?"a.m.":"p.m."}},h(n,e){return u(n.getHours()%12||12,e.length)},H(n,e){return u(n.getHours(),e.length)},m(n,e){return u(n.getMinutes(),e.length)},s(n,e){return u(n.getSeconds(),e.length)},S(n,e){const t=e.length,a=n.getMilliseconds(),r=Math.trunc(a*Math.pow(10,t-3));return u(r,e.length)}},M={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Y={G:function(n,e,t){const a=n.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return t.era(a,{width:"abbreviated"});case"GGGGG":return t.era(a,{width:"narrow"});case"GGGG":default:return t.era(a,{width:"wide"})}},y:function(n,e,t){if(e==="yo"){const a=n.getFullYear(),r=a>0?a:1-a;return t.ordinalNumber(r,{unit:"year"})}return b.y(n,e)},Y:function(n,e,t,a){const r=g.getWeekYear(n,a),i=r>0?r:1-r;if(e==="YY"){const s=i%100;return u(s,2)}return e==="Yo"?t.ordinalNumber(i,{unit:"year"}):u(i,e.length)},R:function(n,e){const t=j(n);return u(t,e.length)},u:function(n,e){const t=n.getFullYear();return u(t,e.length)},Q:function(n,e,t){const a=Math.ceil((n.getMonth()+1)/3);switch(e){case"Q":return String(a);case"QQ":return u(a,2);case"Qo":return t.ordinalNumber(a,{unit:"quarter"});case"QQQ":return t.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return t.quarter(a,{width:"narrow",context:"formatting"});case"QQQQ":default:return t.quarter(a,{width:"wide",context:"formatting"})}},q:function(n,e,t){const a=Math.ceil((n.getMonth()+1)/3);switch(e){case"q":return String(a);case"qq":return u(a,2);case"qo":return t.ordinalNumber(a,{unit:"quarter"});case"qqq":return t.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return t.quarter(a,{width:"narrow",context:"standalone"});case"qqqq":default:return t.quarter(a,{width:"wide",context:"standalone"})}},M:function(n,e,t){const a=n.getMonth();switch(e){case"M":case"MM":return b.M(n,e);case"Mo":return t.ordinalNumber(a+1,{unit:"month"});case"MMM":return t.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return t.month(a,{width:"narrow",context:"formatting"});case"MMMM":default:return t.month(a,{width:"wide",context:"formatting"})}},L:function(n,e,t){const a=n.getMonth();switch(e){case"L":return String(a+1);case"LL":return u(a+1,2);case"Lo":return t.ordinalNumber(a+1,{unit:"month"});case"LLL":return t.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return t.month(a,{width:"narrow",context:"standalone"});case"LLLL":default:return t.month(a,{width:"wide",context:"standalone"})}},w:function(n,e,t,a){const r=g.getWeek(n,a);return e==="wo"?t.ordinalNumber(r,{unit:"week"}):u(r,e.length)},I:function(n,e,t){const a=Se(n);return e==="Io"?t.ordinalNumber(a,{unit:"week"}):u(a,e.length)},d:function(n,e,t){return e==="do"?t.ordinalNumber(n.getDate(),{unit:"date"}):b.d(n,e)},D:function(n,e,t){const a=Te(n);return e==="Do"?t.ordinalNumber(a,{unit:"dayOfYear"}):u(a,e.length)},E:function(n,e,t){const a=n.getDay();switch(e){case"E":case"EE":case"EEE":return t.day(a,{width:"abbreviated",context:"formatting"});case"EEEEE":return t.day(a,{width:"narrow",context:"formatting"});case"EEEEEE":return t.day(a,{width:"short",context:"formatting"});case"EEEE":default:return t.day(a,{width:"wide",context:"formatting"})}},e:function(n,e,t,a){const r=n.getDay(),i=(r-a.weekStartsOn+8)%7||7;switch(e){case"e":return String(i);case"ee":return u(i,2);case"eo":return t.ordinalNumber(i,{unit:"day"});case"eee":return t.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return t.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return t.day(r,{width:"short",context:"formatting"});case"eeee":default:return t.day(r,{width:"wide",context:"formatting"})}},c:function(n,e,t,a){const r=n.getDay(),i=(r-a.weekStartsOn+8)%7||7;switch(e){case"c":return String(i);case"cc":return u(i,e.length);case"co":return t.ordinalNumber(i,{unit:"day"});case"ccc":return t.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return t.day(r,{width:"narrow",context:"standalone"});case"cccccc":return t.day(r,{width:"short",context:"standalone"});case"cccc":default:return t.day(r,{width:"wide",context:"standalone"})}},i:function(n,e,t){const a=n.getDay(),r=a===0?7:a;switch(e){case"i":return String(r);case"ii":return u(r,e.length);case"io":return t.ordinalNumber(r,{unit:"day"});case"iii":return t.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return t.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return t.day(a,{width:"short",context:"formatting"});case"iiii":default:return t.day(a,{width:"wide",context:"formatting"})}},a:function(n,e,t){const r=n.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return t.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return t.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return t.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return t.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(n,e,t){const a=n.getHours();let r;switch(a===12?r=M.noon:a===0?r=M.midnight:r=a/12>=1?"pm":"am",e){case"b":case"bb":return t.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return t.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return t.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return t.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(n,e,t){const a=n.getHours();let r;switch(a>=17?r=M.evening:a>=12?r=M.afternoon:a>=4?r=M.morning:r=M.night,e){case"B":case"BB":case"BBB":return t.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return t.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return t.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(n,e,t){if(e==="ho"){let a=n.getHours()%12;return a===0&&(a=12),t.ordinalNumber(a,{unit:"hour"})}return b.h(n,e)},H:function(n,e,t){return e==="Ho"?t.ordinalNumber(n.getHours(),{unit:"hour"}):b.H(n,e)},K:function(n,e,t){const a=n.getHours()%12;return e==="Ko"?t.ordinalNumber(a,{unit:"hour"}):u(a,e.length)},k:function(n,e,t){let a=n.getHours();return a===0&&(a=24),e==="ko"?t.ordinalNumber(a,{unit:"hour"}):u(a,e.length)},m:function(n,e,t){return e==="mo"?t.ordinalNumber(n.getMinutes(),{unit:"minute"}):b.m(n,e)},s:function(n,e,t){return e==="so"?t.ordinalNumber(n.getSeconds(),{unit:"second"}):b.s(n,e)},S:function(n,e){return b.S(n,e)},X:function(n,e,t){const a=n.getTimezoneOffset();if(a===0)return"Z";switch(e){case"X":return I(a);case"XXXX":case"XX":return P(a);case"XXXXX":case"XXX":default:return P(a,":")}},x:function(n,e,t){const a=n.getTimezoneOffset();switch(e){case"x":return I(a);case"xxxx":case"xx":return P(a);case"xxxxx":case"xxx":default:return P(a,":")}},O:function(n,e,t){const a=n.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+F(a,":");case"OOOO":default:return"GMT"+P(a,":")}},z:function(n,e,t){const a=n.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+F(a,":");case"zzzz":default:return"GMT"+P(a,":")}},t:function(n,e,t){const a=Math.trunc(n.getTime()/1e3);return u(a,e.length)},T:function(n,e,t){const a=n.getTime();return u(a,e.length)}};function F(n,e=""){const t=n>0?"-":"+",a=Math.abs(n),r=Math.trunc(a/60),i=a%60;return i===0?t+String(r):t+String(r)+e+u(i,2)}function I(n,e){return n%60===0?(n>0?"-":"+")+u(Math.abs(n)/60,2):P(n,e)}function P(n,e=""){const t=n>0?"-":"+",a=Math.abs(n),r=u(Math.trunc(a/60),2),i=u(a%60,2);return t+r+e+i}const N=(n,e)=>{switch(n){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}},H=(n,e)=>{switch(n){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}},Ce=(n,e)=>{const t=n.match(/(P+)(p+)?/)||[],a=t[1],r=t[2];if(!r)return N(n,e);let i;switch(a){case"P":i=e.dateTime({width:"short"});break;case"PP":i=e.dateTime({width:"medium"});break;case"PPP":i=e.dateTime({width:"long"});break;case"PPPP":default:i=e.dateTime({width:"full"});break}return i.replace("{{date}}",N(a,e)).replace("{{time}}",H(r,e))},Re={p:H,P:Ce},Ee=/^D+$/,We=/^Y+$/,_e=["D","DD","YY","YYYY"];function qe(n){return Ee.test(n)}function Ye(n){return We.test(n)}function Fe(n,e,t){const a=Ie(n,e,t);if(console.warn(a),_e.includes(n))throw new RangeError(a)}function Ie(n,e,t){const a=n[0]==="Y"?"years":"days of the month";return`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${e}\`) for formatting ${a} to the input \`${t}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Ne=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Be=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ve=/^'([^]*?)'?$/,je=/''/g,He=/[a-zA-Z]/;function Ae(n,e,t){var x,c,p,m;const a=g.getDefaultOptions(),r=a.locale??$e,i=a.firstWeekContainsDate??((c=(x=a.locale)==null?void 0:x.options)==null?void 0:c.firstWeekContainsDate)??1,s=a.weekStartsOn??((m=(p=a.locale)==null?void 0:p.options)==null?void 0:m.weekStartsOn)??0,h=g.toDate(n);if(!X(h))throw new RangeError("Invalid time value");let v=e.match(Be).map(d=>{const f=d[0];if(f==="p"||f==="P"){const D=Re[f];return D(d,r.formatLong)}return d}).join("").match(Ne).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const f=d[0];if(f==="'")return{isToken:!1,value:Le(d)};if(Y[f])return{isToken:!0,value:d};if(f.match(He))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:d}});r.localize.preprocessor&&(v=r.localize.preprocessor(h,v));const w={firstWeekContainsDate:i,weekStartsOn:s,locale:r};return v.map(d=>{if(!d.isToken)return d.value;const f=d.value;(Ye(f)||qe(f))&&Fe(f,e,String(n));const D=Y[f[0]];return D(h,f,r.localize,w)}).join("")}function Le(n){const e=n.match(Ve);return e?e[1].replace(je,"'"):n}/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2017 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
-
*/const
|
|
5
|
+
*/const B=(n,e,t)=>{const a=new Map;for(let r=e;r<=t;r++)a.set(n[r],r);return a},Qe=S.e(class extends S.i{constructor(n){if(super(n),n.type!==S.t$1.CHILD)throw Error("repeat() can only be used in text expressions")}dt(n,e,t){let a;t===void 0?t=e:e!==void 0&&(a=e);const r=[],i=[];let s=0;for(const h of n)r[s]=a?a(h,s):s,i[s]=t(h,s),s++;return{values:i,keys:r}}render(n,e,t){return this.dt(n,e,t).values}update(n,[e,t,a]){const r=o.ut(n),{values:i,keys:s}=this.dt(e,t,a);if(!Array.isArray(r))return this.ut=s,i;const h=this.ut??(this.ut=[]),v=[];let w,x,c=0,p=r.length-1,m=0,d=i.length-1;for(;c<=p&&m<=d;)if(r[c]===null)c++;else if(r[p]===null)p--;else if(h[c]===s[m])v[m]=o.ct(r[c],i[m]),c++,m++;else if(h[p]===s[d])v[d]=o.ct(r[p],i[d]),p--,d--;else if(h[c]===s[d])v[d]=o.ct(r[c],i[d]),o.at(n,v[d+1],r[c]),c++,d--;else if(h[p]===s[m])v[m]=o.ct(r[p],i[m]),o.at(n,r[c],r[p]),p--,m++;else if(w===void 0&&(w=B(s,m,d),x=B(h,c,p)),w.has(h[c]))if(w.has(h[p])){const f=x.get(s[m]),D=f!==void 0?r[f]:null;if(D===null){const W=o.at(n,r[c]);o.ct(W,i[m]),v[m]=W}else v[m]=o.ct(D,i[m]),o.at(n,r[c],D),r[f]=null;m++}else o.pt(r[p]),p--;else o.pt(r[c]),c++;for(;m<=d;){const f=o.at(n,v[d+1]);o.ct(f,i[m]),v[m++]=f}for(;c<=p;){const f=r[c++];f!==null&&o.pt(f)}return this.ut=s,o.dt(n,v),l.R}}),Xe="pkt-datepicker",Ge=!0,Ke={name:{type:"string",name:"Navn",description:"Navn som sendes brukes i skjema ved innsending"},label:{type:"string",name:"Etikett",description:"Tekst som vises over datovelgeren"},helptext:{type:"string",name:"Hjelpetekst",description:"Hjelpetekst som vises over datovelgeren"},helptextDropdown:{type:"string",name:"Utvidet hjelpetekst",description:"Hjelpetekst som vises i en lukket boks man kan åpne"},helptextDropdownButton:{type:"string",name:"Knappetekst for hjelpetekst",description:"Tekst som vises på knappen for å åpne/lukke utvidet hjelpetekst",default:"Les mer"},dateformat:{name:"Datoformat",description:"Datoformat for valgte datoer i flervalgsmodus",type:"string",default:"dd.MM.yyyy"},currentmonth:{name:"Nåværende måned",type:"ISOdatestring",description:"Måneden som skal vises i datovelgeren"},value:{name:"Verdi",type:"ISOdatestring",variant:"multiple",reflect:!0,description:"Kommaseparert liste av valgte datoer"},excludeweekdays:{name:"Utelat ukedager",type:"string",description:"Kommaseparert liste over ukedager (1-7) som skal ekskluderes"},excludedates:{name:"Utelat datoer",type:"ISOdatestring",variant:"multiple",description:"Kommaseparert liste over datoer som skal ekskluderes"},min:{name:"Tidligst tillatt",type:"ISOdatestring",default:null,description:"Første tillate dato i datovelgeren"},max:{name:"Senest tillatt",type:"ISOdatestring",default:null,description:"Siste tillate dato i datovelgeren"},weeknumbers:{name:"Vis ukenummer",type:"boolean",reflect:!0,default:!1,description:"Vis ukedager i datovelgerens kalender"},withcontrols:{name:"Med kontroller",type:"boolean",reflect:!0,default:!1,description:"Vis avanserte velgere for måned og år"},multiple:{name:"Flervalg",type:"boolean",reflect:!0,default:!1,description:"Tillat valg av flere enn én dato i samme velger"},maxlength:{name:"Maks antall",description:"Maks valgte datoer i flervalgsmodus",type:"number",default:4},range:{name:"Datotidsrom",type:"boolean",reflect:!0,default:!1,description:"Tillat å velge et tidsrom mellom to datoer i samme velger"},hasError:{type:"boolean",name:"Feil",description:"Viser feiltilstand for datovelgeren"},errorMessage:{type:"string",name:"Feilmelding",description:"Tekst som vises under datovelgeren ved feiltilstand"},disabled:{type:"boolean",name:"Deaktivert",default:!1,reflect:!0,description:"Er datovelgeren deaktivert?"},fullwidth:{type:"boolean",name:"Full bredde",default:!1,reflect:!0,description:"Skal datovelgeren ta opp hele bredden?"},required:{type:"boolean",name:"Påkrevd",default:!1,reflect:!0,description:"Er datovelgeren påkrevd?"},requiredTag:{type:"boolean",name:"Vise påkrevd-merking",default:!1,description:"Viser en merking som indikerer at datovelgeren er påkrevd"},requiredText:{type:"string",name:"Påkrevd-tekst",default:"Må fylles ut",description:"Tekst som vises i påkrevd-merkingen"},optionalTag:{type:"boolean",name:"Vise valgfritt-merking",default:!1,description:"Viser en merking som indikerer at datovelgeren er valgfri"},optionalText:{type:"string",name:"Valgfritt-tekst",default:"Valgfritt",description:"Tekst som vises i valgfritt-merkingen"},id:{type:"string",name:"ID",description:"Unik identifikasjon for datovelgeren"}},Ue={change:{type:"Event",description:"Returnerer valgt dato som streng i ISO-format"},"value-change":{type:"CustomEvent",description:"Returnerer en <code>array</code> med valgte datoer i ISO-format"},toggleHelpText:{type:"CustomEvent",description:"Returnerer <code>event.detail { isOpen: true }</code> eller <code>event.detail { isOpen: false }</code> når hjelpeteksten åpnes eller lukkes"}},k={name:Xe,"css-class":"pkt-datepicker",isElement:Ge,props:Ke,events:Ue};var Je=Object.defineProperty,ze=Object.getOwnPropertyDescriptor,y=(n,e,t,a)=>{for(var r=a>1?void 0:a?ze(e,t):e,i=n.length-1,s;i>=0;i--)(s=n[i])&&(r=(a?s(e,t,r):s(r))||r);return a&&r&&Je(e,t,r),r};const E=n=>new Promise(e=>setTimeout(e,n));exports.PktDatepicker=class extends l.PktInputElement{constructor(){super(...arguments),this.value="",this._value=this.value?Array.isArray(this.value)?this.value:this.value.split(","):[],this.label="Datovelger",this.helptext="",this.helptextDropdown="",this.helptextDropdownButton=k.props.helptextDropdownButton.default,this.dateformat=k.props.dateformat.default,this.multiple=k.props.multiple.default,this.maxlength=k.props.maxlength.default,this.range=k.props.range.default,this.weeknumbers=k.props.weeknumbers.default,this.withcontrols=k.props.withcontrols.default,this.fullwidth=!1,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=this.formatISODate(new Date),this.calendarOpen=!1,this.inputRef=o.ii(),this.inputRefTo=o.ii(),this.btnRef=o.ii(),this.calRef=o.ii(),this.popupRef=o.ii(),this.inputClasses={"pkt-input":!0,"pkt-datepicker__input":!0,"pkt-input--fullwidth":this.fullwidth},this.buttonClasses={"pkt-input-icon":!0,"pkt-btn":!0,"pkt-btn--icon-only":!0,"pkt-btn--tertiary":!0},this.fromISOToDate=e=>{if(!e)return null;const t=new Date(e);return t.setHours(12,0,0,0),isNaN(t.getTime())?null:t},this.fromISOtoLocal=e=>{const t=new Date(e);return isNaN(t.getTime())?"":Ae(t,this.dateformat)},this.massageDates=e=>{const t=e.map(a=>a??void 0);return this.multiple?t:this.range?t.slice(0,2):[t[0]]},this.addToSelected=e=>{const t=e.target,a=this.min?new Date(this.min):null,r=this.max?new Date(this.max):null,i=new Date(t.value.split(",")[0]);i.setHours(12,0,0,0),i&&!isNaN(i.getTime())&&(!a||i>=a)&&(!r||i<=r)&&this.calRef.value&&this.calRef.value.handleDateSelect(i),t.value=""}}async connectedCallback(){super.connectedCallback(),this.isMobileSafari=/iP(ad|od|hone)/i.test(window.navigator.userAgent)&&!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/),this.inputType=this.isMobileSafari?"text":"date",document&&document.body.addEventListener("click",e=>{var t,a;(t=this.inputRef)!=null&&t.value&&((a=this.btnRef)!=null&&a.value)&&!this.inputRef.value.contains(e.target)&&!(this.inputRefTo.value&&this.inputRefTo.value.contains(e.target))&&!this.btnRef.value.contains(e.target)&&!e.target.closest(".pkt-calendar-popup")&&this.hideCalendar()}),this.value.length&&this._value.length===0&&(this._value=Array.isArray(this.value)?this.value:this.value.split(",")),this.min=this.min||k.props.min.default,this.max=this.max||k.props.max.default,typeof this.excludedates=="string"&&(this.excludedates=this.excludedates.split(",")),typeof this.excludeweekdays=="string"&&(this.excludeweekdays=this.excludeweekdays.split(",")),(this.multiple||this.range)&&this.name&&!this.name.endsWith("[]")&&(this.name=this.name+"[]"),this.calendarOpen&&(await E(20),this.handleCalendarPosition())}disconnectedCallback(){super.disconnectedCallback(),document&&document.body.removeEventListener("click",e=>{var t,a;(t=this.inputRef)!=null&&t.value&&((a=this.btnRef)!=null&&a.value)&&!this.inputRef.value.contains(e.target)&&!this.btnRef.value.contains(e.target)&&this.hideCalendar()})}attributeChangedCallback(e,t,a){e==="value"&&this.valueChanged(this.value,t),e==="excludedates"&&typeof this.excludedates=="string"&&(this.excludedates=(a==null?void 0:a.split(","))??[]),e==="excludeweekdays"&&typeof this.excludeweekdays=="string"&&(this.excludeweekdays=(a==null?void 0:a.split(","))??[]),super.attributeChangedCallback(e,t,a)}firstUpdated(e){super.firstUpdated(e)}updated(e){if(super.updated(e),e.has("value")){if(this.range&&this._value.length===1)return;this.valueChanged(this.value,e.get("value"))}}formatISODate(e){return e.toISOString().split("T")[0]}renderInput(){return l.ke`
|
|
6
6
|
<input
|
|
7
|
-
class="${
|
|
8
|
-
type
|
|
7
|
+
class="${O.Rt(this.inputClasses)}"
|
|
8
|
+
.type=${this.inputType}
|
|
9
9
|
id="${this.id}-input"
|
|
10
10
|
.value=${this._value[0]??""}
|
|
11
11
|
min=${this.min}
|
|
12
12
|
max=${this.max}
|
|
13
|
-
@click=${
|
|
13
|
+
@click=${e=>{e.preventDefault(),this.showCalendar()}}
|
|
14
14
|
?disabled=${this.disabled}
|
|
15
|
-
@
|
|
16
|
-
@
|
|
15
|
+
@keydown=${e=>{var t;(e.key===","||e.key==="Enter")&&((t=this.inputRef.value)==null||t.blur())}}
|
|
16
|
+
@focus=${()=>{this.isMobileSafari&&this.showCalendar()}}
|
|
17
|
+
@blur=${e=>{this.manageValidity(e.target),this.value=e.target.value}}
|
|
18
|
+
@change=${e=>{e.stopImmediatePropagation()}}
|
|
17
19
|
${o.Kt(this.inputRef)}
|
|
18
20
|
/>
|
|
19
21
|
`}renderRangeInput(){return l.ke`
|
|
20
22
|
<div class="pkt-input-prefix">Fra</div>
|
|
21
23
|
<input
|
|
22
|
-
class=${
|
|
23
|
-
type
|
|
24
|
+
class=${O.Rt(this.inputClasses)}
|
|
25
|
+
.type=${this.inputType}
|
|
24
26
|
id="${this.id}-input"
|
|
25
27
|
.value=${this._value[0]??""}
|
|
26
28
|
min=${this.min}
|
|
27
29
|
max=${this.max}
|
|
28
|
-
@click=${
|
|
30
|
+
@click=${e=>{e.preventDefault(),this.showCalendar()}}
|
|
29
31
|
?disabled=${this.disabled}
|
|
30
|
-
@
|
|
31
|
-
@
|
|
32
|
+
@keydown=${e=>{var t;(e.key===","||e.key==="Enter")&&((t=this.inputRef.value)==null||t.blur())}}
|
|
33
|
+
@focus=${()=>{this.isMobileSafari&&this.showCalendar()}}
|
|
34
|
+
@blur=${e=>{var t,a;if(e.target.value){this.manageValidity(e.target);const r=this.fromISOToDate(e.target.value);r&&this._value[0]!==e.target.value&&this._value[1]&&((a=(t=this.calRef)==null?void 0:t.value)==null||a.handleDateSelect(r))}else this._value[0]&&this.clearInputValue()}}
|
|
35
|
+
@change=${e=>{e.stopImmediatePropagation()}}
|
|
32
36
|
${o.Kt(this.inputRef)}
|
|
33
37
|
/>
|
|
34
38
|
<div class="pkt-input-prefix">Til</div>
|
|
35
39
|
<input
|
|
36
|
-
class=${
|
|
37
|
-
type
|
|
40
|
+
class=${O.Rt(this.inputClasses)}
|
|
41
|
+
.type=${this.inputType}
|
|
38
42
|
id="${this.id}-to"
|
|
39
43
|
.value=${this._value[1]??""}
|
|
40
44
|
min=${this.min}
|
|
41
45
|
max=${this.max}
|
|
42
|
-
@click=${
|
|
46
|
+
@click=${e=>{e.preventDefault(),this.showCalendar()}}
|
|
43
47
|
?disabled=${this.disabled}
|
|
44
|
-
@
|
|
45
|
-
@
|
|
48
|
+
@keydown=${e=>{var t;(e.key===","||e.key==="Enter")&&((t=this.inputRefTo.value)==null||t.blur())}}
|
|
49
|
+
@focus=${()=>{this.isMobileSafari&&this.showCalendar()}}
|
|
50
|
+
@blur=${e=>{var t,a;if(e.target.value){this.manageValidity(e.target);const r=e.target.value;this.min&&this.min>r?this.internals.setValidity({rangeUnderflow:!0},this.strings.forms.messages.rangeUnderflow,e.target):this.max&&this.max<r&&this.internals.setValidity({rangeOverflow:!0},this.strings.forms.messages.rangeOverflow,e.target);const i=this.fromISOToDate(e.target.value);i&&this._value[1]!==this.formatISODate(i)&&((a=(t=this.calRef)==null?void 0:t.value)==null||a.handleDateSelect(i))}}}
|
|
51
|
+
@change=${e=>{e.stopImmediatePropagation()}}
|
|
46
52
|
${o.Kt(this.inputRefTo)}
|
|
47
53
|
/>
|
|
48
54
|
`}renderMultipleInput(){return l.ke`
|
|
49
55
|
<input
|
|
50
|
-
class=${
|
|
51
|
-
type
|
|
56
|
+
class=${O.Rt(this.inputClasses)}
|
|
57
|
+
.type=${this.inputType}
|
|
52
58
|
id="${this.id}-input"
|
|
53
59
|
min=${this.min}
|
|
54
60
|
max=${this.max}
|
|
55
|
-
@click=${
|
|
56
|
-
@blur=${
|
|
57
|
-
@
|
|
61
|
+
@click=${e=>{e.preventDefault(),this.showCalendar()}}
|
|
62
|
+
@blur=${e=>{this.addToSelected(e)}}
|
|
63
|
+
@focus=${()=>{this.isMobileSafari&&this.showCalendar()}}
|
|
64
|
+
@keydown=${e=>{(e.key===","||e.key==="Enter")&&(e.preventDefault(),this.addToSelected(e))}}
|
|
58
65
|
?disabled=${this.disabled||this.maxlength&&this._value.length>=this.maxlength}
|
|
59
|
-
@change=${
|
|
66
|
+
@change=${e=>{e.stopImmediatePropagation()}}
|
|
60
67
|
${o.Kt(this.inputRef)}
|
|
61
68
|
/>
|
|
62
69
|
`}renderTags(){return l.ke`
|
|
63
70
|
<div class="pkt-datepicker__tags" aria-live="polite">
|
|
64
|
-
${this._value[0]?
|
|
71
|
+
${this._value[0]?Qe(this._value??[],e=>e,e=>l.ke`
|
|
65
72
|
<pkt-tag
|
|
66
|
-
.id="${this.id+
|
|
73
|
+
.id="${this.id+e+"-tag"}"
|
|
67
74
|
closeTag
|
|
68
|
-
@onClose=${()=>{var
|
|
69
|
-
>${this.fromISOtoLocal(
|
|
75
|
+
@onClose=${()=>{var t;return(t=this.calRef.value)==null?void 0:t.handleDateSelect(this.fromISOToDate(e))}}
|
|
76
|
+
>${this.fromISOtoLocal(e)}</pkt-tag
|
|
70
77
|
>
|
|
71
78
|
`):l.D}
|
|
72
79
|
</div>
|
|
@@ -88,7 +95,7 @@
|
|
|
88
95
|
.excludedates=${Array.isArray(this.excludedates)?this.excludedates:this.excludedates.split(",")}
|
|
89
96
|
.excludeweekdays=${this.excludeweekdays}
|
|
90
97
|
.currentmonth=${new Date(this.currentmonth)}
|
|
91
|
-
@date-selected=${
|
|
98
|
+
@date-selected=${e=>{this.value=!this.multiple&&!this.range?e.detail[0]:e.detail,this._value=e.detail,this.inputRef.value&&(this.range&&this.inputRefTo.value?(this.inputRef.value.value=this._value[0]??"",this.inputRefTo.value.value=this._value[1]??""):this.multiple||(this.inputRef.value.value=this._value.length?this._value[0]:""))}}
|
|
92
99
|
@close=${this.hideCalendar}
|
|
93
100
|
${o.Kt(this.calRef)}
|
|
94
101
|
></pkt-calendar>
|
|
@@ -104,6 +111,7 @@
|
|
|
104
111
|
?required=${this.required}
|
|
105
112
|
?optionalTag=${this.optionalTag}
|
|
106
113
|
?requiredTag=${this.requiredTag}
|
|
114
|
+
?focusPreventDefault=${!0}
|
|
107
115
|
.optionalText=${this.optionalText}
|
|
108
116
|
.requiredText=${this.requiredText}
|
|
109
117
|
.errorMessage=${this.errorMessage}
|
|
@@ -117,8 +125,9 @@
|
|
|
117
125
|
<div class="pkt-input__container">
|
|
118
126
|
${this.range?this.renderRangeInput():this.multiple?this.renderMultipleInput():this.renderInput()}
|
|
119
127
|
<button
|
|
120
|
-
class="${
|
|
128
|
+
class="${O.Rt(this.buttonClasses)}"
|
|
121
129
|
@click=${this.toggleCalendar}
|
|
130
|
+
?disabled=${this.disabled}
|
|
122
131
|
${o.Kt(this.btnRef)}
|
|
123
132
|
>
|
|
124
133
|
<pkt-icon name="calendar"></pkt-icon>
|
|
@@ -128,4 +137,4 @@
|
|
|
128
137
|
</div>
|
|
129
138
|
</pkt-input-wrapper>
|
|
130
139
|
${this.renderCalendar()}
|
|
131
|
-
`}handleCalendarPosition(){var
|
|
140
|
+
`}handleCalendarPosition(){var e;if(this.popupRef.value&&this.inputRef.value){const t=this.multiple&&!!this.maxlength,a=((e=this.inputRef.value.parentElement)==null?void 0:e.getBoundingClientRect())||this.inputRef.value.getBoundingClientRect(),r=t?a.height+30:a.height,i=this.popupRef.value.getBoundingClientRect().height;let s=t?"calc(100% - 30px)":"100%";a&&a.top+i>window.innerHeight&&a.top-i>0&&(s=`calc(100% - ${r}px - ${i}px)`),this.popupRef.value.style.top=s}}handleFocusOut(e){this.contains(e.target)||this.hideCalendar()}async showCalendar(){var e;this.calendarOpen=!0,await E(20),this.handleCalendarPosition(),this.isMobileSafari&&((e=this.calRef.value)==null||e.focusOnCurrentDate())}hideCalendar(){this.calendarOpen=!1}async toggleCalendar(e){var t;e.preventDefault(),this.calendarOpen?this.hideCalendar():this.showCalendar(),await E(20),this.isMobileSafari&&((t=this.calRef.value)==null||t.focusOnCurrentDate())}};y([l.n({type:String,reflect:!0})],exports.PktDatepicker.prototype,"value",2);y([l.n({type:Array,reflect:!1})],exports.PktDatepicker.prototype,"_value",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"label",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"helptext",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"helptextDropdown",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"helptextDropdownButton",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"dateformat",2);y([l.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"multiple",2);y([l.n({type:Number})],exports.PktDatepicker.prototype,"maxlength",2);y([l.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"range",2);y([l.n({type:Boolean})],exports.PktDatepicker.prototype,"weeknumbers",2);y([l.n({type:Boolean})],exports.PktDatepicker.prototype,"withcontrols",2);y([l.n({type:Boolean})],exports.PktDatepicker.prototype,"fullwidth",2);y([l.n({converter:V.converters.csvToArray})],exports.PktDatepicker.prototype,"excludedates",2);y([l.n({converter:V.converters.csvToArray})],exports.PktDatepicker.prototype,"excludeweekdays",2);y([l.n({type:String})],exports.PktDatepicker.prototype,"currentmonth",2);y([l.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"calendarOpen",2);exports.PktDatepicker=y([S.t("pkt-datepicker")],exports.PktDatepicker);
|