@rolster/react-components 18.15.11 → 18.15.13

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/cjs/index.js CHANGED
@@ -2075,7 +2075,6 @@ function useListControl({ suggestions, formControl }) {
2075
2075
  });
2076
2076
  const collection = require$$0.useRef(new components.ListCollection([]));
2077
2077
  const position = require$$0.useRef(0);
2078
- const changeInternal = require$$0.useRef(false);
2079
2078
  const protectedValue = require$$0.useRef();
2080
2079
  require$$0.useEffect(() => {
2081
2080
  function onCloseSuggestions({ target }) {
@@ -2088,35 +2087,29 @@ function useListControl({ suggestions, formControl }) {
2088
2087
  };
2089
2088
  }, []);
2090
2089
  require$$0.useEffect(() => {
2091
- formControl?.touch();
2090
+ state.visible && formControl?.touch();
2092
2091
  setState((state) => ({
2093
2092
  ...state,
2094
2093
  higher: components.locationListCanTop(contentRef.current, listRef.current)
2095
2094
  }));
2096
2095
  }, [state.visible]);
2097
- require$$0.useEffect(() => {
2098
- if (!changeInternal.current) {
2099
- changeInternal.current = false;
2100
- return;
2101
- }
2102
- refresh(collection.current, formControl?.value);
2103
- }, [formControl?.value]);
2104
2096
  require$$0.useEffect(() => {
2105
2097
  collection.current = new components.ListCollection(suggestions);
2106
2098
  refresh(collection.current, formControl?.value);
2107
- }, [suggestions]);
2099
+ }, [suggestions, formControl?.value]);
2108
2100
  function refresh(collection, state) {
2109
2101
  if (!state) {
2110
2102
  return refreshProtected(collection) ? undefined : setValue('');
2111
2103
  }
2112
2104
  const element = collection.find(state);
2113
2105
  if (element) {
2106
+ protectedValue.current = undefined;
2114
2107
  return setValue(element.description);
2115
2108
  }
2116
2109
  if (!refreshProtected(collection)) {
2117
2110
  protectedValue.current = state;
2118
2111
  setValue('');
2119
- setFormState(undefined);
2112
+ setFormValue(undefined);
2120
2113
  }
2121
2114
  }
2122
2115
  function refreshProtected(collection) {
@@ -2136,11 +2129,8 @@ function useListControl({ suggestions, formControl }) {
2136
2129
  function setValue(value) {
2137
2130
  setState((state) => ({ ...state, value }));
2138
2131
  }
2139
- function setFormState(value) {
2140
- if (formControl) {
2141
- changeInternal.current = true;
2142
- formControl.setValue(value);
2143
- }
2132
+ function setFormValue(value) {
2133
+ formControl?.setValue(value);
2144
2134
  }
2145
2135
  function setVisible(visible) {
2146
2136
  setState((state) => ({ ...state, visible }));
@@ -2152,7 +2142,7 @@ function useListControl({ suggestions, formControl }) {
2152
2142
  event: event,
2153
2143
  list: listRef.current
2154
2144
  });
2155
- position.current = newPosition || 0;
2145
+ position.current = newPosition ?? 0;
2156
2146
  }
2157
2147
  }
2158
2148
  function navigationElement(event) {
@@ -2172,7 +2162,7 @@ function useListControl({ suggestions, formControl }) {
2172
2162
  navigationElement,
2173
2163
  navigationInput,
2174
2164
  setFocused,
2175
- setFormState,
2165
+ setFormValue,
2176
2166
  setValue,
2177
2167
  setVisible
2178
2168
  };
@@ -2189,7 +2179,7 @@ function useFieldAutocomplete({ disabled, formControl, onSelect, onValue, sugges
2189
2179
  previous: null
2190
2180
  });
2191
2181
  const listControl = useListControl({ suggestions, formControl });
2192
- const { inputRef, navigationElement, navigationInput, setFocused, setFormState, setValue, setVisible } = listControl;
2182
+ const { inputRef, navigationElement, navigationInput, setFocused, setFormValue, setValue, setVisible } = listControl;
2193
2183
  require$$0.useEffect(() => {
2194
2184
  refreshCoincidences(pattern, true);
2195
2185
  }, [suggestions]);
@@ -2224,7 +2214,7 @@ function useFieldAutocomplete({ disabled, formControl, onSelect, onValue, sugges
2224
2214
  function onClickAction() {
2225
2215
  setVisible(false);
2226
2216
  setValue('');
2227
- setFormState(undefined);
2217
+ setFormValue(undefined);
2228
2218
  onValue && onValue(undefined);
2229
2219
  }
2230
2220
  function onClickBackdrop() {
@@ -2246,7 +2236,7 @@ function useFieldAutocomplete({ disabled, formControl, onSelect, onValue, sugges
2246
2236
  onSelect(value);
2247
2237
  }
2248
2238
  else {
2249
- setFormState(value);
2239
+ setFormValue(value);
2250
2240
  setValue(description);
2251
2241
  }
2252
2242
  onValue && onValue(value);
@@ -2493,7 +2483,7 @@ function RlsFieldDateRange({ children, date: datePicker, disabled, formControl,
2493
2483
 
2494
2484
  function useFieldSelect({ suggestions, formControl, onSelect, onValue }) {
2495
2485
  const listControl = useListControl({ suggestions, formControl });
2496
- const { inputRef, visible, navigationElement, navigationInput, setFocused, setFormState, setValue, setVisible } = listControl;
2486
+ const { inputRef, visible, navigationElement, navigationInput, setFocused, setFormValue, setValue, setVisible } = listControl;
2497
2487
  function onFocusInput() {
2498
2488
  setFocused(true);
2499
2489
  }
@@ -2542,7 +2532,7 @@ function useFieldSelect({ suggestions, formControl, onSelect, onValue }) {
2542
2532
  onSelect(value);
2543
2533
  }
2544
2534
  else {
2545
- setFormState(value);
2535
+ setFormValue(value);
2546
2536
  setValue(description);
2547
2537
  }
2548
2538
  onValue && onValue(value);