@axelor/aos-mobile-ui 7.0.2 → 7.1.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.
Files changed (52) hide show
  1. package/lib/components/atoms/Icon/Icon.js +4 -6
  2. package/lib/components/atoms/Icon/Icon.js.map +1 -1
  3. package/lib/components/atoms/Input/Input.d.ts +5 -2
  4. package/lib/components/atoms/Input/Input.js +5 -4
  5. package/lib/components/atoms/Input/Input.js.map +1 -1
  6. package/lib/components/molecules/FormHtmlInput/FormHtmlInput.js +5 -2
  7. package/lib/components/molecules/FormHtmlInput/FormHtmlInput.js.map +1 -1
  8. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.d.ts +8 -3
  9. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.js +2 -2
  10. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.js.map +1 -1
  11. package/lib/components/molecules/FormInput/FormInput.d.ts +6 -1
  12. package/lib/components/molecules/FormInput/FormInput.js +18 -3
  13. package/lib/components/molecules/FormInput/FormInput.js.map +1 -1
  14. package/lib/components/molecules/IconInput/IconInput.d.ts +4 -2
  15. package/lib/components/molecules/IconInput/IconInput.js +2 -2
  16. package/lib/components/molecules/IconInput/IconInput.js.map +1 -1
  17. package/lib/components/molecules/Increment/Increment.d.ts +6 -1
  18. package/lib/components/molecules/Increment/Increment.js +49 -51
  19. package/lib/components/molecules/Increment/Increment.js.map +1 -1
  20. package/lib/components/molecules/Increment/IncrementButton.d.ts +10 -0
  21. package/lib/components/molecules/Increment/IncrementButton.js +56 -0
  22. package/lib/components/molecules/Increment/IncrementButton.js.map +1 -0
  23. package/lib/components/molecules/NotesCard/NotesCard.js +4 -4
  24. package/lib/components/molecules/NotesCard/NotesCard.js.map +1 -1
  25. package/lib/components/organisms/AutoCompleteSearch/AutoCompleteSearch.js +22 -4
  26. package/lib/components/organisms/AutoCompleteSearch/AutoCompleteSearch.js.map +1 -1
  27. package/lib/components/organisms/AutoCompleteSearch/SearchDetailsPopUp.js +6 -11
  28. package/lib/components/organisms/AutoCompleteSearch/SearchDetailsPopUp.js.map +1 -1
  29. package/lib/components/organisms/HeaderContainer/HeaderContainer.d.ts +2 -1
  30. package/lib/components/organisms/HeaderContainer/HeaderContainer.js +4 -4
  31. package/lib/components/organisms/HeaderContainer/HeaderContainer.js.map +1 -1
  32. package/lib/components/organisms/MultiValuePicker/MultiValuePicker.js +16 -3
  33. package/lib/components/organisms/MultiValuePicker/MultiValuePicker.js.map +1 -1
  34. package/lib/components/organisms/SearchBar/SearchBar.d.ts +4 -1
  35. package/lib/components/organisms/SearchBar/SearchBar.js +2 -2
  36. package/lib/components/organisms/SearchBar/SearchBar.js.map +1 -1
  37. package/lib/components/templates/ObjectCard/ObjectCard.d.ts +8 -2
  38. package/lib/components/templates/ObjectCard/ObjectCard.js +20 -2
  39. package/lib/components/templates/ObjectCard/ObjectCard.js.map +1 -1
  40. package/lib/config/ConfigContext.d.ts +2 -0
  41. package/lib/config/ConfigContext.js +18 -0
  42. package/lib/config/ConfigContext.js.map +1 -1
  43. package/lib/hooks/use-digit-format.d.ts +1 -0
  44. package/lib/hooks/use-digit-format.js +33 -0
  45. package/lib/hooks/use-digit-format.js.map +1 -0
  46. package/lib/index.d.ts +1 -0
  47. package/lib/index.js +1 -0
  48. package/lib/index.js.map +1 -1
  49. package/lib/utils/formatters.d.ts +1 -1
  50. package/lib/utils/formatters.js +14 -4
  51. package/lib/utils/formatters.js.map +1 -1
  52. package/package.json +1 -1
@@ -16,7 +16,7 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useMemo } from 'react';
19
- import { StyleSheet, TouchableOpacity, View } from 'react-native';
19
+ import { StyleSheet, TouchableOpacity } from 'react-native';
20
20
  import Icon5 from 'react-native-vector-icons/FontAwesome5';
21
21
  import Icon4 from 'react-native-vector-icons/FontAwesome';
22
22
  import { useThemeColor } from '../../../theme/ThemeContext';
@@ -28,11 +28,9 @@ const Icon = ({ style, name, FontAwesome5 = true, color, size = 18, touchable =
28
28
  if (!visible) {
29
29
  return null;
30
30
  }
31
- return (<View style={[styles.container, style]}>
32
- <TouchableOpacity onPress={onPress} disabled={!touchable || disabled}>
33
- {FontAwesome5 ? (<Icon5 name={name} style={styles.icon}/>) : (<Icon4 name={name} style={styles.icon}/>)}
34
- </TouchableOpacity>
35
- </View>);
31
+ return (<TouchableOpacity style={[styles.container, style]} onPress={onPress} disabled={!touchable || disabled}>
32
+ {FontAwesome5 ? (<Icon5 name={name} style={styles.icon}/>) : (<Icon4 name={name} style={styles.icon}/>)}
33
+ </TouchableOpacity>);
36
34
  };
37
35
  const getStyles = (Colors, color, disabled, size) => StyleSheet.create({
38
36
  icon: {
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../../src/components/atoms/Icon/Icon.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,MAAM,wCAAwC,CAAC;AAC3D,OAAO,KAAK,MAAM,uCAAuC,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAc1D,MAAM,IAAI,GAAG,CAAC,EACZ,KAAK,EACL,IAAI,EACJ,YAAY,GAAG,IAAI,EACnB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,IAAI,EACd,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,QAAQ,GAAG,KAAK,GACN,EAAE,EAAE;IACd,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,OAAO,SAAS,CACd,MAAM,EACN,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAC7D,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAC5B,IAAI,CACL,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAE/C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,CACnE;QAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAC1C,CAAC,CAAC,CAAC,CACF,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAC1C,CACH;MAAA,EAAE,gBAAgB,CACpB;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAClD,UAAU,CAAC,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK;QAChE,QAAQ,EAAE,IAAI;KACf;IACD,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;KACrB;CACF,CAAC,CAAC;AAEL,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../../src/components/atoms/Icon/Icon.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,MAAM,wCAAwC,CAAC;AAC3D,OAAO,KAAK,MAAM,uCAAuC,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAc1D,MAAM,IAAI,GAAG,CAAC,EACZ,KAAK,EACL,IAAI,EACJ,YAAY,GAAG,IAAI,EACnB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,IAAI,EACd,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,QAAQ,GAAG,KAAK,GACN,EAAE,EAAE;IACd,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,OAAO,SAAS,CACd,MAAM,EACN,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAC7D,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAC5B,IAAI,CACL,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAE/C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACjC,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,CACjC;MAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAC1C,CAAC,CAAC,CAAC,CACF,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAC1C,CACH;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAClD,UAAU,CAAC,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK;QAChE,QAAQ,EAAE,IAAI;KACf;IACD,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;KACrB;CACF,CAAC,CAAC;AAEL,eAAe,IAAI,CAAC"}
@@ -1,6 +1,8 @@
1
- import { KeyboardTypeOptions } from 'react-native';
1
+ import { LegacyRef } from 'react';
2
+ import { KeyboardTypeOptions, NativeSyntheticEvent, TextInput, TextInputContentSizeChangeEventData } from 'react-native';
2
3
  interface InputProps {
3
4
  style?: any;
5
+ inputRef?: LegacyRef<TextInput>;
4
6
  value: string;
5
7
  onChange: (any: any) => void;
6
8
  placeholder?: string;
@@ -13,6 +15,7 @@ interface InputProps {
13
15
  onEndFocus?: () => void;
14
16
  isFocus?: boolean;
15
17
  writingType?: 'title' | 'subtitle' | 'important' | 'details' | undefined;
18
+ onContentSizeChange?: (e: NativeSyntheticEvent<TextInputContentSizeChangeEventData>) => void;
16
19
  }
17
- declare const Input: ({ style, value, onChange, placeholder, secureTextEntry, readOnly, onSelection, multiline, numberOfLines, keyboardType, onEndFocus, isFocus, writingType, }: InputProps) => JSX.Element;
20
+ declare const Input: ({ style, inputRef, value, onChange, placeholder, secureTextEntry, readOnly, onSelection, multiline, numberOfLines, keyboardType, onEndFocus, isFocus, writingType, onContentSizeChange, }: InputProps) => JSX.Element;
18
21
  export default Input;
@@ -16,11 +16,11 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useMemo } from 'react';
19
- import { TextInput } from 'react-native';
19
+ import { TextInput, } from 'react-native';
20
20
  import { useThemeColor } from '../../../theme/ThemeContext';
21
21
  import { useWritingType } from '../../../theme/writingTheme';
22
22
  import { useConfig } from '../../../config/ConfigContext';
23
- const Input = ({ style, value, onChange, placeholder, secureTextEntry = false, readOnly = false, onSelection, multiline = false, numberOfLines = 1, keyboardType, onEndFocus = () => { }, isFocus = false, writingType, }) => {
23
+ const Input = ({ style, inputRef, value, onChange, placeholder, secureTextEntry = false, readOnly = false, onSelection, multiline = false, numberOfLines = 1, keyboardType, onEndFocus = () => { }, isFocus = false, writingType, onContentSizeChange, }) => {
24
24
  const Colors = useThemeColor();
25
25
  const { hideVirtualKeyboard } = useConfig();
26
26
  const writingStyle = useWritingType(writingType);
@@ -29,9 +29,10 @@ const Input = ({ style, value, onChange, placeholder, secureTextEntry = false, r
29
29
  ...writingStyle,
30
30
  color: Colors.text,
31
31
  fontSize: 15,
32
+ textAlignVertical: multiline ? 'top' : 'center',
32
33
  };
33
- }, [Colors.text, writingStyle]);
34
- return (<TextInput style={[defaultStyle, style]} value={value} onChangeText={onChange} placeholder={placeholder} secureTextEntry={secureTextEntry} autoCapitalize="none" editable={!readOnly} onFocus={onSelection} placeholderTextColor={Colors.placeholderTextColor} keyboardType={keyboardType} multiline={multiline} numberOfLines={numberOfLines} onBlur={onEndFocus} showSoftInputOnFocus={hideVirtualKeyboard ? false : true} autoFocus={isFocus}/>);
34
+ }, [Colors.text, multiline, writingStyle]);
35
+ return (<TextInput ref={inputRef} style={[defaultStyle, style]} value={value} onChangeText={onChange} placeholder={placeholder} secureTextEntry={secureTextEntry} autoCapitalize="none" editable={!readOnly} onFocus={onSelection} placeholderTextColor={Colors.placeholderTextColor} keyboardType={keyboardType} multiline={multiline} numberOfLines={numberOfLines} onBlur={onEndFocus} showSoftInputOnFocus={hideVirtualKeyboard ? false : true} autoFocus={isFocus} onContentSizeChange={onContentSizeChange}/>);
35
36
  };
36
37
  export default Input;
37
38
  //# sourceMappingURL=Input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/components/atoms/Input/Input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAsB,SAAS,EAAY,MAAM,cAAc,CAAC;AACvE,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAC;AAkBxD,MAAM,KAAK,GAAG,CAAC,EACb,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAW,EACX,eAAe,GAAG,KAAK,EACvB,QAAQ,GAAG,KAAK,EAChB,WAAW,EACX,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,CAAC,EACjB,YAAY,EACZ,UAAU,GAAG,GAAG,EAAE,GAAE,CAAC,EACrB,OAAO,GAAG,KAAK,EACf,WAAW,GACA,EAAE,EAAE;IACf,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,EAAC,mBAAmB,EAAC,GAAG,SAAS,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAEjD,MAAM,YAAY,GAAc,OAAO,CAAC,GAAG,EAAE;QAC3C,OAAO;YACL,GAAG,YAAY;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;YAClB,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhC,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAC7B,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,YAAY,CAAC,CAAC,QAAQ,CAAC,CACvB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,cAAc,CAAC,MAAM,CACrB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACpB,OAAO,CAAC,CAAC,WAAW,CAAC,CACrB,oBAAoB,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAClD,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,MAAM,CAAC,CAAC,UAAU,CAAC,CACnB,oBAAoB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CACzD,SAAS,CAAC,CAAC,OAAO,CAAC,EACnB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/components/atoms/Input/Input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAY,OAAO,EAAC,MAAM,OAAO,CAAC;AAChD,OAAO,EAGL,SAAS,GAGV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAC;AAsBxD,MAAM,KAAK,GAAG,CAAC,EACb,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,WAAW,EACX,eAAe,GAAG,KAAK,EACvB,QAAQ,GAAG,KAAK,EAChB,WAAW,EACX,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,CAAC,EACjB,YAAY,EACZ,UAAU,GAAG,GAAG,EAAE,GAAE,CAAC,EACrB,OAAO,GAAG,KAAK,EACf,WAAW,EACX,mBAAmB,GACR,EAAE,EAAE;IACf,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,EAAC,mBAAmB,EAAC,GAAG,SAAS,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAEjD,MAAM,YAAY,GAAc,OAAO,CAAC,GAAG,EAAE;QAC3C,OAAO;YACL,GAAG,YAAY;YACf,KAAK,EAAE,MAAM,CAAC,IAAI;YAClB,QAAQ,EAAE,EAAE;YACZ,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;SAChD,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAE3C,OAAO,CACL,CAAC,SAAS,CACR,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAC7B,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,YAAY,CAAC,CAAC,QAAQ,CAAC,CACvB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,cAAc,CAAC,MAAM,CACrB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACpB,OAAO,CAAC,CAAC,WAAW,CAAC,CACrB,oBAAoB,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAClD,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,MAAM,CAAC,CAAC,UAAU,CAAC,CACnB,oBAAoB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CACzD,SAAS,CAAC,CAAC,OAAO,CAAC,CACnB,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,EACzC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -15,7 +15,7 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
- import React, { useCallback, useMemo, useState } from 'react';
18
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
19
19
  import { StyleSheet, View } from 'react-native';
20
20
  import { HtmlInput, Text } from '../../atoms';
21
21
  import { useThemeColor } from '../../../theme/ThemeContext';
@@ -25,6 +25,9 @@ const FormHtmlInput = ({ title, placeholder = '', defaultValue = null, readonly
25
25
  const [value, setValue] = useState(defaultValue);
26
26
  const [isFocused, setIsFocused] = useState(false);
27
27
  const _required = useMemo(() => required && (value == null || value === ''), [required, value]);
28
+ useEffect(() => {
29
+ setValue(defaultValue);
30
+ }, [defaultValue]);
28
31
  const onValueChange = useCallback(_value => {
29
32
  setValue(_value);
30
33
  onChange(_value);
@@ -50,7 +53,7 @@ const FormHtmlInput = ({ title, placeholder = '', defaultValue = null, readonly
50
53
  };
51
54
  const getStyles = (Colors, _required) => StyleSheet.create({
52
55
  content: {
53
- width: '90%',
56
+ width: '100%',
54
57
  borderColor: _required
55
58
  ? Colors.errorColor.background
56
59
  : Colors.secondaryColor.background,
@@ -1 +1 @@
1
- {"version":3,"file":"FormHtmlInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormHtmlInput/FormHtmlInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormHtmlInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormHtmlInput/FormHtmlInput.tsx"],"names":[],"mappings":"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"}
@@ -4,8 +4,13 @@ interface FormIncrementInputProps {
4
4
  readOnly?: boolean;
5
5
  defaultValue?: string;
6
6
  onChange: (value: any) => void;
7
- decimalSpacer: string;
8
- thousandSpacer: string;
7
+ decimalSpacer?: string;
8
+ thousandSpacer?: string;
9
+ defaultFormatting?: boolean;
10
+ stepSize?: number;
11
+ minValue?: number;
12
+ maxValue?: number;
13
+ isBigButton?: boolean;
9
14
  }
10
- declare const FormIncrementInput: ({ style, title, readOnly, defaultValue, decimalSpacer, thousandSpacer, onChange, }: FormIncrementInputProps) => JSX.Element;
15
+ declare const FormIncrementInput: ({ style, title, readOnly, defaultValue, decimalSpacer, thousandSpacer, onChange, defaultFormatting, stepSize, minValue, maxValue, isBigButton, }: FormIncrementInputProps) => JSX.Element;
11
16
  export default FormIncrementInput;
@@ -21,7 +21,7 @@ import { useThemeColor } from '../../../theme/ThemeContext';
21
21
  import { Text } from '../../atoms';
22
22
  import { getCommonStyles } from '../../../utils/commons-styles';
23
23
  import Increment from '../Increment/Increment';
24
- const FormIncrementInput = ({ style, title, readOnly = false, defaultValue = null, decimalSpacer, thousandSpacer, onChange, }) => {
24
+ const FormIncrementInput = ({ style, title, readOnly = false, defaultValue = null, decimalSpacer, thousandSpacer, onChange, defaultFormatting = true, stepSize = 1, minValue = 0, maxValue = null, isBigButton = false, }) => {
25
25
  const Colors = useThemeColor();
26
26
  const [isFocused, setIsFocused] = useState(false);
27
27
  const commonStyles = useMemo(() => getCommonStyles(Colors), [Colors]);
@@ -41,7 +41,7 @@ const FormIncrementInput = ({ style, title, readOnly = false, defaultValue = nul
41
41
  styles.content,
42
42
  isFocused && commonStyles.inputFocused,
43
43
  ]}>
44
- <Increment value={defaultValue} onValueChange={onChange} style={styles.increment} inputStyle={styles.containerInput} decimalSpacer={decimalSpacer} thousandSpacer={thousandSpacer} onFocus={handleFocus} onBlur={handleBlur} readonly={readOnly}/>
44
+ <Increment value={defaultValue} onValueChange={onChange} style={styles.increment} inputStyle={styles.containerInput} decimalSpacer={decimalSpacer} thousandSpacer={thousandSpacer} onFocus={handleFocus} onBlur={handleBlur} readonly={readOnly} defaultFormatting={defaultFormatting} stepSize={stepSize} minValue={minValue} maxValue={maxValue} isBigButton={isBigButton}/>
45
45
  </View>
46
46
  </View>);
47
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FormIncrementInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormIncrementInput/FormIncrementInput.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AACjC,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAY/C,MAAM,kBAAkB,GAAG,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,QAAQ,GAAG,KAAK,EAChB,YAAY,GAAG,IAAI,EACnB,aAAa,EACb,cAAc,EACd,QAAQ,GACgB,EAAE,EAAE;IAC5B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1D,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CACjB;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CACxC;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,YAAY,CAAC,MAAM;YACnB,YAAY,CAAC,WAAW;YACxB,YAAY,CAAC,UAAU;YACvB,MAAM,CAAC,OAAO;YACd,SAAS,IAAI,YAAY,CAAC,YAAY;SACvC,CAAC,CACF;QAAA,CAAC,SAAS,CACR,KAAK,CAAC,CAAC,YAAY,CAAC,CACpB,aAAa,CAAC,CAAC,QAAQ,CAAC,CACxB,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CACxB,UAAU,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAClC,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,cAAc,CAAC,CAAC,cAAc,CAAC,CAC/B,OAAO,CAAC,CAAC,WAAW,CAAC,CACrB,MAAM,CAAC,CAAC,UAAU,CAAC,CACnB,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAEvB;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CACzB,UAAU,CAAC,MAAM,CAAC;IAChB,KAAK,EAAE;QACL,UAAU,EAAE,EAAE;KACf;IACD,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,eAAe;QAC/B,KAAK,EAAE,MAAM;KACd;IACD,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,UAAU;QAC7C,WAAW,EAAE,CAAC;QACd,iBAAiB,EAAE,CAAC;KACrB;IACD,cAAc,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;CACF,CAAC,CAAC;AAEL,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"FormIncrementInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormIncrementInput/FormIncrementInput.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { KeyboardTypeOptions } from 'react-native';
1
2
  interface FormInputProps {
2
3
  title: string;
3
4
  defaultValue?: string;
@@ -6,6 +7,10 @@ interface FormInputProps {
6
7
  required?: boolean;
7
8
  onChange?: (any: any) => void;
8
9
  onSelection?: () => void;
10
+ onEndFocus?: () => void;
11
+ keyboardType?: KeyboardTypeOptions;
12
+ multiline: boolean;
13
+ adjustHeightWithLines?: boolean;
9
14
  }
10
- declare const FormInput: ({ title, defaultValue, readOnly, style, required, onChange, onSelection, }: FormInputProps) => JSX.Element;
15
+ declare const FormInput: ({ title, defaultValue, readOnly, style, required, onChange, onSelection, onEndFocus, keyboardType, multiline, adjustHeightWithLines, }: FormInputProps) => JSX.Element;
11
16
  export default FormInput;
@@ -15,13 +15,14 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
- import React, { useCallback, useMemo, useState } from 'react';
18
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
19
19
  import { StyleSheet, View } from 'react-native';
20
20
  import { Input, Text } from '../../atoms';
21
21
  import { useThemeColor } from '../../../theme/ThemeContext';
22
22
  import { getCommonStyles } from '../../../utils/commons-styles';
23
- const FormInput = ({ title, defaultValue = null, readOnly, style, required = false, onChange = () => { }, onSelection = () => { }, }) => {
23
+ const FormInput = ({ title, defaultValue = null, readOnly, style, required = false, onChange = () => { }, onSelection = () => { }, onEndFocus = () => { }, keyboardType, multiline = false, adjustHeightWithLines = false, }) => {
24
24
  const Colors = useThemeColor();
25
+ const [textHeight, setTextHeight] = useState(40);
25
26
  const [value, setValue] = useState(defaultValue);
26
27
  const [isFocused, setIsFocused] = useState(false);
27
28
  const _required = useMemo(() => required && (value == null || value === ''), [required, value]);
@@ -37,7 +38,11 @@ const FormInput = ({ title, defaultValue = null, readOnly, style, required = fal
37
38
  };
38
39
  const handleEndFocus = () => {
39
40
  setIsFocused(false);
41
+ onEndFocus();
40
42
  };
43
+ useEffect(() => {
44
+ setValue(defaultValue);
45
+ }, [defaultValue]);
41
46
  return (<View style={[styles.container, style]}>
42
47
  <Text style={styles.title}>{title}</Text>
43
48
  <View style={[
@@ -46,14 +51,23 @@ const FormInput = ({ title, defaultValue = null, readOnly, style, required = fal
46
51
  commonStyles.filterAlign,
47
52
  styles.content,
48
53
  isFocused && commonStyles.inputFocused,
54
+ adjustHeightWithLines && {
55
+ height: parseInt(textHeight.toString(), 10),
56
+ },
49
57
  ]}>
50
- <Input style={styles.input} value={value} onChange={onValueChange} onSelection={handleSelection} onEndFocus={handleEndFocus} numberOfLines={null} readOnly={readOnly}/>
58
+ <Input style={styles.input} value={value} onChange={onValueChange} onSelection={handleSelection} onEndFocus={handleEndFocus} keyboardType={keyboardType} numberOfLines={null} readOnly={readOnly} multiline={multiline} onContentSizeChange={e => {
59
+ const { height } = e.nativeEvent.contentSize;
60
+ if (adjustHeightWithLines) {
61
+ setTextHeight(height);
62
+ }
63
+ }}/>
51
64
  </View>
52
65
  </View>);
53
66
  };
54
67
  const getStyles = (Colors, _required) => StyleSheet.create({
55
68
  container: {
56
69
  width: '100%',
70
+ minHeight: 62,
57
71
  },
58
72
  content: {
59
73
  width: '100%',
@@ -62,6 +76,7 @@ const getStyles = (Colors, _required) => StyleSheet.create({
62
76
  : Colors.secondaryColor.background,
63
77
  borderWidth: 1,
64
78
  marginHorizontal: 0,
79
+ minHeight: 40,
65
80
  },
66
81
  input: {
67
82
  width: '100%',
@@ -1 +1 @@
1
- {"version":3,"file":"FormInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormInput/FormInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/FormInput/FormInput.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACvE,OAAO,EAAsB,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACnE,OAAO,EAAC,KAAK,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAgB9D,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,YAAY,GAAG,IAAI,EACnB,QAAQ,EACR,KAAK,EACL,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EACnB,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,EACtB,UAAU,GAAG,GAAG,EAAE,GAAE,CAAC,EACrB,YAAY,EACZ,SAAS,GAAG,KAAK,EACjB,qBAAqB,GAAG,KAAK,GACd,EAAE,EAAE;IACnB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC,EACjD,CAAC,QAAQ,EAAE,KAAK,CAAC,CAClB,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAC/B,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjB,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,EACxC,CAAC,MAAM,EAAE,SAAS,CAAC,CACpB,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,EAClC,CAAC,MAAM,EAAE,SAAS,CAAC,CACpB,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,UAAU,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CACxC;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,YAAY,CAAC,MAAM;YACnB,YAAY,CAAC,UAAU;YACvB,YAAY,CAAC,WAAW;YACxB,MAAM,CAAC,OAAO;YACd,SAAS,IAAI,YAAY,CAAC,YAAY;YACtC,qBAAqB,IAAI;gBACvB,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;aAC5C;SACF,CAAC,CACF;QAAA,CAAC,KAAK,CACJ,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,aAAa,CAAC,CACxB,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,UAAU,CAAC,CAAC,cAAc,CAAC,CAC3B,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,aAAa,CAAC,CAAC,IAAI,CAAC,CACpB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,EAAC,MAAM,EAAC,GAAG,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;YAC3C,IAAI,qBAAqB,EAAE;gBACzB,aAAa,CAAC,MAAM,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,EAEN;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAmB,EAAE,SAAkB,EAAE,EAAE,CAC5D,UAAU,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,EAAE;KACd;IACD,OAAO,EAAE;QACP,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,SAAS;YACpB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU;YAC9B,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU;QACpC,WAAW,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;QACnB,SAAS,EAAE,EAAE;KACd;IACD,KAAK,EAAE;QACL,KAAK,EAAE,MAAM;KACd;IACD,KAAK,EAAE;QACL,UAAU,EAAE,EAAE;KACf;CACF,CAAC,CAAC;AAEL,eAAe,SAAS,CAAC"}
@@ -1,6 +1,8 @@
1
- import { KeyboardTypeOptions } from 'react-native';
1
+ import { LegacyRef } from 'react';
2
+ import { KeyboardTypeOptions, TextInput } from 'react-native';
2
3
  interface IconInputProps {
3
4
  style?: any;
5
+ inputRef?: LegacyRef<TextInput>;
4
6
  value: string;
5
7
  onChange: (value: any) => void;
6
8
  placeholder: string;
@@ -16,5 +18,5 @@ interface IconInputProps {
16
18
  leftIconsList?: any[];
17
19
  rightIconsList?: any[];
18
20
  }
19
- declare const IconInput: ({ style, value, onChange, placeholder, readOnly, required, secureTextEntry, onSelection, multiline, numberOfLines, keyboardType, onEndFocus, isFocus, leftIconsList, rightIconsList, }: IconInputProps) => JSX.Element;
21
+ declare const IconInput: ({ style, inputRef, value, onChange, placeholder, readOnly, required, secureTextEntry, onSelection, multiline, numberOfLines, keyboardType, onEndFocus, isFocus, leftIconsList, rightIconsList, }: IconInputProps) => JSX.Element;
20
22
  export default IconInput;
@@ -21,7 +21,7 @@ import { getCommonStyles } from '../../../utils/commons-styles';
21
21
  import { useThemeColor } from '../../../theme/ThemeContext';
22
22
  import { Input } from '../../atoms';
23
23
  import { checkNullString } from '../../../utils/strings';
24
- const IconInput = ({ style, value, onChange, placeholder, readOnly, required = false, secureTextEntry, onSelection = () => { }, multiline, numberOfLines, keyboardType, onEndFocus = () => { }, isFocus = false, leftIconsList = [], rightIconsList = [], }) => {
24
+ const IconInput = ({ style, inputRef, value, onChange, placeholder, readOnly, required = false, secureTextEntry, onSelection = () => { }, multiline, numberOfLines, keyboardType, onEndFocus = () => { }, isFocus = false, leftIconsList = [], rightIconsList = [], }) => {
25
25
  const Colors = useThemeColor();
26
26
  const styles = useMemo(() => getStyles(Colors), [Colors]);
27
27
  const [isFocused, setIsFocused] = useState(false);
@@ -37,7 +37,7 @@ const IconInput = ({ style, value, onChange, placeholder, readOnly, required = f
37
37
  };
38
38
  return (<View style={[styles.container, isFocused && commonStyles.inputFocused, style]}>
39
39
  {leftIconsList.map((iconComponent, index) => React.cloneElement(iconComponent, { key: index }))}
40
- <Input style={styles.input} value={value} onChange={onChange} placeholder={placeholder} readOnly={readOnly} secureTextEntry={secureTextEntry} onSelection={handleSelection} multiline={multiline} numberOfLines={numberOfLines} keyboardType={keyboardType} onEndFocus={handleEndFocus} isFocus={isFocus}/>
40
+ <Input inputRef={inputRef} style={styles.input} value={value} onChange={onChange} placeholder={placeholder} readOnly={readOnly} secureTextEntry={secureTextEntry} onSelection={handleSelection} multiline={multiline} numberOfLines={numberOfLines} keyboardType={keyboardType} onEndFocus={handleEndFocus} isFocus={isFocus}/>
41
41
  {rightIconsList.map((iconComponent, index) => React.cloneElement(iconComponent, { key: index }))}
42
42
  </View>);
43
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"IconInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/IconInput/IconInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IconInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/IconInput/IconInput.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAY,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAsB,UAAU,EAAa,IAAI,EAAC,MAAM,cAAc,CAAC;AAE9E,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAClC,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAqBvD,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,QAAQ,GAAG,KAAK,EAChB,eAAe,EACf,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,EACtB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,UAAU,GAAG,GAAG,EAAE,GAAE,CAAC,EACrB,OAAO,GAAG,KAAK,EACf,aAAa,GAAG,EAAE,EAClB,cAAc,GAAG,EAAE,GACJ,EAAE,EAAE;IACnB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,EACxC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAClB,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,EACxC,CAAC,MAAM,EAAE,SAAS,CAAC,CACpB,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,UAAU,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,IAAI,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CACzE;MAAA,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAChD,CACD;MAAA,CAAC,KAAK,CACJ,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,UAAU,CAAC,CAAC,cAAc,CAAC,CAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,EAEnB;MAAA,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,CAC3C,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAChD,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAmB,EAAE,EAAE,CACxC,UAAU,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,UAAU;QAC7C,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,eAAe;QAC/B,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,gBAAgB,EAAE,EAAE;QACpB,cAAc,EAAE,CAAC;QACjB,SAAS,EAAE,EAAE;KACd;IACD,KAAK,EAAE;QACL,IAAI,EAAE,CAAC;KACR;CACF,CAAC,CAAC;AAEL,eAAe,SAAS,CAAC"}
@@ -8,6 +8,11 @@ interface IncrementProps {
8
8
  onFocus?: () => void;
9
9
  onBlur?: () => void;
10
10
  readonly?: boolean;
11
+ defaultFormatting?: boolean;
12
+ stepSize?: number;
13
+ minValue?: number;
14
+ maxValue?: number;
15
+ isBigButton?: boolean;
11
16
  }
12
- declare const Increment: ({ style, inputStyle, value, decimalSpacer, thousandSpacer, onValueChange, onFocus, onBlur, readonly, }: IncrementProps) => JSX.Element;
17
+ declare const Increment: ({ style, inputStyle, value, decimalSpacer, thousandSpacer, onValueChange, onFocus, onBlur, readonly, defaultFormatting, stepSize, minValue, maxValue, isBigButton, }: IncrementProps) => JSX.Element;
13
18
  export default Increment;
@@ -19,64 +19,73 @@ import React, { useCallback, useEffect, useMemo, useState } from 'react';
19
19
  import { Platform, StyleSheet, View } from 'react-native';
20
20
  import { formatNumber as _format, unformatNumber as _unformat, } from '../../../utils/formatters';
21
21
  import { useThemeColor } from '../../../theme';
22
- import { Icon, Input } from '../../atoms';
23
- const cutDecimalExcess = number => {
24
- return number.toFixed(2).toString();
25
- };
26
- const Increment = ({ style, inputStyle, value, decimalSpacer, thousandSpacer, onValueChange, onFocus = () => { }, onBlur = () => { }, readonly = false, }) => {
27
- const format = useCallback(number => {
28
- return _format(number, decimalSpacer, thousandSpacer);
29
- }, [decimalSpacer, thousandSpacer]);
22
+ import { Input } from '../../atoms';
23
+ import IncrementButton from './IncrementButton';
24
+ import { useDigitFormat } from '../../../hooks/use-digit-format';
25
+ const Increment = ({ style, inputStyle, value, decimalSpacer, thousandSpacer, onValueChange, onFocus = () => { }, onBlur = () => { }, readonly = false, defaultFormatting = true, stepSize = 1, minValue = 0, maxValue = null, isBigButton = false, }) => {
26
+ const Colors = useThemeColor();
27
+ const cutDecimalExcess = useDigitFormat();
28
+ const [valueQty, setValueQty] = useState();
29
+ const format = useCallback((number) => {
30
+ return _format(number, decimalSpacer, thousandSpacer, cutDecimalExcess);
31
+ }, [cutDecimalExcess, decimalSpacer, thousandSpacer]);
30
32
  const unformat = useCallback(number => {
31
33
  return _unformat(number, decimalSpacer, thousandSpacer);
32
34
  }, [decimalSpacer, thousandSpacer]);
33
- const Colors = useThemeColor();
34
- const [valueQty, setValueQty] = useState();
35
+ const handleValueFormatting = useCallback((_value) => {
36
+ if (defaultFormatting) {
37
+ setValueQty(format(_value));
38
+ }
39
+ else {
40
+ setValueQty(typeof _value === 'string' ? _value : _value.toString());
41
+ }
42
+ }, [defaultFormatting, format]);
43
+ const handleResult = useCallback((_value) => {
44
+ let resultValue;
45
+ if (minValue != null && _value <= minValue) {
46
+ resultValue = minValue;
47
+ }
48
+ else if (maxValue != null && _value >= maxValue) {
49
+ resultValue = maxValue;
50
+ }
51
+ else {
52
+ resultValue = _value;
53
+ }
54
+ handleValueFormatting(resultValue);
55
+ onValueChange(resultValue);
56
+ }, [handleValueFormatting, maxValue, minValue, onValueChange]);
35
57
  useEffect(() => {
36
- setValueQty(format(parseFloat(value)?.toString()));
37
- }, [format, value]);
58
+ handleValueFormatting(parseFloat(value)?.toString());
59
+ }, [handleValueFormatting, value]);
38
60
  const handlePlus = () => {
39
- const unformatedValue = unformat(valueQty);
40
- const newValue = parseFloat(unformatedValue) + parseFloat('1');
41
- setValueQty(format(cutDecimalExcess(newValue)));
42
- onValueChange(newValue);
61
+ const unformatedValue = defaultFormatting ? unformat(valueQty) : valueQty;
62
+ const newValue = parseFloat(unformatedValue) + stepSize;
63
+ handleResult(newValue);
43
64
  };
44
65
  const handleMinus = () => {
45
- const unformatedValue = unformat(valueQty);
46
- const newValue = parseFloat(unformatedValue) - parseFloat('1');
47
- if (newValue >= 0) {
48
- setValueQty(format(cutDecimalExcess(newValue)));
49
- onValueChange(newValue);
50
- }
66
+ const unformatedValue = defaultFormatting ? unformat(valueQty) : valueQty;
67
+ const newValue = parseFloat(unformatedValue) - stepSize;
68
+ handleResult(newValue);
51
69
  };
52
70
  const handleEndInput = () => {
53
71
  if (valueQty.slice(-1) === decimalSpacer) {
54
72
  valueQty.replace(/.,$/, '');
55
73
  }
56
74
  if (valueQty === '' || valueQty === null) {
57
- setValueQty(`0${decimalSpacer}00`);
58
- onValueChange(0.0);
75
+ handleResult(0);
59
76
  }
60
77
  else {
61
- const newValue = parseFloat(valueQty);
62
- if (newValue >= 0) {
63
- setValueQty(format(cutDecimalExcess(newValue)));
64
- onValueChange(newValue.toFixed(2));
65
- }
66
- else {
67
- setValueQty(`0${decimalSpacer}00`);
68
- onValueChange(0.0);
69
- }
78
+ handleResult(valueQty);
70
79
  }
71
80
  onBlur();
72
81
  };
73
82
  const styles = useMemo(() => getStyles(Colors), [Colors]);
74
83
  return (<View style={[styles.container_increment, style]}>
75
- {!readonly && (<Icon name="minus" size={24} color={Colors.primaryColor.background} touchable={true} onPress={handleMinus} style={styles.container_icon}/>)}
76
- <View style={styles.inputLine}>
84
+ <IncrementButton iconName="minus" onPress={handleMinus} readonly={readonly} disabled={minValue != null && parseFloat(valueQty) <= minValue} isBigButton={isBigButton}/>
85
+ <View style={[styles.inputLine, isBigButton ? styles.fixedInputWidth : null]}>
77
86
  <Input style={[styles.input, inputStyle]} value={valueQty} onChange={input => setValueQty(input)} keyboardType="numeric" onSelection={onFocus} onEndFocus={handleEndInput} readOnly={readonly}/>
78
87
  </View>
79
- {!readonly && (<Icon name="plus" size={24} color={Colors.primaryColor.background} touchable={true} onPress={handlePlus} style={styles.container_icon}/>)}
88
+ <IncrementButton iconName="plus" onPress={handlePlus} readonly={readonly} disabled={maxValue != null && parseFloat(valueQty) >= maxValue} isBigButton={isBigButton}/>
80
89
  </View>);
81
90
  };
82
91
  const getStyles = (Colors) => StyleSheet.create({
@@ -84,25 +93,11 @@ const getStyles = (Colors) => StyleSheet.create({
84
93
  flexDirection: 'row',
85
94
  alignItems: 'center',
86
95
  },
87
- container_icon: {
88
- backgroundColor: Colors.backgroundColor,
89
- elevation: 3,
90
- shadowOpacity: 0.5,
91
- shadowColor: Colors.secondaryColor.background,
92
- shadowOffset: { width: 0, height: 0 },
93
- justifyContent: 'center',
94
- alignItems: 'center',
95
- marginHorizontal: 8,
96
- padding: 2,
97
- paddingHorizontal: 5,
98
- borderColor: Colors.secondaryColor.background,
99
- borderWidth: 0.5,
100
- borderRadius: 10,
101
- },
102
96
  input: {
103
97
  fontSize: 23,
104
98
  fontWeight: 'bold',
105
99
  paddingBottom: 0,
100
+ textAlign: 'center',
106
101
  },
107
102
  inputLine: {
108
103
  borderStyle: Platform.OS === 'ios' ? 'solid' : 'dashed',
@@ -110,6 +105,9 @@ const getStyles = (Colors) => StyleSheet.create({
110
105
  borderBottomWidth: 0.7,
111
106
  marginBottom: 9,
112
107
  },
108
+ fixedInputWidth: {
109
+ width: '40%',
110
+ },
113
111
  });
114
112
  export default Increment;
115
113
  //# sourceMappingURL=Increment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Increment.js","sourceRoot":"","sources":["../../../../src/components/molecules/Increment/Increment.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Increment.js","sourceRoot":"","sources":["../../../../src/components/molecules/Increment/Increment.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ interface IncrementButtonProps {
2
+ style?: any;
3
+ iconName: 'plus' | 'minus';
4
+ onPress?: () => void;
5
+ readonly?: boolean;
6
+ disabled?: boolean;
7
+ isBigButton?: boolean;
8
+ }
9
+ declare const IncrementButton: ({ style, iconName, onPress, readonly, disabled, isBigButton, }: IncrementButtonProps) => JSX.Element;
10
+ export default IncrementButton;
@@ -0,0 +1,56 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import React, { useMemo } from 'react';
19
+ import { StyleSheet } from 'react-native';
20
+ import { useThemeColor } from '../../../theme';
21
+ import { Icon } from '../../atoms';
22
+ const ICON_SIZE = 24;
23
+ const DEFAULT_BUTTON_SIZE = 35;
24
+ const BIG_BUTTON_SIZE = 75;
25
+ const IncrementButton = ({ style, iconName, onPress = () => { }, readonly = false, disabled, isBigButton = false, }) => {
26
+ const Colors = useThemeColor();
27
+ const buttonSize = useMemo(() => (isBigButton ? BIG_BUTTON_SIZE : DEFAULT_BUTTON_SIZE), [isBigButton]);
28
+ const styles = useMemo(() => getStyles(Colors, buttonSize), [Colors, buttonSize]);
29
+ if (readonly) {
30
+ return null;
31
+ }
32
+ return (<Icon name={iconName} size={ICON_SIZE} color={disabled
33
+ ? Colors.secondaryColor.background
34
+ : Colors.primaryColor.background} touchable={!disabled} onPress={onPress} style={[styles.container_icon, style]}/>);
35
+ };
36
+ const getStyles = (Colors, buttonSize) => StyleSheet.create({
37
+ container_icon: {
38
+ backgroundColor: Colors.backgroundColor,
39
+ elevation: 3,
40
+ shadowOpacity: 0.5,
41
+ shadowColor: Colors.secondaryColor.background,
42
+ shadowOffset: { width: 0, height: 0 },
43
+ justifyContent: 'center',
44
+ alignItems: 'center',
45
+ marginHorizontal: 8,
46
+ padding: 2,
47
+ paddingHorizontal: 5,
48
+ borderColor: Colors.secondaryColor.background,
49
+ borderWidth: 0.5,
50
+ borderRadius: 10,
51
+ width: buttonSize ?? DEFAULT_BUTTON_SIZE,
52
+ height: buttonSize ?? DEFAULT_BUTTON_SIZE,
53
+ },
54
+ });
55
+ export default IncrementButton;
56
+ //# sourceMappingURL=IncrementButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IncrementButton.js","sourceRoot":"","sources":["../../../../src/components/molecules/Increment/IncrementButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAc,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AAEjC,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,eAAe,GAAG,EAAE,CAAC;AAW3B,MAAM,eAAe,GAAG,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,WAAW,GAAG,KAAK,GACE,EAAE,EAAE;IACzB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAC3D,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,EACnC,CAAC,MAAM,EAAE,UAAU,CAAC,CACrB,CAAC;IAEF,IAAI,QAAQ,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,QAAQ,CAAC,CACf,IAAI,CAAC,CAAC,SAAS,CAAC,CAChB,KAAK,CAAC,CACJ,QAAQ;YACN,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU;YAClC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CACnC,CACD,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CACrB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,EACtC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAmB,EAAE,UAAkB,EAAE,EAAE,CAC5D,UAAU,CAAC,MAAM,CAAC;IAChB,cAAc,EAAE;QACd,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,GAAG;QAClB,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,UAAU;QAC7C,YAAY,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC;QACnC,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;QACpB,gBAAgB,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;QACV,iBAAiB,EAAE,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,UAAU;QAC7C,WAAW,EAAE,GAAG;QAChB,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,UAAU,IAAI,mBAAmB;QACxC,MAAM,EAAE,UAAU,IAAI,mBAAmB;KAC1C;CACF,CAAC,CAAC;AAEL,eAAe,eAAe,CAAC"}