@rolster/react-components 18.15.30 → 18.15.32

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
@@ -2067,15 +2067,15 @@ function useDatatable() {
2067
2067
 
2068
2068
  function useListController(props) {
2069
2069
  const { suggestions, formControl, value } = props;
2070
+ const listIsOpen = require$$0.useRef(false);
2070
2071
  const contentRef = require$$0.useRef(null);
2071
2072
  const listRef = require$$0.useRef(null);
2072
2073
  const inputRef = require$$0.useRef(null);
2073
- const listIsOpen = require$$0.useRef(false);
2074
2074
  const [state, setState] = require$$0.useState({
2075
2075
  focused: false,
2076
2076
  higher: false,
2077
2077
  value: '',
2078
- listIsVisible: false
2078
+ modalIsVisible: false
2079
2079
  });
2080
2080
  const collection = require$$0.useRef(new components.ListCollection([]));
2081
2081
  const position = require$$0.useRef(0);
@@ -2083,7 +2083,7 @@ function useListController(props) {
2083
2083
  require$$0.useEffect(() => {
2084
2084
  function onCloseSuggestions({ target }) {
2085
2085
  !contentRef?.current?.contains(target) &&
2086
- setState((state) => ({ ...state, listIsVisible: false }));
2086
+ setState((state) => ({ ...state, modalIsVisible: false }));
2087
2087
  }
2088
2088
  document.addEventListener('click', onCloseSuggestions);
2089
2089
  return () => {
@@ -2091,17 +2091,17 @@ function useListController(props) {
2091
2091
  };
2092
2092
  }, []);
2093
2093
  require$$0.useEffect(() => {
2094
- if (!listIsOpen.current && state.listIsVisible) {
2094
+ if (!listIsOpen.current && state.modalIsVisible) {
2095
2095
  listIsOpen.current = true;
2096
2096
  }
2097
- if (listIsOpen.current && !state.listIsVisible) {
2097
+ if (listIsOpen.current && !state.modalIsVisible) {
2098
2098
  formControl?.touch();
2099
2099
  }
2100
2100
  setState((state) => ({
2101
2101
  ...state,
2102
2102
  higher: components.locationListCanTop(contentRef.current, listRef.current)
2103
2103
  }));
2104
- }, [state.listIsVisible]);
2104
+ }, [state.modalIsVisible]);
2105
2105
  require$$0.useEffect(() => {
2106
2106
  collection.current = new components.ListCollection(suggestions);
2107
2107
  refresh(collection.current, formControl?.value);
@@ -2141,7 +2141,7 @@ function useListController(props) {
2141
2141
  formControl?.setValue(value);
2142
2142
  }
2143
2143
  function navigationInput(event) {
2144
- if (state.listIsVisible) {
2144
+ if (state.modalIsVisible) {
2145
2145
  const newPosition = components.navigationListFromInput({
2146
2146
  content: contentRef.current,
2147
2147
  event: event,
@@ -2175,8 +2175,8 @@ const DURATION_ANIMATION$1 = 240;
2175
2175
  const MAX_ELEMENTS = 6;
2176
2176
  function useFieldAutocomplete(props) {
2177
2177
  const controller = useListController(props);
2178
- const [pattern, setPattern] = require$$0.useState('');
2179
2178
  const [coincidences, setCoincidences] = require$$0.useState([]);
2179
+ const [pattern, setPattern] = require$$0.useState('');
2180
2180
  const currentStore = require$$0.useRef({
2181
2181
  coincidences: [],
2182
2182
  pattern: '',
@@ -2191,7 +2191,7 @@ function useFieldAutocomplete(props) {
2191
2191
  }, [pattern]);
2192
2192
  function onClickControl() {
2193
2193
  if (!disabled) {
2194
- controller.setState({ listIsVisible: true });
2194
+ controller.setState({ modalIsVisible: true });
2195
2195
  setTimeout(() => {
2196
2196
  controller.inputRef?.current?.focus();
2197
2197
  }, DURATION_ANIMATION$1);
@@ -2207,7 +2207,7 @@ function useFieldAutocomplete(props) {
2207
2207
  switch (event.code) {
2208
2208
  case 'Escape':
2209
2209
  case 'Tab':
2210
- controller.setState({ listIsVisible: false });
2210
+ controller.setState({ modalIsVisible: false });
2211
2211
  break;
2212
2212
  default:
2213
2213
  controller.navigationInput(event);
@@ -2215,12 +2215,12 @@ function useFieldAutocomplete(props) {
2215
2215
  }
2216
2216
  }
2217
2217
  function onClickAction() {
2218
- controller.setState({ listIsVisible: false, value: '' });
2218
+ controller.setState({ modalIsVisible: false, value: '' });
2219
2219
  controller.setFormValue(props.value);
2220
2220
  props.onValue && props.onValue(props.value);
2221
2221
  }
2222
2222
  function onClickBackdrop() {
2223
- controller.setState({ listIsVisible: false });
2223
+ controller.setState({ modalIsVisible: false });
2224
2224
  }
2225
2225
  function onClickElement(element) {
2226
2226
  return () => {
@@ -2236,11 +2236,11 @@ function useFieldAutocomplete(props) {
2236
2236
  }
2237
2237
  function onChange({ description, value }) {
2238
2238
  if (props.onSelect) {
2239
- controller.setState({ listIsVisible: false });
2239
+ controller.setState({ modalIsVisible: false });
2240
2240
  value && props.onSelect(value);
2241
2241
  }
2242
2242
  else {
2243
- controller.setState({ listIsVisible: false, value: description });
2243
+ controller.setState({ modalIsVisible: false, value: description });
2244
2244
  controller.setFormValue(value);
2245
2245
  }
2246
2246
  props.onValue && props.onValue(value);
@@ -2283,9 +2283,9 @@ function RlsFieldAutocompleteTemplate(props) {
2283
2283
  selected: !!controller.value
2284
2284
  }, 'rls-field-list rls-field-autocomplete');
2285
2285
  return (jsxRuntimeExports.jsxs("div", { ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { className: "rls-field-list__control", readOnly: true, disabled: disabled, placeholder: placeholder, value: controller.value, onClick: autocomplete.onClickControl }), !hiddenIcon && controller.value && (jsxRuntimeExports.jsx("button", { className: "rls-field-list__action", disabled: disabled, onClick: autocomplete.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: "trash-2" }) }))] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
2286
- visible: controller.listIsVisible,
2286
+ visible: controller.modalIsVisible,
2287
2287
  higher: controller.higher,
2288
- hide: !controller.listIsVisible
2288
+ hide: !controller.modalIsVisible
2289
2289
  }), children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: controller.listRef, className: "rls-field-list__ul", children: [jsxRuntimeExports.jsxs("div", { className: "rls-field-list__ul__search", children: [jsxRuntimeExports.jsx("input", { ref: controller.inputRef, className: "rls-field-list__ul__control", type: "text", placeholder: reactI18n('listInputPlaceholder'), value: autocomplete.pattern, onChange: ({ target: { value } }) => {
2290
2290
  autocomplete.setPattern(value);
2291
2291
  }, disabled: disabled || searching, onFocus: autocomplete.onFocusInput, onBlur: autocomplete.onBlurInput, onKeyDown: autocomplete.onKeydownInput }), onSearch && (jsxRuntimeExports.jsx("button", { disabled: disabled || searching, onClick: () => {
@@ -2493,17 +2493,17 @@ function useFieldSelect(props) {
2493
2493
  controller.setState({ focused: false });
2494
2494
  }
2495
2495
  function onClickInput() {
2496
- controller.setState({ listIsVisible: true });
2496
+ controller.setState({ modalIsVisible: true });
2497
2497
  }
2498
2498
  function onKeydownInput(event) {
2499
2499
  switch (event.code) {
2500
2500
  case 'Space':
2501
2501
  case 'Enter':
2502
- controller.setState({ listIsVisible: true });
2502
+ controller.setState({ modalIsVisible: true });
2503
2503
  break;
2504
2504
  case 'Escape':
2505
2505
  case 'Tab':
2506
- controller.setState({ listIsVisible: false });
2506
+ controller.setState({ modalIsVisible: false });
2507
2507
  break;
2508
2508
  default:
2509
2509
  controller.navigationInput(event);
@@ -2511,11 +2511,12 @@ function useFieldSelect(props) {
2511
2511
  }
2512
2512
  }
2513
2513
  function onClickAction() {
2514
- controller.setState({ listIsVisible: !controller.listIsVisible });
2515
- !controller.listIsVisible && controller.inputRef?.current?.focus();
2514
+ const modalIsVisible = !controller.modalIsVisible;
2515
+ controller.setState({ modalIsVisible });
2516
+ modalIsVisible && controller.inputRef?.current?.focus();
2516
2517
  }
2517
2518
  function onClickBackdrop() {
2518
- controller.setState({ listIsVisible: false });
2519
+ controller.setState({ modalIsVisible: false });
2519
2520
  }
2520
2521
  function onClickElement(element) {
2521
2522
  return () => {
@@ -2532,12 +2533,12 @@ function useFieldSelect(props) {
2532
2533
  function onChange({ description, value }) {
2533
2534
  controller.inputRef?.current?.focus();
2534
2535
  if (props.onSelect) {
2535
- controller.setState({ listIsVisible: false });
2536
+ controller.setState({ modalIsVisible: false });
2536
2537
  value && props.onSelect(value);
2537
2538
  }
2538
2539
  else {
2539
2540
  controller.setFormValue(value);
2540
- controller.setState({ listIsVisible: false, value: description });
2541
+ controller.setState({ modalIsVisible: false, value: description });
2541
2542
  }
2542
2543
  props.onValue && props.onValue(value);
2543
2544
  }
@@ -2565,11 +2566,11 @@ function RlsFieldSelectTemplate(props) {
2565
2566
  error: formControl?.wrong
2566
2567
  }, 'rls-field-list rls-field-select');
2567
2568
  return (jsxRuntimeExports.jsxs("div", { ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { ref: controller.inputRef, className: "rls-field-list__control", readOnly: true, disabled: disabled, placeholder: placeholder, value: controller.value, onFocus: select.onFocusInput, onBlur: select.onBlurInput, onClick: select.onClickInput, onKeyDown: select.onKeydownInput }), jsxRuntimeExports.jsx("button", { className: renderClassStatus('rls-field-list__action', {
2568
- visible: controller.listIsVisible
2569
+ visible: controller.modalIsVisible
2569
2570
  }), disabled: disabled, onClick: select.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: "arrow-ios-down" }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
2570
- visible: controller.listIsVisible,
2571
+ visible: controller.modalIsVisible,
2571
2572
  higher: controller.higher,
2572
- hide: !controller.listIsVisible
2573
+ hide: !controller.modalIsVisible
2573
2574
  }), children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: controller.listRef, className: "rls-field-list__ul", children: [suggestions.map((element, index) => (jsxRuntimeExports.jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: select.onClickElement(element), onKeyDown: select.onKeydownElement(element), children: render(element) }, index))), !suggestions.length && (jsxRuntimeExports.jsx("li", { className: "rls-field-list__empty", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-list__empty__description", children: [jsxRuntimeExports.jsx("label", { className: "rls-label-bold truncate", children: reactI18n('listEmptyTitle') }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: reactI18n('listEmptyDescription') })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: select.onClickBackdrop })] })] }));
2574
2575
  }
2575
2576
  function RlsFieldSelect(props) {