@proximus/lavender-selectablebox 1.4.14-beta.3 → 1.4.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,416 +1,433 @@
1
- import { AttributeBreakpointHandlerDelegate as e, WithExtraAttributes as t, backgroundColorValues as n, booleanPropertyToAttributeSetter as r, checkName as i, gapValues as a, log as o, propertyToAttributeSetter as s } from "@proximus/lavender-common";
2
- //#region ../Layout/src/Stack.css?inline
3
- var c = ":host{display:block}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-mobile) - var(--host-gap--mobile))}:host([overflow-x=auto]){margin:calc(calc(var(--px-focus-outline-mobile) + var(--px-focus-offset-mobile)) * -1)}:host([overflow-x=auto]) .flex-container{padding:calc(var(--px-focus-outline-mobile) + var(--px-focus-offset-mobile))}.flex-container{box-sizing:border-box;flex-direction:var(--flex-direction--mobile-value);gap:var(--flex-gap--mobile-value);flex-wrap:var(--flex-wrap--mobile-value);justify-content:var(--flex-justify-content--mobile-value);align-items:var(--flex-align-items--mobile-value);width:100%;height:100%;overflow-x:var(--overflow-x-all);display:flex}@media screen and (width<=47.938rem){.flex-container{overflow-x:var(--overflow-x-all-mobile,var(--overflow-x-all));scrollbar-width:none}.flex-container::-webkit-scrollbar{display:none}}@media screen and (width>=48rem){.flex-container{flex-direction:var(--flex-direction--tablet-value);gap:var(--flex-gap--tablet-value);flex-wrap:var(--flex-wrap--tablet-value);justify-content:var(--flex-justify-content--tablet-value);align-items:var(--flex-align-items--tablet-value)}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-tablet) - var(--host-gap--tablet))}:host([overflow-x=auto]){margin:calc(calc(var(--px-focus-outline-tablet) + var(--px-focus-offset-tablet)) * -1)}:host([overflow-x=auto]) .flex-container{padding:calc(var(--px-focus-outline-tablet) + var(--px-focus-offset-tablet))}}@media screen and (width>=48rem) and (width<=64rem){.flex-container{overflow-x:var(--overflow-x-all-tablet,var(--overflow-x-all));scrollbar-width:none}.flex-container::-webkit-scrollbar{display:none}}@media screen and (width>=64.0625rem){.flex-container{flex-direction:var(--flex-direction--laptop-value);gap:var(--flex-gap--laptop-value);flex-wrap:var(--flex-wrap--laptop-value);justify-content:var(--flex-justify-content--laptop-value);align-items:var(--flex-align-items--laptop-value)}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-laptop) - var(--host-gap--laptop))}:host([overflow-x=auto]){margin:calc(calc(var(--px-focus-outline-laptop) + var(--px-focus-offset-laptop)) * -1)}:host([overflow-x=auto]) .flex-container{padding:calc(var(--px-focus-outline-laptop) + var(--px-focus-offset-laptop))}}@media screen and (width>=64.0625rem) and (width<=90rem){.flex-container{overflow-x:var(--overflow-x-all-laptop,var(--overflow-x-all))}}@media screen and (width>=90.0625rem){.flex-container{flex-direction:var(--flex-direction--desktop-value);gap:var(--flex-gap--desktop-value);flex-wrap:var(--flex-wrap--desktop-value);justify-content:var(--flex-justify-content--desktop-value);align-items:var(--flex-align-items--desktop-value);overflow-x:var(--overflow-x-all-desktop,var(--overflow-x-all))}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-desktop) - var(--host-gap--desktop))}:host([overflow-x=auto]){margin:calc(calc(var(--px-focus-outline-desktop) + var(--px-focus-offset-desktop)) * -1)}:host([overflow-x=auto]) .flex-container{padding:calc(var(--px-focus-outline-desktop) + var(--px-focus-offset-desktop))}}", l = new CSSStyleSheet();
4
- l.replaceSync(c);
5
- var u = [
6
- "",
7
- "default",
8
- "row",
9
- "row-reverse",
10
- "column",
11
- "column-reverse"
12
- ], d = [
13
- "",
14
- "default",
15
- "stretch",
16
- "flex-start",
17
- "start",
18
- "flex-end",
19
- "end",
20
- "center",
21
- "baseline"
22
- ], f = [
23
- "",
24
- "default",
25
- "flex-start",
26
- "start",
27
- "flex-end",
28
- "end",
29
- "center",
30
- "space-between",
31
- "space-around",
32
- "space-evenly"
33
- ], p = [
34
- "",
35
- "default",
36
- "nowrap",
37
- "wrap",
38
- "wrap-reverse"
39
- ], m = [
40
- "",
41
- "visible",
42
- "hidden",
43
- "scroll",
44
- "auto"
45
- ], h = class extends t {
46
- constructor() {
47
- super(l), this.overflowXAttributeDelegate = new e(this, "overflow-x", (e) => e, "--overflow-x"), this.template = "<div class=\"flex-container\">\n <slot></slot>\n </div>", this.shadowRoot.innerHTML = this.template;
48
- }
49
- connectedCallback() {
50
- this.hasAttribute("direction") || (this.direction = "row"), this.hasAttribute("gap") || (this.gap = "none"), this.hasAttribute("align-items") || (this.alignItems = "stretch"), this.hasAttribute("justify-content") || (this.justifyContent = "flex-start"), this.hasAttribute("wrap") || (this.wrap = "nowrap"), this.hasAttribute("overflow-x") || this.overflowXAttributeDelegate.init("visible");
51
- }
52
- static get observedAttributes() {
53
- return [
54
- ...super.observedAttributes,
55
- "direction",
56
- "direction--mobile",
57
- "direction--tablet",
58
- "direction--laptop",
59
- "direction--desktop",
60
- "gap",
61
- "gap--mobile",
62
- "gap--tablet",
63
- "gap--laptop",
64
- "gap--desktop",
65
- "justify-content",
66
- "justify-content--mobile",
67
- "justify-content--tablet",
68
- "justify-content--laptop",
69
- "justify-content--desktop",
70
- "align-items",
71
- "align-items--mobile",
72
- "align-items--tablet",
73
- "align-items--laptop",
74
- "align-items--desktop",
75
- "wrap",
76
- "wrap--mobile",
77
- "wrap--tablet",
78
- "wrap--laptop",
79
- "wrap--desktop",
80
- "overflow-x",
81
- "overflow-x--mobile",
82
- "overflow-x--tablet",
83
- "overflow-x--laptop",
84
- "overflow-x--desktop"
85
- ];
86
- }
87
- attributeChangedCallback(e, t, n) {
88
- switch (e) {
89
- case "gap":
90
- case "gap--mobile":
91
- case "gap--tablet":
92
- case "gap--laptop":
93
- case "gap--desktop":
94
- this.updateFlexProperties(e, t, n, a);
95
- break;
96
- case "justify-content":
97
- case "justify-content--mobile":
98
- case "justify-content--tablet":
99
- case "justify-content--laptop":
100
- case "justify-content--desktop":
101
- this.updateFlexProperties(e, t, n, f);
102
- break;
103
- case "align-items":
104
- case "align-items--mobile":
105
- case "align-items--tablet":
106
- case "align-items--laptop":
107
- case "align-items--desktop":
108
- this.updateFlexProperties(e, t, n, d);
109
- break;
110
- case "wrap":
111
- case "wrap--mobile":
112
- case "wrap--tablet":
113
- case "wrap--laptop":
114
- case "wrap--desktop":
115
- this.updateFlexProperties(e, t, n, p);
116
- break;
117
- case "direction":
118
- case "direction--mobile":
119
- case "direction--tablet":
120
- case "direction--laptop":
121
- case "direction--desktop":
122
- this.updateFlexProperties(e, t, n, u);
123
- break;
124
- case "overflow-x":
125
- case "overflow-x--mobile":
126
- case "overflow-x--tablet":
127
- case "overflow-x--laptop":
128
- case "overflow-x--desktop":
129
- this.updateOverflowX(e, t, n, m);
130
- break;
131
- default: super.attributeChangedCallback(e, t, n);
132
- }
133
- }
134
- updateOverflowX(e, t, n, r) {
135
- if (!i(r, n)) {
136
- o(`"${n}" is not a valid ${e} value for ${this.tagName.toLowerCase()}. Allowed values are: "${r.join("\", \"")}".`);
137
- return;
138
- }
139
- this.overflowXAttributeDelegate.attributeChangedCallback(e, t, n);
140
- }
141
- updateFlexProperties(e, t, n, r) {
142
- this.checkName(r, n) || o(`"${n}" is not a valid ${e} value for ${this.tagName.toLowerCase()}. Allowed values are: "${r.join("\", \"")}".`);
143
- let i = e.indexOf("--") > -1, a = i ? e.split("--")[0] : e, s = [];
144
- if (!i) this.getAttribute(a + "--mobile") || s.push("mobile"), this.getAttribute(a + "--tablet") || s.push("tablet"), this.getAttribute(a + "--laptop") || s.push("laptop"), this.getAttribute(a + "--desktop") || s.push("desktop"), s.forEach((e) => {
145
- this.updateStyle(a, e, t, r), this.updateStyle(a, e, n, r);
146
- });
147
- else {
148
- let i = e.split("--")[1];
149
- this.updateStyle(a, i, t, r), this.updateStyle(a, i, n, r);
150
- }
151
- }
152
- updateStyle(e, t, n, r) {
153
- n && (e === "gap" && r && r.includes(n) ? (this.$el.style.setProperty(`--flex-${e}--${t}-value`, `var(--px-spacing-${n}-${t === "laptop" ? "desktop" : t})`), this.style.setProperty(`--host-gap--${t}`, `var(--px-spacing-${n}-${t === "laptop" ? "desktop" : t})`)) : this.$el.style.setProperty(`--flex-${e}--${t}-value`, n));
154
- }
155
- get direction() {
156
- return this.getAttribute("direction");
157
- }
158
- set direction(e) {
159
- s(this, "direction", e);
160
- }
161
- get directionMobile() {
162
- return this.getAttribute("direction--mobile");
163
- }
164
- set directionMobile(e) {
165
- s(this, "direction--mobile", e);
166
- }
167
- get directionTablet() {
168
- return this.getAttribute("direction--tablet");
169
- }
170
- set directionTablet(e) {
171
- s(this, "direction--tablet", e);
172
- }
173
- get directionLaptop() {
174
- return this.getAttribute("direction--laptop");
175
- }
176
- set directionLaptop(e) {
177
- s(this, "direction--laptop", e);
178
- }
179
- get directionDesktop() {
180
- return this.getAttribute("direction--desktop");
181
- }
182
- set directionDesktop(e) {
183
- s(this, "direction--desktop", e);
184
- }
185
- get gap() {
186
- return this.getAttribute("gap");
187
- }
188
- set gap(e) {
189
- s(this, "gap", e);
190
- }
191
- get gapMobile() {
192
- return this.getAttribute("gap--mobile");
193
- }
194
- set gapMobile(e) {
195
- s(this, "gap--mobile", e);
196
- }
197
- get gapTablet() {
198
- return this.getAttribute("gap--tablet");
199
- }
200
- set gapTablet(e) {
201
- s(this, "gap--tablet", e);
202
- }
203
- get gapLaptop() {
204
- return this.getAttribute("gap--laptop");
205
- }
206
- set gapLaptop(e) {
207
- s(this, "gap--laptop", e);
208
- }
209
- get gapDesktop() {
210
- return this.getAttribute("gap--desktop");
211
- }
212
- set gapDesktop(e) {
213
- s(this, "gap--desktop", e);
214
- }
215
- get justifyContent() {
216
- return this.getAttribute("justify-content");
217
- }
218
- set justifyContent(e) {
219
- s(this, "justify-content", e);
220
- }
221
- get justifyContentMobile() {
222
- return this.getAttribute("justify-content--mobile");
223
- }
224
- set justifyContentMobile(e) {
225
- s(this, "justify-content--mobile", e);
226
- }
227
- get justifyContentTablet() {
228
- return this.getAttribute("justify-content--tablet");
229
- }
230
- set justifyContentTablet(e) {
231
- s(this, "justify-content--tablet", e);
232
- }
233
- get justifyContentLaptop() {
234
- return this.getAttribute("justify-content--laptop");
235
- }
236
- set justifyContentLaptop(e) {
237
- s(this, "justify-content--laptop", e);
238
- }
239
- get justifyContentDesktop() {
240
- return this.getAttribute("justify-content--desktop");
241
- }
242
- set justifyContentDesktop(e) {
243
- s(this, "justify-content--desktop", e);
244
- }
245
- get alignItems() {
246
- return this.getAttribute("align-items");
247
- }
248
- set alignItems(e) {
249
- s(this, "align-items", e);
250
- }
251
- get alignItemsMobile() {
252
- return this.getAttribute("align-items--mobile");
253
- }
254
- set alignItemsMobile(e) {
255
- s(this, "align-items--mobile", e);
256
- }
257
- get alignItemsTablet() {
258
- return this.getAttribute("align-items--tablet");
259
- }
260
- set alignItemsTablet(e) {
261
- s(this, "align-items--tablet", e);
262
- }
263
- get alignItemsLaptop() {
264
- return this.getAttribute("align-items--laptop");
265
- }
266
- set alignItemsLaptop(e) {
267
- s(this, "align-items--laptop", e);
268
- }
269
- get alignItemsDesktop() {
270
- return this.getAttribute("align-items--desktop");
271
- }
272
- set alignItemsDesktop(e) {
273
- s(this, "align-items--desktop", e);
274
- }
275
- get wrap() {
276
- return this.getAttribute("wrap");
277
- }
278
- set wrap(e) {
279
- s(this, "wrap", e);
280
- }
281
- get wrapMobile() {
282
- return this.getAttribute("wrap--mobile");
283
- }
284
- set wrapMobile(e) {
285
- s(this, "wrap--mobile", e);
286
- }
287
- get wrapTablet() {
288
- return this.getAttribute("wrap--tablet");
289
- }
290
- set wrapTablet(e) {
291
- s(this, "wrap--tablet", e);
292
- }
293
- get wrapLaptop() {
294
- return this.getAttribute("wrap--laptop");
295
- }
296
- set wrapLaptop(e) {
297
- s(this, "wrap--laptop", e);
298
- }
299
- get wrapDesktop() {
300
- return this.getAttribute("wrap--desktop");
301
- }
302
- set wrapDesktop(e) {
303
- s(this, "wrap--desktop", e);
304
- }
305
- get overflowX() {
306
- return this.getAttribute("overflow-x");
307
- }
308
- set overflowX(e) {
309
- s(this, "overflow-x", e);
310
- }
311
- get overflowXMobile() {
312
- return this.getAttribute("overflow-x--mobile");
313
- }
314
- set overflowXMobile(e) {
315
- s(this, "overflow-x--mobile", e);
316
- }
317
- get overflowXTablet() {
318
- return this.getAttribute("overflow-x--tablet");
319
- }
320
- set overflowXTablet(e) {
321
- s(this, "overflow-x--tablet", e);
322
- }
323
- get overflowXLaptop() {
324
- return this.getAttribute("overflow-x--laptop");
325
- }
326
- set overflowXLaptop(e) {
327
- s(this, "overflow-x--laptop", e);
328
- }
329
- get overflowXDesktop() {
330
- return this.getAttribute("overflow-x--desktop");
331
- }
332
- set overflowXDesktop(e) {
333
- s(this, "overflow-x--desktop", e);
334
- }
335
- get $el() {
336
- return this.shadowRoot.querySelector(".flex-container");
337
- }
338
- };
339
- customElements.get("px-stack") || customElements.define("px-stack", h);
340
- var g = class extends h {
341
- constructor() {
342
- super();
343
- }
344
- connectedCallback() {
345
- super.connectedCallback(), this.direction = "column", this.directionMobile = "column", this.directionTablet = "column", this.directionLaptop = "column", this.directionDesktop = "column";
346
- }
347
- };
348
- customElements.get("px-vstack") || customElements.define("px-vstack", g);
349
- var _ = class extends h {
350
- constructor() {
351
- super();
352
- }
353
- connectedCallback() {
354
- super.connectedCallback(), this.direction = "row", this.directionMobile = "row", this.directionTablet = "row", this.directionLaptop = "row", this.directionDesktop = "row";
355
- }
356
- };
357
- customElements.get("px-hstack") || customElements.define("px-hstack", _);
358
- //#endregion
359
- //#region ../Layout/src/Spacer.ts
360
- var v = class extends HTMLElement {
361
- constructor() {
362
- super(), this.isZeroSized = !1, this.growValue = "1", this.isVertical = !1;
363
- }
364
- static get observedAttributes() {
365
- return ["grow", "nogap"];
366
- }
367
- attributeChangedCallback(e, t, n) {
368
- e === "grow" && (this.growValue = n || "1", this.isZeroSized || (this.style.flexGrow = this.growValue), this.scheduleRecheck());
369
- }
370
- connectedCallback() {
371
- this.growValue = this.getAttribute("grow") || "1", this.style.flexGrow = this.growValue, this.nogap && this.parentElement && (this.resizeObserver = new ResizeObserver(() => {
372
- this.handleSizeChange();
373
- }), this.isVertical = this.parentElement.localName === "px-vstack" || this.parentElement.style.flexDirection === "column", this.resizeObserver.observe(this), this.scheduleRecheck());
374
- }
375
- disconnectedCallback() {
376
- this.resizeObserver?.disconnect(), this.recheckHandle &&= (cancelAnimationFrame(this.recheckHandle), void 0);
377
- }
378
- get grow() {
379
- return this.getAttribute("grow");
380
- }
381
- set grow(e) {
382
- this.setAttribute("grow", `${e}`);
383
- }
384
- scheduleRecheck() {
385
- this.recheckHandle && cancelAnimationFrame(this.recheckHandle), this.recheckHandle = requestAnimationFrame(() => {
386
- this.recheckHandle = void 0, this.recalculateVisibility();
387
- });
388
- }
389
- recalculateVisibility() {
390
- this.isConnected && (this.style.display = "", this.style.flexGrow = this.growValue, this.handleSizeChange());
391
- }
392
- handleSizeChange() {
393
- let e = this.getBoundingClientRect(), t = e.width === 0 && !this.isVertical || e.height === 0 && this.isVertical;
394
- this.isZeroSized !== t && (this.isZeroSized = t, this.updateParticipation());
395
- }
396
- updateParticipation() {
397
- this.isZeroSized ? (this.style.display = "none", this.style.flexGrow = "0") : (this.style.display = "", this.style.flexGrow = this.growValue);
398
- }
399
- get nogap() {
400
- return this.hasAttribute("nogap");
401
- }
402
- set nogap(e) {
403
- e ? this.setAttribute("nogap", "") : this.removeAttribute("nogap");
404
- }
405
- };
406
- customElements.get("px-spacer") || customElements.define("px-spacer", v);
407
- //#endregion
408
- //#region ../Layout/src/Page.css?inline
409
- var y = ":host{box-sizing:border-box;display:block}slot[name=body-container]{min-height:100vh}#image-sticky-box{margin-top:-2.5rem}", b = new CSSStyleSheet();
410
- b.replaceSync(y);
411
- var x = class extends t {
412
- constructor() {
413
- super(b), this.template = () => `
1
+ import { WithExtraAttributes as c, AttributeBreakpointHandlerDelegate as m, gapValues as k, checkName as A, log as h, backgroundColorValues as y } from "@proximus/lavender-common";
2
+ const w = ':host{display:block}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-mobile) - var(--host-gap--mobile))}:host([overflow-x="auto"]){margin:calc(calc(var(--px-focus-outline-mobile) + var(--px-focus-offset-mobile)) * -1)}:host([overflow-x="auto"]) .flex-container{padding:calc(var(--px-focus-outline-mobile) + var(--px-focus-offset-mobile))}.flex-container{display:flex;height:100%;width:100%;box-sizing:border-box;flex-direction:var(--flex-direction--mobile-value);gap:var(--flex-gap--mobile-value);flex-wrap:var(--flex-wrap--mobile-value);justify-content:var(--flex-justify-content--mobile-value);align-items:var(--flex-align-items--mobile-value);overflow-x:var(--overflow-x-all)}@media screen and (max-width: 47.938rem){.flex-container{overflow-x:var(--overflow-x-all-mobile, var(--overflow-x-all));scrollbar-width:none}.flex-container::-webkit-scrollbar{display:none}}@media screen and (min-width: 48rem){.flex-container{flex-direction:var(--flex-direction--tablet-value);gap:var(--flex-gap--tablet-value);flex-wrap:var(--flex-wrap--tablet-value);justify-content:var(--flex-justify-content--tablet-value);align-items:var(--flex-align-items--tablet-value)}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-tablet) - var(--host-gap--tablet))}:host([overflow-x="auto"]){margin:calc(calc(var(--px-focus-outline-tablet) + var(--px-focus-offset-tablet)) * -1)}:host([overflow-x="auto"]) .flex-container{padding:calc(var(--px-focus-outline-tablet) + var(--px-focus-offset-tablet))}}@media screen and (min-width: 48rem) and (max-width: 64rem){.flex-container{overflow-x:var(--overflow-x-all-tablet, var(--overflow-x-all));scrollbar-width:none}.flex-container::-webkit-scrollbar{display:none}}@media screen and (min-width: 64.0625rem){.flex-container{flex-direction:var(--flex-direction--laptop-value);gap:var(--flex-gap--laptop-value);flex-wrap:var(--flex-wrap--laptop-value);justify-content:var(--flex-justify-content--laptop-value);align-items:var(--flex-align-items--laptop-value)}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-laptop) - var(--host-gap--laptop))}:host([overflow-x="auto"]){margin:calc(calc(var(--px-focus-outline-laptop) + var(--px-focus-offset-laptop)) * -1)}:host([overflow-x="auto"]) .flex-container{padding:calc(var(--px-focus-outline-laptop) + var(--px-focus-offset-laptop))}}@media screen and (min-width: 64.0625rem) and (max-width: 90rem){.flex-container{overflow-x:var(--overflow-x-all-laptop, var(--overflow-x-all))}}@media screen and (min-width: 90.0625rem){.flex-container{flex-direction:var(--flex-direction--desktop-value);gap:var(--flex-gap--desktop-value);flex-wrap:var(--flex-wrap--desktop-value);justify-content:var(--flex-justify-content--desktop-value);align-items:var(--flex-align-items--desktop-value);overflow-x:var(--overflow-x-all-desktop, var(--overflow-x-all))}:host ::slotted(px-h1[auto-spacing]),:host ::slotted(px-h2[auto-spacing]),:host ::slotted(px-h3[auto-spacing]),:host ::slotted(px-h4[auto-spacing]),:host ::slotted(px-h5[auto-spacing]),:host ::slotted(px-h6[auto-spacing]){margin-bottom:calc(var(--px-spacing-heading-to-content-desktop) - var(--host-gap--desktop))}:host([overflow-x="auto"]){margin:calc(calc(var(--px-focus-outline-desktop) + var(--px-focus-offset-desktop)) * -1)}:host([overflow-x="auto"]) .flex-container{padding:calc(var(--px-focus-outline-desktop) + var(--px-focus-offset-desktop))}}', b = new CSSStyleSheet();
3
+ b.replaceSync(w);
4
+ const C = [
5
+ "",
6
+ "default",
7
+ "row",
8
+ "row-reverse",
9
+ "column",
10
+ "column-reverse"
11
+ ], $ = [
12
+ "",
13
+ "default",
14
+ "stretch",
15
+ "flex-start",
16
+ "start",
17
+ "flex-end",
18
+ "end",
19
+ "center",
20
+ "baseline"
21
+ ], S = [
22
+ "",
23
+ "default",
24
+ "flex-start",
25
+ "start",
26
+ "flex-end",
27
+ "end",
28
+ "center",
29
+ "space-between",
30
+ "space-around",
31
+ "space-evenly"
32
+ ], _ = ["", "default", "nowrap", "wrap", "wrap-reverse"], E = ["", "visible", "hidden", "scroll", "auto"];
33
+ class d extends c {
34
+ constructor() {
35
+ super(b), this.overflowXAttributeDelegate = new m(
36
+ this,
37
+ "overflow-x",
38
+ (t) => t,
39
+ "--overflow-x"
40
+ ), this.template = `<div class="flex-container">
41
+ <slot></slot>
42
+ </div>`, this.shadowRoot.innerHTML = this.template;
43
+ }
44
+ connectedCallback() {
45
+ this.hasAttribute("direction") || (this.direction = "row"), this.hasAttribute("gap") || (this.gap = "none"), this.hasAttribute("align-items") || (this.alignItems = "stretch"), this.hasAttribute("justify-content") || (this.justifyContent = "flex-start"), this.hasAttribute("wrap") || (this.wrap = "nowrap"), this.hasAttribute("overflow-x") || this.overflowXAttributeDelegate.init("visible");
46
+ }
47
+ static get observedAttributes() {
48
+ return [
49
+ ...super.observedAttributes,
50
+ "direction",
51
+ "direction--mobile",
52
+ "direction--tablet",
53
+ "direction--laptop",
54
+ "direction--desktop",
55
+ "gap",
56
+ "gap--mobile",
57
+ "gap--tablet",
58
+ "gap--laptop",
59
+ "gap--desktop",
60
+ "justify-content",
61
+ "justify-content--mobile",
62
+ "justify-content--tablet",
63
+ "justify-content--laptop",
64
+ "justify-content--desktop",
65
+ "align-items",
66
+ "align-items--mobile",
67
+ "align-items--tablet",
68
+ "align-items--laptop",
69
+ "align-items--desktop",
70
+ "wrap",
71
+ "wrap--mobile",
72
+ "wrap--tablet",
73
+ "wrap--laptop",
74
+ "wrap--desktop",
75
+ "overflow-x",
76
+ "overflow-x--mobile",
77
+ "overflow-x--tablet",
78
+ "overflow-x--laptop",
79
+ "overflow-x--desktop"
80
+ ];
81
+ }
82
+ attributeChangedCallback(t, e, i) {
83
+ switch (t) {
84
+ case "gap":
85
+ case "gap--mobile":
86
+ case "gap--tablet":
87
+ case "gap--laptop":
88
+ case "gap--desktop":
89
+ this.updateFlexProperties(t, e, i, k);
90
+ break;
91
+ case "justify-content":
92
+ case "justify-content--mobile":
93
+ case "justify-content--tablet":
94
+ case "justify-content--laptop":
95
+ case "justify-content--desktop":
96
+ this.updateFlexProperties(
97
+ t,
98
+ e,
99
+ i,
100
+ S
101
+ );
102
+ break;
103
+ case "align-items":
104
+ case "align-items--mobile":
105
+ case "align-items--tablet":
106
+ case "align-items--laptop":
107
+ case "align-items--desktop":
108
+ this.updateFlexProperties(t, e, i, $);
109
+ break;
110
+ case "wrap":
111
+ case "wrap--mobile":
112
+ case "wrap--tablet":
113
+ case "wrap--laptop":
114
+ case "wrap--desktop":
115
+ this.updateFlexProperties(t, e, i, _);
116
+ break;
117
+ case "direction":
118
+ case "direction--mobile":
119
+ case "direction--tablet":
120
+ case "direction--laptop":
121
+ case "direction--desktop":
122
+ this.updateFlexProperties(t, e, i, C);
123
+ break;
124
+ case "overflow-x":
125
+ case "overflow-x--mobile":
126
+ case "overflow-x--tablet":
127
+ case "overflow-x--laptop":
128
+ case "overflow-x--desktop":
129
+ this.updateOverflowX(t, e, i, E);
130
+ break;
131
+ default:
132
+ super.attributeChangedCallback(t, e, i);
133
+ break;
134
+ }
135
+ }
136
+ updateOverflowX(t, e, i, o) {
137
+ if (!A(o, i)) {
138
+ h(
139
+ `"${i}" is not a valid ${t} value for ${this.tagName.toLowerCase()}. Allowed values are: "${o.join('", "')}".`
140
+ );
141
+ return;
142
+ }
143
+ this.overflowXAttributeDelegate.attributeChangedCallback(
144
+ t,
145
+ e,
146
+ i
147
+ );
148
+ }
149
+ updateFlexProperties(t, e, i, o) {
150
+ this.checkName(o, i) || h(
151
+ `"${i}" is not a valid ${t} value for ${this.tagName.toLowerCase()}. Allowed values are: "${o.join('", "')}".`
152
+ );
153
+ const r = t.indexOf("--") > -1, a = r ? t.split("--")[0] : t, l = [];
154
+ if (!r)
155
+ this.getAttribute(a + "--mobile") || l.push("mobile"), this.getAttribute(a + "--tablet") || l.push("tablet"), this.getAttribute(a + "--laptop") || l.push("laptop"), this.getAttribute(a + "--desktop") || l.push("desktop"), l.forEach((n) => {
156
+ this.updateStyle(a, n, e, o), this.updateStyle(a, n, i, o);
157
+ });
158
+ else {
159
+ const n = t.split("--")[1];
160
+ this.updateStyle(a, n, e, o), this.updateStyle(a, n, i, o);
161
+ }
162
+ }
163
+ updateStyle(t, e, i, o) {
164
+ i && (t === "gap" && o && o.includes(i) ? (this.$el.style.setProperty(
165
+ `--flex-${t}--${e}-value`,
166
+ `var(--px-spacing-${i}-${e === "laptop" ? "desktop" : e})`
167
+ ), this.style.setProperty(
168
+ `--host-gap--${e}`,
169
+ `var(--px-spacing-${i}-${e === "laptop" ? "desktop" : e})`
170
+ )) : this.$el.style.setProperty(
171
+ `--flex-${t}--${e}-value`,
172
+ i
173
+ ));
174
+ }
175
+ get direction() {
176
+ return this.getAttribute("direction");
177
+ }
178
+ set direction(t) {
179
+ this.setAttribute("direction", t);
180
+ }
181
+ get directionMobile() {
182
+ return this.getAttribute("direction--mobile");
183
+ }
184
+ set directionMobile(t) {
185
+ this.setAttribute("direction--mobile", t);
186
+ }
187
+ get directionTablet() {
188
+ return this.getAttribute("direction--tablet");
189
+ }
190
+ set directionTablet(t) {
191
+ this.setAttribute("direction--tablet", t);
192
+ }
193
+ get directionLaptop() {
194
+ return this.getAttribute("direction--laptop");
195
+ }
196
+ set directionLaptop(t) {
197
+ this.setAttribute("direction--laptop", t);
198
+ }
199
+ get directionDesktop() {
200
+ return this.getAttribute("direction--desktop");
201
+ }
202
+ set directionDesktop(t) {
203
+ this.setAttribute("direction--desktop", t);
204
+ }
205
+ get gap() {
206
+ return this.getAttribute("gap");
207
+ }
208
+ set gap(t) {
209
+ this.setAttribute("gap", t);
210
+ }
211
+ get gapMobile() {
212
+ return this.getAttribute("gap--mobile");
213
+ }
214
+ set gapMobile(t) {
215
+ this.setAttribute("gap--mobile", t);
216
+ }
217
+ get gapTablet() {
218
+ return this.getAttribute("gap--tablet");
219
+ }
220
+ set gapTablet(t) {
221
+ this.setAttribute("gap--tablet", t);
222
+ }
223
+ get gapLaptop() {
224
+ return this.getAttribute("gap--laptop");
225
+ }
226
+ set gapLaptop(t) {
227
+ this.setAttribute("gap--laptop", t);
228
+ }
229
+ get gapDesktop() {
230
+ return this.getAttribute("gap--desktop");
231
+ }
232
+ set gapDesktop(t) {
233
+ this.setAttribute("gap--desktop", t);
234
+ }
235
+ get justifyContent() {
236
+ return this.getAttribute("justify-content");
237
+ }
238
+ set justifyContent(t) {
239
+ this.setAttribute("justify-content", t);
240
+ }
241
+ get justifyContentMobile() {
242
+ return this.getAttribute("justify-content--mobile");
243
+ }
244
+ set justifyContentMobile(t) {
245
+ this.setAttribute("justify-content--mobile", t);
246
+ }
247
+ get justifyContentTablet() {
248
+ return this.getAttribute("justify-content--tablet");
249
+ }
250
+ set justifyContentTablet(t) {
251
+ this.setAttribute("justify-content--tablet", t);
252
+ }
253
+ get justifyContentLaptop() {
254
+ return this.getAttribute("justify-content--laptop");
255
+ }
256
+ set justifyContentLaptop(t) {
257
+ this.setAttribute("justify-content--laptop", t);
258
+ }
259
+ get justifyContentDesktop() {
260
+ return this.getAttribute("justify-content--desktop");
261
+ }
262
+ set justifyContentDesktop(t) {
263
+ this.setAttribute("justify-content--desktop", t);
264
+ }
265
+ get alignItems() {
266
+ return this.getAttribute("align-items");
267
+ }
268
+ set alignItems(t) {
269
+ this.setAttribute("align-items", t);
270
+ }
271
+ get alignItemsMobile() {
272
+ return this.getAttribute("align-items--mobile");
273
+ }
274
+ set alignItemsMobile(t) {
275
+ this.setAttribute("align-items--mobile", t);
276
+ }
277
+ get alignItemsTablet() {
278
+ return this.getAttribute("align-items--tablet");
279
+ }
280
+ set alignItemsTablet(t) {
281
+ this.setAttribute("align-items--tablet", t);
282
+ }
283
+ get alignItemsLaptop() {
284
+ return this.getAttribute("align-items--laptop");
285
+ }
286
+ set alignItemsLaptop(t) {
287
+ this.setAttribute("align-items--laptop", t);
288
+ }
289
+ get alignItemsDesktop() {
290
+ return this.getAttribute("align-items--desktop");
291
+ }
292
+ set alignItemsDesktop(t) {
293
+ this.setAttribute("align-items--desktop", t);
294
+ }
295
+ get wrap() {
296
+ return this.getAttribute("wrap");
297
+ }
298
+ set wrap(t) {
299
+ this.setAttribute("wrap", t);
300
+ }
301
+ get wrapMobile() {
302
+ return this.getAttribute("wrap--mobile");
303
+ }
304
+ set wrapMobile(t) {
305
+ this.setAttribute("wrap--mobile", t);
306
+ }
307
+ get wrapTablet() {
308
+ return this.getAttribute("wrap--tablet");
309
+ }
310
+ set wrapTablet(t) {
311
+ this.setAttribute("wrap--tablet", t);
312
+ }
313
+ get wrapLaptop() {
314
+ return this.getAttribute("wrap--laptop");
315
+ }
316
+ set wrapLaptop(t) {
317
+ this.setAttribute("wrap--laptop", t);
318
+ }
319
+ get wrapDesktop() {
320
+ return this.getAttribute("wrap--desktop");
321
+ }
322
+ set wrapDesktop(t) {
323
+ this.setAttribute("wrap--desktop", t);
324
+ }
325
+ get overflowX() {
326
+ return this.getAttribute("overflow-x");
327
+ }
328
+ set overflowX(t) {
329
+ this.setAttribute("overflow-x", t);
330
+ }
331
+ get overflowXMobile() {
332
+ return this.getAttribute("overflow-x--mobile");
333
+ }
334
+ set overflowXMobile(t) {
335
+ this.setAttribute("overflow-x--mobile", t);
336
+ }
337
+ get overflowXTablet() {
338
+ return this.getAttribute("overflow-x--tablet");
339
+ }
340
+ set overflowXTablet(t) {
341
+ this.setAttribute("overflow-x--tablet", t);
342
+ }
343
+ get overflowXLaptop() {
344
+ return this.getAttribute("overflow-x--laptop");
345
+ }
346
+ set overflowXLaptop(t) {
347
+ this.setAttribute("overflow-x--laptop", t);
348
+ }
349
+ get overflowXDesktop() {
350
+ return this.getAttribute("overflow-x--desktop");
351
+ }
352
+ set overflowXDesktop(t) {
353
+ this.setAttribute("overflow-x--desktop", t);
354
+ }
355
+ get $el() {
356
+ return this.shadowRoot.querySelector(".flex-container");
357
+ }
358
+ }
359
+ customElements.get("px-stack") || customElements.define("px-stack", d);
360
+ class L extends d {
361
+ constructor() {
362
+ super();
363
+ }
364
+ connectedCallback() {
365
+ super.connectedCallback(), this.direction = "column", this.directionMobile = "column", this.directionTablet = "column", this.directionLaptop = "column", this.directionDesktop = "column";
366
+ }
367
+ }
368
+ customElements.get("px-vstack") || customElements.define("px-vstack", L);
369
+ class D extends d {
370
+ constructor() {
371
+ super();
372
+ }
373
+ connectedCallback() {
374
+ super.connectedCallback(), this.direction = "row", this.directionMobile = "row", this.directionTablet = "row", this.directionLaptop = "row", this.directionDesktop = "row";
375
+ }
376
+ }
377
+ customElements.get("px-hstack") || customElements.define("px-hstack", D);
378
+ class z extends HTMLElement {
379
+ constructor() {
380
+ super(), this.isZeroSized = !1, this.growValue = "1", this.isVertical = !1;
381
+ }
382
+ static get observedAttributes() {
383
+ return ["grow", "nogap"];
384
+ }
385
+ attributeChangedCallback(t, e, i) {
386
+ t === "grow" && (this.growValue = i || "1", this.isZeroSized || (this.style.flexGrow = this.growValue), this.scheduleRecheck());
387
+ }
388
+ connectedCallback() {
389
+ this.growValue = this.getAttribute("grow") || "1", this.style.flexGrow = this.growValue, this.nogap && (this.resizeObserver = new ResizeObserver(() => {
390
+ this.handleSizeChange();
391
+ }), this.isVertical = this.parentElement.localName === "px-vstack" || this.parentElement.style.flexDirection === "column", this.resizeObserver.observe(this), this.scheduleRecheck());
392
+ }
393
+ disconnectedCallback() {
394
+ var t;
395
+ (t = this.resizeObserver) == null || t.disconnect(), this.recheckHandle && (cancelAnimationFrame(this.recheckHandle), this.recheckHandle = void 0);
396
+ }
397
+ get grow() {
398
+ return this.getAttribute("grow");
399
+ }
400
+ set grow(t) {
401
+ this.setAttribute("grow", t);
402
+ }
403
+ scheduleRecheck() {
404
+ this.recheckHandle && cancelAnimationFrame(this.recheckHandle), this.recheckHandle = requestAnimationFrame(() => {
405
+ this.recheckHandle = void 0, this.recalculateVisibility();
406
+ });
407
+ }
408
+ recalculateVisibility() {
409
+ this.isConnected && (this.style.display = "", this.style.flexGrow = this.growValue, this.handleSizeChange());
410
+ }
411
+ handleSizeChange() {
412
+ const t = this.getBoundingClientRect(), e = t.width === 0 && !this.isVertical || t.height === 0 && this.isVertical;
413
+ this.isZeroSized !== e && (this.isZeroSized = e, this.updateParticipation());
414
+ }
415
+ updateParticipation() {
416
+ this.isZeroSized ? (this.style.display = "none", this.style.flexGrow = "0") : (this.style.display = "", this.style.flexGrow = this.growValue);
417
+ }
418
+ get nogap() {
419
+ return this.hasAttribute("nogap");
420
+ }
421
+ set nogap(t) {
422
+ t ? this.setAttribute("nogap", "") : this.removeAttribute("nogap");
423
+ }
424
+ }
425
+ customElements.get("px-spacer") || customElements.define("px-spacer", z);
426
+ const j = ":host{display:block;box-sizing:border-box}slot[name=body-container]{min-height:100vh}#image-sticky-box{margin-top:-2.5rem}", p = new CSSStyleSheet();
427
+ p.replaceSync(j);
428
+ class R extends c {
429
+ constructor() {
430
+ super(p), this.template = (t) => `
414
431
  <px-container border-radius="none" padding="none">
415
432
  <px-vstack>
416
433
  <px-container id="header-container" border-radius="none">
@@ -447,6 +464,15 @@ var x = class extends t {
447
464
  <px-spacer></px-spacer>
448
465
  </px-hstack>
449
466
  </px-container>
467
+ ${t ? ` <px-hstack>
468
+ <px-spacer></px-spacer>
469
+ <px-container border-radius="none" box-shadow="xl" id="image-sticky-box" border="s" grow="${this.grow}" basis="${this.basis}" border-radius="m">
470
+ <px-vstack gap="s">
471
+ <slot name="image-sticky-container"></slot>
472
+ </px-vstack>
473
+ </px-container>
474
+ <px-spacer></px-spacer>
475
+ </px-hstack>` : ""}
450
476
  <px-container
451
477
  id="body-container"
452
478
  id="main"
@@ -503,459 +529,522 @@ var x = class extends t {
503
529
  </px-container>
504
530
  </px-vstack>
505
531
  </px-container>
506
- `, this.shadowRoot.innerHTML = this.template();
507
- }
508
- static get observedAttributes() {
509
- return [
510
- ...super.observedAttributes,
511
- "background-image",
512
- "gap",
513
- "background-color",
514
- "padding-vertical",
515
- "padding-horizontal"
516
- ];
517
- }
518
- get $wideImage() {
519
- return this.shadowRoot.querySelector("#image-box");
520
- }
521
- get $bodyVStackContainer() {
522
- return this.shadowRoot.querySelector("#header-vstack-container");
523
- }
524
- get $bodyContainer() {
525
- return this.shadowRoot.querySelector("#body-container");
526
- }
527
- get $contactContainer() {
528
- return this.shadowRoot.querySelector("#contact-container");
529
- }
530
- get $footerContainer() {
531
- return this.shadowRoot.querySelector("#footer-container");
532
- }
533
- get $headerContainer() {
534
- return this.shadowRoot.querySelector("#header-container");
535
- }
536
- get $imageContainer() {
537
- return this.shadowRoot.querySelector("#image-container");
538
- }
539
- get backgroundImage() {
540
- return this.getAttribute("background-image");
541
- }
542
- get $main() {
543
- return this.shadowRoot.querySelector("#main");
544
- }
545
- get backgroundColor() {
546
- return this.getAttribute("background-color") || "none";
547
- }
548
- get paddingVertical() {
549
- return this.getAttribute("padding-vertical");
550
- }
551
- get paddingHorizontal() {
552
- return this.getAttribute("padding-horizontal");
553
- }
554
- set paddingVertical(e) {
555
- this.setAttribute("padding-vertical", `${e}`);
556
- }
557
- set paddingHorizontal(e) {
558
- this.setAttribute("padding-horizontal", `${e}`);
559
- }
560
- get gap() {
561
- return this.getAttribute("gap");
562
- }
563
- connectedCallback() {
564
- this.handlePaddingVerticalChange(this.paddingVertical), this.handlePaddingHorizontalChange(this.paddingHorizontal);
565
- }
566
- attributeChangedCallback(e, t, r) {
567
- if (t !== r) switch (e) {
568
- case "background-image":
569
- this.$imageContainer.setAttribute("background-image", r);
570
- break;
571
- case "gap":
572
- this.$bodyVStackContainer.setAttribute("gap", r);
573
- break;
574
- case "background-color":
575
- this.$bodyContainer.setAttribute("background-color", n.indexOf(r) > 0 ? r : "none");
576
- break;
577
- case "padding-vertical":
578
- this.handlePaddingVerticalChange(r);
579
- break;
580
- case "padding-horizontal":
581
- this.handlePaddingHorizontalChange(r);
582
- break;
583
- default: super.attributeChangedCallback(e, t, r);
584
- }
585
- }
586
- handlePaddingVerticalChange(e) {
587
- this.$bodyContainer.paddingTop = e, this.$bodyContainer.paddingBottom = e;
588
- }
589
- handlePaddingHorizontalChange(e) {
590
- this.$headerContainer.paddingLeft = e, this.$headerContainer.paddingRight = e, this.$bodyContainer.paddingLeft = e, this.$bodyContainer.paddingRight = e, this.$contactContainer.paddingLeft = e, this.$contactContainer.paddingRight = e, this.$footerContainer.paddingLeft = e, this.$footerContainer.paddingRight = e, this.$imageContainer.paddingLeft = e, this.$imageContainer.paddingRight = e;
591
- }
592
- };
593
- customElements.get("px-page") === void 0 && customElements.define("px-page", x);
594
- //#endregion
595
- //#region src/selectable-box.css?inline
596
- var S = ":host{font-family:var(--px-font-family);font-size:var(--px-font-size-base);display:block}:host *{box-sizing:border-box}.selectable-box{flex-direction:column;height:100%;display:flex}::slotted([slot=media]){width:100%;height:auto}.info{flex-grow:1;display:flex}.info .info__body{gap:var(--px-spacing-default-mobile);padding:var(--px-padding-s-mobile);flex-direction:column;flex:7 1 0;display:flex}.info .info__body .header{align-items:center;gap:var(--px-spacing-s-mobile);display:flex}.info .info__body .header ::slotted([slot=action]),.info .info__body .header ::slotted([slot=icon]),.info .info__body .header ::slotted([slot=logo]){flex-shrink:0}.info .info__body .header .titles{gap:var(--px-spacing-xs-mobile);flex-direction:column;display:flex}.info .info__body .header .titles ::slotted([slot=title]){font-size:var(--px-text-size-label-m-mobile);font-weight:var(--px-font-weight-title);line-height:var(--px-line-height-ratio-l);color:var(--px-color-text-neutral-default);flex-grow:1}.info .info__body .header .titles ::slotted([slot=description]){font-size:var(--px-text-size-label-m-mobile);font-weight:var(--px-font-weight-body);line-height:var(--px-line-height-ratio-l);color:var(--px-color-text-dimmed-default);flex-grow:1}.info .info__body ::slotted([slot=content]){color:var(--px-color-text-neutral-default)}.info .info__footer{padding:var(--px-padding-s-mobile);background:var(--px-color-background-container-default-default);text-align:center;flex:3 1 0;align-items:center;display:flex}:host([hide-footer]) .info .info__body{flex-basis:auto}:host([hide-footer]) .info__footer{display:none}:host([footer-position=bottom]) .info{flex-direction:column}:host([footer-position=bottom]) .info__body{flex-basis:auto}:host([footer-position=bottom]) .info__footer{flex:none;justify-content:center}:host([footer-position=right]) .info{flex-direction:row}:host([footer-position=right]) .info__body{flex:7 1 0}:host([footer-position=right]) .info__footer{flex:3 1 0;align-items:center;display:flex}@media screen and (width>=48rem){.info{flex-direction:column}.info .info__body{gap:var(--px-spacing-default-tablet);padding:var(--px-padding-s-tablet);flex-basis:auto}.info .info__body .header{gap:var(--px-spacing-s-tablet)}.info .info__body .header .titles{gap:var(--px-spacing-xs-tablet)}.info .info__body .header .titles ::slotted([slot=title]),.info .info__body .header .titles ::slotted([slot=description]){font-size:var(--px-text-size-label-m-tablet)}.info .info__footer{padding:var(--px-padding-s-tablet);flex:none;justify-content:center}}@media screen and (width>=64.0625rem){.info .info__body{gap:var(--px-spacing-default-laptop);padding:var(--px-padding-s-laptop)}.info .info__body .header{gap:var(--px-spacing-s-laptop)}.info .info__body .header .titles{gap:var(--px-spacing-xs-laptop)}.info .info__body .header .titles ::slotted([slot=title]),.info .info__body .header .titles ::slotted([slot=description]){font-size:var(--px-text-size-label-m-laptop)}.info .info__footer{padding:var(--px-padding-s-laptop)}}@media screen and (width>=90.0625rem){.info .info__body{gap:var(--px-spacing-default-desktop);padding:var(--px-padding-s-desktop)}.info .info__body .header{gap:var(--px-spacing-s-desktop)}.info .info__body .header .titles{gap:var(--px-spacing-xs-desktop)}.info .info__body .header .titles ::slotted([slot=title]),.info .info__body .header .titles ::slotted([slot=description]){font-size:var(--px-text-size-label-m-desktop)}.info .info__footer{padding:var(--px-padding-s-desktop)}}:host([inverted]) .info .info__body .header .titles ::slotted([slot=title]){color:var(--px-color-text-neutral-inverted)}:host([inverted]) .info .info__body .header .titles ::slotted([slot=description]){color:var(--px-color-text-dimmed-inverted)}:host([inverted]) .info .info__body ::slotted([slot=content]){color:var(--px-color-text-neutral-inverted)}:host([inverted]) .info .info__footer{background:var(--px-color-background-container-default-inverted)}", C = new CSSStyleSheet();
597
- C.replaceSync(S);
598
- var w = [
599
- "",
600
- "right",
601
- "bottom"
602
- ], T = class extends t {
603
- template() {
604
- return "\n <div class=\"selectable-box\">\n <slot name=\"media\"></slot>\n <div class=\"info\">\n <div class=\"info__body\">\n <div class=\"header\">\n <slot name=\"action\"></slot>\n <slot name=\"icon\"></slot>\n <slot name=\"logo\"></slot>\n <div class=\"titles\">\n <slot name=\"title\"></slot>\n <slot name=\"description\"></slot>\n </div>\n </div>\n <slot name=\"content\"></slot>\n </div>\n <div class=\"info__footer\">\n <slot name=\"footer\"></slot>\n </div>\n </div>\n </div>\n ";
605
- }
606
- constructor() {
607
- super(C), this.shadowRoot.innerHTML = this.template();
608
- }
609
- static get observedAttributes() {
610
- return [
611
- ...super.observedAttributes,
612
- "inverted",
613
- "hide-footer",
614
- "footer-position"
615
- ];
616
- }
617
- attributeChangedCallback(e, t, n) {
618
- if (t !== n) switch (e) {
619
- case "footer-position":
620
- this.#e(n, w);
621
- break;
622
- default: super.attributeChangedCallback(e, t, n);
623
- }
624
- }
625
- #e(e, t) {
626
- if (!i(t, e)) {
627
- o(`
628
- "${e}" is not a valid footer-position value for ${this.tagName.toLowerCase()}.
629
- Allowed values are: "${t.join("\", \"")}".
630
- `);
631
- return;
632
- }
633
- }
634
- get $el() {
635
- return this.shadowRoot.querySelector(".selectable-box");
636
- }
637
- get inverted() {
638
- return this.hasAttribute("inverted");
639
- }
640
- set inverted(e) {
641
- e ? this.setAttribute("inverted", "") : this.removeAttribute("inverted");
642
- }
643
- get hideFooter() {
644
- return this.hasAttribute("hide-footer");
645
- }
646
- set hideFooter(e) {
647
- e ? this.setAttribute("hide-footer", "") : this.removeAttribute("hide-footer");
648
- }
649
- get footerPosition() {
650
- return this.getAttribute("footer-position") ?? "";
651
- }
652
- set footerPosition(e) {
653
- e ? this.setAttribute("footer-position", e) : this.removeAttribute("footer-position");
654
- }
655
- };
656
- customElements.get("px-selectable-box") || customElements.define("px-selectable-box", T);
657
- //#endregion
658
- //#region src/clickEventGuards.ts
659
- var E = ["px-a", "px-button"];
660
- function D(e, t, n = E) {
661
- let r = new Set(n), i = e.composedPath();
662
- for (let e of i) {
663
- if (e === t) break;
664
- if (e instanceof Element && r.has(e.tagName.toLowerCase())) return !0;
665
- }
666
- return !1;
532
+ `, this.shadowRoot.innerHTML = this.template(!!this.$imageStickySlot);
533
+ }
534
+ static get observedAttributes() {
535
+ return [
536
+ ...super.observedAttributes,
537
+ "background-image",
538
+ "gap",
539
+ "background-color",
540
+ "padding-vertical",
541
+ "padding-horizontal"
542
+ ];
543
+ }
544
+ get $wideImage() {
545
+ return this.shadowRoot.querySelector("#image-box");
546
+ }
547
+ get $bodyVStackContainer() {
548
+ return this.shadowRoot.querySelector("#header-vstack-container");
549
+ }
550
+ get $bodyContainer() {
551
+ return this.shadowRoot.querySelector("#body-container");
552
+ }
553
+ get $contactContainer() {
554
+ return this.shadowRoot.querySelector("#contact-container");
555
+ }
556
+ get $footerContainer() {
557
+ return this.shadowRoot.querySelector("#footer-container");
558
+ }
559
+ get $headerContainer() {
560
+ return this.shadowRoot.querySelector("#header-container");
561
+ }
562
+ get $imageContainer() {
563
+ return this.shadowRoot.querySelector("#image-container");
564
+ }
565
+ get backgroundImage() {
566
+ return this.getAttribute("background-image");
567
+ }
568
+ get $imageStickySlot() {
569
+ return this.querySelector('*[slot="image-sticky-container"]');
570
+ }
571
+ get $main() {
572
+ return this.shadowRoot.querySelector("#main");
573
+ }
574
+ get backgroundColor() {
575
+ return this.getAttribute("background-color") || "none";
576
+ }
577
+ get paddingVertical() {
578
+ return this.getAttribute("padding-vertical");
579
+ }
580
+ get paddingHorizontal() {
581
+ return this.getAttribute("padding-horizontal");
582
+ }
583
+ set paddingVertical(t) {
584
+ this.setAttribute("padding-vertical", t);
585
+ }
586
+ set paddingHorizontal(t) {
587
+ this.setAttribute("padding-horizontal", t);
588
+ }
589
+ get gap() {
590
+ return this.getAttribute("gap");
591
+ }
592
+ connectedCallback() {
593
+ this.handlePaddingVerticalChange(this.paddingVertical), this.handlePaddingHorizontalChange(this.paddingHorizontal);
594
+ }
595
+ attributeChangedCallback(t, e, i) {
596
+ if (e !== i)
597
+ switch (t) {
598
+ case "background-image":
599
+ this.$imageContainer.setAttribute("background-image", i);
600
+ break;
601
+ case "gap":
602
+ this.$bodyVStackContainer.setAttribute("gap", i);
603
+ break;
604
+ case "background-color":
605
+ this.$bodyContainer.setAttribute(
606
+ "background-color",
607
+ y.indexOf(i) > 0 ? i : "none"
608
+ );
609
+ break;
610
+ case "padding-vertical":
611
+ this.handlePaddingVerticalChange(i);
612
+ break;
613
+ case "padding-horizontal":
614
+ this.handlePaddingHorizontalChange(i);
615
+ break;
616
+ default:
617
+ super.attributeChangedCallback(t, e, i);
618
+ }
619
+ }
620
+ handlePaddingVerticalChange(t) {
621
+ this.$headerContainer.setAttribute("padding-top", t), this.$footerContainer.setAttribute("padding-bottom", t);
622
+ }
623
+ handlePaddingHorizontalChange(t) {
624
+ this.$headerContainer.paddingLeft = t, this.$headerContainer.paddingRight = t, this.$bodyContainer.paddingLeft = t, this.$bodyContainer.paddingRight = t, this.$contactContainer.paddingLeft = t, this.$contactContainer.paddingRight = t, this.$footerContainer.paddingLeft = t, this.$footerContainer.paddingRight = t, this.$imageContainer.paddingLeft = t, this.$imageContainer.paddingRight = t;
625
+ }
667
626
  }
668
- //#endregion
669
- //#region src/common.css?inline
670
- var O = ":host{outline:none;display:block}:host *{box-sizing:border-box}.selectable-box-checkbox,.selectable-box-radio{box-sizing:border-box;cursor:pointer;border-radius:var(--px-radius-main);--btn-transition:all .2s ease-in-out 0s;height:100%;transition:var(--btn-transition);border:var(--px-size-border-m) solid var(--px-color-border-main-default);outline-color:var(--px-color-border-focus-outline-default);outline-width:var(--px-focus-outline-mobile);overflow:hidden}:is(.selectable-box-checkbox,.selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-container-light-default);height:100%}:host([parent-has-anchor-full]) :is(.selectable-box-checkbox,.selectable-box-radio){border-radius:0 0 var(--px-radius-main) var(--px-radius-main)}:host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host(:not([disabled])):host(:hover) .selectable-box-radio{border-color:var(--px-color-border-state-hover-default)}:is(:host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host(:not([disabled])):host(:hover) .selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-state-hover-bordered-default)}:host(:not([disabled])):host(:focus-visible) .selectable-box-checkbox,:host(:not([disabled])):host(:focus-visible) .selectable-box-radio{outline-offset:var(--px-focus-offset-mobile);outline-style:solid}:host([checked]) .selectable-box-checkbox,:host([checked]) .selectable-box-radio{border-color:var(--px-color-border-state-active-default)}:host([disabled]) .selectable-box-checkbox,:host([disabled]) .selectable-box-radio{cursor:default;pointer-events:none;border-color:#0000}:is(:host([disabled]) .selectable-box-checkbox,:host([disabled]) .selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-state-disabled-default)}:host([disabled]) ::slotted([slot=title]),:host([disabled]) ::slotted([slot=description]),:host([disabled]) ::slotted([slot=content]){color:var(--px-color-text-state-disabled-default)}@media screen and (width>=48rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-tablet)}}@media screen and (width>=64.0625rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-laptop)}}@media screen and (width>=90.0625rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-desktop)}}:host([inverted]) .selectable-box-checkbox,:host([inverted]) .selectable-box-radio{border-color:var(--px-color-border-main-inverted);outline-color:var(--px-color-border-focus-outline-inverted)}:is(:host([inverted]) .selectable-box-checkbox,:host([inverted]) .selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-container-light-inverted)}:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-radio{border-color:var(--px-color-border-state-hover-inverted)}:is(:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-state-hover-bordered-inverted)}:host([inverted]):host([checked]) .selectable-box-checkbox,:host([inverted]):host([checked]) .selectable-box-radio{border-color:var(--px-color-border-state-active-inverted)}:host([inverted]):host([disabled]) .selectable-box-checkbox,:host([inverted]):host([disabled]) .selectable-box-radio{border-color:#0000}:is(:host([inverted]):host([disabled]) .selectable-box-checkbox,:host([inverted]):host([disabled]) .selectable-box-radio) px-selectable-box{background-color:var(--px-color-background-state-disabled-inverted)}:host([inverted]):host([disabled]) ::slotted([slot=title]),:host([inverted]):host([disabled]) ::slotted([slot=description]),:host([inverted]):host([disabled]) ::slotted([slot=content]){color:var(--px-color-text-state-disabled-inverted)}", k = new CSSStyleSheet();
671
- k.replaceSync(O);
672
- var A = class extends t {
673
- template() {
674
- return "\n <div class=\"selectable-box-checkbox\">\n <px-selectable-box>\n <slot name=\"media\" slot=\"media\"></slot>\n <px-checkbox \n slot=\"action\" inert \n ></px-checkbox>\n <slot name=\"icon\" slot=\"icon\"></slot>\n <slot name=\"logo\" slot=\"logo\"></slot>\n <slot name=\"title\" slot=\"title\"></slot>\n <slot name=\"description\" slot=\"description\"></slot>\n <slot name=\"content\" slot=\"content\"></slot>\n <slot name=\"footer\" slot=\"footer\"></slot>\n </px-selectable-box>\n </div>\n ";
675
- }
676
- constructor() {
677
- super(k), this.shadowRoot.innerHTML = this.template(), this.internals = this.attachInternals?.();
678
- }
679
- connectedCallback() {
680
- this.toggleFooterVisibility = this.toggleFooterVisibility.bind(this), this.role = "checkbox", this.internals && (this.internals.role = "checkbox"), this.tabIndex = 0, this.ariaChecked = "false", this.toggleFooterVisibility(), this.$slotFooter.addEventListener("slotchange", this.toggleFooterVisibility), this.addEventListener("mouseover", this.setHoverAttribute), this.addEventListener("mouseout", this.removeHoverAttribute), this.addEventListener("keypress", this.setKeypressEvent), this.addEventListener("click", this.setClickEvent);
681
- }
682
- static get observedAttributes() {
683
- return [
684
- ...super.observedAttributes,
685
- "inverted",
686
- "name",
687
- "value",
688
- "checked",
689
- "disabled",
690
- "footer-position"
691
- ];
692
- }
693
- attributeChangedCallback(e, t, n) {
694
- if (t !== n) switch (e) {
695
- case "inverted":
696
- this.inverted ? (this.$selectableBox.setAttribute("inverted", ""), this.$checkbox.setAttribute("inverted", "")) : (this.$selectableBox.removeAttribute("inverted"), this.$checkbox.removeAttribute("inverted"));
697
- break;
698
- case "name":
699
- case "value":
700
- this.$checkbox && this.$checkbox.setAttribute(e, n);
701
- break;
702
- case "disabled":
703
- this.handleDisabledAttributeChange(n !== null);
704
- break;
705
- case "checked":
706
- this.handleCheckedAttributeChange(n);
707
- break;
708
- case "footer-position":
709
- this.$selectableBox && this.$selectableBox.setAttribute("footer-position", n);
710
- break;
711
- default: super.attributeChangedCallback(e, t, n);
712
- }
713
- }
714
- disconnectedCallback() {
715
- this.$slotFooter.removeEventListener("slotchange", this.toggleFooterVisibility), this.removeEventListener("mouseover", this.setHoverAttribute), this.removeEventListener("mouseout", this.removeHoverAttribute), this.removeEventListener("keypress", this.setKeypressEvent), this.removeEventListener("click", this.setClickEvent);
716
- }
717
- removeHoverAttribute() {
718
- this.$checkbox.removeAttribute("hover");
719
- }
720
- setHoverAttribute() {
721
- this.$checkbox.setAttribute("hover", "");
722
- }
723
- setKeypressEvent(e) {
724
- e.stopPropagation(), e.preventDefault(), e.code === "Space" && this.click();
725
- }
726
- setClickEvent(e) {
727
- D(e, this) || (this.checked = !this.checked, e.stopPropagation(), e.preventDefault());
728
- }
729
- toggleFooterVisibility() {
730
- this.$slottedFooter ? this.$selectableBox.removeAttribute("hide-footer") : this.$selectableBox.setAttribute("hide-footer", "");
731
- }
732
- handleDisabledAttributeChange(e) {
733
- e ? (this.disabled = !0, this.internals && (this.internals.ariaDisabled = "true"), this.ariaDisabled = "true", this.$checkbox.setAttribute("disabled", "")) : (this.disabled = !1, this.internals && (this.internals.ariaDisabled = "false"), this.ariaDisabled = "false", this.$checkbox.removeAttribute("disabled"));
734
- }
735
- handleCheckedAttributeChange(e) {
736
- this.internals?.setFormValue(this.formData()), e === null ? (this.internals && (this.internals.ariaChecked = "false"), this.ariaChecked = "false", this.checked = !1, this.$checkbox && this.$checkbox.removeAttribute("checked")) : (this.internals && (this.internals.ariaChecked = "true"), this.ariaChecked = "true", this.checked = !0, this.$checkbox && this.$checkbox.setAttribute("checked", "")), this.dispatchEvent(new Event("change", {
737
- bubbles: !0,
738
- composed: !0
739
- }));
740
- }
741
- static get formAssociated() {
742
- return !0;
743
- }
744
- formResetCallback() {
745
- this.checked = !1;
746
- }
747
- formStateRestoreCallback(e) {
748
- this.checked = e;
749
- }
750
- formData() {
751
- let e = new FormData();
752
- if (this.name) {
753
- let t = this.getAttribute("name");
754
- t && (this.checked ? e.set(t, this.value ?? "") : e.delete(t));
755
- }
756
- return e;
757
- }
758
- get $el() {
759
- return this.shadowRoot.querySelector(".selectable-box-checkbox");
760
- }
761
- get $selectableBox() {
762
- return this.shadowRoot.querySelector("px-selectable-box");
763
- }
764
- get $checkbox() {
765
- return this.shadowRoot.querySelector("px-checkbox");
766
- }
767
- get $slotFooter() {
768
- return this.shadowRoot.querySelector("slot[name=\"footer\"]");
769
- }
770
- get $slottedFooter() {
771
- return this.querySelector("[slot=\"footer\"]");
772
- }
773
- get inverted() {
774
- return this.hasAttribute("inverted");
775
- }
776
- set inverted(e) {
777
- r(this, "inverted", e);
778
- }
779
- get checked() {
780
- return this.hasAttribute("checked");
781
- }
782
- set checked(e) {
783
- r(this, "checked", e);
784
- }
785
- get name() {
786
- return this.getAttribute("name");
787
- }
788
- set name(e) {
789
- s(this, "name", e);
790
- }
791
- get disabled() {
792
- return this.hasAttribute("disabled");
793
- }
794
- set disabled(e) {
795
- r(this, "disabled", e);
796
- }
797
- get value() {
798
- return this.getAttribute("value");
799
- }
800
- set value(e) {
801
- s(this, "value", e);
802
- }
803
- get footerPosition() {
804
- return this.getAttribute("footer-position") ?? "";
805
- }
806
- set footerPosition(e) {
807
- e ? this.setAttribute("footer-position", e) : this.removeAttribute("footer-position");
808
- }
809
- };
810
- customElements.get("px-selectable-box-checkbox") || customElements.define("px-selectable-box-checkbox", A);
811
- //#endregion
812
- //#region src/SelectableBoxRadio.ts
813
- var j = new CSSStyleSheet();
814
- j.replaceSync(O);
815
- var M = "px-selectable-box-radio-connected", N = "px-selectable-box-radio-disconnected", P = class extends t {
816
- template() {
817
- return "\n <div class=\"selectable-box-radio\">\n <px-selectable-box>\n <slot name=\"media\" slot=\"media\"></slot>\n <px-radio \n slot=\"action\" inert \n ></px-radio>\n <slot name=\"icon\" slot=\"icon\"></slot>\n <slot name=\"logo\" slot=\"logo\"></slot>\n <slot name=\"title\" slot=\"title\"></slot>\n <slot name=\"description\" slot=\"description\"></slot>\n <slot name=\"content\" slot=\"content\"></slot>\n <slot name=\"footer\" slot=\"footer\"></slot>\n </px-selectable-box>\n </div>\n ";
818
- }
819
- constructor() {
820
- super(j), this.shadowRoot.innerHTML = this.template(), this.internals = this.attachInternals?.();
821
- }
822
- connectedCallback() {
823
- this.toggleFooterVisibility = this.toggleFooterVisibility.bind(this), this.role = "radio", this.internals && (this.internals.role = "radio"), this.dispatchEvent(new CustomEvent(M, {
824
- bubbles: !0,
825
- composed: !0
826
- })), this.ariaChecked = "false", this.toggleFooterVisibility(), this.$slotFooter.addEventListener("slotchange", this.toggleFooterVisibility), this.addEventListener("mouseover", this.setHoverAttribute), this.addEventListener("mouseout", this.removeHoverAttribute), this.addEventListener("keypress", this.setKeypressEvent), this.addEventListener("click", this.setClickEvent);
827
- }
828
- static get observedAttributes() {
829
- return [
830
- ...super.observedAttributes,
831
- "inverted",
832
- "name",
833
- "value",
834
- "checked",
835
- "disabled",
836
- "footer-position"
837
- ];
838
- }
839
- attributeChangedCallback(e, t, n) {
840
- if (t !== n) switch (e) {
841
- case "inverted":
842
- this.inverted ? (this.$selectableBox.setAttribute("inverted", ""), this.$radio.setAttribute("inverted", "")) : (this.$selectableBox.removeAttribute("inverted"), this.$radio.removeAttribute("inverted"));
843
- break;
844
- case "name":
845
- case "value":
846
- this.$radio && this.$radio.setAttribute(e, n);
847
- break;
848
- case "disabled":
849
- this.handleDisabledAttributeChange(n !== null);
850
- break;
851
- case "checked":
852
- this.handleCheckedAttributeChange(n);
853
- break;
854
- case "footer-position":
855
- this.$selectableBox && this.$selectableBox.setAttribute("footer-position", n);
856
- break;
857
- default: super.attributeChangedCallback(e, t, n);
858
- }
859
- }
860
- disconnectedCallback() {
861
- this.$slotFooter.removeEventListener("slotchange", this.toggleFooterVisibility), this.removeEventListener("mouseover", this.setHoverAttribute), this.removeEventListener("mouseout", this.removeHoverAttribute), this.removeEventListener("keypress", this.setKeypressEvent), this.removeEventListener("click", this.setClickEvent), this.dispatchEvent(new CustomEvent(N, {
862
- bubbles: !0,
863
- composed: !0
864
- }));
865
- }
866
- removeHoverAttribute() {
867
- this.$radio.removeAttribute("hover");
868
- }
869
- setHoverAttribute() {
870
- this.$radio.setAttribute("hover", "");
871
- }
872
- setKeypressEvent(e) {
873
- e.preventDefault(), e.code === "Space" && this.click();
874
- }
875
- setClickEvent(e) {
876
- D(e, this) || (this.checked ||= !0, e.stopPropagation(), e.preventDefault());
877
- }
878
- toggleFooterVisibility() {
879
- this.$slottedFooter ? this.$selectableBox.removeAttribute("hide-footer") : this.$selectableBox.setAttribute("hide-footer", "");
880
- }
881
- handleDisabledAttributeChange(e) {
882
- e ? (this.disabled = !0, this.internals && (this.internals.ariaDisabled = "true"), this.ariaDisabled = "true", this.$radio.setAttribute("disabled", "")) : (this.disabled = !1, this.internals && (this.internals.ariaDisabled = "false"), this.ariaDisabled = "false", this.$radio.removeAttribute("disabled"));
883
- }
884
- handleCheckedAttributeChange(e) {
885
- this.internals?.setFormValue(this.formData()), e == null ? (this.internals && (this.internals.ariaChecked = "false"), this.ariaChecked = "false", this.tabIndex = -1, this.checked = !1, this.$radio && this.$radio.removeAttribute("checked")) : (this.internals && (this.internals.ariaChecked = "true"), this.ariaChecked = "true", this.tabIndex = 0, this.checked = !0, this.$radio && this.$radio.setAttribute("checked", ""), this.dispatchEvent(new Event("change", {
886
- bubbles: !0,
887
- composed: !0
888
- })));
889
- }
890
- static get formAssociated() {
891
- return !0;
892
- }
893
- formResetCallback() {
894
- this.checked = !1;
895
- }
896
- formStateRestoreCallback(e) {
897
- this.checked = e;
898
- }
899
- formData() {
900
- let e = new FormData();
901
- if (this.name) {
902
- let t = this.getAttribute("name");
903
- t && (this.checked ? e.set(t, this.value ?? "") : e.delete(t));
904
- }
905
- return e;
906
- }
907
- get $el() {
908
- return this.shadowRoot.querySelector(".selectable-box-radio");
909
- }
910
- get $selectableBox() {
911
- return this.shadowRoot.querySelector("px-selectable-box");
912
- }
913
- get $radio() {
914
- return this.shadowRoot.querySelector("px-radio");
915
- }
916
- get $slotFooter() {
917
- return this.shadowRoot.querySelector("slot[name=\"footer\"]");
918
- }
919
- get $slottedFooter() {
920
- return this.querySelector("[slot=\"footer\"]");
921
- }
922
- get inverted() {
923
- return this.hasAttribute("inverted");
924
- }
925
- set inverted(e) {
926
- r(this, "inverted", e);
927
- }
928
- get checked() {
929
- return this.hasAttribute("checked");
930
- }
931
- set checked(e) {
932
- r(this, "checked", e);
933
- }
934
- get name() {
935
- return this.getAttribute("name");
936
- }
937
- set name(e) {
938
- s(this, "name", e);
939
- }
940
- get disabled() {
941
- return this.hasAttribute("disabled");
942
- }
943
- set disabled(e) {
944
- r(this, "disabled", e);
945
- }
946
- get value() {
947
- return this.getAttribute("value");
948
- }
949
- set value(e) {
950
- s(this, "value", e);
951
- }
952
- get footerPosition() {
953
- return this.getAttribute("footer-position") ?? "";
954
- }
955
- set footerPosition(e) {
956
- e ? this.setAttribute("footer-position", e) : this.removeAttribute("footer-position");
957
- }
627
+ customElements.get("px-page") === void 0 && customElements.define("px-page", R);
628
+ const F = ':host{display:block;font-family:var(--px-font-family);font-size:var(--px-font-size-base)}:host *{box-sizing:border-box}.selectable-box{display:flex;flex-direction:column;height:100%}::slotted([slot="media"]){width:100%;height:auto}.info{display:flex;flex-grow:1}.info .info__body{display:flex;flex-direction:column;flex:7 1 0;gap:var(--px-spacing-default-mobile);padding:var(--px-padding-s-mobile)}.info .info__body .header{display:flex;align-items:center;gap:var(--px-spacing-s-mobile)}.info .info__body .header ::slotted([slot="action"]),.info .info__body .header ::slotted([slot="icon"]),.info .info__body .header ::slotted([slot="logo"]){flex-shrink:0}.info .info__body .header .titles{display:flex;flex-direction:column;gap:var(--px-spacing-xs-mobile)}.info .info__body .header .titles ::slotted([slot="title"]){font-size:var(--px-text-size-label-m-mobile);font-weight:var(--px-font-weight-title);line-height:var(--px-line-height-ratio-l);color:var(--px-color-text-neutral-default);flex-grow:1}.info .info__body .header .titles ::slotted([slot="description"]){font-size:var(--px-text-size-label-m-mobile);font-weight:var(--px-font-weight-body);line-height:var(--px-line-height-ratio-l);color:var(--px-color-text-dimmed-default);flex-grow:1}.info .info__body ::slotted([slot="content"]){color:var(--px-color-text-neutral-default)}.info .info__footer{display:flex;align-items:center;flex:3 1 0;padding:var(--px-padding-s-mobile);background:var(--px-color-background-container-default-default);text-align:center}:host([hide-footer]) .info .info__body{flex-basis:auto}:host([hide-footer]) .info__footer{display:none}@media screen and (min-width: 48rem){.info{flex-direction:column}.info .info__body{flex-basis:auto;gap:var(--px-spacing-default-tablet);padding:var(--px-padding-s-tablet)}.info .info__body .header{gap:var(--px-spacing-s-tablet)}.info .info__body .header .titles{gap:var(--px-spacing-xs-tablet)}.info .info__body .header .titles ::slotted([slot="title"]){font-size:var(--px-text-size-label-m-tablet)}.info .info__body .header .titles ::slotted([slot="description"]){font-size:var(--px-text-size-label-m-tablet)}.info .info__footer{flex:none;justify-content:center;padding:var(--px-padding-s-tablet)}}@media screen and (min-width: 64.0625rem){.info .info__body{gap:var(--px-spacing-default-laptop);padding:var(--px-padding-s-laptop)}.info .info__body .header{gap:var(--px-spacing-s-laptop)}.info .info__body .header .titles{gap:var(--px-spacing-xs-laptop)}.info .info__body .header .titles ::slotted([slot="title"]){font-size:var(--px-text-size-label-m-laptop)}.info .info__body .header .titles ::slotted([slot="description"]){font-size:var(--px-text-size-label-m-laptop)}.info .info__footer{padding:var(--px-padding-s-laptop)}}@media screen and (min-width: 90.0625rem){.info .info__body{gap:var(--px-spacing-default-desktop);padding:var(--px-padding-s-desktop)}.info .info__body .header{gap:var(--px-spacing-s-desktop)}.info .info__body .header .titles{gap:var(--px-spacing-xs-desktop)}.info .info__body .header .titles ::slotted([slot="title"]){font-size:var(--px-text-size-label-m-desktop)}.info .info__body .header .titles ::slotted([slot="description"]){font-size:var(--px-text-size-label-m-desktop)}.info .info__footer{padding:var(--px-padding-s-desktop)}}:host([inverted]) .info .info__body .header .titles ::slotted([slot="title"]){color:var(--px-color-text-neutral-inverted)}:host([inverted]) .info .info__body .header .titles ::slotted([slot="description"]){color:var(--px-color-text-dimmed-inverted)}:host([inverted]) .info .info__body ::slotted([slot="content"]){color:var(--px-color-text-neutral-inverted)}:host([inverted]) .info .info__footer{background:var(--px-color-background-container-default-inverted)}', u = new CSSStyleSheet();
629
+ u.replaceSync(F);
630
+ class H extends c {
631
+ template() {
632
+ return `
633
+ <div class="selectable-box">
634
+ <slot name="media"></slot>
635
+ <div class="info">
636
+ <div class="info__body">
637
+ <div class="header">
638
+ <slot name="action"></slot>
639
+ <slot name="icon"></slot>
640
+ <slot name="logo"></slot>
641
+ <div class="titles">
642
+ <slot name="title"></slot>
643
+ <slot name="description"></slot>
644
+ </div>
645
+ </div>
646
+ <slot name="content"></slot>
647
+ </div>
648
+ <div class="info__footer">
649
+ <slot name="footer"></slot>
650
+ </div>
651
+ </div>
652
+ </div>
653
+ `;
654
+ }
655
+ constructor() {
656
+ super(u), this.shadowRoot.innerHTML = this.template();
657
+ }
658
+ static get observedAttributes() {
659
+ return [...super.observedAttributes, "inverted", "hide-footer"];
660
+ }
661
+ attributeChangedCallback(t, e, i) {
662
+ if (e !== i)
663
+ switch (t) {
664
+ default:
665
+ super.attributeChangedCallback(t, e, i);
666
+ break;
667
+ }
668
+ }
669
+ get $el() {
670
+ return this.shadowRoot.querySelector(".selectable-box");
671
+ }
672
+ get inverted() {
673
+ return this.hasAttribute("inverted");
674
+ }
675
+ set inverted(t) {
676
+ t ? this.setAttribute("inverted", "") : this.removeAttribute("inverted");
677
+ }
678
+ get hideFooter() {
679
+ return this.hasAttribute("hide-footer");
680
+ }
681
+ set hideFooter(t) {
682
+ t ? this.setAttribute("hide-footer", "") : this.removeAttribute("hide-footer");
683
+ }
684
+ }
685
+ customElements.get("px-selectable-box") || customElements.define("px-selectable-box", H);
686
+ const T = ["px-a", "px-button"];
687
+ function g(s, t, e = T) {
688
+ const i = new Set(e), o = s.composedPath();
689
+ for (const r of o) {
690
+ if (r === t)
691
+ break;
692
+ if (r instanceof Element && i.has(r.tagName.toLowerCase()))
693
+ return !0;
694
+ }
695
+ return !1;
696
+ }
697
+ const x = ':host{display:block;outline:none}:host *{box-sizing:border-box}.selectable-box-checkbox,.selectable-box-radio{box-sizing:border-box;height:100%;cursor:pointer;border-radius:var(--px-radius-main);overflow:hidden;--btn-transition: all .2s ease-in-out 0s;transition:var(--btn-transition);border:var(--px-size-border-m) solid var(--px-color-border-main-default);outline-color:var(--px-color-border-focus-outline-default);outline-width:var(--px-focus-outline-mobile)}.selectable-box-checkbox px-selectable-box,.selectable-box-radio px-selectable-box{height:100%;background-color:var(--px-color-background-container-light-default)}:host([parent-has-anchor-full]) .selectable-box-checkbox,:host([parent-has-anchor-full]) .selectable-box-radio{border-radius:0 0 var(--px-radius-main) var(--px-radius-main)}:host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host(:not([disabled])):host(:hover) .selectable-box-radio{border-color:var(--px-color-border-state-hover-default)}:host(:not([disabled])):host(:hover) .selectable-box-checkbox px-selectable-box,:host(:not([disabled])):host(:hover) .selectable-box-radio px-selectable-box{background-color:var( --px-color-background-state-hover-bordered-default )}:host(:not([disabled])):host(:focus-visible) .selectable-box-checkbox,:host(:not([disabled])):host(:focus-visible) .selectable-box-radio{outline-offset:var(--px-focus-offset-mobile);outline-style:solid}:host([checked]) .selectable-box-checkbox,:host([checked]) .selectable-box-radio{border-color:var(--px-color-border-state-active-default)}:host([disabled]) .selectable-box-checkbox,:host([disabled]) .selectable-box-radio{cursor:default;pointer-events:none;border-color:transparent}:host([disabled]) .selectable-box-checkbox px-selectable-box,:host([disabled]) .selectable-box-radio px-selectable-box{background-color:var(--px-color-background-state-disabled-default)}:host([disabled]) ::slotted([slot="title"]),:host([disabled]) ::slotted([slot="description"]),:host([disabled]) ::slotted([slot="content"]){color:var(--px-color-text-state-disabled-default)}@media screen and (min-width: 48rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-tablet)}}@media screen and (min-width: 64.0625rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-laptop)}}@media screen and (min-width: 90.0625rem){.selectable-box-checkbox,.selectable-box-radio{outline-width:var(--px-focus-outline-desktop)}}:host([inverted]) .selectable-box-checkbox,:host([inverted]) .selectable-box-radio{border-color:var(--px-color-border-main-inverted);outline-color:var(--px-color-border-focus-outline-inverted)}:host([inverted]) .selectable-box-checkbox px-selectable-box,:host([inverted]) .selectable-box-radio px-selectable-box{background-color:var(--px-color-background-container-light-inverted)}:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-checkbox,:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-radio{border-color:var(--px-color-border-state-hover-inverted)}:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-checkbox px-selectable-box,:host([inverted]):host(:not([disabled])):host(:hover) .selectable-box-radio px-selectable-box{background-color:var( --px-color-background-state-hover-bordered-inverted )}:host([inverted]):host([checked]) .selectable-box-checkbox,:host([inverted]):host([checked]) .selectable-box-radio{border-color:var(--px-color-border-state-active-inverted)}:host([inverted]):host([disabled]) .selectable-box-checkbox,:host([inverted]):host([disabled]) .selectable-box-radio{border-color:transparent}:host([inverted]):host([disabled]) .selectable-box-checkbox px-selectable-box,:host([inverted]):host([disabled]) .selectable-box-radio px-selectable-box{background-color:var(--px-color-background-state-disabled-inverted)}:host([inverted]):host([disabled]) ::slotted([slot="title"]),:host([inverted]):host([disabled]) ::slotted([slot="description"]),:host([inverted]):host([disabled]) ::slotted([slot="content"]){color:var(--px-color-text-state-disabled-inverted)}', f = new CSSStyleSheet();
698
+ f.replaceSync(x);
699
+ class I extends c {
700
+ template() {
701
+ return `
702
+ <div class="selectable-box-checkbox">
703
+ <px-selectable-box>
704
+ <slot name="media" slot="media"></slot>
705
+ <px-checkbox
706
+ slot="action" inert
707
+ ></px-checkbox>
708
+ <slot name="icon" slot="icon"></slot>
709
+ <slot name="logo" slot="logo"></slot>
710
+ <slot name="title" slot="title"></slot>
711
+ <slot name="description" slot="description"></slot>
712
+ <slot name="content" slot="content"></slot>
713
+ <slot name="footer" slot="footer"></slot>
714
+ </px-selectable-box>
715
+ </div>
716
+ `;
717
+ }
718
+ constructor() {
719
+ var t;
720
+ super(f), this.shadowRoot.innerHTML = this.template(), this.internals = (t = this.attachInternals) == null ? void 0 : t.call(this);
721
+ }
722
+ connectedCallback() {
723
+ this.toggleFooterVisibility = this.toggleFooterVisibility.bind(this), this.role = "checkbox", this.internals && (this.internals.role = "checkbox"), this.tabIndex = 0, this.ariaChecked = "false", this.toggleFooterVisibility(), this.$slotFooter.addEventListener(
724
+ "slotchange",
725
+ this.toggleFooterVisibility
726
+ ), this.addEventListener("mouseover", this.setHoverAttribute), this.addEventListener("mouseout", this.removeHoverAttribute), this.addEventListener("keypress", this.setKeypressEvent), this.addEventListener("click", this.setClickEvent);
727
+ }
728
+ static get observedAttributes() {
729
+ return [
730
+ ...super.observedAttributes,
731
+ "inverted",
732
+ "name",
733
+ "value",
734
+ "checked",
735
+ "disabled"
736
+ ];
737
+ }
738
+ attributeChangedCallback(t, e, i) {
739
+ if (e !== i)
740
+ switch (t) {
741
+ case "inverted":
742
+ this.inverted ? (this.$selectableBox.setAttribute("inverted", ""), this.$checkbox.setAttribute("inverted", "")) : (this.$selectableBox.removeAttribute("inverted"), this.$checkbox.removeAttribute("inverted"));
743
+ break;
744
+ case "name":
745
+ case "value":
746
+ this.$checkbox && this.$checkbox.setAttribute(t, i);
747
+ break;
748
+ case "disabled":
749
+ this.handleDisabledAttributeChange(i !== null);
750
+ break;
751
+ case "checked":
752
+ this.handleCheckedAttributeChange(i);
753
+ break;
754
+ default:
755
+ super.attributeChangedCallback(t, e, i);
756
+ break;
757
+ }
758
+ }
759
+ disconnectedCallback() {
760
+ this.$slotFooter.removeEventListener(
761
+ "slotchange",
762
+ this.toggleFooterVisibility
763
+ ), this.removeEventListener("mouseover", this.setHoverAttribute), this.removeEventListener("mouseout", this.removeHoverAttribute), this.removeEventListener("keypress", this.setKeypressEvent), this.removeEventListener("click", this.setClickEvent);
764
+ }
765
+ removeHoverAttribute() {
766
+ this.$checkbox.removeAttribute("hover");
767
+ }
768
+ setHoverAttribute() {
769
+ this.$checkbox.setAttribute("hover", "");
770
+ }
771
+ setKeypressEvent(t) {
772
+ switch (t.stopPropagation(), t.preventDefault(), t.code) {
773
+ case "Space":
774
+ this.click();
775
+ break;
776
+ }
777
+ }
778
+ setClickEvent(t) {
779
+ g(t, this) || (this.checked = !this.checked, t.stopPropagation(), t.preventDefault());
780
+ }
781
+ toggleFooterVisibility() {
782
+ this.$slottedFooter ? this.$selectableBox.removeAttribute("hide-footer") : this.$selectableBox.setAttribute("hide-footer", "");
783
+ }
784
+ handleDisabledAttributeChange(t) {
785
+ t ? (this.disabled = !0, this.internals && (this.internals.ariaDisabled = "true"), this.ariaDisabled = "true", this.$checkbox.setAttribute("disabled", "")) : (this.disabled = !1, this.internals && (this.internals.ariaDisabled = "false"), this.ariaDisabled = "false", this.$checkbox.removeAttribute("disabled"));
786
+ }
787
+ handleCheckedAttributeChange(t) {
788
+ var e;
789
+ (e = this.internals) == null || e.setFormValue(this.formData()), t === null ? (this.internals && (this.internals.ariaChecked = "false"), this.ariaChecked = "false", this.checked = !1, this.$checkbox && this.$checkbox.removeAttribute("checked")) : (this.internals && (this.internals.ariaChecked = "true"), this.ariaChecked = "true", this.checked = !0, this.$checkbox && this.$checkbox.setAttribute("checked", "")), this.dispatchEvent(
790
+ new Event("change", {
791
+ bubbles: !0,
792
+ composed: !0
793
+ // Allow the event to pass through shadow DOM boundaries
794
+ })
795
+ );
796
+ }
797
+ // Form-associated callbacks
798
+ static get formAssociated() {
799
+ return !0;
800
+ }
801
+ // Set default behavior when the element is attached to a form
802
+ formResetCallback() {
803
+ this.checked = !1;
804
+ }
805
+ formStateRestoreCallback(t) {
806
+ this.checked = t;
807
+ }
808
+ formData() {
809
+ if (this.name) {
810
+ const t = new FormData(), e = this.getAttribute("name");
811
+ return e && (this.checked ? t.set(e, this.value) : t.delete(e)), t;
812
+ }
813
+ }
814
+ get $el() {
815
+ return this.shadowRoot.querySelector(
816
+ ".selectable-box-checkbox"
817
+ );
818
+ }
819
+ get $selectableBox() {
820
+ return this.shadowRoot.querySelector("px-selectable-box");
821
+ }
822
+ get $checkbox() {
823
+ return this.shadowRoot.querySelector("px-checkbox");
824
+ }
825
+ get $slotFooter() {
826
+ return this.shadowRoot.querySelector(
827
+ 'slot[name="footer"]'
828
+ );
829
+ }
830
+ get $slottedFooter() {
831
+ return this.querySelector('[slot="footer"]');
832
+ }
833
+ get inverted() {
834
+ return this.hasAttribute("inverted");
835
+ }
836
+ set inverted(t) {
837
+ t ? this.setAttribute("inverted", "") : this.removeAttribute("inverted");
838
+ }
839
+ get checked() {
840
+ return this.hasAttribute("checked");
841
+ }
842
+ set checked(t) {
843
+ t ? this.setAttribute("checked", "") : this.removeAttribute("checked");
844
+ }
845
+ get name() {
846
+ return this.getAttribute("name");
847
+ }
848
+ set name(t) {
849
+ t ? this.setAttribute("name", t) : this.removeAttribute("name");
850
+ }
851
+ get disabled() {
852
+ return this.hasAttribute("disabled");
853
+ }
854
+ set disabled(t) {
855
+ t ? this.setAttribute("disabled", "") : this.removeAttribute("disabled");
856
+ }
857
+ get value() {
858
+ return this.getAttribute("value");
859
+ }
860
+ set value(t) {
861
+ t ? this.setAttribute("value", t) : this.removeAttribute("value");
862
+ }
863
+ }
864
+ customElements.get("px-selectable-box-checkbox") || customElements.define("px-selectable-box-checkbox", I);
865
+ const v = new CSSStyleSheet();
866
+ v.replaceSync(x);
867
+ const P = "px-selectable-box-radio-connected", q = "px-selectable-box-radio-disconnected";
868
+ class B extends c {
869
+ template() {
870
+ return `
871
+ <div class="selectable-box-radio">
872
+ <px-selectable-box>
873
+ <slot name="media" slot="media"></slot>
874
+ <px-radio
875
+ slot="action" inert
876
+ ></px-radio>
877
+ <slot name="icon" slot="icon"></slot>
878
+ <slot name="logo" slot="logo"></slot>
879
+ <slot name="title" slot="title"></slot>
880
+ <slot name="description" slot="description"></slot>
881
+ <slot name="content" slot="content"></slot>
882
+ <slot name="footer" slot="footer"></slot>
883
+ </px-selectable-box>
884
+ </div>
885
+ `;
886
+ }
887
+ constructor() {
888
+ var t;
889
+ super(v), this.shadowRoot.innerHTML = this.template(), this.internals = (t = this.attachInternals) == null ? void 0 : t.call(this);
890
+ }
891
+ connectedCallback() {
892
+ this.toggleFooterVisibility = this.toggleFooterVisibility.bind(this), this.role = "radio", this.internals && (this.internals.role = "radio"), this.dispatchEvent(
893
+ new CustomEvent(P, {
894
+ bubbles: !0,
895
+ composed: !0
896
+ })
897
+ ), this.ariaChecked = "false", this.toggleFooterVisibility(), this.$slotFooter.addEventListener(
898
+ "slotchange",
899
+ this.toggleFooterVisibility
900
+ ), this.addEventListener("mouseover", this.setHoverAttribute), this.addEventListener("mouseout", this.removeHoverAttribute), this.addEventListener("keypress", this.setKeypressEvent), this.addEventListener("click", this.setClickEvent);
901
+ }
902
+ static get observedAttributes() {
903
+ return [
904
+ ...super.observedAttributes,
905
+ "inverted",
906
+ "name",
907
+ "value",
908
+ "checked",
909
+ "disabled"
910
+ ];
911
+ }
912
+ attributeChangedCallback(t, e, i) {
913
+ if (e !== i)
914
+ switch (t) {
915
+ case "inverted":
916
+ this.inverted ? (this.$selectableBox.setAttribute("inverted", ""), this.$radio.setAttribute("inverted", "")) : (this.$selectableBox.removeAttribute("inverted"), this.$radio.removeAttribute("inverted"));
917
+ break;
918
+ case "name":
919
+ case "value":
920
+ this.$radio && this.$radio.setAttribute(t, i);
921
+ break;
922
+ case "disabled":
923
+ this.handleDisabledAttributeChange(i !== null);
924
+ break;
925
+ case "checked":
926
+ this.handleCheckedAttributeChange(i);
927
+ break;
928
+ default:
929
+ super.attributeChangedCallback(t, e, i);
930
+ break;
931
+ }
932
+ }
933
+ disconnectedCallback() {
934
+ this.$slotFooter.removeEventListener(
935
+ "slotchange",
936
+ this.toggleFooterVisibility
937
+ ), this.removeEventListener("mouseover", this.setHoverAttribute), this.removeEventListener("mouseout", this.removeHoverAttribute), this.removeEventListener("keypress", this.setKeypressEvent), this.removeEventListener("click", this.setClickEvent), this.dispatchEvent(
938
+ new CustomEvent(q, {
939
+ bubbles: !0,
940
+ composed: !0
941
+ })
942
+ );
943
+ }
944
+ removeHoverAttribute() {
945
+ this.$radio.removeAttribute("hover");
946
+ }
947
+ setHoverAttribute() {
948
+ this.$radio.setAttribute("hover", "");
949
+ }
950
+ setKeypressEvent(t) {
951
+ switch (t.preventDefault(), t.code) {
952
+ case "Space":
953
+ this.click();
954
+ break;
955
+ }
956
+ }
957
+ setClickEvent(t) {
958
+ g(t, this) || (this.checked || (this.checked = !0), t.stopPropagation(), t.preventDefault());
959
+ }
960
+ toggleFooterVisibility() {
961
+ this.$slottedFooter ? this.$selectableBox.removeAttribute("hide-footer") : this.$selectableBox.setAttribute("hide-footer", "");
962
+ }
963
+ handleDisabledAttributeChange(t) {
964
+ t ? (this.disabled = !0, this.internals && (this.internals.ariaDisabled = "true"), this.ariaDisabled = "true", this.$radio.setAttribute("disabled", "")) : (this.disabled = !1, this.internals && (this.internals.ariaDisabled = "false"), this.ariaDisabled = "false", this.$radio.removeAttribute("disabled"));
965
+ }
966
+ handleCheckedAttributeChange(t) {
967
+ var e;
968
+ (e = this.internals) == null || e.setFormValue(this.formData()), t == null ? (this.internals && (this.internals.ariaChecked = "false"), this.ariaChecked = "false", this.tabIndex = -1, this.checked = !1, this.$radio && this.$radio.removeAttribute("checked")) : (this.internals && (this.internals.ariaChecked = "true"), this.ariaChecked = "true", this.tabIndex = 0, this.checked = !0, this.$radio && this.$radio.setAttribute("checked", ""), this.dispatchEvent(
969
+ new Event("change", {
970
+ bubbles: !0,
971
+ composed: !0
972
+ // Allow the event to pass through shadow DOM boundaries
973
+ })
974
+ ));
975
+ }
976
+ // Form-associated callbacks
977
+ static get formAssociated() {
978
+ return !0;
979
+ }
980
+ // Set default behavior when the element is attached to a form
981
+ formResetCallback() {
982
+ this.checked = !1;
983
+ }
984
+ formStateRestoreCallback(t) {
985
+ this.checked = t;
986
+ }
987
+ formData() {
988
+ if (this.name) {
989
+ const t = new FormData(), e = this.getAttribute("name");
990
+ return e && (this.checked ? t.set(e, this.value) : t.delete(e)), t;
991
+ }
992
+ }
993
+ get $el() {
994
+ return this.shadowRoot.querySelector(
995
+ ".selectable-box-radio"
996
+ );
997
+ }
998
+ get $selectableBox() {
999
+ return this.shadowRoot.querySelector("px-selectable-box");
1000
+ }
1001
+ get $radio() {
1002
+ return this.shadowRoot.querySelector("px-radio");
1003
+ }
1004
+ get $slotFooter() {
1005
+ return this.shadowRoot.querySelector(
1006
+ 'slot[name="footer"]'
1007
+ );
1008
+ }
1009
+ get $slottedFooter() {
1010
+ return this.querySelector('[slot="footer"]');
1011
+ }
1012
+ get inverted() {
1013
+ return this.hasAttribute("inverted");
1014
+ }
1015
+ set inverted(t) {
1016
+ t ? this.setAttribute("inverted", "") : this.removeAttribute("inverted");
1017
+ }
1018
+ get checked() {
1019
+ return this.hasAttribute("checked");
1020
+ }
1021
+ set checked(t) {
1022
+ t ? this.setAttribute("checked", "") : this.removeAttribute("checked");
1023
+ }
1024
+ get name() {
1025
+ return this.getAttribute("name");
1026
+ }
1027
+ set name(t) {
1028
+ t ? this.setAttribute("name", t) : this.removeAttribute("name");
1029
+ }
1030
+ get disabled() {
1031
+ return this.hasAttribute("disabled");
1032
+ }
1033
+ set disabled(t) {
1034
+ t ? this.setAttribute("disabled", "") : this.removeAttribute("disabled");
1035
+ }
1036
+ get value() {
1037
+ return this.getAttribute("value");
1038
+ }
1039
+ set value(t) {
1040
+ t ? this.setAttribute("value", t) : this.removeAttribute("value");
1041
+ }
1042
+ }
1043
+ customElements.get("px-selectable-box-radio") || customElements.define("px-selectable-box-radio", B);
1044
+ export {
1045
+ P as SELECTABLE_BOX_RADIO_CONNECTED_EVENT,
1046
+ q as SELECTABLE_BOX_RADIO_DISCONNECTED_EVENT,
1047
+ H as SelectableBox,
1048
+ I as SelectableBoxCheckbox,
1049
+ B as SelectableBoxRadio
958
1050
  };
959
- customElements.get("px-selectable-box-radio") || customElements.define("px-selectable-box-radio", P);
960
- //#endregion
961
- export { M as SELECTABLE_BOX_RADIO_CONNECTED_EVENT, N as SELECTABLE_BOX_RADIO_DISCONNECTED_EVENT, T as SelectableBox, A as SelectableBoxCheckbox, P as SelectableBoxRadio, w as selectableBoxFooterPosition };