@entur/form 8.3.2-beta.3 → 8.3.2-beta.4

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.
@@ -0,0 +1,113 @@
1
+ import React from 'react';
2
+ import { VariantType } from '@entur/utils';
3
+ import { Placement } from '@entur/tooltip';
4
+ import './BaseFormControl.scss';
5
+ /** @deprecated use variant="information" instead */
6
+ declare const info = "info";
7
+ /** @deprecated use variant="negative" instead */
8
+ declare const error = "error";
9
+ export type BaseFormControlProps = React.HTMLAttributes<HTMLDivElement> & {
10
+ /** Et skjemaelement med `eds-form-control`-klassen */
11
+ children: React.ReactNode;
12
+ /** Ekstra klassenavn */
13
+ className?: string;
14
+ /** Sett til true om skjema-elementet er disabled */
15
+ disabled?: boolean;
16
+ /** Sett til true om skjema-elementet er i read-only modus */
17
+ readOnly?: boolean;
18
+ /** Tekst eller ikon som vises foran skjema-elementet */
19
+ prepend?: React.ReactNode;
20
+ /** Tekst eller ikon som vises etter skjema-elementet */
21
+ append?: React.ReactNode;
22
+ /** Valideringsvariant */
23
+ variant?: VariantType | typeof error | typeof info;
24
+ /**Størrelsen på skjemaelementet
25
+ * @default "medium"
26
+ */
27
+ size?: 'medium' | 'large';
28
+ /** Label til inputfeltet */
29
+ label: React.ReactNode;
30
+ /** En tooltip som forklarer labelen til inputfeltet */
31
+ labelTooltip?: React.ReactNode;
32
+ /** Forklarende tekst for knappen som åpner labelTooltip */
33
+ labelTooltipButtonAriaLabel?: string;
34
+ labelTooltipPlacement?: Placement;
35
+ /** Illustrerer om inputfeltet er påkrevd eller ikke */
36
+ required?: boolean;
37
+ /** ID som settes på labelen til inputfeltet */
38
+ labelId: string;
39
+ /** Varselmelding, som vil komme under form-komponenten */
40
+ feedback?: string;
41
+ /** Om inputfeltet er fylt med data. Brukes for plassering av label */
42
+ isFilled?: boolean;
43
+ /**Ekstra props som sendes til label */
44
+ labelProps?: {
45
+ [key: string]: any;
46
+ };
47
+ /** Ekstra styling */
48
+ style?: React.CSSProperties;
49
+ /** Plasserer labelen statisk på toppen av inputfeltet */
50
+ disableLabelAnimation?: boolean;
51
+ /** Setter feedbackText sin rolle til "alert" */
52
+ onClick?: (event: React.MouseEvent<HTMLElement>) => void;
53
+ ariaAlertOnFeedback?: boolean;
54
+ /** Legg til et element etter feltet */
55
+ after?: React.ReactNode;
56
+ /** Legg til et element før feltet */
57
+ before?: React.ReactNode;
58
+ /** Aria-label som brukes når inputfeltet er i read-only modus */
59
+ ariaLabelOnReadOnly?: string;
60
+ };
61
+ export declare const BaseFormControl: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
62
+ /** Et skjemaelement med `eds-form-control`-klassen */
63
+ children: React.ReactNode;
64
+ /** Ekstra klassenavn */
65
+ className?: string;
66
+ /** Sett til true om skjema-elementet er disabled */
67
+ disabled?: boolean;
68
+ /** Sett til true om skjema-elementet er i read-only modus */
69
+ readOnly?: boolean;
70
+ /** Tekst eller ikon som vises foran skjema-elementet */
71
+ prepend?: React.ReactNode;
72
+ /** Tekst eller ikon som vises etter skjema-elementet */
73
+ append?: React.ReactNode;
74
+ /** Valideringsvariant */
75
+ variant?: VariantType | typeof error | typeof info;
76
+ /**Størrelsen på skjemaelementet
77
+ * @default "medium"
78
+ */
79
+ size?: "medium" | "large";
80
+ /** Label til inputfeltet */
81
+ label: React.ReactNode;
82
+ /** En tooltip som forklarer labelen til inputfeltet */
83
+ labelTooltip?: React.ReactNode;
84
+ /** Forklarende tekst for knappen som åpner labelTooltip */
85
+ labelTooltipButtonAriaLabel?: string;
86
+ labelTooltipPlacement?: Placement;
87
+ /** Illustrerer om inputfeltet er påkrevd eller ikke */
88
+ required?: boolean;
89
+ /** ID som settes på labelen til inputfeltet */
90
+ labelId: string;
91
+ /** Varselmelding, som vil komme under form-komponenten */
92
+ feedback?: string;
93
+ /** Om inputfeltet er fylt med data. Brukes for plassering av label */
94
+ isFilled?: boolean;
95
+ /**Ekstra props som sendes til label */
96
+ labelProps?: {
97
+ [key: string]: any;
98
+ };
99
+ /** Ekstra styling */
100
+ style?: React.CSSProperties;
101
+ /** Plasserer labelen statisk på toppen av inputfeltet */
102
+ disableLabelAnimation?: boolean;
103
+ /** Setter feedbackText sin rolle til "alert" */
104
+ onClick?: (event: React.MouseEvent<HTMLElement>) => void;
105
+ ariaAlertOnFeedback?: boolean;
106
+ /** Legg til et element etter feltet */
107
+ after?: React.ReactNode;
108
+ /** Legg til et element før feltet */
109
+ before?: React.ReactNode;
110
+ /** Aria-label som brukes når inputfeltet er i read-only modus */
111
+ ariaLabelOnReadOnly?: string;
112
+ } & React.RefAttributes<HTMLDivElement>>;
113
+ export {};
@@ -0,0 +1,58 @@
1
+ import React, { CSSProperties } from 'react';
2
+ import './Checkbox.scss';
3
+ export type CheckboxProps = {
4
+ /** Ekstra klassenavn */
5
+ className?: string;
6
+ /** Label for checkboxen, som vises ved høyre side. */
7
+ children?: React.ReactNode;
8
+ /** Om Checkbox er avmerket, eller om den er i en indeterminate state */
9
+ checked?: 'indeterminate' | boolean;
10
+ /** Callback for Checkbox */
11
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
12
+ /** Om checkboxen er disabled eller ikke
13
+ * @default false
14
+ */
15
+ disabled?: boolean;
16
+ /** Sett til true om skjema-elementet er i read-only modus
17
+ * @default false
18
+ */
19
+ readOnly?: boolean;
20
+ /**Ekstra styling til komponenten */
21
+ style?: CSSProperties;
22
+ /** Reduserer klikkflaten for Checkbox'en
23
+ * @default false
24
+ */
25
+ reduceClickArea?: boolean;
26
+ /** Om animasjon skal deaktiveres
27
+ * @default false
28
+ */
29
+ disableAnimation?: boolean;
30
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'checked'>;
31
+ export declare const Checkbox: React.ForwardRefExoticComponent<{
32
+ /** Ekstra klassenavn */
33
+ className?: string;
34
+ /** Label for checkboxen, som vises ved høyre side. */
35
+ children?: React.ReactNode;
36
+ /** Om Checkbox er avmerket, eller om den er i en indeterminate state */
37
+ checked?: "indeterminate" | boolean;
38
+ /** Callback for Checkbox */
39
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
40
+ /** Om checkboxen er disabled eller ikke
41
+ * @default false
42
+ */
43
+ disabled?: boolean;
44
+ /** Sett til true om skjema-elementet er i read-only modus
45
+ * @default false
46
+ */
47
+ readOnly?: boolean;
48
+ /**Ekstra styling til komponenten */
49
+ style?: CSSProperties;
50
+ /** Reduserer klikkflaten for Checkbox'en
51
+ * @default false
52
+ */
53
+ reduceClickArea?: boolean;
54
+ /** Om animasjon skal deaktiveres
55
+ * @default false
56
+ */
57
+ disableAnimation?: boolean;
58
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, "checked"> & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { VariantType } from '@entur/utils';
3
+ import './FeedbackText.scss';
4
+ /** @deprecated use variant="information" instead */
5
+ declare const info = "info";
6
+ /** @deprecated use variant="negative" instead */
7
+ declare const error = "error";
8
+ export type FeedbackTextProps = {
9
+ /** Teksten som vises */
10
+ children: React.ReactNode;
11
+ /** Skjuler ikonet */
12
+ hideIcon?: boolean;
13
+ /** Feedbackvarianten*/
14
+ variant: VariantType | typeof error | typeof info;
15
+ /** Ekstra klassenavn */
16
+ className?: string;
17
+ [key: string]: any;
18
+ };
19
+ export declare const FeedbackText: React.FC<FeedbackTextProps>;
20
+ export {};
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import './Fieldset.scss';
3
+ export type FieldsetProps = {
4
+ /** Innholdet i felt-gruppen. */
5
+ children: React.ReactNode;
6
+ /** Ekstra klassenavn */
7
+ className?: string;
8
+ /** Labelen til felt-gruppen. */
9
+ label?: React.ReactNode;
10
+ [key: string]: any;
11
+ };
12
+ export declare const Fieldset: React.FC<FieldsetProps>;
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ type InputGroupContextType = {
3
+ isFilled: boolean;
4
+ setFilled: (e: boolean) => void;
5
+ };
6
+ export declare const InputGroupContextProvider: React.FC<{
7
+ children: React.ReactNode;
8
+ }>;
9
+ export declare const useInputGroupContext: () => InputGroupContextType;
10
+ export {};
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import './InputGroupLabel.scss';
3
+ export type InputGroupLabelProps = {
4
+ label?: React.ReactNode;
5
+ required?: boolean;
6
+ labelTooltip?: string;
7
+ labelId: string;
8
+ staticAnimation?: boolean;
9
+ } & React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>;
10
+ export declare const InputGroupLabel: React.FC<InputGroupLabelProps>;
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import './Radio.scss';
3
+ export type RadioProps = {
4
+ /** Ekstra klassenavn */
5
+ className?: string;
6
+ /** Label til radio-button. Vises ved høyre side. */
7
+ children?: React.ReactNode;
8
+ /** Verdien til radioknappen */
9
+ value: string;
10
+ /** Om radiobutton er disabled eller ikke
11
+ * @default false
12
+ */
13
+ disabled?: boolean;
14
+ /** Beskrivelse som leses opp av skjermlesere når radiobutton er readonly */
15
+ readOnlyLabelDescription?: string;
16
+ } & React.InputHTMLAttributes<HTMLInputElement>;
17
+ export declare const Radio: React.ForwardRefExoticComponent<{
18
+ /** Ekstra klassenavn */
19
+ className?: string;
20
+ /** Label til radio-button. Vises ved høyre side. */
21
+ children?: React.ReactNode;
22
+ /** Verdien til radioknappen */
23
+ value: string;
24
+ /** Om radiobutton er disabled eller ikke
25
+ * @default false
26
+ */
27
+ disabled?: boolean;
28
+ /** Beskrivelse som leses opp av skjermlesere når radiobutton er readonly */
29
+ readOnlyLabelDescription?: string;
30
+ } & React.InputHTMLAttributes<HTMLInputElement> & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ export type RadioGroupProps = {
3
+ /** Navnet til radiogruppen. */
4
+ name: string;
5
+ /** Overskrift over radiogruppen */
6
+ label?: string;
7
+ /** Verdien til den valgte radioknappen */
8
+ value: string | null;
9
+ /** Radioknappene sendes inn som children */
10
+ children: React.ReactNode;
11
+ /** En callback som blir kalles hver gang en radioknapp klikkes på */
12
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
13
+ [key: string]: any;
14
+ /** Sett radiogruppen i readonly-modus */
15
+ readOnly?: boolean;
16
+ };
17
+ export declare const RadioGroup: React.FC<RadioGroupProps>;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ type RadioGroupContextProps = {
3
+ name: string;
4
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
5
+ value: string | null;
6
+ readOnly?: boolean;
7
+ };
8
+ export declare const RadioGroupContextProvider: React.Provider<RadioGroupContextProps | null>;
9
+ export declare const useRadioGroupContext: () => RadioGroupContextProps;
10
+ export {};
@@ -0,0 +1,66 @@
1
+ import React from 'react';
2
+ import './Switch.scss';
3
+ export type SwitchProps = {
4
+ /** Ekstra klassenavn */
5
+ className?: string;
6
+ /** Label for Switch-en. */
7
+ children?: React.ReactNode;
8
+ /** Posisjonen til label for Switch-en.
9
+ * @default "right"
10
+ */
11
+ labelPlacement?: 'right' | 'bottom';
12
+ /** Om switch-en er checked eller ikke */
13
+ checked?: boolean;
14
+ /** Ikonet som skal stå inne i sirkelen på Switch-en */
15
+ icon?: React.ReactNode;
16
+ /** Skjul ikonet inne i sikrelen på Switch-en
17
+ * @default false
18
+ */
19
+ hideIcon?: boolean;
20
+ /** Farge som settes på ikon og bakgrunn når Switch-en er "checked"
21
+ * @default colors.validation.mint
22
+ */
23
+ color?: string;
24
+ /** Farge på bakgrunn når Switch-en er "checked" og står i en kontrast-seksjon
25
+ * @default colors.validation.mintContrast
26
+ */
27
+ contrastColor?: string;
28
+ /** Størrelsen på Switch-en
29
+ * @default "medium"
30
+ */
31
+ size?: 'medium' | 'large';
32
+ /** Callback for når verdien endres */
33
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
34
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;
35
+ export declare const Switch: React.ForwardRefExoticComponent<{
36
+ /** Ekstra klassenavn */
37
+ className?: string;
38
+ /** Label for Switch-en. */
39
+ children?: React.ReactNode;
40
+ /** Posisjonen til label for Switch-en.
41
+ * @default "right"
42
+ */
43
+ labelPlacement?: "right" | "bottom";
44
+ /** Om switch-en er checked eller ikke */
45
+ checked?: boolean;
46
+ /** Ikonet som skal stå inne i sirkelen på Switch-en */
47
+ icon?: React.ReactNode;
48
+ /** Skjul ikonet inne i sikrelen på Switch-en
49
+ * @default false
50
+ */
51
+ hideIcon?: boolean;
52
+ /** Farge som settes på ikon og bakgrunn når Switch-en er "checked"
53
+ * @default colors.validation.mint
54
+ */
55
+ color?: string;
56
+ /** Farge på bakgrunn når Switch-en er "checked" og står i en kontrast-seksjon
57
+ * @default colors.validation.mintContrast
58
+ */
59
+ contrastColor?: string;
60
+ /** Størrelsen på Switch-en
61
+ * @default "medium"
62
+ */
63
+ size?: "medium" | "large";
64
+ /** Callback for når verdien endres */
65
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
66
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, "size"> & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,57 @@
1
+ import React from 'react';
2
+ import { VariantType } from '@entur/utils';
3
+ import './TextArea.scss';
4
+ import { Placement } from '@entur/tooltip';
5
+ /** @deprecated use variant="information" instead */
6
+ declare const info = "info";
7
+ /** @deprecated use variant="negative" instead */
8
+ declare const error = "error";
9
+ export type TextAreaProps = {
10
+ /** Ekstra klassenavn */
11
+ className?: string;
12
+ /** Valideringsvariant */
13
+ variant?: VariantType | typeof error | typeof info;
14
+ /** Deaktiverer tekstområdet */
15
+ disabled?: boolean;
16
+ /** Setter tekstområdet i read-only modus */
17
+ readOnly?: boolean;
18
+ /** Label over TextArea */
19
+ label: string;
20
+ /** En tooltip som forklarer labelen til inputfeltet */
21
+ labelTooltip?: React.ReactNode;
22
+ /** Forklarende tekst for knappen som åpner labelTooltip */
23
+ labelTooltipButtonAriaLabel?: string;
24
+ /** Plasseringen til tooltip-en relativt til spørsmålstegn-knappen */
25
+ labelTooltipPlacement?: Placement;
26
+ /** Varselmelding, som vil komme under TextArea */
27
+ feedback?: string;
28
+ /** Plasserer labelen statisk på toppen av inputfeltet
29
+ * @default false
30
+ */
31
+ disableLabelAnimation?: boolean;
32
+ } & React.TextareaHTMLAttributes<HTMLTextAreaElement>;
33
+ export declare const TextArea: React.ForwardRefExoticComponent<{
34
+ /** Ekstra klassenavn */
35
+ className?: string;
36
+ /** Valideringsvariant */
37
+ variant?: VariantType | typeof error | typeof info;
38
+ /** Deaktiverer tekstområdet */
39
+ disabled?: boolean;
40
+ /** Setter tekstområdet i read-only modus */
41
+ readOnly?: boolean;
42
+ /** Label over TextArea */
43
+ label: string;
44
+ /** En tooltip som forklarer labelen til inputfeltet */
45
+ labelTooltip?: React.ReactNode;
46
+ /** Forklarende tekst for knappen som åpner labelTooltip */
47
+ labelTooltipButtonAriaLabel?: string;
48
+ /** Plasseringen til tooltip-en relativt til spørsmålstegn-knappen */
49
+ labelTooltipPlacement?: Placement;
50
+ /** Varselmelding, som vil komme under TextArea */
51
+ feedback?: string;
52
+ /** Plasserer labelen statisk på toppen av inputfeltet
53
+ * @default false
54
+ */
55
+ disableLabelAnimation?: boolean;
56
+ } & React.TextareaHTMLAttributes<HTMLTextAreaElement> & React.RefAttributes<HTMLTextAreaElement>>;
57
+ export {};
@@ -0,0 +1,91 @@
1
+ import React from 'react';
2
+ import { VariantType } from '@entur/utils';
3
+ import './TextField.scss';
4
+ import { Placement } from '@entur/tooltip';
5
+ /** @deprecated use variant="information" instead */
6
+ declare const info = "info";
7
+ /** @deprecated use variant="negative" instead */
8
+ declare const error = "error";
9
+ export type TextFieldProps = {
10
+ /** Tekst eller ikon som kommer før inputfeltet */
11
+ prepend?: React.ReactNode;
12
+ /** Tekst eller ikon som kommer etter inputfeltet */
13
+ append?: React.ReactNode;
14
+ /** Ekstra klassenavn */
15
+ className?: string;
16
+ /** Label over TextField */
17
+ label: React.ReactNode;
18
+ /** En tooltip som forklarer labelen til inputfeltet */
19
+ labelTooltip?: React.ReactNode;
20
+ /** Forklarende tekst for knappen som åpner labelTooltip */
21
+ labelTooltipButtonAriaLabel?: string;
22
+ /** Plasseringen til tooltip-en relativt til spørsmålstegn-knappen */
23
+ labelTooltipPlacement?: Placement;
24
+ /** Varselmelding, som vil komme under TextField */
25
+ feedback?: string;
26
+ /** Hvilken valideringsfarge som vises*/
27
+ variant?: VariantType | typeof error | typeof info;
28
+ /** Deaktiver inputfeltet */
29
+ disabled?: boolean;
30
+ /** Setter inputfeltet i read-only modus */
31
+ readOnly?: boolean;
32
+ /** Størrelsen på TextField
33
+ * @default "medium"
34
+ */
35
+ size?: 'medium' | 'large';
36
+ /** Plasserer labelen statisk på toppen av inputfeltet
37
+ * @default false
38
+ */
39
+ disableLabelAnimation?: boolean;
40
+ /** Ekstra props som sendes til label-elementet */
41
+ labelProps?: React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>;
42
+ /** Om man skal ha muliget for å nullstille TextField. Viser lukkekryss hvis feltet er fylt.
43
+ * @default false
44
+ */
45
+ clearable?: boolean;
46
+ /** Callback for clearable */
47
+ onClear?: () => void;
48
+ ariaAlertOnFeedback?: boolean;
49
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'label'>;
50
+ export declare const TextField: React.ForwardRefExoticComponent<{
51
+ /** Tekst eller ikon som kommer før inputfeltet */
52
+ prepend?: React.ReactNode;
53
+ /** Tekst eller ikon som kommer etter inputfeltet */
54
+ append?: React.ReactNode;
55
+ /** Ekstra klassenavn */
56
+ className?: string;
57
+ /** Label over TextField */
58
+ label: React.ReactNode;
59
+ /** En tooltip som forklarer labelen til inputfeltet */
60
+ labelTooltip?: React.ReactNode;
61
+ /** Forklarende tekst for knappen som åpner labelTooltip */
62
+ labelTooltipButtonAriaLabel?: string;
63
+ /** Plasseringen til tooltip-en relativt til spørsmålstegn-knappen */
64
+ labelTooltipPlacement?: Placement;
65
+ /** Varselmelding, som vil komme under TextField */
66
+ feedback?: string;
67
+ /** Hvilken valideringsfarge som vises*/
68
+ variant?: VariantType | typeof error | typeof info;
69
+ /** Deaktiver inputfeltet */
70
+ disabled?: boolean;
71
+ /** Setter inputfeltet i read-only modus */
72
+ readOnly?: boolean;
73
+ /** Størrelsen på TextField
74
+ * @default "medium"
75
+ */
76
+ size?: "medium" | "large";
77
+ /** Plasserer labelen statisk på toppen av inputfeltet
78
+ * @default false
79
+ */
80
+ disableLabelAnimation?: boolean;
81
+ /** Ekstra props som sendes til label-elementet */
82
+ labelProps?: React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>;
83
+ /** Om man skal ha muliget for å nullstille TextField. Viser lukkekryss hvis feltet er fylt.
84
+ * @default false
85
+ */
86
+ clearable?: boolean;
87
+ /** Callback for clearable */
88
+ onClear?: () => void;
89
+ ariaAlertOnFeedback?: boolean;
90
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, "size" | "label"> & React.RefAttributes<HTMLInputElement>>;
91
+ export {};
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { VariantType } from '@entur/utils';
3
+ /** @deprecated use variant="information" instead */
4
+ declare const info = "info";
5
+ /** @deprecated use variant="negative" instead */
6
+ declare const error = "error";
7
+ export type VariantProviderProps = {
8
+ variant?: VariantType | typeof error | typeof info;
9
+ };
10
+ export declare const VariantProvider: React.FC<VariantProviderProps>;
11
+ export declare const useVariant: () => VariantType | typeof error | typeof info | null;
12
+ export {};