@rolster/react-components 18.15.14 → 18.15.21

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 (57) hide show
  1. package/dist/cjs/index.js +68 -69
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/es/index.js +68 -69
  4. package/dist/es/index.js.map +1 -1
  5. package/dist/esm/components/atoms/Input/Input.d.ts +2 -2
  6. package/dist/esm/components/atoms/Input/Input.js +1 -1
  7. package/dist/esm/components/atoms/Input/Input.js.map +1 -1
  8. package/dist/esm/components/atoms/InputMoney/InputMoney.d.ts +3 -8
  9. package/dist/esm/components/atoms/InputMoney/InputMoney.js +1 -1
  10. package/dist/esm/components/atoms/InputMoney/InputMoney.js.map +1 -1
  11. package/dist/esm/components/atoms/InputNumber/InputNumber.d.ts +2 -10
  12. package/dist/esm/components/atoms/InputNumber/InputNumber.js +1 -1
  13. package/dist/esm/components/atoms/InputNumber/InputNumber.js.map +1 -1
  14. package/dist/esm/components/atoms/InputPassword/InputPassword.d.ts +4 -4
  15. package/dist/esm/components/atoms/InputPassword/InputPassword.js +1 -1
  16. package/dist/esm/components/atoms/InputPassword/InputPassword.js.map +1 -1
  17. package/dist/esm/components/atoms/InputSearch/InputSearch.d.ts +3 -3
  18. package/dist/esm/components/atoms/InputSearch/InputSearch.js +1 -1
  19. package/dist/esm/components/atoms/InputSearch/InputSearch.js.map +1 -1
  20. package/dist/esm/components/atoms/InputText/InputText.d.ts +2 -10
  21. package/dist/esm/components/atoms/InputText/InputText.js +2 -2
  22. package/dist/esm/components/atoms/InputText/InputText.js.map +1 -1
  23. package/dist/esm/components/molecules/FieldMoney/FieldMoney.d.ts +3 -9
  24. package/dist/esm/components/molecules/FieldMoney/FieldMoney.js +2 -2
  25. package/dist/esm/components/molecules/FieldMoney/FieldMoney.js.map +1 -1
  26. package/dist/esm/components/molecules/FieldNumber/FieldNumber.d.ts +2 -11
  27. package/dist/esm/components/molecules/FieldNumber/FieldNumber.js +2 -2
  28. package/dist/esm/components/molecules/FieldNumber/FieldNumber.js.map +1 -1
  29. package/dist/esm/components/molecules/FieldPassword/FieldPassword.d.ts +4 -3
  30. package/dist/esm/components/molecules/FieldPassword/FieldPassword.js +2 -2
  31. package/dist/esm/components/molecules/FieldPassword/FieldPassword.js.map +1 -1
  32. package/dist/esm/components/molecules/FieldText/FieldText.d.ts +2 -11
  33. package/dist/esm/components/molecules/FieldText/FieldText.js +2 -2
  34. package/dist/esm/components/molecules/FieldText/FieldText.js.map +1 -1
  35. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.d.ts +1 -0
  36. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +4 -4
  37. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js.map +1 -1
  38. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteHook.js +10 -11
  39. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteHook.js.map +1 -1
  40. package/dist/esm/components/organisms/FieldDate/FieldDate.d.ts +2 -1
  41. package/dist/esm/components/organisms/FieldDate/FieldDate.js +2 -2
  42. package/dist/esm/components/organisms/FieldDate/FieldDate.js.map +1 -1
  43. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.d.ts +2 -1
  44. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js +2 -2
  45. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js.map +1 -1
  46. package/dist/esm/components/organisms/FieldSelect/FieldSelect.d.ts +2 -1
  47. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +5 -5
  48. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
  49. package/dist/esm/components/organisms/FieldSelect/FieldSelectHook.js +11 -11
  50. package/dist/esm/components/organisms/FieldSelect/FieldSelectHook.js.map +1 -1
  51. package/dist/esm/components/types.d.ts +13 -0
  52. package/dist/esm/components/types.js +2 -0
  53. package/dist/esm/components/types.js.map +1 -0
  54. package/dist/esm/hooks/ListControlHook.d.ts +2 -4
  55. package/dist/esm/hooks/ListControlHook.js +19 -19
  56. package/dist/esm/hooks/ListControlHook.js.map +1 -1
  57. package/package.json +2 -2
@@ -7,7 +7,7 @@ import { RlsMessageFormError } from '../../molecules';
7
7
  import { RlsModal } from '../Modal/Modal';
8
8
  import { RlsPickerDateRange } from '../PickerDateRange/PickerDateRange';
9
9
  import './FieldDateRange.css';
10
- export function RlsFieldDateRange({ children, date: datePicker, disabled, formControl, maxDate, minDate, placeholder, rlsTheme }) {
10
+ export function RlsFieldDateRange({ children, date: datePicker, disabled, formControl, maxDate, minDate, msgErrorDisabled, placeholder, rlsTheme }) {
11
11
  const currentRange = formControl?.value || DateRange.now();
12
12
  const currentDate = datePicker || new Date();
13
13
  const [value, setValue] = useState(currentRange);
@@ -24,7 +24,7 @@ export function RlsFieldDateRange({ children, date: datePicker, disabled, formCo
24
24
  setModalIsVisible(true);
25
25
  }
26
26
  }
27
- return (_jsxs("div", { className: "rls-field-date-range", "rls-theme": rlsTheme, children: [_jsxs("div", { className: renderClassStatus('rls-field-box', { disabled }), children: [children && _jsx("label", { className: "rls-field-box__label", children: children }), _jsx("div", { className: "rls-field-box__component", children: _jsxs("div", { className: "rls-field-box__body", children: [_jsx("input", { className: "rls-field-date-range__control", type: "text", value: value ? rangeFormatTemplate(value) : '', readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: disabled }), _jsx("button", { className: "rls-field-date-range__action", onClick: onClickAction, disabled: disabled, children: _jsx(RlsIcon, { value: value ? 'trash-2' : 'calendar' }) })] }) }), _jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })] }), _jsx(RlsModal, { visible: modalIsVisible, rlsTheme: rlsTheme, children: _jsx(RlsPickerDateRange, { formControl: formControl, date: currentDate, disabled: disabled, maxDate: maxDate, minDate: minDate, onListener: ({ value }) => {
27
+ return (_jsxs("div", { className: "rls-field-date-range", "rls-theme": rlsTheme, children: [_jsxs("div", { className: renderClassStatus('rls-field-box', { disabled }), children: [children && _jsx("label", { className: "rls-field-box__label", children: children }), _jsx("div", { className: "rls-field-box__component", children: _jsxs("div", { className: "rls-field-box__body", children: [_jsx("input", { className: "rls-field-date-range__control", type: "text", value: value ? rangeFormatTemplate(value) : '', readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: disabled }), _jsx("button", { className: "rls-field-date-range__action", onClick: onClickAction, disabled: disabled, children: _jsx(RlsIcon, { value: value ? 'trash-2' : 'calendar' }) })] }) }), !msgErrorDisabled && (_jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), _jsx(RlsModal, { visible: modalIsVisible, rlsTheme: rlsTheme, children: _jsx(RlsPickerDateRange, { formControl: formControl, date: currentDate, disabled: disabled, maxDate: maxDate, minDate: minDate, onListener: ({ value }) => {
28
28
  value && setValue(value);
29
29
  setModalIsVisible(false);
30
30
  } }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDateRange.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldDateRange/FieldDateRange.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,sBAAsB,CAAC;AAW9B,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,IAAI,EAAE,UAAU,EAChB,QAAQ,EACR,WAAW,EACX,OAAO,EACP,OAAO,EACP,WAAW,EACX,QAAQ,EACY;IACpB,MAAM,YAAY,GAAG,WAAW,EAAE,KAAK,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;IAC3D,MAAM,WAAW,GAAG,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC;IAE7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAuB,YAAY,CAAC,CAAC;IACvE,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,YAAY;QACnB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,SAAS,aAAa;QACpB,IAAI,KAAK,EAAE,CAAC;YACV,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;YACjC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,sBAAsB,eAAY,QAAQ,aACvD,eAAK,SAAS,EAAE,iBAAiB,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,CAAC,aAC7D,QAAQ,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAS,EAEvE,cAAK,SAAS,EAAC,0BAA0B,YACvC,eAAK,SAAS,EAAC,qBAAqB,aAClC,gBACE,SAAS,EAAC,+BAA+B,EACzC,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAC9C,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,QAAQ,GAClB,EAEF,iBACE,SAAS,EAAC,8BAA8B,EACxC,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,QAAQ,YAElB,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,GAAI,GAC3C,IACL,GACF,EAEN,KAAC,mBAAmB,IAClB,SAAS,EAAC,sBAAsB,EAChC,WAAW,EAAE,WAAW,GACxB,IACE,EAEN,KAAC,QAAQ,IAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,YACnD,KAAC,kBAAkB,IACjB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;wBACxB,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;wBAEzB,iBAAiB,CAAC,KAAK,CAAC,CAAC;oBAC3B,CAAC,GACD,GACO,IACP,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"FieldDateRange.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldDateRange/FieldDateRange.tsx"],"names":[],"mappings":"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"}
@@ -7,9 +7,10 @@ interface FieldSelectProps<T = any, E extends Element<T> = Element<T>> extends R
7
7
  suggestions: E[];
8
8
  disabled?: boolean;
9
9
  formControl?: ReactControl<HTMLElement, T | undefined>;
10
- placeholder?: string;
10
+ msgErrorDisabled?: boolean;
11
11
  onSelect?: (value: T) => void;
12
12
  onValue?: (value?: T) => void;
13
+ placeholder?: string;
13
14
  }
14
15
  interface FieldSelectTemplateProps<T = any, E extends Element<T> = Element<T>> extends FieldSelectProps<T, E> {
15
16
  render: (element: E) => ReactNode;
@@ -7,16 +7,16 @@ import { useFieldSelect } from './FieldSelectHook';
7
7
  import './FieldSelect.css';
8
8
  export function RlsFieldSelectTemplate(props) {
9
9
  const fieldSelect = useFieldSelect(props);
10
- const { render, suggestions, children, disabled, formControl, placeholder, rlsTheme } = props;
10
+ const { render, suggestions, children, disabled, formControl, msgErrorDisabled, placeholder, rlsTheme } = props;
11
11
  return (_jsxs("div", { ref: fieldSelect.listControl.contentRef, className: renderClassStatus('rls-field-box', {
12
12
  focused: fieldSelect.listControl.focused,
13
13
  error: formControl?.wrong,
14
14
  disabled
15
15
  }, 'rls-field-list rls-field-select'), "rls-theme": rlsTheme, children: [children && _jsx("label", { className: "rls-field-box__label", children: children }), _jsx("div", { className: "rls-field-box__component", children: _jsxs("div", { className: "rls-field-box__body", children: [_jsx("input", { ref: fieldSelect.listControl.inputRef, className: "rls-field-list__control", readOnly: true, disabled: disabled, placeholder: placeholder, value: fieldSelect.listControl.value, onFocus: fieldSelect.onFocusInput, onBlur: fieldSelect.onBlurInput, onClick: fieldSelect.onClickInput, onKeyDown: fieldSelect.onKeydownInput }), _jsx("button", { className: renderClassStatus('rls-field-list__action', {
16
- visible: fieldSelect.listControl.visible
17
- }), disabled: disabled, onClick: fieldSelect.onClickAction, children: _jsx(RlsIcon, { value: "arrow-ios-down" }) })] }) }), _jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }), _jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
18
- visible: fieldSelect.listControl.visible,
19
- hide: !fieldSelect.listControl.visible,
16
+ visible: fieldSelect.listControl.listIsVisible
17
+ }), disabled: disabled, onClick: fieldSelect.onClickAction, children: _jsx(RlsIcon, { value: "arrow-ios-down" }) })] }) }), !msgErrorDisabled && (_jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), _jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
18
+ visible: fieldSelect.listControl.listIsVisible,
19
+ hide: !fieldSelect.listControl.listIsVisible,
20
20
  higher: fieldSelect.listControl.higher
21
21
  }), children: [_jsx("div", { className: "rls-field-list__suggestions__body", children: _jsxs("ul", { ref: fieldSelect.listControl.listRef, className: "rls-field-list__ul", children: [suggestions.map((element, index) => (_jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: fieldSelect.onClickElement(element), onKeyDown: fieldSelect.onKeydownElement(element), children: render(element) }, index))), !suggestions.length && (_jsx("li", { className: "rls-field-list__empty", children: _jsxs("div", { className: "rls-field-list__empty__description", children: [_jsx("label", { className: "rls-label-bold truncate", children: reactI18n('listEmptyTitle') }), _jsx("p", { className: "rls-caption-regular", children: reactI18n('listEmptyDescription') })] }) }))] }) }), _jsx("div", { className: "rls-field-list__backdrop", onClick: fieldSelect.onClickBackdrop })] })] }));
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSelect.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldSelect/FieldSelect.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldSelect.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldSelect/FieldSelect.tsx"],"names":[],"mappings":"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"}
@@ -1,25 +1,25 @@
1
1
  import { useListControl } from '../../../hooks';
2
2
  export function useFieldSelect({ suggestions, formControl, onSelect, onValue }) {
3
3
  const listControl = useListControl({ suggestions, formControl });
4
- const { inputRef, visible, navigationElement, navigationInput, setFocused, setFormValue, setValue, setVisible } = listControl;
4
+ const { inputRef, listIsVisible, navigationElement, navigationInput, setFormValue, setState } = listControl;
5
5
  function onFocusInput() {
6
- setFocused(true);
6
+ setState({ focused: true });
7
7
  }
8
8
  function onBlurInput() {
9
- setFocused(false);
9
+ setState({ focused: false });
10
10
  }
11
11
  function onClickInput() {
12
- setVisible(true);
12
+ setState({ listIsVisible: true });
13
13
  }
14
14
  function onKeydownInput(event) {
15
15
  switch (event.code) {
16
16
  case 'Space':
17
17
  case 'Enter':
18
- setVisible(true);
18
+ setState({ listIsVisible: true });
19
19
  break;
20
20
  case 'Escape':
21
21
  case 'Tab':
22
- setVisible(false);
22
+ setState({ listIsVisible: false });
23
23
  break;
24
24
  default:
25
25
  navigationInput(event);
@@ -27,11 +27,11 @@ export function useFieldSelect({ suggestions, formControl, onSelect, onValue })
27
27
  }
28
28
  }
29
29
  function onClickAction() {
30
- setVisible(!visible);
31
- !visible && inputRef?.current?.focus();
30
+ setState({ listIsVisible: !listIsVisible });
31
+ !listIsVisible && inputRef?.current?.focus();
32
32
  }
33
33
  function onClickBackdrop() {
34
- setVisible(false);
34
+ setState({ listIsVisible: false });
35
35
  }
36
36
  function onClickElement(element) {
37
37
  return () => {
@@ -45,13 +45,13 @@ export function useFieldSelect({ suggestions, formControl, onSelect, onValue })
45
45
  }
46
46
  function onChange({ description, value }) {
47
47
  inputRef?.current?.focus();
48
- setVisible(false);
49
48
  if (onSelect) {
49
+ setState({ listIsVisible: false });
50
50
  onSelect(value);
51
51
  }
52
52
  else {
53
53
  setFormValue(value);
54
- setValue(description);
54
+ setState({ listIsVisible: false, value: description });
55
55
  }
56
56
  onValue && onValue(value);
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSelectHook.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldSelect/FieldSelectHook.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAyB7D,MAAM,UAAU,cAAc,CAAiD,EAC7E,WAAW,EACX,WAAW,EACX,QAAQ,EACR,OAAO,EACgB;IACvB,MAAM,WAAW,GAAG,cAAc,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IAEjE,MAAM,EACJ,QAAQ,EACR,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACX,GAAG,WAAW,CAAC;IAEhB,SAAS,YAAY;QACnB,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,SAAS,WAAW;QAClB,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,YAAY;QACnB,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,SAAS,cAAc,CAAC,KAAoB;QAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACV,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,MAAM;YAER,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK;gBACR,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,MAAM;YAER;gBACE,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvB,MAAM;QACV,CAAC;IACH,CAAC;IAED,SAAS,aAAa;QACpB,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC,OAAO,IAAI,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IAED,SAAS,eAAe;QACtB,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,cAAc,CAAC,OAAmB;QACzC,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,gBAAgB,CAAC,OAAmB;QAC3C,OAAO,CAAC,KAAK,EAAE,EAAE;YACf,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxE,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAc;QAClD,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE3B,UAAU,CAAC,KAAK,CAAC,CAAC;QAElB,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,QAAQ,CAAC,WAAW,CAAC,CAAC;QACxB,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO;QACL,WAAW;QACX,WAAW;QACX,aAAa;QACb,eAAe;QACf,YAAY;QACZ,cAAc;QACd,YAAY;QACZ,gBAAgB;QAChB,cAAc;KACf,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"FieldSelectHook.js","sourceRoot":"","sources":["../../../../../src/components/organisms/FieldSelect/FieldSelectHook.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAyB7D,MAAM,UAAU,cAAc,CAAiD,EAC7E,WAAW,EACX,WAAW,EACX,QAAQ,EACR,OAAO,EACgB;IACvB,MAAM,WAAW,GAAG,cAAc,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IAEjE,MAAM,EACJ,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,QAAQ,EACT,GAAG,WAAW,CAAC;IAEhB,SAAS,YAAY;QACnB,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS,WAAW;QAClB,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,YAAY;QACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,SAAS,cAAc,CAAC,KAAoB;QAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACV,QAAQ,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClC,MAAM;YAER,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK;gBACR,QAAQ,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnC,MAAM;YAER;gBACE,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvB,MAAM;QACV,CAAC;IACH,CAAC;IAED,SAAS,aAAa;QACpB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5C,CAAC,aAAa,IAAI,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,eAAe;QACtB,QAAQ,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,cAAc,CAAC,OAAmB;QACzC,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,gBAAgB,CAAC,OAAmB;QAC3C,OAAO,CAAC,KAAK,EAAE,EAAE;YACf,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxE,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAc;QAClD,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE3B,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;YACnC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,QAAQ,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO;QACL,WAAW;QACX,WAAW;QACX,aAAa;QACb,eAAe;QACf,YAAY;QACZ,cAAc;QACd,YAAY;QACZ,gBAAgB;QAChB,cAAc;KACf,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { ReactControl } from '@rolster/react-forms';
2
+ import { RlsComponent } from './definitions';
3
+ export type RolsterControl<T = any> = ReactControl<HTMLInputElement, T> | ReactControl<HTMLInputElement, T | undefined>;
4
+ export interface InputProps<T = any> {
5
+ disabled?: boolean;
6
+ formControl?: RolsterControl<T>;
7
+ onValue?: (value: T) => void;
8
+ placeholder?: string;
9
+ value?: T;
10
+ }
11
+ export interface FieldBoxProps<T = any> extends InputProps<T>, RlsComponent {
12
+ msgErrorDisabled?: boolean;
13
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":""}
@@ -4,8 +4,8 @@ import { KeyboardEvent, RefObject } from 'react';
4
4
  interface ListControlState {
5
5
  focused: boolean;
6
6
  higher: boolean;
7
+ listIsVisible: boolean;
7
8
  value: string;
8
- visible: boolean;
9
9
  }
10
10
  export interface ListControl<T = any> extends ListControlState {
11
11
  contentRef: RefObject<HTMLDivElement>;
@@ -13,10 +13,8 @@ export interface ListControl<T = any> extends ListControlState {
13
13
  listRef: RefObject<HTMLUListElement>;
14
14
  navigationElement: (event: KeyboardEvent) => void;
15
15
  navigationInput: (event: KeyboardEvent) => void;
16
- setFocused: (focused: boolean) => void;
17
16
  setFormValue(value: Undefined<T>): void;
18
- setValue: (value: string) => void;
19
- setVisible: (visible: boolean) => void;
17
+ setState: (state: Partial<ListControlState>) => void;
20
18
  }
21
19
  interface ListControlProps<T = any> {
22
20
  suggestions: AbstractListElement<T>[];
@@ -4,11 +4,12 @@ export function useListControl({ suggestions, formControl }) {
4
4
  const contentRef = useRef(null);
5
5
  const listRef = useRef(null);
6
6
  const inputRef = useRef(null);
7
+ const listIsOpen = useRef(false);
7
8
  const [state, setState] = useState({
8
9
  focused: false,
9
10
  higher: false,
10
11
  value: '',
11
- visible: false
12
+ listIsVisible: false
12
13
  });
13
14
  const collection = useRef(new ListCollection([]));
14
15
  const position = useRef(0);
@@ -16,7 +17,7 @@ export function useListControl({ suggestions, formControl }) {
16
17
  useEffect(() => {
17
18
  function onCloseSuggestions({ target }) {
18
19
  !contentRef?.current?.contains(target) &&
19
- setState((state) => ({ ...state, visible: false }));
20
+ setState((state) => ({ ...state, listIsVisible: false }));
20
21
  }
21
22
  document.addEventListener('click', onCloseSuggestions);
22
23
  return () => {
@@ -24,28 +25,36 @@ export function useListControl({ suggestions, formControl }) {
24
25
  };
25
26
  }, []);
26
27
  useEffect(() => {
28
+ if (!listIsOpen.current && state.listIsVisible) {
29
+ listIsOpen.current = true;
30
+ }
31
+ if (listIsOpen.current && !state.listIsVisible) {
32
+ formControl?.touch();
33
+ }
27
34
  setState((state) => ({
28
35
  ...state,
29
36
  higher: locationListCanTop(contentRef.current, listRef.current)
30
37
  }));
31
- }, [state.visible]);
38
+ }, [state.listIsVisible]);
32
39
  useEffect(() => {
33
40
  collection.current = new ListCollection(suggestions);
34
41
  refresh(collection.current, formControl?.value);
35
42
  }, [suggestions, formControl?.value]);
36
43
  function refresh(collection, state) {
37
44
  if (!state) {
38
- return refreshProtected(collection) ? undefined : setValue('');
45
+ return refreshProtected(collection)
46
+ ? undefined
47
+ : refreshState({ value: '' });
39
48
  }
40
49
  const element = collection.find(state);
41
50
  if (element) {
42
51
  protectedValue.current = undefined;
43
- return setValue(element.description);
52
+ return refreshState({ value: element.description });
44
53
  }
45
54
  if (!refreshProtected(collection)) {
46
55
  protectedValue.current = state;
47
- setValue('');
48
56
  setFormValue(undefined);
57
+ refreshState({ value: '' });
49
58
  }
50
59
  }
51
60
  function refreshProtected(collection) {
@@ -59,21 +68,14 @@ export function useListControl({ suggestions, formControl }) {
59
68
  }
60
69
  return false;
61
70
  }
62
- function setFocused(focused) {
63
- setState((state) => ({ ...state, focused }));
64
- }
65
- function setValue(value) {
66
- setState((state) => ({ ...state, value }));
71
+ function refreshState(state) {
72
+ setState((currentState) => ({ ...currentState, ...state }));
67
73
  }
68
74
  function setFormValue(value) {
69
75
  formControl?.setValue(value);
70
76
  }
71
- function setVisible(visible) {
72
- setState((state) => ({ ...state, visible }));
73
- !visible && formControl?.touch();
74
- }
75
77
  function navigationInput(event) {
76
- if (state.visible) {
78
+ if (state.listIsVisible) {
77
79
  const newPosition = navigationListFromInput({
78
80
  content: contentRef.current,
79
81
  event: event,
@@ -98,10 +100,8 @@ export function useListControl({ suggestions, formControl }) {
98
100
  listRef,
99
101
  navigationElement,
100
102
  navigationInput,
101
- setFocused,
102
103
  setFormValue,
103
- setValue,
104
- setVisible
104
+ setState: refreshState
105
105
  };
106
106
  }
107
107
  //# sourceMappingURL=ListControlHook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListControlHook.js","sourceRoot":"","sources":["../../../src/hooks/ListControlHook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListControlHook.js","sourceRoot":"","sources":["../../../src/hooks/ListControlHook.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolster/react-components",
3
- "version": "18.15.14",
3
+ "version": "18.15.21",
4
4
  "type": "module",
5
5
  "description": "Package containing UI components for React Project.",
6
6
  "module": "dist/esm/index.js",
@@ -39,7 +39,7 @@
39
39
  "@rolster/dates": "^2.0.0",
40
40
  "@rolster/forms": "^2.6.1",
41
41
  "@rolster/i18n": "^2.1.1",
42
- "@rolster/react-forms": "^18.6.0",
42
+ "@rolster/react-forms": "^18.7.0",
43
43
  "@rolster/strings": "^2.0.0",
44
44
  "@rolster/validators": "^2.0.0",
45
45
  "lottie-react": "^2.4.0",