@rolster/react-components 18.24.8 → 18.24.9

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 (41) hide show
  1. package/dist/cjs/assets/{index-BYLoD6-3.css → index-Jhih2qiU.css} +21 -22
  2. package/dist/cjs/index.js +42 -26
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/es/assets/{index-BYLoD6-3.css → index-Jhih2qiU.css} +21 -22
  5. package/dist/es/index.js +42 -26
  6. package/dist/es/index.js.map +1 -1
  7. package/dist/esm/components/molecules/LabelCheckBox/LabelCheckBox.css +1 -1
  8. package/dist/esm/components/molecules/LabelCheckBox/LabelCheckBox.css.map +1 -1
  9. package/dist/esm/components/molecules/LabelRadioButton/LabelRadioButton.css +1 -1
  10. package/dist/esm/components/molecules/LabelRadioButton/LabelRadioButton.css.map +1 -1
  11. package/dist/esm/components/molecules/LabelSwitch/LabelSwitch.css +1 -1
  12. package/dist/esm/components/molecules/LabelSwitch/LabelSwitch.css.map +1 -1
  13. package/dist/esm/components/organisms/BottomSheet/BottomSheet.css +5 -5
  14. package/dist/esm/components/organisms/BottomSheet/BottomSheet.css.map +1 -1
  15. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.css +0 -3
  16. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.css.map +1 -1
  17. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.d.ts +1 -0
  18. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +10 -3
  19. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js.map +1 -1
  20. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.d.ts +2 -1
  21. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js +7 -5
  22. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js.map +1 -1
  23. package/dist/esm/components/organisms/FieldDate/FieldDate.css +6 -2
  24. package/dist/esm/components/organisms/FieldDate/FieldDate.css.map +1 -1
  25. package/dist/esm/components/organisms/FieldDate/FieldDate.d.ts +1 -0
  26. package/dist/esm/components/organisms/FieldDate/FieldDate.js +9 -6
  27. package/dist/esm/components/organisms/FieldDate/FieldDate.js.map +1 -1
  28. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.css +6 -2
  29. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.css.map +1 -1
  30. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.d.ts +1 -0
  31. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js +9 -6
  32. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js.map +1 -1
  33. package/dist/esm/components/organisms/FieldSelect/FieldSelect.css +1 -7
  34. package/dist/esm/components/organisms/FieldSelect/FieldSelect.css.map +1 -1
  35. package/dist/esm/components/organisms/FieldSelect/FieldSelect.d.ts +1 -0
  36. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +5 -4
  37. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
  38. package/dist/esm/components/organisms/FieldSelect/FieldSelectController.d.ts +1 -0
  39. package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js +2 -2
  40. package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js.map +1 -1
  41. package/package.json +2 -2
@@ -1337,7 +1337,7 @@
1337
1337
  font-weight: var(--rls-font-weight-medium);
1338
1338
  letter-spacing: var(--rls-label-letter-spacing);
1339
1339
  line-height: var(--pvt-text-height);
1340
- color: var(--rls-app-color-600);
1340
+ color: var(--rlc-label-checkbox-font-color, var(--rls-app-color-600));
1341
1341
  user-select: none;
1342
1342
  opacity: var(--pvt-text-opacity);
1343
1343
  }
@@ -1379,7 +1379,7 @@
1379
1379
  font-weight: var(--rls-font-weight-medium);
1380
1380
  letter-spacing: var(--rls-label-letter-spacing);
1381
1381
  line-height: var(--pvt-text-height);
1382
- color: var(--rls-app-color-600);
1382
+ color: var(--rlc-label-radiobutton-font-color, var(--rls-app-color-600));
1383
1383
  user-select: none;
1384
1384
  opacity: var(--pvt-text-opacity);
1385
1385
  }
@@ -1421,7 +1421,7 @@
1421
1421
  font-weight: var(--rls-font-weight-medium);
1422
1422
  letter-spacing: var(--rls-label-letter-spacing);
1423
1423
  line-height: var(--pvt-text-height);
1424
- color: var(--rls-app-color-600);
1424
+ color: var(--rlc-label-switch-font-color, var(--rls-app-color-600));
1425
1425
  user-select: none;
1426
1426
  opacity: var(--pvt-text-opacity);
1427
1427
  }
@@ -1936,7 +1936,7 @@
1936
1936
  } /*# sourceMappingURL=Toolbar.css.map */
1937
1937
 
1938
1938
  .rls-bottom-sheet {
1939
- --pvt-component-transform: translateY(150px) scale(0.6);
1939
+ --pvt-component-transform: translateY(100%);
1940
1940
  --pvt-component-height: 0rem;
1941
1941
  --pvt-component-opacity: 0;
1942
1942
  --pvt-component-visibility: hidden;
@@ -1954,7 +1954,7 @@
1954
1954
  --pvt-component-visibility: visible;
1955
1955
  --pvt-component-height: auto;
1956
1956
  --pvt-component-opacity: 1;
1957
- --pvt-component-transform: translateY(0) scale(1);
1957
+ --pvt-component-transform: translateY(0);
1958
1958
  --pvt-backdrop-bottom: 0rem;
1959
1959
  --pvt-backdrop-opacity: 1;
1960
1960
  visibility: visible;
@@ -1971,9 +1971,9 @@
1971
1971
  border-radius: var(--rls-sizing-x4) var(--rls-sizing-x4) 0rem 0rem;
1972
1972
  background: var(--rlc-bottom-sheet-background, var(--rls-app-color-050));
1973
1973
  transform: var(--pvt-component-transform);
1974
- transition: opacity 125ms 0ms var(--rls-deceleration-curve),
1975
- transform 125ms 0ms var(--rls-deceleration-curve),
1976
- visibility 125ms 0ms var(--rls-deceleration-curve);
1974
+ transition: opacity 240ms 0ms var(--rls-deceleration-curve),
1975
+ transform 240ms 0ms var(--rls-deceleration-curve),
1976
+ visibility 240ms 0ms var(--rls-deceleration-curve);
1977
1977
  }
1978
1978
  .rls-bottom-sheet__backdrop {
1979
1979
  position: absolute;
@@ -2176,9 +2176,6 @@
2176
2176
  .rls-field-autocomplete.rls-field-box--disabled {
2177
2177
  --pvt-control-opacity: 0.5;
2178
2178
  }
2179
- .rls-field-autocomplete .rls-field-list__control {
2180
- width: var(--pvt-control-width);
2181
- }
2182
2179
  .rls-field-autocomplete .rls-field-list__ul__search {
2183
2180
  display: flex;
2184
2181
  align-items: center;
@@ -2378,16 +2375,20 @@
2378
2375
  --rlc-fieldbox-action-dimension,
2379
2376
  var(--rls-sizing-x12)
2380
2377
  );
2378
+ --pvt-control-width: calc(100% - var(--pvt-action-dimension));
2381
2379
  position: relative;
2382
2380
  width: 100%;
2383
2381
  box-sizing: border-box;
2384
2382
  }
2383
+ .rls-field-date .rls-field-box--readonly {
2384
+ --pvt-control-width: 100%;
2385
+ }
2385
2386
  .rls-field-date .rls-field-box__body {
2386
2387
  column-gap: var(--rls-sizing-x2);
2387
2388
  }
2388
2389
  .rls-field-date__control {
2389
2390
  position: relative;
2390
- width: calc(100% - var(--pvt-action-dimension));
2391
+ width: var(--pvt-control-width);
2391
2392
  height: var(--rls-sizing-x12);
2392
2393
  line-height: var(--rls-sizing-x12);
2393
2394
  padding: 0rem;
@@ -2405,7 +2406,7 @@
2405
2406
  }
2406
2407
  .rls-field-date__control:disabled {
2407
2408
  opacity: 0.5;
2408
- pointer-events: none;
2409
+ cursor: not-allowed;
2409
2410
  }
2410
2411
  .rls-field-date__action {
2411
2412
  --rlc-icon-dimension: calc(var(--pvt-action-dimension) - 2rem);
@@ -2522,13 +2523,17 @@
2522
2523
  --rlc-fieldbox-action-dimension,
2523
2524
  var(--rls-sizing-x12)
2524
2525
  );
2526
+ --pvt-control-width: calc(100% - var(--pvt-action-dimension));
2525
2527
  position: relative;
2526
2528
  width: 100%;
2527
2529
  box-sizing: border-box;
2528
2530
  }
2531
+ .rls-field-date-range .rls-field-box--readonly {
2532
+ --pvt-control-width: 100%;
2533
+ }
2529
2534
  .rls-field-date-range__control {
2530
2535
  position: relative;
2531
- width: calc(100% - var(--pvt-action-dimension));
2536
+ width: var(--pvt-control-width);
2532
2537
  height: var(--rls-sizing-x12);
2533
2538
  line-height: var(--rls-sizing-x12);
2534
2539
  padding: 0rem;
@@ -2546,7 +2551,7 @@
2546
2551
  }
2547
2552
  .rls-field-date-range__control:disabled {
2548
2553
  opacity: 0.5;
2549
- pointer-events: none;
2554
+ cursor: not-allowed;
2550
2555
  }
2551
2556
  .rls-field-date-range__action {
2552
2557
  --rlc-icon-dimension: calc(var(--pvt-action-dimension) - 2rem);
@@ -2572,13 +2577,7 @@
2572
2577
  } /*# sourceMappingURL=FieldDateRange.css.map */
2573
2578
 
2574
2579
  .rls-field-select {
2575
- --pvt-control-cursor: pointer;
2576
- }
2577
- .rls-field-select.rls-field-box--disabled {
2578
- --pvt-control-cursor: none;
2579
- }
2580
- .rls-field-select .rls-field-list__control {
2581
- cursor: var(--pvt-control-cursor);
2580
+ --rlc-fieldlist-control-cursor: pointer;
2582
2581
  }
2583
2582
  .rls-field-select .rls-field-list__action {
2584
2583
  transition: transform 160ms 0ms var(--rls-sharp-curve);
package/dist/es/index.js CHANGED
@@ -2725,11 +2725,13 @@ function useFieldAutocomplete(props) {
2725
2725
  }
2726
2726
  }, [controller.setState, controller.navigationInput]);
2727
2727
  const onClickControl = useCallback(() => {
2728
- controller.setState({ modalIsVisible: true });
2729
- setTimeout(() => {
2730
- controller.refInput?.current?.focus();
2731
- }, DURATION_ANIMATION$1);
2732
- }, [controller.setState]);
2728
+ if (!props.readOnly) {
2729
+ controller.setState({ modalIsVisible: true });
2730
+ setTimeout(() => {
2731
+ controller.refInput?.current?.focus();
2732
+ }, DURATION_ANIMATION$1);
2733
+ }
2734
+ }, [controller.setState, props.readOnly]);
2733
2735
  const onClickAction = useCallback(() => {
2734
2736
  if (controller.value) {
2735
2737
  controller.setState({ modalIsVisible: false });
@@ -2801,7 +2803,7 @@ function useFieldAutocomplete(props) {
2801
2803
 
2802
2804
  function RlsFieldAutocompleteTemplate(props) {
2803
2805
  const autocomplete = useFieldAutocomplete(props);
2804
- const { render, children, formControl, msgErrorDisabled, onSearch, placeholder, rlsTheme, searching } = props;
2806
+ const { render, children, formControl, msgErrorDisabled, onSearch, placeholder, readOnly, rlsTheme, searching } = props;
2805
2807
  const [labels, setLabels] = useState({
2806
2808
  listEmptyDescription: reactI18n('listEmptyDescription'),
2807
2809
  listEmptyTitle: reactI18n('listEmptyTitle'),
@@ -2824,9 +2826,16 @@ function RlsFieldAutocompleteTemplate(props) {
2824
2826
  focused: autocomplete.focused && !disabled,
2825
2827
  error: formControl?.wrong,
2826
2828
  disabled,
2829
+ readonly: readOnly,
2827
2830
  selected: !!autocomplete.value
2828
2831
  }, 'rls-field-list rls-field-autocomplete');
2829
- }, [formControl?.wrong, autocomplete.value, autocomplete.focused, disabled]);
2832
+ }, [
2833
+ formControl?.wrong,
2834
+ autocomplete.value,
2835
+ autocomplete.focused,
2836
+ disabled,
2837
+ readOnly
2838
+ ]);
2830
2839
  const classNameList = useMemo(() => {
2831
2840
  return renderClassStatus('rls-field-list__suggestions', {
2832
2841
  higher: autocomplete.higher,
@@ -2843,7 +2852,7 @@ function RlsFieldAutocompleteTemplate(props) {
2843
2852
  event.key === 'Enter' && onSearch && onSearch(autocomplete.pattern);
2844
2853
  autocomplete.onKeydownInput(event);
2845
2854
  }, [autocomplete.onKeydownInput, onSearch, autocomplete.pattern]);
2846
- 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 })] })] }));
2855
+ 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 }), !readOnly && (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 })] })] }));
2847
2856
  }
2848
2857
  function RlsFieldAutocomplete(props) {
2849
2858
  const render = useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);
@@ -2936,7 +2945,7 @@ function RlsPickerDate({ automatic, date, disabled, formControl, maxDate, minDat
2936
2945
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-date", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: "rls-picker-date__header", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-date__title rls-picker-date__title--description", children: jsxRuntimeExports.jsx("span", { onClick: onVisibilityDay, children: title }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date__title rls-picker-date__title--year", children: jsxRuntimeExports.jsx("span", { onClick: onVisibilityYear, children: yearControl.value }) }), jsxRuntimeExports.jsx(RlsPickerSelectorTitle, { monthControl: monthControl, yearControl: yearControl, date: value, maxDate: maxDate, minDate: minDate, disabled: visibility === 'YEAR', type: 'month', onClick: onVisibilityMonth })] }), jsxRuntimeExports.jsxs("div", { className: classNameComponent, children: [jsxRuntimeExports.jsx(RlsPickerDay, { formControl: dayControl, date: _date, month: monthControl.value, year: yearControl.value, maxDate: maxDate, minDate: minDate, disabled: disabled }), jsxRuntimeExports.jsx(RlsPickerMonth, { formControl: monthControl, date: _date, year: yearControl.value, maxDate: maxDate, minDate: minDate, disabled: disabled, onValue: onVisibilityDay }), jsxRuntimeExports.jsx(RlsPickerYear, { formControl: yearControl, date: _date, maxDate: maxDate, minDate: minDate, disabled: disabled, onValue: onVisibilityDay })] }), !automatic && (jsxRuntimeExports.jsx("div", { className: "rls-picker-date__footer", children: jsxRuntimeExports.jsxs("div", { className: "rls-picker-date__actions", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-date__actions--cancel", children: jsxRuntimeExports.jsx(RlsButton, { type: "ghost", onClick: onCancel, children: labels.dateActionCancel }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date__actions--today", children: jsxRuntimeExports.jsx(RlsButton, { type: "ghost", onClick: onToday, disabled: itIsDisabledToday, children: labels.dateActionToday }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date__actions--ok", children: jsxRuntimeExports.jsx(RlsButton, { type: "raised", onClick: onSelect, children: labels.dateActionSelect }) })] }) }))] }));
2937
2946
  }
2938
2947
 
2939
- function RlsFieldDate({ children, date, disabled, formControl, format, identifier, maxDate, minDate, msgErrorDisabled, onValue, placeholder, rlsTheme, value: _value }) {
2948
+ function RlsFieldDate({ children, date, disabled, formControl, format, identifier, maxDate, minDate, msgErrorDisabled, onValue, placeholder, readOnly, rlsTheme, value: _value }) {
2940
2949
  const today = useRef(new Date()); // Initial current date in component
2941
2950
  const [value, setValue] = useState(formControl?.value ?? _value);
2942
2951
  const [modalIsVisible, setModalIsVisible] = useState(false);
@@ -2944,8 +2953,11 @@ function RlsFieldDate({ children, date, disabled, formControl, format, identifie
2944
2953
  return formControl?.disabled || disabled;
2945
2954
  }, [formControl?.disabled, disabled]);
2946
2955
  const className = useMemo(() => {
2947
- return renderClassStatus('rls-field-box', { disabled: _disabled });
2948
- }, [_disabled]);
2956
+ return renderClassStatus('rls-field-box', {
2957
+ disabled: _disabled,
2958
+ readonly: readOnly
2959
+ });
2960
+ }, [_disabled, readOnly]);
2949
2961
  const { icon, valueInput } = useMemo(() => {
2950
2962
  return {
2951
2963
  icon: value ? 'trash-2' : 'calendar',
@@ -2962,8 +2974,8 @@ function RlsFieldDate({ children, date, disabled, formControl, format, identifie
2962
2974
  formControl?.setValue(_date);
2963
2975
  }, []);
2964
2976
  const onClickInput = useCallback(() => {
2965
- setModalIsVisible(true);
2966
- }, []);
2977
+ !readOnly && setModalIsVisible(true);
2978
+ }, [readOnly]);
2967
2979
  const onChange = useCallback((value) => {
2968
2980
  setValue(value);
2969
2981
  onValue && onValue(value);
@@ -2983,7 +2995,7 @@ function RlsFieldDate({ children, date, disabled, formControl, format, identifie
2983
2995
  formControl?.touch();
2984
2996
  setModalIsVisible(false);
2985
2997
  }, [formControl, onChange]);
2986
- return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: className, 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-date__control", type: "text", value: valueInput, readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), jsxRuntimeExports.jsx("button", { className: "rls-field-date__action", onClick: onClickAction, disabled: _disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { className: "rls-field-date-modal", visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDate, { formControl: formControl, date: date, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: onListener }) })] }));
2998
+ return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: className, 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-date__control", type: "text", value: valueInput, readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), !readOnly && (jsxRuntimeExports.jsx("button", { className: "rls-field-date__action", onClick: onClickAction, disabled: _disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) }))] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { className: "rls-field-date-modal", visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDate, { formControl: formControl, date: date, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: onListener }) })] }));
2987
2999
  }
2988
3000
 
2989
3001
  function rangeFormatTemplate({ maxDate, minDate }) {
@@ -3061,7 +3073,7 @@ function RlsPickerDateRange({ automatic, date: _picker, disabled, formControl, m
3061
3073
  return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: "rls-picker-date-range__header", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__title rls-picker-date-range__title--description", children: jsxRuntimeExports.jsx("span", { onClick: onVisibilityDay, children: title }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__title rls-picker-date-range__title--year", children: jsxRuntimeExports.jsx("span", { onClick: onVisibilityYear, children: yearControl.value }) }), jsxRuntimeExports.jsx(RlsPickerSelectorTitle, { monthControl: monthControl, yearControl: yearControl, date: date, maxDate: maxDate, minDate: minDate, disabled: visibility === 'YEAR', type: visibility === 'MONTH' ? 'year' : 'month', onClick: onVisibilityMonth })] }), jsxRuntimeExports.jsxs("div", { className: classNameComponent, children: [jsxRuntimeExports.jsx(RlsPickerDayRange, { formControl: rangeControl, date: date, maxDate: maxDate, minDate: minDate, disabled: disabled }), jsxRuntimeExports.jsx(RlsPickerMonth, { formControl: monthControl, year: yearControl.value, maxDate: maxDate, minDate: minDate, disabled: disabled, onValue: onVisibilityDay }), jsxRuntimeExports.jsx(RlsPickerYear, { formControl: yearControl, maxDate: maxDate, minDate: minDate, disabled: disabled, onValue: onVisibilityDay })] }), jsxRuntimeExports.jsx("div", { className: classNameFooter, children: jsxRuntimeExports.jsxs("div", { className: "rls-picker-date-range__actions", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__actions--cancel", children: jsxRuntimeExports.jsx(RlsButton, { type: "ghost", onClick: onCancel, children: labels.dateActionCancel }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__actions--ok", children: jsxRuntimeExports.jsx(RlsButton, { type: "raised", onClick: onSelect, children: labels.dateActionSelect }) })] }) })] }));
3062
3074
  }
3063
3075
 
3064
- function RlsFieldDateRange({ children, date: _date, disabled, formControl, identifier, maxDate, minDate, msgErrorDisabled, onValue, placeholder, rlsTheme, value: _value }) {
3076
+ function RlsFieldDateRange({ children, date: _date, disabled, formControl, identifier, maxDate, minDate, msgErrorDisabled, onValue, placeholder, readOnly, rlsTheme, value: _value }) {
3065
3077
  const currentDate = useMemo(() => _date ?? new Date(), [_date]);
3066
3078
  const [value, setValue] = useState(formControl?.value || _value);
3067
3079
  const [modalIsVisible, setModalIsVisible] = useState(false);
@@ -3069,8 +3081,11 @@ function RlsFieldDateRange({ children, date: _date, disabled, formControl, ident
3069
3081
  return formControl?.disabled || disabled;
3070
3082
  }, [formControl?.disabled, disabled]);
3071
3083
  const className = useMemo(() => {
3072
- return renderClassStatus('rls-field-box', { disabled: _disabled });
3073
- }, [_disabled]);
3084
+ return renderClassStatus('rls-field-box', {
3085
+ disabled: _disabled,
3086
+ readonly: readOnly
3087
+ });
3088
+ }, [_disabled, readOnly]);
3074
3089
  const { icon, valueInput } = useMemo(() => {
3075
3090
  return {
3076
3091
  icon: value ? 'trash-2' : 'calendar',
@@ -3078,8 +3093,8 @@ function RlsFieldDateRange({ children, date: _date, disabled, formControl, ident
3078
3093
  };
3079
3094
  }, [value]);
3080
3095
  const onClickInput = useCallback(() => {
3081
- setModalIsVisible(true);
3082
- }, []);
3096
+ !readOnly && setModalIsVisible(true);
3097
+ }, [readOnly]);
3083
3098
  const onChange = useCallback((value) => {
3084
3099
  setValue(value);
3085
3100
  onValue && onValue(value);
@@ -3099,7 +3114,7 @@ function RlsFieldDateRange({ children, date: _date, disabled, formControl, ident
3099
3114
  formControl?.touch();
3100
3115
  setModalIsVisible(false);
3101
3116
  }, [formControl, onChange]);
3102
- return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: className, 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-date-range__control", type: "text", value: valueInput, readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), jsxRuntimeExports.jsx("button", { className: "rls-field-date-range__action", onClick: onClickAction, disabled: _disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { className: "rls-field-date-range-modal", visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDateRange, { formControl: formControl, date: currentDate, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: onListener }) })] }));
3117
+ return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: className, 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-date-range__control", type: "text", value: valueInput, readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), !readOnly && (jsxRuntimeExports.jsx("button", { className: "rls-field-date-range__action", onClick: onClickAction, disabled: _disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) }))] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { className: "rls-field-date-range-modal", visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDateRange, { formControl: formControl, date: currentDate, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: onListener }) })] }));
3103
3118
  }
3104
3119
 
3105
3120
  function useFieldSelect(props) {
@@ -3121,8 +3136,8 @@ function useFieldSelect(props) {
3121
3136
  controller.setState({ focused: false });
3122
3137
  }, [controller.setState]);
3123
3138
  const onClickInput = useCallback(() => {
3124
- controller.setState({ modalIsVisible: true });
3125
- }, [controller.setState]);
3139
+ !props.readOnly && controller.setState({ modalIsVisible: true });
3140
+ }, [controller.setState, props.readOnly]);
3126
3141
  const onKeydownInput = useCallback((event) => {
3127
3142
  switch (event.code) {
3128
3143
  case 'Space':
@@ -3206,7 +3221,7 @@ function useFieldSelect(props) {
3206
3221
 
3207
3222
  function RlsFieldSelectTemplate(props) {
3208
3223
  const select = useFieldSelect(props);
3209
- const { render, suggestions, children, formControl, msgErrorDisabled, placeholder, rlsTheme, unremovable } = props;
3224
+ const { render, suggestions, children, formControl, msgErrorDisabled, placeholder, readOnly, rlsTheme, unremovable } = props;
3210
3225
  const [labels, setLabels] = useState({
3211
3226
  listEmptyDescription: reactI18n('listEmptyDescription'),
3212
3227
  listEmptyTitle: reactI18n('listEmptyTitle')
@@ -3226,16 +3241,17 @@ function RlsFieldSelectTemplate(props) {
3226
3241
  return renderClassStatus('rls-field-box', {
3227
3242
  focused: select.focused && !disabled,
3228
3243
  error: formControl?.wrong,
3229
- disabled: disabled
3244
+ disabled: disabled,
3245
+ readonly: readOnly
3230
3246
  }, 'rls-field-list rls-field-select');
3231
- }, [formControl?.wrong, select.focused, disabled]);
3247
+ }, [formControl?.wrong, select.focused, disabled, readOnly]);
3232
3248
  const classNameList = useMemo(() => {
3233
3249
  return renderClassStatus('rls-field-list__suggestions', {
3234
3250
  higher: select.higher,
3235
3251
  visible: select.modalIsVisible
3236
3252
  });
3237
3253
  }, [select.modalIsVisible, select.higher]);
3238
- 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 })] })] }));
3254
+ 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 }), !readOnly && (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 })] })] }));
3239
3255
  }
3240
3256
  function RlsFieldSelect(props) {
3241
3257
  const render = useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);