@fto-consult/expo-ui 8.76.5 → 8.76.7

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.
@@ -1,38 +1,38 @@
1
-
2
- module.exports = {
3
- "@emotion/native": "^11.11.0",
4
- "@expo/html-elements": "^0.5.1",
5
- "@expo/vector-icons": "^14.0.0",
6
- "@pchmn/expo-material3-theme": "^1.3.2",
7
- "@react-native-community/netinfo": "11.1.0",
8
- "@react-native/assets-registry": "^0.72.0",
9
- "react-native-get-random-values": "~1.8.0",
10
- "@react-navigation/native": "^6.1.17",
11
- "@react-navigation/native-stack": "^6.9.26",
12
- "@react-navigation/stack": "^6.3.29",
13
- "@shopify/flash-list": "1.6.3",
14
- "expo": "^50.0.17",
15
- "expo-camera": "~14.1.3",
16
- "expo-clipboard": "~5.0.1",
17
- "expo-font": "~11.10.3",
18
- "expo-image-picker": "~14.7.1",
19
- "expo-linking": "~6.2.2",
20
- "expo-sharing": "~11.10.0",
21
- "expo-sqlite": "~13.4.0",
22
- "expo-status-bar": "~1.11.1",
23
- "expo-system-ui": "~2.9.4",
24
- "expo-web-browser": "~12.8.2",
25
- "react": "18.2.0",
26
- "react-native": "0.73.6",
27
- "react-native-safe-area-context": "4.8.2",
28
- "react-native-screens": "~3.29.0",
29
- "react-native-svg": "14.1.0",
30
- "react-native-webview": "13.6.4",
31
- "react-native-gesture-handler": "~2.14.0",
32
- "react-native-reanimated": "~3.6.2",
33
- "react-native-view-shot": "3.8.0",
34
- "expo-intent-launcher": "~10.11.0",
35
- "expo-image-manipulator": "~11.8.0",
36
- "expo-document-picker": "~11.10.1"
37
- };
1
+
2
+ module.exports = {
3
+ "@emotion/native": "^11.11.0",
4
+ "@expo/html-elements": "^0.5.1",
5
+ "@expo/vector-icons": "^14.0.0",
6
+ "@pchmn/expo-material3-theme": "^1.3.2",
7
+ "@react-native-community/netinfo": "11.1.0",
8
+ "@react-native/assets-registry": "^0.72.0",
9
+ "react-native-get-random-values": "~1.8.0",
10
+ "@react-navigation/native": "^6.1.17",
11
+ "@react-navigation/native-stack": "^6.9.26",
12
+ "@react-navigation/stack": "^6.3.29",
13
+ "@shopify/flash-list": "1.6.3",
14
+ "expo": "^50.0.17",
15
+ "expo-camera": "~14.1.3",
16
+ "expo-clipboard": "~5.0.1",
17
+ "expo-font": "~11.10.3",
18
+ "expo-image-picker": "~14.7.1",
19
+ "expo-linking": "~6.2.2",
20
+ "expo-sharing": "~11.10.0",
21
+ "expo-sqlite": "~13.4.0",
22
+ "expo-status-bar": "~1.11.1",
23
+ "expo-system-ui": "~2.9.4",
24
+ "expo-web-browser": "~12.8.2",
25
+ "react": "18.2.0",
26
+ "react-native": "0.73.6",
27
+ "react-native-safe-area-context": "4.8.2",
28
+ "react-native-screens": "~3.29.0",
29
+ "react-native-svg": "14.1.0",
30
+ "react-native-webview": "13.6.4",
31
+ "react-native-gesture-handler": "~2.14.0",
32
+ "react-native-reanimated": "~3.6.2",
33
+ "react-native-view-shot": "3.8.0",
34
+ "expo-intent-launcher": "~10.11.0",
35
+ "expo-image-manipulator": "~11.8.0",
36
+ "expo-document-picker": "~11.10.1"
37
+ };
38
38
 
@@ -1,18 +1,18 @@
1
- {
2
- "build": {
3
- "development": {
4
- "developmentClient": true,
5
- "distribution": "internal"
6
- },
7
- "preview": {
8
- "distribution": "internal",
9
- "android": {
10
- "buildType": "apk"
11
- }
12
- },
13
- "production": {}
14
- },
15
- "submit": {
16
- "production": {}
17
- }
18
- }
1
+ {
2
+ "build": {
3
+ "development": {
4
+ "developmentClient": true,
5
+ "distribution": "internal"
6
+ },
7
+ "preview": {
8
+ "distribution": "internal",
9
+ "android": {
10
+ "buildType": "apk"
11
+ }
12
+ },
13
+ "production": {}
14
+ },
15
+ "submit": {
16
+ "production": {}
17
+ }
18
+ }
package/expo-ui.json CHANGED
@@ -1,11 +1,11 @@
1
- {
2
- "name": "@fto-consult/expo-ui",
3
- "version": "6.44.4",
4
- "description": "Bibliothèque de composants UI Expo,react-native",
5
- "bin": {
6
- "expo-ui": "./bin/index.js"
7
- },
8
- "author": "Boris Fouomene",
9
- "license": "ISC",
10
- "homepage": "https://github.com/borispipo/expo-ui#readme"
1
+ {
2
+ "name": "@fto-consult/expo-ui",
3
+ "version": "6.44.4",
4
+ "description": "Bibliothèque de composants UI Expo,react-native",
5
+ "bin": {
6
+ "expo-ui": "./bin/index.js"
7
+ },
8
+ "author": "Boris Fouomene",
9
+ "license": "ISC",
10
+ "homepage": "https://github.com/borispipo/expo-ui#readme"
11
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fto-consult/expo-ui",
3
- "version": "8.76.5",
3
+ "version": "8.76.7",
4
4
  "description": "Bibliothèque de composants UI Expo,react-native",
5
5
  "react-native-paper-doc": "https://github.com/callstack/react-native-paper/tree/main/docs/docs/guides",
6
6
  "scripts": {
@@ -70,7 +70,7 @@
70
70
  "dependencies": {
71
71
  "@emotion/react": "^11.11.1",
72
72
  "@faker-js/faker": "^8.0.2",
73
- "@fto-consult/common": "^4.47.0",
73
+ "@fto-consult/common": "^4.48.3",
74
74
  "@fto-consult/expo-ui": "^8.73.1",
75
75
  "apexcharts": "^3.49.0",
76
76
  "file-saver": "^2.0.5",
@@ -5,12 +5,14 @@ import {defaultObj} from "$cutils";
5
5
  import Icon from "$ecomponents/Icon";
6
6
  import {Pressable,StyleSheet} from "react-native";
7
7
  import PropTypes from "prop-types";
8
+ import View from "$ecomponents/View";
8
9
 
9
- const ButtonStatusComponent = React.forwardRef(({status,withIcon,color,backgroundColor,label,text,icon,editIconProps,editIcon,iconProps,onPress,editable,testID,left,right,labelProps,...containerProps},ref)=>{
10
+ const ButtonStatusComponent = React.forwardRef(({withIcon,color,backgroundColor,label,text,icon,editIconProps,editIcon,iconProps,onPress,editable,testID,left,right,labelProps,containerProps,...rest},ref)=>{
10
11
  labelProps = defaultObj(labelProps);
11
12
  iconProps = defaultObj(iconProps);
12
- testID = defaultStr(testID,"RN_ButtonStatusComponent_"+status);
13
- const style = defaultObj(StyleSheet.flatten(containerProps.style));
13
+ containerProps = defaultObj(containerProps);
14
+ testID = defaultStr(testID,"RN_ButtonStatusComponent_");
15
+ const style = defaultObj(StyleSheet.flatten(rest.style));
14
16
  color = theme.Colors.isValid(color) ? color : theme.Colors.isValid(style.color)? style.color : undefined;
15
17
  backgroundColor = theme.Colors.isValid(backgroundColor) ? backgroundColor : theme.Colors.isValid(style.backgroundColor)?style.backgroundColor : undefined;
16
18
  const rP = {style:[color && {color}, backgroundColor && {backgroundColor}]};
@@ -27,14 +29,17 @@ const ButtonStatusComponent = React.forwardRef(({status,withIcon,color,backgroun
27
29
  label = React.isValidElement(label,true) && label || React.isValid(text,true) && text || null;
28
30
  left = typeof left =='function'? left(rP) : left;
29
31
  right = typeof right =='function'? right(rP) : right;
32
+ icon = typeof icon =="function"? icon(rP) : icon;
30
33
  const icProps = {color,size:15,...iconProps,style:[theme.styles.noMargin,theme.styles.noPadding,iconProps.style],onPress}
31
- return <Pressable ref={ref} onPres={onPress} testID={`${testID}_Container`} {...containerProps} style={[styles.button,theme.styles.row,theme.styles.flexWrap,backgroundColor && {backgroundColor},style]}>
32
- {React.isValidElement(left)? left : null}
33
- {withIcon !== false && React.isValidElement(icon,true) ? <Icon {...icProps} icon={icon} />:null}
34
- {label ? <Label testID={`${testID}_Label`} {...labelProps} style={[color && {color},{fontSize:13},labelProps.style]}>{label}</Label> : null}
35
- {withIcon !== false && editable && React.isValidElement(editIcon,true) ? <Icon {...icProps} icon={editIcon} {...defaultObj(editIconProps)}/>:null}
36
- {React.isValidElement(right)? right : null}
37
- </Pressable>
34
+ return <View {...containerProps} testID={testID+"_Container"} style={[styles.container,containerProps.style]}>
35
+ <Pressable ref={ref} onPres={onPress} testID={`${testID}`} {...rest} style={[styles.button,theme.styles.row,theme.styles.flexWrap,backgroundColor && {backgroundColor},style]}>
36
+ {React.isValidElement(left)? left : null}
37
+ {withIcon !== false && React.isValidElement(icon,true) ? <Icon testID={testID+"_Icon"} {...icProps} icon={icon} />:null}
38
+ {label ? <Label testID={`${testID}_Label`} {...labelProps} style={[color && {color},{fontSize:13},labelProps.style]}>{label}</Label> : null}
39
+ {withIcon !== false && editable && React.isValidElement(editIcon,true) ? <Icon {...icProps} icon={editIcon} {...defaultObj(editIconProps)}/>:null}
40
+ {React.isValidElement(right)? right : null}
41
+ </Pressable>
42
+ </View>
38
43
  });
39
44
 
40
45
  ButtonStatusComponent.displayName = "ButtonStatusComponent";
@@ -52,6 +57,9 @@ const styles = StyleSheet.create({
52
57
  paddingVertical:4,
53
58
  paddingHorizontal:10,
54
59
  alignSelf: 'flex-start',
60
+ },
61
+ container : {
62
+ alignSelf : "flex-start",
55
63
  }
56
64
  });
57
65
 
@@ -70,9 +78,16 @@ ButtonStatusComponent.propTypes = {
70
78
  withIcon : PropTypes.bool, //si les icones seront affichés
71
79
  color : PropTypes.string, //la couleur du status
72
80
  backgroundColor : PropTypes.string, //la couleur d'arrière plan
73
- iconProps : PropTypes.object, //les props à passer aux différents icones du composant
74
81
  onPres : PropTypes.func, //la fonction appelée lorsqu'on clique sur le status
75
82
  editable : PropTypes.bool, //si le status est modifiable, dans ce cas une icone est affiché à droite lorsque le status est editable
83
+ /**** l'icone du composant Status par défaut */
84
+ icon : PropTypes.oneOfType([
85
+ PropTypes.node,
86
+ PropTypes.element,
87
+ PropTypes.string,
88
+ PropTypes.func,
89
+ ]),
90
+ iconProps : PropTypes.object, //les props à passer aux différents icones du composant
76
91
  left : PropTypes.oneOfType([ //l'élément react à rendre à gauche du texte (label)
77
92
  PropTypes.func,
78
93
  PropTypes.node,
@@ -86,4 +101,5 @@ ButtonStatusComponent.propTypes = {
86
101
  PropTypes.element,
87
102
  ]),
88
103
  editIconProps : PropTypes.object,//les props de l'iconne edit
104
+ containerProps : PropTypes.shape(Object.assign({},View.propTypes)), //les props du composant container, idem à ceux du composant $ecomponents/View
89
105
  }