@artsy/palette 40.2.0 → 40.3.0-canary.20ffe4c1.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/dist/elements/FilterSelect/Components/FilterSelectContext.js +11 -8
- package/dist/elements/FilterSelect/Components/FilterSelectContext.js.map +1 -1
- package/dist/elements/FilterSelect/FilterSelect.js +54 -3
- package/dist/elements/FilterSelect/FilterSelect.js.map +1 -1
- package/dist/elements/FilterSelect/FilterSelect.story.js +19 -3
- package/dist/elements/FilterSelect/FilterSelect.story.js.map +1 -1
- package/package.json +2 -2
- package/dist/Theme.d.ts +0 -83
- package/dist/elements/AutocompleteInput/AutocompleteInput.d.ts +0 -37
- package/dist/elements/AutocompleteInput/AutocompleteInput.story.d.ts +0 -9
- package/dist/elements/AutocompleteInput/AutocompleteInputOption.d.ts +0 -6
- package/dist/elements/AutocompleteInput/AutocompleteInputOptionLabel.d.ts +0 -6
- package/dist/elements/AutocompleteInput/index.d.ts +0 -3
- package/dist/elements/Avatar/Avatar.d.ts +0 -11
- package/dist/elements/Avatar/Avatar.story.d.ts +0 -8
- package/dist/elements/Avatar/index.d.ts +0 -1
- package/dist/elements/Banner/Banner.d.ts +0 -32
- package/dist/elements/Banner/Banner.story.d.ts +0 -6
- package/dist/elements/Banner/index.d.ts +0 -1
- package/dist/elements/BaseTabs/BaseTab.d.ts +0 -31
- package/dist/elements/BaseTabs/BaseTabs.d.ts +0 -13
- package/dist/elements/BaseTabs/BaseTabs.story.d.ts +0 -39
- package/dist/elements/BaseTabs/index.d.ts +0 -2
- package/dist/elements/BaseTabs/tokens.d.ts +0 -6
- package/dist/elements/BorderBox/BorderBox.d.ts +0 -11
- package/dist/elements/BorderBox/BorderBoxBase.d.ts +0 -12
- package/dist/elements/BorderBox/index.d.ts +0 -2
- package/dist/elements/BorderedRadio/BorderedRadio.d.ts +0 -5
- package/dist/elements/BorderedRadio/BorderedRadio.story.d.ts +0 -6
- package/dist/elements/BorderedRadio/index.d.ts +0 -1
- package/dist/elements/Box/Box.d.ts +0 -16
- package/dist/elements/Box/Box.story.d.ts +0 -6
- package/dist/elements/Box/index.d.ts +0 -1
- package/dist/elements/Breadcrumbs/Breadcrumbs.d.ts +0 -11
- package/dist/elements/Breadcrumbs/Breadcrumbs.story.d.ts +0 -6
- package/dist/elements/Breadcrumbs/index.d.ts +0 -1
- package/dist/elements/Button/Button.d.ts +0 -35
- package/dist/elements/Button/Button.story.d.ts +0 -29
- package/dist/elements/Button/index.d.ts +0 -4
- package/dist/elements/Button/tokens.d.ts +0 -22
- package/dist/elements/Button/types.d.ts +0 -11
- package/dist/elements/CSSGrid/CSSGrid.d.ts +0 -14
- package/dist/elements/CSSGrid/CSSGrid.story.d.ts +0 -17
- package/dist/elements/CSSGrid/index.d.ts +0 -1
- package/dist/elements/Cards/Card.d.ts +0 -16
- package/dist/elements/Cards/Cards.story.d.ts +0 -25
- package/dist/elements/Cards/TriptychCard.d.ts +0 -19
- package/dist/elements/Cards/index.d.ts +0 -2
- package/dist/elements/Carousel/Carousel.d.ts +0 -45
- package/dist/elements/Carousel/Carousel.story.d.ts +0 -93
- package/dist/elements/Carousel/CarouselNavigation.d.ts +0 -22
- package/dist/elements/Carousel/index.d.ts +0 -3
- package/dist/elements/Carousel/paginate.d.ts +0 -31
- package/dist/elements/CarouselBar/CarouselBar.d.ts +0 -4
- package/dist/elements/CarouselBar/CarouselBar.story.d.ts +0 -6
- package/dist/elements/CarouselBar/index.d.ts +0 -1
- package/dist/elements/Checkbox/Check.d.ts +0 -10
- package/dist/elements/Checkbox/Check.story.d.ts +0 -6
- package/dist/elements/Checkbox/Checkbox.d.ts +0 -18
- package/dist/elements/Checkbox/Checkbox.story.d.ts +0 -8
- package/dist/elements/Checkbox/index.d.ts +0 -1
- package/dist/elements/Checkbox/tokens.d.ts +0 -30
- package/dist/elements/CleanTag/CleanTag.d.ts +0 -44
- package/dist/elements/CleanTag/index.d.ts +0 -1
- package/dist/elements/Clickable/Clickable.d.ts +0 -14
- package/dist/elements/Clickable/Clickable.story.d.ts +0 -12
- package/dist/elements/Clickable/index.d.ts +0 -1
- package/dist/elements/Collapse/Collapse.d.ts +0 -19
- package/dist/elements/Collapse/index.d.ts +0 -1
- package/dist/elements/Drawer/Drawer.d.ts +0 -8
- package/dist/elements/Drawer/Drawer.story.d.ts +0 -10
- package/dist/elements/Drawer/index.d.ts +0 -1
- package/dist/elements/Dropdown/Dropdown.d.ts +0 -38
- package/dist/elements/Dropdown/Dropdown.story.d.ts +0 -31
- package/dist/elements/Dropdown/index.d.ts +0 -1
- package/dist/elements/EntityHeader/EntityHeader.d.ts +0 -23
- package/dist/elements/EntityHeader/EntityHeader.story.d.ts +0 -6
- package/dist/elements/EntityHeader/index.d.ts +0 -1
- package/dist/elements/Expandable/Expandable.d.ts +0 -17
- package/dist/elements/Expandable/Expandable.story.d.ts +0 -7
- package/dist/elements/Expandable/index.d.ts +0 -1
- package/dist/elements/FilterSelect/Components/FilterInput.d.ts +0 -4
- package/dist/elements/FilterSelect/Components/FilterSelectContext.d.ts +0 -33
- package/dist/elements/FilterSelect/Components/FilterSelectResultItem.d.ts +0 -3
- package/dist/elements/FilterSelect/FilterSelect.d.ts +0 -5
- package/dist/elements/FilterSelect/FilterSelect.story.d.ts +0 -6
- package/dist/elements/FilterSelect/index.d.ts +0 -2
- package/dist/elements/Flex/Flex.d.ts +0 -12
- package/dist/elements/Flex/index.d.ts +0 -1
- package/dist/elements/FullBleed/FullBleed.d.ts +0 -10
- package/dist/elements/FullBleed/FullBleed.story.d.ts +0 -6
- package/dist/elements/FullBleed/index.d.ts +0 -1
- package/dist/elements/GridColumns/GridColumns.d.ts +0 -26
- package/dist/elements/GridColumns/GridColumns.story.d.ts +0 -23
- package/dist/elements/GridColumns/calculateGridColumn.d.ts +0 -23
- package/dist/elements/GridColumns/index.d.ts +0 -2
- package/dist/elements/HTML/HTML.d.ts +0 -20
- package/dist/elements/HTML/HTML.story.d.ts +0 -17
- package/dist/elements/HTML/index.d.ts +0 -1
- package/dist/elements/HorizontalOverflow/HorizontalOverflow.d.ts +0 -8
- package/dist/elements/HorizontalOverflow/HorizontalOverflow.story.d.ts +0 -7
- package/dist/elements/HorizontalOverflow/index.d.ts +0 -1
- package/dist/elements/Image/Image.d.ts +0 -16
- package/dist/elements/Image/Image.story.d.ts +0 -35
- package/dist/elements/Image/LazyImage.d.ts +0 -15
- package/dist/elements/Image/index.d.ts +0 -1
- package/dist/elements/Input/Input.d.ts +0 -16
- package/dist/elements/Input/Input.story.d.ts +0 -10
- package/dist/elements/Input/index.d.ts +0 -1
- package/dist/elements/Input/tokens.d.ts +0 -2
- package/dist/elements/Input/types.d.ts +0 -1
- package/dist/elements/Join/Join.d.ts +0 -26
- package/dist/elements/Join/Join.story.d.ts +0 -24
- package/dist/elements/Join/index.d.ts +0 -1
- package/dist/elements/Label/Label.d.ts +0 -22
- package/dist/elements/Label/Label.story.d.ts +0 -7
- package/dist/elements/Label/index.d.ts +0 -1
- package/dist/elements/LabeledInput/LabeledInput.d.ts +0 -8
- package/dist/elements/LabeledInput/LabeledInput.story.d.ts +0 -8
- package/dist/elements/LabeledInput/index.d.ts +0 -1
- package/dist/elements/Link/Link.d.ts +0 -13
- package/dist/elements/Link/index.d.ts +0 -1
- package/dist/elements/Marquee/Marquee.d.ts +0 -25
- package/dist/elements/Marquee/Marquee.story.d.ts +0 -6
- package/dist/elements/Marquee/index.d.ts +0 -1
- package/dist/elements/Message/Message.d.ts +0 -41
- package/dist/elements/Message/Message.story.d.ts +0 -6
- package/dist/elements/Message/index.d.ts +0 -1
- package/dist/elements/Modal/ModalBase.d.ts +0 -20
- package/dist/elements/Modal/ModalBase.story.d.ts +0 -9
- package/dist/elements/Modal/index.d.ts +0 -1
- package/dist/elements/ModalDialog/ModalDialog.d.ts +0 -8
- package/dist/elements/ModalDialog/ModalDialog.story.d.ts +0 -6
- package/dist/elements/ModalDialog/ModalDialogContent.d.ts +0 -16
- package/dist/elements/ModalDialog/ModalDialogContent.story.d.ts +0 -6
- package/dist/elements/ModalDialog/index.d.ts +0 -2
- package/dist/elements/MultiSelect/MultiSelect.d.ts +0 -19
- package/dist/elements/MultiSelect/MultiSelect.story.d.ts +0 -7
- package/dist/elements/MultiSelect/index.d.ts +0 -1
- package/dist/elements/MultiSelect/tokens.d.ts +0 -2
- package/dist/elements/Pagination/Pagination.d.ts +0 -33
- package/dist/elements/Pagination/Pagination.story.d.ts +0 -12
- package/dist/elements/Pagination/index.d.ts +0 -1
- package/dist/elements/PasswordInput/PasswordInput.d.ts +0 -6
- package/dist/elements/PasswordInput/PasswordInput.story.d.ts +0 -6
- package/dist/elements/PasswordInput/index.d.ts +0 -1
- package/dist/elements/PhoneInput/PhoneInput.d.ts +0 -31
- package/dist/elements/PhoneInput/PhoneInput.story.d.ts +0 -6
- package/dist/elements/PhoneInput/index.d.ts +0 -1
- package/dist/elements/PhoneInput/tokens.d.ts +0 -9
- package/dist/elements/Pill/Pill.d.ts +0 -48
- package/dist/elements/Pill/Pill.story.d.ts +0 -14
- package/dist/elements/Pill/index.d.ts +0 -1
- package/dist/elements/Pill/tokens.d.ts +0 -3
- package/dist/elements/Pointer/Pointer.d.ts +0 -23
- package/dist/elements/Pointer/index.d.ts +0 -1
- package/dist/elements/Popover/Popover.d.ts +0 -46
- package/dist/elements/Popover/Popover.story.d.ts +0 -27
- package/dist/elements/Popover/index.d.ts +0 -1
- package/dist/elements/ProgressBar/ProgressBar.d.ts +0 -11
- package/dist/elements/ProgressBar/ProgressBar.story.d.ts +0 -16
- package/dist/elements/ProgressBar/index.d.ts +0 -1
- package/dist/elements/ProgressDots/ProgressDots.d.ts +0 -26
- package/dist/elements/ProgressDots/ProgressDots.story.d.ts +0 -16
- package/dist/elements/ProgressDots/index.d.ts +0 -1
- package/dist/elements/Radio/Radio.d.ts +0 -30
- package/dist/elements/Radio/Radio.story.d.ts +0 -7
- package/dist/elements/Radio/RadioDot.d.ts +0 -11
- package/dist/elements/Radio/index.d.ts +0 -1
- package/dist/elements/Radio/tokens.d.ts +0 -39
- package/dist/elements/RadioGroup/RadioGroup.d.ts +0 -35
- package/dist/elements/RadioGroup/RadioGroup.story.d.ts +0 -13
- package/dist/elements/RadioGroup/index.d.ts +0 -1
- package/dist/elements/Range/Range.d.ts +0 -12
- package/dist/elements/Range/Range.story.d.ts +0 -18
- package/dist/elements/Range/index.d.ts +0 -1
- package/dist/elements/ReadMore/ReadMore.d.ts +0 -12
- package/dist/elements/ReadMore/ReadMore.story.d.ts +0 -53
- package/dist/elements/ReadMore/index.d.ts +0 -1
- package/dist/elements/ResponsiveBox/ResponsiveBox.d.ts +0 -21
- package/dist/elements/ResponsiveBox/ResponsiveBox.story.d.ts +0 -13
- package/dist/elements/ResponsiveBox/index.d.ts +0 -1
- package/dist/elements/Select/Select.d.ts +0 -23
- package/dist/elements/Select/Select.story.d.ts +0 -6
- package/dist/elements/Select/index.d.ts +0 -1
- package/dist/elements/Select/tokens.d.ts +0 -2
- package/dist/elements/Select/types.d.ts +0 -1
- package/dist/elements/Separator/Separator.d.ts +0 -8
- package/dist/elements/Separator/Separator.story.d.ts +0 -6
- package/dist/elements/Separator/index.d.ts +0 -1
- package/dist/elements/Shelf/Shelf.d.ts +0 -15
- package/dist/elements/Shelf/Shelf.story.d.ts +0 -18
- package/dist/elements/Shelf/ShelfNavigation.d.ts +0 -16
- package/dist/elements/Shelf/ShelfScrollBar.d.ts +0 -29
- package/dist/elements/Shelf/index.d.ts +0 -3
- package/dist/elements/Shelf/useClickScroll.d.ts +0 -10
- package/dist/elements/Shelf/useDragScroll.d.ts +0 -11
- package/dist/elements/ShowMore/ShowMore.d.ts +0 -12
- package/dist/elements/ShowMore/ShowMore.story.d.ts +0 -12
- package/dist/elements/ShowMore/index.d.ts +0 -1
- package/dist/elements/Skeleton/Skeleton.d.ts +0 -20
- package/dist/elements/Skeleton/Skeleton.story.d.ts +0 -9
- package/dist/elements/Skeleton/index.d.ts +0 -1
- package/dist/elements/Skip/Skip.d.ts +0 -16
- package/dist/elements/Skip/Skip.story.d.ts +0 -23
- package/dist/elements/Skip/index.d.ts +0 -1
- package/dist/elements/Spacer/Spacer.d.ts +0 -13
- package/dist/elements/Spacer/Spacer.story.d.ts +0 -11
- package/dist/elements/Spacer/index.d.ts +0 -1
- package/dist/elements/Spinner/Spinner.d.ts +0 -35
- package/dist/elements/Spinner/Spinner.story.d.ts +0 -18
- package/dist/elements/Spinner/index.d.ts +0 -1
- package/dist/elements/Stack/Stack.d.ts +0 -13
- package/dist/elements/Stack/Stack.story.d.ts +0 -6
- package/dist/elements/Stack/index.d.ts +0 -1
- package/dist/elements/StackableBorderBox/StackableBorderBox.d.ts +0 -9
- package/dist/elements/StackableBorderBox/StackableBorderBox.story.d.ts +0 -6
- package/dist/elements/StackableBorderBox/index.d.ts +0 -1
- package/dist/elements/Stepper/Stepper.d.ts +0 -17
- package/dist/elements/Stepper/Stepper.story.d.ts +0 -7
- package/dist/elements/Stepper/index.d.ts +0 -1
- package/dist/elements/Sup/Sup.d.ts +0 -15
- package/dist/elements/Sup/Sup.story.d.ts +0 -6
- package/dist/elements/Sup/index.d.ts +0 -1
- package/dist/elements/Swiper/Swiper.d.ts +0 -41
- package/dist/elements/Swiper/Swiper.story.d.ts +0 -72
- package/dist/elements/Swiper/activeIndex.d.ts +0 -9
- package/dist/elements/Swiper/index.d.ts +0 -1
- package/dist/elements/Swiper/percentage.d.ts +0 -12
- package/dist/elements/Tabs/Tabs.d.ts +0 -52
- package/dist/elements/Tabs/Tabs.story.d.ts +0 -30
- package/dist/elements/Tabs/index.d.ts +0 -1
- package/dist/elements/Text/Text.d.ts +0 -43
- package/dist/elements/Text/Text.story.d.ts +0 -9
- package/dist/elements/Text/index.d.ts +0 -1
- package/dist/elements/TextArea/TextArea.d.ts +0 -22
- package/dist/elements/TextArea/TextArea.story.d.ts +0 -7
- package/dist/elements/TextArea/index.d.ts +0 -1
- package/dist/elements/TextArea/tokens.d.ts +0 -2
- package/dist/elements/TextArea/types.d.ts +0 -1
- package/dist/elements/Toasts/Toast.d.ts +0 -33
- package/dist/elements/Toasts/Toast.story.d.ts +0 -6
- package/dist/elements/Toasts/Toasts.d.ts +0 -6
- package/dist/elements/Toasts/Toasts.story.d.ts +0 -9
- package/dist/elements/Toasts/index.d.ts +0 -3
- package/dist/elements/Toasts/useToasts.d.ts +0 -32
- package/dist/elements/Toggle/Toggle.d.ts +0 -14
- package/dist/elements/Toggle/Toggle.story.d.ts +0 -7
- package/dist/elements/Toggle/index.d.ts +0 -1
- package/dist/elements/Toggle/tokens.d.ts +0 -13
- package/dist/elements/Tooltip/Tooltip.d.ts +0 -29
- package/dist/elements/Tooltip/Tooltip.story.d.ts +0 -31
- package/dist/elements/Tooltip/index.d.ts +0 -1
- package/dist/elements/VisuallyHidden/VisuallyHidden.d.ts +0 -27
- package/dist/elements/VisuallyHidden/index.d.ts +0 -1
- package/dist/elements/index.d.ts +0 -70
- package/dist/helpers/color.d.ts +0 -8
- package/dist/helpers/flattenChildren.d.ts +0 -5
- package/dist/helpers/index.d.ts +0 -7
- package/dist/helpers/injectGlobalStyles.d.ts +0 -9
- package/dist/helpers/isReactNative.d.ts +0 -5
- package/dist/helpers/isText.d.ts +0 -5
- package/dist/helpers/media.d.ts +0 -21
- package/dist/helpers/space.d.ts +0 -8
- package/dist/helpers/transition.d.ts +0 -3
- package/dist/helpers/visuallyDisableScrollbar.d.ts +0 -4
- package/dist/index.d.ts +0 -4
- package/dist/shared/RequiredField.d.ts +0 -5
- package/dist/themes/Themes.story.d.ts +0 -14
- package/dist/themes/index.d.ts +0 -1
- package/dist/themes/types.d.ts +0 -1
- package/dist/utils/FocusLocking.story.d.ts +0 -8
- package/dist/utils/index.d.ts +0 -12
- package/dist/utils/remapValue.d.ts +0 -15
- package/dist/utils/splitProps.d.ts +0 -7
- package/dist/utils/useClickOutside.d.ts +0 -12
- package/dist/utils/useContainsFocus.d.ts +0 -6
- package/dist/utils/useDidMount.d.ts +0 -4
- package/dist/utils/useInterval.d.ts +0 -2
- package/dist/utils/useIsomorphicLayoutEffect.d.ts +0 -5
- package/dist/utils/useLatest.d.ts +0 -2
- package/dist/utils/useMutationObserver.d.ts +0 -15
- package/dist/utils/usePortal.d.ts +0 -4
- package/dist/utils/usePosition.d.ts +0 -68
- package/dist/utils/usePrevious.d.ts +0 -5
- package/dist/utils/useResizeObserver.d.ts +0 -9
- package/dist/utils/useSentinelVisibility.d.ts +0 -8
- package/dist/utils/useUpdateEffect.d.ts +0 -5
- package/dist/utils/useWidthOf.d.ts +0 -9
|
@@ -36,6 +36,8 @@ var filterSelectReducer = function filterSelectReducer(state, action) {
|
|
|
36
36
|
case "SET_QUERY":
|
|
37
37
|
{
|
|
38
38
|
var _query = action.payload.query;
|
|
39
|
+
var _items = state.items,
|
|
40
|
+
searchableText = state.searchableText;
|
|
39
41
|
if (_query === "") {
|
|
40
42
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
41
43
|
query: _query,
|
|
@@ -43,9 +45,10 @@ var filterSelectReducer = function filterSelectReducer(state, action) {
|
|
|
43
45
|
filteredItems: []
|
|
44
46
|
});
|
|
45
47
|
}
|
|
46
|
-
var filteredItems =
|
|
47
|
-
var
|
|
48
|
-
|
|
48
|
+
var filteredItems = _items.filter(function (item) {
|
|
49
|
+
var _searchableText;
|
|
50
|
+
var text = (_searchableText = searchableText === null || searchableText === void 0 ? void 0 : searchableText(item)) !== null && _searchableText !== void 0 ? _searchableText : item.label;
|
|
51
|
+
return text.toLowerCase().includes(_query.toLowerCase());
|
|
49
52
|
});
|
|
50
53
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
51
54
|
query: _query,
|
|
@@ -72,9 +75,9 @@ var filterSelectReducer = function filterSelectReducer(state, action) {
|
|
|
72
75
|
}
|
|
73
76
|
case "SET_SELECTED_ITEMS":
|
|
74
77
|
{
|
|
75
|
-
var
|
|
78
|
+
var _items2 = action.payload.items;
|
|
76
79
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
77
|
-
selectedItems:
|
|
80
|
+
selectedItems: _items2
|
|
78
81
|
});
|
|
79
82
|
}
|
|
80
83
|
}
|
|
@@ -95,10 +98,10 @@ var initialState = {
|
|
|
95
98
|
selectedItems: []
|
|
96
99
|
};
|
|
97
100
|
var FilterSelectContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
98
|
-
var FilterSelectContextProvider = function FilterSelectContextProvider(
|
|
101
|
+
var FilterSelectContextProvider = function FilterSelectContextProvider(_ref) {
|
|
99
102
|
var _props$selectedItems;
|
|
100
|
-
var children =
|
|
101
|
-
props = _objectWithoutProperties(
|
|
103
|
+
var children = _ref.children,
|
|
104
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
102
105
|
var _useReducer = (0, _react.useReducer)(filterSelectReducer, _objectSpread(_objectSpread({}, initialState), props)),
|
|
103
106
|
_useReducer2 = _slicedToArray(_useReducer, 2),
|
|
104
107
|
state = _useReducer2[0],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterSelectContext.js","names":["_react","_interopRequireWildcard","require","_utils","_ShowMore","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","length","err","return","Array","isArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","toString","slice","name","from","test","iter","len","arr2","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","filterSelectReducer","state","action","type","query","payload","isFiltered","filteredItems","items","_ref","label","toLowerCase","includes","isFound","selectedItems","find","item","multiselect","concat","initialState","initialItemsToShow","INITIAL_ITEMS_TO_SHOW","onChange","x","order","placeholder","renderItemLabel","FilterSelectContext","createContext","FilterSelectContextProvider","_ref2","_props$selectedItems","children","props","_useReducer","useReducer","_useReducer2","dispatch","contextValue","toggleSelectedItem","setQuery","setSelectedItems","useUpdateEffect","useLayoutEffect","_props$query","createElement","Provider","exports","displayName","useFilterSelectContext","useContext"],"sources":["../../../../src/elements/FilterSelect/Components/FilterSelectContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useLayoutEffect,\n useReducer,\n} from \"react\"\nimport { useUpdateEffect } from \"../../../utils\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../../ShowMore\"\n\nexport interface Item {\n label: string\n value: string\n [key: string]: string | number | boolean\n}\n\n// In order to satisfy the Relay compilers readonly list types. This is in\n// support for passing different kinds of item types as props, like aggregations\nexport type Items = ReadonlyArray<Item>\n\nexport interface FilterSelectChangeState {\n items: FilterSelectContextProps[\"items\"]\n filteredItems: FilterSelectContextProps[\"filteredItems\"]\n selectedItems: FilterSelectContextProps[\"selectedItems\"]\n query: FilterSelectContextProps[\"query\"]\n}\n\ninterface FilterSelectContextProps {\n items: Items\n filteredItems: Items\n initialItemsToShow: number\n isFiltered: boolean\n multiselect: boolean\n onChange: (state: FilterSelectChangeState) => void\n order: [string[], Array<\"asc\" | \"desc\">] // See: https://lodash.com/docs/4.17.15#orderBy\n placeholder: string\n query: string\n renderItemLabel?: (item: any) => string\n selectedItems: Items\n toggleSelectedItem: (item: Item) => void\n setQuery: (query: string) => void\n setSelectedItems: (items: Items) => void\n}\n\nexport type FilterSelectState = Pick<\n FilterSelectContextProps,\n | \"filteredItems\"\n | \"initialItemsToShow\"\n | \"items\"\n | \"isFiltered\"\n | \"multiselect\"\n | \"onChange\"\n | \"order\"\n | \"placeholder\"\n | \"renderItemLabel\"\n | \"query\"\n | \"selectedItems\"\n>\n\ntype Action =\n | { type: \"SET_QUERY\"; payload: { query: string } }\n | { type: \"TOGGLE_SELECTED_ITEM\"; payload: { item: Item } }\n | { type: \"SET_SELECTED_ITEMS\"; payload: { items: Items } }\n\nconst filterSelectReducer = (state: FilterSelectState, action: Action) => {\n switch (action.type) {\n case \"SET_QUERY\": {\n const { query } = action.payload\n\n if (query === \"\") {\n return {\n ...state,\n query,\n isFiltered: false,\n filteredItems: [],\n }\n }\n\n const filteredItems = state.items.filter(({ label: name }) => {\n return name.toLowerCase().includes(query.toLowerCase())\n })\n\n return {\n ...state,\n query,\n isFiltered: true,\n filteredItems,\n }\n }\n\n case \"TOGGLE_SELECTED_ITEM\": {\n const isFound = !!state.selectedItems.find(\n (item) => item.value === action.payload.item.value\n )\n\n let selectedItems\n if (isFound) {\n selectedItems = state.selectedItems.filter(\n (item) => item.value !== action.payload.item.value\n )\n } else {\n selectedItems = state.multiselect\n ? [...state.selectedItems, action.payload.item]\n : [action.payload.item]\n }\n\n return {\n ...state,\n selectedItems,\n }\n }\n\n case \"SET_SELECTED_ITEMS\": {\n const { items } = action.payload\n\n return {\n ...state,\n selectedItems: items,\n }\n }\n }\n}\n\nconst initialState: FilterSelectState = {\n filteredItems: [],\n initialItemsToShow: INITIAL_ITEMS_TO_SHOW,\n isFiltered: false,\n items: [],\n multiselect: true,\n onChange: (x) => x,\n order: [[\"label\"], [\"asc\"]],\n placeholder: \"\",\n query: \"\",\n renderItemLabel: undefined,\n selectedItems: [],\n}\n\nconst FilterSelectContext = createContext<FilterSelectContextProps>({} as any)\n\nexport const FilterSelectContextProvider: React.FC<React.PropsWithChildren<Partial<FilterSelectState>>> = ({ children, ...props }) => {\n const [state, dispatch] = useReducer(filterSelectReducer, {\n ...initialState,\n ...props,\n })\n\n const contextValue = {\n ...state,\n\n toggleSelectedItem: (item) => {\n dispatch({\n type: \"TOGGLE_SELECTED_ITEM\",\n payload: { item },\n })\n },\n setQuery: (query) => {\n dispatch({\n type: \"SET_QUERY\",\n payload: { query },\n })\n },\n setSelectedItems: (items) => {\n dispatch({\n type: \"SET_SELECTED_ITEMS\",\n payload: {\n items,\n },\n })\n },\n }\n\n useUpdateEffect(() => {\n if (props.selectedItems) {\n contextValue.setSelectedItems(props.selectedItems)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.selectedItems?.length])\n\n useLayoutEffect(() => {\n if (props.query?.length) {\n contextValue.setQuery(props.query)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <FilterSelectContext.Provider value={contextValue}>\n {children}\n </FilterSelectContext.Provider>\n )\n}\n\nexport const useFilterSelectContext = () => {\n return useContext(FilterSelectContext)\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FilterSelectContext.js","names":["_react","_interopRequireWildcard","require","_utils","_ShowMore","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","length","err","return","Array","isArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","toString","slice","name","from","test","iter","len","arr2","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","filterSelectReducer","state","action","type","query","payload","items","searchableText","isFiltered","filteredItems","item","_searchableText","text","label","toLowerCase","includes","isFound","selectedItems","find","multiselect","concat","initialState","initialItemsToShow","INITIAL_ITEMS_TO_SHOW","onChange","x","order","placeholder","renderItemLabel","FilterSelectContext","createContext","FilterSelectContextProvider","_ref","_props$selectedItems","children","props","_useReducer","useReducer","_useReducer2","dispatch","contextValue","toggleSelectedItem","setQuery","setSelectedItems","useUpdateEffect","useLayoutEffect","_props$query","createElement","Provider","exports","displayName","useFilterSelectContext","useContext"],"sources":["../../../../src/elements/FilterSelect/Components/FilterSelectContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useLayoutEffect,\n useReducer,\n} from \"react\"\nimport { useUpdateEffect } from \"../../../utils\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../../ShowMore\"\n\nexport interface Item {\n label: string\n value: string\n [key: string]: string | number | boolean\n}\n\n// In order to satisfy the Relay compilers readonly list types. This is in\n// support for passing different kinds of item types as props, like aggregations\nexport type Items = ReadonlyArray<Item>\n\nexport interface FilterSelectChangeState {\n items: FilterSelectContextProps[\"items\"]\n filteredItems: FilterSelectContextProps[\"filteredItems\"]\n selectedItems: FilterSelectContextProps[\"selectedItems\"]\n query: FilterSelectContextProps[\"query\"]\n}\n\ninterface FilterSelectContextProps {\n enableSelectAll?: boolean\n filteredItems: Items\n initialItemsToShow: number\n isFiltered: boolean\n items: Items\n multiselect: boolean\n onChange: (state: FilterSelectChangeState) => void\n onSelectAll?: (state: FilterSelectChangeState) => void\n order: [string[], Array<\"asc\" | \"desc\">] // See: https://lodash.com/docs/4.17.15#orderBy\n placeholder: string\n query: string\n renderItemLabel?: (item: any) => string\n searchableText?: (item: Item) => string\n selectedItems: Items\n setQuery: (query: string) => void\n setSelectedItems: (items: Items) => void\n toggleSelectedItem: (item: Item) => void\n}\n\nexport type FilterSelectState = Pick<\n FilterSelectContextProps,\n | \"enableSelectAll\"\n | \"filteredItems\"\n | \"initialItemsToShow\"\n | \"isFiltered\"\n | \"items\"\n | \"multiselect\"\n | \"onChange\"\n | \"onSelectAll\"\n | \"order\"\n | \"placeholder\"\n | \"query\"\n | \"renderItemLabel\"\n | \"searchableText\"\n | \"selectedItems\"\n>\n\ntype Action =\n | { type: \"SET_QUERY\"; payload: { query: string } }\n | { type: \"TOGGLE_SELECTED_ITEM\"; payload: { item: Item } }\n | { type: \"SET_SELECTED_ITEMS\"; payload: { items: Items } }\n\nconst filterSelectReducer = (state: FilterSelectState, action: Action) => {\n switch (action.type) {\n case \"SET_QUERY\": {\n const { query } = action.payload\n const { items, searchableText } = state\n\n if (query === \"\") {\n return {\n ...state,\n query,\n isFiltered: false,\n filteredItems: [],\n }\n }\n\n const filteredItems = items.filter((item) => {\n const text = searchableText?.(item) ?? item.label\n return text.toLowerCase().includes(query.toLowerCase())\n })\n\n return {\n ...state,\n query,\n isFiltered: true,\n filteredItems,\n }\n }\n\n case \"TOGGLE_SELECTED_ITEM\": {\n const isFound = !!state.selectedItems.find(\n (item) => item.value === action.payload.item.value\n )\n\n let selectedItems\n if (isFound) {\n selectedItems = state.selectedItems.filter(\n (item) => item.value !== action.payload.item.value\n )\n } else {\n selectedItems = state.multiselect\n ? [...state.selectedItems, action.payload.item]\n : [action.payload.item]\n }\n\n return {\n ...state,\n selectedItems,\n }\n }\n\n case \"SET_SELECTED_ITEMS\": {\n const { items } = action.payload\n\n return {\n ...state,\n selectedItems: items,\n }\n }\n }\n}\n\nconst initialState: FilterSelectState = {\n filteredItems: [],\n initialItemsToShow: INITIAL_ITEMS_TO_SHOW,\n isFiltered: false,\n items: [],\n multiselect: true,\n onChange: (x) => x,\n order: [[\"label\"], [\"asc\"]],\n placeholder: \"\",\n query: \"\",\n renderItemLabel: undefined,\n selectedItems: [],\n}\n\nconst FilterSelectContext = createContext<FilterSelectContextProps>({} as any)\n\nexport const FilterSelectContextProvider: React.FC<\n React.PropsWithChildren<Partial<FilterSelectState>>\n> = ({ children, ...props }) => {\n const [state, dispatch] = useReducer(filterSelectReducer, {\n ...initialState,\n ...props,\n })\n\n const contextValue = {\n ...state,\n\n toggleSelectedItem: (item) => {\n dispatch({\n type: \"TOGGLE_SELECTED_ITEM\",\n payload: { item },\n })\n },\n setQuery: (query) => {\n dispatch({\n type: \"SET_QUERY\",\n payload: { query },\n })\n },\n setSelectedItems: (items) => {\n dispatch({\n type: \"SET_SELECTED_ITEMS\",\n payload: {\n items,\n },\n })\n },\n }\n\n useUpdateEffect(() => {\n if (props.selectedItems) {\n contextValue.setSelectedItems(props.selectedItems)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.selectedItems?.length])\n\n useLayoutEffect(() => {\n if (props.query?.length) {\n contextValue.setQuery(props.query)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <FilterSelectContext.Provider value={contextValue}>\n {children}\n </FilterSelectContext.Provider>\n )\n}\n\nexport const useFilterSelectContext = () => {\n return useContext(FilterSelectContext)\n}\n"],"mappings":"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"}
|
|
@@ -15,6 +15,9 @@ var _FilterInput = require("./Components/FilterInput");
|
|
|
15
15
|
var _VisuallyHidden = require("../VisuallyHidden");
|
|
16
16
|
var _Text = require("../Text");
|
|
17
17
|
var _utils = require("../../utils");
|
|
18
|
+
var _Box = require("../Box");
|
|
19
|
+
var _Clickable = require("../Clickable");
|
|
20
|
+
var _Stack = require("../Stack");
|
|
18
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
23
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
@@ -31,6 +34,7 @@ exports.FilterSelect = FilterSelect;
|
|
|
31
34
|
FilterSelect.displayName = "FilterSelect";
|
|
32
35
|
var _FilterSelect = function _FilterSelect() {
|
|
33
36
|
var _useFilterSelectConte = (0, _FilterSelectContext.useFilterSelectContext)(),
|
|
37
|
+
enableSelectAll = _useFilterSelectConte.enableSelectAll,
|
|
34
38
|
filteredItems = _useFilterSelectConte.filteredItems,
|
|
35
39
|
initialItemsToShow = _useFilterSelectConte.initialItemsToShow,
|
|
36
40
|
isFiltered = _useFilterSelectConte.isFiltered,
|
|
@@ -40,6 +44,9 @@ var _FilterSelect = function _FilterSelect() {
|
|
|
40
44
|
order = _useFilterSelectConte.order,
|
|
41
45
|
query = _useFilterSelectConte.query,
|
|
42
46
|
selectedItems = _useFilterSelectConte.selectedItems;
|
|
47
|
+
if (!multiselect && enableSelectAll) {
|
|
48
|
+
console.error("FilterSelect: enableSelectAll is only available with multiselect mode.");
|
|
49
|
+
}
|
|
43
50
|
|
|
44
51
|
// Dispatch change event
|
|
45
52
|
(0, _utils.useUpdateEffect)(function () {
|
|
@@ -60,7 +67,7 @@ var _FilterSelect = function _FilterSelect() {
|
|
|
60
67
|
return (0, _esToolkit.orderBy)(_toConsumableArray(items), order[0], order[1]);
|
|
61
68
|
};
|
|
62
69
|
var itemsOrdered = orderItems(items);
|
|
63
|
-
var
|
|
70
|
+
var filteredItemsOrdered = orderItems(filteredItems);
|
|
64
71
|
var itemsSorted = multiselect ?
|
|
65
72
|
// Move selected items to the top
|
|
66
73
|
(0, _esToolkit.uniqBy)(selectedItems.concat(itemsOrdered), function (x) {
|
|
@@ -68,6 +75,7 @@ var _FilterSelect = function _FilterSelect() {
|
|
|
68
75
|
}) : itemsOrdered;
|
|
69
76
|
var expanded = isBelowTheFoldSelected(selectedItems, itemsSorted);
|
|
70
77
|
var showNoResults = filteredItems.length === 0 && query !== "";
|
|
78
|
+
var showSelectAll = multiselect && enableSelectAll && !showNoResults;
|
|
71
79
|
return /*#__PURE__*/React.createElement(_Flex.Flex, {
|
|
72
80
|
flexDirection: "column"
|
|
73
81
|
}, /*#__PURE__*/React.createElement(_FilterInput.FilterInput, {
|
|
@@ -76,11 +84,11 @@ var _FilterSelect = function _FilterSelect() {
|
|
|
76
84
|
"aria-live": "polite"
|
|
77
85
|
}, "".concat(filteredItems.length, " result").concat(filteredItems.length === 1 ? "" : "s")), showNoResults && /*#__PURE__*/React.createElement(_Text.Text, {
|
|
78
86
|
variant: "sm"
|
|
79
|
-
}, "No results."), isFiltered ?
|
|
87
|
+
}, "No results."), isFiltered ? /*#__PURE__*/React.createElement(React.Fragment, null, showSelectAll && /*#__PURE__*/React.createElement(SelectAll, null), filteredItemsOrdered.map(function (item) {
|
|
80
88
|
return /*#__PURE__*/React.createElement(_FilterSelectResultItem.FilterSelectResultItem, _extends({
|
|
81
89
|
key: item.value
|
|
82
90
|
}, item));
|
|
83
|
-
}) : /*#__PURE__*/React.createElement(_ShowMore.ShowMore, {
|
|
91
|
+
})) : /*#__PURE__*/React.createElement(_ShowMore.ShowMore, {
|
|
84
92
|
expanded: expanded,
|
|
85
93
|
initial: initialItemsToShow,
|
|
86
94
|
variant: "xs",
|
|
@@ -107,4 +115,47 @@ var isBelowTheFoldSelected = function isBelowTheFoldSelected(selectedItems, resu
|
|
|
107
115
|
return isSelected;
|
|
108
116
|
};
|
|
109
117
|
exports.isBelowTheFoldSelected = isBelowTheFoldSelected;
|
|
118
|
+
var SelectAll = function SelectAll() {
|
|
119
|
+
var _useFilterSelectConte2 = (0, _FilterSelectContext.useFilterSelectContext)(),
|
|
120
|
+
items = _useFilterSelectConte2.items,
|
|
121
|
+
filteredItems = _useFilterSelectConte2.filteredItems,
|
|
122
|
+
onSelectAll = _useFilterSelectConte2.onSelectAll,
|
|
123
|
+
query = _useFilterSelectConte2.query,
|
|
124
|
+
selectedItems = _useFilterSelectConte2.selectedItems,
|
|
125
|
+
setSelectedItems = _useFilterSelectConte2.setSelectedItems;
|
|
126
|
+
var isClearDisabled = selectedItems.length === 0;
|
|
127
|
+
return /*#__PURE__*/React.createElement(_Box.Box, {
|
|
128
|
+
my: 1
|
|
129
|
+
}, /*#__PURE__*/React.createElement(_Stack.Stack, {
|
|
130
|
+
gap: 2,
|
|
131
|
+
flexDirection: "row"
|
|
132
|
+
}, /*#__PURE__*/React.createElement(_Clickable.Clickable, {
|
|
133
|
+
"data-testid": "filterSelect-selectAll",
|
|
134
|
+
className: "selectAll",
|
|
135
|
+
onClick: function onClick() {
|
|
136
|
+
setSelectedItems(filteredItems);
|
|
137
|
+
onSelectAll === null || onSelectAll === void 0 ? void 0 : onSelectAll({
|
|
138
|
+
items: items,
|
|
139
|
+
filteredItems: filteredItems,
|
|
140
|
+
selectedItems: filteredItems,
|
|
141
|
+
query: query
|
|
142
|
+
});
|
|
143
|
+
},
|
|
144
|
+
textDecoration: "underline"
|
|
145
|
+
}, /*#__PURE__*/React.createElement(_Text.Text, {
|
|
146
|
+
variant: "xs"
|
|
147
|
+
}, "Select all")), /*#__PURE__*/React.createElement(_Clickable.Clickable, {
|
|
148
|
+
"data-testid": "filterSelect-clear",
|
|
149
|
+
className: "clear",
|
|
150
|
+
onClick: function onClick() {
|
|
151
|
+
return setSelectedItems([]);
|
|
152
|
+
},
|
|
153
|
+
textDecoration: "underline",
|
|
154
|
+
disabled: isClearDisabled,
|
|
155
|
+
color: isClearDisabled ? "black60" : "black100"
|
|
156
|
+
}, /*#__PURE__*/React.createElement(_Text.Text, {
|
|
157
|
+
variant: "xs"
|
|
158
|
+
}, "Clear"))));
|
|
159
|
+
};
|
|
160
|
+
SelectAll.displayName = "SelectAll";
|
|
110
161
|
//# sourceMappingURL=FilterSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterSelect.js","names":["_esToolkit","require","React","_interopRequireWildcard","_ShowMore","_Flex","_FilterSelectResultItem","_FilterSelectContext","_FilterInput","_VisuallyHidden","_Text","_utils","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","arr2","FilterSelect","props","createElement","FilterSelectContextProvider","_FilterSelect","exports","displayName","_useFilterSelectConte","useFilterSelectContext","filteredItems","initialItemsToShow","isFiltered","items","multiselect","onChange","order","query","selectedItems","useUpdateEffect","orderItems","orderBy","itemsOrdered","filterdItemsOrdered","itemsSorted","uniqBy","concat","x","value","expanded","isBelowTheFoldSelected","showNoResults","Flex","flexDirection","FilterInput","mb","VisuallyHidden","Text","variant","map","item","FilterSelectResultItem","ShowMore","initial","textDecoration","mt","textAlign","resultsSorted","selected","_ref","results","INITIAL_ITEMS_TO_SHOW","_ref2","isSelected","intersection"],"sources":["../../../src/elements/FilterSelect/FilterSelect.tsx"],"sourcesContent":["import { intersection, orderBy, uniqBy } from \"es-toolkit\"\nimport * as React from \"react\"\nimport { ShowMore } from \"../ShowMore\"\nimport { Flex } from \"../Flex\"\nimport { FilterSelectResultItem } from \"./Components/FilterSelectResultItem\"\nimport {\n FilterSelectContextProvider,\n FilterSelectState,\n Items,\n useFilterSelectContext,\n} from \"./Components/FilterSelectContext\"\nimport { FilterInput } from \"./Components/FilterInput\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { Text } from \"../Text\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../ShowMore\"\nimport { useUpdateEffect } from \"../../utils\"\n\nexport type FilterSelectProps = Partial<FilterSelectState>\n\nexport const FilterSelect: React.FC<React.PropsWithChildren<FilterSelectProps>> = (props) => {\n return (\n <FilterSelectContextProvider {...props}>\n <_FilterSelect />\n </FilterSelectContextProvider>\n )\n}\n\nconst _FilterSelect: React.FC<React.PropsWithChildren<unknown>> = () => {\n const {\n filteredItems,\n initialItemsToShow,\n isFiltered,\n items,\n multiselect,\n onChange,\n order,\n query,\n selectedItems,\n } = useFilterSelectContext()\n\n // Dispatch change event\n useUpdateEffect(() => {\n if (onChange) {\n onChange({\n items,\n filteredItems,\n selectedItems,\n query,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onChange, selectedItems])\n\n if (items.length === 0) {\n return null\n }\n\n const orderItems = (items: Items) => orderBy([...items], order[0], order[1])\n const itemsOrdered = orderItems(items)\n const filterdItemsOrdered = orderItems(filteredItems)\n const itemsSorted = multiselect\n ? // Move selected items to the top\n uniqBy(selectedItems.concat(itemsOrdered), (x) => x.value)\n : itemsOrdered\n const expanded = isBelowTheFoldSelected(selectedItems, itemsSorted)\n const showNoResults = filteredItems.length === 0 && query !== \"\"\n\n return (\n <Flex flexDirection=\"column\">\n <FilterInput mb={1} />\n\n {query !== \"\" && (\n <VisuallyHidden aria-live=\"polite\">\n {`${filteredItems.length} result${\n filteredItems.length === 1 ? \"\" : \"s\"\n }`}\n </VisuallyHidden>\n )}\n\n {showNoResults && <Text variant=\"sm\">No results.</Text>}\n\n {isFiltered ? (\n filterdItemsOrdered.map((item) => (\n <FilterSelectResultItem key={item.value} {...item} />\n ))\n ) : (\n <ShowMore\n expanded={expanded}\n initial={initialItemsToShow}\n variant={\"xs\"}\n textDecoration={\"underline\"}\n mt={1}\n textAlign=\"left\"\n >\n {itemsSorted.map((item) => {\n return <FilterSelectResultItem key={item.value} {...item} />\n })}\n </ShowMore>\n )}\n </Flex>\n )\n}\n\nexport const isBelowTheFoldSelected = (selectedItems, resultsSorted) => {\n const selected = selectedItems.map(({ value }) => value)\n const results = resultsSorted\n .slice(INITIAL_ITEMS_TO_SHOW)\n .map(({ value }) => value)\n const isSelected = intersection(selected, results).length > 0\n return isSelected\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FilterSelect.js","names":["_esToolkit","require","React","_interopRequireWildcard","_ShowMore","_Flex","_FilterSelectResultItem","_FilterSelectContext","_FilterInput","_VisuallyHidden","_Text","_utils","_Box","_Clickable","_Stack","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","arr2","FilterSelect","props","createElement","FilterSelectContextProvider","_FilterSelect","exports","displayName","_useFilterSelectConte","useFilterSelectContext","enableSelectAll","filteredItems","initialItemsToShow","isFiltered","items","multiselect","onChange","order","query","selectedItems","console","error","useUpdateEffect","orderItems","orderBy","itemsOrdered","filteredItemsOrdered","itemsSorted","uniqBy","concat","x","value","expanded","isBelowTheFoldSelected","showNoResults","showSelectAll","Flex","flexDirection","FilterInput","mb","VisuallyHidden","Text","variant","Fragment","SelectAll","map","item","FilterSelectResultItem","ShowMore","initial","textDecoration","mt","textAlign","resultsSorted","selected","_ref","results","INITIAL_ITEMS_TO_SHOW","_ref2","isSelected","intersection","_useFilterSelectConte2","onSelectAll","setSelectedItems","isClearDisabled","Box","my","Stack","gap","Clickable","className","onClick","disabled","color"],"sources":["../../../src/elements/FilterSelect/FilterSelect.tsx"],"sourcesContent":["import { intersection, orderBy, uniqBy } from \"es-toolkit\"\nimport * as React from \"react\"\nimport { ShowMore } from \"../ShowMore\"\nimport { Flex } from \"../Flex\"\nimport { FilterSelectResultItem } from \"./Components/FilterSelectResultItem\"\nimport {\n FilterSelectContextProvider,\n FilterSelectState,\n Items,\n useFilterSelectContext,\n} from \"./Components/FilterSelectContext\"\nimport { FilterInput } from \"./Components/FilterInput\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { Text } from \"../Text\"\nimport { INITIAL_ITEMS_TO_SHOW } from \"../ShowMore\"\nimport { useUpdateEffect } from \"../../utils\"\nimport { Box } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { Stack } from \"../Stack\"\n\nexport type FilterSelectProps = Partial<FilterSelectState>\n\nexport const FilterSelect: React.FC<\n React.PropsWithChildren<FilterSelectProps>\n> = (props) => {\n return (\n <FilterSelectContextProvider {...props}>\n <_FilterSelect />\n </FilterSelectContextProvider>\n )\n}\n\nconst _FilterSelect: React.FC<React.PropsWithChildren<unknown>> = () => {\n const {\n enableSelectAll,\n filteredItems,\n initialItemsToShow,\n isFiltered,\n items,\n multiselect,\n onChange,\n order,\n query,\n selectedItems,\n } = useFilterSelectContext()\n\n if (!multiselect && enableSelectAll) {\n console.error(\n \"FilterSelect: enableSelectAll is only available with multiselect mode.\"\n )\n }\n\n // Dispatch change event\n useUpdateEffect(() => {\n if (onChange) {\n onChange({\n items,\n filteredItems,\n selectedItems,\n query,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onChange, selectedItems])\n\n if (items.length === 0) {\n return null\n }\n\n const orderItems = (items: Items) => orderBy([...items], order[0], order[1])\n const itemsOrdered = orderItems(items)\n const filteredItemsOrdered = orderItems(filteredItems)\n const itemsSorted = multiselect\n ? // Move selected items to the top\n uniqBy(selectedItems.concat(itemsOrdered), (x) => x.value)\n : itemsOrdered\n const expanded = isBelowTheFoldSelected(selectedItems, itemsSorted)\n const showNoResults = filteredItems.length === 0 && query !== \"\"\n const showSelectAll = multiselect && enableSelectAll && !showNoResults\n\n return (\n <Flex flexDirection=\"column\">\n <FilterInput mb={1} />\n\n {query !== \"\" && (\n <VisuallyHidden aria-live=\"polite\">\n {`${filteredItems.length} result${\n filteredItems.length === 1 ? \"\" : \"s\"\n }`}\n </VisuallyHidden>\n )}\n\n {showNoResults && <Text variant=\"sm\">No results.</Text>}\n\n {isFiltered ? (\n <>\n {showSelectAll && <SelectAll />}\n {filteredItemsOrdered.map((item) => (\n <FilterSelectResultItem key={item.value} {...item} />\n ))}\n </>\n ) : (\n <ShowMore\n expanded={expanded}\n initial={initialItemsToShow}\n variant={\"xs\"}\n textDecoration=\"underline\"\n mt={1}\n textAlign=\"left\"\n >\n {itemsSorted.map((item) => {\n return <FilterSelectResultItem key={item.value} {...item} />\n })}\n </ShowMore>\n )}\n </Flex>\n )\n}\n\nexport const isBelowTheFoldSelected = (selectedItems, resultsSorted) => {\n const selected = selectedItems.map(({ value }) => value)\n const results = resultsSorted\n .slice(INITIAL_ITEMS_TO_SHOW)\n .map(({ value }) => value)\n const isSelected = intersection(selected, results).length > 0\n return isSelected\n}\n\nconst SelectAll: React.FC = () => {\n const {\n items,\n filteredItems,\n onSelectAll,\n query,\n selectedItems,\n setSelectedItems,\n } = useFilterSelectContext()\n\n const isClearDisabled = selectedItems.length === 0\n\n return (\n <Box my={1}>\n <Stack gap={2} flexDirection={\"row\"}>\n <Clickable\n data-testid=\"filterSelect-selectAll\"\n className=\"selectAll\"\n onClick={() => {\n setSelectedItems(filteredItems)\n onSelectAll?.({\n items,\n filteredItems,\n selectedItems: filteredItems,\n query,\n })\n }}\n textDecoration=\"underline\"\n >\n <Text variant=\"xs\">Select all</Text>\n </Clickable>\n\n <Clickable\n data-testid=\"filterSelect-clear\"\n className=\"clear\"\n onClick={() => setSelectedItems([])}\n textDecoration=\"underline\"\n disabled={isClearDisabled}\n color={isClearDisabled ? \"black60\" : \"black100\"}\n >\n <Text variant=\"xs\">Clear</Text>\n </Clickable>\n </Stack>\n </Box>\n )\n}\n"],"mappings":"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"}
|
|
@@ -15,10 +15,26 @@ var _default = {
|
|
|
15
15
|
exports.default = _default;
|
|
16
16
|
var Default = function Default() {
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement(_storybookStates.States, {
|
|
18
|
-
states: [
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
states: [
|
|
19
|
+
// radio
|
|
20
|
+
{
|
|
21
21
|
multiselect: false
|
|
22
|
+
},
|
|
23
|
+
// checkboxes
|
|
24
|
+
{
|
|
25
|
+
multiselect: true
|
|
26
|
+
},
|
|
27
|
+
// checkboxes with searchable hidden text and quick select-all
|
|
28
|
+
{
|
|
29
|
+
multiselect: true,
|
|
30
|
+
enableSelectAll: true,
|
|
31
|
+
onSelectAll: function onSelectAll(state) {
|
|
32
|
+
return console.log("onSelectAll", state);
|
|
33
|
+
},
|
|
34
|
+
searchableText: function searchableText(item) {
|
|
35
|
+
var extraSearchTerms = item.country === "American" ? "USA; Yankee; Murican" : "";
|
|
36
|
+
return "".concat(item.label, "; ").concat(item.country, "; ").concat(extraSearchTerms);
|
|
37
|
+
}
|
|
22
38
|
}]
|
|
23
39
|
}, /*#__PURE__*/_react.default.createElement(_FilterSelect.FilterSelect, {
|
|
24
40
|
placeholder: "Filter by artist name",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterSelect.story.js","names":["_addonActions","require","_react","_interopRequireDefault","_storybookStates","_FilterSelect","obj","__esModule","default","_default","title","exports","Default","createElement","States","states","multiselect","
|
|
1
|
+
{"version":3,"file":"FilterSelect.story.js","names":["_addonActions","require","_react","_interopRequireDefault","_storybookStates","_FilterSelect","obj","__esModule","default","_default","title","exports","Default","createElement","States","states","multiselect","enableSelectAll","onSelectAll","state","console","log","searchableText","item","extraSearchTerms","country","concat","label","FilterSelect","placeholder","initialItemsToShow","order","renderItemLabel","onChange","action","items","value","displayName"],"sources":["../../../src/elements/FilterSelect/FilterSelect.story.tsx"],"sourcesContent":["import { action } from \"@storybook/addon-actions\"\nimport React from \"react\"\nimport { States } from \"storybook-states\"\nimport { FilterSelect } from \"./FilterSelect\"\nimport { FilterSelectProps } from \"./FilterSelect\"\n\nexport default {\n title: \"Components/FilterSelect\",\n}\n\nexport const Default = () => {\n return (\n <States<FilterSelectProps>\n states={[\n // radio\n { multiselect: false },\n\n // checkboxes\n { multiselect: true },\n\n // checkboxes with searchable hidden text and quick select-all\n {\n multiselect: true,\n enableSelectAll: true,\n onSelectAll: (state) => console.log(\"onSelectAll\", state),\n searchableText: (item) => {\n const extraSearchTerms =\n item.country === \"American\" ? \"USA; Yankee; Murican\" : \"\"\n return `${item.label}; ${item.country}; ${extraSearchTerms}`\n },\n },\n ]}\n >\n <FilterSelect\n placeholder=\"Filter by artist name\"\n initialItemsToShow={6}\n order={[\n [\"country\", \"name\"],\n [\"asc\", \"asc\"],\n ]}\n renderItemLabel={(item) => `${item.label}, ${item.country}`}\n onChange={action(\"onChange\")}\n items={[\n {\n label: \"Barbara Kruger\",\n value: \"barbara-kruger\",\n country: \"American\",\n },\n {\n label: \"Carrie Mae Weems\",\n value: \"carrie-weems\",\n country: \"American\",\n },\n {\n label: \"Daniel Arsham\",\n value: \"daniel-asham\",\n country: \"American\",\n },\n {\n label: \"Takashi Murakami\",\n value: \"takashi-muakami\",\n country: \"American\",\n },\n {\n label: \"Tracey Emin\",\n value: \"tracey-emin\",\n country: \"British-Nigerian\",\n },\n {\n label: \"Yinka Shonibare\",\n value: \"yinka-shonibare\",\n country: \"Japanese\",\n },\n {\n label: \"Barbara Kruger\",\n value: \"barbara-kruger-2\",\n country: \"British-Nigerian\",\n },\n ]}\n />\n </States>\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AAA6C,SAAAE,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,IAAAG,QAAA,GAG9B;EACbC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAH,OAAA,GAAAC,QAAA;AAEM,IAAMG,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;EAC3B,oBACEV,MAAA,CAAAM,OAAA,CAAAK,aAAA,CAACT,gBAAA,CAAAU,MAAM;IACLC,MAAM,EAAE;IACN;IACA;MAAEC,WAAW,EAAE;IAAM,CAAC;IAEtB;IACA;MAAEA,WAAW,EAAE;IAAK,CAAC;IAErB;IACA;MACEA,WAAW,EAAE,IAAI;MACjBC,eAAe,EAAE,IAAI;MACrBC,WAAW,EAAE,SAAAA,YAACC,KAAK;QAAA,OAAKC,OAAO,CAACC,GAAG,CAAC,aAAa,EAAEF,KAAK,CAAC;MAAA;MACzDG,cAAc,EAAE,SAAAA,eAACC,IAAI,EAAK;QACxB,IAAMC,gBAAgB,GACpBD,IAAI,CAACE,OAAO,KAAK,UAAU,GAAG,sBAAsB,GAAG,EAAE;QAC3D,UAAAC,MAAA,CAAUH,IAAI,CAACI,KAAK,QAAAD,MAAA,CAAKH,IAAI,CAACE,OAAO,QAAAC,MAAA,CAAKF,gBAAgB;MAC5D;IACF,CAAC;EACD,gBAEFtB,MAAA,CAAAM,OAAA,CAAAK,aAAA,CAACR,aAAA,CAAAuB,YAAY;IACXC,WAAW,EAAC,uBAAuB;IACnCC,kBAAkB,EAAE,CAAE;IACtBC,KAAK,EAAE,CACL,CAAC,SAAS,EAAE,MAAM,CAAC,EACnB,CAAC,KAAK,EAAE,KAAK,CAAC,CACd;IACFC,eAAe,EAAE,SAAAA,gBAACT,IAAI;MAAA,UAAAG,MAAA,CAAQH,IAAI,CAACI,KAAK,QAAAD,MAAA,CAAKH,IAAI,CAACE,OAAO;IAAA,CAAG;IAC5DQ,QAAQ,EAAE,IAAAC,oBAAM,EAAC,UAAU,CAAE;IAC7BC,KAAK,EAAE,CACL;MACER,KAAK,EAAE,gBAAgB;MACvBS,KAAK,EAAE,gBAAgB;MACvBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,kBAAkB;MACzBS,KAAK,EAAE,cAAc;MACrBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,eAAe;MACtBS,KAAK,EAAE,cAAc;MACrBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,kBAAkB;MACzBS,KAAK,EAAE,iBAAiB;MACxBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,aAAa;MACpBS,KAAK,EAAE,aAAa;MACpBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,iBAAiB;MACxBS,KAAK,EAAE,iBAAiB;MACxBX,OAAO,EAAE;IACX,CAAC,EACD;MACEE,KAAK,EAAE,gBAAgB;MACvBS,KAAK,EAAE,kBAAkB;MACzBX,OAAO,EAAE;IACX,CAAC;EACD,EACF,CACK;AAEb,CAAC;AAAAd,OAAA,CAAAC,OAAA,GAAAA,OAAA;AAxEYA,OAAO,CAAAyB,WAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@artsy/palette",
|
|
3
|
-
"version": "40.
|
|
3
|
+
"version": "40.3.0-canary.20ffe4c1.0",
|
|
4
4
|
"description": "Design system library for react components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -189,5 +189,5 @@
|
|
|
189
189
|
"url": "http://localhost"
|
|
190
190
|
}
|
|
191
191
|
},
|
|
192
|
-
"gitHead": "
|
|
192
|
+
"gitHead": "20ffe4c12cfe52ad605ed2b307a6915a105a643a"
|
|
193
193
|
}
|
package/dist/Theme.d.ts
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
export * from "@artsy/palette-tokens/dist/themes/v3";
|
|
3
|
-
export { TextVariant } from "@artsy/palette-tokens/dist/typography/v3";
|
|
4
|
-
interface ThemeProps {
|
|
5
|
-
children?: React.ReactNode;
|
|
6
|
-
theme?: "light" | "dark";
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* A wrapper component for passing down the Artsy theme context
|
|
10
|
-
*/
|
|
11
|
-
export declare const Theme: React.FC<React.PropsWithChildren<ThemeProps>>;
|
|
12
|
-
/** Returns the current theme */
|
|
13
|
-
export declare const useTheme: <T extends {
|
|
14
|
-
id: string;
|
|
15
|
-
name: string;
|
|
16
|
-
breakpoints: string[] & {
|
|
17
|
-
lg: string;
|
|
18
|
-
md: string;
|
|
19
|
-
sm: string;
|
|
20
|
-
xs: string;
|
|
21
|
-
};
|
|
22
|
-
colors: {
|
|
23
|
-
black100: string;
|
|
24
|
-
black60: string;
|
|
25
|
-
black30: string;
|
|
26
|
-
black15: string;
|
|
27
|
-
black10: string;
|
|
28
|
-
black5: string;
|
|
29
|
-
white100: string;
|
|
30
|
-
blue200: string;
|
|
31
|
-
blue150: string;
|
|
32
|
-
blue100: string;
|
|
33
|
-
brand: string;
|
|
34
|
-
blue15: string;
|
|
35
|
-
blue10: string;
|
|
36
|
-
green150: string;
|
|
37
|
-
green100: string;
|
|
38
|
-
green10: string;
|
|
39
|
-
yellow150: string;
|
|
40
|
-
yellow100: string;
|
|
41
|
-
yellow10: string;
|
|
42
|
-
orange150: string;
|
|
43
|
-
orange100: string;
|
|
44
|
-
orange10: string;
|
|
45
|
-
red150: string;
|
|
46
|
-
red100: string;
|
|
47
|
-
red50: string;
|
|
48
|
-
red10: string;
|
|
49
|
-
};
|
|
50
|
-
effects: {
|
|
51
|
-
dropShadow: string;
|
|
52
|
-
innerShadow: string;
|
|
53
|
-
flatShadow: string;
|
|
54
|
-
textShadow: string;
|
|
55
|
-
overlayGradient: string;
|
|
56
|
-
fadeRight: string;
|
|
57
|
-
backdrop: string;
|
|
58
|
-
};
|
|
59
|
-
fonts: {
|
|
60
|
-
sans: string;
|
|
61
|
-
};
|
|
62
|
-
mediaQueries: {
|
|
63
|
-
lg: string;
|
|
64
|
-
md: string;
|
|
65
|
-
sm: string;
|
|
66
|
-
xs: string;
|
|
67
|
-
hover: string;
|
|
68
|
-
};
|
|
69
|
-
grid: {
|
|
70
|
-
breakpoints: {};
|
|
71
|
-
};
|
|
72
|
-
space: {
|
|
73
|
-
0.5: string;
|
|
74
|
-
1: string;
|
|
75
|
-
2: string;
|
|
76
|
-
4: string;
|
|
77
|
-
6: string;
|
|
78
|
-
12: string;
|
|
79
|
-
};
|
|
80
|
-
textVariants: Record<"xxxl" | "xxl" | "xl" | "lg" | "lg-display" | "md" | "sm" | "sm-display" | "xs" | "xxs" | "bq", import("@artsy/palette-tokens/dist/typography/v3").TextTreatment>;
|
|
81
|
-
}>() => {
|
|
82
|
-
theme: T;
|
|
83
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { InputProps } from "../Input";
|
|
3
|
-
import { ResponsiveValue } from "styled-system";
|
|
4
|
-
export interface AutocompleteFooterActions {
|
|
5
|
-
/** Call to close dropdown */
|
|
6
|
-
onClose(): void;
|
|
7
|
-
}
|
|
8
|
-
/** Base option type — can be expanded */
|
|
9
|
-
export interface AutocompleteInputOptionType {
|
|
10
|
-
text: string;
|
|
11
|
-
value: string;
|
|
12
|
-
}
|
|
13
|
-
export interface AutocompleteInputProps<T extends AutocompleteInputOptionType> extends Omit<InputProps, "onSelect" | "onSubmit"> {
|
|
14
|
-
/** Optionally enable clamping (default: `false`) */
|
|
15
|
-
clamp?: boolean;
|
|
16
|
-
defaultValue?: string;
|
|
17
|
-
dropdownMaxHeight?: ResponsiveValue<string | number>;
|
|
18
|
-
loading?: boolean;
|
|
19
|
-
header?: React.ReactNode;
|
|
20
|
-
/** Optionally disable flipping (default: `true`) */
|
|
21
|
-
flip?: boolean;
|
|
22
|
-
footer?: React.ReactNode | ((dropdownActions: AutocompleteFooterActions) => React.ReactNode);
|
|
23
|
-
/** Ref to the input; workaround generics */
|
|
24
|
-
forwardRef?: React.Ref<HTMLInputElement>;
|
|
25
|
-
/** on <enter> when no option is selected */
|
|
26
|
-
onSubmit?(query: string): void;
|
|
27
|
-
/** on <click> or <enter> when an option is selected */
|
|
28
|
-
onSelect?(option: T, index: number): void;
|
|
29
|
-
/** on <click> of the 'x' (clear) button */
|
|
30
|
-
onClear?(): void;
|
|
31
|
-
/** Callback that runs when options are hidden */
|
|
32
|
-
onClose?(): void;
|
|
33
|
-
options: T[];
|
|
34
|
-
renderOption?(option: T, i: number): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
35
|
-
}
|
|
36
|
-
/** AutocompleteInput */
|
|
37
|
-
export declare const AutocompleteInput: <T extends AutocompleteInputOptionType>({ clamp, defaultValue, dropdownMaxHeight, flip, footer, forwardRef: forwardedRef, header, height, id, loading, onChange, onClear, onClose, onKeyDown, onSelect, onSubmit, options, renderOption, ...rest }: AutocompleteInputProps<T>) => React.JSX.Element;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
declare const _default: {
|
|
3
|
-
title: string;
|
|
4
|
-
};
|
|
5
|
-
export default _default;
|
|
6
|
-
export declare const Default: () => React.JSX.Element;
|
|
7
|
-
export declare const Demo: () => React.JSX.Element;
|
|
8
|
-
export declare const FilterDemo: () => React.JSX.Element;
|
|
9
|
-
export declare const ProgrammaticFocus: () => React.JSX.Element;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { ClickableProps } from "../Clickable";
|
|
3
|
-
export interface AutocompleteInputOptionProps extends ClickableProps {
|
|
4
|
-
selected: boolean;
|
|
5
|
-
}
|
|
6
|
-
export declare const AutocompleteInputOption: React.ForwardRefExoticComponent<AutocompleteInputOptionProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { TextProps } from "../Text";
|
|
3
|
-
export interface AutocompleteInputOptionLabelProps extends TextProps {
|
|
4
|
-
text: string;
|
|
5
|
-
}
|
|
6
|
-
export declare const AutocompleteInputOptionLabel: React.FC<React.PropsWithChildren<AutocompleteInputOptionLabelProps>>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { FlexProps } from "../Flex";
|
|
3
|
-
import { ImageProps } from "../Image";
|
|
4
|
-
export interface AvatarProps extends FlexProps, Partial<ImageProps> {
|
|
5
|
-
/** If an image is missing, show initials instead */
|
|
6
|
-
initials?: string;
|
|
7
|
-
/** The size of the Avatar */
|
|
8
|
-
size?: "xxs" | "xs" | "sm" | "md";
|
|
9
|
-
}
|
|
10
|
-
/** An circular Avatar component containing an image or initials */
|
|
11
|
-
export declare const Avatar: React.FC<React.PropsWithChildren<AvatarProps>>;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
declare const _default: {
|
|
3
|
-
title: string;
|
|
4
|
-
};
|
|
5
|
-
export default _default;
|
|
6
|
-
export declare const Sizes: () => React.JSX.Element;
|
|
7
|
-
export declare const WithImage: () => React.JSX.Element;
|
|
8
|
-
export declare const WithBrokenImage: () => React.JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./Avatar";
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { FlexProps } from "../Flex";
|
|
3
|
-
export declare type BannerVariant = keyof typeof BANNER_VARIANTS;
|
|
4
|
-
export interface BannerProps extends FlexProps {
|
|
5
|
-
variant?: BannerVariant;
|
|
6
|
-
dismissable?: boolean;
|
|
7
|
-
onClose?: () => void;
|
|
8
|
-
}
|
|
9
|
-
/** A banner */
|
|
10
|
-
export declare const Banner: React.FC<React.PropsWithChildren<BannerProps>>;
|
|
11
|
-
export declare const BANNER_VARIANTS: {
|
|
12
|
-
defaultLight: {
|
|
13
|
-
backgroundColor: string;
|
|
14
|
-
color: string;
|
|
15
|
-
};
|
|
16
|
-
defaultDark: {
|
|
17
|
-
backgroundColor: string;
|
|
18
|
-
color: string;
|
|
19
|
-
};
|
|
20
|
-
success: {
|
|
21
|
-
backgroundColor: string;
|
|
22
|
-
color: string;
|
|
23
|
-
};
|
|
24
|
-
error: {
|
|
25
|
-
backgroundColor: string;
|
|
26
|
-
color: string;
|
|
27
|
-
};
|
|
28
|
-
brand: {
|
|
29
|
-
backgroundColor: string;
|
|
30
|
-
color: string;
|
|
31
|
-
};
|
|
32
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./Banner";
|