forstok-ui-lib 8.5.3 → 8.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forstok-ui-lib",
3
- "version": "8.5.3",
3
+ "version": "8.5.4",
4
4
  "description": "Forstok UI Components Library",
5
5
  "path": "dist",
6
6
  "main": "dist/index.js",
@@ -96,31 +96,39 @@ const SelectAsyncPaginateComponent = ({ loadOptions, ...props }: TSelect) => {
96
96
  actionMeta?: ActionMeta<TOption>,
97
97
  ) => {
98
98
  const newValue = value as OnChangeValue<TOption, false>;
99
- if (actionMeta?.action === "select-option") {
99
+
100
+ if (mode !== "multi-select" && actionMeta?.action === "select-option") {
100
101
  setInputValue("");
101
102
  }
103
+
102
104
  if (actionMeta) {
103
105
  const { action, option } = actionMeta;
106
+
104
107
  if (action === "select-option" && option?.value === "*") {
105
108
  const newValueSelect = valueSelect as OnChangeValue<TOption, true>;
109
+
106
110
  if (newValueSelect?.length) {
107
111
  let _newValue = loadedOptions
108
112
  ? [...newValueSelect, ...loadedOptions]
109
113
  : [...newValueSelect];
114
+
110
115
  _newValue = _newValue.filter(
111
116
  (_value, idx, self) =>
112
117
  idx === self.findIndex((t) => t.sku === _value.sku),
113
118
  );
119
+
114
120
  setValueSelect(_newValue);
115
121
  evChange && evChange(_newValue, actionMeta);
116
122
  } else if (loadedOptions) {
117
123
  setValueSelect(loadedOptions);
118
124
  evChange && evChange(loadedOptions, actionMeta);
119
125
  }
126
+
120
127
  selectRef.current?.blur();
121
128
  return false;
122
129
  }
123
130
  }
131
+
124
132
  setValueSelect(newValue);
125
133
  evChange && evChange(newValue, actionMeta);
126
134
  };
@@ -334,7 +342,20 @@ const SelectAsyncPaginateComponent = ({ loadOptions, ...props }: TSelect) => {
334
342
  if (action.action === "input-change") {
335
343
  setInputValue(value);
336
344
  setTime(new Date());
345
+ return value;
346
+ }
347
+
348
+ if (action.action === "set-value") {
349
+ setInputValue("");
350
+ return "";
337
351
  }
352
+
353
+ if (action.action === "menu-close") {
354
+ setInputValue("");
355
+ return "";
356
+ }
357
+
358
+ return value;
338
359
  },
339
360
  onMenuClose: () => {
340
361
  setInputValue("");