@axelor/aos-mobile-ui 7.0.3 → 7.0.5

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 (70) hide show
  1. package/lib/components/atoms/Icon/Icon.d.ts +1 -2
  2. package/lib/components/atoms/Icon/Icon.js +6 -6
  3. package/lib/components/atoms/Icon/Icon.js.map +1 -1
  4. package/lib/components/atoms/Input/Input.d.ts +3 -2
  5. package/lib/components/atoms/Input/Input.js +5 -4
  6. package/lib/components/atoms/Input/Input.js.map +1 -1
  7. package/lib/components/atoms/KeyboardAvoidingScrollView/KeyboardAvoidingScrollView.d.ts +9 -4
  8. package/lib/components/atoms/KeyboardAvoidingScrollView/KeyboardAvoidingScrollView.js +1 -1
  9. package/lib/components/atoms/KeyboardAvoidingScrollView/KeyboardAvoidingScrollView.js.map +1 -1
  10. package/lib/components/molecules/Checkbox/Checkbox.d.ts +2 -2
  11. package/lib/components/molecules/Checkbox/Checkbox.js +19 -6
  12. package/lib/components/molecules/Checkbox/Checkbox.js.map +1 -1
  13. package/lib/components/molecules/DropdownCard/DropdownCard.d.ts +3 -2
  14. package/lib/components/molecules/DropdownCard/DropdownCard.js +24 -24
  15. package/lib/components/molecules/DropdownCard/DropdownCard.js.map +1 -1
  16. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.d.ts +5 -1
  17. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.js +18 -11
  18. package/lib/components/molecules/FormIncrementInput/FormIncrementInput.js.map +1 -1
  19. package/lib/components/molecules/FormInput/FormInput.d.ts +3 -1
  20. package/lib/components/molecules/FormInput/FormInput.js +13 -2
  21. package/lib/components/molecules/FormInput/FormInput.js.map +1 -1
  22. package/lib/components/molecules/IconButton/IconButton.d.ts +1 -1
  23. package/lib/components/molecules/Image/Image.js +13 -5
  24. package/lib/components/molecules/Image/Image.js.map +1 -1
  25. package/lib/components/molecules/Increment/Increment.d.ts +4 -1
  26. package/lib/components/molecules/Increment/Increment.js +16 -6
  27. package/lib/components/molecules/Increment/Increment.js.map +1 -1
  28. package/lib/components/molecules/InfoBubble/InfoBubble.d.ts +3 -1
  29. package/lib/components/molecules/InfoBubble/InfoBubble.js +9 -9
  30. package/lib/components/molecules/InfoBubble/InfoBubble.js.map +1 -1
  31. package/lib/components/molecules/Label/Label.d.ts +14 -0
  32. package/lib/components/molecules/Label/Label.js +100 -0
  33. package/lib/components/molecules/Label/Label.js.map +1 -0
  34. package/lib/components/molecules/NumberBubble/NumberBubble.d.ts +10 -0
  35. package/lib/components/molecules/NumberBubble/NumberBubble.js +51 -0
  36. package/lib/components/molecules/NumberBubble/NumberBubble.js.map +1 -0
  37. package/lib/components/molecules/WarningCard/WarningCard.js +5 -29
  38. package/lib/components/molecules/WarningCard/WarningCard.js.map +1 -1
  39. package/lib/components/molecules/index.d.ts +2 -0
  40. package/lib/components/molecules/index.js +2 -0
  41. package/lib/components/molecules/index.js.map +1 -1
  42. package/lib/components/organisms/AutoCompleteSearch/ItemCard.js +3 -2
  43. package/lib/components/organisms/AutoCompleteSearch/ItemCard.js.map +1 -1
  44. package/lib/components/organisms/ChipSelect/ChipSelect.d.ts +2 -1
  45. package/lib/components/organisms/ChipSelect/ChipSelect.js +29 -26
  46. package/lib/components/organisms/ChipSelect/ChipSelect.js.map +1 -1
  47. package/lib/components/organisms/DropdownCardSwitch/DropdownCardSwitch.js +1 -1
  48. package/lib/components/organisms/Picker/Picker.js +9 -5
  49. package/lib/components/organisms/Picker/Picker.js.map +1 -1
  50. package/lib/components/organisms/ScrollList/ScrollList.d.ts +2 -1
  51. package/lib/components/organisms/ScrollList/ScrollList.js +2 -2
  52. package/lib/components/organisms/ScrollList/ScrollList.js.map +1 -1
  53. package/lib/components/templates/TabsScreen/IndicatorBadge.d.ts +4 -0
  54. package/lib/components/templates/TabsScreen/IndicatorBadge.js +47 -0
  55. package/lib/components/templates/TabsScreen/IndicatorBadge.js.map +1 -0
  56. package/lib/components/templates/TabsScreen/Tab.d.ts +3 -0
  57. package/lib/components/templates/TabsScreen/Tab.js +50 -0
  58. package/lib/components/templates/TabsScreen/Tab.js.map +1 -0
  59. package/lib/components/templates/TabsScreen/TabsScreen.d.ts +3 -0
  60. package/lib/components/templates/TabsScreen/TabsScreen.js +169 -0
  61. package/lib/components/templates/TabsScreen/TabsScreen.js.map +1 -0
  62. package/lib/components/templates/TabsScreen/tabs.helper.d.ts +32 -0
  63. package/lib/components/templates/TabsScreen/tabs.helper.js +27 -0
  64. package/lib/components/templates/TabsScreen/tabs.helper.js.map +1 -0
  65. package/lib/components/templates/index.d.ts +1 -0
  66. package/lib/components/templates/index.js +1 -0
  67. package/lib/components/templates/index.js.map +1 -1
  68. package/lib/utils/formatters.js +1 -1
  69. package/lib/utils/formatters.js.map +1 -1
  70. package/package.json +5 -2
@@ -33,10 +33,14 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
33
33
  visible: pickerIsOpen,
34
34
  });
35
35
  const Colors = useThemeColor();
36
- const [selectedItem, setSelectedItem] = useState(getFromList(listItems, valueField, defaultValue));
36
+ const [selectedItem, setSelectedItem] = useState(!isValueItem
37
+ ? getFromList(listItems, valueField, defaultValue)
38
+ : defaultValue);
37
39
  useEffect(() => {
38
- setSelectedItem(getFromList(listItems, valueField, defaultValue));
39
- }, [defaultValue, listItems, valueField]);
40
+ setSelectedItem(!isValueItem
41
+ ? getFromList(listItems, valueField, defaultValue)
42
+ : defaultValue);
43
+ }, [defaultValue, isValueItem, listItems, valueField]);
40
44
  useEffect(() => {
41
45
  if (clickOutside === OUTSIDE_INDICATOR && pickerIsOpen) {
42
46
  setPickerIsOpen(false);
@@ -54,7 +58,7 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
54
58
  setSelectedItem(itemValue);
55
59
  itemValue
56
60
  ? onValueChange(isValueItem
57
- ? getFromList(listItems, 'id', itemValue[valueField])
61
+ ? getFromList(listItems, valueField, itemValue[valueField])
58
62
  : itemValue[valueField])
59
63
  : onValueChange(itemValue);
60
64
  };
@@ -96,7 +100,7 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
96
100
  isFocused && commonStyles.inputFocused,
97
101
  pickerStyle,
98
102
  ]}/>
99
- {pickerIsOpen ? (<SelectionContainer emptyValue={emptyValue} objectList={listItems} keyField={valueField} displayValue={item => item[labelField]} handleSelect={handleValueChange} isPicker={true} selectedItem={[selectedItem]}/>) : null}
103
+ {pickerIsOpen ? (<SelectionContainer style={pickerStyle} emptyValue={emptyValue} objectList={listItems} keyField={valueField} displayValue={item => item[labelField]} handleSelect={handleValueChange} isPicker={true} selectedItem={[selectedItem]}/>) : null}
100
104
  </View>)}
101
105
  </View>);
102
106
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../../src/components/organisms/Picker/Picker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAClE,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACpE,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,SAAS,EAAE,kBAAkB,EAAE,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAG1C,MAAM,WAAW,GAAG,EAAE,CAAC;AAqBvB,MAAM,MAAM,GAAG,CAAC,EACd,KAAK,EACL,WAAW,EACX,QAAQ,EACR,KAAK,EACL,aAAa,EACb,YAAY,GAAG,EAAE,EACjB,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,GAAG,IAAI,EACjB,WAAW,GAAG,KAAK,EACnB,QAAQ,GAAG,KAAK,EAChB,aAAa,GAAG,IAAI,EACpB,QAAQ,GAAG,IAAI,EACf,QAAQ,GAAG,KAAK,EAChB,qBAAqB,GAAG,KAAK,GACjB,EAAE,EAAE;IAChB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,UAAU;QACV,OAAO,EAAE,YAAY;KACtB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CACjD,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,KAAK,iBAAiB,IAAI,YAAY,EAAE;YACtD,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,YAAY,CAAC,KAAK,CAAC,CAAC;SACrB;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAEjC,MAAM,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;IAExC,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7B,YAAY,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,SAAS,CAAC,EAAE;QACpC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3B,SAAS;YACP,CAAC,CAAC,aAAa,CACX,WAAW;gBACT,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;gBACrD,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAC1B;YACH,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,QAAQ,IAAI,YAAY,IAAI,IAAI,EACtC,CAAC,QAAQ,EAAE,YAAY,CAAC,CACzB,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,MAAM,UAAU,GAAG,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC;QAE1C,IAAI,qBAAqB,IAAI,YAAY,EAAE;YACzC,OAAO,UAAU;gBACf,CAAC,CAAC,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,CAAC;gBAC5C,CAAC,CAAC,UAAU,GAAG,WAAW,GAAG,CAAC,CAAC;SAClC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAEjE,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,EAAE,YAAY,EAAE,YAAY,CAAC,EAC9D,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAChD,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CACtE;MAAA,CAAC,CAAC,QAAQ,IAAI,CACZ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CACjC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CACtC;QAAA,EAAE,IAAI,CAAC,CACR,CACD;MAAA,CAAC,QAAQ,CAAC,CAAC,CAAC,CACV,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;gBACL,YAAY,CAAC,MAAM;gBACnB,YAAY,CAAC,UAAU;gBACvB,YAAY,CAAC,WAAW;gBACxB,MAAM,CAAC,SAAS;gBAChB,WAAW;aACZ,CAAC,CACF;UAAA,CAAC,SAAS,CACR,KAAK,CAAC,CACJ,aAAa,IAAI,IAAI,IAAI,aAAa,KAAK,EAAE;gBAC3C,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,aAAa,CAClB,CACD,KAAK,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CACpB,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAEvB;QAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,CACF,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,oBAAoB;gBAC3B,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI;aAC5D,CAAC,CACF;UAAA,CAAC,eAAe,CACd,OAAO,CAAC,CAAC,YAAY,CAAC,CACtB,IAAI,CAAC,CACH,CAAC,IAAI,CACH,IAAI,CAAC,cAAc,CACnB,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAC7C,CACH,CACD,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CACpD,SAAS,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC,KAAK,CAAC,CAAC;gBACL,YAAY,CAAC,MAAM;gBACnB,YAAY,CAAC,UAAU;gBACvB,YAAY,CAAC,WAAW;gBACxB,MAAM,CAAC,eAAe;gBACtB,SAAS,IAAI,YAAY,CAAC,YAAY;gBACtC,WAAW;aACZ,CAAC,EAEJ;UAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,kBAAkB,CACjB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,UAAU,CAAC,CAAC,SAAS,CAAC,CACtB,QAAQ,CAAC,CAAC,UAAU,CAAC,CACrB,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CACvC,YAAY,CAAC,CAAC,iBAAiB,CAAC,CAChC,QAAQ,CAAC,CAAC,IAAI,CAAC,CACf,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAC7B,CACH,CAAC,CAAC,CAAC,IAAI,CACV;QAAA,EAAE,IAAI,CAAC,CACR,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAChB,MAAmB,EACnB,SAAkB,EAClB,YAAY,EACZ,YAAqB,EACrB,EAAE,CACF,UAAU,CAAC,MAAM,CAAC;IAChB,eAAe,EAAE;QACf,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAC9B;IACD,cAAc,EAAE;QACd,gBAAgB,EAAE,EAAE;KACrB;IACD,eAAe,EAAE;QACf,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,GAAG;QAC3C,WAAW,EAAE,SAAS;YACpB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU;YAC9B,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU;QACpC,WAAW,EAAE,CAAC;KACf;IACD,eAAe,EAAE;QACf,IAAI,EAAE,MAAM;KACb;IACD,SAAS,EAAE;QACT,cAAc,EAAE,YAAY;QAC5B,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,GAAG;KAC5C;IACD,oBAAoB,EAAE;QACpB,YAAY,EAAE,YAAY;KAC3B;IACD,qBAAqB,EAAE;QACrB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAC9B;CACF,CAAC,CAAC;AAEL,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../../src/components/organisms/Picker/Picker.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ interface ScrollListProps {
9
9
  filter: boolean;
10
10
  translator?: (translationKey: string) => string;
11
11
  horizontal?: boolean;
12
+ disabledRefresh?: boolean;
12
13
  }
13
- declare const ScrollList: ({ style, loadingList, data, renderItem, fetchData, moreLoading, isListEnd, filter, translator, horizontal, }: ScrollListProps) => JSX.Element;
14
+ declare const ScrollList: ({ style, loadingList, data, renderItem, fetchData, moreLoading, isListEnd, filter, translator, horizontal, disabledRefresh, }: ScrollListProps) => JSX.Element;
14
15
  export default ScrollList;
@@ -18,7 +18,7 @@
18
18
  import React, { useCallback, useEffect, useState } from 'react';
19
19
  import { StyleSheet, View, FlatList, ActivityIndicator } from 'react-native';
20
20
  import { Text } from '../../atoms';
21
- const ScrollList = ({ style, loadingList = false, data = [], renderItem, fetchData = () => [], moreLoading = false, isListEnd = false, filter = false, translator, horizontal = false, }) => {
21
+ const ScrollList = ({ style, loadingList = false, data = [], renderItem, fetchData = () => [], moreLoading = false, isListEnd = false, filter = false, translator, horizontal = false, disabledRefresh = false, }) => {
22
22
  const [page, setPage] = useState(0);
23
23
  const updateData = useCallback(() => {
24
24
  setPage(0);
@@ -49,7 +49,7 @@ const ScrollList = ({ style, loadingList = false, data = [], renderItem, fetchDa
49
49
  <ActivityIndicator size="large" color="black"/>
50
50
  </View>);
51
51
  }
52
- return (<FlatList style={[styles.scrollView, style]} data={data} onRefresh={updateData} refreshing={loadingList} horizontal={horizontal} onEndReached={onEndReached} ListFooterComponent={() => {
52
+ return (<FlatList style={[styles.scrollView, style]} data={data} onRefresh={disabledRefresh ? null : updateData} refreshing={loadingList} horizontal={horizontal} onEndReached={onEndReached} ListFooterComponent={() => {
53
53
  return (<View style={styles.footerText}>
54
54
  {moreLoading && <ActivityIndicator size="large" color="black"/>}
55
55
  {isListEnd && (<Text>
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollList.js","sourceRoot":"","sources":["../../../../src/components/organisms/ScrollList/ScrollList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScrollList.js","sourceRoot":"","sources":["../../../../src/components/organisms/ScrollList/ScrollList.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ declare const IndicatorBadge: ({ count }: {
2
+ count: any;
3
+ }) => JSX.Element;
4
+ export default IndicatorBadge;
@@ -0,0 +1,47 @@
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 from 'react';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { useThemeColor } from '../../../theme';
21
+ import { Badge } from '../../molecules';
22
+ import { BADGE_SIZE } from './tabs.helper';
23
+ const IndicatorBadge = ({ count }) => {
24
+ const Colors = useThemeColor();
25
+ return (<View style={countBadgeStyles.badgeContainer}>
26
+ <Badge title={count} style={countBadgeStyles.badge} txtStyle={countBadgeStyles.badgeTxt} color={Colors.primaryColor}/>
27
+ </View>);
28
+ };
29
+ const countBadgeStyles = StyleSheet.create({
30
+ badgeContainer: {
31
+ height: BADGE_SIZE,
32
+ width: BADGE_SIZE + 10,
33
+ alignItems: 'flex-end',
34
+ },
35
+ badge: {
36
+ borderRadius: Math.ceil(BADGE_SIZE / 2),
37
+ minWidth: BADGE_SIZE,
38
+ height: BADGE_SIZE,
39
+ position: 'absolute',
40
+ width: null,
41
+ },
42
+ badgeTxt: {
43
+ fontWeight: 'bold',
44
+ },
45
+ });
46
+ export default IndicatorBadge;
47
+ //# sourceMappingURL=IndicatorBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IndicatorBadge.js","sourceRoot":"","sources":["../../../../src/components/templates/TabsScreen/IndicatorBadge.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,MAAM,cAAc,GAAG,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE;IACjC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAC3C;MAAA,CAAC,KAAK,CACJ,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAC9B,QAAQ,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACpC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAE/B;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC;IACzC,cAAc,EAAE;QACd,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,UAAU,GAAG,EAAE;QACtB,UAAU,EAAE,UAAU;KACvB;IACD,KAAK,EAAE;QACL,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACvC,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,UAAU;QAClB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,IAAI;KACZ;IACD,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM;KACnB;CACF,CAAC,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { TabProps } from './tabs.helper';
2
+ declare const Tab: ({ title, onPress, isActive, disabled, count, showBadge, style, }: TabProps) => JSX.Element;
3
+ export default Tab;
@@ -0,0 +1,50 @@
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 from 'react';
19
+ import { StyleSheet, TouchableOpacity } from 'react-native';
20
+ import { useThemeColor } from '../../../theme';
21
+ import { Text } from '../../atoms';
22
+ import IndicatorBadge from './IndicatorBadge';
23
+ const Tab = ({ title, onPress, isActive = false, disabled = false, count, showBadge, style, }) => {
24
+ const Colors = useThemeColor();
25
+ return (<TouchableOpacity activeOpacity={0.95} onPress={onPress} disabled={disabled || isActive} style={[
26
+ tabStyles.container,
27
+ {
28
+ borderColor: isActive
29
+ ? Colors.primaryColor.background
30
+ : Colors.backgroundColor,
31
+ backgroundColor: Colors.backgroundColor,
32
+ },
33
+ style,
34
+ ]}>
35
+ <Text numberOfLines={1} fontSize={16}>
36
+ {title}
37
+ </Text>
38
+ {showBadge && <IndicatorBadge count={count}/>}
39
+ </TouchableOpacity>);
40
+ };
41
+ const tabStyles = StyleSheet.create({
42
+ container: {
43
+ flexDirection: 'row',
44
+ justifyContent: 'center',
45
+ alignItems: 'center',
46
+ alignContent: 'center',
47
+ },
48
+ });
49
+ export default Tab;
50
+ //# sourceMappingURL=Tab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tab.js","sourceRoot":"","sources":["../../../../src/components/templates/TabsScreen/Tab.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AACjC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAG9C,MAAM,GAAG,GAAG,CAAC,EACX,KAAK,EACL,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,KAAK,EACL,SAAS,EACT,KAAK,GACI,EAAE,EAAE;IACb,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,OAAO,CACL,CAAC,gBAAgB,CACf,aAAa,CAAC,CAAC,IAAI,CAAC,CACpB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,QAAQ,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAC/B,KAAK,CAAC,CAAC;YACL,SAAS,CAAC,SAAS;YACnB;gBACE,WAAW,EAAE,QAAQ;oBACnB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;oBAChC,CAAC,CAAC,MAAM,CAAC,eAAe;gBAC1B,eAAe,EAAE,MAAM,CAAC,eAAe;aACxC;YACD,KAAK;SACN,CAAC,CACF;MAAA,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CACnC;QAAA,CAAC,KAAK,CACR;MAAA,EAAE,IAAI,CACN;MAAA,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAG,CAChD;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;QACpB,YAAY,EAAE,QAAQ;KACvB;CACF,CAAC,CAAC;AAEH,eAAe,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { TabsScreenProps } from './tabs.helper';
2
+ declare const TabsScreen: ({ style, viewStyle, position, tabHeight, items, }: TabsScreenProps) => JSX.Element;
3
+ export default TabsScreen;
@@ -0,0 +1,169 @@
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, { useCallback, useEffect, useMemo, useState } from 'react';
19
+ import { Dimensions, Platform, ScrollView, StyleSheet, View } from 'react-native';
20
+ import SystemNavigationBar from 'react-native-system-navigation-bar';
21
+ import { useThemeColor } from '../../../theme';
22
+ import { TabsPosition, capitalizeFirstLetter, } from './tabs.helper';
23
+ import Tab from './Tab';
24
+ import { useConfig } from '../../../config/ConfigContext';
25
+ import { Icon } from '../../atoms';
26
+ const MIN_TAB_WIDTH = 100;
27
+ const immersiveMode = async () => {
28
+ await SystemNavigationBar.navigationHide();
29
+ };
30
+ const TabsScreen = ({ style, viewStyle, position = Platform.OS === 'ios' ? TabsPosition.Bottom : TabsPosition.Top, tabHeight = 60, items, }) => {
31
+ const Colors = useThemeColor();
32
+ const { showActivityIndicator } = useConfig();
33
+ const [showLeftIcon, setShowLeftIcon] = useState(false);
34
+ const [showRightIcon, setShowRightIcon] = useState(false);
35
+ const [panels, setPanels] = useState(items?.filter(_tab => !_tab.hidden));
36
+ useEffect(() => {
37
+ immersiveMode();
38
+ }, []);
39
+ useEffect(() => {
40
+ setPanels(current => {
41
+ const activeTabKey = current.find(_item => _item.isActive)?.key;
42
+ return items
43
+ ?.filter(_tab => !_tab.hidden)
44
+ .map(_item => _item.key === activeTabKey
45
+ ? { ..._item, isActive: true }
46
+ : { ..._item, isActive: false });
47
+ });
48
+ }, [items]);
49
+ const swicthTab = useCallback((tabKey) => {
50
+ setPanels(_current => {
51
+ return _current.map(item => item.key === tabKey
52
+ ? { ...item, isActive: true }
53
+ : { ...item, isActive: false });
54
+ });
55
+ }, []);
56
+ const getTabStyle = useCallback(nbTabs => {
57
+ const tabWidth = Dimensions.get('window').width / nbTabs;
58
+ return {
59
+ [`border${capitalizeFirstLetter(position === TabsPosition.Top
60
+ ? TabsPosition.Bottom
61
+ : TabsPosition.Top)}Width`]: 3,
62
+ height: tabHeight,
63
+ width: tabWidth < MIN_TAB_WIDTH ? MIN_TAB_WIDTH : tabWidth,
64
+ minWidth: 100,
65
+ };
66
+ }, [position, tabHeight]);
67
+ const tabsScroll = useMemo(() => {
68
+ const getIconStyle = side => [
69
+ styles.icon,
70
+ { top: tabHeight / 3, [side]: 15 },
71
+ ];
72
+ const tabsLength = panels.length;
73
+ return (<View style={[
74
+ { height: tabHeight, backgroundColor: Colors.backgroundColor },
75
+ styles.scroll,
76
+ ]}>
77
+ {showLeftIcon && (<Icon name="angle-left" style={getIconStyle('left')}/>)}
78
+ <ScrollView horizontal={true} onContentSizeChange={width => {
79
+ if (parseInt(width.toString(), 10) < Dimensions.get('window').width) {
80
+ setShowRightIcon(false);
81
+ }
82
+ else {
83
+ setShowRightIcon(true);
84
+ }
85
+ }} onScroll={({ nativeEvent }) => {
86
+ const { contentOffset, layoutMeasurement, contentSize } = nativeEvent;
87
+ if (contentSize.width <= Dimensions.get('window').width) {
88
+ setShowRightIcon(false);
89
+ setShowLeftIcon(false);
90
+ }
91
+ else {
92
+ if (contentOffset.x >
93
+ contentSize.width * 0.9 - layoutMeasurement.width) {
94
+ setShowRightIcon(false);
95
+ }
96
+ else {
97
+ setShowRightIcon(true);
98
+ }
99
+ if (contentOffset.x < contentSize.width * 0.1) {
100
+ setShowLeftIcon(false);
101
+ }
102
+ else {
103
+ setShowLeftIcon(true);
104
+ }
105
+ }
106
+ }}>
107
+ {panels?.map(_item => (<Tab key={_item.key} title={_item.title} isActive={_item.isActive} disabled={_item.disabled} count={_item.count} showBadge={_item.showBadge} onPress={() => swicthTab(_item.key)} style={getTabStyle(tabsLength)}/>))}
108
+ </ScrollView>
109
+ {showRightIcon && (<Icon name="angle-right" style={getIconStyle('right')}/>)}
110
+ </View>);
111
+ }, [
112
+ Colors,
113
+ getTabStyle,
114
+ panels,
115
+ showLeftIcon,
116
+ showRightIcon,
117
+ swicthTab,
118
+ tabHeight,
119
+ ]);
120
+ const activeView = useMemo(() => {
121
+ if (!Array.isArray(panels) || panels.length === 0) {
122
+ return;
123
+ }
124
+ const activeTab = panels.filter(item => item.isActive)?.[0];
125
+ if (activeTab == null) {
126
+ swicthTab(panels[0].key);
127
+ return;
128
+ }
129
+ return activeTab.view;
130
+ }, [panels, swicthTab]);
131
+ if (!Array.isArray(panels) || panels.length === 0) {
132
+ return <View />;
133
+ }
134
+ return (<View pointerEvents={showActivityIndicator === true ? 'none' : 'auto'} style={[
135
+ styles.container,
136
+ {
137
+ backgroundColor: Colors.screenBackgroundColor,
138
+ },
139
+ style,
140
+ ]}>
141
+ {position === TabsPosition.Top ? tabsScroll : null}
142
+ <View style={[styles.view, viewStyle]}>{activeView}</View>
143
+ {position === TabsPosition.Bottom ? tabsScroll : null}
144
+ </View>);
145
+ };
146
+ const styles = StyleSheet.create({
147
+ container: {
148
+ height: '98%',
149
+ width: Dimensions.get('window').width,
150
+ },
151
+ scroll: {
152
+ flexDirection: 'row',
153
+ },
154
+ icon: {
155
+ position: 'absolute',
156
+ zIndex: 15,
157
+ },
158
+ leftIcon: {
159
+ left: 20,
160
+ },
161
+ rightIcon: {
162
+ right: 10,
163
+ },
164
+ view: {
165
+ height: '95%',
166
+ },
167
+ });
168
+ export default TabsScreen;
169
+ //# sourceMappingURL=TabsScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabsScreen.js","sourceRoot":"","sources":["../../../../src/components/templates/TabsScreen/TabsScreen.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ export interface Tab {
2
+ key: number;
3
+ title: string;
4
+ view?: JSX.Element;
5
+ hidden?: boolean;
6
+ isActive?: boolean;
7
+ disabled?: boolean;
8
+ count?: number;
9
+ showBadge?: boolean;
10
+ }
11
+ export interface TabProps {
12
+ style?: any;
13
+ title: string;
14
+ onPress: () => void;
15
+ isActive?: boolean;
16
+ disabled?: boolean;
17
+ count?: number;
18
+ showBadge?: boolean;
19
+ }
20
+ export interface TabsScreenProps {
21
+ style?: any;
22
+ viewStyle?: any;
23
+ position?: TabsPosition;
24
+ tabHeight?: number;
25
+ items?: Tab[];
26
+ }
27
+ export declare enum TabsPosition {
28
+ Bottom = "bottom",
29
+ Top = "top"
30
+ }
31
+ export declare const BADGE_SIZE = 27;
32
+ export declare const capitalizeFirstLetter: (string: string) => string;
@@ -0,0 +1,27 @@
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
+ export var TabsPosition;
19
+ (function (TabsPosition) {
20
+ TabsPosition["Bottom"] = "bottom";
21
+ TabsPosition["Top"] = "top";
22
+ })(TabsPosition || (TabsPosition = {}));
23
+ export const BADGE_SIZE = 27;
24
+ export const capitalizeFirstLetter = (string) => {
25
+ return string.charAt(0).toUpperCase() + string.slice(1);
26
+ };
27
+ //# sourceMappingURL=tabs.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.helper.js","sourceRoot":"","sources":["../../../../src/components/templates/TabsScreen/tabs.helper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA+BH,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,2BAAW,CAAA;AACb,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC;AAE7B,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAU,EAAE;IAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC"}
@@ -1 +1,2 @@
1
1
  export { default as ObjectCard } from "./ObjectCard/ObjectCard";
2
+ export { default as TabsScreen } from "./TabsScreen/TabsScreen";
@@ -16,4 +16,5 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  export { default as ObjectCard } from './ObjectCard/ObjectCard';
19
+ export { default as TabsScreen } from './TabsScreen/TabsScreen';
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/templates/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/templates/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC"}
@@ -43,7 +43,7 @@ export function formatNumber(number, decimalSpacer = '.', thousandSpacer = ' ')
43
43
  : integerPart[i] + result;
44
44
  counter++;
45
45
  }
46
- return `${result}${decimalSpacer}${decimalPart ? decimalPart : '00'}`;
46
+ return decimalPart ? `${result}${decimalSpacer}${decimalPart}` : result;
47
47
  }
48
48
  export function unformatNumber(number, decimalSpacer = '.', thousandSpacer = ' ') {
49
49
  if (checkNullString(number)) {
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/utils/formatters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,eAAe,EAAE,UAAU,EAAC,MAAM,WAAW,CAAC;AAEtD,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,MAAc;IAC1D,4FAA4F;IAC5F,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEhC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IACjE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAE/D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,gBAAwB,GAAG,EAC3B,iBAAyB,GAAG;IAE5B,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,OAAO,IAAI,aAAa,IAAI,CAAC;KAC9B;IAED,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEvC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAChD,MAAM;YACJ,OAAO,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC;gBAChC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,MAAM;gBAC1C,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QAC9B,OAAO,EAAE,CAAC;KACX;IAED,OAAO,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,gBAAwB,GAAG,EAC3B,iBAAyB,GAAG;IAE5B,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,OAAO,IAAI,aAAa,IAAI,CAAC;KAC9B;IAED,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,MAAM,iBAAiB,GAAG,GAAG,CAAC;IAE9B,OAAO,MAAM;SACV,UAAU,CAAC,cAAc,EAAE,kBAAkB,CAAC;SAC9C,OAAO,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/utils/formatters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,eAAe,EAAE,UAAU,EAAC,MAAM,WAAW,CAAC;AAEtD,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,MAAc;IAC1D,4FAA4F;IAC5F,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEhC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IACjE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAE/D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,gBAAwB,GAAG,EAC3B,iBAAyB,GAAG;IAE5B,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,OAAO,IAAI,aAAa,IAAI,CAAC;KAC9B;IAED,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEvC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAChD,MAAM;YACJ,OAAO,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC;gBAChC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,MAAM;gBAC1C,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QAC9B,OAAO,EAAE,CAAC;KACX;IAED,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,gBAAwB,GAAG,EAC3B,iBAAyB,GAAG;IAE5B,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;QAC3B,OAAO,IAAI,aAAa,IAAI,CAAC;KAC9B;IAED,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,MAAM,iBAAiB,GAAG,GAAG,CAAC;IAE9B,OAAO,MAAM;SACV,UAAU,CAAC,cAAc,EAAE,kBAAkB,CAAC;SAC9C,OAAO,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;AAC/C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axelor/aos-mobile-ui",
3
- "version": "7.0.3",
3
+ "version": "7.0.5",
4
4
  "author": "Axelor",
5
5
  "license": "AGPL-3.0-only",
6
6
  "publishConfig": {
@@ -32,7 +32,7 @@
32
32
  "devDependencies": {
33
33
  "@babel/runtime": "^7.19.0",
34
34
  "@react-native-community/eslint-config": "^2.0.0",
35
- "@types/react": "18.0.20",
35
+ "@types/react": "18.2.0",
36
36
  "@types/react-native": "0.68.1",
37
37
  "eslint": "^7.32.0",
38
38
  "metro-react-native-babel-preset": "^0.72.3",
@@ -43,5 +43,8 @@
43
43
  "react-native-system-navigation-bar": "2.2.0",
44
44
  "react-native-pell-rich-editor": "1.8.8",
45
45
  "react-native-vector-icons": "^9.2.0"
46
+ },
47
+ "resolutions": {
48
+ "@types/react": "18.2.0"
46
49
  }
47
50
  }