@oslokommune/punkt-elements 16.22.0 → 16.24.1

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/CHANGELOG.md CHANGED
@@ -5,6 +5,41 @@ og skriver commits ca etter [Conventional Commits](https://conventionalcommits.o
5
5
 
6
6
  ---
7
7
 
8
+ ## [16.24.1](https://github.com/oslokommune/punkt/compare/16.24.0...16.24.1) (2026-05-29)
9
+
10
+ ### ⚠ BREAKING CHANGES
11
+ Ingen
12
+
13
+ ### Features
14
+ Ingen
15
+
16
+ ### Bug Fixes
17
+ Ingen
18
+
19
+ ### Chores
20
+ Ingen
21
+
22
+ ---
23
+
24
+
25
+ ## [16.23.0](https://github.com/oslokommune/punkt/compare/16.22.0...16.23.0) (2026-05-29)
26
+
27
+ ### ⚠ BREAKING CHANGES
28
+ Ingen
29
+
30
+ ### Features
31
+ * Fjerne pakken Punkt CLI fullstendig (#3505).
32
+
33
+
34
+ ### Bug Fixes
35
+ Ingen
36
+
37
+ ### Chores
38
+ Ingen
39
+
40
+ ---
41
+
42
+
8
43
  ## [16.22.0](https://github.com/oslokommune/punkt/compare/16.21.1...16.22.0) (2026-05-29)
9
44
 
10
45
  ### ⚠ BREAKING CHANGES
@@ -87,4 +87,4 @@ const e=require(`./element-CXAtr6Gu.cjs`),t=require(`./class-map-B8Ja0q7n.cjs`);
87
87
  >
88
88
  <span class="pkt-btn__text pkt-txt-14-light">${t}</span>
89
89
  </div>
90
- </td>`}renderWeekRow(t){return e.p`<tr class="pkt-cal-week-row" role="row">${t}</tr>`}renderCalendarBody(){let t=this.todayDate,n=f(this.year,this.month);this.selectableDates=[],this.tabIndexSet=0;let r=1;this.week=n.initialWeek;let i=[];for(let a=0;a<n.numRows;a++){let o=[];this.weeknumbers&&o.push(e.p`<td class="pkt-cal-week">${this.week}</td>`),this.week++;for(let e=0;e<7;e++){let i=p(a,e,r,n);if(i===`current-month`)o.push(this.renderDayView(r,t)),r++;else{let t=m(i,e,r,n);o.push(this.renderEmptyDayCell(t)),i===`next-month`&&r++}}i.push(this.renderWeekRow(o))}return i}isExcluded(e){return c(e,this.getDateConstraints())}isPrevMonthAllowed(){return u(this.year,this.month,this.earliest)}prevMonth(){let e=this.month===0?11:this.month-1,t=this.month===0?this.year-1:this.year;this.changeMonth(t,e)}isNextMonthAllowed(){return d(this.year,this.month,this.latest)}nextMonth(){let 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=typeof e==`string`?parseInt(e):e,this.month=typeof t==`string`?parseInt(t):t,this.currentmonth=n.f(new Date(this.year,this.month,1)),this.tabIndexSet=0,this.focusedDate=null,this.selectableDates=[]}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}normalizeSelected(){return typeof this.selected==`string`?this.selected.split(`,`):this.selected}addToSelected(e){this.selected=v(e,this.normalizeSelected()),this._selected=h(this.selected),this.range&&this.selected.length===2&&(this.convertSelected(),this.close())}removeFromSelected(e){this.selected=y(e,this.normalizeSelected()),this._selected=h(this.selected)}toggleSelected(e){this.selected=b(e,this.normalizeSelected(),this.maxMultiple),this._selected=h(this.selected)}isRangeAllowed(e){return _(e,this._selected,this.excludedates,this.excludeweekdays)}handleRangeSelect(e){return this.selected=x(e,this.normalizeSelected(),{excludedates:this.excludedates,excludeweekdays:this.excludeweekdays}),this._selected=h(this.selected),this.selected.length===2?(this.convertSelected(),this.close()):this.selected.length===1&&(this.inRange={}),Promise.resolve()}handleRangeHover(e){if(!this.range||this._selected.length!==1||!this.isRangeAllowed(e)||this._selected[0]>=e){this.rangeHovered=null;return}this.rangeHovered=e,this.inRange=g(this._selected[0],e)}handleDateSelect(e){return e?(this.range?this.handleRangeSelect(e):this.multiple?this.toggleSelected(e):(this.selected.includes(n.a(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()):Promise.resolve()}focusOnCurrentDate(){let e=n.a(n.f(this.todayDate)),t=this.querySelector(`button[data-date="${e}"]`);if(t instanceof HTMLButtonElement){this.focusedDate=e,t.focus();return}let r=this.selectableDates.find(e=>!e.isDisabled);if(r){let e=this.querySelector(`button[data-date="${r.currentDateISO}"]`);e instanceof HTMLButtonElement&&(this.focusedDate=r.currentDateISO,e.focus())}}closeEvent(e){!this.contains(e.relatedTarget)&&!e.target.classList.contains(`pkt-invisible`)&&this.close()}close(){this.dispatchEvent(new CustomEvent(`close`,{detail:!0,bubbles:!0,composed:!0}))}};e.n([e.o({converter:n.t.csvToArray})],E.prototype,`selected`,void 0),e.n([e.o({type:Boolean})],E.prototype,`multiple`,void 0),e.n([e.o({type:Number,attribute:`max-multiple`})],E.prototype,`maxMultiple`,void 0),e.n([e.o({type:Boolean})],E.prototype,`range`,void 0),e.n([e.o({type:String})],E.prototype,`earliest`,void 0),e.n([e.o({type:String})],E.prototype,`latest`,void 0),e.n([e.o({converter:n.t.stringsToDate})],E.prototype,`excludedates`,void 0),e.n([e.o({converter:n.t.csvToArray})],E.prototype,`excludeweekdays`,void 0),e.n([e.o({type:Boolean})],E.prototype,`weeknumbers`,void 0),e.n([e.o({type:Boolean})],E.prototype,`withcontrols`,void 0),e.n([e.o({converter:n.t.stringToDate})],E.prototype,`currentmonth`,void 0),e.n([e.o({type:String})],E.prototype,`today`,void 0),e.n([e.o({type:Array,attribute:`day-strings`})],E.prototype,`dayStrings`,void 0),e.n([e.o({type:Array,attribute:`day-strings-long`})],E.prototype,`dayStringsLong`,void 0),e.n([e.o({type:Array,attribute:`month-strings`})],E.prototype,`monthStrings`,void 0),e.n([e.o({type:String,attribute:`week-string`})],E.prototype,`weekString`,void 0),e.n([e.o({type:String,attribute:`prev-month-string`})],E.prototype,`prevMonthString`,void 0),e.n([e.o({type:String,attribute:`next-month-string`})],E.prototype,`nextMonthString`,void 0),e.n([e.o({type:Array})],E.prototype,`_selected`,void 0),e.n([e.a()],E.prototype,`inRange`,void 0),e.n([e.o({type:Date})],E.prototype,`rangeHovered`,void 0),e.n([e.o({type:Number})],E.prototype,`year`,void 0),e.n([e.o({type:Number})],E.prototype,`month`,void 0),e.n([e.o({type:Number})],E.prototype,`week`,void 0),e.n([e.a()],E.prototype,`currentmonthtouched`,void 0),e.n([e.a()],E.prototype,`focusedDate`,void 0);try{e.s(`pkt-calendar`)(E)}catch{console.warn(`Forsøker å definere <pkt-calendar>, men den er allerede definert`)}var D=E;Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return D}});
90
+ </td>`}renderWeekRow(t){return e.p`<tr class="pkt-cal-week-row" role="row">${t}</tr>`}renderCalendarBody(){let t=this.todayDate,n=f(this.year,this.month);this.selectableDates=[],this.tabIndexSet=0;let r=1;this.week=n.initialWeek;let i=[];for(let a=0;a<n.numRows;a++){let o=[];this.weeknumbers&&o.push(e.p`<td class="pkt-cal-week">${this.week}</td>`),this.week++;for(let e=0;e<7;e++){let i=p(a,e,r,n);if(i===`current-month`)o.push(this.renderDayView(r,t)),r++;else{let t=m(i,e,r,n);o.push(this.renderEmptyDayCell(t)),i===`next-month`&&r++}}i.push(this.renderWeekRow(o))}return i}isExcluded(e){return c(e,this.getDateConstraints())}isPrevMonthAllowed(){return u(this.year,this.month,this.earliest)}prevMonth(){let e=this.month===0?11:this.month-1,t=this.month===0?this.year-1:this.year;this.changeMonth(t,e)}isNextMonthAllowed(){return d(this.year,this.month,this.latest)}nextMonth(){let 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=typeof e==`string`?parseInt(e):e,this.month=typeof t==`string`?parseInt(t):t,this.currentmonth=n.f(new Date(this.year,this.month,1)),this.tabIndexSet=0,this.focusedDate=null,this.selectableDates=[]}emptySelected(){this.selected=[],this._selected=[],this.inRange={}}normalizeSelected(){return typeof this.selected==`string`?this.selected.split(`,`):this.selected}addToSelected(e){this.selected=v(e,this.normalizeSelected()),this._selected=h(this.selected),this.range&&this.selected.length===2&&(this.convertSelected(),this.close())}removeFromSelected(e){this.selected=y(e,this.normalizeSelected()),this._selected=h(this.selected)}toggleSelected(e){this.selected=b(e,this.normalizeSelected(),this.maxMultiple),this._selected=h(this.selected)}isRangeAllowed(e){return _(e,this._selected,this.excludedates,this.excludeweekdays)}handleRangeSelect(e){return this.selected=x(e,this.normalizeSelected(),{excludedates:this.excludedates,excludeweekdays:this.excludeweekdays}),this._selected=h(this.selected),this.selected.length===2?(this.convertSelected(),this.close()):this.selected.length===1&&(this.inRange={}),Promise.resolve()}handleRangeHover(e){if(!this.range||this._selected.length!==1||!this.isRangeAllowed(e)||this._selected[0]>=e){this.rangeHovered=null;return}this.rangeHovered=e,this.inRange=g(this._selected[0],e)}handleDateSelect(e){return e?(this.range?this.handleRangeSelect(e):this.multiple?this.toggleSelected(e):(this.selected.includes(n.a(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()):Promise.resolve()}focusOnCurrentDate(){let e=n.a(n.f(this.todayDate)),t=this.querySelector(`button[data-date="${e}"]`);if(t instanceof HTMLButtonElement){this.focusedDate=e,t.focus();return}let r=this.selectableDates.find(e=>!e.isDisabled);if(r){let e=this.querySelector(`button[data-date="${r.currentDateISO}"]`);e instanceof HTMLButtonElement&&(this.focusedDate=r.currentDateISO,e.focus())}}closeEvent(e){let t=e.target,n=e.relatedTarget;this.contains(n)||t.classList.contains(`pkt-invisible`)||t.closest(`.pkt-cal-month-picker`)||this.close()}close(){this.dispatchEvent(new CustomEvent(`close`,{detail:!0,bubbles:!0,composed:!0}))}};e.n([e.o({converter:n.t.csvToArray})],E.prototype,`selected`,void 0),e.n([e.o({type:Boolean})],E.prototype,`multiple`,void 0),e.n([e.o({type:Number,attribute:`max-multiple`})],E.prototype,`maxMultiple`,void 0),e.n([e.o({type:Boolean})],E.prototype,`range`,void 0),e.n([e.o({type:String})],E.prototype,`earliest`,void 0),e.n([e.o({type:String})],E.prototype,`latest`,void 0),e.n([e.o({converter:n.t.stringsToDate})],E.prototype,`excludedates`,void 0),e.n([e.o({converter:n.t.csvToArray})],E.prototype,`excludeweekdays`,void 0),e.n([e.o({type:Boolean})],E.prototype,`weeknumbers`,void 0),e.n([e.o({type:Boolean})],E.prototype,`withcontrols`,void 0),e.n([e.o({converter:n.t.stringToDate})],E.prototype,`currentmonth`,void 0),e.n([e.o({type:String})],E.prototype,`today`,void 0),e.n([e.o({type:Array,attribute:`day-strings`})],E.prototype,`dayStrings`,void 0),e.n([e.o({type:Array,attribute:`day-strings-long`})],E.prototype,`dayStringsLong`,void 0),e.n([e.o({type:Array,attribute:`month-strings`})],E.prototype,`monthStrings`,void 0),e.n([e.o({type:String,attribute:`week-string`})],E.prototype,`weekString`,void 0),e.n([e.o({type:String,attribute:`prev-month-string`})],E.prototype,`prevMonthString`,void 0),e.n([e.o({type:String,attribute:`next-month-string`})],E.prototype,`nextMonthString`,void 0),e.n([e.o({type:Array})],E.prototype,`_selected`,void 0),e.n([e.a()],E.prototype,`inRange`,void 0),e.n([e.o({type:Date})],E.prototype,`rangeHovered`,void 0),e.n([e.o({type:Number})],E.prototype,`year`,void 0),e.n([e.o({type:Number})],E.prototype,`month`,void 0),e.n([e.o({type:Number})],E.prototype,`week`,void 0),e.n([e.a()],E.prototype,`currentmonthtouched`,void 0),e.n([e.a()],E.prototype,`focusedDate`,void 0);try{e.s(`pkt-calendar`)(E)}catch{console.warn(`Forsøker å definere <pkt-calendar>, men den er allerede definert`)}var D=E;Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return D}});
@@ -612,7 +612,8 @@ var W = class extends o {
612
612
  }
613
613
  }
614
614
  closeEvent(e) {
615
- !this.contains(e.relatedTarget) && !e.target.classList.contains("pkt-invisible") && this.close();
615
+ let t = e.target, n = e.relatedTarget;
616
+ this.contains(n) || t.classList.contains("pkt-invisible") || t.closest(".pkt-cal-month-picker") || this.close();
616
617
  }
617
618
  close() {
618
619
  this.dispatchEvent(new CustomEvent("close", {
@@ -1,4 +1,4 @@
1
- const e=require(`./element-CXAtr6Gu.cjs`),t=require(`./class-map-B8Ja0q7n.cjs`),n=require(`./element-with-slot-Cmxb9h4H.cjs`);require(`./icon-Dw6I0HDV.cjs`);const r=require(`./if-defined-LTjAScFG.cjs`),i=require(`./ref-CBdWMlde.cjs`),a=require(`./converters-CkqZ02TI.cjs`);require(`./calendar-B9hCymxP.cjs`),require(`./tag-CBFz0R9N.cjs`);const o=require(`./repeat-CRRgmzVn.cjs`),s=require(`./utils-CjAbIttF.cjs`),c=require(`./input-element-BHQVt4Q9.cjs`);require(`./input-wrapper-Dhkt20WW.cjs`);var l={calendar:{buttonAltText:`Åpne kalender`}},u={calendar:{buttonAltText:`Åpne kalender`},generic:{from:`Fra`,to:`Til`}},d=class extends e.t{constructor(...e){super(...e),this.dates=[],this.dateformat=`dd.MM.yyyy`,this.className=`pkt-datepicker__tags`,this.idBase=s.n()}render(){return this.classes={"pkt-date-tags":!0,[this.className]:!0},e.p`
1
+ const e=require(`./element-CXAtr6Gu.cjs`),t=require(`./class-map-B8Ja0q7n.cjs`),n=require(`./element-with-slot-Cmxb9h4H.cjs`);require(`./icon-Dw6I0HDV.cjs`);const r=require(`./if-defined-LTjAScFG.cjs`),i=require(`./ref-CBdWMlde.cjs`),a=require(`./converters-CkqZ02TI.cjs`);require(`./calendar-64LmbIdR.cjs`),require(`./tag-CBFz0R9N.cjs`);const o=require(`./repeat-CRRgmzVn.cjs`),s=require(`./utils-CjAbIttF.cjs`),c=require(`./input-element-BHQVt4Q9.cjs`);require(`./input-wrapper-Dhkt20WW.cjs`);var l={calendar:{buttonAltText:`Åpne kalender`}},u={calendar:{buttonAltText:`Åpne kalender`},generic:{from:`Fra`,to:`Til`}},d=class extends e.t{constructor(...e){super(...e),this.dates=[],this.dateformat=`dd.MM.yyyy`,this.className=`pkt-datepicker__tags`,this.idBase=s.n()}render(){return this.classes={"pkt-date-tags":!0,[this.className]:!0},e.p`
2
2
  <div class=${t.t(this.classes)} aria-live="polite">
3
3
  ${Array.isArray(this.dates)&&this.dates[0]?o.t(a.h((this.dates??[]).filter(Boolean)),e=>e,t=>e.p` <pkt-tag
4
4
  id=${this.idBase+t+`-tag`}
@@ -5,7 +5,7 @@ import "./icon-LaKyBKON.js";
5
5
  import { t as l } from "./if-defined-VShASPdu.js";
6
6
  import { n as u, t as d } from "./ref-BgoHEsEt.js";
7
7
  import { a as f, c as p, d as m, h, i as g, m as _, n as v, r as y, s as b, t as x, u as S } from "./converters-BQnj7OJE.js";
8
- import "./calendar-knJ5h9cB.js";
8
+ import "./calendar-CRIp36hn.js";
9
9
  import "./tag-CzlnHhho.js";
10
10
  import { t as C } from "./repeat-CKIii8Mi.js";
11
11
  import { n as w, t as T } from "./utils-CUqCKGvp.js";
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./calendar-B9hCymxP.cjs`);exports.PktCalendar=e.n,exports.default=e.t;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./calendar-64LmbIdR.cjs`);exports.PktCalendar=e.n,exports.default=e.t;
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./calendar-knJ5h9cB.js";
1
+ import { n as e, t } from "./calendar-CRIp36hn.js";
2
2
  export { e as PktCalendar, t as default };
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./datepicker-CugszGS6.cjs`);var t=e.t;exports.PktDatepicker=e.t,exports.PktDatepickerMultiple=e.n,exports.PktDatepickerRange=e.r,exports.PktDatepickerSingle=e.i,exports.default=t;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./datepicker-Bs95HYGc.cjs`);var t=e.t;exports.PktDatepicker=e.t,exports.PktDatepickerMultiple=e.n,exports.PktDatepickerRange=e.r,exports.PktDatepickerSingle=e.i,exports.default=t;
@@ -1,4 +1,4 @@
1
- import { i as e, n as t, r as n, t as r } from "./datepicker-5t_5i87u.js";
1
+ import { i as e, n as t, r as n, t as r } from "./datepicker-DxkcKevq.js";
2
2
  //#region src/components/datepicker/index.ts
3
3
  var i = r;
4
4
  //#endregion
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./alert-D_45dWPn.cjs`),t=require(`./icon-Dw6I0HDV.cjs`),n=require(`./button-Dwv11n6R.cjs`),r=require(`./accordion-DaeWPWod.cjs`),i=require(`./backlink-C42-3OG3.cjs`),a=require(`./breadcrumbs-CkjeLh3U.cjs`),o=require(`./calendar-B9hCymxP.cjs`),s=require(`./card-C__IlsUa.cjs`),c=require(`./tag-CBFz0R9N.cjs`),l=require(`./heading-C40-NX0r.cjs`),u=require(`./combobox-x4tBGP3F.cjs`),d=require(`./header-CjBip0zj.cjs`),f=require(`./header-menu-CnW7nzmF.cjs`),p=require(`./datepicker-CugszGS6.cjs`),m=require(`./fileupload-BLto9H17.cjs`),h=require(`./helptext-DNLg43eI.cjs`),g=require(`./input-wrapper-Dhkt20WW.cjs`),_=require(`./consent-DVt6sMvB.cjs`),v=require(`./checkbox-DzMc0AJX.cjs`),y=require(`./modal-CrYHKOmr.cjs`),b=require(`./progressbar-DADdvDl5.cjs`),x=require(`./link-B5ur0Rym.cjs`),S=require(`./textinput-C_6kvf87.cjs`),C=require(`./linkcard-BIcCW-qw.cjs`),w=require(`./loader-Uap9qDsV.cjs`),T=require(`./messagebox-BqBxXK8c.cjs`),E=require(`./radiobutton-BfURufrZ.cjs`),D=require(`./tabs-DxQy8U-0.cjs`),O=require(`./textarea-M_S9WK7s.cjs`),k=require(`./select-DzZHv6Bz.cjs`),A=require(`./searchinput-BrxfRzez.cjs`),j=require(`./timepicker-WiYLAncb.cjs`);exports.PktAccordion=r.r,exports.PktAccordionItem=r.n,exports.PktAlert=e.n,exports.PktBackLink=i.n,exports.PktBreadcrumbs=a.t,exports.PktButton=n.n,exports.PktCalendar=o.n,exports.PktCard=s.n,exports.PktCheckbox=v.n,exports.PktCombobox=u.n,exports.PktConsent=_.n,exports.PktDateTags=p.a,exports.PktDatepicker=p.t,Object.defineProperty(exports,`PktFileUpload`,{enumerable:!0,get:function(){return m.n}}),exports.PktHeader=d.t,exports.PktHeaderMenu=f.n,exports.PktHeaderService=d.n,exports.PktHeaderUserMenu=d.r,exports.PktHeading=l.n,exports.PktHelptext=h.n,exports.PktIcon=t.n,exports.PktInputWrapper=g.n,exports.PktLink=x.n,exports.PktLinkCard=C.n,exports.PktLoader=w.n,exports.PktMessagebox=T.n,exports.PktModal=y.n,exports.PktProgressbar=b.n,exports.PktRadioButton=E.n,exports.PktRadiobutton=E.n,exports.PktSearchInput=A.n,exports.PktSelect=k.n,exports.PktTabItem=D.n,exports.PktTabs=D.r,exports.PktTag=c.n,exports.PktTextarea=O.n,exports.PktTextinput=S.n,exports.PktTimepicker=j.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./alert-D_45dWPn.cjs`),t=require(`./icon-Dw6I0HDV.cjs`),n=require(`./button-Dwv11n6R.cjs`),r=require(`./accordion-DaeWPWod.cjs`),i=require(`./backlink-C42-3OG3.cjs`),a=require(`./breadcrumbs-CkjeLh3U.cjs`),o=require(`./calendar-64LmbIdR.cjs`),s=require(`./card-C__IlsUa.cjs`),c=require(`./tag-CBFz0R9N.cjs`),l=require(`./heading-C40-NX0r.cjs`),u=require(`./combobox-x4tBGP3F.cjs`),d=require(`./header-CjBip0zj.cjs`),f=require(`./header-menu-CnW7nzmF.cjs`),p=require(`./datepicker-Bs95HYGc.cjs`),m=require(`./fileupload-BLto9H17.cjs`),h=require(`./helptext-DNLg43eI.cjs`),g=require(`./input-wrapper-Dhkt20WW.cjs`),_=require(`./consent-DVt6sMvB.cjs`),v=require(`./checkbox-DzMc0AJX.cjs`),y=require(`./modal-CrYHKOmr.cjs`),b=require(`./progressbar-DADdvDl5.cjs`),x=require(`./link-B5ur0Rym.cjs`),S=require(`./textinput-C_6kvf87.cjs`),C=require(`./linkcard-BIcCW-qw.cjs`),w=require(`./loader-Uap9qDsV.cjs`),T=require(`./messagebox-BqBxXK8c.cjs`),E=require(`./radiobutton-BfURufrZ.cjs`),D=require(`./tabs-DxQy8U-0.cjs`),O=require(`./textarea-M_S9WK7s.cjs`),k=require(`./select-DzZHv6Bz.cjs`),A=require(`./searchinput-BrxfRzez.cjs`),j=require(`./timepicker-WiYLAncb.cjs`);exports.PktAccordion=r.r,exports.PktAccordionItem=r.n,exports.PktAlert=e.n,exports.PktBackLink=i.n,exports.PktBreadcrumbs=a.t,exports.PktButton=n.n,exports.PktCalendar=o.n,exports.PktCard=s.n,exports.PktCheckbox=v.n,exports.PktCombobox=u.n,exports.PktConsent=_.n,exports.PktDateTags=p.a,exports.PktDatepicker=p.t,Object.defineProperty(exports,`PktFileUpload`,{enumerable:!0,get:function(){return m.n}}),exports.PktHeader=d.t,exports.PktHeaderMenu=f.n,exports.PktHeaderService=d.n,exports.PktHeaderUserMenu=d.r,exports.PktHeading=l.n,exports.PktHelptext=h.n,exports.PktIcon=t.n,exports.PktInputWrapper=g.n,exports.PktLink=x.n,exports.PktLinkCard=C.n,exports.PktLoader=w.n,exports.PktMessagebox=T.n,exports.PktModal=y.n,exports.PktProgressbar=b.n,exports.PktRadioButton=E.n,exports.PktRadiobutton=E.n,exports.PktSearchInput=A.n,exports.PktSelect=k.n,exports.PktTabItem=D.n,exports.PktTabs=D.r,exports.PktTag=c.n,exports.PktTextarea=O.n,exports.PktTextinput=S.n,exports.PktTimepicker=j.t;
package/dist/pkt-index.js CHANGED
@@ -4,14 +4,14 @@ import { n } from "./button-CR-KWhTT.js";
4
4
  import { n as r, r as i } from "./accordion-BjYsEbSM.js";
5
5
  import { n as a } from "./backlink-BXAdgAte.js";
6
6
  import { t as o } from "./breadcrumbs-Dkb9TxMp.js";
7
- import { n as s } from "./calendar-knJ5h9cB.js";
7
+ import { n as s } from "./calendar-CRIp36hn.js";
8
8
  import { n as c } from "./card-5PydU247.js";
9
9
  import { n as l } from "./tag-CzlnHhho.js";
10
10
  import { n as u } from "./heading-3o4Dk0Wn.js";
11
11
  import { n as d } from "./combobox-D-DY7YcW.js";
12
12
  import { n as f, r as p, t as m } from "./header-DONTGbD9.js";
13
13
  import { n as h } from "./header-menu-BU-ylGrJ.js";
14
- import { a as g, t as _ } from "./datepicker-5t_5i87u.js";
14
+ import { a as g, t as _ } from "./datepicker-DxkcKevq.js";
15
15
  import { n as v } from "./fileupload-bykWTtA6.js";
16
16
  import { n as y } from "./helptext-C2aQBBo_.js";
17
17
  import { n as b } from "./input-wrapper-B6WowlWG.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oslokommune/punkt-elements",
3
- "version": "16.22.0",
3
+ "version": "16.24.1",
4
4
  "description": "Komponentbiblioteket til Punkt, et designsystem laget av Oslo Origo",
5
5
  "homepage": "https://punkt.oslo.kommune.no",
6
6
  "author": "Team Designsystem, Oslo Origo",
@@ -42,6 +42,7 @@
42
42
  "@babel/preset-env": "^7.28.3",
43
43
  "@babel/preset-typescript": "^7.25.9",
44
44
  "@oslokommune/punkt-assets": "^16.16.1",
45
+ "@testing-library/dom": "^10.4.0",
45
46
  "@testing-library/jest-dom": "^6.6.3",
46
47
  "@typescript-eslint/eslint-plugin": "^8.46.0",
47
48
  "@typescript-eslint/parser": "^8.46.0",
@@ -78,5 +79,5 @@
78
79
  "url": "https://github.com/oslokommune/punkt/issues"
79
80
  },
80
81
  "license": "MIT",
81
- "gitHead": "23fb504541072d6e50b5f23d6c13208e5c0c03ce"
82
+ "gitHead": "f740327458813844b44a94fbb7a50b4036842883"
82
83
  }
@@ -699,12 +699,24 @@ export class PktCalendar extends PktElement {
699
699
  }
700
700
 
701
701
  public closeEvent(e: FocusEvent): void {
702
- if (
703
- !this.contains(e.relatedTarget as Node) &&
704
- !(e.target as Element).classList.contains('pkt-invisible')
705
- ) {
706
- this.close()
702
+ const target = e.target as Element
703
+ const relatedTarget = e.relatedTarget as Node | null
704
+
705
+ if (this.contains(relatedTarget)) {
706
+ return
707
+ }
708
+
709
+ if (target.classList.contains('pkt-invisible')) {
710
+ return
711
+ }
712
+
713
+ // Don't close if focus is coming from month/year picker controls
714
+ // Safari iOS triggers focusout with null relatedTarget when select changes
715
+ if (target.closest('.pkt-cal-month-picker')) {
716
+ return
707
717
  }
718
+
719
+ this.close()
708
720
  }
709
721
 
710
722
  public close(): void {