@folkehelseinstituttet/designsystem 0.40.7 → 0.41.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +1 -1
- package/fhi-grid.js +7 -7
- package/fhi-grid.js.map +1 -1
- package/fhi-select-item.d.ts +1 -0
- package/fhi-select-item.js +21 -0
- package/fhi-select-item.js.map +1 -0
- package/fhi-select-item.manifest.json +1 -0
- package/fhi-select.d.ts +1 -0
- package/fhi-select.js +214 -0
- package/fhi-select.js.map +1 -0
- package/fhi-select.manifest.json +1 -0
- package/index.js +6 -4
- package/package.json +1 -1
- package/web-types.json +163 -1
package/fhi-grid.js
CHANGED
|
@@ -23,24 +23,24 @@ var o = "fhi-grid", s = class extends r {
|
|
|
23
23
|
static {
|
|
24
24
|
this.styles = t`
|
|
25
25
|
:host {
|
|
26
|
-
--
|
|
27
|
-
--dimension-grid-gap-medium: var(--fhi-spacing-200);
|
|
28
|
-
--dimension-grid-gap-large: var(--fhi-spacing-300);
|
|
26
|
+
--fhi-grid-gap: unset;
|
|
29
27
|
}
|
|
30
28
|
:host {
|
|
29
|
+
--fhi-grid-gap: var(--fhi-spacing-200);
|
|
30
|
+
|
|
31
31
|
display: grid;
|
|
32
|
-
gap: var(--
|
|
32
|
+
gap: var(--fhi-grid-gap);
|
|
33
33
|
}
|
|
34
34
|
:host([gap='small']) {
|
|
35
|
-
gap: var(--
|
|
35
|
+
--fhi-grid-gap: var(--fhi-spacing-100);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
:host([gap='medium']) {
|
|
39
|
-
gap: var(--
|
|
39
|
+
--fhi-grid-gap: var(--fhi-spacing-200);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
:host([gap='large']) {
|
|
43
|
-
gap: var(--
|
|
43
|
+
--fhi-grid-gap: var(--fhi-spacing-300);
|
|
44
44
|
}
|
|
45
45
|
`;
|
|
46
46
|
}
|
package/fhi-grid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhi-grid.js","names":[],"sources":["../../src/components/fhi-grid/fhi-grid.component.ts"],"sourcesContent":["import { html, css, LitElement, PropertyValues } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nexport const FhiGridSelector = 'fhi-grid';\ntype FhiUnitType = 'px' | 'rem';\ntype FhiGapWidthUnit = `${number}${FhiUnitType}` | number;\n\n/**\n * ## FHI Grid\n *\n * {@link https://designsystem.fhi.no/?path=/docs/komponenter-grid--docs}\n *\n * The `<fhi-grid>` component is a grid container that uses CSS Grid Layout to organize its child elements into a structured grid format.\n * It allows for easy control over the number of columns and the spacing between grid items.\n *\n * @tag fhi-grid\n * @element fhi-grid\n *\n */\n@customElement(FhiGridSelector)\nexport class FhiGrid extends LitElement {\n /**\n * Sets the gap between items within the grid container. It can be one of the preset values, a rem or px value, or a number.\n * If you give a number, it will be treated as pixels.\n * @type {'small' | 'medium' | 'large' | number | string}\n */\n @property({ type: String }) gap:\n | 'small'\n | 'medium'\n | 'large'\n | FhiGapWidthUnit = 'medium';\n\n /**\n * Sets the number of columns in the grid layout.\n * @type {number}\n */\n @property({ type: Number }) columns = 12;\n\n /**\n * Sets the number of rows in the grid layout.\n * @type {number}\n */\n @property({ type: Number }) rows = 1;\n\n updated(changedProperties: PropertyValues<this>) {\n super.updated(changedProperties);\n\n if (changedProperties.has('columns')) {\n this.style.gridTemplateColumns = `repeat( ${this.columns}, 1fr )`;\n }\n\n if (changedProperties.has('rows')) {\n this.style.gridTemplateRows = `repeat( ${this.rows}, 1fr )`;\n }\n\n if (changedProperties.has('gap')) {\n switch (this.gap) {\n case 'large':\n case 'medium':\n case 'small':\n this.style.gap = '';\n return;\n default:\n const gapValue = Number(this.gap) ? `${this.gap}px` : this.gap;\n this.style.gap = gapValue as string;\n return;\n }\n }\n }\n\n render() {\n return html`<slot></slot>`;\n }\n\n static styles = css`\n :host {\n --
|
|
1
|
+
{"version":3,"file":"fhi-grid.js","names":[],"sources":["../../src/components/fhi-grid/fhi-grid.component.ts"],"sourcesContent":["import { html, css, LitElement, PropertyValues } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nexport const FhiGridSelector = 'fhi-grid';\ntype FhiUnitType = 'px' | 'rem';\ntype FhiGapWidthUnit = `${number}${FhiUnitType}` | number;\n\n/**\n * ## FHI Grid\n *\n * {@link https://designsystem.fhi.no/?path=/docs/komponenter-grid--docs}\n *\n * The `<fhi-grid>` component is a grid container that uses CSS Grid Layout to organize its child elements into a structured grid format.\n * It allows for easy control over the number of columns and the spacing between grid items.\n *\n * @tag fhi-grid\n * @element fhi-grid\n *\n */\n@customElement(FhiGridSelector)\nexport class FhiGrid extends LitElement {\n /**\n * Sets the gap between items within the grid container. It can be one of the preset values, a rem or px value, or a number.\n * If you give a number, it will be treated as pixels.\n * @type {'small' | 'medium' | 'large' | number | string}\n */\n @property({ type: String }) gap:\n | 'small'\n | 'medium'\n | 'large'\n | FhiGapWidthUnit = 'medium';\n\n /**\n * Sets the number of columns in the grid layout.\n * @type {number}\n */\n @property({ type: Number }) columns = 12;\n\n /**\n * Sets the number of rows in the grid layout.\n * @type {number}\n */\n @property({ type: Number }) rows = 1;\n\n updated(changedProperties: PropertyValues<this>) {\n super.updated(changedProperties);\n\n if (changedProperties.has('columns')) {\n this.style.gridTemplateColumns = `repeat( ${this.columns}, 1fr )`;\n }\n\n if (changedProperties.has('rows')) {\n this.style.gridTemplateRows = `repeat( ${this.rows}, 1fr )`;\n }\n\n if (changedProperties.has('gap')) {\n switch (this.gap) {\n case 'large':\n case 'medium':\n case 'small':\n this.style.gap = '';\n return;\n default:\n const gapValue = Number(this.gap) ? `${this.gap}px` : this.gap;\n this.style.gap = gapValue as string;\n return;\n }\n }\n }\n\n render() {\n return html`<slot></slot>`;\n }\n\n static styles = css`\n :host {\n --fhi-grid-gap: unset;\n }\n :host {\n --fhi-grid-gap: var(--fhi-spacing-200);\n\n display: grid;\n gap: var(--fhi-grid-gap);\n }\n :host([gap='small']) {\n --fhi-grid-gap: var(--fhi-spacing-100);\n }\n\n :host([gap='medium']) {\n --fhi-grid-gap: var(--fhi-spacing-200);\n }\n\n :host([gap='large']) {\n --fhi-grid-gap: var(--fhi-spacing-300);\n }\n `;\n}\n"],"mappings":";;AAGA,IAAa,IAAkB,YAiBxB,IAAA,cAAsB,EAAW;;0BAUhB,yBAMgB,gBAMH;;CAEnC,QAAQ,GAAyC;EAW/C,IAVA,MAAM,QAAQ,CAAiB,GAE3B,EAAkB,IAAI,SAAS,MACjC,KAAK,MAAM,sBAAsB,WAAW,KAAK,QAAQ,WAGvD,EAAkB,IAAI,MAAM,MAC9B,KAAK,MAAM,mBAAmB,WAAW,KAAK,KAAK,WAGjD,EAAkB,IAAI,KAAK,GAC7B,QAAQ,KAAK,KAAb;GACE,KAAK;GACL,KAAK;GACL,KAAK;IACH,KAAK,MAAM,MAAM;IACjB;GACF;IACE,IAAM,IAAW,OAAO,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI,MAAM,KAAK;IAC3D,KAAK,MAAM,MAAM;IACjB;EACJ;CAEJ;CAEA,SAAS;EACP,OAAO,CAAI;CACb;;gBAEgB,CAAG;;;;;;;;;;;;;;;;;;;;;;;AAsBrB;GAtEG,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,EAAA,WAAA,OAAA,KAAA,CAAA,MAUzB,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,EAAA,WAAA,WAAA,KAAA,CAAA,MAMzB,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,EAAA,WAAA,QAAA,KAAA,CAAA,UAvB3B,EAAc,CAAe,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { a as e, o as t, s as n, t as r } from "./decorate-DFXIek-k.js";
|
|
2
|
+
//#region src/components/select/fhi-select-item/fhi-select-item.component.ts
|
|
3
|
+
var i = "fhi-select-item", a = class extends n {
|
|
4
|
+
constructor(...e) {
|
|
5
|
+
super(...e), this.label = null, this.selected = !1, this.value = null;
|
|
6
|
+
}
|
|
7
|
+
};
|
|
8
|
+
r([e({
|
|
9
|
+
type: String,
|
|
10
|
+
reflect: !0
|
|
11
|
+
})], a.prototype, "label", void 0), r([e({
|
|
12
|
+
type: Boolean,
|
|
13
|
+
reflect: !0
|
|
14
|
+
})], a.prototype, "selected", void 0), r([e({
|
|
15
|
+
type: String,
|
|
16
|
+
reflect: !0
|
|
17
|
+
})], a.prototype, "value", void 0), a = r([t(i)], a);
|
|
18
|
+
//#endregion
|
|
19
|
+
export { a as FhiSelectItem, i as FhiSelectItemSelector };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=fhi-select-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fhi-select-item.js","names":[],"sources":["../../src/components/select/fhi-select-item/fhi-select-item.component.ts"],"sourcesContent":["import { LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\nexport const FhiSelectItemSelector = 'fhi-select-item';\n\n/**\n * ## FHI Select Item\n *\n * {@link https://designsystem.fhi.no/?path=/docs/komponenter-select--docs}\n *\n * The `<fhi-select-item>` component is used to represent an individual option within a `<fhi-select>` dropdown list.\n * It provides a labeled option element with selection state and value attribute.\n *\n * @tag fhi-select-item\n * @element fhi-select-item\n *\n * @slot - The default slot is used to provide text content for the `<fhi-select-item>` element.\n */\n@customElement(FhiSelectItemSelector)\nexport class FhiSelectItem extends LitElement {\n /**\n * The label attribute of the select item. This property is used to provide a descriptive label for the select item. If not provided, the content of the `value` attribute will be used instead.\n * @type {string | null}\n */\n @property({ type: String, reflect: true })\n label: string | null = null;\n\n /**\n * The selected attribute of the select item. This property is used to indicate whether the select item is selected or not.\n * @type {boolean}\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The value attribute of the select item. This property is used to identify the select item when submitting a form. If not provided, the text content will be used instead.\n * @type {string | null}\n */\n @property({ type: String, reflect: true })\n value: string | null = null;\n}\n"],"mappings":";;AAGA,IAAa,IAAwB,mBAgB9B,IAAA,cAA4B,EAAW;;4BAMrB,sBAOZ,iBAOY;;AACzB;GAhBG,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,SAAA,KAAA,CAAA,MAOxC,EAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,YAAA,KAAA,CAAA,MAOzC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,SAAA,KAAA,CAAA,UApB1C,EAAc,CAAqB,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"kind":"javascript-module","path":"src/components/select/fhi-select-item/fhi-select-item.component.ts","declarations":[{"kind":"class","description":"## FHI Select Item\n\nhttps://designsystem.fhi.no/?path=/docs/komponenter-select--docs\n\nThe `<fhi-select-item>` component is used to represent an individual option within a `<fhi-select>` dropdown list.\nIt provides a labeled option element with selection state and value attribute.","name":"FhiSelectItem","slots":[{"description":"The default slot is used to provide text content for the `<fhi-select-item>` element.","name":""}],"members":[{"kind":"field","name":"label","type":{"text":"string | null"},"default":"null","description":"The label attribute of the select item. This property is used to provide a descriptive label for the select item. If not provided, the content of the `value` attribute will be used instead.","attribute":"label","reflects":true},{"kind":"field","name":"selected","type":{"text":"boolean"},"default":"false","description":"The selected attribute of the select item. This property is used to indicate whether the select item is selected or not.","attribute":"selected","reflects":true},{"kind":"field","name":"value","type":{"text":"string | null"},"default":"null","description":"The value attribute of the select item. This property is used to identify the select item when submitting a form. If not provided, the text content will be used instead.","attribute":"value","reflects":true}],"attributes":[{"name":"label","type":{"text":"string | null"},"default":"null","description":"The label attribute of the select item. This property is used to provide a descriptive label for the select item. If not provided, the content of the `value` attribute will be used instead.","fieldName":"label"},{"name":"selected","type":{"text":"boolean"},"default":"false","description":"The selected attribute of the select item. This property is used to indicate whether the select item is selected or not.","fieldName":"selected"},{"name":"value","type":{"text":"string | null"},"default":"null","description":"The value attribute of the select item. This property is used to identify the select item when submitting a form. If not provided, the text content will be used instead.","fieldName":"value"}],"superclass":{"name":"LitElement","package":"lit"},"tagName":"fhi-select-item","customElement":true},{"kind":"variable","name":"FhiSelectItemSelector","type":{"text":"string"},"default":"'fhi-select-item'"}]}
|
package/fhi-select.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/fhi-select.js
ADDED
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { a as e, d as t, n, o as r, r as i, s as a, t as o, u as s } from "./decorate-DFXIek-k.js";
|
|
2
|
+
import "./fhi-body.js";
|
|
3
|
+
import "./fhi-icon-chevron-down.js";
|
|
4
|
+
import "./fhi-label.js";
|
|
5
|
+
//#region src/components/select/fhi-select/fhi-select.component.ts
|
|
6
|
+
var c = "fhi-select", l = class extends a {
|
|
7
|
+
static {
|
|
8
|
+
this.formAssociated = !0;
|
|
9
|
+
}
|
|
10
|
+
constructor() {
|
|
11
|
+
super(), this.name = "", this.label = "", this.value = "", this.disabled = !1, this._initialSelectedElement = null, this._internals = this.attachInternals();
|
|
12
|
+
}
|
|
13
|
+
updated(e) {
|
|
14
|
+
e.has("name") && this._internals.setFormValue(this.value), this._initialSelectedElement || this._setInitialSelectedElement();
|
|
15
|
+
}
|
|
16
|
+
formResetCallback() {
|
|
17
|
+
this.value = this._initialSelectedElement?.value ?? "", this._internals.setFormValue(this.value);
|
|
18
|
+
}
|
|
19
|
+
_setInitialSelectedElement() {
|
|
20
|
+
this.selectElement.querySelectorAll("option").forEach((e) => {
|
|
21
|
+
e.selected && (this._initialSelectedElement = e);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
_handleSelectChange() {
|
|
25
|
+
this.value = this.selectElement.value, this._internals.setFormValue(this.value), this._dispatchChangeEvent();
|
|
26
|
+
}
|
|
27
|
+
_handleSelectInput() {
|
|
28
|
+
this._dispatchInputEvent();
|
|
29
|
+
}
|
|
30
|
+
_dispatchChangeEvent() {
|
|
31
|
+
this.dispatchEvent(new Event("change", { bubbles: !0 }));
|
|
32
|
+
}
|
|
33
|
+
_dispatchInputEvent() {
|
|
34
|
+
this.dispatchEvent(new Event("input", {
|
|
35
|
+
bubbles: !0,
|
|
36
|
+
composed: !0
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
_renderOptionElements() {
|
|
40
|
+
let e = this.slotElements.filter((e) => e.tagName.toLowerCase() === "fhi-select-item");
|
|
41
|
+
return e.length === 0 ? s`` : s`
|
|
42
|
+
${e.map((e) => s`<option
|
|
43
|
+
value="${e.getAttribute("value") ?? e.textContent}"
|
|
44
|
+
label="${e.getAttribute("label") ?? ""}"
|
|
45
|
+
?selected="${e.hasAttribute("selected")}"
|
|
46
|
+
>
|
|
47
|
+
${e.textContent}
|
|
48
|
+
</option>`)}
|
|
49
|
+
`;
|
|
50
|
+
}
|
|
51
|
+
_handleSlotChange() {
|
|
52
|
+
this.requestUpdate(), this.updateComplete.then(() => {
|
|
53
|
+
this.value = this.selectElement.value, this._internals.setFormValue(this.value);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
render() {
|
|
57
|
+
return s`
|
|
58
|
+
${this.label ? s`
|
|
59
|
+
<label for="select">
|
|
60
|
+
<fhi-label class="label" size="small">${this.label}</fhi-label>
|
|
61
|
+
</label>
|
|
62
|
+
` : null}
|
|
63
|
+
${this.helpText ? s`<fhi-body class="help-text" size="small"
|
|
64
|
+
>${this.helpText}</fhi-body
|
|
65
|
+
>` : null}
|
|
66
|
+
|
|
67
|
+
<div class="select-container">
|
|
68
|
+
<fhi-icon-chevron-down aria-hidden="true"></fhi-icon-chevron-down>
|
|
69
|
+
<select
|
|
70
|
+
id="select"
|
|
71
|
+
name="${this.name}"
|
|
72
|
+
.value="${this.value}"
|
|
73
|
+
@change="${this._handleSelectChange}"
|
|
74
|
+
@input="${this._handleSelectInput}"
|
|
75
|
+
?disabled="${this.disabled}"
|
|
76
|
+
>
|
|
77
|
+
${this._renderOptionElements()}
|
|
78
|
+
</select>
|
|
79
|
+
</div>
|
|
80
|
+
|
|
81
|
+
${this.message ? s` <fhi-body class="message" size="small">
|
|
82
|
+
${this.message}
|
|
83
|
+
</fhi-body>` : null}
|
|
84
|
+
|
|
85
|
+
<slot hidden @slotchange=${this._handleSlotChange}></slot>
|
|
86
|
+
`;
|
|
87
|
+
}
|
|
88
|
+
static {
|
|
89
|
+
this.styles = t`
|
|
90
|
+
:host {
|
|
91
|
+
display: flex;
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
color: var(--fhi-color-neutral-text-default);
|
|
94
|
+
-webkit-font-smoothing: antialiased;
|
|
95
|
+
|
|
96
|
+
.label {
|
|
97
|
+
color: inherit;
|
|
98
|
+
width: fit-content;
|
|
99
|
+
padding-bottom: var(--fhi-spacing-050);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
label:has(+ .help-text) {
|
|
103
|
+
.label {
|
|
104
|
+
padding-bottom: 0;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.help-text {
|
|
109
|
+
color: var(--fhi-color-neutral-text-subtle);
|
|
110
|
+
width: fit-content;
|
|
111
|
+
padding-bottom: var(--fhi-spacing-050);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.message {
|
|
115
|
+
color: inherit;
|
|
116
|
+
width: fit-content;
|
|
117
|
+
padding-top: var(--fhi-spacing-050);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.select-container {
|
|
121
|
+
position: relative;
|
|
122
|
+
display: flex;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
fhi-icon-chevron-down {
|
|
126
|
+
color: inherit;
|
|
127
|
+
position: absolute;
|
|
128
|
+
pointer-events: none;
|
|
129
|
+
align-self: center;
|
|
130
|
+
right: 8px;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/* TODO: Use customizable select styling when available. */
|
|
134
|
+
/* https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Forms/Customizable_select#browser_compatibility */
|
|
135
|
+
select {
|
|
136
|
+
color: inherit;
|
|
137
|
+
box-sizing: border-box;
|
|
138
|
+
flex: 1 1 auto;
|
|
139
|
+
|
|
140
|
+
font: normal var(--fhi-typography-body-medium-font-weight)
|
|
141
|
+
var(--fhi-typography-body-medium-font-size) /
|
|
142
|
+
var(--fhi-typography-body-medium-line-height)
|
|
143
|
+
var(--fhi-font-family-default);
|
|
144
|
+
|
|
145
|
+
background-color: var(--fhi-color-neutral-background-default);
|
|
146
|
+
border: var(--fhi-dimension-border-width) solid
|
|
147
|
+
var(--fhi-color-neutral-border-default);
|
|
148
|
+
border-radius: var(--fhi-border-radius-050);
|
|
149
|
+
padding: var(--fhi-spacing-100) var(--fhi-spacing-500)
|
|
150
|
+
var(--fhi-spacing-100) var(--fhi-spacing-150);
|
|
151
|
+
height: var(--fhi-spacing-500);
|
|
152
|
+
|
|
153
|
+
appearance: none;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
:host([disabled]) {
|
|
158
|
+
opacity: var(--fhi-opacity-disabled);
|
|
159
|
+
|
|
160
|
+
* {
|
|
161
|
+
cursor: not-allowed;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
:host([status='error']:not([disabled])) {
|
|
166
|
+
.label,
|
|
167
|
+
.help-text,
|
|
168
|
+
select {
|
|
169
|
+
color: var(--fhi-color-danger-text-default);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.message {
|
|
173
|
+
color: var(--fhi-color-danger-text-subtle);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
select {
|
|
177
|
+
border-color: var(--fhi-color-danger-border-strong);
|
|
178
|
+
background-color: var(--fhi-color-danger-background-default);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
:host(:not([status]):not([disabled])) {
|
|
183
|
+
select:not(:open) {
|
|
184
|
+
transition: all var(--fhi-motion-ease-default)
|
|
185
|
+
var(--fhi-motion-duration-quick);
|
|
186
|
+
&:hover {
|
|
187
|
+
border-color: var(--fhi-color-accent-border-default);
|
|
188
|
+
background-color: var(--fhi-color-accent-background-subtle);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
`;
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
o([e({
|
|
196
|
+
type: String,
|
|
197
|
+
reflect: !0
|
|
198
|
+
})], l.prototype, "name", void 0), o([e({ type: String })], l.prototype, "label", void 0), o([e({
|
|
199
|
+
type: String,
|
|
200
|
+
attribute: "help-text"
|
|
201
|
+
})], l.prototype, "helpText", void 0), o([e({
|
|
202
|
+
type: String,
|
|
203
|
+
reflect: !0
|
|
204
|
+
})], l.prototype, "value", void 0), o([e({
|
|
205
|
+
type: Boolean,
|
|
206
|
+
reflect: !0
|
|
207
|
+
})], l.prototype, "disabled", void 0), o([e({
|
|
208
|
+
type: String,
|
|
209
|
+
reflect: !0
|
|
210
|
+
})], l.prototype, "status", void 0), o([e({ type: String })], l.prototype, "message", void 0), o([i("select")], l.prototype, "selectElement", void 0), o([n()], l.prototype, "slotElements", void 0), l = o([r(c)], l);
|
|
211
|
+
//#endregion
|
|
212
|
+
export { l as FhiSelect, c as FhiSelectSelector };
|
|
213
|
+
|
|
214
|
+
//# sourceMappingURL=fhi-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fhi-select.js","names":[],"sources":["../../src/components/select/fhi-select/fhi-select.component.ts"],"sourcesContent":["import { html, css, LitElement } from 'lit';\nimport {\n customElement,\n property,\n queryAssignedElements,\n query,\n} from 'lit/decorators.js';\n\nimport { FhiSelectItem } from '../fhi-select-item/fhi-select-item.component';\n\nimport '../../typography/fhi-label/fhi-label.component';\nimport '../../typography/fhi-body/fhi-body.component';\nimport '../../icons/fhi-icon-chevron-down.component';\n\nexport const FhiSelectSelector = 'fhi-select';\n\n/**\n * ## FHI Select\n *\n * {@link https://designsystem.fhi.no/?path=/docs/komponenter-select--docs}\n *\n * The `<fhi-select>` component is used to create a dropdown list of options for users to choose from.\n * It provides a labeled select element (`fhi-select-item`) with optional placeholder text, status indication, and a message area for additional information or validation feedback.\n *\n * @tag fhi-select\n * @element fhi-select\n *\n * @slot - The default slot is used to provide the options for the select element. Each option should be represented by a `<fhi-select-item>` element.\n */\n@customElement(FhiSelectSelector)\nexport class FhiSelect extends LitElement {\n /** @internal */\n static readonly formAssociated = true;\n\n /**\n * The name attribute of the select element. This property is used to identify the select element when submitting a form.\n * @type {string}\n */\n @property({ type: String, reflect: true })\n name: string = '';\n\n /**\n * The label attribute of the select element. This property is used to provide a descriptive label for the select element.\n * @type {string}\n */\n @property({ type: String })\n label: string = '';\n\n /**\n * The message shown above the Select.\n * This is often used to provide additional information to the user.\n * @type {string}\n */\n @property({ type: String, attribute: 'help-text' })\n helpText?: string;\n\n /**\n * The value attribute of the select element. This property is used to identify the selected option when submitting a form.\n * @type {string}\n */\n @property({ type: String, reflect: true })\n value: string = '';\n\n /**\n * The disabled attribute of the select element. This property is used to disable the select element.\n * @type {boolean}\n */\n @property({ type: Boolean, reflect: true })\n disabled: boolean = false;\n\n /**\n * The status attribute of the select element. This property is used to indicate the validation status of the select element.\n * @type {'error' | undefined}\n */\n @property({ type: String, reflect: true })\n status?: 'error';\n\n /**\n * The message attribute of the select element. This property is used to provide a validation message for the select element.\n * @type {string}\n */\n @property({ type: String })\n message?: string;\n\n @query('select')\n selectElement!: HTMLSelectElement;\n\n @queryAssignedElements()\n slotElements!: Array<HTMLElement>;\n\n private _internals: ElementInternals;\n private _initialSelectedElement: HTMLOptionElement | null = null;\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n }\n\n public updated(changedProperties: Map<string, unknown>) {\n if (changedProperties.has('name')) {\n this._internals.setFormValue(this.value);\n }\n\n if (!this._initialSelectedElement) {\n this._setInitialSelectedElement();\n }\n }\n\n public formResetCallback(): void {\n this.value = this._initialSelectedElement?.value ?? '';\n this._internals.setFormValue(this.value);\n }\n\n private _setInitialSelectedElement() {\n this.selectElement.querySelectorAll('option').forEach(option => {\n if (option.selected) {\n this._initialSelectedElement = option;\n }\n });\n }\n\n private _handleSelectChange(): void {\n this.value = this.selectElement.value;\n this._internals.setFormValue(this.value);\n\n this._dispatchChangeEvent();\n }\n\n private _handleSelectInput(): void {\n this._dispatchInputEvent();\n }\n\n private _dispatchChangeEvent(): void {\n /**\n * @type {Event} - Standard DOM event with the type `change`.\n * This event is dispatched when the chosen option of the select changes.\n */\n this.dispatchEvent(\n new Event('change', {\n bubbles: true,\n }),\n );\n }\n\n private _dispatchInputEvent(): void {\n /**\n * @type {Event} - Standard DOM event with the type `input`.\n * This event is dispatched when the chosen option of the select changes.\n */\n this.dispatchEvent(\n new Event('input', {\n bubbles: true,\n composed: true,\n }),\n );\n }\n\n private _renderOptionElements() {\n const items = this.slotElements.filter(\n element => element.tagName.toLowerCase() === 'fhi-select-item',\n ) as FhiSelectItem[];\n\n if (items.length === 0) {\n return html``;\n }\n\n const options = html`\n ${items.map(item => {\n return html`<option\n value=\"${item.getAttribute('value') ?? item.textContent}\"\n label=\"${item.getAttribute('label') ?? ''}\"\n ?selected=\"${item.hasAttribute('selected')}\"\n >\n ${item.textContent}\n </option>`;\n })}\n `;\n\n return options;\n }\n\n private _handleSlotChange() {\n this.requestUpdate();\n\n this.updateComplete.then(() => {\n this.value = this.selectElement.value;\n this._internals.setFormValue(this.value);\n });\n }\n\n render() {\n return html`\n ${this.label\n ? html`\n <label for=\"select\">\n <fhi-label class=\"label\" size=\"small\">${this.label}</fhi-label>\n </label>\n `\n : null}\n ${this.helpText\n ? html`<fhi-body class=\"help-text\" size=\"small\"\n >${this.helpText}</fhi-body\n >`\n : null}\n\n <div class=\"select-container\">\n <fhi-icon-chevron-down aria-hidden=\"true\"></fhi-icon-chevron-down>\n <select\n id=\"select\"\n name=\"${this.name}\"\n .value=\"${this.value}\"\n @change=\"${this._handleSelectChange}\"\n @input=\"${this._handleSelectInput}\"\n ?disabled=\"${this.disabled}\"\n >\n ${this._renderOptionElements()}\n </select>\n </div>\n\n ${this.message\n ? html` <fhi-body class=\"message\" size=\"small\">\n ${this.message}\n </fhi-body>`\n : null}\n\n <slot hidden @slotchange=${this._handleSlotChange}></slot>\n `;\n }\n\n static styles = css`\n :host {\n display: flex;\n flex-direction: column;\n color: var(--fhi-color-neutral-text-default);\n -webkit-font-smoothing: antialiased;\n\n .label {\n color: inherit;\n width: fit-content;\n padding-bottom: var(--fhi-spacing-050);\n }\n\n label:has(+ .help-text) {\n .label {\n padding-bottom: 0;\n }\n }\n\n .help-text {\n color: var(--fhi-color-neutral-text-subtle);\n width: fit-content;\n padding-bottom: var(--fhi-spacing-050);\n }\n\n .message {\n color: inherit;\n width: fit-content;\n padding-top: var(--fhi-spacing-050);\n }\n\n .select-container {\n position: relative;\n display: flex;\n }\n\n fhi-icon-chevron-down {\n color: inherit;\n position: absolute;\n pointer-events: none;\n align-self: center;\n right: 8px;\n }\n\n /* TODO: Use customizable select styling when available. */\n /* https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Forms/Customizable_select#browser_compatibility */\n select {\n color: inherit;\n box-sizing: border-box;\n flex: 1 1 auto;\n\n font: normal var(--fhi-typography-body-medium-font-weight)\n var(--fhi-typography-body-medium-font-size) /\n var(--fhi-typography-body-medium-line-height)\n var(--fhi-font-family-default);\n\n background-color: var(--fhi-color-neutral-background-default);\n border: var(--fhi-dimension-border-width) solid\n var(--fhi-color-neutral-border-default);\n border-radius: var(--fhi-border-radius-050);\n padding: var(--fhi-spacing-100) var(--fhi-spacing-500)\n var(--fhi-spacing-100) var(--fhi-spacing-150);\n height: var(--fhi-spacing-500);\n\n appearance: none;\n }\n }\n\n :host([disabled]) {\n opacity: var(--fhi-opacity-disabled);\n\n * {\n cursor: not-allowed;\n }\n }\n\n :host([status='error']:not([disabled])) {\n .label,\n .help-text,\n select {\n color: var(--fhi-color-danger-text-default);\n }\n\n .message {\n color: var(--fhi-color-danger-text-subtle);\n }\n\n select {\n border-color: var(--fhi-color-danger-border-strong);\n background-color: var(--fhi-color-danger-background-default);\n }\n }\n\n :host(:not([status]):not([disabled])) {\n select:not(:open) {\n transition: all var(--fhi-motion-ease-default)\n var(--fhi-motion-duration-quick);\n &:hover {\n border-color: var(--fhi-color-accent-border-default);\n background-color: var(--fhi-color-accent-background-subtle);\n }\n }\n }\n `;\n}\n"],"mappings":";;;;;AAcA,IAAa,IAAoB,cAgB1B,IAAA,cAAwB,EAAW;;wBAEP;;CA6DjC,cAAc;EAEZ,AADA,MAAM,eAvDO,iBAOC,iBAeA,oBAOI,mCAuBwC,MAI1D,KAAK,aAAa,KAAK,gBAAgB;CACzC;CAEA,QAAe,GAAyC;EAKtD,AAJI,EAAkB,IAAI,MAAM,KAC9B,KAAK,WAAW,aAAa,KAAK,KAAK,GAGpC,KAAK,2BACR,KAAK,2BAA2B;CAEpC;CAEA,oBAAiC;EAE/B,AADA,KAAK,QAAQ,KAAK,yBAAyB,SAAS,IACpD,KAAK,WAAW,aAAa,KAAK,KAAK;CACzC;CAEA,6BAAqC;EACnC,KAAK,cAAc,iBAAiB,QAAQ,EAAE,SAAQ,MAAU;GAC9D,AAAI,EAAO,aACT,KAAK,0BAA0B;EAEnC,CAAC;CACH;CAEA,sBAAoC;EAIlC,AAHA,KAAK,QAAQ,KAAK,cAAc,OAChC,KAAK,WAAW,aAAa,KAAK,KAAK,GAEvC,KAAK,qBAAqB;CAC5B;CAEA,qBAAmC;EACjC,KAAK,oBAAoB;CAC3B;CAEA,uBAAqC;EAKnC,KAAK,cACH,IAAI,MAAM,UAAU,EAClB,SAAS,GACX,CAAC,CACH;CACF;CAEA,sBAAoC;EAKlC,KAAK,cACH,IAAI,MAAM,SAAS;GACjB,SAAS;GACT,UAAU;EACZ,CAAC,CACH;CACF;CAEA,wBAAgC;EAC9B,IAAM,IAAQ,KAAK,aAAa,QAC9B,MAAW,EAAQ,QAAQ,YAAY,MAAM,iBAC/C;EAkBA,OAhBI,EAAM,WAAW,IACZ,CAAI,KAeN,CAZa;QAChB,EAAM,KAAI,MACH,CAAI;mBACA,EAAK,aAAa,OAAO,KAAK,EAAK,YAAY;mBAC/C,EAAK,aAAa,OAAO,KAAK,GAAG;uBAC7B,EAAK,aAAa,UAAU,EAAE;;YAEzC,EAAK,YAAY;kBAEtB,EAAE;;CAIP;CAEA,oBAA4B;EAG1B,AAFA,KAAK,cAAc,GAEnB,KAAK,eAAe,WAAW;GAE7B,AADA,KAAK,QAAQ,KAAK,cAAc,OAChC,KAAK,WAAW,aAAa,KAAK,KAAK;EACzC,CAAC;CACH;CAEA,SAAS;EACP,OAAO,CAAI;QACP,KAAK,QACH,CAAI;;sDAEwC,KAAK,MAAM;;cAGvD,KAAK;QACP,KAAK,WACH,CAAI;eACC,KAAK,SAAS;eAEnB,KAAK;;;;;;kBAMG,KAAK,KAAK;oBACR,KAAK,MAAM;qBACV,KAAK,oBAAoB;oBAC1B,KAAK,mBAAmB;uBACrB,KAAK,SAAS;;YAEzB,KAAK,sBAAsB,EAAE;;;;QAIjC,KAAK,UACH,CAAI;cACA,KAAK,QAAQ;yBAEjB,KAAK;;iCAEkB,KAAK,kBAAkB;;CAEtD;;gBAEgB,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwGrB;GAvSG,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,QAAA,KAAA,CAAA,MAOxC,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,EAAA,WAAA,SAAA,KAAA,CAAA,MAQzB,EAAS;CAAE,MAAM;CAAQ,WAAW;AAAY,CAAC,CAAA,GAAA,EAAA,WAAA,YAAA,KAAA,CAAA,MAOjD,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,SAAA,KAAA,CAAA,MAOxC,EAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,YAAA,KAAA,CAAA,MAOzC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,UAAA,KAAA,CAAA,MAOxC,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,EAAA,WAAA,WAAA,KAAA,CAAA,MAGzB,EAAM,QAAQ,CAAA,GAAA,EAAA,WAAA,iBAAA,KAAA,CAAA,MAGd,EAAsB,CAAA,GAAA,EAAA,WAAA,gBAAA,KAAA,CAAA,UA1DxB,EAAc,CAAiB,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"kind":"javascript-module","path":"src/components/select/fhi-select/fhi-select.component.ts","declarations":[{"kind":"class","description":"## FHI Select\n\nhttps://designsystem.fhi.no/?path=/docs/komponenter-select--docs\n\nThe `<fhi-select>` component is used to create a dropdown list of options for users to choose from.\nIt provides a labeled select element (`fhi-select-item`) with optional placeholder text, status indication, and a message area for additional information or validation feedback.","name":"FhiSelect","slots":[{"description":"The default slot is used to provide the options for the select element. Each option should be represented by a `<fhi-select-item>` element.","name":""}],"members":[{"kind":"method","name":"_dispatchChangeEvent","privacy":"private","return":{"type":{"text":"void"}}},{"kind":"method","name":"_dispatchInputEvent","privacy":"private","return":{"type":{"text":"void"}}},{"kind":"method","name":"_handleSelectChange","privacy":"private","return":{"type":{"text":"void"}}},{"kind":"method","name":"_handleSelectInput","privacy":"private","return":{"type":{"text":"void"}}},{"kind":"method","name":"_handleSlotChange","privacy":"private"},{"kind":"field","name":"_initialSelectedElement","type":{"text":"HTMLOptionElement | null"},"privacy":"private","default":"null"},{"kind":"field","name":"_internals","type":{"text":"ElementInternals"},"privacy":"private"},{"kind":"method","name":"_renderOptionElements","privacy":"private"},{"kind":"method","name":"_setInitialSelectedElement","privacy":"private"},{"kind":"field","name":"disabled","type":{"text":"boolean"},"default":"false","description":"The disabled attribute of the select element. This property is used to disable the select element.","attribute":"disabled","reflects":true},{"kind":"method","name":"formResetCallback","privacy":"public","return":{"type":{"text":"void"}}},{"kind":"field","name":"helpText","type":{"text":"string"},"description":"The message shown above the Select.\nThis is often used to provide additional information to the user.","attribute":"help-text"},{"kind":"field","name":"label","type":{"text":"string"},"default":"''","description":"The label attribute of the select element. This property is used to provide a descriptive label for the select element.","attribute":"label"},{"kind":"field","name":"message","type":{"text":"string"},"description":"The message attribute of the select element. This property is used to provide a validation message for the select element.","attribute":"message"},{"kind":"field","name":"name","type":{"text":"string"},"default":"''","description":"The name attribute of the select element. This property is used to identify the select element when submitting a form.","attribute":"name","reflects":true},{"kind":"field","name":"selectElement","type":{"text":"HTMLSelectElement"}},{"kind":"field","name":"slotElements","type":{"text":"Array<HTMLElement>"}},{"kind":"field","name":"status","type":{"text":"'error' | undefined"},"description":"The status attribute of the select element. This property is used to indicate the validation status of the select element.","attribute":"status","reflects":true},{"kind":"field","name":"value","type":{"text":"string"},"default":"''","description":"The value attribute of the select element. This property is used to identify the selected option when submitting a form.","attribute":"value","reflects":true}],"events":[{"name":"change","type":{"text":"Event"},"description":"Standard DOM event with the type `change`.\nThis event is dispatched when the chosen option of the select changes."},{"name":"input","type":{"text":"Event"},"description":"Standard DOM event with the type `input`.\nThis event is dispatched when the chosen option of the select changes."}],"attributes":[{"name":"disabled","type":{"text":"boolean"},"default":"false","description":"The disabled attribute of the select element. This property is used to disable the select element.","fieldName":"disabled"},{"name":"help-text","type":{"text":"string"},"description":"The message shown above the Select.\nThis is often used to provide additional information to the user.","fieldName":"helpText"},{"name":"label","type":{"text":"string"},"default":"''","description":"The label attribute of the select element. This property is used to provide a descriptive label for the select element.","fieldName":"label"},{"name":"message","type":{"text":"string"},"description":"The message attribute of the select element. This property is used to provide a validation message for the select element.","fieldName":"message"},{"name":"name","type":{"text":"string"},"default":"''","description":"The name attribute of the select element. This property is used to identify the select element when submitting a form.","fieldName":"name"},{"name":"status","type":{"text":"'error' | undefined"},"description":"The status attribute of the select element. This property is used to indicate the validation status of the select element.","fieldName":"status"},{"name":"value","type":{"text":"string"},"default":"''","description":"The value attribute of the select element. This property is used to identify the selected option when submitting a form.","fieldName":"value"}],"superclass":{"name":"LitElement","package":"lit"},"tagName":"fhi-select","customElement":true},{"kind":"variable","name":"FhiSelectSelector","type":{"text":"string"},"default":"'fhi-select'"}]}
|
package/index.js
CHANGED
|
@@ -117,7 +117,9 @@ import { FhiIconUser as hr, FhiIconUserSelector as gr } from "./fhi-icon-user.js
|
|
|
117
117
|
import { FhiDataTable as _r, FhiDataTableSelector as vr } from "./fhi-data-table.js";
|
|
118
118
|
import { FhiDataTableCell as yr, FhiDataTableCellSelector as br } from "./fhi-data-table-cell.js";
|
|
119
119
|
import { FhiDataTableRow as xr, FhiDataTableRowSelector as Sr } from "./fhi-data-table-row.js";
|
|
120
|
-
import {
|
|
121
|
-
import {
|
|
122
|
-
import {
|
|
123
|
-
|
|
120
|
+
import { FhiLabel as Cr, FhiLabelSelector as wr } from "./fhi-label.js";
|
|
121
|
+
import { FhiSelect as Tr, FhiSelectSelector as Er } from "./fhi-select.js";
|
|
122
|
+
import { FhiSelectItem as Dr, FhiSelectItemSelector as Or } from "./fhi-select-item.js";
|
|
123
|
+
import { FhiDisplay as kr, FhiDisplaySelector as Ar } from "./fhi-display.js";
|
|
124
|
+
import { FhiTitle as jr, FhiTitleSelector as Mr } from "./fhi-title.js";
|
|
125
|
+
export { b as FhiBody, x as FhiBodySelector, e as FhiButton, t as FhiButtonSelector, n as FhiCheckbox, r as FhiCheckboxSelector, _r as FhiDataTable, yr as FhiDataTableCell, br as FhiDataTableCellSelector, xr as FhiDataTableRow, Sr as FhiDataTableRowSelector, vr as FhiDataTableSelector, s as FhiDateInput, o as FhiDateInputSelector, kr as FhiDisplay, Ar as FhiDisplaySelector, c as FhiFlex, l as FhiFlexSelector, u as FhiGrid, d as FhiGridSelector, m as FhiHeadline, h as FhiHeadlineSelector, M as FhiIconArrowDown, O as FhiIconArrowDownLeft, k as FhiIconArrowDownLeftSelector, A as FhiIconArrowDownRight, j as FhiIconArrowDownRightSelector, N as FhiIconArrowDownSelector, P as FhiIconArrowLeft, F as FhiIconArrowLeftSelector, R as FhiIconArrowRight, I as FhiIconArrowRightLeft, L as FhiIconArrowRightLeftSelector, z as FhiIconArrowRightSelector, K as FhiIconArrowUp, B as FhiIconArrowUpDown, V as FhiIconArrowUpDownSelector, H as FhiIconArrowUpLeft, U as FhiIconArrowUpLeftSelector, W as FhiIconArrowUpRight, G as FhiIconArrowUpRightSelector, q as FhiIconArrowUpSelector, J as FhiIconBell, Y as FhiIconBellSelector, i as FhiIconCalendar, X as FhiIconCalendarClock, Z as FhiIconCalendarClockSelector, a as FhiIconCalendarSelector, ee as FhiIconChartBar, te as FhiIconChartBarSelector, Q as FhiIconChartBarStacked, $ as FhiIconChartBarStackedSelector, ie as FhiIconChartColumn, ae as FhiIconChartColumnSelector, ne as FhiIconChartColumnStacked, re as FhiIconChartColumnStackedSelector, oe as FhiIconChartLine, se as FhiIconChartLineSelector, ce as FhiIconChartNoAxesCombined, le as FhiIconChartNoAxesCombinedSelector, ue as FhiIconChartPie, de as FhiIconChartPieSelector, fe as FhiIconCheck, pe as FhiIconCheckSelector, me as FhiIconChevronDown, he as FhiIconChevronDownSelector, ge as FhiIconChevronLeft, _e as FhiIconChevronLeftSelector, ve as FhiIconChevronRight, ye as FhiIconChevronRightSelector, be as FhiIconChevronUp, xe as FhiIconChevronUpSelector, Se as FhiIconChevronsDown, Ce as FhiIconChevronsDownSelector, we as FhiIconChevronsLeft, Te as FhiIconChevronsLeftSelector, Ee as FhiIconChevronsRight, De as FhiIconChevronsRightSelector, Oe as FhiIconChevronsUp, ke as FhiIconChevronsUpSelector, ct as FhiIconCircle, Ae as FhiIconCircleArrowDown, je as FhiIconCircleArrowDownSelector, Me as FhiIconCircleArrowLeft, Ne as FhiIconCircleArrowLeftSelector, Pe as FhiIconCircleArrowRight, Fe as FhiIconCircleArrowRightSelector, Ie as FhiIconCircleArrowUp, Le as FhiIconCircleArrowUpSelector, Be as FhiIconCircleCheck, Re as FhiIconCircleCheckBig, ze as FhiIconCircleCheckBigSelector, Ve as FhiIconCircleCheckSelector, He as FhiIconCircleChevronDown, Ue as FhiIconCircleChevronDownSelector, We as FhiIconCircleChevronLeft, Ge as FhiIconCircleChevronLeftSelector, Ke as FhiIconCircleChevronRight, qe as FhiIconCircleChevronRightSelector, Je as FhiIconCircleChevronUp, Ye as FhiIconCircleChevronUpSelector, Xe as FhiIconCircleExclamation, Ze as FhiIconCircleExclamationSelector, Qe as FhiIconCircleInfo, $e as FhiIconCircleInfoSelector, et as FhiIconCircleMinus, tt as FhiIconCircleMinusSelector, nt as FhiIconCirclePlus, rt as FhiIconCirclePlusSelector, it as FhiIconCircleQuestion, at as FhiIconCircleQuestionSelector, lt as FhiIconCircleSelector, ot as FhiIconCircleX, st as FhiIconCircleXSelector, ut as FhiIconClock, dt as FhiIconClockSelector, ft as FhiIconCopy, pt as FhiIconCopySelector, mt as FhiIconDownload, ht as FhiIconDownloadSelector, vt as FhiIconEllipsis, yt as FhiIconEllipsisSelector, gt as FhiIconEllipsisVertical, _t as FhiIconEllipsisVerticalSelector, bt as FhiIconExclamation, xt as FhiIconExclamationSelector, St as FhiIconExpand, Ct as FhiIconExpandSelector, wt as FhiIconExternalLink, Tt as FhiIconExternalLinkSelector, Ot as FhiIconEye, Et as FhiIconEyeOff, Dt as FhiIconEyeOffSelector, kt as FhiIconEyeSelector, Mt as FhiIconFile, Nt as FhiIconFileSelector, At as FhiIconFileText, jt as FhiIconFileTextSelector, Pt as FhiIconFilter, Ft as FhiIconFilterSelector, It as FhiIconFolder, Lt as FhiIconFolderSelector, Rt as FhiIconGear, zt as FhiIconGearSelector, Bt as FhiIconGrid9Dots, Vt as FhiIconGrid9DotsSelector, Ht as FhiIconGripHorizontal, Ut as FhiIconGripHorizontalSelector, Wt as FhiIconGripVertical, Gt as FhiIconGripVerticalSelector, Kt as FhiIconHistory, qt as FhiIconHistorySelector, Jt as FhiIconInfo, Yt as FhiIconInfoSelector, en as FhiIconLink, Qt as FhiIconLink2, Xt as FhiIconLink2Off, Zt as FhiIconLink2OffSelector, $t as FhiIconLink2Selector, tn as FhiIconLinkSelector, an as FhiIconLock, nn as FhiIconLockOpen, rn as FhiIconLockOpenSelector, on as FhiIconLockSelector, sn as FhiIconLogIn, cn as FhiIconLogInSelector, ln as FhiIconLogOut, un as FhiIconLogOutSelector, dn as FhiIconMail, fn as FhiIconMailSelector, pn as FhiIconMapPin, mn as FhiIconMapPinSelector, hn as FhiIconMenu, gn as FhiIconMenuSelector, _n as FhiIconMessage, vn as FhiIconMessageSelector, yn as FhiIconMinus, bn as FhiIconMinusSelector, xn as FhiIconOctagonAlert, Sn as FhiIconOctagonAlertSelector, Cn as FhiIconPaperclip, wn as FhiIconPaperclipSelector, Tn as FhiIconPencil, En as FhiIconPencilSelector, Dn as FhiIconPhone, On as FhiIconPhoneSelector, jn as FhiIconPin, kn as FhiIconPinOff, An as FhiIconPinOffSelector, Mn as FhiIconPinSelector, Nn as FhiIconPlus, Pn as FhiIconPlusSelector, Fn as FhiIconPrinter, In as FhiIconPrinterSelector, Ln as FhiIconQuestion, Rn as FhiIconQuestionSelector, zn as FhiIconRefresh, Bn as FhiIconRefreshSelector, Vn as FhiIconRotateLeft, Hn as FhiIconRotateLeftSelector, Un as FhiIconRotateRight, Wn as FhiIconRotateRightSelector, Gn as FhiIconSearch, Kn as FhiIconSearchSelector, qn as FhiIconSend, Jn as FhiIconSendSelector, Yn as FhiIconShare, Xn as FhiIconShareSelector, Zn as FhiIconSheet, Qn as FhiIconSheetSelector, sr as FhiIconSquare, tr as FhiIconSquareCheck, $n as FhiIconSquareCheckBig, er as FhiIconSquareCheckBigSelector, nr as FhiIconSquareCheckSelector, rr as FhiIconSquarePen, ir as FhiIconSquarePenSelector, cr as FhiIconSquareSelector, ar as FhiIconSquareX, or as FhiIconSquareXSelector, lr as FhiIconTrash, ur as FhiIconTrashSelector, dr as FhiIconTriangleAlert, fr as FhiIconTriangleAlertSelector, pr as FhiIconUpload, mr as FhiIconUploadSelector, hr as FhiIconUser, gr as FhiIconUserSelector, f as FhiIconX, p as FhiIconXSelector, Cr as FhiLabel, wr as FhiLabelSelector, g as FhiModalDialog, _ as FhiModalDialogSelector, v as FhiRadio, y as FhiRadioSelector, Tr as FhiSelect, Dr as FhiSelectItem, Or as FhiSelectItemSelector, Er as FhiSelectSelector, S as FhiTag, C as FhiTagSelector, w as FhiTextInput, T as FhiTextInputSelector, jr as FhiTitle, Mr as FhiTitleSelector, D as FhiTooltip, E as FhiTooltipSelector };
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"title":"FHI Designsystem","author":"FHI Designsystem team","name":"@folkehelseinstituttet/designsystem","version":"0.40.7","description":"The official design system for the Norwegian Institute of Public Health implemented as web components","keywords":["fhi","folkehelseinstituttet","components","design","system","framework","frontend","web-component","web component","ui"],"customElements":".temp/custom-elements.json","web-types":"./web-types.json","homepage":"https://github.com/FHIDev/Fhi.Designsystem","bugs":{"url":"https://github.com/FHIDev/Fhi.Designsystem/issues"},"repository":{"type":"git","url":"git+https://github.com/FHIDev/Fhi.Designsystem.git"},"license":"MIT","browserslist":["> 0.5%","last 2 versions"],"main":"index.js","type":"module","scripts":{"dev":"vite","build":"pnpm analyze && pnpm build:cdn && pnpm build:npm && pnpm build:github && pnpm clean","build:cdn":"tsc && cross-env DEPLOY_TARGET=cdn vite build","build:npm":"tsc && cross-env DEPLOY_TARGET=npm vite build","build:github":"tsc && cross-env DEPLOY_TARGET=github vite build","storybook":"storybook dev -p 6006","storybook:build":"pnpm analyze && storybook build","generate:icons":"node ./scripts/generate-icon-components.js --input ./src/assets/icons/ --output ./src/components/icons --clean-output-folder","test":"wtr ./**/*.test.ts --node-resolve --playwright --browsers chromium webkit","lint":"pnpm lint:eslint && pnpm lint:prettier","lint:eslint":"eslint \"**/*.{js,ts}\"","lint:prettier":"prettier \"**/*.js\" --check --ignore-path .gitignore","format":"pnpm format:eslint && pnpm format:prettier","format:eslint":"eslint \"**/*.{js,ts}\" --fix","format:prettier":"prettier \"**/*.js\" --write --ignore-path .gitignore","publish:npm":"pnpm build && cd dist/npm && npm publish","changelog:ci":"release-it --ci","analyze":"cem analyze --litelement","clean":"rimraf .temp","build-storybook":"storybook build"},"peerDependencies":{"lit":"~3.2.0"},"devDependencies":{"@custom-elements-manifest/analyzer":"^0.11.0","@esm-bundle/chai":"4.3.4-fix.0","@open-wc/testing":"~4.0.0","@playwright/test":"^1.61.0","@release-it/conventional-changelog":"~11.0.1","@storybook/addon-docs":"^10.4.6","@storybook/web-components-vite":"^10.4.6","@types/mocha":"~10.0.10","@types/node":"~26.0.0","@types/react":"^19.2.17","@wc-toolkit/cem-sorter":"^1.0.1","@wc-toolkit/type-parser":"^1.2.1","@web/dev-server":"~0.4.6","@web/dev-server-esbuild":"~1.0.5","@web/test-runner":"~0.20.2","@web/test-runner-playwright":"~0.11.1","cross-env":"10.1.0","custom-element-jet-brains-integration":"^1.7.0","lit":"~3.3.3","mocha":"~11.7.6","playwright":"^1.61.0","release-it":"~20.2.0","rimraf":"^6.1.3","storybook":"^10.4.6","storybook-design-token":"^5.0.0","svgo":"^4.0.1","vite":"~8.0.16","vite-plugin-static-copy":"~4.1.1"},"dependencies":{"@floating-ui/dom":"^1.7.6"},"pnpm":{"overrides":{"diff@>=6.0.0 <8.0.3":">=8.0.3","serialize-javascript@<=7.0.2":">=7.0.3","yaml@>=2.0.0 <2.8.3":">=2.8.3","serialize-javascript@>=5.0.0 <7.0.5":">=7.0.5","esbuild@>=0.27.3 <0.28.1":">=0.28.1","undici@>=7.23.0 <7.28.0":">=7.28.0","undici@>=7.0.0 <7.28.0":">=7.28.0"}},"exports":{"./fhi-button":{"default":"./fhi-button.js","types":"./fhi-button.d.ts"},"./fhi-checkbox":{"default":"./fhi-checkbox.js","types":"./fhi-checkbox.d.ts"},"./fhi-date-input":{"default":"./fhi-date-input.js","types":"./fhi-date-input.d.ts"},"./fhi-flex":{"default":"./fhi-flex.js","types":"./fhi-flex.d.ts"},"./fhi-grid":{"default":"./fhi-grid.js","types":"./fhi-grid.d.ts"},"./fhi-modal-dialog":{"default":"./fhi-modal-dialog.js","types":"./fhi-modal-dialog.d.ts"},"./fhi-radio":{"default":"./fhi-radio.js","types":"./fhi-radio.d.ts"},"./fhi-tag":{"default":"./fhi-tag.js","types":"./fhi-tag.d.ts"},"./fhi-text-input":{"default":"./fhi-text-input.js","types":"./fhi-text-input.d.ts"},"./fhi-tooltip":{"default":"./fhi-tooltip.js","types":"./fhi-tooltip.d.ts"},"./fhi-icon-arrow-down-left":{"default":"./fhi-icon-arrow-down-left.js","types":"./fhi-icon-arrow-down-left.d.ts"},"./fhi-icon-arrow-down-right":{"default":"./fhi-icon-arrow-down-right.js","types":"./fhi-icon-arrow-down-right.d.ts"},"./fhi-icon-arrow-down":{"default":"./fhi-icon-arrow-down.js","types":"./fhi-icon-arrow-down.d.ts"},"./fhi-icon-arrow-left":{"default":"./fhi-icon-arrow-left.js","types":"./fhi-icon-arrow-left.d.ts"},"./fhi-icon-arrow-right-left":{"default":"./fhi-icon-arrow-right-left.js","types":"./fhi-icon-arrow-right-left.d.ts"},"./fhi-icon-arrow-right":{"default":"./fhi-icon-arrow-right.js","types":"./fhi-icon-arrow-right.d.ts"},"./fhi-icon-arrow-up-down":{"default":"./fhi-icon-arrow-up-down.js","types":"./fhi-icon-arrow-up-down.d.ts"},"./fhi-icon-arrow-up-left":{"default":"./fhi-icon-arrow-up-left.js","types":"./fhi-icon-arrow-up-left.d.ts"},"./fhi-icon-arrow-up-right":{"default":"./fhi-icon-arrow-up-right.js","types":"./fhi-icon-arrow-up-right.d.ts"},"./fhi-icon-arrow-up":{"default":"./fhi-icon-arrow-up.js","types":"./fhi-icon-arrow-up.d.ts"},"./fhi-icon-bell":{"default":"./fhi-icon-bell.js","types":"./fhi-icon-bell.d.ts"},"./fhi-icon-calendar-clock":{"default":"./fhi-icon-calendar-clock.js","types":"./fhi-icon-calendar-clock.d.ts"},"./fhi-icon-calendar":{"default":"./fhi-icon-calendar.js","types":"./fhi-icon-calendar.d.ts"},"./fhi-icon-chart-bar-stacked":{"default":"./fhi-icon-chart-bar-stacked.js","types":"./fhi-icon-chart-bar-stacked.d.ts"},"./fhi-icon-chart-bar":{"default":"./fhi-icon-chart-bar.js","types":"./fhi-icon-chart-bar.d.ts"},"./fhi-icon-chart-column-stacked":{"default":"./fhi-icon-chart-column-stacked.js","types":"./fhi-icon-chart-column-stacked.d.ts"},"./fhi-icon-chart-column":{"default":"./fhi-icon-chart-column.js","types":"./fhi-icon-chart-column.d.ts"},"./fhi-icon-chart-line":{"default":"./fhi-icon-chart-line.js","types":"./fhi-icon-chart-line.d.ts"},"./fhi-icon-chart-no-axes-combined":{"default":"./fhi-icon-chart-no-axes-combined.js","types":"./fhi-icon-chart-no-axes-combined.d.ts"},"./fhi-icon-chart-pie":{"default":"./fhi-icon-chart-pie.js","types":"./fhi-icon-chart-pie.d.ts"},"./fhi-icon-check":{"default":"./fhi-icon-check.js","types":"./fhi-icon-check.d.ts"},"./fhi-icon-chevron-down":{"default":"./fhi-icon-chevron-down.js","types":"./fhi-icon-chevron-down.d.ts"},"./fhi-icon-chevron-left":{"default":"./fhi-icon-chevron-left.js","types":"./fhi-icon-chevron-left.d.ts"},"./fhi-icon-chevron-right":{"default":"./fhi-icon-chevron-right.js","types":"./fhi-icon-chevron-right.d.ts"},"./fhi-icon-chevron-up":{"default":"./fhi-icon-chevron-up.js","types":"./fhi-icon-chevron-up.d.ts"},"./fhi-icon-chevrons-down":{"default":"./fhi-icon-chevrons-down.js","types":"./fhi-icon-chevrons-down.d.ts"},"./fhi-icon-chevrons-left":{"default":"./fhi-icon-chevrons-left.js","types":"./fhi-icon-chevrons-left.d.ts"},"./fhi-icon-chevrons-right":{"default":"./fhi-icon-chevrons-right.js","types":"./fhi-icon-chevrons-right.d.ts"},"./fhi-icon-chevrons-up":{"default":"./fhi-icon-chevrons-up.js","types":"./fhi-icon-chevrons-up.d.ts"},"./fhi-icon-circle-arrow-down":{"default":"./fhi-icon-circle-arrow-down.js","types":"./fhi-icon-circle-arrow-down.d.ts"},"./fhi-icon-circle-arrow-left":{"default":"./fhi-icon-circle-arrow-left.js","types":"./fhi-icon-circle-arrow-left.d.ts"},"./fhi-icon-circle-arrow-right":{"default":"./fhi-icon-circle-arrow-right.js","types":"./fhi-icon-circle-arrow-right.d.ts"},"./fhi-icon-circle-arrow-up":{"default":"./fhi-icon-circle-arrow-up.js","types":"./fhi-icon-circle-arrow-up.d.ts"},"./fhi-icon-circle-check-big":{"default":"./fhi-icon-circle-check-big.js","types":"./fhi-icon-circle-check-big.d.ts"},"./fhi-icon-circle-check":{"default":"./fhi-icon-circle-check.js","types":"./fhi-icon-circle-check.d.ts"},"./fhi-icon-circle-chevron-down":{"default":"./fhi-icon-circle-chevron-down.js","types":"./fhi-icon-circle-chevron-down.d.ts"},"./fhi-icon-circle-chevron-left":{"default":"./fhi-icon-circle-chevron-left.js","types":"./fhi-icon-circle-chevron-left.d.ts"},"./fhi-icon-circle-chevron-right":{"default":"./fhi-icon-circle-chevron-right.js","types":"./fhi-icon-circle-chevron-right.d.ts"},"./fhi-icon-circle-chevron-up":{"default":"./fhi-icon-circle-chevron-up.js","types":"./fhi-icon-circle-chevron-up.d.ts"},"./fhi-icon-circle-exclamation":{"default":"./fhi-icon-circle-exclamation.js","types":"./fhi-icon-circle-exclamation.d.ts"},"./fhi-icon-circle-info":{"default":"./fhi-icon-circle-info.js","types":"./fhi-icon-circle-info.d.ts"},"./fhi-icon-circle-minus":{"default":"./fhi-icon-circle-minus.js","types":"./fhi-icon-circle-minus.d.ts"},"./fhi-icon-circle-plus":{"default":"./fhi-icon-circle-plus.js","types":"./fhi-icon-circle-plus.d.ts"},"./fhi-icon-circle-question":{"default":"./fhi-icon-circle-question.js","types":"./fhi-icon-circle-question.d.ts"},"./fhi-icon-circle-x":{"default":"./fhi-icon-circle-x.js","types":"./fhi-icon-circle-x.d.ts"},"./fhi-icon-circle":{"default":"./fhi-icon-circle.js","types":"./fhi-icon-circle.d.ts"},"./fhi-icon-clock":{"default":"./fhi-icon-clock.js","types":"./fhi-icon-clock.d.ts"},"./fhi-icon-copy":{"default":"./fhi-icon-copy.js","types":"./fhi-icon-copy.d.ts"},"./fhi-icon-download":{"default":"./fhi-icon-download.js","types":"./fhi-icon-download.d.ts"},"./fhi-icon-ellipsis-vertical":{"default":"./fhi-icon-ellipsis-vertical.js","types":"./fhi-icon-ellipsis-vertical.d.ts"},"./fhi-icon-ellipsis":{"default":"./fhi-icon-ellipsis.js","types":"./fhi-icon-ellipsis.d.ts"},"./fhi-icon-exclamation":{"default":"./fhi-icon-exclamation.js","types":"./fhi-icon-exclamation.d.ts"},"./fhi-icon-expand":{"default":"./fhi-icon-expand.js","types":"./fhi-icon-expand.d.ts"},"./fhi-icon-external-link":{"default":"./fhi-icon-external-link.js","types":"./fhi-icon-external-link.d.ts"},"./fhi-icon-eye-off":{"default":"./fhi-icon-eye-off.js","types":"./fhi-icon-eye-off.d.ts"},"./fhi-icon-eye":{"default":"./fhi-icon-eye.js","types":"./fhi-icon-eye.d.ts"},"./fhi-icon-file-text":{"default":"./fhi-icon-file-text.js","types":"./fhi-icon-file-text.d.ts"},"./fhi-icon-file":{"default":"./fhi-icon-file.js","types":"./fhi-icon-file.d.ts"},"./fhi-icon-filter":{"default":"./fhi-icon-filter.js","types":"./fhi-icon-filter.d.ts"},"./fhi-icon-folder":{"default":"./fhi-icon-folder.js","types":"./fhi-icon-folder.d.ts"},"./fhi-icon-gear":{"default":"./fhi-icon-gear.js","types":"./fhi-icon-gear.d.ts"},"./fhi-icon-grid-9-dots":{"default":"./fhi-icon-grid-9-dots.js","types":"./fhi-icon-grid-9-dots.d.ts"},"./fhi-icon-grip-horizontal":{"default":"./fhi-icon-grip-horizontal.js","types":"./fhi-icon-grip-horizontal.d.ts"},"./fhi-icon-grip-vertical":{"default":"./fhi-icon-grip-vertical.js","types":"./fhi-icon-grip-vertical.d.ts"},"./fhi-icon-history":{"default":"./fhi-icon-history.js","types":"./fhi-icon-history.d.ts"},"./fhi-icon-info":{"default":"./fhi-icon-info.js","types":"./fhi-icon-info.d.ts"},"./fhi-icon-link-2-off":{"default":"./fhi-icon-link-2-off.js","types":"./fhi-icon-link-2-off.d.ts"},"./fhi-icon-link-2":{"default":"./fhi-icon-link-2.js","types":"./fhi-icon-link-2.d.ts"},"./fhi-icon-link":{"default":"./fhi-icon-link.js","types":"./fhi-icon-link.d.ts"},"./fhi-icon-lock-open":{"default":"./fhi-icon-lock-open.js","types":"./fhi-icon-lock-open.d.ts"},"./fhi-icon-lock":{"default":"./fhi-icon-lock.js","types":"./fhi-icon-lock.d.ts"},"./fhi-icon-log-in":{"default":"./fhi-icon-log-in.js","types":"./fhi-icon-log-in.d.ts"},"./fhi-icon-log-out":{"default":"./fhi-icon-log-out.js","types":"./fhi-icon-log-out.d.ts"},"./fhi-icon-mail":{"default":"./fhi-icon-mail.js","types":"./fhi-icon-mail.d.ts"},"./fhi-icon-map-pin":{"default":"./fhi-icon-map-pin.js","types":"./fhi-icon-map-pin.d.ts"},"./fhi-icon-menu":{"default":"./fhi-icon-menu.js","types":"./fhi-icon-menu.d.ts"},"./fhi-icon-message":{"default":"./fhi-icon-message.js","types":"./fhi-icon-message.d.ts"},"./fhi-icon-minus":{"default":"./fhi-icon-minus.js","types":"./fhi-icon-minus.d.ts"},"./fhi-icon-octagon-alert":{"default":"./fhi-icon-octagon-alert.js","types":"./fhi-icon-octagon-alert.d.ts"},"./fhi-icon-paperclip":{"default":"./fhi-icon-paperclip.js","types":"./fhi-icon-paperclip.d.ts"},"./fhi-icon-pencil":{"default":"./fhi-icon-pencil.js","types":"./fhi-icon-pencil.d.ts"},"./fhi-icon-phone":{"default":"./fhi-icon-phone.js","types":"./fhi-icon-phone.d.ts"},"./fhi-icon-pin-off":{"default":"./fhi-icon-pin-off.js","types":"./fhi-icon-pin-off.d.ts"},"./fhi-icon-pin":{"default":"./fhi-icon-pin.js","types":"./fhi-icon-pin.d.ts"},"./fhi-icon-plus":{"default":"./fhi-icon-plus.js","types":"./fhi-icon-plus.d.ts"},"./fhi-icon-printer":{"default":"./fhi-icon-printer.js","types":"./fhi-icon-printer.d.ts"},"./fhi-icon-question":{"default":"./fhi-icon-question.js","types":"./fhi-icon-question.d.ts"},"./fhi-icon-refresh":{"default":"./fhi-icon-refresh.js","types":"./fhi-icon-refresh.d.ts"},"./fhi-icon-rotate-left":{"default":"./fhi-icon-rotate-left.js","types":"./fhi-icon-rotate-left.d.ts"},"./fhi-icon-rotate-right":{"default":"./fhi-icon-rotate-right.js","types":"./fhi-icon-rotate-right.d.ts"},"./fhi-icon-search":{"default":"./fhi-icon-search.js","types":"./fhi-icon-search.d.ts"},"./fhi-icon-send":{"default":"./fhi-icon-send.js","types":"./fhi-icon-send.d.ts"},"./fhi-icon-share":{"default":"./fhi-icon-share.js","types":"./fhi-icon-share.d.ts"},"./fhi-icon-sheet":{"default":"./fhi-icon-sheet.js","types":"./fhi-icon-sheet.d.ts"},"./fhi-icon-square-check-big":{"default":"./fhi-icon-square-check-big.js","types":"./fhi-icon-square-check-big.d.ts"},"./fhi-icon-square-check":{"default":"./fhi-icon-square-check.js","types":"./fhi-icon-square-check.d.ts"},"./fhi-icon-square-pen":{"default":"./fhi-icon-square-pen.js","types":"./fhi-icon-square-pen.d.ts"},"./fhi-icon-square-x":{"default":"./fhi-icon-square-x.js","types":"./fhi-icon-square-x.d.ts"},"./fhi-icon-square":{"default":"./fhi-icon-square.js","types":"./fhi-icon-square.d.ts"},"./fhi-icon-trash":{"default":"./fhi-icon-trash.js","types":"./fhi-icon-trash.d.ts"},"./fhi-icon-triangle-alert":{"default":"./fhi-icon-triangle-alert.js","types":"./fhi-icon-triangle-alert.d.ts"},"./fhi-icon-upload":{"default":"./fhi-icon-upload.js","types":"./fhi-icon-upload.d.ts"},"./fhi-icon-user":{"default":"./fhi-icon-user.js","types":"./fhi-icon-user.d.ts"},"./fhi-icon-x":{"default":"./fhi-icon-x.js","types":"./fhi-icon-x.d.ts"},"./fhi-data-table":{"default":"./fhi-data-table.js","types":"./fhi-data-table.d.ts"},"./fhi-data-table-cell":{"default":"./fhi-data-table-cell.js","types":"./fhi-data-table-cell.d.ts"},"./fhi-data-table-row":{"default":"./fhi-data-table-row.js","types":"./fhi-data-table-row.d.ts"},"./fhi-body":{"default":"./fhi-body.js","types":"./fhi-body.d.ts"},"./fhi-display":{"default":"./fhi-display.js","types":"./fhi-display.d.ts"},"./fhi-headline":{"default":"./fhi-headline.js","types":"./fhi-headline.d.ts"},"./fhi-label":{"default":"./fhi-label.js","types":"./fhi-label.d.ts"},"./fhi-title":{"default":"./fhi-title.js","types":"./fhi-title.d.ts"},".":{"default":"./index.js"},"./theme/default.css":{"default":"./theme/default.css","style":"./theme/default.css"},"./custom-elements.json":{"default":"./custom-elements.json"}}}
|
|
1
|
+
{"title":"FHI Designsystem","author":"FHI Designsystem team","name":"@folkehelseinstituttet/designsystem","version":"0.41.1","description":"The official design system for the Norwegian Institute of Public Health implemented as web components","keywords":["fhi","folkehelseinstituttet","components","design","system","framework","frontend","web-component","web component","ui"],"customElements":".temp/custom-elements.json","web-types":"./web-types.json","homepage":"https://github.com/FHIDev/Fhi.Designsystem","bugs":{"url":"https://github.com/FHIDev/Fhi.Designsystem/issues"},"repository":{"type":"git","url":"git+https://github.com/FHIDev/Fhi.Designsystem.git"},"license":"MIT","browserslist":["> 0.5%","last 2 versions"],"main":"index.js","type":"module","scripts":{"dev":"vite","build":"pnpm analyze && pnpm build:cdn && pnpm build:npm && pnpm build:github && pnpm clean","build:cdn":"tsc && cross-env DEPLOY_TARGET=cdn vite build","build:npm":"tsc && cross-env DEPLOY_TARGET=npm vite build","build:github":"tsc && cross-env DEPLOY_TARGET=github vite build","storybook":"storybook dev -p 6006","storybook:build":"pnpm analyze && storybook build","generate:icons":"node ./scripts/generate-icon-components.js --input ./src/assets/icons/ --output ./src/components/icons --clean-output-folder","test":"wtr ./**/*.test.ts --node-resolve --playwright --browsers chromium webkit","lint":"pnpm lint:eslint && pnpm lint:prettier","lint:eslint":"eslint \"**/*.{js,ts}\"","lint:prettier":"prettier \"**/*.js\" --check --ignore-path .gitignore","format":"pnpm format:eslint && pnpm format:prettier","format:eslint":"eslint \"**/*.{js,ts}\" --fix","format:prettier":"prettier \"**/*.js\" --write --ignore-path .gitignore","publish:npm":"pnpm build && cd dist/npm && npm publish","changelog:ci":"release-it --ci","analyze":"cem analyze --litelement","clean":"rimraf .temp","build-storybook":"storybook build"},"peerDependencies":{"lit":"~3.2.0"},"devDependencies":{"@custom-elements-manifest/analyzer":"^0.11.0","@esm-bundle/chai":"4.3.4-fix.0","@open-wc/testing":"~4.0.0","@playwright/test":"^1.61.0","@release-it/conventional-changelog":"~11.0.1","@storybook/addon-docs":"^10.4.6","@storybook/web-components-vite":"^10.4.6","@types/mocha":"~10.0.10","@types/node":"~26.0.0","@types/react":"^19.2.17","@wc-toolkit/cem-sorter":"^1.0.1","@wc-toolkit/type-parser":"^1.2.1","@web/dev-server":"~0.4.6","@web/dev-server-esbuild":"~1.0.5","@web/test-runner":"~0.20.2","@web/test-runner-playwright":"~0.11.1","cross-env":"10.1.0","custom-element-jet-brains-integration":"^1.7.0","lit":"~3.3.3","mocha":"~11.7.6","playwright":"^1.61.0","release-it":"~20.2.0","rimraf":"^6.1.3","storybook":"^10.4.6","storybook-design-token":"^5.0.0","svgo":"^4.0.1","vite":"~8.0.16","vite-plugin-static-copy":"~4.1.1"},"dependencies":{"@floating-ui/dom":"^1.7.6"},"pnpm":{"overrides":{"diff@>=6.0.0 <8.0.3":">=8.0.3","serialize-javascript@<=7.0.2":">=7.0.3","yaml@>=2.0.0 <2.8.3":">=2.8.3","serialize-javascript@>=5.0.0 <7.0.5":">=7.0.5","esbuild@>=0.27.3 <0.28.1":">=0.28.1","undici@>=7.23.0 <7.28.0":">=7.28.0","undici@>=7.0.0 <7.28.0":">=7.28.0"}},"exports":{"./fhi-button":{"default":"./fhi-button.js","types":"./fhi-button.d.ts"},"./fhi-checkbox":{"default":"./fhi-checkbox.js","types":"./fhi-checkbox.d.ts"},"./fhi-date-input":{"default":"./fhi-date-input.js","types":"./fhi-date-input.d.ts"},"./fhi-flex":{"default":"./fhi-flex.js","types":"./fhi-flex.d.ts"},"./fhi-grid":{"default":"./fhi-grid.js","types":"./fhi-grid.d.ts"},"./fhi-modal-dialog":{"default":"./fhi-modal-dialog.js","types":"./fhi-modal-dialog.d.ts"},"./fhi-radio":{"default":"./fhi-radio.js","types":"./fhi-radio.d.ts"},"./fhi-tag":{"default":"./fhi-tag.js","types":"./fhi-tag.d.ts"},"./fhi-text-input":{"default":"./fhi-text-input.js","types":"./fhi-text-input.d.ts"},"./fhi-tooltip":{"default":"./fhi-tooltip.js","types":"./fhi-tooltip.d.ts"},"./fhi-icon-arrow-down-left":{"default":"./fhi-icon-arrow-down-left.js","types":"./fhi-icon-arrow-down-left.d.ts"},"./fhi-icon-arrow-down-right":{"default":"./fhi-icon-arrow-down-right.js","types":"./fhi-icon-arrow-down-right.d.ts"},"./fhi-icon-arrow-down":{"default":"./fhi-icon-arrow-down.js","types":"./fhi-icon-arrow-down.d.ts"},"./fhi-icon-arrow-left":{"default":"./fhi-icon-arrow-left.js","types":"./fhi-icon-arrow-left.d.ts"},"./fhi-icon-arrow-right-left":{"default":"./fhi-icon-arrow-right-left.js","types":"./fhi-icon-arrow-right-left.d.ts"},"./fhi-icon-arrow-right":{"default":"./fhi-icon-arrow-right.js","types":"./fhi-icon-arrow-right.d.ts"},"./fhi-icon-arrow-up-down":{"default":"./fhi-icon-arrow-up-down.js","types":"./fhi-icon-arrow-up-down.d.ts"},"./fhi-icon-arrow-up-left":{"default":"./fhi-icon-arrow-up-left.js","types":"./fhi-icon-arrow-up-left.d.ts"},"./fhi-icon-arrow-up-right":{"default":"./fhi-icon-arrow-up-right.js","types":"./fhi-icon-arrow-up-right.d.ts"},"./fhi-icon-arrow-up":{"default":"./fhi-icon-arrow-up.js","types":"./fhi-icon-arrow-up.d.ts"},"./fhi-icon-bell":{"default":"./fhi-icon-bell.js","types":"./fhi-icon-bell.d.ts"},"./fhi-icon-calendar-clock":{"default":"./fhi-icon-calendar-clock.js","types":"./fhi-icon-calendar-clock.d.ts"},"./fhi-icon-calendar":{"default":"./fhi-icon-calendar.js","types":"./fhi-icon-calendar.d.ts"},"./fhi-icon-chart-bar-stacked":{"default":"./fhi-icon-chart-bar-stacked.js","types":"./fhi-icon-chart-bar-stacked.d.ts"},"./fhi-icon-chart-bar":{"default":"./fhi-icon-chart-bar.js","types":"./fhi-icon-chart-bar.d.ts"},"./fhi-icon-chart-column-stacked":{"default":"./fhi-icon-chart-column-stacked.js","types":"./fhi-icon-chart-column-stacked.d.ts"},"./fhi-icon-chart-column":{"default":"./fhi-icon-chart-column.js","types":"./fhi-icon-chart-column.d.ts"},"./fhi-icon-chart-line":{"default":"./fhi-icon-chart-line.js","types":"./fhi-icon-chart-line.d.ts"},"./fhi-icon-chart-no-axes-combined":{"default":"./fhi-icon-chart-no-axes-combined.js","types":"./fhi-icon-chart-no-axes-combined.d.ts"},"./fhi-icon-chart-pie":{"default":"./fhi-icon-chart-pie.js","types":"./fhi-icon-chart-pie.d.ts"},"./fhi-icon-check":{"default":"./fhi-icon-check.js","types":"./fhi-icon-check.d.ts"},"./fhi-icon-chevron-down":{"default":"./fhi-icon-chevron-down.js","types":"./fhi-icon-chevron-down.d.ts"},"./fhi-icon-chevron-left":{"default":"./fhi-icon-chevron-left.js","types":"./fhi-icon-chevron-left.d.ts"},"./fhi-icon-chevron-right":{"default":"./fhi-icon-chevron-right.js","types":"./fhi-icon-chevron-right.d.ts"},"./fhi-icon-chevron-up":{"default":"./fhi-icon-chevron-up.js","types":"./fhi-icon-chevron-up.d.ts"},"./fhi-icon-chevrons-down":{"default":"./fhi-icon-chevrons-down.js","types":"./fhi-icon-chevrons-down.d.ts"},"./fhi-icon-chevrons-left":{"default":"./fhi-icon-chevrons-left.js","types":"./fhi-icon-chevrons-left.d.ts"},"./fhi-icon-chevrons-right":{"default":"./fhi-icon-chevrons-right.js","types":"./fhi-icon-chevrons-right.d.ts"},"./fhi-icon-chevrons-up":{"default":"./fhi-icon-chevrons-up.js","types":"./fhi-icon-chevrons-up.d.ts"},"./fhi-icon-circle-arrow-down":{"default":"./fhi-icon-circle-arrow-down.js","types":"./fhi-icon-circle-arrow-down.d.ts"},"./fhi-icon-circle-arrow-left":{"default":"./fhi-icon-circle-arrow-left.js","types":"./fhi-icon-circle-arrow-left.d.ts"},"./fhi-icon-circle-arrow-right":{"default":"./fhi-icon-circle-arrow-right.js","types":"./fhi-icon-circle-arrow-right.d.ts"},"./fhi-icon-circle-arrow-up":{"default":"./fhi-icon-circle-arrow-up.js","types":"./fhi-icon-circle-arrow-up.d.ts"},"./fhi-icon-circle-check-big":{"default":"./fhi-icon-circle-check-big.js","types":"./fhi-icon-circle-check-big.d.ts"},"./fhi-icon-circle-check":{"default":"./fhi-icon-circle-check.js","types":"./fhi-icon-circle-check.d.ts"},"./fhi-icon-circle-chevron-down":{"default":"./fhi-icon-circle-chevron-down.js","types":"./fhi-icon-circle-chevron-down.d.ts"},"./fhi-icon-circle-chevron-left":{"default":"./fhi-icon-circle-chevron-left.js","types":"./fhi-icon-circle-chevron-left.d.ts"},"./fhi-icon-circle-chevron-right":{"default":"./fhi-icon-circle-chevron-right.js","types":"./fhi-icon-circle-chevron-right.d.ts"},"./fhi-icon-circle-chevron-up":{"default":"./fhi-icon-circle-chevron-up.js","types":"./fhi-icon-circle-chevron-up.d.ts"},"./fhi-icon-circle-exclamation":{"default":"./fhi-icon-circle-exclamation.js","types":"./fhi-icon-circle-exclamation.d.ts"},"./fhi-icon-circle-info":{"default":"./fhi-icon-circle-info.js","types":"./fhi-icon-circle-info.d.ts"},"./fhi-icon-circle-minus":{"default":"./fhi-icon-circle-minus.js","types":"./fhi-icon-circle-minus.d.ts"},"./fhi-icon-circle-plus":{"default":"./fhi-icon-circle-plus.js","types":"./fhi-icon-circle-plus.d.ts"},"./fhi-icon-circle-question":{"default":"./fhi-icon-circle-question.js","types":"./fhi-icon-circle-question.d.ts"},"./fhi-icon-circle-x":{"default":"./fhi-icon-circle-x.js","types":"./fhi-icon-circle-x.d.ts"},"./fhi-icon-circle":{"default":"./fhi-icon-circle.js","types":"./fhi-icon-circle.d.ts"},"./fhi-icon-clock":{"default":"./fhi-icon-clock.js","types":"./fhi-icon-clock.d.ts"},"./fhi-icon-copy":{"default":"./fhi-icon-copy.js","types":"./fhi-icon-copy.d.ts"},"./fhi-icon-download":{"default":"./fhi-icon-download.js","types":"./fhi-icon-download.d.ts"},"./fhi-icon-ellipsis-vertical":{"default":"./fhi-icon-ellipsis-vertical.js","types":"./fhi-icon-ellipsis-vertical.d.ts"},"./fhi-icon-ellipsis":{"default":"./fhi-icon-ellipsis.js","types":"./fhi-icon-ellipsis.d.ts"},"./fhi-icon-exclamation":{"default":"./fhi-icon-exclamation.js","types":"./fhi-icon-exclamation.d.ts"},"./fhi-icon-expand":{"default":"./fhi-icon-expand.js","types":"./fhi-icon-expand.d.ts"},"./fhi-icon-external-link":{"default":"./fhi-icon-external-link.js","types":"./fhi-icon-external-link.d.ts"},"./fhi-icon-eye-off":{"default":"./fhi-icon-eye-off.js","types":"./fhi-icon-eye-off.d.ts"},"./fhi-icon-eye":{"default":"./fhi-icon-eye.js","types":"./fhi-icon-eye.d.ts"},"./fhi-icon-file-text":{"default":"./fhi-icon-file-text.js","types":"./fhi-icon-file-text.d.ts"},"./fhi-icon-file":{"default":"./fhi-icon-file.js","types":"./fhi-icon-file.d.ts"},"./fhi-icon-filter":{"default":"./fhi-icon-filter.js","types":"./fhi-icon-filter.d.ts"},"./fhi-icon-folder":{"default":"./fhi-icon-folder.js","types":"./fhi-icon-folder.d.ts"},"./fhi-icon-gear":{"default":"./fhi-icon-gear.js","types":"./fhi-icon-gear.d.ts"},"./fhi-icon-grid-9-dots":{"default":"./fhi-icon-grid-9-dots.js","types":"./fhi-icon-grid-9-dots.d.ts"},"./fhi-icon-grip-horizontal":{"default":"./fhi-icon-grip-horizontal.js","types":"./fhi-icon-grip-horizontal.d.ts"},"./fhi-icon-grip-vertical":{"default":"./fhi-icon-grip-vertical.js","types":"./fhi-icon-grip-vertical.d.ts"},"./fhi-icon-history":{"default":"./fhi-icon-history.js","types":"./fhi-icon-history.d.ts"},"./fhi-icon-info":{"default":"./fhi-icon-info.js","types":"./fhi-icon-info.d.ts"},"./fhi-icon-link-2-off":{"default":"./fhi-icon-link-2-off.js","types":"./fhi-icon-link-2-off.d.ts"},"./fhi-icon-link-2":{"default":"./fhi-icon-link-2.js","types":"./fhi-icon-link-2.d.ts"},"./fhi-icon-link":{"default":"./fhi-icon-link.js","types":"./fhi-icon-link.d.ts"},"./fhi-icon-lock-open":{"default":"./fhi-icon-lock-open.js","types":"./fhi-icon-lock-open.d.ts"},"./fhi-icon-lock":{"default":"./fhi-icon-lock.js","types":"./fhi-icon-lock.d.ts"},"./fhi-icon-log-in":{"default":"./fhi-icon-log-in.js","types":"./fhi-icon-log-in.d.ts"},"./fhi-icon-log-out":{"default":"./fhi-icon-log-out.js","types":"./fhi-icon-log-out.d.ts"},"./fhi-icon-mail":{"default":"./fhi-icon-mail.js","types":"./fhi-icon-mail.d.ts"},"./fhi-icon-map-pin":{"default":"./fhi-icon-map-pin.js","types":"./fhi-icon-map-pin.d.ts"},"./fhi-icon-menu":{"default":"./fhi-icon-menu.js","types":"./fhi-icon-menu.d.ts"},"./fhi-icon-message":{"default":"./fhi-icon-message.js","types":"./fhi-icon-message.d.ts"},"./fhi-icon-minus":{"default":"./fhi-icon-minus.js","types":"./fhi-icon-minus.d.ts"},"./fhi-icon-octagon-alert":{"default":"./fhi-icon-octagon-alert.js","types":"./fhi-icon-octagon-alert.d.ts"},"./fhi-icon-paperclip":{"default":"./fhi-icon-paperclip.js","types":"./fhi-icon-paperclip.d.ts"},"./fhi-icon-pencil":{"default":"./fhi-icon-pencil.js","types":"./fhi-icon-pencil.d.ts"},"./fhi-icon-phone":{"default":"./fhi-icon-phone.js","types":"./fhi-icon-phone.d.ts"},"./fhi-icon-pin-off":{"default":"./fhi-icon-pin-off.js","types":"./fhi-icon-pin-off.d.ts"},"./fhi-icon-pin":{"default":"./fhi-icon-pin.js","types":"./fhi-icon-pin.d.ts"},"./fhi-icon-plus":{"default":"./fhi-icon-plus.js","types":"./fhi-icon-plus.d.ts"},"./fhi-icon-printer":{"default":"./fhi-icon-printer.js","types":"./fhi-icon-printer.d.ts"},"./fhi-icon-question":{"default":"./fhi-icon-question.js","types":"./fhi-icon-question.d.ts"},"./fhi-icon-refresh":{"default":"./fhi-icon-refresh.js","types":"./fhi-icon-refresh.d.ts"},"./fhi-icon-rotate-left":{"default":"./fhi-icon-rotate-left.js","types":"./fhi-icon-rotate-left.d.ts"},"./fhi-icon-rotate-right":{"default":"./fhi-icon-rotate-right.js","types":"./fhi-icon-rotate-right.d.ts"},"./fhi-icon-search":{"default":"./fhi-icon-search.js","types":"./fhi-icon-search.d.ts"},"./fhi-icon-send":{"default":"./fhi-icon-send.js","types":"./fhi-icon-send.d.ts"},"./fhi-icon-share":{"default":"./fhi-icon-share.js","types":"./fhi-icon-share.d.ts"},"./fhi-icon-sheet":{"default":"./fhi-icon-sheet.js","types":"./fhi-icon-sheet.d.ts"},"./fhi-icon-square-check-big":{"default":"./fhi-icon-square-check-big.js","types":"./fhi-icon-square-check-big.d.ts"},"./fhi-icon-square-check":{"default":"./fhi-icon-square-check.js","types":"./fhi-icon-square-check.d.ts"},"./fhi-icon-square-pen":{"default":"./fhi-icon-square-pen.js","types":"./fhi-icon-square-pen.d.ts"},"./fhi-icon-square-x":{"default":"./fhi-icon-square-x.js","types":"./fhi-icon-square-x.d.ts"},"./fhi-icon-square":{"default":"./fhi-icon-square.js","types":"./fhi-icon-square.d.ts"},"./fhi-icon-trash":{"default":"./fhi-icon-trash.js","types":"./fhi-icon-trash.d.ts"},"./fhi-icon-triangle-alert":{"default":"./fhi-icon-triangle-alert.js","types":"./fhi-icon-triangle-alert.d.ts"},"./fhi-icon-upload":{"default":"./fhi-icon-upload.js","types":"./fhi-icon-upload.d.ts"},"./fhi-icon-user":{"default":"./fhi-icon-user.js","types":"./fhi-icon-user.d.ts"},"./fhi-icon-x":{"default":"./fhi-icon-x.js","types":"./fhi-icon-x.d.ts"},"./fhi-data-table":{"default":"./fhi-data-table.js","types":"./fhi-data-table.d.ts"},"./fhi-data-table-cell":{"default":"./fhi-data-table-cell.js","types":"./fhi-data-table-cell.d.ts"},"./fhi-data-table-row":{"default":"./fhi-data-table-row.js","types":"./fhi-data-table-row.d.ts"},"./fhi-select":{"default":"./fhi-select.js","types":"./fhi-select.d.ts"},"./fhi-select-item":{"default":"./fhi-select-item.js","types":"./fhi-select-item.d.ts"},"./fhi-body":{"default":"./fhi-body.js","types":"./fhi-body.d.ts"},"./fhi-display":{"default":"./fhi-display.js","types":"./fhi-display.d.ts"},"./fhi-headline":{"default":"./fhi-headline.js","types":"./fhi-headline.d.ts"},"./fhi-label":{"default":"./fhi-label.js","types":"./fhi-label.d.ts"},"./fhi-title":{"default":"./fhi-title.js","types":"./fhi-title.d.ts"},".":{"default":"./index.js"},"./theme/default.css":{"default":"./theme/default.css","style":"./theme/default.css"},"./custom-elements.json":{"default":"./custom-elements.json"}}}
|