@rolster/react-components 19.8.21 → 19.9.0

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.
@@ -7,6 +7,9 @@ export interface AreaTextProps extends RlsComponent {
7
7
  disabled?: boolean;
8
8
  formControl?: RolsterReactAreaTextControl<string>;
9
9
  identifier?: string;
10
+ maxLength?: number;
11
+ maxRows?: number;
12
+ minRows?: number;
10
13
  onBlur?: () => void;
11
14
  onEnter?: () => void;
12
15
  onFocus?: () => void;
@@ -16,9 +19,8 @@ export interface AreaTextProps extends RlsComponent {
16
19
  placeholder?: string;
17
20
  readOnly?: boolean;
18
21
  resize?: CSSProperties['resize'];
19
- rows?: number;
20
22
  value?: string;
21
23
  }
22
- declare function RlsAreaTextComponent({ autoComplete, disabled, formControl, identifier, onBlur, onEnter, onFocus, onKeyDown, onKeyUp, onValue, placeholder, readOnly, resize, rows, value }: AreaTextProps): import("react/jsx-runtime").JSX.Element;
24
+ declare function RlsAreaTextComponent({ autoComplete, disabled, formControl, identifier, maxLength, maxRows, minRows, onBlur, onEnter, onFocus, onKeyDown, onKeyUp, onValue, placeholder, readOnly, resize, value }: AreaTextProps): import("react/jsx-runtime").JSX.Element;
23
25
  export declare const RlsAreaText: import("react").MemoExoticComponent<typeof RlsAreaTextComponent>;
24
26
  export {};
@@ -1,41 +1,110 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { memo, useCallback, useEffect, useRef, useState } from 'react';
3
3
  import { renderClassStatus } from '../../../helpers/css';
4
- function RlsAreaTextComponent({ autoComplete, disabled, formControl, identifier, onBlur, onEnter, onFocus, onKeyDown, onKeyUp, onValue, placeholder, readOnly, resize, rows = 1, value }) {
4
+ const AREA_TEXT_MAX_ROWS = 8;
5
+ const AREA_TEXT_MIN_ROWS = 3;
6
+ function writeAreaValue(element, valueArea) {
7
+ const rawArea = element.value;
8
+ if (rawArea === valueArea) {
9
+ return;
10
+ }
11
+ const selection = element.selectionStart;
12
+ const offset = valueArea.length - rawArea.length;
13
+ const caret = Math.max(0, Math.min(selection + offset, valueArea.length));
14
+ element.value = valueArea;
15
+ element.setSelectionRange(caret, caret);
16
+ }
17
+ function RlsAreaTextComponent({ autoComplete, disabled, formControl, identifier, maxLength, maxRows, minRows, onBlur, onEnter, onFocus, onKeyDown, onKeyUp, onValue, placeholder, readOnly, resize = 'vertical', value }) {
5
18
  const valueInitial = String(formControl?.value ?? value ?? '');
19
+ const rowsMin = minRows ?? AREA_TEXT_MIN_ROWS;
20
+ const rowsMax = Math.max(maxRows ?? AREA_TEXT_MAX_ROWS, rowsMin);
6
21
  const [valueArea, setValueArea] = useState(valueInitial);
7
22
  const [focused, setFocused] = useState(false);
8
23
  const elementRef = useRef(null);
9
24
  const areaRef = formControl?.elementRef ?? elementRef;
10
- const changeIsInternal = useRef(false);
25
+ const composing = useRef(false);
26
+ const valueSent = useRef(formControl?.value);
27
+ const valueSource = useRef(formControl ? formControl.value : value);
28
+ const heightIsManual = useRef(false);
29
+ const heightApplied = useRef(0);
11
30
  const refreshHeight = useCallback(() => {
12
31
  const element = areaRef.current;
13
- if (element) {
14
- element.style.height = 'auto';
15
- element.style.height = `${element.scrollHeight}px`;
32
+ if (!element || heightIsManual.current) {
33
+ return;
34
+ }
35
+ element.style.height = 'auto';
36
+ const { lineHeight, paddingBottom, paddingTop } = getComputedStyle(element);
37
+ const heightLine = parseFloat(lineHeight);
38
+ const heightContent = element.scrollHeight;
39
+ if (!heightLine) {
40
+ element.style.height = `${heightContent}px`;
41
+ heightApplied.current = heightContent;
42
+ return;
16
43
  }
17
- }, [areaRef]);
44
+ const heightPadding = parseFloat(paddingTop) + parseFloat(paddingBottom);
45
+ const heightMin = heightLine * rowsMin + heightPadding;
46
+ const heightMax = heightLine * rowsMax + heightPadding;
47
+ const height = Math.min(Math.max(heightContent, heightMin), heightMax);
48
+ element.style.height = `${height}px`;
49
+ element.style.overflowY = heightContent > heightMax ? 'auto' : 'hidden';
50
+ heightApplied.current = height;
51
+ }, [areaRef, rowsMax, rowsMin]);
18
52
  useEffect(() => {
19
- if (!changeIsInternal.current) {
20
- const nextValue = String(formControl?.value ?? value ?? '');
53
+ const source = formControl ? formControl.value : value;
54
+ const isEcho = Object.is(source, valueSent.current);
55
+ const isSame = Object.is(source, valueSource.current);
56
+ valueSource.current = source;
57
+ if (!isEcho && !isSame) {
58
+ const nextValue = String(source ?? '');
21
59
  if (valueArea !== nextValue) {
22
60
  setValueArea(nextValue);
23
61
  }
24
62
  }
25
- changeIsInternal.current = false;
26
63
  }, [formControl?.value, value, valueArea]);
27
64
  useEffect(() => {
28
65
  refreshHeight();
29
66
  }, [refreshHeight, valueArea]);
30
- const onChangeArea = useCallback((event) => {
31
- const nextValue = event.target.value;
32
- changeIsInternal.current = true;
67
+ useEffect(() => {
68
+ const element = areaRef.current;
69
+ if (!element ||
70
+ resize === 'none' ||
71
+ typeof ResizeObserver === 'undefined') {
72
+ return;
73
+ }
74
+ const observer = new ResizeObserver(() => {
75
+ if (heightIsManual.current || !heightApplied.current) {
76
+ return;
77
+ }
78
+ if (Math.abs(element.offsetHeight - heightApplied.current) > 1) {
79
+ heightIsManual.current = true;
80
+ element.style.overflowY = 'auto';
81
+ }
82
+ });
83
+ observer.observe(element);
84
+ return () => observer.disconnect();
85
+ }, [areaRef, resize]);
86
+ const applyArea = useCallback((element) => {
87
+ const rawArea = element.value;
88
+ const formatter = formControl?.formatter;
89
+ const nextValue = formatter && formControl?.formatOn !== 'blur' && !composing.current
90
+ ? (formatter(rawArea) ?? '')
91
+ : rawArea;
92
+ writeAreaValue(element, nextValue);
93
+ valueSent.current = nextValue;
33
94
  onValue?.(nextValue);
34
95
  setValueArea(nextValue);
35
96
  formControl?.setValue(nextValue);
36
- event.target.style.height = 'auto';
37
- event.target.style.height = `${event.target.scrollHeight}px`;
38
97
  }, [formControl, onValue]);
98
+ const onChangeArea = useCallback((event) => {
99
+ applyArea(event.target);
100
+ }, [applyArea]);
101
+ const onCompositionStart = useCallback(() => {
102
+ composing.current = true;
103
+ }, []);
104
+ const onCompositionEnd = useCallback((event) => {
105
+ composing.current = false;
106
+ applyArea(event.currentTarget);
107
+ }, [applyArea]);
39
108
  const onKeyDownArea = useCallback((event) => {
40
109
  onKeyDown?.(event);
41
110
  if (event.key === 'Enter') {
@@ -55,12 +124,14 @@ function RlsAreaTextComponent({ autoComplete, disabled, formControl, identifier,
55
124
  setFocused(() => false);
56
125
  onBlur?.();
57
126
  }, [formControl, onBlur]);
127
+ const disabledArea = formControl?.disabled || disabled;
58
128
  const className = renderClassStatus('rls-area-text', {
59
- disabled: formControl?.disabled || disabled,
129
+ disabled: disabledArea,
60
130
  focused: formControl?.focused ?? focused,
61
- readonly: readOnly
131
+ readonly: readOnly,
132
+ resizable: resize !== 'none' && !disabledArea && !readOnly
62
133
  });
63
- return (_jsxs("div", { id: identifier, className: className, children: [_jsx("textarea", { ref: areaRef, className: "rls-area-text__component", autoComplete: autoComplete ?? 'off', placeholder: placeholder, disabled: formControl?.disabled || disabled, readOnly: readOnly, rows: rows, style: { resize }, onFocus: onFocusArea, onBlur: onBlurArea, onChange: onChangeArea, onKeyDown: onKeyDownArea, onKeyUp: onKeyUpArea, value: valueArea }), _jsx("span", { className: "rls-area-text__value", children: valueArea })] }));
134
+ return (_jsxs("div", { id: identifier, className: className, children: [_jsx("textarea", { ref: areaRef, className: "rls-area-text__component", autoComplete: autoComplete ?? 'off', placeholder: placeholder, disabled: disabledArea, readOnly: readOnly, maxLength: maxLength, rows: rowsMin, style: { resize }, onFocus: onFocusArea, onBlur: onBlurArea, onChange: onChangeArea, onCompositionStart: onCompositionStart, onCompositionEnd: onCompositionEnd, onKeyDown: onKeyDownArea, onKeyUp: onKeyUpArea, value: valueArea }), _jsx("span", { className: "rls-area-text__value", "aria-hidden": "true", children: valueArea })] }));
64
135
  }
65
136
  export const RlsAreaText = memo(RlsAreaTextComponent);
66
137
  //# sourceMappingURL=AreaText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AreaText.js","sourceRoot":"","sources":["../../../../../src/components/atoms/AreaText/AreaText.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AreaText.js","sourceRoot":"","sources":["../../../../../src/components/atoms/AreaText/AreaText.tsx"],"names":[],"mappings":"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"}
@@ -1,30 +1,82 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { memo, useCallback, useEffect, useRef, useState } from 'react';
3
3
  import { renderClassStatus } from '../../../helpers/css';
4
+ function valueToInput(value) {
5
+ return value ? String(value) : '';
6
+ }
7
+ function selectionStartOf(element) {
8
+ try {
9
+ // Lanza o retorna null en inputs sin selección (number, email, etc.)
10
+ return element.selectionStart;
11
+ }
12
+ catch {
13
+ return null;
14
+ }
15
+ }
16
+ /**
17
+ * Escribe el valor formateado directamente en el DOM y conserva la posición
18
+ * del cursor, corrigiéndola por la diferencia de longitud. Es necesario
19
+ * porque, cuando el formateador rechaza un carácter, el estado del control
20
+ * no cambia y React no vuelve a escribir el input.
21
+ */
22
+ function writeInputValue(element, valueInput) {
23
+ const rawInput = element.value;
24
+ if (rawInput === valueInput) {
25
+ return;
26
+ }
27
+ const selection = selectionStartOf(element);
28
+ element.value = valueInput;
29
+ if (selection !== null) {
30
+ const offset = valueInput.length - rawInput.length;
31
+ const caret = Math.max(0, Math.min(selection + offset, valueInput.length));
32
+ element.setSelectionRange(caret, caret);
33
+ }
34
+ }
4
35
  function RlsInputComponent({ children, decimals, disabled, formControl, identifier, onBlur, onEnter, onFocus, onKeyDown, onKeyUp, onValue, placeholder, readOnly, type, value }) {
5
- const valueInitial = (formControl?.value ?? value) ? String(value) : '';
6
- const [valueInput, setValueInput] = useState(valueInitial);
36
+ const [valueInput, setValueInput] = useState(() => valueToInput(formControl?.value ?? value));
7
37
  const [focused, setFocused] = useState(false);
8
- const changeIsInternal = useRef(false);
38
+ const composing = useRef(false);
39
+ const valueSent = useRef(formControl?.value);
9
40
  useEffect(() => {
10
- if (!changeIsInternal.current && formControl) {
11
- const valueControl = formControl.value ? String(formControl.value) : '';
41
+ if (formControl && !Object.is(formControl.value, valueSent.current)) {
42
+ const valueControl = valueToInput(formControl.value);
12
43
  if (valueInput !== valueControl) {
13
44
  setValueInput(valueControl);
14
45
  }
15
46
  }
16
- changeIsInternal.current = false;
17
47
  }, [formControl?.value]);
18
- const onChangeInput = useCallback((event) => {
19
- const valueInput = event.target.value;
20
- const value = type === 'number'
21
- ? parseFloat((+valueInput).toFixed(decimals))
22
- : valueInput;
23
- changeIsInternal.current = true;
48
+ const applyInput = useCallback((element) => {
49
+ const rawInput = element.value;
50
+ const parsed = type === 'number'
51
+ ? parseFloat((+rawInput).toFixed(decimals))
52
+ : rawInput;
53
+ const formatter = formControl?.formatter;
54
+ const value = formatter && formControl?.formatOn !== 'blur' && !composing.current
55
+ ? formatter(parsed)
56
+ : parsed;
57
+ const textInput = Object.is(value, parsed)
58
+ ? rawInput
59
+ : type === 'number'
60
+ ? Number.isNaN(value)
61
+ ? ''
62
+ : String(value)
63
+ : valueToInput(value);
64
+ writeInputValue(element, textInput);
65
+ valueSent.current = value;
24
66
  onValue?.(value);
25
- setValueInput(valueInput);
67
+ setValueInput(textInput);
26
68
  formControl?.setValue(value);
27
69
  }, [formControl, onValue, type, decimals]);
70
+ const onChangeInput = useCallback((event) => {
71
+ applyInput(event.target);
72
+ }, [applyInput]);
73
+ const onCompositionStart = useCallback(() => {
74
+ composing.current = true;
75
+ }, []);
76
+ const onCompositionEnd = useCallback((event) => {
77
+ composing.current = false;
78
+ applyInput(event.currentTarget);
79
+ }, [applyInput]);
28
80
  const onKeyDownInput = useCallback((event) => {
29
81
  onKeyDown?.(event);
30
82
  if (event.key === 'Enter') {
@@ -48,7 +100,7 @@ function RlsInputComponent({ children, decimals, disabled, formControl, identifi
48
100
  disabled: formControl?.disabled || disabled,
49
101
  focused: formControl?.focused ?? focused
50
102
  });
51
- return (_jsxs("div", { id: identifier, className: className, children: [_jsx("input", { ref: formControl?.elementRef, className: "rls-input__component", autoComplete: "off", type: type ?? 'text', placeholder: placeholder, disabled: formControl?.disabled || disabled, readOnly: readOnly, onFocus: onFocusInput, onBlur: onBlurInput, onChange: onChangeInput, onKeyDown: onKeyDownInput, onKeyUp: onKeyUpInput, value: valueInput }), _jsx("span", { className: "rls-input__value", children: children })] }));
103
+ return (_jsxs("div", { id: identifier, className: className, children: [_jsx("input", { ref: formControl?.elementRef, className: "rls-input__component", autoComplete: "off", type: type ?? 'text', placeholder: placeholder, disabled: formControl?.disabled || disabled, readOnly: readOnly, onFocus: onFocusInput, onBlur: onBlurInput, onChange: onChangeInput, onCompositionStart: onCompositionStart, onCompositionEnd: onCompositionEnd, onKeyDown: onKeyDownInput, onKeyUp: onKeyUpInput, value: valueInput }), _jsx("span", { className: "rls-input__value", children: children })] }));
52
104
  }
53
105
  export const RlsInput = memo(RlsInputComponent);
54
106
  //# sourceMappingURL=Input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../../src/components/atoms/Input/Input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../../src/components/atoms/Input/Input.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,8 @@
1
1
  import { RlsComponent } from '../../definitions';
2
- declare function RlsSkeletonComponent({ rlsTheme }: RlsComponent): import("react/jsx-runtime").JSX.Element;
2
+ export type RlsSkeletonAnimation = 'shimmer' | 'pulse' | 'wave';
3
+ export interface SkeletonProps extends RlsComponent {
4
+ animation?: RlsSkeletonAnimation;
5
+ }
6
+ declare function RlsSkeletonComponent({ animation, rlsTheme }: SkeletonProps): import("react/jsx-runtime").JSX.Element;
3
7
  export declare const RlsSkeleton: import("react").MemoExoticComponent<typeof RlsSkeletonComponent>;
4
8
  export {};
@@ -1,7 +1,11 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { memo } from 'react';
3
- function RlsSkeletonComponent({ rlsTheme }) {
4
- return _jsx("div", { className: "rls-skeleton", "rls-theme": rlsTheme });
3
+ import { renderClassStatus } from '../../../helpers/css';
4
+ function RlsSkeletonComponent({ animation, rlsTheme }) {
5
+ const className = renderClassStatus('rls-skeleton', {
6
+ animation: animation !== 'shimmer' && animation
7
+ });
8
+ return _jsx("div", { className: className, "rls-theme": rlsTheme });
5
9
  }
6
10
  export const RlsSkeleton = memo(RlsSkeletonComponent);
7
11
  //# sourceMappingURL=Skeleton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../../src/components/atoms/Skeleton/Skeleton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,SAAS,oBAAoB,CAAC,EAAE,QAAQ,EAAgB;IACtD,OAAO,cAAK,SAAS,EAAC,cAAc,eAAY,QAAQ,GAAQ,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../../src/components/atoms/Skeleton/Skeleton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AASzD,SAAS,oBAAoB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAiB;IAClE,MAAM,SAAS,GAAG,iBAAiB,CAAC,cAAc,EAAE;QAClD,SAAS,EAAE,SAAS,KAAK,SAAS,IAAI,SAAS;KAChD,CAAC,CAAC;IAEH,OAAO,cAAK,SAAS,EAAE,SAAS,eAAa,QAAQ,GAAQ,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import { RlsComponent } from '../../definitions';
2
+ import { RlsSkeletonAnimation } from '../Skeleton/Skeleton';
2
3
  interface SkeletonTextProps extends RlsComponent {
3
4
  active?: boolean;
5
+ animation?: RlsSkeletonAnimation;
4
6
  }
5
- declare function RlsSkeletonTextComponent({ active, children, rlsTheme }: SkeletonTextProps): import("react/jsx-runtime").JSX.Element;
7
+ declare function RlsSkeletonTextComponent({ active, animation, children, rlsTheme }: SkeletonTextProps): import("react/jsx-runtime").JSX.Element;
6
8
  export declare const RlsSkeletonText: import("react").MemoExoticComponent<typeof RlsSkeletonTextComponent>;
7
9
  export {};
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { memo } from 'react';
3
3
  import { RlsSkeleton } from '../Skeleton/Skeleton';
4
- function RlsSkeletonTextComponent({ active, children, rlsTheme }) {
5
- return (_jsx("div", { className: "rls-skeleton-text", "rls-theme": rlsTheme, children: active ? (_jsx(RlsSkeleton, {})) : (_jsx("div", { className: "rls-skeleton-text__value", children: children })) }));
4
+ function RlsSkeletonTextComponent({ active, animation, children, rlsTheme }) {
5
+ return (_jsx("div", { className: "rls-skeleton-text", "rls-theme": rlsTheme, children: active ? (_jsx(RlsSkeleton, { animation: animation })) : (_jsx("div", { className: "rls-skeleton-text__value", children: children })) }));
6
6
  }
7
7
  export const RlsSkeletonText = memo(RlsSkeletonTextComponent);
8
8
  //# sourceMappingURL=SkeletonText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SkeletonText.js","sourceRoot":"","sources":["../../../../../src/components/atoms/SkeletonText/SkeletonText.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMnD,SAAS,wBAAwB,CAAC,EAChC,MAAM,EACN,QAAQ,EACR,QAAQ,EACU;IAClB,OAAO,CACL,cAAK,SAAS,EAAC,mBAAmB,eAAY,QAAQ,YACnD,MAAM,CAAC,CAAC,CAAC,CACR,KAAC,WAAW,KAAG,CAChB,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,0BAA0B,YAAE,QAAQ,GAAO,CAC3D,GACG,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"SkeletonText.js","sourceRoot":"","sources":["../../../../../src/components/atoms/SkeletonText/SkeletonText.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAwB,MAAM,sBAAsB,CAAC;AAOzE,SAAS,wBAAwB,CAAC,EAChC,MAAM,EACN,SAAS,EACT,QAAQ,EACR,QAAQ,EACU;IAClB,OAAO,CACL,cAAK,SAAS,EAAC,mBAAmB,eAAY,QAAQ,YACnD,MAAM,CAAC,CAAC,CAAC,CACR,KAAC,WAAW,IAAC,SAAS,EAAE,SAAS,GAAI,CACtC,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,0BAA0B,YAAE,QAAQ,GAAO,CAC3D,GACG,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { AreaTextProps, RolsterReactAreaTextControl } from '../../atoms/AreaText/AreaText';
2
2
  import { RlsComponent } from '../../definitions';
3
3
  interface FieldAreaProps extends AreaTextProps, RlsComponent {
4
+ counter?: boolean;
4
5
  formControl?: RolsterReactAreaTextControl<string>;
5
6
  msgErrorDisabled?: boolean;
6
7
  }
@@ -1,20 +1,34 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { memo, useMemo } from 'react';
2
+ import { memo, useCallback, useEffect, useMemo, useState } from 'react';
3
3
  import { renderClassStatus } from '../../../helpers/css';
4
4
  import { RlsAreaText } from '../../atoms/AreaText/AreaText';
5
5
  import { RlsMessageFormError } from '../MessageFormError/MessageFormError';
6
6
  function RlsFieldAreaComponent(props) {
7
- const { children, formControl, identifier, rlsTheme } = props;
7
+ const { children, formControl, identifier, maxLength, rlsTheme } = props;
8
+ const { onValue } = props;
8
9
  const disabled = useMemo(() => {
9
10
  return formControl?.disabled || props.disabled;
10
11
  }, [formControl?.disabled, props.disabled]);
12
+ const valueSource = formControl?.value ?? props.value;
13
+ const [valueLength, setValueLength] = useState(() => {
14
+ return (valueSource ?? '').length;
15
+ });
16
+ useEffect(() => {
17
+ if (valueSource !== undefined) {
18
+ setValueLength(valueSource.length);
19
+ }
20
+ }, [valueSource]);
21
+ const onValueArea = useCallback((value) => {
22
+ setValueLength(value.length);
23
+ onValue?.(value);
24
+ }, [onValue]);
11
25
  const className = renderClassStatus('rls-field-box', {
12
26
  disabled,
13
27
  error: formControl?.wrong,
14
28
  focused: formControl?.focused && !disabled,
15
29
  readonly: props.readOnly
16
30
  }, 'rls-field-area');
17
- return (_jsxs("div", { id: identifier, className: className, "rls-theme": rlsTheme, children: [children && _jsx("span", { className: "rls-field-box__label", children: children }), _jsx("div", { className: "rls-field-box__component", children: _jsx("div", { className: "rls-field-box__body", children: _jsx(RlsAreaText, { ...props }) }) }), !props.msgErrorDisabled && (_jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
31
+ return (_jsxs("div", { id: identifier, className: className, "rls-theme": rlsTheme, children: [children && _jsx("span", { className: "rls-field-box__label", children: children }), _jsx("div", { className: "rls-field-box__component", children: _jsx("div", { className: "rls-field-box__body", children: _jsx(RlsAreaText, { ...props, onValue: onValueArea }) }) }), props.counter && (_jsx("span", { className: "rls-field-box__helper rls-field-area__counter", children: maxLength ? `${valueLength} / ${maxLength}` : valueLength })), !props.msgErrorDisabled && (_jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
18
32
  }
19
33
  export const RlsFieldArea = memo(RlsFieldAreaComponent);
20
34
  //# sourceMappingURL=FieldArea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldArea.js","sourceRoot":"","sources":["../../../../../src/components/molecules/FieldArea/FieldArea.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAEL,WAAW,EAEZ,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAO3E,SAAS,qBAAqB,CAAC,KAAqB;IAClD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE9D,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,OAAO,WAAW,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;IACjD,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE5C,MAAM,SAAS,GAAG,iBAAiB,CACjC,eAAe,EACf;QACE,QAAQ;QACR,KAAK,EAAE,WAAW,EAAE,KAAK;QACzB,OAAO,EAAE,WAAW,EAAE,OAAO,IAAI,CAAC,QAAQ;QAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,EACD,gBAAgB,CACjB,CAAC;IAEF,OAAO,CACL,eAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,eAAa,QAAQ,aAC3D,QAAQ,IAAI,eAAM,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAQ,EAErE,cAAK,SAAS,EAAC,0BAA0B,YACvC,cAAK,SAAS,EAAC,qBAAqB,YAClC,KAAC,WAAW,OAAK,KAAK,GAAI,GACtB,GACF,EAEL,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAC1B,KAAC,mBAAmB,IAClB,SAAS,EAAC,sBAAsB,EAChC,WAAW,EAAE,WAAW,GACxB,CACH,IACG,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"FieldArea.js","sourceRoot":"","sources":["../../../../../src/components/molecules/FieldArea/FieldArea.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAEL,WAAW,EAEZ,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAQ3E,SAAS,qBAAqB,CAAC,KAAqB;IAClD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEzE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE1B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,OAAO,WAAW,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;IACjD,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAG,WAAW,EAAE,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;IAEtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QAClD,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAa,EAAE,EAAE;QAChB,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,SAAS,GAAG,iBAAiB,CACjC,eAAe,EACf;QACE,QAAQ;QACR,KAAK,EAAE,WAAW,EAAE,KAAK;QACzB,OAAO,EAAE,WAAW,EAAE,OAAO,IAAI,CAAC,QAAQ;QAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,EACD,gBAAgB,CACjB,CAAC;IAEF,OAAO,CACL,eAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,eAAa,QAAQ,aAC3D,QAAQ,IAAI,eAAM,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAQ,EAErE,cAAK,SAAS,EAAC,0BAA0B,YACvC,cAAK,SAAS,EAAC,qBAAqB,YAClC,KAAC,WAAW,OAAK,KAAK,EAAE,OAAO,EAAE,WAAW,GAAI,GAC5C,GACF,EAEL,KAAK,CAAC,OAAO,IAAI,CAChB,eAAM,SAAS,EAAC,+CAA+C,YAC5D,SAAS,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,WAAW,GACrD,CACR,EAEA,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAC1B,KAAC,mBAAmB,IAClB,SAAS,EAAC,sBAAsB,EAChC,WAAW,EAAE,WAAW,GACxB,CACH,IACG,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolster/react-components",
3
- "version": "19.8.21",
3
+ "version": "19.9.0",
4
4
  "type": "module",
5
5
  "description": "Package containing UI components for React Project.",
6
6
  "license": "MIT",
@@ -43,14 +43,14 @@
43
43
  "@rolster/dates": "^4.1.7",
44
44
  "@rolster/i18n": "^3.1.4",
45
45
  "@rolster/react": "^19.0.1",
46
- "@rolster/react-forms": "^19.5.11",
46
+ "@rolster/react-forms": "^19.6.0",
47
47
  "@rolster/strings": "^3.1.2",
48
48
  "react-dom": "^19.2.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@eslint/js": "^10.0.1",
52
52
  "@rolster/rollup": "^2.2.0",
53
- "@rolster/styles-foundations": "^3.5.22",
53
+ "@rolster/styles-foundations": "^3.5.24",
54
54
  "@rolster/types": "^1.1.1",
55
55
  "@types/react": "^19.0.0",
56
56
  "@types/react-dom": "^19.0.0",