@oslokommune/punkt-elements 12.3.2 → 12.3.4
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/{class-map-DfznHRRW.cjs → class-map-1LSYgumx.cjs} +1 -1
- package/dist/{class-map-CEzmgstO.js → class-map-QbdgvBsV.js} +1 -1
- package/dist/{index-BkqOsymS.cjs → index-B5_qWvbO.cjs} +5 -5
- package/dist/{index-BCVyjeWS.cjs → index-C7NOKSUx.cjs} +1 -1
- package/dist/{index-BkKs8Yam.js → index-C9AIH4rL.js} +101 -99
- package/dist/{index-CINnuWkG.js → index-CGGB6fVA.js} +58 -53
- package/dist/{index-CkBUiPHx.cjs → index-CSa2k4ML.cjs} +5 -5
- package/dist/{index-C7OaW8f8.js → index-t0H-gKGh.js} +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/pkt-alert.cjs +1 -1
- package/dist/pkt-alert.js +4 -4
- package/dist/pkt-calendar.cjs +1 -1
- package/dist/pkt-calendar.js +4 -4
- package/dist/pkt-card.cjs +3 -3
- package/dist/pkt-card.js +9 -9
- package/dist/pkt-component-template.cjs +1 -1
- package/dist/pkt-component-template.js +3 -3
- package/dist/pkt-datepicker.cjs +31 -40
- package/dist/pkt-datepicker.js +65 -83
- package/dist/pkt-element.cjs +1 -1
- package/dist/pkt-element.js +1 -1
- package/dist/pkt-icon.cjs +1 -1
- package/dist/pkt-icon.js +2 -2
- package/dist/pkt-index.cjs +1 -1
- package/dist/pkt-index.js +2 -2
- package/dist/pkt-input-wrapper.cjs +1 -1
- package/dist/pkt-input-wrapper.js +4 -4
- package/dist/pkt-link.cjs +8 -3
- package/dist/pkt-link.js +50 -31
- package/dist/pkt-messagebox.cjs +1 -1
- package/dist/pkt-messagebox.js +4 -4
- package/dist/pkt-tag.cjs +1 -1
- package/dist/pkt-tag.js +4 -4
- package/dist/{ref-BkUqMgQu.cjs → ref-BK6FYWo3.cjs} +1 -1
- package/dist/{ref-Cau3ksvI.js → ref-v9geUvt6.js} +1 -1
- package/package.json +3 -3
- package/src/components/calendar/index.ts +19 -3
- package/src/components/card/index.ts +0 -1
- package/src/components/datepicker/index.ts +18 -21
- package/src/components/element/index.ts +15 -8
- package/src/components/link/index.ts +8 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const a=require("./index-
|
|
1
|
+
"use strict";const a=require("./index-CSa2k4ML.cjs"),n=require("./directive-19_ixLKS.cjs");/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2018 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const a=require("./index-
|
|
1
|
+
"use strict";const a=require("./index-CSa2k4ML.cjs"),v=require("./converters-DhM11VlY.cjs"),O=require("./directive-19_ixLKS.cjs"),_=require("./class-map-1LSYgumx.cjs");require("./index-C7NOKSUx.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 W=Object.defineProperty,H=Object.getOwnPropertyDescriptor,o=(i,e,t,s)=>{for(var n=s>1?void 0:s?H(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&&W(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=
|
|
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 C=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">${C}</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=
|
|
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([O.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;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const o=require("./index-
|
|
1
|
+
"use strict";const o=require("./index-CSa2k4ML.cjs"),n=require("./directive-19_ixLKS.cjs");/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2017 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { r as
|
|
1
|
+
import { r as O, P as $, k as f, D, n as c } from "./index-CGGB6fVA.js";
|
|
2
2
|
import { a as b } from "./converters-DNCwIFwr.js";
|
|
3
3
|
import { t as A } from "./directive-DA0-wdk7.js";
|
|
4
|
-
import { R as I } from "./class-map-
|
|
5
|
-
import "./index-
|
|
4
|
+
import { R as I } from "./class-map-QbdgvBsV.js";
|
|
5
|
+
import "./index-t0H-gKGh.js";
|
|
6
6
|
function k(e) {
|
|
7
7
|
const t = Object.prototype.toString.call(e);
|
|
8
8
|
return e instanceof Date || typeof e == "object" && t === "[object Date]" ? new e.constructor(+e) : typeof e == "number" || t === "[object Number]" || typeof e == "string" || t === "[object String]" ? new Date(e) : /* @__PURE__ */ new Date(NaN);
|
|
9
9
|
}
|
|
10
|
-
function
|
|
10
|
+
function M(e, t) {
|
|
11
11
|
return e instanceof Date ? new e.constructor(t) : new Date(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
|
-
var p,
|
|
20
|
-
const s =
|
|
19
|
+
var p, h, u, d;
|
|
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) {
|
|
24
24
|
const s = k(e.start), n = k(e.end);
|
|
25
25
|
let a = +s > +n;
|
|
26
|
-
const
|
|
26
|
+
const l = a ? +s : +n, i = a ? n : s;
|
|
27
27
|
i.setHours(0, 0, 0, 0);
|
|
28
28
|
let p = 1;
|
|
29
|
-
const
|
|
30
|
-
for (; +i <=
|
|
31
|
-
|
|
32
|
-
return a ?
|
|
29
|
+
const h = [];
|
|
30
|
+
for (; +i <= l; )
|
|
31
|
+
h.push(k(i)), i.setDate(i.getDate() + p), i.setHours(0, 0, 0, 0);
|
|
32
|
+
return a ? h.reverse() : h;
|
|
33
33
|
}
|
|
34
|
-
function
|
|
34
|
+
function C(e, t) {
|
|
35
35
|
var d, y, m, w;
|
|
36
|
-
const s = k(e), n = s.getFullYear(), a =
|
|
37
|
-
i.setFullYear(n + 1, 0,
|
|
38
|
-
const p = v(i, t),
|
|
39
|
-
|
|
40
|
-
const u = v(
|
|
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 ?? ((w = (m = a.locale) == null ? void 0 : m.options) == null ? void 0 : w.firstWeekContainsDate) ?? 1, i = M(e, 0);
|
|
37
|
+
i.setFullYear(n + 1, 0, l), i.setHours(0, 0, 0, 0);
|
|
38
|
+
const p = v(i, t), h = M(e, 0);
|
|
39
|
+
h.setFullYear(n, 0, l), h.setHours(0, 0, 0, 0);
|
|
40
|
+
const u = v(h, t);
|
|
41
41
|
return s.getTime() >= p.getTime() ? n + 1 : s.getTime() >= u.getTime() ? n : n - 1;
|
|
42
42
|
}
|
|
43
|
-
function
|
|
44
|
-
var p,
|
|
45
|
-
const s =
|
|
46
|
-
return
|
|
43
|
+
function R(e, t) {
|
|
44
|
+
var p, h, u, d;
|
|
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
|
+
return l.setFullYear(a, 0, n), l.setHours(0, 0, 0, 0), v(l, t);
|
|
47
47
|
}
|
|
48
|
-
function
|
|
49
|
-
const s = k(e), n = +v(s, t) - +
|
|
48
|
+
function x(e, t) {
|
|
49
|
+
const s = k(e), n = +v(s, t) - +R(s, t);
|
|
50
50
|
return Math.round(n / T) + 1;
|
|
51
51
|
}
|
|
52
52
|
function H(e) {
|
|
@@ -140,30 +140,35 @@ const N = "pkt-calendar", P = {
|
|
|
140
140
|
props: P,
|
|
141
141
|
events: W
|
|
142
142
|
};
|
|
143
|
-
var Y = Object.defineProperty, F = Object.getOwnPropertyDescriptor,
|
|
144
|
-
for (var a = n > 1 ? void 0 : n ? F(t, s) : t,
|
|
145
|
-
(i = e[
|
|
143
|
+
var Y = Object.defineProperty, F = Object.getOwnPropertyDescriptor, o = (e, t, s, n) => {
|
|
144
|
+
for (var a = n > 1 ? void 0 : n ? F(t, s) : t, l = e.length - 1, i; l >= 0; l--)
|
|
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
|
*/
|
|
152
152
|
constructor() {
|
|
153
|
-
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.
|
|
153
|
+
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 = /* @__PURE__ */ 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 = [];
|
|
154
154
|
}
|
|
155
155
|
/**
|
|
156
156
|
* Runs on mount, used to set up various values and whatever you need to run
|
|
157
157
|
*/
|
|
158
158
|
connectedCallback() {
|
|
159
159
|
const e = this.currentmonth;
|
|
160
|
-
this.year = e.getFullYear(), this.month = e.getMonth(), this.week =
|
|
160
|
+
this.year = e.getFullYear(), this.month = e.getMonth(), this.week = x(new Date(this.year, this.month, 1, 12)), this.selected && this.selected.length && this.selected.forEach((t) => {
|
|
161
161
|
this._selected.push(new Date(t));
|
|
162
162
|
}), super.connectedCallback();
|
|
163
163
|
}
|
|
164
164
|
disconnectedCallback() {
|
|
165
165
|
this.removeEventListener("keydown", this.handleKeydown), super.disconnectedCallback();
|
|
166
166
|
}
|
|
167
|
+
attributeChangedCallback(e, t, s) {
|
|
168
|
+
e === "currentmonth" && s && (this.currentmonth = new Date(s), this.year = this.currentmonth.getFullYear(), this.month = this.currentmonth.getMonth(), this.week = x(new Date(this.year, this.month, 1, 12))), e === "selected" && s && (this._selected = [], this.selected.forEach((n) => {
|
|
169
|
+
this._selected.push(new Date(n));
|
|
170
|
+
})), super.attributeChangedCallback(e, t, s);
|
|
171
|
+
}
|
|
167
172
|
updated(e) {
|
|
168
173
|
if (e.has("selected") && this.selected.length === 2) {
|
|
169
174
|
const t = S({
|
|
@@ -206,9 +211,9 @@ let r = class extends _ {
|
|
|
206
211
|
let a = this.querySelector(`div[data-date="${this.formatISODate(n)}"]`);
|
|
207
212
|
if (a instanceof HTMLDivElement) {
|
|
208
213
|
if (a.dataset.disabled) {
|
|
209
|
-
let
|
|
214
|
+
let l = new Date(s.setDate(s.getDate() + t)), i = this.querySelector(`div[data-date="${this.formatISODate(l)}"]`);
|
|
210
215
|
for (; i && i instanceof HTMLDivElement && i.dataset.disabled; )
|
|
211
|
-
|
|
216
|
+
l = new Date(l.setDate(l.getDate() + t)), i = this.querySelector(`div[data-date="${this.formatISODate(l)}"]`);
|
|
212
217
|
a = i;
|
|
213
218
|
}
|
|
214
219
|
a instanceof HTMLDivElement && !a.dataset.disabled && a.focus();
|
|
@@ -307,10 +312,10 @@ let r = class extends _ {
|
|
|
307
312
|
), e;
|
|
308
313
|
}
|
|
309
314
|
renderDayView(e, t, s) {
|
|
310
|
-
const n = new Date(this.year, this.month, e, 12), a = this.formatISODate(n),
|
|
315
|
+
const n = new Date(this.year, this.month, e, 12), a = this.formatISODate(n), l = a === this.formatISODate(t), i = this.selected.includes(a), p = this.isExcluded(s, n) || !i && this.multiple && this.maxMultiple > 0 && this.selected.length >= this.maxMultiple, h = this.focusedDate ? this.focusedDate === a ? "0" : "-1" : e === 1 ? "0" : "-1";
|
|
311
316
|
this.selectableDates.push({ currentDateISO: a, isDisabled: p });
|
|
312
317
|
const u = {
|
|
313
|
-
"pkt-cal-today":
|
|
318
|
+
"pkt-cal-today": l,
|
|
314
319
|
"pkt-cal-selected": i,
|
|
315
320
|
"pkt-cal-in-range": this.inRange[a],
|
|
316
321
|
"pkt-cal-excluded": this.isExcluded(s, n),
|
|
@@ -327,7 +332,7 @@ let r = class extends _ {
|
|
|
327
332
|
@focus=${() => {
|
|
328
333
|
this.range && !this.isExcluded(s, n) && this.handleRangeHover(n), this.focusedDate = a;
|
|
329
334
|
}}
|
|
330
|
-
tabindex=${
|
|
335
|
+
tabindex=${h}
|
|
331
336
|
data-disabled=${p ? "disabled" : D}
|
|
332
337
|
data-date=${a}
|
|
333
338
|
@keydown=${(d) => {
|
|
@@ -342,11 +347,11 @@ let r = class extends _ {
|
|
|
342
347
|
</td>`;
|
|
343
348
|
}
|
|
344
349
|
renderCalendarBody() {
|
|
345
|
-
const e = /* @__PURE__ */ 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, a = s.getDate(),
|
|
346
|
-
let
|
|
347
|
-
this.week =
|
|
350
|
+
const e = /* @__PURE__ */ 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, a = s.getDate(), l = Math.ceil((a + n) / 7), p = new Date(this.year, this.month, 0, 12).getDate();
|
|
351
|
+
let h = 1;
|
|
352
|
+
this.week = x(new Date(this.year, this.month, 1, 12));
|
|
348
353
|
const u = [];
|
|
349
|
-
for (let d = 0; d <
|
|
354
|
+
for (let d = 0; d < l; d++) {
|
|
350
355
|
const y = [];
|
|
351
356
|
this.weeknumbers && y.push(f`<td class="pkt-cal-week">${this.week}</td>`), this.week++;
|
|
352
357
|
for (let m = 1; m < 8; m++)
|
|
@@ -362,16 +367,16 @@ let r = class extends _ {
|
|
|
362
367
|
</div>
|
|
363
368
|
</td>`
|
|
364
369
|
);
|
|
365
|
-
} else
|
|
370
|
+
} else h > a ? (y.push(
|
|
366
371
|
f`<td class="pkt-cal-other">
|
|
367
372
|
<div
|
|
368
373
|
class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--label-only"
|
|
369
374
|
data-disabled="disabled"
|
|
370
375
|
>
|
|
371
|
-
<span class="pkt-btn__text pkt-txt-14-light">${
|
|
376
|
+
<span class="pkt-btn__text pkt-txt-14-light">${h - a}</span>
|
|
372
377
|
</div>
|
|
373
378
|
</td>`
|
|
374
|
-
),
|
|
379
|
+
), h++) : (y.push(this.renderDayView(h, e, m)), h++);
|
|
375
380
|
u.push(
|
|
376
381
|
f`<tr class="pkt-cal-week-row" role="row">
|
|
377
382
|
${y}
|
|
@@ -431,7 +436,7 @@ let r = class extends _ {
|
|
|
431
436
|
this.selected = [], this._selected = [], this.inRange = {};
|
|
432
437
|
}
|
|
433
438
|
addToSelected(e) {
|
|
434
|
-
this.selected.includes(this.formatISODate(e)) || (this.selected = [...this.selected, this.formatISODate(e)], this._selected = [...this._selected, e]);
|
|
439
|
+
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());
|
|
435
440
|
}
|
|
436
441
|
removeFromSelected(e) {
|
|
437
442
|
if (this.selected.length === 1)
|
|
@@ -485,91 +490,88 @@ let r = class extends _ {
|
|
|
485
490
|
);
|
|
486
491
|
}
|
|
487
492
|
};
|
|
488
|
-
|
|
489
|
-
|
|
493
|
+
o([
|
|
494
|
+
c({ type: Boolean, reflect: !0 })
|
|
490
495
|
], r.prototype, "multiple", 2);
|
|
491
|
-
|
|
492
|
-
|
|
496
|
+
o([
|
|
497
|
+
c({ type: Number })
|
|
493
498
|
], r.prototype, "maxMultiple", 2);
|
|
494
|
-
|
|
495
|
-
|
|
499
|
+
o([
|
|
500
|
+
c({ type: Boolean, reflect: !0 })
|
|
496
501
|
], r.prototype, "range", 2);
|
|
497
|
-
|
|
498
|
-
|
|
502
|
+
o([
|
|
503
|
+
c({ type: Boolean, reflect: !0 })
|
|
499
504
|
], r.prototype, "weeknumbers", 2);
|
|
500
|
-
|
|
501
|
-
|
|
505
|
+
o([
|
|
506
|
+
c({ type: Boolean, reflect: !0 })
|
|
502
507
|
], r.prototype, "withcontrols", 2);
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
], r.prototype, "focused", 2);
|
|
506
|
-
l([
|
|
507
|
-
h({ converter: b.csvToArray })
|
|
508
|
+
o([
|
|
509
|
+
c({ converter: b.csvToArray })
|
|
508
510
|
], r.prototype, "selected", 2);
|
|
509
|
-
|
|
510
|
-
|
|
511
|
+
o([
|
|
512
|
+
c({ type: String, reflect: !0 })
|
|
511
513
|
], r.prototype, "earliest", 2);
|
|
512
|
-
|
|
513
|
-
|
|
514
|
+
o([
|
|
515
|
+
c({ type: String, reflect: !0 })
|
|
514
516
|
], r.prototype, "latest", 2);
|
|
515
|
-
|
|
516
|
-
|
|
517
|
+
o([
|
|
518
|
+
c({ converter: b.stringsToDate })
|
|
517
519
|
], r.prototype, "excludedates", 2);
|
|
518
|
-
|
|
519
|
-
|
|
520
|
+
o([
|
|
521
|
+
c({ converter: b.csvToArray })
|
|
520
522
|
], r.prototype, "excludeweekdays", 2);
|
|
521
|
-
|
|
522
|
-
|
|
523
|
+
o([
|
|
524
|
+
c({ converter: b.stringToDate })
|
|
523
525
|
], r.prototype, "currentmonth", 2);
|
|
524
|
-
|
|
525
|
-
|
|
526
|
+
o([
|
|
527
|
+
c({ type: Array })
|
|
526
528
|
], r.prototype, "dayStrings", 2);
|
|
527
|
-
|
|
528
|
-
|
|
529
|
+
o([
|
|
530
|
+
c({ type: Array })
|
|
529
531
|
], r.prototype, "monthStrings", 2);
|
|
530
|
-
|
|
531
|
-
|
|
532
|
+
o([
|
|
533
|
+
c({ type: String })
|
|
532
534
|
], r.prototype, "weekString", 2);
|
|
533
|
-
|
|
534
|
-
|
|
535
|
+
o([
|
|
536
|
+
c({ type: String })
|
|
535
537
|
], r.prototype, "prevMonthString", 2);
|
|
536
|
-
|
|
537
|
-
|
|
538
|
+
o([
|
|
539
|
+
c({ type: String })
|
|
538
540
|
], r.prototype, "nextMonthString", 2);
|
|
539
|
-
|
|
540
|
-
|
|
541
|
+
o([
|
|
542
|
+
c({ type: Array })
|
|
541
543
|
], r.prototype, "_selected", 2);
|
|
542
|
-
|
|
543
|
-
|
|
544
|
+
o([
|
|
545
|
+
c({ type: Number })
|
|
544
546
|
], r.prototype, "year", 2);
|
|
545
|
-
|
|
546
|
-
|
|
547
|
+
o([
|
|
548
|
+
c({ type: Number })
|
|
547
549
|
], r.prototype, "month", 2);
|
|
548
|
-
|
|
549
|
-
|
|
550
|
+
o([
|
|
551
|
+
c({ type: Number })
|
|
550
552
|
], r.prototype, "week", 2);
|
|
551
|
-
|
|
552
|
-
|
|
553
|
+
o([
|
|
554
|
+
c({ type: Date })
|
|
553
555
|
], r.prototype, "rangeHovered", 2);
|
|
554
|
-
|
|
555
|
-
|
|
556
|
+
o([
|
|
557
|
+
O()
|
|
556
558
|
], r.prototype, "inRange", 2);
|
|
557
|
-
|
|
558
|
-
|
|
559
|
+
o([
|
|
560
|
+
O()
|
|
559
561
|
], r.prototype, "focusedDate", 2);
|
|
560
|
-
|
|
561
|
-
|
|
562
|
+
o([
|
|
563
|
+
O()
|
|
562
564
|
], r.prototype, "selectableDates", 2);
|
|
563
|
-
r =
|
|
565
|
+
r = o([
|
|
564
566
|
A("pkt-calendar")
|
|
565
567
|
], r);
|
|
566
568
|
export {
|
|
567
569
|
r as P,
|
|
568
570
|
T as a,
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
571
|
+
x as b,
|
|
572
|
+
M as c,
|
|
573
|
+
_ as d,
|
|
574
|
+
C as g,
|
|
573
575
|
U as m,
|
|
574
576
|
v as s,
|
|
575
577
|
k as t
|