@rolster/react-components 18.21.44 → 18.21.46

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.
Files changed (32) hide show
  1. package/dist/cjs/assets/{index-CEj_H1DS.css → index-CaA_sxmM.css} +5 -0
  2. package/dist/cjs/index.js +78 -71
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/es/assets/{index-CEj_H1DS.css → index-CaA_sxmM.css} +5 -0
  5. package/dist/es/index.js +78 -71
  6. package/dist/es/index.js.map +1 -1
  7. package/dist/esm/components/atoms/Amount/Amount.css +3 -0
  8. package/dist/esm/components/atoms/Amount/Amount.css.map +1 -1
  9. package/dist/esm/components/atoms/TabularText/TabularText.css +2 -0
  10. package/dist/esm/components/atoms/TabularText/TabularText.css.map +1 -1
  11. package/dist/esm/components/molecules/PickerDay/PickerDay.js +13 -13
  12. package/dist/esm/components/molecules/PickerDay/PickerDay.js.map +1 -1
  13. package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js +12 -12
  14. package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js.map +1 -1
  15. package/dist/esm/components/molecules/PickerMonth/PickerMonth.js +10 -10
  16. package/dist/esm/components/molecules/PickerMonth/PickerMonth.js.map +1 -1
  17. package/dist/esm/components/molecules/PickerYear/PickerYear.js +11 -11
  18. package/dist/esm/components/molecules/PickerYear/PickerYear.js.map +1 -1
  19. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +1 -1
  20. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js +5 -2
  21. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js.map +1 -1
  22. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +3 -3
  23. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
  24. package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js +7 -3
  25. package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js.map +1 -1
  26. package/dist/esm/components/organisms/PickerDate/PickerDate.js +1 -1
  27. package/dist/esm/components/organisms/PickerDate/PickerDate.js.map +1 -1
  28. package/dist/esm/controllers/ListController.d.ts +3 -3
  29. package/dist/esm/controllers/ListController.js +16 -16
  30. package/dist/esm/controllers/ListController.js.map +1 -1
  31. package/dist/esm/definitions.d.ts +3 -3
  32. package/package.json +2 -2
@@ -3,6 +3,7 @@
3
3
  --rlc-tabular-text-font-size,
4
4
  var(--rls-body-font-size)
5
5
  );
6
+ --pvt-char-font-weight: var(--rlc-tabular-text-font-weight, inherit);
6
7
  --pvt-char-height: var(--pvt-char-font-size);
7
8
  --pvt-char-width: var(--rlc-tabular-text-char-width, 5.5rem);
8
9
  --pvt-pointer-width: var(--rlc-tabular-text-pointer-width, 2rem);
@@ -11,6 +12,7 @@
11
12
  height: var(--pvt-char-height);
12
13
  line-height: var(--pvt-char-height);
13
14
  font-size: var(--pvt-char-font-size);
15
+ font-weight: var(--pvt-char-font-weight);
14
16
  justify-content: var(--rlc-tabular-text-align, flex-start);
15
17
  }
16
18
  .rls-tabular-text__char {
@@ -26,14 +28,17 @@
26
28
 
27
29
  .rls-amount {
28
30
  --pvt-font-size: var(--rlc-amount-font-size, inherit);
31
+ --pvt-font-weight: var(--rlc-amount-font-weight, inherit);
29
32
  --pvt-decimal-width: var(--rlc-amount-decimal-width, 0.5);
30
33
  --pvt-decimal-size: var(--rlc-amount-decimal-size, 0.6);
31
34
  --rlc-tabular-text-font-size: var(--pvt-font-size);
35
+ --rlc-tabular-text-font-weight: var(--pvt-font-weight);
32
36
  display: flex;
33
37
  width: var(--rlc-amount-width, auto);
34
38
  justify-content: var(--rlc-amount-text-align, flex-start);
35
39
  column-gap: var(--rls-sizing-x2);
36
40
  font-size: var(--pvt-font-size);
41
+ font-weight: var(--pvt-font-weight);
37
42
  }
38
43
  .rls-amount[rls-theme] {
39
44
  color: var(--rls-theme-color-500);
package/dist/cjs/index.js CHANGED
@@ -1968,7 +1968,10 @@ function RlsPagination({ suggestions, count, filter, onPagination }) {
1968
1968
  }) }), jsxRuntimeExports.jsx("div", { className: "rls-pagination__description", children: template?.description }), jsxRuntimeExports.jsxs("div", { className: "rls-pagination__actions", children: [jsxRuntimeExports.jsx("button", { className: "rls-pagination__action", onClick: goNextPagination, disabled: template?.lastPage, children: jsxRuntimeExports.jsx(RlsIcon, { value: "arrow-ios-right" }) }), jsxRuntimeExports.jsx("button", { className: "rls-pagination__action", onClick: goLastPagination, disabled: template?.lastPage, children: jsxRuntimeExports.jsx(RlsIcon, { value: "arrowhead-right" }) })] })] }));
1969
1969
  }
1970
1970
 
1971
- function RlsPickerDayItem({ day, onSelect, disabled }) {
1971
+ function RlsPickerDayHeaders() {
1972
+ return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
1973
+ }
1974
+ function RlsPickerDayElement({ day, onSelect, disabled }) {
1972
1975
  const className = require$$0.useMemo(() => {
1973
1976
  return renderClassStatus('rls-picker-day__element', {
1974
1977
  disabled: day.disabled || disabled,
@@ -1990,23 +1993,27 @@ function RlsPickerDayItem({ day, onSelect, disabled }) {
1990
1993
  }, [day.value, day.disabled, disabled, onSelect]);
1991
1994
  return (jsxRuntimeExports.jsx("div", { className: className, onClick: onClick, children: jsxRuntimeExports.jsx("span", { className: "rls-picker-day__element__span", children: day.value || '??' }) }));
1992
1995
  }
1993
- function RlsPickerDayHeaders() {
1994
- return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
1995
- }
1996
1996
  function RlsPickerDay({ date: _date, disabled, formControl, maxDate, month, minDate, onValue, rlsTheme, year }) {
1997
1997
  const date = require$$0.useMemo(() => _date ?? new Date(), [_date]);
1998
1998
  const [weeks, setWeeks] = require$$0.useState([]);
1999
1999
  const [value, setValue] = require$$0.useState(formControl?.value || date.getDate());
2000
2000
  const [headers, setHeaders] = require$$0.useState(jsxRuntimeExports.jsx(RlsPickerDayHeaders, {}));
2001
2001
  const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
2002
+ const setDayValue = require$$0.useCallback((value) => {
2003
+ formControl ? formControl.setValue(value) : setValue(value);
2004
+ }, [formControl]);
2005
+ const onSelect = require$$0.useCallback((value) => {
2006
+ setDayValue(value);
2007
+ onValue && onValue(value);
2008
+ }, [setDayValue, onValue]);
2002
2009
  require$$0.useEffect(() => {
2003
2010
  return i18n.i18nSubscribe(() => {
2004
2011
  setHeaders(jsxRuntimeExports.jsx(RlsPickerDayHeaders, {}));
2005
2012
  });
2006
2013
  }, []);
2007
2014
  require$$0.useEffect(() => {
2008
- setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayItem, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
2009
- }, [weeks]);
2015
+ setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayElement, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
2016
+ }, [weeks, onSelect, disabled]);
2010
2017
  require$$0.useEffect(() => {
2011
2018
  const options = createPickerOptions();
2012
2019
  const day = components.verifyDayPicker(options);
@@ -2028,13 +2035,6 @@ function RlsPickerDay({ date: _date, disabled, formControl, maxDate, month, minD
2028
2035
  maxDate
2029
2036
  };
2030
2037
  }, [date, formControl?.value, value, month, year, minDate, maxDate]);
2031
- const setDayValue = require$$0.useCallback((value) => {
2032
- formControl ? formControl.setValue(value) : setValue(value);
2033
- }, [formControl]);
2034
- const onSelect = require$$0.useCallback((value) => {
2035
- setDayValue(value);
2036
- onValue && onValue(value);
2037
- }, [setDayValue, onValue]);
2038
2038
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-day", "rls-theme": rlsTheme, children: [headers, component] }));
2039
2039
  }
2040
2040
 
@@ -2042,7 +2042,7 @@ const formatRange = '{dd}/{mx}/{aa}';
2042
2042
  function RlsPickerDayRangeHeaders() {
2043
2043
  return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
2044
2044
  }
2045
- function RlsPickerDayRangeItem({ day, onSelect, disabled }) {
2045
+ function RlsPickerDayRangeElement({ day, onSelect, disabled }) {
2046
2046
  const className = require$$0.useMemo(() => {
2047
2047
  return renderClassStatus('rls-picker-day-range__element', {
2048
2048
  disabled: day.disabled || disabled,
@@ -2069,14 +2069,23 @@ function RlsPickerDayRange({ date: _date, disabled, formControl, maxDate, minDat
2069
2069
  const [range, setRange] = require$$0.useState(_range);
2070
2070
  const [headers, setHeaders] = require$$0.useState(jsxRuntimeExports.jsx(RlsPickerDayRangeHeaders, {}));
2071
2071
  const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
2072
+ const onSelect = require$$0.useCallback((value) => {
2073
+ const _date = dates.assignDayInDate(date, value);
2074
+ const range = dates.dateIsBefore(_date, sourceDate.current)
2075
+ ? new dates.DateRange(sourceDate.current, _date)
2076
+ : new dates.DateRange(_date, sourceDate.current);
2077
+ sourceDate.current = _date;
2078
+ setRange(range);
2079
+ formControl?.setValue(range);
2080
+ }, [date, sourceDate.current, formControl]);
2072
2081
  require$$0.useEffect(() => {
2073
2082
  return i18n.i18nSubscribe(() => {
2074
2083
  setHeaders(jsxRuntimeExports.jsx(RlsPickerDayRangeHeaders, {}));
2075
2084
  });
2076
2085
  }, []);
2077
2086
  require$$0.useEffect(() => {
2078
- setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayRangeItem, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
2079
- }, [weeks]);
2087
+ setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayRangeElement, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
2088
+ }, [weeks, onSelect, disabled]);
2080
2089
  require$$0.useEffect(() => {
2081
2090
  setWeeks(components.createDayRangePicker({
2082
2091
  date,
@@ -2089,19 +2098,10 @@ function RlsPickerDayRange({ date: _date, disabled, formControl, maxDate, minDat
2089
2098
  const title = require$$0.useMemo(() => {
2090
2099
  return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__title", children: dates.dateFormatTemplate(sourceDate.current, formatRange) }));
2091
2100
  }, [sourceDate.current]);
2092
- const onSelect = require$$0.useCallback((value) => {
2093
- const _date = dates.assignDayInDate(date, value);
2094
- const range = dates.dateIsBefore(_date, sourceDate.current)
2095
- ? new dates.DateRange(sourceDate.current, _date)
2096
- : new dates.DateRange(_date, sourceDate.current);
2097
- sourceDate.current = _date;
2098
- setRange(range);
2099
- formControl?.setValue(range);
2100
- }, [date, sourceDate.current, formControl]);
2101
2101
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-day-range", "rls-theme": rlsTheme, children: [title, headers, component] }));
2102
2102
  }
2103
2103
 
2104
- function RlsPickerMonthItem({ month, onSelect, disabled }) {
2104
+ function RlsPickerMonthElement({ month, onSelect, disabled }) {
2105
2105
  const [label, setLabel] = require$$0.useState(dates.MONTH_NAMES(month.value));
2106
2106
  require$$0.useEffect(() => {
2107
2107
  return i18n.i18nSubscribe(() => {
@@ -2128,9 +2128,16 @@ function RlsPickerMonth({ date: _date, disabled, formControl, maxDate, minDate,
2128
2128
  const [months, setMonths] = require$$0.useState([]);
2129
2129
  const [value, setValue] = require$$0.useState(formControl?.value ?? date.getMonth());
2130
2130
  const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
2131
+ const setMonthValue = require$$0.useCallback((value) => {
2132
+ formControl ? formControl.setValue(value) : setValue(value);
2133
+ }, [formControl]);
2134
+ const onSelect = require$$0.useCallback((value) => {
2135
+ setMonthValue(value);
2136
+ onValue && onValue(value);
2137
+ }, [setMonthValue, onValue]);
2131
2138
  require$$0.useEffect(() => {
2132
- setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: months.map((month, index) => (jsxRuntimeExports.jsx(RlsPickerMonthItem, { month: month, onSelect: onSelect, disabled: disabled }, index))) }));
2133
- }, [months]);
2139
+ setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: months.map((month, index) => (jsxRuntimeExports.jsx(RlsPickerMonthElement, { month: month, onSelect: onSelect, disabled: disabled }, index))) }));
2140
+ }, [months, onSelect, disabled]);
2134
2141
  require$$0.useEffect(() => {
2135
2142
  const options = {
2136
2143
  date,
@@ -2156,13 +2163,6 @@ function RlsPickerMonth({ date: _date, disabled, formControl, maxDate, minDate,
2156
2163
  ? formControl?.setValue(month)
2157
2164
  : setValue(formControl?.value ?? date.getMonth());
2158
2165
  }, [formControl?.value]);
2159
- const setMonthValue = require$$0.useCallback((value) => {
2160
- formControl ? formControl.setValue(value) : setValue(value);
2161
- }, [formControl]);
2162
- const onSelect = require$$0.useCallback((value) => {
2163
- setMonthValue(value);
2164
- onValue && onValue(value);
2165
- }, [setMonthValue, onValue]);
2166
2166
  return (jsxRuntimeExports.jsx("div", { className: "rls-picker-month", "rls-theme": rlsTheme, children: component }));
2167
2167
  }
2168
2168
 
@@ -2223,7 +2223,7 @@ function RlsPickerSelectorTitle({ monthControl, type, yearControl, date, disable
2223
2223
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-selector-title", children: [jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-left", onClick: onPrevious, disabled: limitPrevious || disabled }), jsxRuntimeExports.jsx("span", { onClick: onClick, children: label }), jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-right", onClick: onNext, disabled: limitNext || disabled })] }));
2224
2224
  }
2225
2225
 
2226
- function RlsPickerYearItem({ onSelect, year, disabled }) {
2226
+ function RlsPickerYearElement({ onSelect, year, disabled }) {
2227
2227
  const className = require$$0.useMemo(() => {
2228
2228
  return renderClassStatus('rls-picker-year__element', {
2229
2229
  disabled: year.disabled || disabled,
@@ -2250,34 +2250,34 @@ function RlsPickerYear({ date: _date, disabled, formControl, maxDate, minDate, o
2250
2250
  };
2251
2251
  }, [date, year, minDate, maxDate]);
2252
2252
  const [template, setTemplate] = require$$0.useState(components.createYearPicker(createPickerOptions()));
2253
+ const setYearValue = require$$0.useCallback((value) => {
2254
+ formControl ? formControl.setValue(value) : setValue(value);
2255
+ setYear(value);
2256
+ }, [formControl]);
2257
+ const onSelect = require$$0.useCallback((value) => {
2258
+ setYearValue(value);
2259
+ onValue && onValue(value);
2260
+ }, [setYearValue, onValue]);
2253
2261
  require$$0.useEffect(() => {
2254
2262
  const options = createPickerOptions(); // YearPickerProps
2255
2263
  const year = components.verifyYearPicker(options);
2256
2264
  year ? setYearValue(year) : setTemplate(components.createYearPicker(options));
2257
2265
  }, [date, year, value, minDate, maxDate]);
2258
2266
  require$$0.useEffect(() => {
2259
- setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: template.years.map((year, index) => (jsxRuntimeExports.jsx(RlsPickerYearItem, { year: year, onSelect: onSelect, disabled: disabled }, index))) }));
2260
- }, [template.years]);
2267
+ setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: template.years.map((year, index) => (jsxRuntimeExports.jsx(RlsPickerYearElement, { year: year, onSelect: onSelect, disabled: disabled }, index))) }));
2268
+ }, [template.years, onSelect, disabled]);
2261
2269
  require$$0.useEffect(() => {
2262
2270
  const year = components.verifyYearPicker(createPickerOptions());
2263
2271
  commons.itIsDefined(year)
2264
2272
  ? formControl?.setValue(year)
2265
2273
  : setValue(formControl?.value ?? date.getFullYear());
2266
2274
  }, [formControl?.value]);
2267
- const setYearValue = require$$0.useCallback((value) => {
2268
- formControl ? formControl.setValue(value) : setValue(value);
2269
- setYear(value);
2270
- }, [formControl]);
2271
2275
  const onClickPrev = require$$0.useCallback(() => {
2272
2276
  setYear((year) => year - 8);
2273
2277
  }, []);
2274
2278
  const onClickNext = require$$0.useCallback(() => {
2275
2279
  setYear((year) => year + 8);
2276
2280
  }, []);
2277
- const onSelect = require$$0.useCallback((value) => {
2278
- setYearValue(value);
2279
- onValue && onValue(value);
2280
- }, [setYearValue, onValue]);
2281
2281
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-year", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: "rls-picker-year__header", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-year__action rls-picker-year__action--prev", children: jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-left", onClick: onClickPrev, disabled: !template.canPrevious || disabled }) }), jsxRuntimeExports.jsxs("label", { className: "rls-title-bold", children: [template.minRange, " - ", template.maxRange] }), jsxRuntimeExports.jsx("div", { className: "rls-picker-year__action rls-picker-year__action--next", children: jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-right", onClick: onClickNext, disabled: !template.canNext || disabled }) })] }), jsxRuntimeExports.jsx("div", { className: "rls-picker-year__component", children: component })] }));
2282
2282
  }
2283
2283
 
@@ -2450,23 +2450,23 @@ function calculateMinHeightList(count, height) {
2450
2450
  }
2451
2451
  function useListController(props) {
2452
2452
  const { count, suggestions, automatic, formControl, lineHeight, reference } = props;
2453
+ const refContent = require$$0.useRef(null);
2454
+ const refList = require$$0.useRef(null);
2455
+ const refInput = require$$0.useRef(null);
2453
2456
  const listIsOpen = require$$0.useRef(false);
2454
- const contentRef = require$$0.useRef(null);
2455
- const listRef = require$$0.useRef(null);
2456
- const inputRef = require$$0.useRef(null);
2457
2457
  const [collection, setCollection] = require$$0.useState(new components.ListCollection(suggestions));
2458
2458
  const [state, refreshState] = require$$0.useState({
2459
2459
  focused: false,
2460
2460
  higher: false,
2461
- value: '',
2462
- modalIsVisible: false
2461
+ modalIsVisible: false,
2462
+ value: ''
2463
2463
  });
2464
+ const changeValueInternal = require$$0.useRef(false);
2464
2465
  const position = require$$0.useRef(0);
2465
2466
  const valueProtected = require$$0.useRef();
2466
- const changeValueInternal = require$$0.useRef(false);
2467
2467
  require$$0.useEffect(() => {
2468
2468
  function onCloseSuggestions({ target }) {
2469
- !contentRef?.current?.contains(target) &&
2469
+ !refContent?.current?.contains(target) &&
2470
2470
  refreshState((state) => ({ ...state, modalIsVisible: false }));
2471
2471
  }
2472
2472
  document.addEventListener('click', onCloseSuggestions);
@@ -2516,7 +2516,7 @@ function useListController(props) {
2516
2516
  const _state = state.modalIsVisible
2517
2517
  ? {
2518
2518
  ...state,
2519
- higher: components.locationListCanTop(contentRef.current, listRef.current, minHeightList)
2519
+ higher: components.locationListCanTop(refContent.current, refList.current, minHeightList)
2520
2520
  }
2521
2521
  : state;
2522
2522
  refreshState((state) => ({ ...state, ..._state }));
@@ -2534,29 +2534,29 @@ function useListController(props) {
2534
2534
  const navigationInput = require$$0.useCallback((event) => {
2535
2535
  if (state.modalIsVisible) {
2536
2536
  const _position = components.navigationListFromInput({
2537
- content: contentRef.current,
2537
+ content: refContent.current,
2538
2538
  event: event,
2539
- list: listRef.current
2539
+ list: refList.current
2540
2540
  });
2541
2541
  position.current = _position ?? 0;
2542
2542
  }
2543
2543
  }, [state.modalIsVisible]);
2544
2544
  const navigationElement = require$$0.useCallback((event) => {
2545
2545
  position.current = components.navigationListFromElement({
2546
- content: contentRef.current,
2546
+ content: refContent.current,
2547
2547
  event: event,
2548
- input: inputRef.current,
2549
- list: listRef.current,
2548
+ input: refInput.current,
2549
+ list: refList.current,
2550
2550
  position: position.current
2551
2551
  });
2552
2552
  }, [state.modalIsVisible]);
2553
2553
  return {
2554
2554
  ...state,
2555
- contentRef,
2556
- inputRef,
2557
- listRef,
2558
2555
  navigationElement,
2559
2556
  navigationInput,
2557
+ refContent,
2558
+ refInput,
2559
+ refList,
2560
2560
  setFormValue,
2561
2561
  setState
2562
2562
  };
@@ -2595,6 +2595,9 @@ function useFieldAutocomplete(props) {
2595
2595
  require$$0.useEffect(() => {
2596
2596
  refreshCoincidences(props.suggestions, pattern);
2597
2597
  }, [pattern]);
2598
+ require$$0.useEffect(() => {
2599
+ props.disabled && controller.setState({ focused: false });
2600
+ }, [props.disabled]);
2598
2601
  const onFocusInput = require$$0.useCallback(() => {
2599
2602
  controller.setState({ focused: true });
2600
2603
  }, [controller.setState]);
@@ -2615,7 +2618,7 @@ function useFieldAutocomplete(props) {
2615
2618
  const onClickControl = require$$0.useCallback(() => {
2616
2619
  controller.setState({ modalIsVisible: true });
2617
2620
  setTimeout(() => {
2618
- controller.inputRef?.current?.focus();
2621
+ controller.refInput?.current?.focus();
2619
2622
  }, DURATION_ANIMATION$1);
2620
2623
  }, [controller.setState]);
2621
2624
  const onClickAction = require$$0.useCallback(() => {
@@ -2645,7 +2648,7 @@ function useFieldAutocomplete(props) {
2645
2648
  }
2646
2649
  if (props.selectionContinuos) {
2647
2650
  setPattern('');
2648
- controller.inputRef?.current?.focus();
2651
+ controller.refInput?.current?.focus();
2649
2652
  }
2650
2653
  else {
2651
2654
  controller.setState({ modalIsVisible: false });
@@ -2731,7 +2734,7 @@ function RlsFieldAutocompleteTemplate(props) {
2731
2734
  event.key === 'Enter' && onSearch && onSearch(autocomplete.pattern);
2732
2735
  autocomplete.onKeydownInput(event);
2733
2736
  }, [autocomplete.onKeydownInput, onSearch, autocomplete.pattern]);
2734
- return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: autocomplete.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: autocomplete.value, onClick: autocomplete.onClickControl }), jsxRuntimeExports.jsx("button", { className: "rls-field-list__action", disabled: disabled, onClick: autocomplete.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: autocomplete.value ? 'trash-2' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: autocomplete.listRef, className: "rls-field-list__ul", children: [jsxRuntimeExports.jsxs("div", { className: "rls-field-list__ul__search", children: [jsxRuntimeExports.jsx("input", { ref: autocomplete.inputRef, className: "rls-field-list__ul__control", type: "text", placeholder: labels.listInputPlaceholder, value: autocomplete.pattern, onChange: onChangePattern, onFocus: autocomplete.onFocusInput, onBlur: autocomplete.onBlurInput, onKeyDown: onKeyDownPattern, disabled: disabled || searching }), onSearch && (jsxRuntimeExports.jsx("button", { disabled: disabled || searching, onClick: onClickPattern, children: jsxRuntimeExports.jsx(RlsIcon, { value: "search" }) }))] }), searching && jsxRuntimeExports.jsx(RlsProgressBar, { indeterminate: true }), autocomplete.coincidences.map((element, index) => (jsxRuntimeExports.jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: autocomplete.onClickElement(element), onKeyDown: autocomplete.onKeydownElement(element), children: render(element) }, index))), !autocomplete.coincidences.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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: autocomplete.onClickBackdrop })] })] }));
2737
+ return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: autocomplete.refContent, 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: autocomplete.value, onClick: autocomplete.onClickControl }), jsxRuntimeExports.jsx("button", { className: "rls-field-list__action", disabled: disabled, onClick: autocomplete.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: autocomplete.value ? 'trash-2' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: autocomplete.refList, className: "rls-field-list__ul", children: [jsxRuntimeExports.jsxs("div", { className: "rls-field-list__ul__search", children: [jsxRuntimeExports.jsx("input", { ref: autocomplete.refInput, className: "rls-field-list__ul__control", type: "text", placeholder: labels.listInputPlaceholder, value: autocomplete.pattern, onChange: onChangePattern, onFocus: autocomplete.onFocusInput, onBlur: autocomplete.onBlurInput, onKeyDown: onKeyDownPattern, disabled: disabled || searching }), onSearch && (jsxRuntimeExports.jsx("button", { disabled: disabled || searching, onClick: onClickPattern, children: jsxRuntimeExports.jsx(RlsIcon, { value: "search" }) }))] }), searching && jsxRuntimeExports.jsx(RlsProgressBar, { indeterminate: true }), autocomplete.coincidences.map((element, index) => (jsxRuntimeExports.jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: autocomplete.onClickElement(element), onKeyDown: autocomplete.onKeydownElement(element), children: render(element) }, index))), !autocomplete.coincidences.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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: autocomplete.onClickBackdrop })] })] }));
2735
2738
  }
2736
2739
  function RlsFieldAutocomplete(props) {
2737
2740
  const render = require$$0.useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);
@@ -2995,6 +2998,9 @@ function useFieldSelect(props) {
2995
2998
  require$$0.useEffect(() => {
2996
2999
  count.current = props.suggestions.length;
2997
3000
  }, [props.suggestions]);
3001
+ require$$0.useEffect(() => {
3002
+ props.disabled && controller.setState({ focused: false });
3003
+ }, [props.disabled]);
2998
3004
  const onFocusInput = require$$0.useCallback(() => {
2999
3005
  controller.setState({ focused: true });
3000
3006
  }, [controller.setState]);
@@ -3029,7 +3035,7 @@ function useFieldSelect(props) {
3029
3035
  else {
3030
3036
  const modalIsVisible = !controller.modalIsVisible;
3031
3037
  controller.setState({ modalIsVisible });
3032
- modalIsVisible && controller.inputRef?.current?.focus();
3038
+ modalIsVisible && controller.refInput?.current?.focus();
3033
3039
  }
3034
3040
  }, [
3035
3041
  controller.modalIsVisible,
@@ -3043,7 +3049,7 @@ function useFieldSelect(props) {
3043
3049
  controller.setState({ modalIsVisible: false });
3044
3050
  }, [controller.setState]);
3045
3051
  const onChange = require$$0.useCallback((element) => {
3046
- controller.inputRef?.current?.focus();
3052
+ !props.disabled && controller.refInput?.current?.focus();
3047
3053
  if (props.onSelect) {
3048
3054
  controller.setState({ modalIsVisible: false });
3049
3055
  element.value && props.onSelect(element.value);
@@ -3057,7 +3063,8 @@ function useFieldSelect(props) {
3057
3063
  controller.setState,
3058
3064
  controller.setFormValue,
3059
3065
  props.onSelect,
3060
- props.onValue
3066
+ props.onValue,
3067
+ props.disabled
3061
3068
  ]);
3062
3069
  const onClickElement = require$$0.useCallback((element) => {
3063
3070
  return () => {
@@ -3104,9 +3111,9 @@ function RlsFieldSelectTemplate(props) {
3104
3111
  }, [formControl?.disabled, props.disabled]);
3105
3112
  const className = require$$0.useMemo(() => {
3106
3113
  return renderClassStatus('rls-field-box', {
3107
- disabled: disabled,
3114
+ focused: select.focused && !disabled,
3108
3115
  error: formControl?.wrong,
3109
- focused: select.focused && !disabled
3116
+ disabled: disabled
3110
3117
  }, 'rls-field-list rls-field-select');
3111
3118
  }, [formControl?.wrong, select.focused, disabled]);
3112
3119
  const classNameList = require$$0.useMemo(() => {
@@ -3115,7 +3122,7 @@ function RlsFieldSelectTemplate(props) {
3115
3122
  visible: select.modalIsVisible
3116
3123
  });
3117
3124
  }, [select.modalIsVisible, select.higher]);
3118
- return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: select.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: select.inputRef, className: "rls-field-list__control", readOnly: true, placeholder: placeholder, value: select.value, onFocus: select.onFocusInput, onBlur: select.onBlurInput, onClick: select.onClickInput, onKeyDown: select.onKeydownInput, disabled: disabled }), jsxRuntimeExports.jsx("button", { className: 'rls-field-list__action', disabled: disabled, onClick: select.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: !unremovable && !!select.value ? 'close' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: select.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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: select.onClickBackdrop })] })] }));
3125
+ return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: select.refContent, 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: select.refInput, className: "rls-field-list__control", readOnly: true, placeholder: placeholder, value: select.value, onFocus: select.onFocusInput, onBlur: select.onBlurInput, onClick: select.onClickInput, onKeyDown: select.onKeydownInput, disabled: disabled }), jsxRuntimeExports.jsx("button", { className: 'rls-field-list__action', disabled: disabled, onClick: select.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: !unremovable && !!select.value ? 'close' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: select.refList, 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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: select.onClickBackdrop })] })] }));
3119
3126
  }
3120
3127
  function RlsFieldSelect(props) {
3121
3128
  const render = require$$0.useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);