@oslokommune/punkt-elements 19.11.0 → 19.12.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.
- package/CHANGELOG.md +13 -0
- package/dist/{accordion-CjGAmoQq.js → accordion-BlsqYbJf.js} +21 -20
- package/dist/accordion-DukAa2ED.cjs +48 -0
- package/dist/{combobox-B0VWv9c_.js → combobox-2NTR70Ad.js} +1 -1
- package/dist/{combobox-I8qdg8A4.cjs → combobox-Dlhm1iYr.cjs} +1 -1
- package/dist/{header-DLKiD7xm.js → header-DbV1G9bY.js} +1 -1
- package/dist/{header-IQvyDow3.cjs → header-lgdaF8oa.cjs} +1 -1
- package/dist/{header-menu-DpuxDU9a.cjs → header-menu-Cz7G7Q2R.cjs} +1 -1
- package/dist/{header-menu-Ch135F5Y.js → header-menu-F3tZZ5vO.js} +1 -1
- package/dist/pkt-accordion.cjs +1 -1
- package/dist/pkt-accordion.js +1 -1
- package/dist/pkt-combobox.cjs +1 -1
- package/dist/pkt-combobox.js +1 -1
- package/dist/pkt-header-menu.cjs +1 -1
- package/dist/pkt-header-menu.js +1 -1
- package/dist/pkt-header.cjs +1 -1
- package/dist/pkt-header.js +1 -1
- package/dist/pkt-index.cjs +1 -1
- package/dist/pkt-index.js +8 -8
- package/dist/shared-types/accordion.d.ts +3 -1
- package/dist/shared-types/index.d.ts +1 -1
- package/package.json +2 -2
- package/src/components/accordion/accordion.test.ts +34 -2
- package/src/components/accordion/accordionitem.ts +4 -1
- package/src/components/combobox/combobox.selection.test.ts +12 -0
- package/src/components/combobox/combobox.ts +1 -1
- package/dist/accordion-lbYihdiw.cjs +0 -47
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,19 @@ og skriver commits ca etter [Conventional Commits](https://conventionalcommits.o
|
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
+
## [19.12.0](https://github.com/oslokommune/punkt/compare/19.11.0...19.12.0) (2026-10-12)
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
* Fargeoppdateringer på Accordion, Button, Combobox og Datepicker, pluss 3 nye semantiske farger (#3716). - Tre nye nøytrale flatefarger som følger dunkelmodus: surface-subtle-default, surface-default-default og surface-strong-default
|
|
12
|
+
- Accordion: ny gray-skin, og borderless og border ser riktig ut i mørk modus. Beige og blue beholder lyse farger også i mørk modus
|
|
13
|
+
- Nytt: data-mode="light" gir lys modus inne i et mørkt område
|
|
14
|
+
- Datepicker: blå hover på datoer i dark mode og fetere skrift på valgte datoer
|
|
15
|
+
- Combobox: tagger er ***blå*** i stedet for *mørkeblå*, og lyseblå hover i begge moduser. "Legg til" og infofeltet har fått grå bakgrunn, og søkefeltet en tynn ramme
|
|
16
|
+
- Button: secondary fylles ikke lenger ved hover, fokus og klikk, bare ramme og tekst skifter farge. Tertiary har fått roligere hover og klikk, særlig i mørk modus
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
|
|
8
21
|
## [19.11.0](https://github.com/oslokommune/punkt/compare/19.10.2...19.11.0) (2026-10-08)
|
|
9
22
|
|
|
10
23
|
### Features
|
|
@@ -5,8 +5,8 @@ import { t as l } from "./if-defined-O59_I-e-.js";
|
|
|
5
5
|
import { n as u, t as d } from "./consume-Bp12si68.js";
|
|
6
6
|
import { t as f } from "./provide-_MnlMGnw.js";
|
|
7
7
|
import { n as p, t as m } from "./ref-y_5qv9vU.js";
|
|
8
|
-
//#region
|
|
9
|
-
var h = u(Symbol("pkt-accordion-context")),
|
|
8
|
+
//#region ../../shared-types/accordion.ts
|
|
9
|
+
var h = ["beige", "blue"], g = u(Symbol("pkt-accordion-context")), _ = class extends t {
|
|
10
10
|
constructor(...e) {
|
|
11
11
|
super(...e), this.ariaLabelledBy = "", this.compact = !1, this.skin = "borderless", this.name = "", this.context = { skin: this.skin };
|
|
12
12
|
}
|
|
@@ -55,27 +55,27 @@ i([a({
|
|
|
55
55
|
type: String,
|
|
56
56
|
reflect: !0,
|
|
57
57
|
attribute: "aria-labelledby"
|
|
58
|
-
})],
|
|
58
|
+
})], _.prototype, "ariaLabelledBy", void 0), i([a({
|
|
59
59
|
type: Boolean,
|
|
60
60
|
reflect: !0,
|
|
61
61
|
attribute: "compact"
|
|
62
|
-
})],
|
|
62
|
+
})], _.prototype, "compact", void 0), i([a({
|
|
63
63
|
type: String,
|
|
64
64
|
reflect: !0,
|
|
65
65
|
attribute: "skin"
|
|
66
|
-
})],
|
|
66
|
+
})], _.prototype, "skin", void 0), i([a({
|
|
67
67
|
type: String,
|
|
68
68
|
reflect: !0,
|
|
69
69
|
attribute: "name"
|
|
70
|
-
})],
|
|
70
|
+
})], _.prototype, "name", void 0), i([f({ context: g }), r()], _.prototype, "context", void 0);
|
|
71
71
|
try {
|
|
72
|
-
n("pkt-accordion")(
|
|
72
|
+
n("pkt-accordion")(_);
|
|
73
73
|
} catch {
|
|
74
74
|
console.warn("Forsøker å definere <pkt-accordion>, men den er allerede definert");
|
|
75
75
|
}
|
|
76
76
|
//#endregion
|
|
77
77
|
//#region src/components/accordion/accordionitem.ts
|
|
78
|
-
var
|
|
78
|
+
var v = class extends c {
|
|
79
79
|
constructor() {
|
|
80
80
|
super(), this.defaultOpen = !1, this.title = "", this.skin = void 0, this.compact = !1, this.isOpen = !1, this.name = void 0, this.accordionItemRef = m();
|
|
81
81
|
}
|
|
@@ -87,7 +87,7 @@ var _ = class extends c {
|
|
|
87
87
|
"pkt-accordion-item": !0,
|
|
88
88
|
"pkt-accordion-item--compact": this.compact,
|
|
89
89
|
[`pkt-accordion-item--${this.skin}`]: !!this.skin
|
|
90
|
-
}, n =
|
|
90
|
+
}, n = this.skin ?? this.context?.skin, r = n === "plus-minus";
|
|
91
91
|
return e`
|
|
92
92
|
<details
|
|
93
93
|
class=${o(t)}
|
|
@@ -95,10 +95,11 @@ var _ = class extends c {
|
|
|
95
95
|
?open=${this.isOpen}
|
|
96
96
|
${p(this.accordionItemRef)}
|
|
97
97
|
name=${l(this.name)}
|
|
98
|
+
data-mode=${l(n && h.includes(n) ? "light" : void 0)}
|
|
98
99
|
>
|
|
99
100
|
<summary class="pkt-accordion-item__title" id=${`pkt-accordion-item-summary-${this.id}`}>
|
|
100
101
|
${this.title}
|
|
101
|
-
${
|
|
102
|
+
${r ? e`
|
|
102
103
|
<pkt-icon
|
|
103
104
|
name="plus-sign"
|
|
104
105
|
class="pkt-accordion-item__icon pkt-accordion-item__icon--plus"
|
|
@@ -128,29 +129,29 @@ var _ = class extends c {
|
|
|
128
129
|
`;
|
|
129
130
|
}
|
|
130
131
|
};
|
|
131
|
-
i([a({ type: Boolean })],
|
|
132
|
+
i([a({ type: Boolean })], v.prototype, "defaultOpen", void 0), i([a({ type: String })], v.prototype, "title", void 0), i([a({
|
|
132
133
|
type: String,
|
|
133
134
|
reflect: !0
|
|
134
|
-
})],
|
|
135
|
+
})], v.prototype, "skin", void 0), i([a({
|
|
135
136
|
type: Boolean,
|
|
136
137
|
reflect: !0
|
|
137
|
-
})],
|
|
138
|
+
})], v.prototype, "compact", void 0), i([a({
|
|
138
139
|
type: Boolean,
|
|
139
140
|
reflect: !0
|
|
140
|
-
})],
|
|
141
|
+
})], v.prototype, "isOpen", void 0), i([a({
|
|
141
142
|
type: String,
|
|
142
143
|
reflect: !0
|
|
143
|
-
})],
|
|
144
|
-
context:
|
|
144
|
+
})], v.prototype, "name", void 0), i([d({
|
|
145
|
+
context: g,
|
|
145
146
|
subscribe: !0
|
|
146
|
-
}), a({ attribute: !1 })],
|
|
147
|
+
}), a({ attribute: !1 })], v.prototype, "context", void 0);
|
|
147
148
|
try {
|
|
148
|
-
n("pkt-accordion-item")(
|
|
149
|
+
n("pkt-accordion-item")(v);
|
|
149
150
|
} catch {
|
|
150
151
|
console.warn("Forsøker å definere <pkt-accordion-item>, men den er allerede definert");
|
|
151
152
|
}
|
|
152
153
|
//#endregion
|
|
153
154
|
//#region src/components/accordion/index.ts
|
|
154
|
-
var
|
|
155
|
+
var y = _;
|
|
155
156
|
//#endregion
|
|
156
|
-
export {
|
|
157
|
+
export { v as n, _ as r, y as t };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./element-with-slot-CcJPCLgn.cjs"),r=require("./if-defined-CiML3MTM.cjs"),i=require("./consume-kEjgTrAp.cjs"),a=require("./provide-Cz18sYug.cjs"),o=require("./ref-CB7e9nMY.cjs");var s=[`beige`,`blue`],c=i.n(Symbol(`pkt-accordion-context`)),l=class extends e.c{constructor(...e){super(...e),this.ariaLabelledBy=``,this.compact=!1,this.skin=`borderless`,this.name=``,this.context={skin:this.skin}}willUpdate(e){e.has(`skin`)&&(this.context={...this.context,skin:this.skin})}updated(e){e.has(`name`)&&this.updateAccordionItemNames()}updateAccordionItemNames(){if(this.name){let e=this.renderRoot?.querySelector(`slot`);e&&e.assignedElements().forEach(e=>{e.tagName.toLowerCase()===`pkt-accordion-item`&&(e.hasAttribute(`name`)||e.setAttribute(`name`,this.name))})}}firstUpdated(){let e=this.renderRoot?.querySelector(`slot`);e&&e.addEventListener(`slotchange`,()=>{this.updateAccordionItemNames()})}render(){let n={"pkt-accordion":!0,"pkt-accordion--compact":this.compact,[`pkt-accordion--${this.skin}`]:this.skin};return e._`
|
|
2
|
+
<div
|
|
3
|
+
part="container"
|
|
4
|
+
class=${t.t(n)}
|
|
5
|
+
data-testid="pkt-accordion"
|
|
6
|
+
aria-labelledby=${r.t(this.ariaLabelledBy||void 0)}
|
|
7
|
+
>
|
|
8
|
+
<slot></slot>
|
|
9
|
+
</div>
|
|
10
|
+
`}};e.n([e.u({type:String,reflect:!0,attribute:`aria-labelledby`})],l.prototype,`ariaLabelledBy`,void 0),e.n([e.u({type:Boolean,reflect:!0,attribute:`compact`})],l.prototype,`compact`,void 0),e.n([e.u({type:String,reflect:!0,attribute:`skin`})],l.prototype,`skin`,void 0),e.n([e.u({type:String,reflect:!0,attribute:`name`})],l.prototype,`name`,void 0),e.n([a.t({context:c}),e.l()],l.prototype,`context`,void 0);try{e.d(`pkt-accordion`)(l)}catch{console.warn(`Forsøker å definere <pkt-accordion>, men den er allerede definert`)}var u=class extends n.t{constructor(){super(),this.defaultOpen=!1,this.title=``,this.skin=void 0,this.compact=!1,this.isOpen=!1,this.name=void 0,this.accordionItemRef=o.t()}firstUpdated(e){this.defaultOpen&&(this.isOpen=!0)}render(){let i={"pkt-accordion-item":!0,"pkt-accordion-item--compact":this.compact,[`pkt-accordion-item--${this.skin}`]:!!this.skin},a=this.skin??this.context?.skin,c=a===`plus-minus`;return e._`
|
|
11
|
+
<details
|
|
12
|
+
class=${t.t(i)}
|
|
13
|
+
id=${this.id}
|
|
14
|
+
?open=${this.isOpen}
|
|
15
|
+
${o.n(this.accordionItemRef)}
|
|
16
|
+
name=${r.t(this.name)}
|
|
17
|
+
data-mode=${r.t(a&&s.includes(a)?`light`:void 0)}
|
|
18
|
+
>
|
|
19
|
+
<summary class="pkt-accordion-item__title" id=${`pkt-accordion-item-summary-${this.id}`}>
|
|
20
|
+
${this.title}
|
|
21
|
+
${c?e._`
|
|
22
|
+
<pkt-icon
|
|
23
|
+
name="plus-sign"
|
|
24
|
+
class="pkt-accordion-item__icon pkt-accordion-item__icon--plus"
|
|
25
|
+
aria-hidden="true"
|
|
26
|
+
></pkt-icon>
|
|
27
|
+
<pkt-icon
|
|
28
|
+
name="minus-sign"
|
|
29
|
+
class="pkt-accordion-item__icon pkt-accordion-item__icon--minus"
|
|
30
|
+
aria-hidden="true"
|
|
31
|
+
></pkt-icon>
|
|
32
|
+
`:e._`
|
|
33
|
+
<pkt-icon
|
|
34
|
+
name="chevron-thin-down"
|
|
35
|
+
class="pkt-accordion-item__icon"
|
|
36
|
+
aria-hidden="true"
|
|
37
|
+
></pkt-icon>
|
|
38
|
+
`}
|
|
39
|
+
</summary>
|
|
40
|
+
<div
|
|
41
|
+
class="pkt-accordion-item__content"
|
|
42
|
+
id="pkt-accordion-item__content-${this.id}"
|
|
43
|
+
role="region"
|
|
44
|
+
>
|
|
45
|
+
<div class="pkt-accordion-item__content-inner">${n.i(this)}</div>
|
|
46
|
+
</div>
|
|
47
|
+
</details>
|
|
48
|
+
`}};e.n([e.u({type:Boolean})],u.prototype,`defaultOpen`,void 0),e.n([e.u({type:String})],u.prototype,`title`,void 0),e.n([e.u({type:String,reflect:!0})],u.prototype,`skin`,void 0),e.n([e.u({type:Boolean,reflect:!0})],u.prototype,`compact`,void 0),e.n([e.u({type:Boolean,reflect:!0})],u.prototype,`isOpen`,void 0),e.n([e.u({type:String,reflect:!0})],u.prototype,`name`,void 0),e.n([i.t({context:c,subscribe:!0}),e.u({attribute:!1})],u.prototype,`context`,void 0);try{e.d(`pkt-accordion-item`)(u)}catch{console.warn(`Forsøker å definere <pkt-accordion-item>, men den er allerede definert`)}var d=l;Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
@@ -689,7 +689,7 @@ var M = class extends j {
|
|
|
689
689
|
@mousedown=${i ? n : (e) => e.preventDefault()}
|
|
690
690
|
>
|
|
691
691
|
<pkt-tag
|
|
692
|
-
skin=${o || "blue
|
|
692
|
+
skin=${o || "blue"}
|
|
693
693
|
?closeTag=${!this.isDisabled}
|
|
694
694
|
.buttonTabindex=${i ? void 0 : -1}
|
|
695
695
|
@close=${() => this.handleTagRemove(t)}
|
|
@@ -125,7 +125,7 @@ const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),
|
|
|
125
125
|
@mousedown=${r?e.h:e=>e.preventDefault()}
|
|
126
126
|
>
|
|
127
127
|
<pkt-tag
|
|
128
|
-
skin=${a||`blue
|
|
128
|
+
skin=${a||`blue`}
|
|
129
129
|
?closeTag=${!this.isDisabled}
|
|
130
130
|
.buttonTabindex=${r?void 0:-1}
|
|
131
131
|
@close=${()=>this.handleTagRemove(t)}
|
|
@@ -13,7 +13,7 @@ import { n as b, t as x } from "./scroll-lock-BALd8hF9.js";
|
|
|
13
13
|
import "./link-sO401Ieh.js";
|
|
14
14
|
import "./textinput-wZSCpQgv.js";
|
|
15
15
|
import "./searchinput-Bkcr3Fby.js";
|
|
16
|
-
import "./header-menu-
|
|
16
|
+
import "./header-menu-F3tZZ5vO.js";
|
|
17
17
|
//#region ../../shared-types/header.ts
|
|
18
18
|
var S = (e) => typeof e.target == "string" ? {
|
|
19
19
|
title: e.title,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./format-B8meU8Tm.cjs"),r=require("./element-with-slot-CcJPCLgn.cjs"),i=require("./booleanish-BF8l4scU.cjs"),a=require("./fetch-header-footer-data-CUKV0biS.cjs");require("./icon-jPhyZD1z.cjs");const o=require("./if-defined-CiML3MTM.cjs");require("./button-BFG-7bDB.cjs");const s=require("./ref-CB7e9nMY.cjs"),c=require("./focus-trap-DSv4Ifqm.cjs"),l=require("./scroll-lock-B46ur0FF.cjs");require("./link-CRLAhYi0.cjs"),require("./textinput-C7JFm9jD.cjs"),require("./searchinput-Mdc9Ihld.cjs"),require("./header-menu-
|
|
1
|
+
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./format-B8meU8Tm.cjs"),r=require("./element-with-slot-CcJPCLgn.cjs"),i=require("./booleanish-BF8l4scU.cjs"),a=require("./fetch-header-footer-data-CUKV0biS.cjs");require("./icon-jPhyZD1z.cjs");const o=require("./if-defined-CiML3MTM.cjs");require("./button-BFG-7bDB.cjs");const s=require("./ref-CB7e9nMY.cjs"),c=require("./focus-trap-DSv4Ifqm.cjs"),l=require("./scroll-lock-B46ur0FF.cjs");require("./link-CRLAhYi0.cjs"),require("./textinput-C7JFm9jD.cjs"),require("./searchinput-Mdc9Ihld.cjs"),require("./header-menu-Cz7G7Q2R.cjs");var u=e=>typeof e.target==`string`?{title:e.title,iconName:e.iconName,href:e.target}:{title:e.title,iconName:e.iconName,onClick:e.target},d=e=>u(e),f=e=>{if(!e)return;let t=typeof e==`string`?new Date(e):e;if(!isNaN(t.getTime()))return t.toLocaleDateString(`nb-NO`,{day:`numeric`,month:`long`,year:`numeric`,hour:`2-digit`,minute:`2-digit`})},p=class{constructor(e,t){this.isMobile=!1,this.isTablet=!1,this.isHidden=!1,this.pauseScrollHide=!1,this.componentWidth=typeof window<`u`?window.innerWidth:0,this.lastScrollPosition=0,this.scrollLockToken=l.t(),this.lastFocusedElement=null,this.shouldRestoreFocus=!1,this.handleScroll=()=>{if(this.getOptions().scrollBehavior!==`hide`||this.pauseScrollHide)return;let e=window.pageYOffset||document.documentElement.scrollTop;if(e<0||Math.abs(e-this.lastScrollPosition)<60)return;let t=e>this.lastScrollPosition;this.lastScrollPosition=e,t!==this.isHidden&&(this.isHidden=t,this.host.requestUpdate())},this.host=e,this.getOptions=t,e.addController(this)}hostConnected(){window.addEventListener(`scroll`,this.handleScroll)}hostDisconnected(){this.resizeObserver?.disconnect(),window.removeEventListener(`scroll`,this.handleScroll),l.n(this.scrollLockToken,!1)}observe(e){e&&(this.componentWidth=e.offsetWidth,this.refreshBreakpoints(),this.resizeObserver=new ResizeObserver(e=>{for(let t of e)this.componentWidth=t.borderBoxSize&&t.borderBoxSize.length>0?t.borderBoxSize[0].inlineSize:t.contentRect.width,this.refreshBreakpoints()}),this.resizeObserver.observe(e))}refreshBreakpoints(){let{mobileBreakpoint:e,tabletBreakpoint:t}=this.getOptions(),n=this.componentWidth<e,r=this.componentWidth<t;(n!==this.isMobile||r!==this.isTablet)&&(this.isMobile=n,this.isTablet=r,this.host.requestUpdate())}setScrollLock(e){l.n(this.scrollLockToken,e)}captureFocus(){this.lastFocusedElement=document.activeElement}flagRestoreFocus(){this.shouldRestoreFocus=!0}restoreFocus(){this.shouldRestoreFocus&&this.lastFocusedElement&&document.contains(this.lastFocusedElement)&&this.lastFocusedElement.focus(),this.lastFocusedElement=null,this.shouldRestoreFocus=!1}},m=class extends e.t{constructor(...e){super(...e),this.canChangeRepresentation=!1,this.logoutOnClick=!1}handleChangeRepresentation(){this.dispatchEvent(new CustomEvent(`change-representation`,{bubbles:!0,composed:!0}))}handleLogout(){this.dispatchEvent(new CustomEvent(`log-out`,{bubbles:!0,composed:!0}))}handleMenuItemClick(e){`onClick`in e&&typeof e.onClick==`function`&&e.onClick()}renderLinkOrButton(n,r){let i=`href`in n,a=t.t({"pkt-user-menu__link":!0,"pkt-link-button":!i,"pkt-link":!i,"pkt-link--icon-left":!i,[r||``]:!!r});return i?e._`
|
|
2
2
|
<pkt-link
|
|
3
3
|
iconName=${n.iconName||e.h}
|
|
4
4
|
href=${n.href}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./booleanish-BF8l4scU.cjs"),r=require("./fetch-header-footer-data-CUKV0biS.cjs");require("./icon-jPhyZD1z.cjs"),require("./accordion-
|
|
1
|
+
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./booleanish-BF8l4scU.cjs"),r=require("./fetch-header-footer-data-CUKV0biS.cjs");require("./icon-jPhyZD1z.cjs"),require("./accordion-DukAa2ED.cjs");var i=class extends e.t{constructor(...e){super(...e),this.dataUrl=r.a,this.locale=`nb-NO`,this.open=!1,this.mobileBreakpoint=768,this.loadState=`idle`,this.isMobile=!1,this.menuWidth=0}connectedCallback(){super.connectedCallback(),this.classList.add(`pkt-header-menu`),this.updateOpenClass(),this.observeWidth(),this.data?(this.loadState=`ready`,this.dispatchEvent(new CustomEvent(`data-loaded`,{detail:{data:this.data},bubbles:!0,composed:!0}))):this.loadData()}updateOpenClass(){this.classList.toggle(`pkt-header-menu--open`,!!this.open)}disconnectedCallback(){super.disconnectedCallback(),this.abortController?.abort(),this.resizeObserver?.disconnect(),this.resizeObserver=void 0}updated(e){super.updated(e),e.has(`open`)&&this.updateOpenClass(),e.has(`mobileBreakpoint`)&&e.get(`mobileBreakpoint`)!==void 0&&this.refreshIsMobile(),e.has(`dataUrl`)&&e.get(`dataUrl`)!==void 0&&!this.data&&this.loadData(),e.has(`data`)&&e.get(`data`)!==void 0&&this.data&&(this.loadState=`ready`,this.dispatchEvent(new CustomEvent(`data-loaded`,{detail:{data:this.data},bubbles:!0,composed:!0})))}observeWidth(){typeof ResizeObserver>`u`||(this.menuWidth=this.offsetWidth,this.refreshIsMobile(),this.resizeObserver=new ResizeObserver(e=>{for(let t of e)this.menuWidth=t.borderBoxSize&&t.borderBoxSize.length>0?t.borderBoxSize[0].inlineSize:t.contentRect.width,this.refreshIsMobile()}),this.resizeObserver.observe(this))}refreshIsMobile(){this.isMobile=this.menuWidth<this.mobileBreakpoint}async loadData(){this.abortController?.abort(),this.abortController=new AbortController,this.loadState=`loading`;try{let e=await r.t(this.dataUrl,this.abortController.signal);this.fetchedData=e,this.loadState=`ready`,this.dispatchEvent(new CustomEvent(`data-loaded`,{detail:{data:e},bubbles:!0,composed:!0}))}catch(e){if(e.name===`AbortError`)return;this.loadState=`error`,this.dispatchEvent(new CustomEvent(`data-error`,{detail:{error:e},bubbles:!0,composed:!0}))}}get effectiveData(){return this.data??this.fetchedData}get localeData(){return r.n(this.effectiveData,this.locale)}render(){if(this.loadState===`loading`)return e._`
|
|
2
2
|
<nav aria-busy="true">
|
|
3
3
|
<p class="pkt-header-menu__loading">${this.pktStrings.get(`header`).menuLoading}</p>
|
|
4
4
|
</nav>
|
|
@@ -3,7 +3,7 @@ import { t as s } from "./class-map-Bf-QzUpN.js";
|
|
|
3
3
|
import { t as c } from "./booleanish-OQJTYSrw.js";
|
|
4
4
|
import { a as l, i as u, n as d, r as f, t as p } from "./fetch-header-footer-data-Pc32etrk.js";
|
|
5
5
|
import "./icon-Bao96Zb8.js";
|
|
6
|
-
import "./accordion-
|
|
6
|
+
import "./accordion-BlsqYbJf.js";
|
|
7
7
|
//#region src/components/header-menu/header-menu.ts
|
|
8
8
|
var m = class extends a {
|
|
9
9
|
constructor(...e) {
|
package/dist/pkt-accordion.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./accordion-
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./accordion-DukAa2ED.cjs");exports.PktAccordion=e.r,exports.PktAccordionItem=e.n,exports.default=e.t;
|
package/dist/pkt-accordion.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, r as t, t as n } from "./accordion-
|
|
1
|
+
import { n as e, r as t, t as n } from "./accordion-BlsqYbJf.js";
|
|
2
2
|
export { t as PktAccordion, e as PktAccordionItem, n as default };
|
package/dist/pkt-combobox.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./combobox-
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./combobox-Dlhm1iYr.cjs");exports.PktCombobox=e.n,exports.default=e.t;
|
package/dist/pkt-combobox.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./combobox-
|
|
1
|
+
import { n as e, t } from "./combobox-2NTR70Ad.js";
|
|
2
2
|
export { e as PktCombobox, t as default };
|
package/dist/pkt-header-menu.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./header-menu-
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./header-menu-Cz7G7Q2R.cjs");exports.PktHeaderMenu=e.n,exports.default=e.t;
|
package/dist/pkt-header-menu.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./header-menu-
|
|
1
|
+
import { n as e, t } from "./header-menu-F3tZZ5vO.js";
|
|
2
2
|
export { e as PktHeaderMenu, t as default };
|
package/dist/pkt-header.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./header-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./header-lgdaF8oa.cjs");exports.PktHeader=e.t,exports.PktHeaderGlobal=e.n,exports.PktHeaderService=e.r,exports.PktHeaderUserMenu=e.i,exports.formatLastLoggedIn=e.a;
|
package/dist/pkt-header.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as e, i as t, n, r, t as i } from "./header-
|
|
1
|
+
import { a as e, i as t, n, r, t as i } from "./header-DbV1G9bY.js";
|
|
2
2
|
export { i as PktHeader, n as PktHeaderGlobal, r as PktHeaderService, t as PktHeaderUserMenu, e as formatLastLoggedIn };
|
package/dist/pkt-index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./element-C6WTyJFE.cjs"),t=require("./consent-DBYZaCTp.cjs"),n=require("./alert-CuXM6TnC.cjs"),r=require("./header-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./element-C6WTyJFE.cjs"),t=require("./consent-DBYZaCTp.cjs"),n=require("./alert-CuXM6TnC.cjs"),r=require("./header-lgdaF8oa.cjs"),i=require("./card-Diivw_vm.cjs"),a=require("./checkbox-Dyyrw5TE.cjs"),o=require("./radiobutton-qTPNeZl5.cjs"),s=require("./icon-jPhyZD1z.cjs"),c=require("./accordion-DukAa2ED.cjs"),l=require("./messagebox-CR59jv8N.cjs"),u=require("./calendar-C5QwPrbk.cjs"),d=require("./combobox-Dlhm1iYr.cjs"),f=require("./button-BFG-7bDB.cjs"),p=require("./backlink-CsFeerTH.cjs"),m=require("./breadcrumbs-D03id_ha.cjs"),h=require("./tag-BMtnaJ1A.cjs"),g=require("./input-wrapper-BwzajfFX.cjs"),_=require("./helptext-Bdv80rcs.cjs"),v=require("./checkbox-group-COWUvl52.cjs"),y=require("./fileupload-CyLRyoVU.cjs"),b=require("./modal-BKeSXrzi.cjs"),x=require("./progressbar-CnX4fFfR.cjs"),S=require("./datepicker-0NSvgPXK.cjs"),C=require("./footer-C6ajmlq2.cjs"),w=require("./link-CRLAhYi0.cjs"),T=require("./textinput-C7JFm9jD.cjs"),E=require("./searchinput-Mdc9Ihld.cjs"),D=require("./header-menu-Cz7G7Q2R.cjs"),O=require("./heading-BluavR6A.cjs"),k=require("./linkcard-DnZgMzqL.cjs"),A=require("./loader-Zo_VSsNw.cjs"),j=require("./radio-group-DaIRh-fL.cjs"),M=require("./tabs-R1Jzzj3-.cjs"),N=require("./textarea-DWLVisQX.cjs"),P=require("./select-CQpwjRPh.cjs"),F=require("./timepicker-DVyi8teh.cjs");exports.PktAccordion=c.r,exports.PktAccordionItem=c.n,exports.PktAlert=n.n,exports.PktBackLink=p.n,exports.PktBreadcrumbs=m.t,exports.PktButton=f.n,exports.PktCalendar=u.n,exports.PktCard=i.n,exports.PktCheckbox=a.n,exports.PktCheckboxGroup=v.n,exports.PktCombobox=d.n,exports.PktConsent=t.n,exports.PktDateTags=S.a,exports.PktDatepicker=S.t,Object.defineProperty(exports,"PktFileUpload",{enumerable:!0,get:function(){return y.n}}),exports.PktFooter=C.n,exports.PktFooterSimple=C.t,exports.PktHeader=r.t,exports.PktHeaderGlobal=r.n,exports.PktHeaderMenu=D.n,exports.PktHeaderService=r.r,exports.PktHeaderUserMenu=r.i,exports.PktHeading=O.n,exports.PktHelptext=_.n,exports.PktIcon=s.n,exports.PktInputWrapper=g.n,exports.PktLink=w.n,exports.PktLinkCard=k.n,exports.PktLoader=A.n,exports.PktMessagebox=l.n,exports.PktModal=b.n,exports.PktProgressbar=x.n,exports.PktRadioButton=o.n,exports.PktRadiobutton=o.n,exports.PktRadioGroup=j.n,exports.PktSearchInput=E.n,exports.PktSelect=P.n,exports.PktTabItem=M.n,exports.PktTabs=M.r,exports.PktTag=h.n,exports.PktTextarea=N.n,exports.PktTextinput=T.n,exports.PktTimepicker=F.t,exports.getPktStrings=e.r,exports.pktStringsNb=e.s,exports.resetPktStrings=e.i,exports.setPktStrings=e.a,exports.subscribePktStrings=e.o;
|
package/dist/pkt-index.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { a as e, i as t, o as n, r, s as i } from "./element-DBugHPKM.js";
|
|
2
2
|
import { n as a } from "./consent-BUS6GEUu.js";
|
|
3
3
|
import { n as o } from "./alert-Xt26J9yX.js";
|
|
4
|
-
import { i as s, n as c, r as l, t as u } from "./header-
|
|
4
|
+
import { i as s, n as c, r as l, t as u } from "./header-DbV1G9bY.js";
|
|
5
5
|
import { n as d } from "./card-DCc3wfUb.js";
|
|
6
6
|
import { n as f } from "./checkbox-CCBZc3Ix.js";
|
|
7
7
|
import { n as p } from "./radiobutton-BJCSVvcQ.js";
|
|
8
8
|
import { n as m } from "./icon-Bao96Zb8.js";
|
|
9
|
-
import { n as h } from "./
|
|
10
|
-
import { n as
|
|
11
|
-
import { n as
|
|
12
|
-
import { n as
|
|
13
|
-
import { n as
|
|
9
|
+
import { n as h, r as g } from "./accordion-BlsqYbJf.js";
|
|
10
|
+
import { n as _ } from "./messagebox-CzaFlrYz.js";
|
|
11
|
+
import { n as v } from "./calendar-D9w8M99G.js";
|
|
12
|
+
import { n as y } from "./combobox-2NTR70Ad.js";
|
|
13
|
+
import { n as b } from "./button-DhCqyX4D.js";
|
|
14
14
|
import { n as x } from "./backlink-ogvv493Y.js";
|
|
15
15
|
import { t as S } from "./breadcrumbs-53QVnTFP.js";
|
|
16
16
|
import { n as C } from "./tag-uVXp7uP-.js";
|
|
@@ -25,7 +25,7 @@ import { n as M, t as N } from "./footer-L2vhQTAS.js";
|
|
|
25
25
|
import { n as P } from "./link-sO401Ieh.js";
|
|
26
26
|
import { n as F } from "./textinput-wZSCpQgv.js";
|
|
27
27
|
import { n as I } from "./searchinput-Bkcr3Fby.js";
|
|
28
|
-
import { n as L } from "./header-menu-
|
|
28
|
+
import { n as L } from "./header-menu-F3tZZ5vO.js";
|
|
29
29
|
import { n as R } from "./heading-y72aIgB8.js";
|
|
30
30
|
import { n as z } from "./linkcard-DdmGxzAP.js";
|
|
31
31
|
import { n as B } from "./loader-Di5kHEQ4.js";
|
|
@@ -34,4 +34,4 @@ import { n as H, r as U } from "./tabs-DBW3P90Z.js";
|
|
|
34
34
|
import { n as W } from "./textarea-553WDMEq.js";
|
|
35
35
|
import { n as G } from "./select-CIAfUw8F.js";
|
|
36
36
|
import { t as K } from "./timepicker-CMe0IbPm.js";
|
|
37
|
-
export {
|
|
37
|
+
export { g as PktAccordion, h as PktAccordionItem, o as PktAlert, x as PktBackLink, S as PktBreadcrumbs, b as PktButton, v as PktCalendar, d as PktCard, f as PktCheckbox, E as PktCheckboxGroup, y as PktCombobox, a as PktConsent, A as PktDateTags, j as PktDatepicker, D as PktFileUpload, M as PktFooter, N as PktFooterSimple, u as PktHeader, c as PktHeaderGlobal, L as PktHeaderMenu, l as PktHeaderService, s as PktHeaderUserMenu, R as PktHeading, T as PktHelptext, m as PktIcon, w as PktInputWrapper, P as PktLink, z as PktLinkCard, B as PktLoader, _ as PktMessagebox, O as PktModal, k as PktProgressbar, p as PktRadioButton, p as PktRadiobutton, V as PktRadioGroup, I as PktSearchInput, G as PktSelect, H as PktTabItem, U as PktTabs, C as PktTag, W as PktTextarea, F as PktTextinput, K as PktTimepicker, r as getPktStrings, i as pktStringsNb, t as resetPktStrings, e as setPktStrings, n as subscribePktStrings };
|
|
@@ -9,8 +9,10 @@
|
|
|
9
9
|
* bruk `IAccordionVisualProps` for delte visuelle props (`skin`, `compact`).
|
|
10
10
|
*/
|
|
11
11
|
/** Accordion skin varianter — delt runtime source for types, specs, og Preview. */
|
|
12
|
-
export declare const ACCORDION_SKINS: readonly ['borderless', 'outlined', 'beige', 'blue', 'plus-minus'];
|
|
12
|
+
export declare const ACCORDION_SKINS: readonly ['borderless', 'outlined', 'gray', 'beige', 'blue', 'plus-minus'];
|
|
13
13
|
export type TAccordionSkin = (typeof ACCORDION_SKINS)[number];
|
|
14
|
+
/** Skins uten mørk variant. Radene får `data-mode="light"` og beholder lys modus. */
|
|
15
|
+
export declare const ACCORDION_LIGHT_ONLY_SKINS: readonly TAccordionSkin[];
|
|
14
16
|
/** Visual props delt med pkt-accordion og pkt-accordion-item. */
|
|
15
17
|
export type IAccordionVisualProps = {
|
|
16
18
|
skin?: TAccordionSkin;
|
|
@@ -26,7 +26,7 @@ export type { TLayout, TVerticalPosition, THorizontalPosition, TPosition, TPosit
|
|
|
26
26
|
export type { THTMLButtonType, TSelectionMode } from './form';
|
|
27
27
|
export { INPUT_SIZES } from './size';
|
|
28
28
|
export type { TPktInputSize, TSize3, TSize5, TSize7 } from './size';
|
|
29
|
-
export { ACCORDION_SKINS } from './accordion';
|
|
29
|
+
export { ACCORDION_LIGHT_ONLY_SKINS, ACCORDION_SKINS } from './accordion';
|
|
30
30
|
export type { TAccordionSkin, IPktAccordionBase, IPktAccordionItemBase, IAccordionSpecProps, IAccordionItemSpecProps, IAccordionVisualProps, } from './accordion';
|
|
31
31
|
export { BUTTON_SIZES, BUTTON_SKINS, BUTTON_COLORS, BUTTON_VARIANTS, BUTTON_STATES } from './button';
|
|
32
32
|
export type { TPktButtonSize, TPktButtonSkin, TPktButtonColor, TPktButtonVariant, TPktButtonState, IPktButtonBase, IButtonSpecProps, } from './button';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oslokommune/punkt-elements",
|
|
3
|
-
"version": "19.
|
|
3
|
+
"version": "19.12.0",
|
|
4
4
|
"description": "Komponentbiblioteket til Punkt, designsystem for Oslo kommune",
|
|
5
5
|
"homepage": "https://punkt.oslo.kommune.no",
|
|
6
6
|
"author": "Team Designsystem, Oslo kommune",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"engines": {
|
|
85
85
|
"node": "^22.19.0 || ^24.0.0 || ^26.0.0"
|
|
86
86
|
},
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "fff01ab9619d3c18548f18f239eccc7f841e1160"
|
|
88
88
|
}
|
|
@@ -123,7 +123,7 @@ describe('PktAccordion', () => {
|
|
|
123
123
|
})
|
|
124
124
|
|
|
125
125
|
test('applies different skin properties correctly', async () => {
|
|
126
|
-
const skins = ['borderless', 'outlined', 'beige', 'blue']
|
|
126
|
+
const skins = ['borderless', 'outlined', 'gray', 'beige', 'blue']
|
|
127
127
|
|
|
128
128
|
for (const skin of skins) {
|
|
129
129
|
const container = await createAccordion(`skin="${skin}"`)
|
|
@@ -349,7 +349,7 @@ describe('PktAccordionItem', () => {
|
|
|
349
349
|
})
|
|
350
350
|
|
|
351
351
|
test('applies different skin properties correctly', async () => {
|
|
352
|
-
const skins = ['borderless', 'outlined', 'beige', 'blue']
|
|
352
|
+
const skins = ['borderless', 'outlined', 'gray', 'beige', 'blue']
|
|
353
353
|
|
|
354
354
|
for (const skin of skins) {
|
|
355
355
|
const container = await createAccordion('', `skin="${skin}"`)
|
|
@@ -367,6 +367,38 @@ describe('PktAccordionItem', () => {
|
|
|
367
367
|
}
|
|
368
368
|
})
|
|
369
369
|
|
|
370
|
+
test('sets data-mode="light" on rows with a light-only skin', async () => {
|
|
371
|
+
for (const skin of ['beige', 'blue']) {
|
|
372
|
+
const container = await createAccordion(`skin="${skin}"`)
|
|
373
|
+
const accordionItem = container.querySelector('pkt-accordion-item') as PktAccordionItem
|
|
374
|
+
await accordionItem.updateComplete
|
|
375
|
+
|
|
376
|
+
expect(accordionItem.querySelector('details')).toHaveAttribute('data-mode', 'light')
|
|
377
|
+
|
|
378
|
+
container.remove()
|
|
379
|
+
}
|
|
380
|
+
})
|
|
381
|
+
|
|
382
|
+
test('does not set data-mode on other skins', async () => {
|
|
383
|
+
for (const skin of ['borderless', 'outlined', 'gray', 'plus-minus']) {
|
|
384
|
+
const container = await createAccordion(`skin="${skin}"`)
|
|
385
|
+
const accordionItem = container.querySelector('pkt-accordion-item') as PktAccordionItem
|
|
386
|
+
await accordionItem.updateComplete
|
|
387
|
+
|
|
388
|
+
expect(accordionItem.querySelector('details')).not.toHaveAttribute('data-mode')
|
|
389
|
+
|
|
390
|
+
container.remove()
|
|
391
|
+
}
|
|
392
|
+
})
|
|
393
|
+
|
|
394
|
+
test('item skin decides data-mode over accordion skin', async () => {
|
|
395
|
+
const container = await createAccordion('skin="beige"', 'skin="gray"')
|
|
396
|
+
const accordionItem = container.querySelector('pkt-accordion-item') as PktAccordionItem
|
|
397
|
+
await accordionItem.updateComplete
|
|
398
|
+
|
|
399
|
+
expect(accordionItem.querySelector('details')).not.toHaveAttribute('data-mode')
|
|
400
|
+
})
|
|
401
|
+
|
|
370
402
|
test('handles defaultOpen property', async () => {
|
|
371
403
|
const container = await createAccordion('', '')
|
|
372
404
|
|
|
@@ -4,7 +4,7 @@ import { consume } from '@lit/context'
|
|
|
4
4
|
import { html, PropertyValues } from 'lit'
|
|
5
5
|
import { customElement, property } from 'lit/decorators.js'
|
|
6
6
|
import { createRef, Ref, ref } from 'lit/directives/ref.js'
|
|
7
|
-
import type
|
|
7
|
+
import { ACCORDION_LIGHT_ONLY_SKINS, type IPktAccordionItemBase } from 'shared-types'
|
|
8
8
|
import { TPktAccordionSkin } from './accordion'
|
|
9
9
|
import { accordionContext, type AccordionContext } from './accordion-context'
|
|
10
10
|
import { classMap } from 'lit/directives/class-map.js'
|
|
@@ -61,6 +61,9 @@ export class PktAccordionItem extends PktElementWithSlot implements IPktAccordio
|
|
|
61
61
|
?open=${this.isOpen}
|
|
62
62
|
${ref(this.accordionItemRef)}
|
|
63
63
|
name=${ifDefined(this.name)}
|
|
64
|
+
data-mode=${ifDefined(
|
|
65
|
+
actualSkin && ACCORDION_LIGHT_ONLY_SKINS.includes(actualSkin) ? 'light' : undefined,
|
|
66
|
+
)}
|
|
64
67
|
>
|
|
65
68
|
<summary class="pkt-accordion-item__title" id=${`pkt-accordion-item-summary-${this.id}`}>
|
|
66
69
|
${this.title}
|
|
@@ -117,6 +117,18 @@ describe('PktCombobox', () => {
|
|
|
117
117
|
expect(tag).toBeInTheDocument()
|
|
118
118
|
})
|
|
119
119
|
|
|
120
|
+
test('uses the blue tag skin when the option has no tagSkinColor', async () => {
|
|
121
|
+
const container = await createCombobox(
|
|
122
|
+
'id="test" name="test" label="Test" multiple value="apple"',
|
|
123
|
+
)
|
|
124
|
+
const combobox = container.querySelector('pkt-combobox') as PktCombobox
|
|
125
|
+
combobox.options = getDefaultOptions()
|
|
126
|
+
await combobox.updateComplete
|
|
127
|
+
|
|
128
|
+
const tag = combobox.querySelector('pkt-tag')
|
|
129
|
+
expect(tag).toHaveAttribute('skin', 'blue')
|
|
130
|
+
})
|
|
131
|
+
|
|
120
132
|
test('selects option when clicking it in the open dropdown', async () => {
|
|
121
133
|
const container = await createCombobox('id="test" name="test" label="Test"')
|
|
122
134
|
const combobox = container.querySelector('pkt-combobox') as PktCombobox
|
|
@@ -550,7 +550,7 @@ export class PktCombobox extends ComboboxHandlers implements IPktCombobox {
|
|
|
550
550
|
@mousedown=${isOutside ? nothing : (e: MouseEvent) => e.preventDefault()}
|
|
551
551
|
>
|
|
552
552
|
<pkt-tag
|
|
553
|
-
skin=${tagSkinColor || 'blue
|
|
553
|
+
skin=${tagSkinColor || 'blue'}
|
|
554
554
|
?closeTag=${!this.isDisabled}
|
|
555
555
|
.buttonTabindex=${isOutside ? undefined : -1}
|
|
556
556
|
@close=${() => this.handleTagRemove(value)}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
const e=require("./element-C6WTyJFE.cjs"),t=require("./class-map-Bh6toDeV.cjs"),n=require("./element-with-slot-CcJPCLgn.cjs"),r=require("./if-defined-CiML3MTM.cjs"),i=require("./consume-kEjgTrAp.cjs"),a=require("./provide-Cz18sYug.cjs"),o=require("./ref-CB7e9nMY.cjs");var s=i.n(Symbol(`pkt-accordion-context`)),c=class extends e.c{constructor(...e){super(...e),this.ariaLabelledBy=``,this.compact=!1,this.skin=`borderless`,this.name=``,this.context={skin:this.skin}}willUpdate(e){e.has(`skin`)&&(this.context={...this.context,skin:this.skin})}updated(e){e.has(`name`)&&this.updateAccordionItemNames()}updateAccordionItemNames(){if(this.name){let e=this.renderRoot?.querySelector(`slot`);e&&e.assignedElements().forEach(e=>{e.tagName.toLowerCase()===`pkt-accordion-item`&&(e.hasAttribute(`name`)||e.setAttribute(`name`,this.name))})}}firstUpdated(){let e=this.renderRoot?.querySelector(`slot`);e&&e.addEventListener(`slotchange`,()=>{this.updateAccordionItemNames()})}render(){let n={"pkt-accordion":!0,"pkt-accordion--compact":this.compact,[`pkt-accordion--${this.skin}`]:this.skin};return e._`
|
|
2
|
-
<div
|
|
3
|
-
part="container"
|
|
4
|
-
class=${t.t(n)}
|
|
5
|
-
data-testid="pkt-accordion"
|
|
6
|
-
aria-labelledby=${r.t(this.ariaLabelledBy||void 0)}
|
|
7
|
-
>
|
|
8
|
-
<slot></slot>
|
|
9
|
-
</div>
|
|
10
|
-
`}};e.n([e.u({type:String,reflect:!0,attribute:`aria-labelledby`})],c.prototype,`ariaLabelledBy`,void 0),e.n([e.u({type:Boolean,reflect:!0,attribute:`compact`})],c.prototype,`compact`,void 0),e.n([e.u({type:String,reflect:!0,attribute:`skin`})],c.prototype,`skin`,void 0),e.n([e.u({type:String,reflect:!0,attribute:`name`})],c.prototype,`name`,void 0),e.n([a.t({context:s}),e.l()],c.prototype,`context`,void 0);try{e.d(`pkt-accordion`)(c)}catch{console.warn(`Forsøker å definere <pkt-accordion>, men den er allerede definert`)}var l=class extends n.t{constructor(){super(),this.defaultOpen=!1,this.title=``,this.skin=void 0,this.compact=!1,this.isOpen=!1,this.name=void 0,this.accordionItemRef=o.t()}firstUpdated(e){this.defaultOpen&&(this.isOpen=!0)}render(){let i={"pkt-accordion-item":!0,"pkt-accordion-item--compact":this.compact,[`pkt-accordion-item--${this.skin}`]:!!this.skin},a=(this.skin??this.context?.skin)===`plus-minus`;return e._`
|
|
11
|
-
<details
|
|
12
|
-
class=${t.t(i)}
|
|
13
|
-
id=${this.id}
|
|
14
|
-
?open=${this.isOpen}
|
|
15
|
-
${o.n(this.accordionItemRef)}
|
|
16
|
-
name=${r.t(this.name)}
|
|
17
|
-
>
|
|
18
|
-
<summary class="pkt-accordion-item__title" id=${`pkt-accordion-item-summary-${this.id}`}>
|
|
19
|
-
${this.title}
|
|
20
|
-
${a?e._`
|
|
21
|
-
<pkt-icon
|
|
22
|
-
name="plus-sign"
|
|
23
|
-
class="pkt-accordion-item__icon pkt-accordion-item__icon--plus"
|
|
24
|
-
aria-hidden="true"
|
|
25
|
-
></pkt-icon>
|
|
26
|
-
<pkt-icon
|
|
27
|
-
name="minus-sign"
|
|
28
|
-
class="pkt-accordion-item__icon pkt-accordion-item__icon--minus"
|
|
29
|
-
aria-hidden="true"
|
|
30
|
-
></pkt-icon>
|
|
31
|
-
`:e._`
|
|
32
|
-
<pkt-icon
|
|
33
|
-
name="chevron-thin-down"
|
|
34
|
-
class="pkt-accordion-item__icon"
|
|
35
|
-
aria-hidden="true"
|
|
36
|
-
></pkt-icon>
|
|
37
|
-
`}
|
|
38
|
-
</summary>
|
|
39
|
-
<div
|
|
40
|
-
class="pkt-accordion-item__content"
|
|
41
|
-
id="pkt-accordion-item__content-${this.id}"
|
|
42
|
-
role="region"
|
|
43
|
-
>
|
|
44
|
-
<div class="pkt-accordion-item__content-inner">${n.i(this)}</div>
|
|
45
|
-
</div>
|
|
46
|
-
</details>
|
|
47
|
-
`}};e.n([e.u({type:Boolean})],l.prototype,`defaultOpen`,void 0),e.n([e.u({type:String})],l.prototype,`title`,void 0),e.n([e.u({type:String,reflect:!0})],l.prototype,`skin`,void 0),e.n([e.u({type:Boolean,reflect:!0})],l.prototype,`compact`,void 0),e.n([e.u({type:Boolean,reflect:!0})],l.prototype,`isOpen`,void 0),e.n([e.u({type:String,reflect:!0})],l.prototype,`name`,void 0),e.n([i.t({context:s,subscribe:!0}),e.u({attribute:!1})],l.prototype,`context`,void 0);try{e.d(`pkt-accordion-item`)(l)}catch{console.warn(`Forsøker å definere <pkt-accordion-item>, men den er allerede definert`)}var u=c;Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return u}});
|