@entur/dropdown 7.0.3 → 7.1.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/README.md +2 -2
- package/dist/Dropdown.d.ts +3 -1
- package/dist/MultiSelect.d.ts +4 -73
- package/dist/SearchableDropdown.d.ts +5 -81
- package/dist/dropdown.cjs.development.js +16 -13
- package/dist/dropdown.cjs.development.js.map +1 -1
- package/dist/dropdown.cjs.production.min.js +1 -1
- package/dist/dropdown.cjs.production.min.js.map +1 -1
- package/dist/dropdown.esm.js +16 -13
- package/dist/dropdown.esm.js.map +1 -1
- package/package.json +11 -11
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
This package contains the different Dropdown components.
|
|
4
4
|
|
|
5
|
-
> 💡 Looking for the [documentation](https://
|
|
5
|
+
> 💡 Looking for the [documentation](https://linje.entur.no/komponenter/skjemaelementer/dropdown)?
|
|
6
6
|
|
|
7
7
|
## Installation
|
|
8
8
|
|
|
@@ -14,4 +14,4 @@ yarn add @entur/dropdown
|
|
|
14
14
|
|
|
15
15
|
## Usage
|
|
16
16
|
|
|
17
|
-
Please refer to the [documentation](https://
|
|
17
|
+
Please refer to the [documentation](https://linje.entur.no/komponenter/skjemaelementer/dropdown) for usage information.
|
package/dist/Dropdown.d.ts
CHANGED
|
@@ -39,6 +39,8 @@ export type DropdownProps<ValueType> = {
|
|
|
39
39
|
feedback?: string;
|
|
40
40
|
/** Tekst eller ikon som kommer før dropdown-en */
|
|
41
41
|
prepend?: React.ReactNode;
|
|
42
|
+
/** */
|
|
43
|
+
loading?: boolean;
|
|
42
44
|
/** En tekst som beskriver hva som skjer når man venter på items
|
|
43
45
|
* @default 'Laster inn …'
|
|
44
46
|
*/
|
|
@@ -85,5 +87,5 @@ export type DropdownProps<ValueType> = {
|
|
|
85
87
|
*/
|
|
86
88
|
ariaLabelSelectedItem?: string;
|
|
87
89
|
};
|
|
88
|
-
export declare const Dropdown: <ValueType extends unknown>({ ariaLabelChosenSingular, ariaLabelCloseList, ariaLabelOpenList, ariaLabelSelectedItem, className, clearable, disabled, disableLabelAnimation, feedback, items: initialItems, label, labelClearSelectedItem, labelTooltip, listStyle, loadingText, noMatchesText, onChange, placeholder, prepend, readOnly, selectedItem, selectOnBlur, selectOnTab, style, variant, ...rest }: DropdownProps<ValueType>) => React.JSX.Element;
|
|
90
|
+
export declare const Dropdown: <ValueType extends unknown>({ ariaLabelChosenSingular, ariaLabelCloseList, ariaLabelOpenList, ariaLabelSelectedItem, className, clearable, disabled, disableLabelAnimation, feedback, items: initialItems, label, labelClearSelectedItem, labelTooltip, listStyle, loading, loadingText, noMatchesText, onChange, placeholder, prepend, readOnly, selectedItem, selectOnBlur, selectOnTab, style, variant, ...rest }: DropdownProps<ValueType>) => React.JSX.Element;
|
|
89
91
|
export {};
|
package/dist/MultiSelect.d.ts
CHANGED
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
import React, { Dispatch, SetStateAction } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import { NormalizedDropdownItemType
|
|
2
|
+
import { DropdownProps } from './Dropdown';
|
|
3
|
+
import { NormalizedDropdownItemType } from './types';
|
|
4
4
|
import './Dropdown.scss';
|
|
5
|
-
|
|
6
|
-
declare const info = "info";
|
|
7
|
-
/** @deprecated use variant="negative" instead */
|
|
8
|
-
declare const error = "error";
|
|
9
|
-
export type MultiSelectProps<ValueType> = {
|
|
10
|
-
/** Beskrivende tekst som forklarer feltet */
|
|
11
|
-
label: string;
|
|
12
|
-
/** Tilgjengelige valg i MultiSelect */
|
|
13
|
-
items: PotentiallyAsyncDropdownItemType<ValueType>;
|
|
5
|
+
export type MultiSelectProps<ValueType> = Omit<DropdownProps<ValueType>, 'selectedItem' | 'onChange'> & {
|
|
14
6
|
/** Elementer som er valgt blant 'items'. Bruk tom liste for ingen valgte
|
|
15
7
|
*/
|
|
16
8
|
selectedItems: NormalizedDropdownItemType<ValueType>[];
|
|
@@ -21,30 +13,6 @@ export type MultiSelectProps<ValueType> = {
|
|
|
21
13
|
* @default Regex-test som sjekker om item.label inneholder input-teksten
|
|
22
14
|
*/
|
|
23
15
|
itemFilter?: (item: NormalizedDropdownItemType<ValueType>, inputValue: string | undefined) => boolean;
|
|
24
|
-
/** Hvilken valideringsvariant som gjelder */
|
|
25
|
-
variant?: VariantType | typeof error | typeof info;
|
|
26
|
-
/** Valideringsmelding, brukes sammen med `variant` */
|
|
27
|
-
feedback?: string;
|
|
28
|
-
/** Om dropdown-en er deaktivert */
|
|
29
|
-
disabled?: boolean;
|
|
30
|
-
/** Om dropdown-en er i read-only modus */
|
|
31
|
-
readOnly?: boolean;
|
|
32
|
-
/** Om en knapp for å fjerne alle valg skal vises
|
|
33
|
-
* @default true
|
|
34
|
-
*/
|
|
35
|
-
clearable?: boolean;
|
|
36
|
-
/** Plasserer ledeteksten statisk på toppen av inputfeltet */
|
|
37
|
-
disableLabelAnimation?: boolean;
|
|
38
|
-
/** Placeholder-tekst når ingenting er satt */
|
|
39
|
-
placeholder?: string;
|
|
40
|
-
/** En tekst som beskriver hva som skjer når man venter på items
|
|
41
|
-
* @default "Laster inn …"
|
|
42
|
-
*/
|
|
43
|
-
loadingText?: string;
|
|
44
|
-
/** Tekst som kommer opp når det ikke er noe treff på filtreringsøket
|
|
45
|
-
* @default "Ingen treff for søket"
|
|
46
|
-
*/
|
|
47
|
-
noMatchesText?: string;
|
|
48
16
|
/** Skjuler «Velg alle» fra listen med valg
|
|
49
17
|
* @default false
|
|
50
18
|
*/
|
|
@@ -57,27 +25,10 @@ export type MultiSelectProps<ValueType> = {
|
|
|
57
25
|
* @default 10
|
|
58
26
|
*/
|
|
59
27
|
maxChips?: number;
|
|
60
|
-
/** Tekst eller ikon som kommer før MultiSelect */
|
|
61
|
-
prepend?: React.ReactNode;
|
|
62
28
|
/** Resetter input etter at et element er valgt i listen
|
|
63
29
|
* @default false
|
|
64
30
|
*/
|
|
65
31
|
clearInputOnSelect?: boolean;
|
|
66
|
-
/** Lar brukeren velge ved å "tab-e" seg ut av komponenten */
|
|
67
|
-
selectOnTab?: boolean;
|
|
68
|
-
/**
|
|
69
|
-
* @deprecated
|
|
70
|
-
* Bruk selectOnTab i stedet
|
|
71
|
-
*
|
|
72
|
-
* Lar brukeren velge ved å "tab-e" seg ut av komponenten */
|
|
73
|
-
selectOnBlur?: boolean;
|
|
74
|
-
style?: React.CSSProperties;
|
|
75
|
-
/** Styling som sendes ned til MultiSelect-lista */
|
|
76
|
-
listStyle?: {
|
|
77
|
-
[key: string]: any;
|
|
78
|
-
};
|
|
79
|
-
/** Ekstra klassenavn */
|
|
80
|
-
className?: string;
|
|
81
32
|
/** Teksten som vises for «Velg alle»-elementet i listen
|
|
82
33
|
* @default "Velg alle"
|
|
83
34
|
*/
|
|
@@ -90,8 +41,6 @@ export type MultiSelectProps<ValueType> = {
|
|
|
90
41
|
* @default "Fjern valgte"
|
|
91
42
|
*/
|
|
92
43
|
labelClearAllItems?: string;
|
|
93
|
-
/** En tooltip som gir ekstra info om inputfeltet */
|
|
94
|
-
labelTooltip?: React.ReactNode;
|
|
95
44
|
/** Tekst for skjemleser på knapper for å fjerne valgt element
|
|
96
45
|
* @default "trykk for å fjerne valg"
|
|
97
46
|
*/
|
|
@@ -100,27 +49,9 @@ export type MultiSelectProps<ValueType> = {
|
|
|
100
49
|
* @default "valgte"
|
|
101
50
|
*/
|
|
102
51
|
ariaLabelChosenPlural?: string;
|
|
103
|
-
/** Tekst for skjemleser for knapp som lukker listen med valg
|
|
104
|
-
* @default "Lukk liste med valg"
|
|
105
|
-
*/
|
|
106
|
-
ariaLabelCloseList?: string;
|
|
107
|
-
/** Tekst for skjemleser for knapp som åpner listen med valg
|
|
108
|
-
* @default "Åpne liste med valg"
|
|
109
|
-
*/
|
|
110
|
-
ariaLabelOpenList?: string;
|
|
111
52
|
/** Tekst for skjemleser for å hoppe til input-feltet
|
|
112
53
|
* @default `${selectedItems.length} valgte elementer, trykk for å hoppe til tekstfeltet`
|
|
113
54
|
*/
|
|
114
55
|
ariaLabelJumpToInput?: string;
|
|
115
|
-
/** Ord for at et element er valgt i entall
|
|
116
|
-
* eks. 'Element 1, _valgt_'
|
|
117
|
-
* @default 'valgt'
|
|
118
|
-
*/
|
|
119
|
-
ariaLabelChosenSingular?: string;
|
|
120
|
-
/** Tekst for skjermleser som beskriver statusen til et element som valgt
|
|
121
|
-
* @default ', valgt element, trykk for å fjerne'
|
|
122
|
-
*/
|
|
123
|
-
ariaLabelSelectedItem?: string;
|
|
124
56
|
};
|
|
125
|
-
export declare const MultiSelect: <ValueType extends unknown>({ className, clearable, clearInputOnSelect, debounceTimeout, disabled, disableLabelAnimation, feedback, hideSelectAll, items: initialItems, itemFilter, label, labelAllItemsSelected, labelClearAllItems, labelSelectAll, labelTooltip, listStyle, loadingText, maxChips, noMatchesText, onChange, placeholder, readOnly, selectedItems, selectOnBlur, selectOnTab, style, variant, ariaLabelChosenSingular, ariaLabelChosenPlural, ariaLabelCloseList, ariaLabelJumpToInput, ariaLabelOpenList, ariaLabelRemoveSelected, ariaLabelSelectedItem, ...rest }: MultiSelectProps<ValueType>) => React.JSX.Element;
|
|
126
|
-
export {};
|
|
57
|
+
export declare const MultiSelect: <ValueType extends unknown>({ className, clearable, clearInputOnSelect, debounceTimeout, disabled, disableLabelAnimation, feedback, hideSelectAll, items: initialItems, itemFilter, label, labelAllItemsSelected, labelClearAllItems, labelSelectAll, labelTooltip, listStyle, loading, loadingText, maxChips, noMatchesText, onChange, placeholder, readOnly, selectedItems, selectOnBlur, selectOnTab, style, variant, ariaLabelChosenSingular, ariaLabelChosenPlural, ariaLabelCloseList, ariaLabelJumpToInput, ariaLabelOpenList, ariaLabelRemoveSelected, ariaLabelSelectedItem, ...rest }: MultiSelectProps<ValueType>) => React.JSX.Element;
|
|
@@ -1,95 +1,19 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import {
|
|
3
|
-
import { NormalizedDropdownItemType
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { DropdownProps } from './Dropdown';
|
|
3
|
+
import { NormalizedDropdownItemType } from './types';
|
|
4
4
|
import './Dropdown.scss';
|
|
5
|
-
|
|
6
|
-
declare const info = "info";
|
|
7
|
-
/** @deprecated use variant="negative" instead */
|
|
8
|
-
declare const error = "error";
|
|
9
|
-
export type SearchableDropdownProps<ValueType> = {
|
|
10
|
-
/** Tilgjengelige valg i dropdown-en */
|
|
11
|
-
items: PotentiallyAsyncDropdownItemType<ValueType>;
|
|
12
|
-
/** Valgt element. Bruk null for ingen verdi */
|
|
13
|
-
selectedItem: NormalizedDropdownItemType<ValueType> | null;
|
|
14
|
-
/** Callback ved valg som skal brukes til å oppdatere selectedItem */
|
|
15
|
-
onChange?: (selectedItem: NormalizedDropdownItemType<ValueType> | null) => void | Dispatch<SetStateAction<NormalizedDropdownItemType<ValueType> | null>>;
|
|
5
|
+
export type SearchableDropdownProps<ValueType> = DropdownProps<ValueType> & {
|
|
16
6
|
/** Filtreringen som brukes når man skriver inn tekst i inputfeltet
|
|
17
7
|
* @default Regex-test som sjekker om item.label inneholder input-teksten
|
|
18
8
|
*/
|
|
19
9
|
itemFilter?: (item: NormalizedDropdownItemType<ValueType>, inputValue: string | undefined) => boolean;
|
|
20
|
-
/** Beskrivende tekst som forklarer feltet */
|
|
21
|
-
label: string;
|
|
22
|
-
/** Placeholder-tekst når ingenting er satt */
|
|
23
|
-
placeholder?: string;
|
|
24
|
-
/** Vis knapp for å nullstille Dropdown-en skal vises
|
|
25
|
-
* @default true
|
|
26
|
-
*/
|
|
27
|
-
clearable?: boolean;
|
|
28
|
-
/** Plasserer labelen statisk på toppen av inputfeltet
|
|
29
|
-
* @default false
|
|
30
|
-
*/
|
|
31
|
-
disableLabelAnimation?: boolean;
|
|
32
10
|
/** Antall millisekunder man venter etter tekstinput før det gjøres kall for å oppdatere items
|
|
33
11
|
* Denne er kun relevant hvis du sender inn en funksjon som items.
|
|
34
12
|
*/
|
|
35
13
|
debounceTimeout?: number;
|
|
36
|
-
/** Deaktiver dropdown-en */
|
|
37
|
-
disabled?: boolean;
|
|
38
|
-
/** Lar brukeren velge ved å "tab-e" seg ut av komponenten */
|
|
39
|
-
selectOnTab?: boolean;
|
|
40
|
-
/**
|
|
41
|
-
* @deprecated
|
|
42
|
-
* Bruk selectOnTab i stedet
|
|
43
|
-
*
|
|
44
|
-
* Lar brukeren velge ved å "tab-e" seg ut av komponenten */
|
|
45
|
-
selectOnBlur?: boolean;
|
|
46
14
|
/** Tekst som kommer opp når det ikke er noe treff på filtreringsøket
|
|
47
15
|
* @default "Ingen treff for søket"
|
|
48
16
|
*/
|
|
49
17
|
noMatchesText?: string;
|
|
50
|
-
/** Gjør dropdown-en til å kun kunne leses
|
|
51
|
-
* @default false
|
|
52
|
-
*/
|
|
53
|
-
readOnly?: boolean;
|
|
54
|
-
/** Tekst eller ikon som kommer før dropdown-en */
|
|
55
|
-
prepend?: React.ReactNode;
|
|
56
|
-
/** En tekst som beskriver hva som skjer når man venter på items */
|
|
57
|
-
loadingText?: string;
|
|
58
|
-
/** Hvilken valideringsvariant som gjelder*/
|
|
59
|
-
variant?: VariantType | typeof error | typeof info;
|
|
60
|
-
/** Valideringsmelding, brukes sammen med `variant` */
|
|
61
|
-
feedback?: string;
|
|
62
|
-
className?: string;
|
|
63
|
-
style?: {
|
|
64
|
-
[key: string]: any;
|
|
65
|
-
};
|
|
66
|
-
/** Style som kun påføres listeelementet */
|
|
67
|
-
listStyle?: {
|
|
68
|
-
[key: string]: any;
|
|
69
|
-
};
|
|
70
|
-
/** Tekst som beskriver at man fjerner valget sitt
|
|
71
|
-
* @default "fjern valgt"
|
|
72
|
-
*/
|
|
73
|
-
labelClearSelectedItem?: string;
|
|
74
|
-
/** En tooltip som gir ekstra info om inputfeltet */
|
|
75
|
-
labelTooltip?: React.ReactNode;
|
|
76
|
-
/** Tekst for skjemleser for knapp som lukker listen med valg
|
|
77
|
-
* @default "Lukk liste med valg"
|
|
78
|
-
*/
|
|
79
|
-
ariaLabelCloseList?: string;
|
|
80
|
-
/** Tekst for skjemleser for knapp som åpner listen med valg
|
|
81
|
-
* @default "Åpne liste med valg"
|
|
82
|
-
*/
|
|
83
|
-
ariaLabelOpenList?: string;
|
|
84
|
-
/** Ord for at et element er valgt i entall
|
|
85
|
-
* eks. 'Element 1, _valgt_'
|
|
86
|
-
* @default "valgt"
|
|
87
|
-
*/
|
|
88
|
-
ariaLabelChosenSingular?: string;
|
|
89
|
-
/** Tekst for skjermleser som beskriver statusen til et element som valgt
|
|
90
|
-
* @default ", valgt element, trykk for å fjerne"
|
|
91
|
-
*/
|
|
92
|
-
ariaLabelSelectedItem?: string;
|
|
93
18
|
};
|
|
94
|
-
export declare const SearchableDropdown: <ValueType extends unknown>({ ariaLabelChosenSingular, ariaLabelCloseList, ariaLabelOpenList, ariaLabelSelectedItem, className, clearable, debounceTimeout, disabled, disableLabelAnimation, feedback, items: initialItems, itemFilter, label, labelClearSelectedItem, labelTooltip, listStyle, loadingText, noMatchesText, onChange, placeholder, prepend, readOnly, selectedItem: value, selectOnBlur, selectOnTab, style, variant, ...rest }: SearchableDropdownProps<ValueType>) => React.JSX.Element;
|
|
95
|
-
export {};
|
|
19
|
+
export declare const SearchableDropdown: <ValueType extends unknown>({ ariaLabelChosenSingular, ariaLabelCloseList, ariaLabelOpenList, ariaLabelSelectedItem, className, clearable, debounceTimeout, disabled, disableLabelAnimation, feedback, items: initialItems, itemFilter, label, labelClearSelectedItem, labelTooltip, listStyle, loading, loadingText, noMatchesText, onChange, placeholder, prepend, readOnly, selectedItem: value, selectOnBlur, selectOnTab, style, variant, ...rest }: SearchableDropdownProps<ValueType>) => React.JSX.Element;
|
|
@@ -691,7 +691,7 @@ debounceTimeout) {
|
|
|
691
691
|
_context.next = 11;
|
|
692
692
|
break;
|
|
693
693
|
}
|
|
694
|
-
console.warn('Avbryt den asynkrone funksjonen din med signalet fra AbortController-en for å for å unngå minnelekkasje.', 'Funksjonen bør kaste en DOMException med navnet "AbortError" når den avbrytes.', '', '\n\nSe eksempel her: https://
|
|
694
|
+
console.warn('Avbryt den asynkrone funksjonen din med signalet fra AbortController-en for å for å unngå minnelekkasje.', 'Funksjonen bør kaste en DOMException med navnet "AbortError" når den avbrytes.', '', '\n\nSe eksempel her: https://linje.entur.no/komponenter/skjemaelementer/dropdown#s%C3%B8kbar-dropdown-med-valg-fra-nettverkskall-bassert-p%C3%A5-tekstinput', '\nLes mer om AbortController her: https://developer.mozilla.org/en-US/docs/Web/API/AbortController');
|
|
695
695
|
return _context.abrupt("return");
|
|
696
696
|
case 11:
|
|
697
697
|
setLoading(false);
|
|
@@ -871,7 +871,7 @@ function getA11yStatusMessage(options) {
|
|
|
871
871
|
}
|
|
872
872
|
/* end a11y utils */
|
|
873
873
|
|
|
874
|
-
var _excluded$3 = ["ariaLabelChosenSingular", "ariaLabelCloseList", "ariaLabelOpenList", "ariaLabelSelectedItem", "className", "clearable", "debounceTimeout", "disabled", "disableLabelAnimation", "feedback", "items", "itemFilter", "label", "labelClearSelectedItem", "labelTooltip", "listStyle", "loadingText", "noMatchesText", "onChange", "placeholder", "prepend", "readOnly", "selectedItem", "selectOnBlur", "selectOnTab", "style", "variant"];
|
|
874
|
+
var _excluded$3 = ["ariaLabelChosenSingular", "ariaLabelCloseList", "ariaLabelOpenList", "ariaLabelSelectedItem", "className", "clearable", "debounceTimeout", "disabled", "disableLabelAnimation", "feedback", "items", "itemFilter", "label", "labelClearSelectedItem", "labelTooltip", "listStyle", "loading", "loadingText", "noMatchesText", "onChange", "placeholder", "prepend", "readOnly", "selectedItem", "selectOnBlur", "selectOnTab", "style", "variant"];
|
|
875
875
|
var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
876
876
|
var _document, _selectedItem$label;
|
|
877
877
|
var ariaLabelChosenSingular = _ref.ariaLabelChosenSingular,
|
|
@@ -895,6 +895,7 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
895
895
|
labelClearSelectedItem = _ref$labelClearSelect === void 0 ? 'fjern valgt' : _ref$labelClearSelect,
|
|
896
896
|
labelTooltip = _ref.labelTooltip,
|
|
897
897
|
listStyle = _ref.listStyle,
|
|
898
|
+
loading = _ref.loading,
|
|
898
899
|
loadingText = _ref.loadingText,
|
|
899
900
|
noMatchesText = _ref.noMatchesText,
|
|
900
901
|
_ref$onChange = _ref.onChange,
|
|
@@ -923,7 +924,7 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
923
924
|
var inputRef = React.useRef(null);
|
|
924
925
|
var _useResolvedItems = useResolvedItems(initialItems, debounceTimeout),
|
|
925
926
|
normalizedItems = _useResolvedItems.items,
|
|
926
|
-
|
|
927
|
+
resolvedItemsLoading = _useResolvedItems.loading,
|
|
927
928
|
fetchItems = _useResolvedItems.fetchItems;
|
|
928
929
|
var _useState3 = React.useState(normalizedItems),
|
|
929
930
|
listItems = _useState3[0],
|
|
@@ -1088,7 +1089,7 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
1088
1089
|
focusable: false,
|
|
1089
1090
|
getToggleButtonProps: getToggleButtonProps,
|
|
1090
1091
|
isOpen: isOpen,
|
|
1091
|
-
loading: loading,
|
|
1092
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1092
1093
|
loadingText: loadingText,
|
|
1093
1094
|
onClear: handleOnClear,
|
|
1094
1095
|
selectedItems: [selectedItem]
|
|
@@ -1151,14 +1152,14 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
1151
1152
|
listItems: listItems,
|
|
1152
1153
|
style: listStyle,
|
|
1153
1154
|
setListRef: refs.setFloating,
|
|
1154
|
-
loading: loading,
|
|
1155
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1155
1156
|
loadingText: loadingText,
|
|
1156
1157
|
noMatchesText: noMatchesText,
|
|
1157
1158
|
selectedItems: selectedItem !== null ? [selectedItem] : []
|
|
1158
1159
|
}));
|
|
1159
1160
|
};
|
|
1160
1161
|
|
|
1161
|
-
var _excluded$2 = ["className", "clearable", "clearInputOnSelect", "debounceTimeout", "disabled", "disableLabelAnimation", "feedback", "hideSelectAll", "items", "itemFilter", "label", "labelAllItemsSelected", "labelClearAllItems", "labelSelectAll", "labelTooltip", "listStyle", "loadingText", "maxChips", "noMatchesText", "onChange", "placeholder", "readOnly", "selectedItems", "selectOnBlur", "selectOnTab", "style", "variant", "ariaLabelChosenSingular", "ariaLabelChosenPlural", "ariaLabelCloseList", "ariaLabelJumpToInput", "ariaLabelOpenList", "ariaLabelRemoveSelected", "ariaLabelSelectedItem"];
|
|
1162
|
+
var _excluded$2 = ["className", "clearable", "clearInputOnSelect", "debounceTimeout", "disabled", "disableLabelAnimation", "feedback", "hideSelectAll", "items", "itemFilter", "label", "labelAllItemsSelected", "labelClearAllItems", "labelSelectAll", "labelTooltip", "listStyle", "loading", "loadingText", "maxChips", "noMatchesText", "onChange", "placeholder", "readOnly", "selectedItems", "selectOnBlur", "selectOnTab", "style", "variant", "ariaLabelChosenSingular", "ariaLabelChosenPlural", "ariaLabelCloseList", "ariaLabelJumpToInput", "ariaLabelOpenList", "ariaLabelRemoveSelected", "ariaLabelSelectedItem"];
|
|
1162
1163
|
var MultiSelect = function MultiSelect(_ref) {
|
|
1163
1164
|
var className = _ref.className,
|
|
1164
1165
|
_ref$clearable = _ref.clearable,
|
|
@@ -1184,6 +1185,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1184
1185
|
labelSelectAll = _ref$labelSelectAll === void 0 ? 'Velg alle' : _ref$labelSelectAll,
|
|
1185
1186
|
labelTooltip = _ref.labelTooltip,
|
|
1186
1187
|
listStyle = _ref.listStyle,
|
|
1188
|
+
loading = _ref.loading,
|
|
1187
1189
|
loadingText = _ref.loadingText,
|
|
1188
1190
|
_ref$maxChips = _ref.maxChips,
|
|
1189
1191
|
maxChips = _ref$maxChips === void 0 ? 10 : _ref$maxChips,
|
|
@@ -1226,7 +1228,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1226
1228
|
}, [rest.selectedItem]);
|
|
1227
1229
|
var _useResolvedItems = useResolvedItems(initialItems, debounceTimeout),
|
|
1228
1230
|
normalizedItems = _useResolvedItems.items,
|
|
1229
|
-
|
|
1231
|
+
resolvedItemsLoading = _useResolvedItems.loading,
|
|
1230
1232
|
fetchItems = _useResolvedItems.fetchItems;
|
|
1231
1233
|
var isAllNonAsyncItemsSelected = typeof initialItems !== 'function' && selectedItems.length === normalizedItems.length;
|
|
1232
1234
|
// special 'item' used as Select All entry in the dropdown list
|
|
@@ -1447,7 +1449,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1447
1449
|
clearable: clearable,
|
|
1448
1450
|
labelClearSelectedItems: labelClearAllItems,
|
|
1449
1451
|
focusable: false,
|
|
1450
|
-
loading: loading,
|
|
1452
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1451
1453
|
loadingText: loadingText,
|
|
1452
1454
|
disabled: readOnly || disabled,
|
|
1453
1455
|
onClear: handleOnClear,
|
|
@@ -1543,7 +1545,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1543
1545
|
listItems: listItems,
|
|
1544
1546
|
style: listStyle,
|
|
1545
1547
|
setListRef: refs.setFloating,
|
|
1546
|
-
loading: loading,
|
|
1548
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1547
1549
|
loadingText: loadingText,
|
|
1548
1550
|
noMatchesText: noMatchesText,
|
|
1549
1551
|
selectAllCheckboxState: selectAllCheckboxState,
|
|
@@ -1552,7 +1554,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1552
1554
|
}));
|
|
1553
1555
|
};
|
|
1554
1556
|
|
|
1555
|
-
var _excluded$1 = ["ariaLabelChosenSingular", "ariaLabelCloseList", "ariaLabelOpenList", "ariaLabelSelectedItem", "className", "clearable", "disabled", "disableLabelAnimation", "feedback", "items", "label", "labelClearSelectedItem", "labelTooltip", "listStyle", "loadingText", "noMatchesText", "onChange", "placeholder", "prepend", "readOnly", "selectedItem", "selectOnBlur", "selectOnTab", "style", "variant"];
|
|
1557
|
+
var _excluded$1 = ["ariaLabelChosenSingular", "ariaLabelCloseList", "ariaLabelOpenList", "ariaLabelSelectedItem", "className", "clearable", "disabled", "disableLabelAnimation", "feedback", "items", "label", "labelClearSelectedItem", "labelTooltip", "listStyle", "loading", "loadingText", "noMatchesText", "onChange", "placeholder", "prepend", "readOnly", "selectedItem", "selectOnBlur", "selectOnTab", "style", "variant"];
|
|
1556
1558
|
var Dropdown = function Dropdown(_ref) {
|
|
1557
1559
|
var _ref3, _selectedItem$label;
|
|
1558
1560
|
var ariaLabelChosenSingular = _ref.ariaLabelChosenSingular,
|
|
@@ -1572,6 +1574,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1572
1574
|
labelClearSelectedItem = _ref$labelClearSelect === void 0 ? 'fjern valgt' : _ref$labelClearSelect,
|
|
1573
1575
|
labelTooltip = _ref.labelTooltip,
|
|
1574
1576
|
listStyle = _ref.listStyle,
|
|
1577
|
+
loading = _ref.loading,
|
|
1575
1578
|
loadingText = _ref.loadingText,
|
|
1576
1579
|
_ref$noMatchesText = _ref.noMatchesText,
|
|
1577
1580
|
noMatchesText = _ref$noMatchesText === void 0 ? 'Ingen tilgjengelige valg …' : _ref$noMatchesText,
|
|
@@ -1591,7 +1594,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1591
1594
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
1592
1595
|
var _useResolvedItems = useResolvedItems(initialItems),
|
|
1593
1596
|
normalizedItems = _useResolvedItems.items,
|
|
1594
|
-
|
|
1597
|
+
resolvedItemsLoading = _useResolvedItems.loading;
|
|
1595
1598
|
var toggleButtonRef = React.useRef(null);
|
|
1596
1599
|
var isFilled = selectedItem !== null || placeholder !== undefined;
|
|
1597
1600
|
var _useSelect = downshift.useSelect({
|
|
@@ -1651,7 +1654,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1651
1654
|
focusable: false,
|
|
1652
1655
|
getToggleButtonProps: getToggleButtonProps,
|
|
1653
1656
|
isOpen: isOpen,
|
|
1654
|
-
loading: loading,
|
|
1657
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1655
1658
|
loadingText: loadingText,
|
|
1656
1659
|
onClear: function onClear() {
|
|
1657
1660
|
var _toggleButtonRef$curr;
|
|
@@ -1714,7 +1717,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
1714
1717
|
noMatchesText: noMatchesText,
|
|
1715
1718
|
style: listStyle,
|
|
1716
1719
|
setListRef: refs.setFloating,
|
|
1717
|
-
loading: loading,
|
|
1720
|
+
loading: loading != null ? loading : resolvedItemsLoading,
|
|
1718
1721
|
loadingText: loadingText,
|
|
1719
1722
|
selectedItems: selectedItem !== null ? [selectedItem] : []
|
|
1720
1723
|
}));
|