@entur/dropdown 6.0.3-beta.1 → 6.0.3-beta.2
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/dist/dropdown.cjs.development.js +31 -54
- 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 +31 -54
- package/dist/dropdown.esm.js.map +1 -1
- package/dist/styles.css +107 -101
- package/dist/utils.d.ts +7 -16
- package/package.json +10 -10
|
@@ -1517,6 +1517,9 @@ input) {
|
|
|
1517
1517
|
var itemToString = function itemToString(item) {
|
|
1518
1518
|
return item ? item.label : '';
|
|
1519
1519
|
};
|
|
1520
|
+
var itemToKey = function itemToKey(item) {
|
|
1521
|
+
return (item == null ? void 0 : item.label) + (item == null ? void 0 : item.value);
|
|
1522
|
+
};
|
|
1520
1523
|
var isFunctionWithQueryArgument = function isFunctionWithQueryArgument(object) {
|
|
1521
1524
|
return typeof object === 'function' && object.length > 0;
|
|
1522
1525
|
};
|
|
@@ -1557,7 +1560,7 @@ var useMultiselectUtils = function useMultiselectUtils(_ref) {
|
|
|
1557
1560
|
var handleListItemClicked = function handleListItemClicked(_ref2) {
|
|
1558
1561
|
var clickedItem = _ref2.clickedItem,
|
|
1559
1562
|
onChange = _ref2.onChange,
|
|
1560
|
-
setLastRemovedItem = _ref2.
|
|
1563
|
+
setLastRemovedItem = _ref2.setLastClickedItem;
|
|
1561
1564
|
if (clickedItemIsSelectAll(clickedItem)) {
|
|
1562
1565
|
if (allListItemsAreSelected) {
|
|
1563
1566
|
setLastRemovedItem(selectAll);
|
|
@@ -1607,40 +1610,23 @@ var useMultiselectUtils = function useMultiselectUtils(_ref) {
|
|
|
1607
1610
|
unselectAllListItems: unselectAllListItems
|
|
1608
1611
|
};
|
|
1609
1612
|
};
|
|
1613
|
+
/* end multiselect utils */
|
|
1614
|
+
/* start a11y utils */
|
|
1615
|
+
// called when the state changes:
|
|
1616
|
+
// selectedItem, highlightedIndex, inputValue or isOpen.
|
|
1610
1617
|
function getA11yStatusMessage(options) {
|
|
1611
1618
|
var isOpen = options.isOpen,
|
|
1612
|
-
resultCount = options.resultCount,
|
|
1613
|
-
previousResultCount = options.previousResultCount,
|
|
1614
1619
|
_options$selectAllIte = options.selectAllItemIncluded,
|
|
1615
1620
|
selectAllItemIncluded = _options$selectAllIte === void 0 ? false : _options$selectAllIte,
|
|
1616
|
-
|
|
1617
|
-
ariaLabelNoResults = _options$ariaLabelNoR === void 0 ? 'Ingen resultater' : _options$ariaLabelNoR;
|
|
1621
|
+
resultCount = options.resultCount;
|
|
1618
1622
|
if (!isOpen) {
|
|
1619
1623
|
return '';
|
|
1620
1624
|
}
|
|
1621
1625
|
var resultCountWithoutSelectAll = selectAllItemIncluded ? resultCount - 1 : resultCount;
|
|
1622
1626
|
if (resultCountWithoutSelectAll === 0) {
|
|
1623
|
-
return
|
|
1624
|
-
}
|
|
1625
|
-
if (resultCount !== previousResultCount) {
|
|
1626
|
-
return resultCountWithoutSelectAll + " resultat" + (resultCountWithoutSelectAll === 1 ? '' : 'er') + " tilgjengelig, naviger med pil opp eller ned, velg elementer med enter.";
|
|
1627
|
+
return 'Ingen resultater';
|
|
1627
1628
|
}
|
|
1628
|
-
return '';
|
|
1629
|
-
}
|
|
1630
|
-
function getA11ySelectionMessage(options) {
|
|
1631
|
-
var selectedItem = options.selectedItem,
|
|
1632
|
-
itemToStringLocal = options.itemToString,
|
|
1633
|
-
selectAllItem = options.selectAllItem;
|
|
1634
|
-
if ((selectedItem == null ? void 0 : selectedItem.value) === (selectAllItem == null ? void 0 : selectAllItem.value)) return 'Alle elementer i listen valgt.';
|
|
1635
|
-
return selectedItem ? itemToStringLocal(selectedItem) + " er valgt." : '';
|
|
1636
|
-
}
|
|
1637
|
-
function getA11yRemovalMessage(options) {
|
|
1638
|
-
var itemToString = options.itemToString,
|
|
1639
|
-
selectAllItem = options.selectAllItem,
|
|
1640
|
-
removedItem = options.removedItem;
|
|
1641
|
-
if (removedItem === undefined) return '';
|
|
1642
|
-
if (removedItem.value === (selectAllItem == null ? void 0 : selectAllItem.value)) return 'Alle elementer i listen fjernet fra valgte.';
|
|
1643
|
-
return itemToString(removedItem) + " fjernet fra valgte.";
|
|
1629
|
+
return resultCountWithoutSelectAll + " resultat" + (resultCountWithoutSelectAll === 1 ? '' : 'er') + " tilgjengelig, naviger med pil opp eller ned, velg elementer med Enter.";
|
|
1644
1630
|
}
|
|
1645
1631
|
/* end a11y utils */
|
|
1646
1632
|
|
|
@@ -1805,11 +1791,10 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
1805
1791
|
}
|
|
1806
1792
|
},
|
|
1807
1793
|
// Accessibility
|
|
1808
|
-
getA11yStatusMessage: getA11yStatusMessage
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
return getA11ySelectionMessage(options);
|
|
1794
|
+
getA11yStatusMessage: function getA11yStatusMessage$1(options) {
|
|
1795
|
+
return getA11yStatusMessage(_extends({}, options, {
|
|
1796
|
+
resultCount: listItems.length
|
|
1797
|
+
}));
|
|
1813
1798
|
}
|
|
1814
1799
|
}, rest)),
|
|
1815
1800
|
isOpen = _useCombobox.isOpen,
|
|
@@ -1909,6 +1894,9 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
1909
1894
|
}))), React.createElement(DropdownList, {
|
|
1910
1895
|
ariaLabelChosenSingular: ariaLabelChosenSingular,
|
|
1911
1896
|
ariaLabelSelectedItem: ariaLabelSelectedItem,
|
|
1897
|
+
getItemProps: getItemProps,
|
|
1898
|
+
getMenuProps: getMenuProps,
|
|
1899
|
+
highlightedIndex: highlightedIndex,
|
|
1912
1900
|
isOpen: isOpen,
|
|
1913
1901
|
listItems: listItems,
|
|
1914
1902
|
listStyle: _extends({}, floatingStyles, listStyle),
|
|
@@ -1916,9 +1904,6 @@ var SearchableDropdown = function SearchableDropdown(_ref) {
|
|
|
1916
1904
|
loading: loading,
|
|
1917
1905
|
loadingText: loadingText,
|
|
1918
1906
|
noMatchesText: noMatchesText,
|
|
1919
|
-
getItemProps: getItemProps,
|
|
1920
|
-
getMenuProps: getMenuProps,
|
|
1921
|
-
highlightedIndex: highlightedIndex,
|
|
1922
1907
|
selectedItems: selectedItem !== null ? [selectedItem] : []
|
|
1923
1908
|
}));
|
|
1924
1909
|
};
|
|
@@ -1983,8 +1968,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
1983
1968
|
lastHighlightedIndex = _React$useState[0],
|
|
1984
1969
|
setLastHighlightedIndex = _React$useState[1];
|
|
1985
1970
|
var _React$useState2 = React.useState(undefined),
|
|
1986
|
-
|
|
1987
|
-
setLastRemovedItem = _React$useState2[1];
|
|
1971
|
+
setLastClickedItem = _React$useState2[1];
|
|
1988
1972
|
var inputRef = React.useRef(null);
|
|
1989
1973
|
React.useEffect(function () {
|
|
1990
1974
|
//@ts-expect-error this is done to aid developers debug wrong prop usage
|
|
@@ -2040,7 +2024,9 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2040
2024
|
selectAllCheckboxState = _useMultiselectUtils.selectAllCheckboxState;
|
|
2041
2025
|
var _useMultipleSelection = Downshift.useMultipleSelection({
|
|
2042
2026
|
selectedItems: selectedItems,
|
|
2027
|
+
// @ts-expect-error prop missing from library types
|
|
2043
2028
|
itemToString: itemToString,
|
|
2029
|
+
itemToKey: itemToKey,
|
|
2044
2030
|
onStateChange: function onStateChange(_ref4) {
|
|
2045
2031
|
var newSelectedItems = _ref4.selectedItems,
|
|
2046
2032
|
type = _ref4.type;
|
|
@@ -2054,13 +2040,6 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2054
2040
|
break;
|
|
2055
2041
|
}
|
|
2056
2042
|
}
|
|
2057
|
-
},
|
|
2058
|
-
// Accessibility
|
|
2059
|
-
getA11yRemovalMessage: function getA11yRemovalMessage$1(options) {
|
|
2060
|
-
return getA11yRemovalMessage(_extends({}, options, {
|
|
2061
|
-
selectAllItem: selectAll,
|
|
2062
|
-
removedItem: lastRemovedItem
|
|
2063
|
-
}));
|
|
2064
2043
|
}
|
|
2065
2044
|
}),
|
|
2066
2045
|
getSelectedItemProps = _useMultipleSelection.getSelectedItemProps,
|
|
@@ -2109,7 +2088,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2109
2088
|
handleListItemClicked({
|
|
2110
2089
|
clickedItem: listItems[changes.highlightedIndex],
|
|
2111
2090
|
onChange: onChange,
|
|
2112
|
-
|
|
2091
|
+
setLastClickedItem: setLastClickedItem
|
|
2113
2092
|
});
|
|
2114
2093
|
}
|
|
2115
2094
|
}
|
|
@@ -2160,7 +2139,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2160
2139
|
handleListItemClicked({
|
|
2161
2140
|
clickedItem: clickedItem,
|
|
2162
2141
|
onChange: onChange,
|
|
2163
|
-
|
|
2142
|
+
setLastClickedItem: setLastClickedItem
|
|
2164
2143
|
});
|
|
2165
2144
|
}
|
|
2166
2145
|
}
|
|
@@ -2168,14 +2147,8 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2168
2147
|
// Accessibility
|
|
2169
2148
|
getA11yStatusMessage: function getA11yStatusMessage$1(options) {
|
|
2170
2149
|
return getA11yStatusMessage(_extends({}, options, {
|
|
2171
|
-
selectAllItemIncluded: !hideSelectAll
|
|
2172
|
-
|
|
2173
|
-
},
|
|
2174
|
-
// The following A11y-helper does not work due to a bug (https://github.com/downshift-js/downshift/issues/1227)
|
|
2175
|
-
// but is left here for when it is fixed
|
|
2176
|
-
getA11ySelectionMessage: function getA11ySelectionMessage$1(options) {
|
|
2177
|
-
return getA11ySelectionMessage(_extends({}, options, {
|
|
2178
|
-
selectAllItem: selectAll
|
|
2150
|
+
selectAllItemIncluded: !hideSelectAll,
|
|
2151
|
+
resultCount: listItems.length
|
|
2179
2152
|
}));
|
|
2180
2153
|
}
|
|
2181
2154
|
}, rest)),
|
|
@@ -2267,7 +2240,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2267
2240
|
handleListItemClicked({
|
|
2268
2241
|
clickedItem: selectedItem,
|
|
2269
2242
|
onChange: onChange,
|
|
2270
|
-
|
|
2243
|
+
setLastClickedItem: setLastClickedItem
|
|
2271
2244
|
});
|
|
2272
2245
|
inputRef == null ? void 0 : (_inputRef$current6 = inputRef.current) == null ? void 0 : _inputRef$current6.focus();
|
|
2273
2246
|
},
|
|
@@ -2293,7 +2266,7 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
2293
2266
|
handleListItemClicked({
|
|
2294
2267
|
clickedItem: highlitedItem,
|
|
2295
2268
|
onChange: onChange,
|
|
2296
|
-
|
|
2269
|
+
setLastClickedItem: setLastClickedItem
|
|
2297
2270
|
});
|
|
2298
2271
|
}
|
|
2299
2272
|
}
|
|
@@ -2385,6 +2358,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
2385
2358
|
itemToString: itemToString
|
|
2386
2359
|
}),
|
|
2387
2360
|
isOpen = _useSelect.isOpen,
|
|
2361
|
+
openMenu = _useSelect.openMenu,
|
|
2388
2362
|
getItemProps = _useSelect.getItemProps,
|
|
2389
2363
|
getLabelProps = _useSelect.getLabelProps,
|
|
2390
2364
|
getMenuProps = _useSelect.getMenuProps,
|
|
@@ -2431,6 +2405,9 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
2431
2405
|
labelId: getLabelProps().id,
|
|
2432
2406
|
labelProps: getLabelProps(),
|
|
2433
2407
|
labelTooltip: labelTooltip,
|
|
2408
|
+
onClick: function onClick(e) {
|
|
2409
|
+
if (e.target === e.currentTarget) openMenu();
|
|
2410
|
+
},
|
|
2434
2411
|
prepend: prepend,
|
|
2435
2412
|
readOnly: readOnly,
|
|
2436
2413
|
ref: refs.setReference,
|