nve-designsystem 0.4.11 → 0.4.13
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/components/nve-option/nve-option.component.d.ts +10 -1
- package/components/nve-option/nve-option.component.js +22 -14
- package/components/nve-select/nve-select.component.d.ts +8 -5
- package/components/nve-select/nve-select.component.js +40 -37
- package/custom-elements.json +38 -13
- package/package.json +1 -1
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import { default as SlOption } from '@shoelace-style/shoelace/dist/components/option/option.js';
|
|
2
|
+
import { PropertyValues } from 'lit';
|
|
2
3
|
/**
|
|
3
4
|
* Representerer et valg i nve-select.
|
|
4
5
|
*/
|
|
5
6
|
export default class NveOption extends SlOption {
|
|
6
7
|
constructor();
|
|
7
8
|
static styles: import('lit').CSSResultGroup[];
|
|
8
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Tekst som vises i select når denne er valgt. Default er at all råtekst vises.
|
|
11
|
+
*/
|
|
12
|
+
textLabel: string | undefined;
|
|
13
|
+
firstUpdated(changedProperties: PropertyValues): void;
|
|
14
|
+
/**
|
|
15
|
+
* Gir tilbake plain-tekst-label som vises i select
|
|
16
|
+
*/
|
|
17
|
+
getTextLabel(): string;
|
|
9
18
|
}
|
|
10
19
|
declare global {
|
|
11
20
|
interface HTMLElementTagNameMap {
|
|
@@ -2,17 +2,16 @@ import { o as f } from "../../chunks/chunk.MXB57G5B.js";
|
|
|
2
2
|
import "../../chunks/chunk.6CTB5ZDJ.js";
|
|
3
3
|
import "../../chunks/chunk.QCFOL4VF.js";
|
|
4
4
|
import "../../chunks/chunk.EVP45OG4.js";
|
|
5
|
-
import {
|
|
6
|
-
import "
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return s && e && m(t, o, e), e;
|
|
5
|
+
import { n as u, t as n } from "../../chunks/property.js";
|
|
6
|
+
import b from "./nve-option.styles.js";
|
|
7
|
+
var v = Object.defineProperty, d = Object.getOwnPropertyDescriptor, a = (r, t, o, s) => {
|
|
8
|
+
for (var e = s > 1 ? void 0 : s ? d(t, o) : t, i = r.length - 1, p; i >= 0; i--)
|
|
9
|
+
(p = r[i]) && (e = (s ? p(t, o, e) : p(e)) || e);
|
|
10
|
+
return s && e && v(t, o, e), e;
|
|
12
11
|
};
|
|
13
|
-
let
|
|
12
|
+
let l = class extends f {
|
|
14
13
|
constructor() {
|
|
15
|
-
super();
|
|
14
|
+
super(), this.textLabel = void 0;
|
|
16
15
|
}
|
|
17
16
|
/* Setter filled attributt på option når parent-select er filled, for å få annen hover-farge*/
|
|
18
17
|
firstUpdated(r) {
|
|
@@ -20,11 +19,20 @@ let p = class extends f {
|
|
|
20
19
|
const t = this.closest("nve-select");
|
|
21
20
|
t != null && t.hasAttribute("filled") ? this.toggleAttribute("filled", !0) : this.toggleAttribute("filled", !1);
|
|
22
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Gir tilbake plain-tekst-label som vises i select
|
|
24
|
+
*/
|
|
25
|
+
getTextLabel() {
|
|
26
|
+
return this.textLabel ? this.textLabel : super.getTextLabel();
|
|
27
|
+
}
|
|
23
28
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
u(
|
|
27
|
-
],
|
|
29
|
+
l.styles = [f.styles, b];
|
|
30
|
+
a([
|
|
31
|
+
u()
|
|
32
|
+
], l.prototype, "textLabel", 2);
|
|
33
|
+
l = a([
|
|
34
|
+
n("nve-option")
|
|
35
|
+
], l);
|
|
28
36
|
export {
|
|
29
|
-
|
|
37
|
+
l as default
|
|
30
38
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { default as SlSelect } from '@shoelace-style/shoelace/dist/components/select/select.js';
|
|
2
|
+
import { PropertyValues } from 'lit';
|
|
2
3
|
/**
|
|
3
4
|
* En nedtrekksliste, også kjent som rullgardin eller drop-down list. Kjært barn har mange navn.
|
|
4
5
|
* TODO: Klarte ikke å sette feil-ikonet når validering feiler. Eneste måte å gjøre det på kunne ha vært å bruke ::after pseudo-element på noen av sl-select partene, men
|
|
@@ -12,16 +13,18 @@ export default class NveSelect extends SlSelect {
|
|
|
12
13
|
*/
|
|
13
14
|
requiredLabel: string;
|
|
14
15
|
/**
|
|
15
|
-
* Brukes til enkel constraint validation til å overskrive default
|
|
16
|
+
* Brukes til enkel constraint validation til å overskrive default nettleser-melding
|
|
16
17
|
*/
|
|
17
18
|
errorMessage?: string;
|
|
18
|
-
connectedCallback(): void;
|
|
19
|
-
disconnectedCallback(): void;
|
|
20
19
|
constructor();
|
|
21
20
|
static styles: import('lit').CSSResultGroup[];
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
private slInvalidEventListener;
|
|
22
|
+
connectedCallback(): void;
|
|
23
|
+
disconnectedCallback(): void;
|
|
24
|
+
protected firstUpdated(changedProperties: PropertyValues): void;
|
|
25
|
+
updated(changedProperties: PropertyValues): void;
|
|
24
26
|
focus(): void;
|
|
27
|
+
private valueHasChanged;
|
|
25
28
|
private handleOptionClick;
|
|
26
29
|
private handleDefaultSlotChange;
|
|
27
30
|
private getAllOptions;
|
|
@@ -6,73 +6,76 @@ import "../../chunks/chunk.G6R7BW5E.js";
|
|
|
6
6
|
import "../../chunks/chunk.6CTB5ZDJ.js";
|
|
7
7
|
import "../../chunks/chunk.QCFOL4VF.js";
|
|
8
8
|
import "../../chunks/chunk.EVP45OG4.js";
|
|
9
|
-
import { n as u, t as
|
|
10
|
-
import
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
import { n as u, t as h } from "../../chunks/property.js";
|
|
10
|
+
import { r as d } from "../../chunks/state.js";
|
|
11
|
+
import c from "./nve-select.styles.js";
|
|
12
|
+
var v = Object.defineProperty, f = Object.getOwnPropertyDescriptor, o = (t, e, s, i) => {
|
|
13
|
+
for (var r = i > 1 ? void 0 : i ? f(e, s) : e, n = t.length - 1, a; n >= 0; n--)
|
|
14
|
+
(a = t[n]) && (r = (i ? a(e, s, r) : a(r)) || r);
|
|
15
|
+
return i && r && v(e, s, r), r;
|
|
15
16
|
};
|
|
16
17
|
let l = class extends p {
|
|
17
18
|
constructor() {
|
|
18
|
-
super(), this.requiredLabel = "*Obligatorisk"
|
|
19
|
+
super(), this.requiredLabel = "*Obligatorisk", this.slInvalidEventListener = (t) => {
|
|
20
|
+
t.preventDefault();
|
|
21
|
+
}, this.valueHasChanged = !1;
|
|
19
22
|
}
|
|
20
23
|
connectedCallback() {
|
|
21
|
-
super.connectedCallback(), this.addEventListener("sl-invalid",
|
|
22
|
-
e.preventDefault();
|
|
23
|
-
});
|
|
24
|
+
super.connectedCallback(), this.addEventListener("sl-invalid", this.slInvalidEventListener);
|
|
24
25
|
}
|
|
25
26
|
disconnectedCallback() {
|
|
26
|
-
super.disconnectedCallback(), this.removeEventListener("sl-invalid",
|
|
27
|
-
e.preventDefault();
|
|
28
|
-
});
|
|
27
|
+
super.disconnectedCallback(), this.removeEventListener("sl-invalid", this.slInvalidEventListener);
|
|
29
28
|
}
|
|
30
|
-
firstUpdated(
|
|
29
|
+
firstUpdated(t) {
|
|
31
30
|
var s;
|
|
32
|
-
super.firstUpdated(
|
|
33
|
-
const
|
|
34
|
-
|
|
31
|
+
super.firstUpdated(t), this.requiredLabel && this.style.setProperty("--sl-input-required-content", `"${this.requiredLabel}"`);
|
|
32
|
+
const e = (s = this.shadowRoot) == null ? void 0 : s.querySelector("sl-popup");
|
|
33
|
+
e == null || e.setAttribute("distance", "3");
|
|
35
34
|
}
|
|
36
|
-
updated(
|
|
37
|
-
super.updated(
|
|
38
|
-
const
|
|
39
|
-
|
|
35
|
+
updated(t) {
|
|
36
|
+
super.updated(t);
|
|
37
|
+
const e = this.hasAttribute("data-user-invalid");
|
|
38
|
+
e && (this.errorMessage || (this.errorMessage = this.validationMessage), this.style.setProperty("--nve-input-error-message", `"${this.errorMessage}"`)), e || this.style.setProperty("--nve-input-error-message", "");
|
|
40
39
|
}
|
|
41
40
|
focus() {
|
|
42
|
-
var
|
|
43
|
-
const
|
|
44
|
-
|
|
41
|
+
var e;
|
|
42
|
+
const t = (e = this.shadowRoot) == null ? void 0 : e.querySelector("sl-popup");
|
|
43
|
+
t == null || t.classList.add("select--focused");
|
|
45
44
|
}
|
|
46
|
-
// @ts-
|
|
47
|
-
handleOptionClick(
|
|
48
|
-
const s =
|
|
49
|
-
s && !s.disabled && (this.multiple ? this.toggleOptionSelection(s) : this.setSelectedOptions(s), this.updateComplete.then(() => this.displayInput.focus({ preventScroll: !0 })), this.value !== i && this.updateComplete.then(() => {
|
|
45
|
+
// @ts-expect-error overskriver private method
|
|
46
|
+
handleOptionClick(t) {
|
|
47
|
+
const s = t.target.closest("nve-option"), i = this.value;
|
|
48
|
+
s && !s.disabled && (this.multiple ? this.toggleOptionSelection(s) : this.setSelectedOptions(s), this.updateComplete.then(() => this.displayInput.focus({ preventScroll: !0 })), this.value !== i && (this.valueHasChanged = !0, this.updateComplete.then(() => {
|
|
50
49
|
this.emit("sl-input"), this.emit("sl-change");
|
|
51
|
-
}), this.multiple || (this.hide(), this.displayInput.focus({ preventScroll: !0 })));
|
|
50
|
+
})), this.multiple || (this.hide(), this.displayInput.focus({ preventScroll: !0 })));
|
|
52
51
|
}
|
|
53
52
|
//Lagt til nve-option
|
|
54
53
|
handleDefaultSlotChange() {
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
customElements.get("nve-option") || customElements.whenDefined("nve-option").then(() => this.handleDefaultSlotChange());
|
|
55
|
+
const t = this.getAllOptions(), e = this.valueHasChanged ? this.value : this.defaultValue, s = Array.isArray(e) ? e : [e];
|
|
56
|
+
this.setSelectedOptions(t.filter((i) => s.includes(i.value)));
|
|
57
57
|
}
|
|
58
58
|
//Lagt til nve-option
|
|
59
59
|
getAllOptions() {
|
|
60
60
|
return [...this.querySelectorAll("nve-option")];
|
|
61
61
|
}
|
|
62
|
-
// @ts-
|
|
62
|
+
// @ts-expect-error overskriver private method
|
|
63
63
|
getFirstOption() {
|
|
64
64
|
return this.querySelector("nve-option");
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
|
-
l.styles = [p.styles,
|
|
68
|
-
|
|
67
|
+
l.styles = [p.styles, c];
|
|
68
|
+
o([
|
|
69
69
|
u()
|
|
70
70
|
], l.prototype, "requiredLabel", 2);
|
|
71
|
-
|
|
71
|
+
o([
|
|
72
72
|
u({ reflect: !0 })
|
|
73
73
|
], l.prototype, "errorMessage", 2);
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
o([
|
|
75
|
+
d()
|
|
76
|
+
], l.prototype, "valueHasChanged", 2);
|
|
77
|
+
l = o([
|
|
78
|
+
h("nve-select")
|
|
76
79
|
], l);
|
|
77
80
|
export {
|
|
78
81
|
l as default
|
package/custom-elements.json
CHANGED
|
@@ -5956,6 +5956,15 @@
|
|
|
5956
5956
|
"static": true,
|
|
5957
5957
|
"default": "[SlOption.styles, styles]"
|
|
5958
5958
|
},
|
|
5959
|
+
{
|
|
5960
|
+
"kind": "field",
|
|
5961
|
+
"name": "textLabel",
|
|
5962
|
+
"type": {
|
|
5963
|
+
"text": "string | undefined"
|
|
5964
|
+
},
|
|
5965
|
+
"default": "undefined",
|
|
5966
|
+
"description": "Tekst som vises i select når denne er valgt. Default er at all råtekst vises."
|
|
5967
|
+
},
|
|
5959
5968
|
{
|
|
5960
5969
|
"kind": "method",
|
|
5961
5970
|
"name": "firstUpdated",
|
|
@@ -5968,11 +5977,21 @@
|
|
|
5968
5977
|
{
|
|
5969
5978
|
"name": "changedProperties",
|
|
5970
5979
|
"type": {
|
|
5971
|
-
"text": "
|
|
5980
|
+
"text": "PropertyValues"
|
|
5972
5981
|
}
|
|
5973
5982
|
}
|
|
5974
5983
|
]
|
|
5975
5984
|
},
|
|
5985
|
+
{
|
|
5986
|
+
"kind": "method",
|
|
5987
|
+
"name": "getTextLabel",
|
|
5988
|
+
"return": {
|
|
5989
|
+
"type": {
|
|
5990
|
+
"text": "string"
|
|
5991
|
+
}
|
|
5992
|
+
},
|
|
5993
|
+
"description": "Gir tilbake plain-tekst-label som vises i select"
|
|
5994
|
+
},
|
|
5976
5995
|
{
|
|
5977
5996
|
"kind": "field",
|
|
5978
5997
|
"name": "dependencies",
|
|
@@ -6076,14 +6095,6 @@
|
|
|
6076
6095
|
"inheritedFrom": {
|
|
6077
6096
|
"name": "SlOption"
|
|
6078
6097
|
}
|
|
6079
|
-
},
|
|
6080
|
-
{
|
|
6081
|
-
"kind": "method",
|
|
6082
|
-
"name": "getTextLabel",
|
|
6083
|
-
"description": "Returns a plain text label based on the option's content.",
|
|
6084
|
-
"inheritedFrom": {
|
|
6085
|
-
"name": "SlOption"
|
|
6086
|
-
}
|
|
6087
6098
|
}
|
|
6088
6099
|
],
|
|
6089
6100
|
"superclass": {
|
|
@@ -8197,7 +8208,7 @@
|
|
|
8197
8208
|
"type": {
|
|
8198
8209
|
"text": "string | undefined"
|
|
8199
8210
|
},
|
|
8200
|
-
"description": "Brukes til enkel constraint validation til å overskrive default
|
|
8211
|
+
"description": "Brukes til enkel constraint validation til å overskrive default nettleser-melding"
|
|
8201
8212
|
},
|
|
8202
8213
|
{
|
|
8203
8214
|
"kind": "field",
|
|
@@ -8208,6 +8219,11 @@
|
|
|
8208
8219
|
"static": true,
|
|
8209
8220
|
"default": "[SlSelect.styles, styles]"
|
|
8210
8221
|
},
|
|
8222
|
+
{
|
|
8223
|
+
"kind": "field",
|
|
8224
|
+
"name": "slInvalidEventListener",
|
|
8225
|
+
"privacy": "private"
|
|
8226
|
+
},
|
|
8211
8227
|
{
|
|
8212
8228
|
"kind": "method",
|
|
8213
8229
|
"name": "firstUpdated",
|
|
@@ -8216,7 +8232,7 @@
|
|
|
8216
8232
|
{
|
|
8217
8233
|
"name": "changedProperties",
|
|
8218
8234
|
"type": {
|
|
8219
|
-
"text": "
|
|
8235
|
+
"text": "PropertyValues"
|
|
8220
8236
|
}
|
|
8221
8237
|
}
|
|
8222
8238
|
]
|
|
@@ -8228,7 +8244,7 @@
|
|
|
8228
8244
|
{
|
|
8229
8245
|
"name": "changedProperties",
|
|
8230
8246
|
"type": {
|
|
8231
|
-
"text": "
|
|
8247
|
+
"text": "PropertyValues"
|
|
8232
8248
|
}
|
|
8233
8249
|
}
|
|
8234
8250
|
]
|
|
@@ -8237,6 +8253,15 @@
|
|
|
8237
8253
|
"kind": "method",
|
|
8238
8254
|
"name": "focus"
|
|
8239
8255
|
},
|
|
8256
|
+
{
|
|
8257
|
+
"kind": "field",
|
|
8258
|
+
"name": "valueHasChanged",
|
|
8259
|
+
"type": {
|
|
8260
|
+
"text": "boolean"
|
|
8261
|
+
},
|
|
8262
|
+
"privacy": "private",
|
|
8263
|
+
"default": "false"
|
|
8264
|
+
},
|
|
8240
8265
|
{
|
|
8241
8266
|
"kind": "method",
|
|
8242
8267
|
"name": "handleOptionClick",
|
|
@@ -11380,7 +11405,7 @@
|
|
|
11380
11405
|
"package": {
|
|
11381
11406
|
"name": "nve-designsystem",
|
|
11382
11407
|
"description": "Designsystem for NVE",
|
|
11383
|
-
"version": "0.4.
|
|
11408
|
+
"version": "0.4.12",
|
|
11384
11409
|
"author": {
|
|
11385
11410
|
"name": "NVE",
|
|
11386
11411
|
"email": "nve@nve.no"
|