@oslokommune/punkt-elements 13.2.4 → 13.3.0

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.
Files changed (40) hide show
  1. package/CHANGELOG.md +367 -32
  2. package/dist/{card-Djnd-pgo.js → card-BI1NZONj.js} +9 -9
  3. package/dist/{card-Bx36j0q4.cjs → card-uccD6Pnv.cjs} +2 -2
  4. package/dist/{combobox-B7cWV_90.cjs → combobox-BhcqC30d.cjs} +1 -1
  5. package/dist/{combobox-DoK5e7Rc.js → combobox-D9dGKWuZ.js} +1 -1
  6. package/dist/{datepicker-BhrUneAP.cjs → datepicker-B9rhz_AF.cjs} +20 -20
  7. package/dist/{datepicker-CEfh3TTA.js → datepicker-CYOn3tRm.js} +12 -16
  8. package/dist/index.d.ts +1 -1
  9. package/dist/{link-C76H6Qf1.js → link-AIyVfcyH.js} +15 -18
  10. package/dist/link-Cjl0xwSq.cjs +7 -0
  11. package/dist/{modal-BdA5aWGU.cjs → modal-CRtxhCaP.cjs} +7 -6
  12. package/dist/{modal-DcXPnFus.js → modal-Zj8yRX3K.js} +22 -26
  13. package/dist/pkt-card.cjs +1 -1
  14. package/dist/pkt-card.js +1 -1
  15. package/dist/pkt-combobox.cjs +1 -1
  16. package/dist/pkt-combobox.js +1 -1
  17. package/dist/pkt-datepicker.cjs +1 -1
  18. package/dist/pkt-datepicker.js +1 -1
  19. package/dist/pkt-index.cjs +1 -1
  20. package/dist/pkt-index.js +7 -7
  21. package/dist/pkt-link.cjs +1 -1
  22. package/dist/pkt-link.js +1 -1
  23. package/dist/pkt-modal.cjs +1 -1
  24. package/dist/pkt-modal.js +1 -1
  25. package/dist/pkt-select.cjs +1 -1
  26. package/dist/pkt-select.js +1 -1
  27. package/dist/pkt-tag.cjs +1 -1
  28. package/dist/pkt-tag.js +1 -1
  29. package/dist/{select-CsgDatCa.js → select-CJS_CIKv.js} +1 -0
  30. package/dist/{select-DUeTm8ac.cjs → select-Dkl0KhGW.cjs} +1 -1
  31. package/dist/{tag-DPk3fpEg.cjs → tag-Bbs0U_Au.cjs} +1 -1
  32. package/package.json +3 -3
  33. package/src/components/card/card.ts +1 -1
  34. package/src/components/datepicker/datepicker.ts +22 -4
  35. package/src/components/link/link.ts +1 -1
  36. package/src/components/linkcard/linkcard.ts +2 -2
  37. package/src/components/modal/modal.ts +2 -8
  38. package/src/components/select/select.ts +1 -0
  39. package/dist/link-DTkjNlmy.cjs +0 -7
  40. package/dist/{tag-BWm6s48d.js → tag-DyXzTY68.js} +3 -3
@@ -1,4 +1,4 @@
1
- import { P as o } from "./combobox-DoK5e7Rc.js";
1
+ import { P as o } from "./combobox-D9dGKWuZ.js";
2
2
  const b = o;
3
3
  export {
4
4
  o as PktCombobox,
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./datepicker-BhrUneAP.cjs"),t=e.PktDatepicker;Object.defineProperty(exports,"PktDatepicker",{enumerable:!0,get:()=>e.PktDatepicker});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./datepicker-B9rhz_AF.cjs"),t=e.PktDatepicker;Object.defineProperty(exports,"PktDatepicker",{enumerable:!0,get:()=>e.PktDatepicker});exports.default=t;
@@ -1,4 +1,4 @@
1
- import { P as t } from "./datepicker-CEfh3TTA.js";
1
+ import { P as t } from "./datepicker-CYOn3tRm.js";
2
2
  const a = t;
3
3
  export {
4
4
  t as PktDatepicker,
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("./alert-BH0lJ2ny.cjs"),l=require("./accordionitem-Csh7iSVG.cjs"),d=require("./backlink-C5jQRMwJ.cjs"),b=require("./button-CDocR7iN.cjs"),k=require("./calendar-BZe2D4Sr.cjs"),m=require("./card-Bx36j0q4.cjs"),g=require("./combobox-B7cWV_90.cjs"),h=require("./consent-DrS71kvz.cjs"),f=require("./checkbox-wJ26voZd.cjs"),t=require("./element-6DBpyGQm.cjs"),y=require("./pkt-slot-controller-BzddBp7z.cjs"),s=require("./ref-iJtiv3o2.cjs"),O=require("./class-map-BBG2gMX4.cjs"),j=require("./datepicker-BhrUneAP.cjs"),q=require("./helptext-CzQX6YVE.cjs"),x=require("./heading-BRE_iFtR.cjs"),C=require("./icon-B_ryAy4Q.cjs"),v=require("./input-wrapper-CZ-a00V7.cjs"),S=require("./link-DTkjNlmy.cjs"),$=require("./linkcard-BlMhPNry.cjs"),L=require("./loader-CHPxY9c6.cjs"),_=require("./messagebox-CqUBJs_D.cjs"),A=require("./modal-BdA5aWGU.cjs"),B=require("./progressbar-DhMBXkww.cjs"),p=require("./radiobutton-CdT6v1oq.cjs"),T=require("./tag-DPk3fpEg.cjs"),I=require("./textarea-CPXsMFUq.cjs"),M=require("./textinput-aNI5kibM.cjs"),R=require("./select-DUeTm8ac.cjs");var H=Object.defineProperty,w=Object.getOwnPropertyDescriptor,o=(a,e,r,i)=>{for(var n=i>1?void 0:i?w(e,r):e,u=a.length-1,c;u>=0;u--)(c=a[u])&&(n=(i?c(e,r,n):c(n))||n);return i&&n&&H(e,r,n),n};exports.PktComponent=class extends t.PktElement{constructor(){super(),this.string="",this.strings=[],this.darkmode=!1,this._list=[],this.defaultSlot=s.e(),this.namedSlot=s.e(),this.slotController=new y.PktSlotController(this,this.defaultSlot,this.namedSlot)}connectedCallback(){this.strings.length&&this.strings.forEach(e=>{this._list.push(e.toUpperCase())}),super.connectedCallback()}render(){const e={"pkt-component":!0,"pkt-component--has-list":this.strings.length>0,"pkt-darkmode":this.darkmode};return t.x`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("./alert-BH0lJ2ny.cjs"),l=require("./accordionitem-Csh7iSVG.cjs"),d=require("./backlink-C5jQRMwJ.cjs"),b=require("./button-CDocR7iN.cjs"),k=require("./calendar-BZe2D4Sr.cjs"),m=require("./card-uccD6Pnv.cjs"),g=require("./combobox-BhcqC30d.cjs"),h=require("./consent-DrS71kvz.cjs"),f=require("./checkbox-wJ26voZd.cjs"),t=require("./element-6DBpyGQm.cjs"),y=require("./pkt-slot-controller-BzddBp7z.cjs"),s=require("./ref-iJtiv3o2.cjs"),O=require("./class-map-BBG2gMX4.cjs"),j=require("./datepicker-B9rhz_AF.cjs"),q=require("./helptext-CzQX6YVE.cjs"),x=require("./heading-BRE_iFtR.cjs"),C=require("./icon-B_ryAy4Q.cjs"),v=require("./input-wrapper-CZ-a00V7.cjs"),S=require("./link-Cjl0xwSq.cjs"),$=require("./linkcard-BlMhPNry.cjs"),L=require("./loader-CHPxY9c6.cjs"),_=require("./messagebox-CqUBJs_D.cjs"),A=require("./modal-CRtxhCaP.cjs"),B=require("./progressbar-DhMBXkww.cjs"),p=require("./radiobutton-CdT6v1oq.cjs"),T=require("./tag-Bbs0U_Au.cjs"),I=require("./textarea-CPXsMFUq.cjs"),M=require("./textinput-aNI5kibM.cjs"),R=require("./select-Dkl0KhGW.cjs");var H=Object.defineProperty,w=Object.getOwnPropertyDescriptor,o=(a,e,r,i)=>{for(var n=i>1?void 0:i?w(e,r):e,u=a.length-1,c;u>=0;u--)(c=a[u])&&(n=(i?c(e,r,n):c(n))||n);return i&&n&&H(e,r,n),n};exports.PktComponent=class extends t.PktElement{constructor(){super(),this.string="",this.strings=[],this.darkmode=!1,this._list=[],this.defaultSlot=s.e(),this.namedSlot=s.e(),this.slotController=new y.PktSlotController(this,this.defaultSlot,this.namedSlot)}connectedCallback(){this.strings.length&&this.strings.forEach(e=>{this._list.push(e.toUpperCase())}),super.connectedCallback()}render(){const e={"pkt-component":!0,"pkt-component--has-list":this.strings.length>0,"pkt-darkmode":this.darkmode};return t.x`
2
2
  <div class="${O.e(e)}">
3
3
  <h1 class="pkt-txt-28">${this.string}</h1>
4
4
 
package/dist/pkt-index.js CHANGED
@@ -4,30 +4,30 @@ import { P as O } from "./backlink-B13JTp9D.js";
4
4
  import { P as T } from "./button-DrrEvUy9.js";
5
5
  import { c as f } from "./calendar-DevQhOup.js";
6
6
  import { P as D } from "./calendar-DevQhOup.js";
7
- import { P as G } from "./card-Djnd-pgo.js";
8
- import { P as K } from "./combobox-DoK5e7Rc.js";
7
+ import { P as G } from "./card-BI1NZONj.js";
8
+ import { P as K } from "./combobox-D9dGKWuZ.js";
9
9
  import { P as U } from "./consent-CftYu8Di.js";
10
10
  import { P as q } from "./checkbox-CTRbpbye.js";
11
11
  import { P as k, t as h, x as P, n, a as c } from "./element-CgEWt74-.js";
12
12
  import { P as x } from "./pkt-slot-controller-BPGj-LC5.js";
13
13
  import { e as m, n as d } from "./ref-BBYSqgeW.js";
14
14
  import { e as u } from "./class-map-BpTj9gtz.js";
15
- import { P as F } from "./datepicker-CEfh3TTA.js";
15
+ import { P as F } from "./datepicker-CYOn3tRm.js";
16
16
  import { P as Q } from "./helptext-B7eI0iBQ.js";
17
17
  import { P as X } from "./heading-D6jXE_Mz.js";
18
18
  import { P as Z } from "./icon-CC1js8eR.js";
19
19
  import { P as et } from "./input-wrapper-Dr__Sxql.js";
20
- import { P as ot } from "./link-C76H6Qf1.js";
20
+ import { P as ot } from "./link-AIyVfcyH.js";
21
21
  import { P as at } from "./linkcard-BVEsUPwG.js";
22
22
  import { P as it } from "./loader-Da4IOk_T.js";
23
23
  import { P as lt } from "./messagebox-DwGdcdm7.js";
24
- import { P as mt } from "./modal-DcXPnFus.js";
24
+ import { P as mt } from "./modal-Zj8yRX3K.js";
25
25
  import { P as ft } from "./progressbar-Dj_mI_A6.js";
26
26
  import { P as ht, P as ct } from "./radiobutton-CWxiIVfA.js";
27
- import { P as ut } from "./tag-BWm6s48d.js";
27
+ import { P as ut } from "./tag-DyXzTY68.js";
28
28
  import { P as vt } from "./textarea-BZL8Mkm0.js";
29
29
  import { P as bt } from "./textinput-DjPhmmkB.js";
30
- import { P as $t } from "./select-CsgDatCa.js";
30
+ import { P as $t } from "./select-CJS_CIKv.js";
31
31
  var g = Object.defineProperty, v = Object.getOwnPropertyDescriptor, s = (t, e, i, a) => {
32
32
  for (var r = a > 1 ? void 0 : a ? v(e, i) : e, p = t.length - 1, l; p >= 0; p--)
33
33
  (l = t[p]) && (r = (a ? l(e, i, r) : l(r)) || r);
package/dist/pkt-link.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./link-DTkjNlmy.cjs"),t=e.PktLink;Object.defineProperty(exports,"PktLink",{enumerable:!0,get:()=>e.PktLink});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./link-Cjl0xwSq.cjs"),t=e.PktLink;Object.defineProperty(exports,"PktLink",{enumerable:!0,get:()=>e.PktLink});exports.default=t;
package/dist/pkt-link.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as t } from "./link-C76H6Qf1.js";
1
+ import { P as t } from "./link-AIyVfcyH.js";
2
2
  const a = t;
3
3
  export {
4
4
  t as PktLink,
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./modal-BdA5aWGU.cjs"),t=e.PktModal;Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>e.PktModal});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./modal-CRtxhCaP.cjs"),t=e.PktModal;Object.defineProperty(exports,"PktModal",{enumerable:!0,get:()=>e.PktModal});exports.default=t;
package/dist/pkt-modal.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as a } from "./modal-DcXPnFus.js";
1
+ import { P as a } from "./modal-Zj8yRX3K.js";
2
2
  const t = a;
3
3
  export {
4
4
  a as PktModal,
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./select-DUeTm8ac.cjs"),t=e.PktSelect;Object.defineProperty(exports,"PktSelect",{enumerable:!0,get:()=>e.PktSelect});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./select-Dkl0KhGW.cjs"),t=e.PktSelect;Object.defineProperty(exports,"PktSelect",{enumerable:!0,get:()=>e.PktSelect});exports.default=t;
@@ -1,4 +1,4 @@
1
- import { P as t } from "./select-CsgDatCa.js";
1
+ import { P as t } from "./select-CJS_CIKv.js";
2
2
  const a = t;
3
3
  export {
4
4
  t as PktSelect,
package/dist/pkt-tag.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./tag-DPk3fpEg.cjs"),t=e.PktTag;Object.defineProperty(exports,"PktTag",{enumerable:!0,get:()=>e.PktTag});exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./tag-Bbs0U_Au.cjs"),t=e.PktTag;Object.defineProperty(exports,"PktTag",{enumerable:!0,get:()=>e.PktTag});exports.default=t;
package/dist/pkt-tag.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as a } from "./tag-BWm6s48d.js";
1
+ import { P as a } from "./tag-DyXzTY68.js";
2
2
  const o = a;
3
3
  export {
4
4
  a as PktTag,
@@ -24,6 +24,7 @@ let h = class extends b {
24
24
  value: s.hasAttribute("value") ? s.getAttribute("value") ?? "" : s.textContent ?? "",
25
25
  label: s.textContent || s.getAttribute("value") || "",
26
26
  disabled: s.hasAttribute("disabled"),
27
+ selected: s.hasAttribute("selected"),
27
28
  hidden: s.hasAttribute("data-hidden")
28
29
  };
29
30
  s.getAttribute("selected") && !this.value && (this.value = i.value), this._options.push(i);
@@ -1,4 +1,4 @@
1
- "use strict";const r=require("./element-6DBpyGQm.cjs"),p=require("./state-DPobt-Yz.cjs"),h=require("./ref-iJtiv3o2.cjs"),l=require("./if-defined-Cni-RHLS.cjs"),d=require("./input-element-C4xJoM-X.cjs"),c=require("./pkt-options-controller-CiuBG6Lt.cjs"),v=require("./pkt-slot-controller-BzddBp7z.cjs");require("./input-wrapper-CZ-a00V7.cjs");var f=Object.defineProperty,b=Object.getOwnPropertyDescriptor,a=(u,t,e,s)=>{for(var i=s>1?void 0:s?b(t,e):t,o=u.length-1,n;o>=0;o--)(n=u[o])&&(i=(s?n(t,e,i):n(i))||i);return s&&i&&f(t,e,i),i};exports.PktSelect=class extends d.PktInputElement{constructor(){super(),this.inputRef=h.e(),this.helptextSlot=h.e(),this.options=[],this.value="",this._options=[],this.selectedIndex=-1,this.selectedOptions=void 0,this.optionsController=new c.PktOptionsSlotController(this),this.slotController=new v.PktSlotController(this,this.helptextSlot),this.slotController.skipOptions=!0}connectedCallback(){super.connectedCallback();const t=this.options.length>0,e=this.optionsController.nodes.length&&this.optionsController.nodes.length>0;!t&&e?this.optionsController.nodes.forEach(s=>{const i={value:s.hasAttribute("value")?s.getAttribute("value")??"":s.textContent??"",label:s.textContent||s.getAttribute("value")||"",disabled:s.hasAttribute("disabled"),hidden:s.hasAttribute("data-hidden")};s.getAttribute("selected")&&!this.value&&(this.value=i.value),this._options.push(i)}):(this._options=this.options,this._options.forEach(s=>{s.selected&&!this.value&&(this.value=s.value)}))}add(t,e){var s,i,o;(s=this.inputRef.value)==null||s.add(t,e),this._options.push({value:t.value||t.text,label:t.text||t.value,selected:t.selected,disabled:t.disabled}),t.selected&&(this.value=t.value||t.text,this.selectedIndex=this.returnNumberOrNull((i=this.inputRef.value)==null?void 0:i.selectedIndex),this.selectedOptions=(o=this.inputRef.value)==null?void 0:o.selectedOptions),this.requestUpdate()}remove(t){var e,s;typeof t=="number"&&(this.selectedIndex===t&&(this.value=((e=this._options[0])==null?void 0:e.value)||""),(s=this.inputRef.value)==null||s.remove(t))}item(t){var e;return(e=this.inputRef.value)==null?void 0:e.item(t)}namedItem(t){var e;return(e=this.inputRef.value)==null?void 0:e.namedItem(t)}showPicker(){var t;(t=this.inputRef.value)==null||t.showPicker()}attributeChangedCallback(t,e,s){var i,o;t==="options"&&(this._options=s?JSON.parse(s):[]),t==="value"&&this.value!==e&&(this.selectedIndex=this.touched?this.returnNumberOrNull((i=this.inputRef.value)==null?void 0:i.selectedIndex):this.options.findIndex(n=>n.value===s),this.selectedOptions=(o=this.inputRef.value)==null?void 0:o.selectedOptions,this.valueChanged(s,e)),super.attributeChangedCallback(t,e,s)}update(t){var e,s;super.update(t),t.has("value")&&this.value!==t.get("value")&&(this.selectedIndex=this.touched?this.returnNumberOrNull((e=this.inputRef.value)==null?void 0:e.selectedIndex):this.options.findIndex(i=>i.value===this.value),this.selectedOptions=(s=this.inputRef.value)==null?void 0:s.selectedOptions,this.valueChanged(this.value,t.get("value"))),t.has("id")&&!this.name&&this.id&&(this.name=this.id)}firstUpdated(t){var e;super.firstUpdated(t),this.options.length&&(this._options=this.options),!this.value&&this._options.length>0?(this.value=this._options[0].value,this.selectedIndex=0):this.selectedIndex=this._options.findIndex(s=>s.value===this.value),this.selectedOptions=(e=this.inputRef.value)==null?void 0:e.selectedOptions}render(){const t=`pkt-input ${this.fullwidth?"pkt-input--fullwidth":""}`;return r.x`
1
+ "use strict";const r=require("./element-6DBpyGQm.cjs"),p=require("./state-DPobt-Yz.cjs"),h=require("./ref-iJtiv3o2.cjs"),l=require("./if-defined-Cni-RHLS.cjs"),d=require("./input-element-C4xJoM-X.cjs"),c=require("./pkt-options-controller-CiuBG6Lt.cjs"),v=require("./pkt-slot-controller-BzddBp7z.cjs");require("./input-wrapper-CZ-a00V7.cjs");var f=Object.defineProperty,b=Object.getOwnPropertyDescriptor,a=(u,t,e,s)=>{for(var i=s>1?void 0:s?b(t,e):t,o=u.length-1,n;o>=0;o--)(n=u[o])&&(i=(s?n(t,e,i):n(i))||i);return s&&i&&f(t,e,i),i};exports.PktSelect=class extends d.PktInputElement{constructor(){super(),this.inputRef=h.e(),this.helptextSlot=h.e(),this.options=[],this.value="",this._options=[],this.selectedIndex=-1,this.selectedOptions=void 0,this.optionsController=new c.PktOptionsSlotController(this),this.slotController=new v.PktSlotController(this,this.helptextSlot),this.slotController.skipOptions=!0}connectedCallback(){super.connectedCallback();const t=this.options.length>0,e=this.optionsController.nodes.length&&this.optionsController.nodes.length>0;!t&&e?this.optionsController.nodes.forEach(s=>{const i={value:s.hasAttribute("value")?s.getAttribute("value")??"":s.textContent??"",label:s.textContent||s.getAttribute("value")||"",disabled:s.hasAttribute("disabled"),selected:s.hasAttribute("selected"),hidden:s.hasAttribute("data-hidden")};s.getAttribute("selected")&&!this.value&&(this.value=i.value),this._options.push(i)}):(this._options=this.options,this._options.forEach(s=>{s.selected&&!this.value&&(this.value=s.value)}))}add(t,e){var s,i,o;(s=this.inputRef.value)==null||s.add(t,e),this._options.push({value:t.value||t.text,label:t.text||t.value,selected:t.selected,disabled:t.disabled}),t.selected&&(this.value=t.value||t.text,this.selectedIndex=this.returnNumberOrNull((i=this.inputRef.value)==null?void 0:i.selectedIndex),this.selectedOptions=(o=this.inputRef.value)==null?void 0:o.selectedOptions),this.requestUpdate()}remove(t){var e,s;typeof t=="number"&&(this.selectedIndex===t&&(this.value=((e=this._options[0])==null?void 0:e.value)||""),(s=this.inputRef.value)==null||s.remove(t))}item(t){var e;return(e=this.inputRef.value)==null?void 0:e.item(t)}namedItem(t){var e;return(e=this.inputRef.value)==null?void 0:e.namedItem(t)}showPicker(){var t;(t=this.inputRef.value)==null||t.showPicker()}attributeChangedCallback(t,e,s){var i,o;t==="options"&&(this._options=s?JSON.parse(s):[]),t==="value"&&this.value!==e&&(this.selectedIndex=this.touched?this.returnNumberOrNull((i=this.inputRef.value)==null?void 0:i.selectedIndex):this.options.findIndex(n=>n.value===s),this.selectedOptions=(o=this.inputRef.value)==null?void 0:o.selectedOptions,this.valueChanged(s,e)),super.attributeChangedCallback(t,e,s)}update(t){var e,s;super.update(t),t.has("value")&&this.value!==t.get("value")&&(this.selectedIndex=this.touched?this.returnNumberOrNull((e=this.inputRef.value)==null?void 0:e.selectedIndex):this.options.findIndex(i=>i.value===this.value),this.selectedOptions=(s=this.inputRef.value)==null?void 0:s.selectedOptions,this.valueChanged(this.value,t.get("value"))),t.has("id")&&!this.name&&this.id&&(this.name=this.id)}firstUpdated(t){var e;super.firstUpdated(t),this.options.length&&(this._options=this.options),!this.value&&this._options.length>0?(this.value=this._options[0].value,this.selectedIndex=0):this.selectedIndex=this._options.findIndex(s=>s.value===this.value),this.selectedOptions=(e=this.inputRef.value)==null?void 0:e.selectedOptions}render(){const t=`pkt-input ${this.fullwidth?"pkt-input--fullwidth":""}`;return r.x`
2
2
  <pkt-input-wrapper
3
3
  ?counter=${this.counter}
4
4
  ?disabled=${this.disabled}
@@ -1,4 +1,4 @@
1
- "use strict";const u=require("./class-map-BBG2gMX4.cjs"),t=require("./element-6DBpyGQm.cjs"),k=require("./state-DPobt-Yz.cjs"),g=require("./pkt-slot-controller-BzddBp7z.cjs"),c=require("./ref-iJtiv3o2.cjs");require("./icon-B_ryAy4Q.cjs");const h=require("./if-defined-Cni-RHLS.cjs"),f={closeTag:{default:!1},size:{default:"medium"},skin:{default:"blue"},type:{default:"button"}},r={props:f};var d=Object.defineProperty,y=Object.getOwnPropertyDescriptor,i=(n,e,o,a)=>{for(var s=a>1?void 0:a?y(e,o):e,l=n.length-1,p;l>=0;l--)(p=n[l])&&(s=(a?p(e,o,s):p(s))||s);return a&&s&&d(e,o,s),s};exports.PktTag=class extends t.PktElement{constructor(){super(),this.defaultSlot=c.e(),this.closeTag=r.props.closeTag.default,this.size=r.props.size.default,this.skin=r.props.skin.default,this.textStyle=null,this.iconName=void 0,this.type=r.props.type.default,this.ariaLabel=null,this._isClosed=!1,this._ariaDescription=null,this.close=e=>{this._isClosed=!0,this.dispatchEvent(new CustomEvent("close",{detail:{origin:e},bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("on-close",{detail:{origin:e},bubbles:!0,composed:!0}))},this.slotController=new g.PktSlotController(this,this.defaultSlot),this._isClosed=!1}firstUpdated(e){var o,a;if(super.firstUpdated(e),this.closeTag&&!this.ariaLabel){const s=(a=(o=this.defaultSlot.value)==null?void 0:o.textContent)==null?void 0:a.trim();s&&(this._ariaDescription=`Klikk for å fjerne ${s}`)}}render(){const e={"pkt-tag":!0,[`pkt-tag--${this.size}`]:!!this.size,[`pkt-tag--${this.skin}`]:!!this.skin,[`pkt-tag--${this.textStyle}`]:!!this.textStyle},o={"pkt-tag":!0,"pkt-btn":!0,"pkt-btn--tertiary":!0,[`pkt-tag--${this.textStyle}`]:!!this.textStyle,[`pkt-tag--${this.size}`]:!!this.size,[`pkt-tag--${this.skin}`]:!!this.skin,"pkt-btn--icons-right-and-left":this.closeTag&&!!this.iconName,"pkt-hide":this._isClosed};return this.closeTag?t.x`
1
+ "use strict";const u=require("./class-map-BBG2gMX4.cjs"),t=require("./element-6DBpyGQm.cjs"),k=require("./state-DPobt-Yz.cjs"),g=require("./pkt-slot-controller-BzddBp7z.cjs"),c=require("./ref-iJtiv3o2.cjs");require("./icon-B_ryAy4Q.cjs");const h=require("./if-defined-Cni-RHLS.cjs"),f={size:{default:"medium"},skin:{default:"blue"},closeTag:{default:!1},type:{default:"button"}},r={props:f};var d=Object.defineProperty,y=Object.getOwnPropertyDescriptor,i=(n,e,o,a)=>{for(var s=a>1?void 0:a?y(e,o):e,l=n.length-1,p;l>=0;l--)(p=n[l])&&(s=(a?p(e,o,s):p(s))||s);return a&&s&&d(e,o,s),s};exports.PktTag=class extends t.PktElement{constructor(){super(),this.defaultSlot=c.e(),this.closeTag=r.props.closeTag.default,this.size=r.props.size.default,this.skin=r.props.skin.default,this.textStyle=null,this.iconName=void 0,this.type=r.props.type.default,this.ariaLabel=null,this._isClosed=!1,this._ariaDescription=null,this.close=e=>{this._isClosed=!0,this.dispatchEvent(new CustomEvent("close",{detail:{origin:e},bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("on-close",{detail:{origin:e},bubbles:!0,composed:!0}))},this.slotController=new g.PktSlotController(this,this.defaultSlot),this._isClosed=!1}firstUpdated(e){var o,a;if(super.firstUpdated(e),this.closeTag&&!this.ariaLabel){const s=(a=(o=this.defaultSlot.value)==null?void 0:o.textContent)==null?void 0:a.trim();s&&(this._ariaDescription=`Klikk for å fjerne ${s}`)}}render(){const e={"pkt-tag":!0,[`pkt-tag--${this.size}`]:!!this.size,[`pkt-tag--${this.skin}`]:!!this.skin,[`pkt-tag--${this.textStyle}`]:!!this.textStyle},o={"pkt-tag":!0,"pkt-btn":!0,"pkt-btn--tertiary":!0,[`pkt-tag--${this.textStyle}`]:!!this.textStyle,[`pkt-tag--${this.size}`]:!!this.size,[`pkt-tag--${this.skin}`]:!!this.skin,"pkt-btn--icons-right-and-left":this.closeTag&&!!this.iconName,"pkt-hide":this._isClosed};return this.closeTag?t.x`
2
2
  <button
3
3
  class=${u.e(o)}
4
4
  type=${this.type}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oslokommune/punkt-elements",
3
- "version": "13.2.4",
3
+ "version": "13.3.0",
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",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "devDependencies": {
33
33
  "@oslokommune/punkt-assets": "^13.0.0",
34
- "@oslokommune/punkt-css": "^13.2.3",
34
+ "@oslokommune/punkt-css": "^13.3.0",
35
35
  "sass": "^1.78.0",
36
36
  "typescript": "^5.6.2",
37
37
  "vite": "^5.4.18",
@@ -58,5 +58,5 @@
58
58
  "url": "https://github.com/oslokommune/punkt/issues"
59
59
  },
60
60
  "license": "MIT",
61
- "gitHead": "f777f10f0637de10ff45fe6a5b6d9c7e4abd70ff"
61
+ "gitHead": "82281bdd30fc0a0a1e47b3a52199e59aed83b65d"
62
62
  }
@@ -216,7 +216,7 @@ export class PktCard extends PktElement implements IPktCard {
216
216
  skin=${ifDefined(tag.skin)}
217
217
  iconName=${ifDefined(tag.iconName)}
218
218
  >
219
- ${tag.text}
219
+ <span>${tag.text}</span>
220
220
  </pkt-tag>
221
221
  `,
222
222
  )}
@@ -168,9 +168,22 @@ export class PktDatepicker extends PktInputElement {
168
168
  }
169
169
 
170
170
  updated(changedProperties: PropertyValues): void {
171
- if (changedProperties.has('value')) {
172
- if (this.range && this.value.length === 1) return
173
- this.valueChanged(this.value, changedProperties.get('value'))
171
+ if (changedProperties.has('multiple')) {
172
+ // If multiple is now true, ensure _value is an array of non-empty strings
173
+ if (this.multiple && !Array.isArray(this._value)) {
174
+ this._value =
175
+ typeof this.value === 'string'
176
+ ? this.value
177
+ ? this.value.split(',').filter(Boolean)
178
+ : []
179
+ : []
180
+ } else if (!this.multiple && Array.isArray(this._value)) {
181
+ this._value = this._value.filter(Boolean)
182
+ }
183
+ // If multiple is now false, ensure _value is a single value
184
+ if (!this.multiple && Array.isArray(this._value)) {
185
+ this._value = [this._value[0] ?? '']
186
+ }
174
187
  }
175
188
  super.updated(changedProperties)
176
189
  }
@@ -239,6 +252,7 @@ export class PktDatepicker extends PktInputElement {
239
252
  this.value = (e.target as HTMLInputElement).value
240
253
  }}
241
254
  @change=${(e: Event) => {
255
+ this.touched = true
242
256
  e.stopImmediatePropagation()
243
257
  }}
244
258
  ${ref(this.inputRef)}
@@ -386,6 +400,7 @@ export class PktDatepicker extends PktInputElement {
386
400
  }
387
401
  }}
388
402
  @change=${(e: Event) => {
403
+ this.touched = true
389
404
  e.stopImmediatePropagation()
390
405
  }}
391
406
  ${ref(this.inputRefTo)}
@@ -394,6 +409,7 @@ export class PktDatepicker extends PktInputElement {
394
409
  }
395
410
 
396
411
  renderMultipleInput() {
412
+ console.log('range', this.range, 'multiple', this.multiple)
397
413
  return html`
398
414
  <input
399
415
  class=${classMap(this.inputClasses)}
@@ -441,6 +457,7 @@ export class PktDatepicker extends PktInputElement {
441
457
  }
442
458
  }}
443
459
  @change=${(e: Event) => {
460
+ this.touched = true
444
461
  e.stopImmediatePropagation()
445
462
  }}
446
463
  ${ref(this.inputRef)}
@@ -453,7 +470,7 @@ export class PktDatepicker extends PktInputElement {
453
470
  <div class="pkt-datepicker__tags" aria-live="polite">
454
471
  ${!!this._value[0]
455
472
  ? repeat(
456
- this._value ?? [],
473
+ (this._value ?? []).filter(Boolean),
457
474
  (date) => date,
458
475
  (date) => html`
459
476
  <pkt-tag
@@ -519,6 +536,7 @@ export class PktDatepicker extends PktInputElement {
519
536
  }
520
537
 
521
538
  render() {
539
+ console.log('multiple', this.multiple, 'value', this.value, '_value', this._value)
522
540
  this.inputClasses = {
523
541
  'pkt-input': true,
524
542
  'pkt-datepicker__input': true,
@@ -22,7 +22,7 @@ export class PktLink extends PktElement {
22
22
  @property({ type: String, reflect: true }) href: string = specs.props.href.default
23
23
  @property({ type: String, reflect: true }) iconName: string | undefined = undefined
24
24
  @property({ type: String, reflect: true }) iconPosition: string | undefined = undefined
25
- @property({ type: Boolean, reflect: true }) external: boolean = specs.props.external.default
25
+ @property({ type: Boolean, reflect: true }) external: boolean = false
26
26
  @property({ type: String, reflect: true }) target: string | null = specs.props.target.default
27
27
 
28
28
  render() {
@@ -8,13 +8,13 @@ import '@/components/icon'
8
8
 
9
9
  export type TLinkCardSkin =
10
10
  | 'normal'
11
+ | 'no-padding'
11
12
  | 'blue'
12
13
  | 'beige'
13
14
  | 'green'
14
15
  | 'gray'
15
16
  | 'beige-outline'
16
- | 'gray-outline'
17
-
17
+ | 'gray-outline';
18
18
  export interface IPktLinkCard {
19
19
  title?: string
20
20
  href?: string
@@ -164,13 +164,6 @@ export class PktModal extends PktElement implements IPktModal {
164
164
  [`pkt-modal__closeButton--${this.closeButtonSkin}`]: true,
165
165
  }
166
166
 
167
- const buttonClasses = {
168
- 'pkt-btn': true,
169
- [`pkt-btn--${isCloseButtonSkinDefault ? 'tertiary' : 'primary'}`]: true,
170
- 'pkt-btn--icon-only': true,
171
- 'pkt-btn--medium': true,
172
- }
173
-
174
167
  return html`
175
168
  <dialog
176
169
  class=${classMap(classes)}
@@ -192,10 +185,11 @@ export class PktModal extends PktElement implements IPktModal {
192
185
  ? html`<div class="${classMap(closeButtonClasses)}">
193
186
  <pkt-button
194
187
  @click=${(event: Event) => this.close(event)}
195
- class=${classMap(buttonClasses)}
196
188
  aria-label="close"
197
189
  iconname="close"
198
190
  variant="icon-only"
191
+ size="medium"
192
+ skin=${isCloseButtonSkinDefault ? 'tertiary' : 'primary'}
199
193
  >
200
194
  Lukk
201
195
  </pkt-button>
@@ -74,6 +74,7 @@ export class PktSelect extends PktInputElement implements IPktSelect {
74
74
  : (node.textContent ?? ''),
75
75
  label: node.textContent || node.getAttribute('value') || '',
76
76
  disabled: node.hasAttribute('disabled'),
77
+ selected: node.hasAttribute('selected'),
77
78
  hidden: node.hasAttribute('data-hidden'),
78
79
  }
79
80
  if (node.getAttribute('selected') && !this.value) {
@@ -1,7 +0,0 @@
1
- "use strict";const t=require("./element-6DBpyGQm.cjs"),f=require("./pkt-slot-controller-BzddBp7z.cjs"),c=require("./ref-iJtiv3o2.cjs"),h=require("./class-map-BBG2gMX4.cjs");require("./icon-B_ryAy4Q.cjs");const k={href:{default:"#"},target:{default:"_self"},external:{default:!1}},a={props:k};var u=Object.defineProperty,P=Object.getOwnPropertyDescriptor,n=(o,r,s,i)=>{for(var e=i>1?void 0:i?P(r,s):r,l=o.length-1,p;l>=0;l--)(p=o[l])&&(e=(i?p(r,s,e):p(e))||e);return i&&e&&u(r,s,e),e};exports.PktLink=class extends t.PktElement{constructor(){super(),this.defaultSlot=c.e(),this.href=a.props.href.default,this.iconName=void 0,this.iconPosition=void 0,this.external=a.props.external.default,this.target=a.props.target.default,this.slotController=new f.PktSlotController(this,this.defaultSlot)}render(){const r={"pkt-link":!0,"pkt-link--icon-left":!!this.iconName&&this.iconPosition==="left"||!!(this.iconName&&!this.iconPosition),"pkt-link--icon-right":!!this.iconName&&this.iconPosition==="right","pkt-link--external":this.external};return t.x`<a
2
- class=${h.e(r)}
3
- href=${this.href}
4
- .target=${this.target}
5
- .rel=${this.external?"noopener noreferrer":t.E}
6
- >${this.iconName?t.x`<pkt-icon name=${this.iconName} class="pkt-link__icon"></pkt-icon>`:""} <span ${c.n(this.defaultSlot)}>Link</span></a
7
- >`}};n([t.n({type:String,reflect:!0})],exports.PktLink.prototype,"href",2);n([t.n({type:String,reflect:!0})],exports.PktLink.prototype,"iconName",2);n([t.n({type:String,reflect:!0})],exports.PktLink.prototype,"iconPosition",2);n([t.n({type:Boolean,reflect:!0})],exports.PktLink.prototype,"external",2);n([t.n({type:String,reflect:!0})],exports.PktLink.prototype,"target",2);exports.PktLink=n([t.t("pkt-link")],exports.PktLink);
@@ -6,15 +6,15 @@ import { e as b, n as f } from "./ref-BBYSqgeW.js";
6
6
  import "./icon-CC1js8eR.js";
7
7
  import { o as d } from "./if-defined-CmuO4Vz9.js";
8
8
  const _ = {
9
- closeTag: {
10
- default: !1
11
- },
12
9
  size: {
13
10
  default: "medium"
14
11
  },
15
12
  skin: {
16
13
  default: "blue"
17
14
  },
15
+ closeTag: {
16
+ default: !1
17
+ },
18
18
  type: {
19
19
  default: "button"
20
20
  }