@fristil/designsystem 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +121 -0
- package/README.md +22 -9
- package/dist/components/frittstaende/connection-status/connection-status.d.ts +28 -0
- package/dist/components/frittstaende/connection-status/connection-status.d.ts.map +1 -0
- package/dist/components/frittstaende/connection-status/connection-status.js +22 -0
- package/dist/components/frittstaende/connection-status/connection-status.js.map +1 -0
- package/dist/components/frittstaende/connection-status/fs-connection-status.d.ts +54 -0
- package/dist/components/frittstaende/connection-status/fs-connection-status.d.ts.map +1 -0
- package/dist/components/frittstaende/connection-status/fs-connection-status.js +123 -0
- package/dist/components/frittstaende/connection-status/fs-connection-status.js.map +1 -0
- package/dist/components/frittstaende/session-timeout/fs-session-timeout.d.ts +56 -0
- package/dist/components/frittstaende/session-timeout/fs-session-timeout.d.ts.map +1 -0
- package/dist/components/frittstaende/session-timeout/fs-session-timeout.js +179 -0
- package/dist/components/frittstaende/session-timeout/fs-session-timeout.js.map +1 -0
- package/dist/components/frittstaende/session-timeout/session-timeout.d.ts +28 -0
- package/dist/components/frittstaende/session-timeout/session-timeout.d.ts.map +1 -0
- package/dist/components/frittstaende/session-timeout/session-timeout.js +22 -0
- package/dist/components/frittstaende/session-timeout/session-timeout.js.map +1 -0
- package/dist/components/frittstaende/toast/fs-toast.d.ts +16 -22
- package/dist/components/frittstaende/toast/fs-toast.d.ts.map +1 -1
- package/dist/components/frittstaende/toast/fs-toast.js +38 -27
- package/dist/components/frittstaende/toast/fs-toast.js.map +1 -1
- package/dist/components/frittstaende/toast/toast.d.ts +34 -0
- package/dist/components/frittstaende/toast/toast.d.ts.map +1 -0
- package/dist/components/frittstaende/toast/toast.js +26 -0
- package/dist/components/frittstaende/toast/toast.js.map +1 -0
- package/dist/components/ramme/error-summary/error-summary.d.ts +39 -0
- package/dist/components/ramme/error-summary/error-summary.d.ts.map +1 -0
- package/dist/components/ramme/error-summary/error-summary.js +31 -0
- package/dist/components/ramme/error-summary/error-summary.js.map +1 -0
- package/dist/components/ramme/error-summary/fs-error-summary.d.ts +16 -42
- package/dist/components/ramme/error-summary/fs-error-summary.d.ts.map +1 -1
- package/dist/components/ramme/error-summary/fs-error-summary.js +57 -92
- package/dist/components/ramme/error-summary/fs-error-summary.js.map +1 -1
- package/dist/components/ramme/field/field-core.d.ts +31 -0
- package/dist/components/ramme/field/field-core.d.ts.map +1 -1
- package/dist/components/ramme/field/field-core.js +31 -0
- package/dist/components/ramme/field/field-core.js.map +1 -1
- package/dist/components/ramme/field/fs-field.d.ts +38 -40
- package/dist/components/ramme/field/fs-field.d.ts.map +1 -1
- package/dist/components/ramme/field/fs-field.js +127 -54
- package/dist/components/ramme/field/fs-field.js.map +1 -1
- package/dist/components/ramme/popover/fs-popover.d.ts +20 -27
- package/dist/components/ramme/popover/fs-popover.d.ts.map +1 -1
- package/dist/components/ramme/popover/fs-popover.js +68 -54
- package/dist/components/ramme/popover/fs-popover.js.map +1 -1
- package/dist/components/ramme/popover/popover.d.ts +43 -0
- package/dist/components/ramme/popover/popover.d.ts.map +1 -0
- package/dist/components/ramme/popover/popover.js +49 -0
- package/dist/components/ramme/popover/popover.js.map +1 -0
- package/dist/components/ramme/suggestion/fs-suggestion.d.ts +75 -0
- package/dist/components/ramme/suggestion/fs-suggestion.d.ts.map +1 -0
- package/dist/components/ramme/suggestion/fs-suggestion.js +232 -0
- package/dist/components/ramme/suggestion/fs-suggestion.js.map +1 -0
- package/dist/components/ramme/suggestion/suggestion.d.ts +97 -0
- package/dist/components/ramme/suggestion/suggestion.d.ts.map +1 -0
- package/dist/components/ramme/suggestion/suggestion.js +79 -0
- package/dist/components/ramme/suggestion/suggestion.js.map +1 -0
- package/dist/components/ramme/tabs/fs-tabs.d.ts +31 -36
- package/dist/components/ramme/tabs/fs-tabs.d.ts.map +1 -1
- package/dist/components/ramme/tabs/fs-tabs.js +62 -84
- package/dist/components/ramme/tabs/fs-tabs.js.map +1 -1
- package/dist/components/ramme/tabs/tabs.d.ts +50 -0
- package/dist/components/ramme/tabs/tabs.d.ts.map +1 -0
- package/dist/components/ramme/tabs/tabs.js +54 -0
- package/dist/components/ramme/tabs/tabs.js.map +1 -0
- package/dist/fs.d.ts +94 -0
- package/dist/fs.d.ts.map +1 -1
- package/dist/fs.js +42 -0
- package/dist/fs.js.map +1 -1
- package/dist/index.d.ts +10 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/jsx/react.d.ts +35 -50
- package/dist/jsx/react.d.ts.map +1 -1
- package/dist/react.d.ts +142 -1
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +71 -2
- package/dist/react.js.map +1 -1
- package/package.json +16 -25
- package/src/components/frittstaende/connection-status/connection-status.css +33 -0
- package/src/components/frittstaende/connection-status/connection-status.ts +41 -0
- package/src/components/frittstaende/connection-status/fs-connection-status.ts +144 -0
- package/src/components/frittstaende/session-timeout/fs-session-timeout.ts +212 -0
- package/src/components/frittstaende/session-timeout/session-timeout.css +43 -0
- package/src/components/frittstaende/session-timeout/session-timeout.ts +42 -0
- package/src/components/frittstaende/toast/fs-toast.ts +39 -30
- package/src/components/frittstaende/toast/toast.ts +45 -0
- package/src/components/ramme/error-summary/error-summary.ts +55 -0
- package/src/components/ramme/error-summary/fs-error-summary.ts +62 -119
- package/src/components/ramme/field/field-core.ts +32 -0
- package/src/components/ramme/field/fs-field.ts +144 -61
- package/src/components/ramme/popover/fs-popover.ts +78 -72
- package/src/components/ramme/popover/popover.ts +79 -0
- package/src/components/ramme/suggestion/fs-suggestion.ts +265 -0
- package/src/components/ramme/suggestion/suggestion.ts +105 -0
- package/src/components/ramme/tabs/fs-tabs.ts +67 -98
- package/src/components/ramme/tabs/tabs.ts +104 -0
- package/dist/components/frittstaende/calendar/fs-calendar.d.ts +0 -52
- package/dist/components/frittstaende/calendar/fs-calendar.d.ts.map +0 -1
- package/dist/components/frittstaende/calendar/fs-calendar.js +0 -462
- package/dist/components/frittstaende/calendar/fs-calendar.js.map +0 -1
- package/dist/components/frittstaende/date-field/fs-date-field.d.ts +0 -110
- package/dist/components/frittstaende/date-field/fs-date-field.d.ts.map +0 -1
- package/dist/components/frittstaende/date-field/fs-date-field.js +0 -264
- package/dist/components/frittstaende/date-field/fs-date-field.js.map +0 -1
- package/dist/components/frittstaende/suggestion/fs-suggestion.d.ts +0 -133
- package/dist/components/frittstaende/suggestion/fs-suggestion.d.ts.map +0 -1
- package/dist/components/frittstaende/suggestion/fs-suggestion.js +0 -280
- package/dist/components/frittstaende/suggestion/fs-suggestion.js.map +0 -1
- package/src/components/frittstaende/calendar/fs-calendar.ts +0 -525
- package/src/components/frittstaende/date-field/date-field.css +0 -54
- package/src/components/frittstaende/date-field/fs-date-field.ts +0 -309
- package/src/components/frittstaende/suggestion/fs-suggestion.ts +0 -333
- /package/src/components/{frittstaende → ramme}/suggestion/suggestion.css +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-session-timeout.js","sourceRoot":"","sources":["../../../../src/components/frittstaende/session-timeout/fs-session-timeout.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare const SESSION_TIMEOUT_CLASS: "fs-session-timeout";
|
|
2
|
+
export declare const SESSION_TIMEOUT_DIALOG_CLASS: "fs-session-timeout__dialog";
|
|
3
|
+
export type SessionTimeoutOptions = {
|
|
4
|
+
/** Sekunder uten aktivitet før varselet kommer. Standard: 25 minutter. */
|
|
5
|
+
warnAt?: number;
|
|
6
|
+
/** Sekunder uten aktivitet før økten er ute. Standard: 30 minutter. */
|
|
7
|
+
expiresAt?: number;
|
|
8
|
+
};
|
|
9
|
+
export type SessionTimeoutAttributes = {
|
|
10
|
+
class: typeof SESSION_TIMEOUT_CLASS;
|
|
11
|
+
"warn-at"?: string;
|
|
12
|
+
"expires-at"?: string;
|
|
13
|
+
"data-ignore-morph": "";
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Attributtene for varselet om at innlogget økt går ut.
|
|
17
|
+
*
|
|
18
|
+
* Nedtellingen er klientens klokke, og endrer seg hvert sekund ut fra når
|
|
19
|
+
* brukeren sist rørte tastaturet. Det er en tilstand ingen server kan sende,
|
|
20
|
+
* og derfor eier komponenten alt inni seg. `data-ignore-morph` er ikke
|
|
21
|
+
* valgfri: uten den river Datastars morfing dialogen bort mens den står åpen.
|
|
22
|
+
*
|
|
23
|
+
* ```ts
|
|
24
|
+
* <fs-session-timeout {...fs.sessionTimeout({ warnAt: 1500, expiresAt: 1800 })} />
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare const sessionTimeout: ({ warnAt, expiresAt, }?: SessionTimeoutOptions) => SessionTimeoutAttributes;
|
|
28
|
+
//# sourceMappingURL=session-timeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-timeout.d.ts","sourceRoot":"","sources":["../../../../src/components/frittstaende/session-timeout/session-timeout.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,EAAG,oBAA6B,CAAA;AAClE,eAAO,MAAM,4BAA4B,EACvC,4BAAqC,CAAA;AAEvC,MAAM,MAAM,qBAAqB,GAAG;IAClC,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,OAAO,qBAAqB,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,EAAE,CAAA;CACxB,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,GAAI,yBAG5B,qBAA0B,KAAG,wBAM5B,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { attributes } from "../../css/shared.js";
|
|
2
|
+
export const SESSION_TIMEOUT_CLASS = "fs-session-timeout";
|
|
3
|
+
export const SESSION_TIMEOUT_DIALOG_CLASS = "fs-session-timeout__dialog";
|
|
4
|
+
/**
|
|
5
|
+
* Attributtene for varselet om at innlogget økt går ut.
|
|
6
|
+
*
|
|
7
|
+
* Nedtellingen er klientens klokke, og endrer seg hvert sekund ut fra når
|
|
8
|
+
* brukeren sist rørte tastaturet. Det er en tilstand ingen server kan sende,
|
|
9
|
+
* og derfor eier komponenten alt inni seg. `data-ignore-morph` er ikke
|
|
10
|
+
* valgfri: uten den river Datastars morfing dialogen bort mens den står åpen.
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* <fs-session-timeout {...fs.sessionTimeout({ warnAt: 1500, expiresAt: 1800 })} />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const sessionTimeout = ({ warnAt = 25 * 60, expiresAt = 30 * 60, } = {}) => attributes({
|
|
17
|
+
class: SESSION_TIMEOUT_CLASS,
|
|
18
|
+
"warn-at": warnAt === 25 * 60 ? undefined : String(warnAt),
|
|
19
|
+
"expires-at": expiresAt === 30 * 60 ? undefined : String(expiresAt),
|
|
20
|
+
"data-ignore-morph": "",
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=session-timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-timeout.js","sourceRoot":"","sources":["../../../../src/components/frittstaende/session-timeout/session-timeout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAA6B,CAAA;AAClE,MAAM,CAAC,MAAM,4BAA4B,GACvC,4BAAqC,CAAA;AAgBvC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,MAAM,GAAG,EAAE,GAAG,EAAE,EAChB,SAAS,GAAG,EAAE,GAAG,EAAE,MACM,EAAE,EAA4B,EAAE,CACzD,UAAU,CAAC;IACT,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,MAAM,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAC1D,YAAY,EAAE,SAAS,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;IACnE,mBAAmB,EAAE,EAAW;CACjC,CAAC,CAAA"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import { LitElement } from "lit";
|
|
2
1
|
export declare const FS_TOAST_TAG: "fs-toast";
|
|
3
|
-
export declare const TOAST_CLASS: "fs-toast";
|
|
4
|
-
export declare const TOAST_CLOSE_CLASS: "fs-toast__close";
|
|
5
2
|
export declare const toastColors: readonly ["neutral", "success", "warning", "danger"];
|
|
6
3
|
export type ToastColor = (typeof toastColors)[number];
|
|
7
|
-
export type
|
|
4
|
+
export type ShowOptions = {
|
|
8
5
|
/** Hva meldingen betyr. Standard: `neutral`. */
|
|
9
6
|
color?: ToastColor;
|
|
10
7
|
/** Millisekunder før meldingen forsvinner. `0` lar den bli stående. */
|
|
@@ -15,8 +12,15 @@ export type ToastOptions = {
|
|
|
15
12
|
/**
|
|
16
13
|
* Køen av korte meldinger i hjørnet av skjermen.
|
|
17
14
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
15
|
+
* Dette er den eneste frittstående komponenten, og den eneste delen av pakken
|
|
16
|
+
* du kaller i stedet for å skrive. Elementet er beholderen, ikke meldingen:
|
|
17
|
+
* du legger det inn én gang i appen og kaller `show()` når noe skal meldes.
|
|
18
|
+
* Meldingene finnes ikke før en hendelse på klienten skaper dem, så det er
|
|
19
|
+
* ingenting for serveren å rendre.
|
|
20
|
+
*
|
|
21
|
+
* Serveren skriver beholderen med `fs.toast()`, og den setter
|
|
22
|
+
* `data-ignore-morph`. Uten det river Datastars morfing meldingene bort ved
|
|
23
|
+
* neste patch, fordi serverens utgave av regionen er tom.
|
|
20
24
|
*
|
|
21
25
|
* Beholderen er en `role="status"`-region, ikke `role="alert"`. En melding
|
|
22
26
|
* som dukker opp i hjørnet skal ikke avbryte det skjermleseren holder på med;
|
|
@@ -34,25 +38,15 @@ export type ToastOptions = {
|
|
|
34
38
|
* })
|
|
35
39
|
* ```
|
|
36
40
|
*/
|
|
37
|
-
export declare class FsToast extends
|
|
38
|
-
static
|
|
39
|
-
duration: {
|
|
40
|
-
type: NumberConstructor;
|
|
41
|
-
};
|
|
42
|
-
label: {
|
|
43
|
-
type: StringConstructor;
|
|
44
|
-
};
|
|
45
|
-
};
|
|
41
|
+
export declare class FsToast extends HTMLElement {
|
|
42
|
+
static observedAttributes: string[];
|
|
46
43
|
/** Standard levetid i millisekunder. `0` lar meldingene bli stående. */
|
|
47
|
-
duration: number;
|
|
48
|
-
|
|
49
|
-
label: string;
|
|
50
|
-
createRenderRoot(): this;
|
|
51
|
-
render(): import("lit").TemplateResult<1>;
|
|
44
|
+
get duration(): number;
|
|
45
|
+
set duration(value: number);
|
|
52
46
|
connectedCallback(): void;
|
|
53
|
-
|
|
47
|
+
attributeChangedCallback(navn: string, _gammel: string, ny: string): void;
|
|
54
48
|
/** Viser en melding, og returnerer elementet den ble lagt i. */
|
|
55
|
-
show(message: string, options?:
|
|
49
|
+
show(message: string, options?: ShowOptions): HTMLElement;
|
|
56
50
|
/** Fjerner en melding. */
|
|
57
51
|
dismiss(toast: HTMLElement): void;
|
|
58
52
|
/** Fjerner alle meldingene. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-toast.d.ts","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/fs-toast.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fs-toast.d.ts","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/fs-toast.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,EAAG,UAAmB,CAAA;AAE/C,eAAO,MAAM,WAAW,sDAAuD,CAAA;AAC/E,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAErD,MAAM,MAAM,WAAW,GAAG;IACxB,gDAAgD;IAChD,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC,MAAM,CAAC,kBAAkB,WAAwB;IAEjD,wEAAwE;IACxE,IAAI,QAAQ,IAAI,MAAM,CAQrB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEzB;IAED,iBAAiB,IAAI,IAAI;IAazB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAMzE,gEAAgE;IAChE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,WAAW;IA2C7D,0BAA0B;IAC1B,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IASjC,+BAA+B;IAC/B,KAAK,IAAI,IAAI;CAKd;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAA;KACpB;CACF;AAED,wBAAgB,aAAa,CAAC,OAAO,aAAe,GAAG,IAAI,CAI1D"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TOAST_CLASS, TOAST_CLOSE_CLASS } from "./toast.js";
|
|
2
2
|
export const FS_TOAST_TAG = "fs-toast";
|
|
3
|
-
export const TOAST_CLASS = "fs-toast";
|
|
4
|
-
export const TOAST_CLOSE_CLASS = "fs-toast__close";
|
|
5
3
|
export const toastColors = ["neutral", "success", "warning", "danger"];
|
|
6
4
|
/**
|
|
7
5
|
* Køen av korte meldinger i hjørnet av skjermen.
|
|
8
6
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* Dette er den eneste frittstående komponenten, og den eneste delen av pakken
|
|
8
|
+
* du kaller i stedet for å skrive. Elementet er beholderen, ikke meldingen:
|
|
9
|
+
* du legger det inn én gang i appen og kaller `show()` når noe skal meldes.
|
|
10
|
+
* Meldingene finnes ikke før en hendelse på klienten skaper dem, så det er
|
|
11
|
+
* ingenting for serveren å rendre.
|
|
12
|
+
*
|
|
13
|
+
* Serveren skriver beholderen med `fs.toast()`, og den setter
|
|
14
|
+
* `data-ignore-morph`. Uten det river Datastars morfing meldingene bort ved
|
|
15
|
+
* neste patch, fordi serverens utgave av regionen er tom.
|
|
11
16
|
*
|
|
12
17
|
* Beholderen er en `role="status"`-region, ikke `role="alert"`. En melding
|
|
13
18
|
* som dukker opp i hjørnet skal ikke avbryte det skjermleseren holder på med;
|
|
@@ -25,30 +30,39 @@ export const toastColors = ["neutral", "success", "warning", "danger"];
|
|
|
25
30
|
* })
|
|
26
31
|
* ```
|
|
27
32
|
*/
|
|
28
|
-
export class FsToast extends
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
export class FsToast extends HTMLElement {
|
|
34
|
+
/** Standard levetid i millisekunder. `0` lar meldingene bli stående. */
|
|
35
|
+
get duration() {
|
|
36
|
+
// `0` er en gyldig verdi og betyr at meldingene blir stående. Uten
|
|
37
|
+
// sjekken mot null her forsvant de likevel etter seks sekunder, og bare
|
|
38
|
+
// `show(..., { duration: 0 })` virket.
|
|
39
|
+
const rå = this.getAttribute("duration");
|
|
40
|
+
if (rå === null)
|
|
41
|
+
return 6000;
|
|
42
|
+
const value = Number(rå);
|
|
43
|
+
return Number.isFinite(value) && value >= 0 ? value : 6000;
|
|
38
44
|
}
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
set duration(value) {
|
|
46
|
+
this.setAttribute("duration", String(value));
|
|
41
47
|
}
|
|
42
48
|
connectedCallback() {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
this.
|
|
49
|
+
// Skrev serveren regionen med fs.toast(), står alt dette allerede. Her
|
|
50
|
+
// settes det bare når det mangler, så en ren HTML-side uten bygger også
|
|
51
|
+
// får en region skjermleseren forstår.
|
|
52
|
+
if (!this.hasAttribute("role"))
|
|
53
|
+
this.setAttribute("role", "status");
|
|
54
|
+
if (!this.hasAttribute("aria-live")) {
|
|
55
|
+
this.setAttribute("aria-live", "polite");
|
|
56
|
+
}
|
|
57
|
+
if (!this.hasAttribute("aria-label")) {
|
|
58
|
+
this.setAttribute("aria-label", this.getAttribute("label") ?? "Meldinger");
|
|
59
|
+
}
|
|
47
60
|
}
|
|
48
|
-
|
|
61
|
+
attributeChangedCallback(navn, _gammel, ny) {
|
|
49
62
|
// `label` kan settes etter at elementet står i DOM-en, for eksempel av et
|
|
50
63
|
// rammeverk som fyller inn attributtene i et senere steg.
|
|
51
|
-
|
|
64
|
+
if (navn === "label" && ny)
|
|
65
|
+
this.setAttribute("aria-label", ny);
|
|
52
66
|
}
|
|
53
67
|
/** Viser en melding, og returnerer elementet den ble lagt i. */
|
|
54
68
|
show(message, options = {}) {
|
|
@@ -96,10 +110,7 @@ export class FsToast extends LitElement {
|
|
|
96
110
|
}
|
|
97
111
|
}
|
|
98
112
|
}
|
|
99
|
-
FsToast.
|
|
100
|
-
duration: { type: Number },
|
|
101
|
-
label: { type: String },
|
|
102
|
-
};
|
|
113
|
+
FsToast.observedAttributes = ["duration", "label"];
|
|
103
114
|
export function defineFsToast(tagName = FS_TOAST_TAG) {
|
|
104
115
|
if (!customElements.get(tagName)) {
|
|
105
116
|
customElements.define(tagName, FsToast);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-toast.js","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/fs-toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"fs-toast.js","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/fs-toast.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export declare const TOAST_CLASS: "fs-toast";
|
|
2
|
+
export declare const TOAST_CLOSE_CLASS: "fs-toast__close";
|
|
3
|
+
export type ToastOptions = {
|
|
4
|
+
/** Tekst som sier hva regionen er. Blir `aria-label`. */
|
|
5
|
+
label?: string;
|
|
6
|
+
};
|
|
7
|
+
export type ToastAttributes = {
|
|
8
|
+
region: {
|
|
9
|
+
role: "status";
|
|
10
|
+
"aria-live": "polite";
|
|
11
|
+
"aria-label": string;
|
|
12
|
+
"data-ignore-morph": "";
|
|
13
|
+
};
|
|
14
|
+
toast: {
|
|
15
|
+
class: typeof TOAST_CLASS;
|
|
16
|
+
};
|
|
17
|
+
close: {
|
|
18
|
+
class: typeof TOAST_CLOSE_CLASS;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Attributtene for varselregionen.
|
|
23
|
+
*
|
|
24
|
+
* Regionen er `role="status"` og ikke `role="alert"`. En melding som kommer
|
|
25
|
+
* fordi noe gikk bra skal ikke avbryte det skjermleseren holder på med.
|
|
26
|
+
*
|
|
27
|
+
* `data-ignore-morph` er ikke valgfri. `<fs-toast>` lager og fjerner sine egne
|
|
28
|
+
* elementer inni regionen, og uten attributtet river Datastars morfing dem bort
|
|
29
|
+
* ved neste patch, fordi serverens utgave av regionen er tom. Attributtet må
|
|
30
|
+
* stå i HTML-en serveren sender: komponenten kan ikke sette det på seg selv,
|
|
31
|
+
* siden morfingen leser det fra serverens node.
|
|
32
|
+
*/
|
|
33
|
+
export declare const toast: ({ label, }?: ToastOptions) => ToastAttributes;
|
|
34
|
+
//# sourceMappingURL=toast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/toast.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,EAAG,UAAmB,CAAA;AAC9C,eAAO,MAAM,iBAAiB,EAAG,iBAA0B,CAAA;AAE3D,MAAM,MAAM,YAAY,GAAG;IACzB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ,CAAA;QACd,WAAW,EAAE,QAAQ,CAAA;QACrB,YAAY,EAAE,MAAM,CAAA;QACpB,mBAAmB,EAAE,EAAE,CAAA;KACxB,CAAA;IACD,KAAK,EAAE;QAAE,KAAK,EAAE,OAAO,WAAW,CAAA;KAAE,CAAA;IACpC,KAAK,EAAE;QAAE,KAAK,EAAE,OAAO,iBAAiB,CAAA;KAAE,CAAA;CAC3C,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,KAAK,GAAI,aAEnB,YAAiB,KAAG,eASrB,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { attributes } from "../../css/shared.js";
|
|
2
|
+
export const TOAST_CLASS = "fs-toast";
|
|
3
|
+
export const TOAST_CLOSE_CLASS = "fs-toast__close";
|
|
4
|
+
/**
|
|
5
|
+
* Attributtene for varselregionen.
|
|
6
|
+
*
|
|
7
|
+
* Regionen er `role="status"` og ikke `role="alert"`. En melding som kommer
|
|
8
|
+
* fordi noe gikk bra skal ikke avbryte det skjermleseren holder på med.
|
|
9
|
+
*
|
|
10
|
+
* `data-ignore-morph` er ikke valgfri. `<fs-toast>` lager og fjerner sine egne
|
|
11
|
+
* elementer inni regionen, og uten attributtet river Datastars morfing dem bort
|
|
12
|
+
* ved neste patch, fordi serverens utgave av regionen er tom. Attributtet må
|
|
13
|
+
* stå i HTML-en serveren sender: komponenten kan ikke sette det på seg selv,
|
|
14
|
+
* siden morfingen leser det fra serverens node.
|
|
15
|
+
*/
|
|
16
|
+
export const toast = ({ label = "Varsler", } = {}) => ({
|
|
17
|
+
region: attributes({
|
|
18
|
+
role: "status",
|
|
19
|
+
"aria-live": "polite",
|
|
20
|
+
"aria-label": label,
|
|
21
|
+
"data-ignore-morph": "",
|
|
22
|
+
}),
|
|
23
|
+
toast: { class: TOAST_CLASS },
|
|
24
|
+
close: { class: TOAST_CLOSE_CLASS },
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/frittstaende/toast/toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,MAAM,CAAC,MAAM,WAAW,GAAG,UAAmB,CAAA;AAC9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAA0B,CAAA;AAkB3D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EACpB,KAAK,GAAG,SAAS,MACD,EAAE,EAAmB,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,UAAU,CAAC;QACjB,IAAI,EAAE,QAAiB;QACvB,WAAW,EAAE,QAAiB;QAC9B,YAAY,EAAE,KAAK;QACnB,mBAAmB,EAAE,EAAW;KACjC,CAAC;IACF,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;IAC7B,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE;CACpC,CAAC,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export declare const ERROR_SUMMARY_CLASS: "fs-error-summary";
|
|
2
|
+
export declare const ERROR_SUMMARY_TITLE_CLASS: "fs-error-summary__title";
|
|
3
|
+
export type ErrorSummaryOptions = {
|
|
4
|
+
/** Antall feil serveren fant. Er det null, skjules boksen. */
|
|
5
|
+
count?: number;
|
|
6
|
+
/** Id på boksen, slik at skjemaet kan flytte fokus hit etter innsending. */
|
|
7
|
+
id?: string;
|
|
8
|
+
};
|
|
9
|
+
export type ErrorSummaryAttributes = {
|
|
10
|
+
container: {
|
|
11
|
+
class: typeof ERROR_SUMMARY_CLASS;
|
|
12
|
+
role: "alert";
|
|
13
|
+
tabindex: "-1";
|
|
14
|
+
id?: string;
|
|
15
|
+
hidden?: true;
|
|
16
|
+
};
|
|
17
|
+
title: {
|
|
18
|
+
class: typeof ERROR_SUMMARY_TITLE_CLASS;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Attributtene for en feiloppsummering.
|
|
23
|
+
*
|
|
24
|
+
* Serveren skriver hele boksen, også overskriften og lista. `<fs-error-summary>`
|
|
25
|
+
* flytter bare fokus og håndterer klikk på lenkene. Tidligere lagde komponenten
|
|
26
|
+
* overskriften selv, og da forsvant den ved hver morfing i Datastar.
|
|
27
|
+
*
|
|
28
|
+
* ```ts
|
|
29
|
+
* const feil = fs.errorSummary({ count: errors.length, id: "feil" })
|
|
30
|
+
* ```
|
|
31
|
+
* ```html
|
|
32
|
+
* <fs-error-summary {...feil.container}>
|
|
33
|
+
* <h2 {...feil.title}>Du må rette 2 feil</h2>
|
|
34
|
+
* <ul><li><a href="#epost">E-posten mangler @</a></li></ul>
|
|
35
|
+
* </fs-error-summary>
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export declare const errorSummary: ({ count, id, }?: ErrorSummaryOptions) => ErrorSummaryAttributes;
|
|
39
|
+
//# sourceMappingURL=error-summary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-summary.d.ts","sourceRoot":"","sources":["../../../../src/components/ramme/error-summary/error-summary.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,EAAG,kBAA2B,CAAA;AAC9D,eAAO,MAAM,yBAAyB,EAAG,yBAAkC,CAAA;AAE3E,MAAM,MAAM,mBAAmB,GAAG;IAChC,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE;QACT,KAAK,EAAE,OAAO,mBAAmB,CAAA;QACjC,IAAI,EAAE,OAAO,CAAA;QACb,QAAQ,EAAE,IAAI,CAAA;QACd,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,MAAM,CAAC,EAAE,IAAI,CAAA;KACd,CAAA;IACD,KAAK,EAAE;QACL,KAAK,EAAE,OAAO,yBAAyB,CAAA;KACxC,CAAA;CACF,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,YAAY,GAAI,iBAG1B,mBAAwB,KAAG,sBAS5B,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { attributes } from "../../css/shared.js";
|
|
2
|
+
export const ERROR_SUMMARY_CLASS = "fs-error-summary";
|
|
3
|
+
export const ERROR_SUMMARY_TITLE_CLASS = "fs-error-summary__title";
|
|
4
|
+
/**
|
|
5
|
+
* Attributtene for en feiloppsummering.
|
|
6
|
+
*
|
|
7
|
+
* Serveren skriver hele boksen, også overskriften og lista. `<fs-error-summary>`
|
|
8
|
+
* flytter bare fokus og håndterer klikk på lenkene. Tidligere lagde komponenten
|
|
9
|
+
* overskriften selv, og da forsvant den ved hver morfing i Datastar.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* const feil = fs.errorSummary({ count: errors.length, id: "feil" })
|
|
13
|
+
* ```
|
|
14
|
+
* ```html
|
|
15
|
+
* <fs-error-summary {...feil.container}>
|
|
16
|
+
* <h2 {...feil.title}>Du må rette 2 feil</h2>
|
|
17
|
+
* <ul><li><a href="#epost">E-posten mangler @</a></li></ul>
|
|
18
|
+
* </fs-error-summary>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export const errorSummary = ({ count = 0, id, } = {}) => ({
|
|
22
|
+
container: attributes({
|
|
23
|
+
class: ERROR_SUMMARY_CLASS,
|
|
24
|
+
role: "alert",
|
|
25
|
+
tabindex: "-1",
|
|
26
|
+
id,
|
|
27
|
+
hidden: count === 0 ? true : undefined,
|
|
28
|
+
}),
|
|
29
|
+
title: { class: ERROR_SUMMARY_TITLE_CLASS },
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=error-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-summary.js","sourceRoot":"","sources":["../../../../src/components/ramme/error-summary/error-summary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAA2B,CAAA;AAC9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAkC,CAAA;AAsB3E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,KAAK,GAAG,CAAC,EACT,EAAE,MACqB,EAAE,EAA0B,EAAE,CAAC,CAAC;IACvD,SAAS,EAAE,UAAU,CAAC;QACpB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,OAAgB;QACtB,QAAQ,EAAE,IAAa;QACvB,EAAE;QACF,MAAM,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAE,IAAc,CAAC,CAAC,CAAC,SAAS;KAClD,CAAC;IACF,KAAK,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE;CAC5C,CAAC,CAAA"}
|
|
@@ -1,63 +1,37 @@
|
|
|
1
|
-
import { LitElement } from "lit";
|
|
2
1
|
export declare const FS_ERROR_SUMMARY_TAG: "fs-error-summary";
|
|
3
|
-
export declare const ERROR_SUMMARY_CLASS: "fs-error-summary";
|
|
4
|
-
export declare const ERROR_SUMMARY_TITLE_CLASS: "fs-error-summary__title";
|
|
5
2
|
/**
|
|
6
|
-
*
|
|
3
|
+
* Sender brukeren fra en feil i oppsummeringen til feltet som feilet.
|
|
7
4
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
5
|
+
* Serveren skriver hele boksen med `fs.errorSummary()`: klassen, `role`,
|
|
6
|
+
* `tabindex`, overskriften og lista. Komponenten lager ingenting. Den gjorde
|
|
7
|
+
* det før, og da forsvant både klassen og overskriften ved første morfing i
|
|
8
|
+
* Datastar, uten å komme tilbake.
|
|
11
9
|
*
|
|
12
|
-
*
|
|
10
|
+
* Det som er igjen er to ting nettleseren ikke gjør selv:
|
|
11
|
+
*
|
|
12
|
+
* 1. Fokus flyttes til boksen når den kommer til syne, så den som hører siden
|
|
13
13
|
* får vite at innsendingen stoppet.
|
|
14
|
-
* 2.
|
|
14
|
+
* 2. Fokus gis til selve kontrollen når en lenke følges. En vanlig ankerlenke
|
|
15
15
|
* ruller bare dit, og neste tastetrykk fortsetter der fokus sto før.
|
|
16
|
-
* 3. Holder boksen skjult mens lista er tom, så en tom overskrift ikke blir
|
|
17
|
-
* stående i skjemaet.
|
|
18
16
|
*
|
|
19
17
|
* ```html
|
|
20
|
-
* <fs-error-summary
|
|
18
|
+
* <fs-error-summary class="fs-error-summary" role="alert" tabindex="-1">
|
|
19
|
+
* <h2 class="fs-error-summary__title">Skjemaet har to feil</h2>
|
|
21
20
|
* <ul class="fs-list">
|
|
22
21
|
* <li><a href="#epost">Skriv en gyldig e-postadresse</a></li>
|
|
23
22
|
* </ul>
|
|
24
23
|
* </fs-error-summary>
|
|
25
24
|
* ```
|
|
26
25
|
*/
|
|
27
|
-
export declare class FsErrorSummary extends
|
|
28
|
-
static
|
|
29
|
-
heading: {
|
|
30
|
-
type: StringConstructor;
|
|
31
|
-
};
|
|
32
|
-
autofocus: {
|
|
33
|
-
type: BooleanConstructor;
|
|
34
|
-
reflect: boolean;
|
|
35
|
-
};
|
|
36
|
-
};
|
|
37
|
-
/** Overskriften over lista. */
|
|
38
|
-
heading: string;
|
|
39
|
-
/** Flytt fokus hit når boksen kommer til syne. Standard: på. */
|
|
40
|
-
autofocus: boolean;
|
|
26
|
+
export declare class FsErrorSummary extends HTMLElement {
|
|
27
|
+
static observedAttributes: string[];
|
|
41
28
|
private hasFocused;
|
|
42
|
-
/** Tittelen komponenten selv har laget, til forskjell fra konsumentens. */
|
|
43
|
-
private ownTitle?;
|
|
44
|
-
createRenderRoot(): this;
|
|
45
|
-
render(): import("lit").TemplateResult<1>;
|
|
46
|
-
/**
|
|
47
|
-
* Ser etter at lista med feil endrer seg.
|
|
48
|
-
*
|
|
49
|
-
* Komponenten rendrer i vanlig DOM, og da melder ikke `slotchange` fra når
|
|
50
|
-
* konsumenten bytter ut innholdet. Feilene kommer og går mens brukeren
|
|
51
|
-
* fyller ut skjemaet, så endringen må observeres.
|
|
52
|
-
*/
|
|
53
29
|
private observer?;
|
|
54
|
-
private
|
|
30
|
+
private readonly links;
|
|
55
31
|
connectedCallback(): void;
|
|
32
|
+
attributeChangedCallback(): void;
|
|
56
33
|
disconnectedCallback(): void;
|
|
57
|
-
|
|
58
|
-
updated(): void;
|
|
59
|
-
private handleSlotChange;
|
|
60
|
-
private get items();
|
|
34
|
+
private get shouldFocus();
|
|
61
35
|
private sync;
|
|
62
36
|
private handleLinkClick;
|
|
63
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-error-summary.d.ts","sourceRoot":"","sources":["../../../../src/components/ramme/error-summary/fs-error-summary.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"fs-error-summary.d.ts","sourceRoot":"","sources":["../../../../src/components/ramme/error-summary/fs-error-summary.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,EAAG,kBAA2B,CAAA;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C,MAAM,CAAC,kBAAkB,WAA0B;IAEnD,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAC,CAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,iBAAiB,IAAI,IAAI;IASzB,wBAAwB,IAAI,IAAI;IAOhC,oBAAoB,IAAI,IAAI;IAS5B,OAAO,KAAK,WAAW,GAGtB;IAED,OAAO,CAAC,IAAI;IAwBZ,OAAO,CAAC,eAAe,CA6BtB;CACF;AAYD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,cAAc,CAAA;KACnC;CACF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,qBAAuB,GAAG,IAAI,CAIzE"}
|