@orfium/ictinus 4.60.0 → 4.62.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.
@@ -3,7 +3,7 @@
3
3
  exports.__esModule = true;
4
4
  exports["default"] = void 0;
5
5
 
6
- var _lodash = require("lodash");
6
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
@@ -37,12 +37,12 @@ var _react2 = require("@emotion/react");
37
37
 
38
38
  var _excluded = ["handleSelectedOption", "defaultValue", "selectedOption", "multi", "options", "isAsync", "isLoading", "asyncSearch", "status", "minCharactersToSearch", "highlightSearch", "isSearchable", "isVirtualized", "styleType", "disabled", "locked", "dataTestId", "onClear", "onOptionDelete", "selectedOptions"];
39
39
 
40
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
41
-
42
40
  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); }
43
41
 
44
42
  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; }
45
43
 
44
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
45
+
46
46
  function _extends() { _extends = Object.assign || 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); }
47
47
 
48
48
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -114,6 +114,7 @@ var Select = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
114
114
  var _useMultiselectUtils = (0, _useMultiselectUtils2["default"])({
115
115
  selectedOptions: selectedOptions,
116
116
  options: options,
117
+ setOpen: setOpen,
117
118
  setSearchValue: setSearchValue,
118
119
  isSearchable: isSearchable,
119
120
  onClear: onClear,
@@ -121,11 +122,10 @@ var Select = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
121
122
  multi: multi
122
123
  }),
123
124
  multiSelectedOptions = _useMultiselectUtils.multiSelectedOptions,
124
- setMultiSelectedOpts = _useMultiselectUtils.setMultiSelectedOpts,
125
125
  availableMultiSelectOptions = _useMultiselectUtils.availableMultiSelectOptions,
126
- setAvailableMultiSelectOptions = _useMultiselectUtils.setAvailableMultiSelectOptions,
127
126
  handleOptionDelete = _useMultiselectUtils.handleOptionDelete,
128
- handleClearAllOptions = _useMultiselectUtils.handleClearAllOptions;
127
+ handleClearAllOptions = _useMultiselectUtils.handleClearAllOptions,
128
+ handleMultiSelectOptionClick = _useMultiselectUtils.handleMultiSelectOptionClick;
129
129
 
130
130
  (0, _react.useEffect)(function () {
131
131
  setInputValue(initialValue);
@@ -133,10 +133,7 @@ var Select = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
133
133
 
134
134
  var handleOptionClick = function handleOptionClick(option) {
135
135
  if (multi) {
136
- setMultiSelectedOpts([].concat(multiSelectedOptions, [option]));
137
- setAvailableMultiSelectOptions(availableMultiSelectOptions.filter(function (opt) {
138
- return opt.value !== option.value;
139
- }));
136
+ handleMultiSelectOptionClick(option);
140
137
  } else {
141
138
  setInputValue(option);
142
139
  setOpen(false);
@@ -158,7 +155,7 @@ var Select = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
158
155
  }
159
156
  };
160
157
 
161
- var debouncedOnChange = _react["default"].useCallback((0, _lodash.debounce)(function (term) {
158
+ var debouncedOnChange = _react["default"].useCallback((0, _debounce["default"])(function (term) {
162
159
  asyncSearch(term);
163
160
  }, 400), []);
164
161
 
@@ -307,7 +304,8 @@ var Select = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
307
304
  status: status,
308
305
  isLoading: isLoading,
309
306
  isVirtualized: isVirtualized,
310
- searchTerm: highlightSearch ? searchValue : undefined
307
+ searchTerm: highlightSearch ? searchValue : undefined,
308
+ hasSelectAllOption: multi
311
309
  }))));
312
310
  });
313
311
 
@@ -11,6 +11,7 @@ export declare type Props = {
11
11
  isLoading?: boolean;
12
12
  isVirtualized?: boolean;
13
13
  searchTerm?: string;
14
+ hasSelectAllOption?: boolean;
14
15
  };
15
16
  declare const SelectMenu: React.FC<Props>;
16
17
  export default SelectMenu;
@@ -11,6 +11,8 @@ var _List = _interopRequireDefault(require("../../../List"));
11
11
 
12
12
  var _utils = require("../../../List/utils");
13
13
 
14
+ var _constants = require("../../constants");
15
+
14
16
  var _react2 = require("@emotion/react");
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -20,16 +22,14 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
20
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; }
21
23
 
22
24
  var SelectMenu = function SelectMenu(props) {
23
- var _props$size = props.size,
24
- size = _props$size === void 0 ? 'sm' : _props$size,
25
- _props$status = props.status,
26
- status = _props$status === void 0 ? 'normal' : _props$status,
27
- filteredOptions = props.filteredOptions,
25
+ var filteredOptions = props.filteredOptions,
28
26
  handleOptionClick = props.handleOptionClick,
29
27
  selectedOption = props.selectedOption,
30
28
  isLoading = props.isLoading,
31
29
  isVirtualized = props.isVirtualized,
32
- searchTerm = props.searchTerm;
30
+ searchTerm = props.searchTerm,
31
+ _props$hasSelectAllOp = props.hasSelectAllOption,
32
+ hasSelectAllOption = _props$hasSelectAllOp === void 0 ? false : _props$hasSelectAllOp;
33
33
  var myRef = (0, _react.useRef)(null);
34
34
 
35
35
  var executeScroll = function executeScroll() {
@@ -53,7 +53,8 @@ var SelectMenu = function SelectMenu(props) {
53
53
  ref: myRef,
54
54
  handleOptionClick: handleOptionClick,
55
55
  searchTerm: searchTerm,
56
- selectedItem: selectedOption
56
+ selectedItem: selectedOption,
57
+ defaultOption: hasSelectAllOption ? _constants.SELECT_ALL_OPTION : undefined
57
58
  }) : (0, _react2.jsx)("div", {
58
59
  css: (0, _SelectMenu.optionStyle)({
59
60
  selected: false,
@@ -0,0 +1,4 @@
1
+ export declare const SELECT_ALL_OPTION: {
2
+ readonly value: "select_all";
3
+ readonly label: "Select All";
4
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.SELECT_ALL_OPTION = void 0;
5
+ var SELECT_ALL_OPTION = {
6
+ value: 'select_all',
7
+ label: 'Select All'
8
+ };
9
+ exports.SELECT_ALL_OPTION = SELECT_ALL_OPTION;
@@ -3,18 +3,18 @@ import { SelectOption } from '../Select';
3
3
  declare type Props = {
4
4
  selectedOptions: SelectOption[];
5
5
  options: SelectOption[];
6
+ setOpen: React.Dispatch<React.SetStateAction<boolean>>;
6
7
  setSearchValue: React.Dispatch<React.SetStateAction<string>>;
7
8
  isSearchable: boolean;
8
9
  onClear?: () => void;
9
10
  onOptionDelete?: (option: SelectOption) => void;
10
11
  multi?: boolean;
11
12
  };
12
- declare const useMultiselectUtils: ({ selectedOptions, options, setSearchValue, isSearchable, onClear, onOptionDelete, multi, }: Props) => {
13
+ declare const useMultiselectUtils: ({ selectedOptions, options, setOpen, setSearchValue, isSearchable, onClear, onOptionDelete, multi, }: Props) => {
13
14
  multiSelectedOptions: SelectOption[];
14
- setMultiSelectedOpts: React.Dispatch<React.SetStateAction<SelectOption[]>>;
15
15
  availableMultiSelectOptions: SelectOption[];
16
- setAvailableMultiSelectOptions: React.Dispatch<React.SetStateAction<SelectOption[]>>;
17
16
  handleOptionDelete: (option?: SelectOption | undefined) => void;
18
17
  handleClearAllOptions: () => void;
18
+ handleMultiSelectOptionClick: (option: SelectOption) => void;
19
19
  };
20
20
  export default useMultiselectUtils;
@@ -3,15 +3,22 @@
3
3
  exports.__esModule = true;
4
4
  exports["default"] = void 0;
5
5
 
6
+ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
7
+
6
8
  var _react = _interopRequireWildcard(require("react"));
7
9
 
10
+ var _constants = require("../constants");
11
+
8
12
  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); }
9
13
 
10
14
  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; }
11
15
 
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
12
18
  var useMultiselectUtils = function useMultiselectUtils(_ref) {
13
19
  var selectedOptions = _ref.selectedOptions,
14
20
  options = _ref.options,
21
+ setOpen = _ref.setOpen,
15
22
  setSearchValue = _ref.setSearchValue,
16
23
  isSearchable = _ref.isSearchable,
17
24
  onClear = _ref.onClear,
@@ -81,13 +88,33 @@ var useMultiselectUtils = function useMultiselectUtils(_ref) {
81
88
  }
82
89
  };
83
90
 
91
+ var handleMultiSelectOptionClick = function handleMultiSelectOptionClick(option) {
92
+ /** The user clicks the Select All option */
93
+ if ((0, _isEqual["default"])(option, _constants.SELECT_ALL_OPTION)) {
94
+ var _availableMultiSelect = availableMultiSelectOptions.reduce(function (result, element) {
95
+ result[element.isDisabled ? 0 : 1].push(element);
96
+ return result;
97
+ }, [[], []]),
98
+ remaining = _availableMultiSelect[0],
99
+ selected = _availableMultiSelect[1];
100
+
101
+ setMultiSelectedOpts([].concat(multiSelectedOptions, selected));
102
+ setAvailableMultiSelectOptions(remaining);
103
+ setOpen(false);
104
+ } else {
105
+ setMultiSelectedOpts([].concat(multiSelectedOptions, [option]));
106
+ setAvailableMultiSelectOptions(availableMultiSelectOptions.filter(function (opt) {
107
+ return opt.value !== option.value;
108
+ }));
109
+ }
110
+ };
111
+
84
112
  return {
85
113
  multiSelectedOptions: multiSelectedOptions,
86
- setMultiSelectedOpts: setMultiSelectedOpts,
87
114
  availableMultiSelectOptions: availableMultiSelectOptions,
88
- setAvailableMultiSelectOptions: setAvailableMultiSelectOptions,
89
115
  handleOptionDelete: handleOptionDelete,
90
- handleClearAllOptions: handleClearAllOptions
116
+ handleClearAllOptions: handleClearAllOptions,
117
+ handleMultiSelectOptionClick: handleMultiSelectOptionClick
91
118
  };
92
119
  };
93
120
 
@@ -0,0 +1 @@
1
+ export { default as useSearchQueryParams } from './useSearchQueryParams';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.useSearchQueryParams = void 0;
5
+
6
+ var _useSearchQueryParams = _interopRequireDefault(require("./useSearchQueryParams"));
7
+
8
+ exports.useSearchQueryParams = _useSearchQueryParams["default"];
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -0,0 +1,2 @@
1
+ declare const useSearchQueryParams: () => Record<string, string>;
2
+ export default useSearchQueryParams;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports["default"] = void 0;
5
+
6
+ var _react = require("react");
7
+
8
+ var _reactRouterDom = require("react-router-dom");
9
+
10
+ var useSearchQueryParams = function useSearchQueryParams() {
11
+ var _useLocation = (0, _reactRouterDom.useLocation)(),
12
+ search = _useLocation.search;
13
+
14
+ var urlSearchParams = (0, _react.useMemo)(function () {
15
+ return new URLSearchParams(search);
16
+ }, [search]);
17
+ var result = {};
18
+ urlSearchParams.forEach(function (value, key) {
19
+ result[key] = value;
20
+ });
21
+ return result;
22
+ };
23
+
24
+ var _default = useSearchQueryParams;
25
+ exports["default"] = _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orfium/ictinus",
3
- "version": "4.60.0",
3
+ "version": "4.62.0",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "license": "MIT",