@fto-consult/expo-ui 9.4.0 → 9.5.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.
package/babel.config.js CHANGED
@@ -19,7 +19,12 @@ module.exports = function(api,opts) {
19
19
  return false;
20
20
  }
21
21
  return true;
22
- })
22
+ });
23
+ const inlineDovOptions = { unsafe: true};
24
+ const environmentPath = require("./copy-env-file")(projectRoot);
25
+ if(environmentPath && fs.existsSync(environmentPath)){
26
+ inlineDovOptions.path = environmentPath;
27
+ }
23
28
  require("@fto-consult/common/bin/generate-jsonconfig")({...opts,alias});
24
29
  return {
25
30
  presets: [
@@ -28,6 +33,7 @@ module.exports = function(api,opts) {
28
33
  ],
29
34
  plugins : [
30
35
  ...plugins,
36
+ ["inline-dotenv",inlineDovOptions],
31
37
  ["module-resolver", {"alias": alias}],
32
38
  "@babel/plugin-proposal-export-namespace-from",
33
39
  ...(reanimated?[reanimated]:[]),
@@ -10,7 +10,7 @@
10
10
  "@react-navigation/native-stack": "^6.9.26",
11
11
  "@react-navigation/stack": "^6.3.29",
12
12
  "@shopify/flash-list": "1.6.4",
13
- "expo": "^51.0.0",
13
+ "expo": "^51.0.8",
14
14
  "expo-camera": "~15.0.9",
15
15
  "expo-clipboard": "~6.0.3",
16
16
  "expo-document-picker": "~12.0.1",
package/copy-env-file.js CHANGED
@@ -1,6 +1,5 @@
1
1
  const fs = require("fs");
2
2
  const path = require("path");
3
- const {writeFile,copy} = require("./bin/utils");
4
3
 
5
4
  const checkEnv = (...envrs)=>{
6
5
  for(let i in envrs){
@@ -18,18 +17,8 @@ module.exports = (projectRoot,forceCreate)=>{
18
17
  projectRoot = projectRoot && typeof projectRoot =="string" && fs.existsSync(projectRoot) && projectRoot || process.cwd();
19
18
  const pWithEnv = path.resolve(projectRoot,`.env.${env}`);
20
19
  const environmentPath = fs.existsSync(pWithEnv) ? pWithEnv : path.resolve(projectRoot,".env");
21
- const localEnv = path.resolve(__dirname,".env");
22
- if(environmentPath && fs.existsSync(environmentPath) && environmentPath !== localEnv){
23
- // File ".env" will be created or overwritten by default.
24
- try {
25
- copy(environmentPath, localEnv,{overwrite:true});
26
- }
27
- catch (e){}
20
+ if(environmentPath && fs.existsSync(environmentPath)){
21
+ return environmentPath;
28
22
  }
29
- if(!fs.existsSync(localEnv) && forceCreate !==false){
30
- try {
31
- writeFile(localEnv,"");
32
- } catch(e){}
33
- }
34
- return localEnv;
23
+ return null;
35
24
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fto-consult/expo-ui",
3
- "version": "9.4.0",
3
+ "version": "9.5.0",
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": {
@@ -1,5 +1,5 @@
1
1
  import { Image } from 'react-native';
2
- import { resolveAssetSource } from '$ecomponents/Image';
2
+ import { resolveAssetSource } from '$ecomponents/Image/utils';
3
3
 
4
4
  /**
5
5
  * store with
@@ -3,51 +3,21 @@ import Menu from "$ecomponents/Menu";
3
3
  import Avatar from "$ecomponents/Avatar";
4
4
  import {isDecimal,setQueryParams,isValidURL,defaultDecimal,defaultStr as defaultString,isDataURL,isPromise,defaultBool,isObj,isNonNullString} from "$cutils";
5
5
  import notify from "$enotify";
6
- let maxWidthDiff = 100, maxHeightDiff = 100;
7
6
  import {StyleSheet} from "react-native";
8
7
  import React from "$react";
9
8
  import PropTypes from "prop-types";
10
- import {isMobileNative,isWeb} from "$cplatform";
9
+ import {isMobileNative} from "$cplatform";
10
+ import {getUri} from "./utils";
11
11
  import {uniqid} from "$cutils";
12
12
  //import Signature from "$ecomponents/Signature";
13
13
  import Label from "$ecomponents/Label";
14
14
  //import Cropper from "./Cropper";
15
-
16
15
  import {pickImage,nonZeroMin,canTakePhoto,takePhoto} from "$emedia";
17
16
  import addPhoto from "$eassets/add_photo.png";
18
17
 
19
- export const isAssets = (asset,staticAssets)=>{
20
- return isObj(asset) && isDecimal(asset.width) && isDecimal(asset.height) && isNonNullString(asset.uri) && (staticAssets ? asset.uri.contains("/static/"):true);
21
- }
22
- export const isValidImageSrc = (src)=>{
23
- if(!isNonNullString(src)) return false;
24
- return isDataURL(src) && !src.includes(",undefined") ? true : isValidURL(src) ? true : src.contains("/static/media/")? true : false;
25
- }
26
- export const resolveAssetSource = (source)=>{
27
- if(!source && !isDecimal(source)) return undefined;
28
- try {
29
- if(isWeb()){
30
- return {uri:source};
31
- }
32
- return Image.resolveAssetSource(source);
33
- } catch(e){
34
- console.log(e," triing to resolve image asset from source ",source)
35
- return undefined;
36
- }
37
- }
38
- export const getUri = (src,onlySting)=>{
39
- if(isAssets(src)) return src.uri;
40
- if(isDecimal(src)){
41
- if(onlySting !== false){
42
- return resolveAssetSource(src)?.uri;
43
- }
44
- return resolveAssetSource(src);
45
- }
46
- if(isObj(src) && isValidImageSrc(src.uri)){
47
- return src.uri;
48
- } else if(isValidImageSrc(src)) return src;
49
- return null;
50
- }
18
+ let maxWidthDiff = 100, maxHeightDiff = 100;
19
+
20
+ export * from "./utils";
51
21
 
52
22
  export default function ImageComponent(props){
53
23
  const [src,setSrc] = React.useState(defaultVal(props.src));
@@ -0,0 +1,36 @@
1
+ import {Image} from "react-native";
2
+ import { isObj,isDecimal,isNonNullString,isDataURL} from "$cutils";
3
+ import { isWeb } from "$cplatform";
4
+
5
+ export const isAssets = (asset,staticAssets)=>{
6
+ return isObj(asset) && isDecimal(asset.width) && isDecimal(asset.height) && isNonNullString(asset.uri) && (staticAssets ? asset.uri.contains("/static/"):true);
7
+ }
8
+ export const isValidImageSrc = (src)=>{
9
+ if(!isNonNullString(src)) return false;
10
+ return isDataURL(src) && !src.includes(",undefined") ? true : isValidURL(src) ? true : src.contains("/static/media/")? true : false;
11
+ }
12
+ export const resolveAssetSource = (source)=>{
13
+ if(!source && !isDecimal(source)) return undefined;
14
+ try {
15
+ if(isWeb()){
16
+ return {uri:source};
17
+ }
18
+ return Image.resolveAssetSource(source);
19
+ } catch(e){
20
+ console.log(e," triing to resolve image asset from source ",source)
21
+ return undefined;
22
+ }
23
+ }
24
+ export const getUri = (src,onlySting)=>{
25
+ if(isAssets(src)) return src.uri;
26
+ if(isDecimal(src)){
27
+ if(onlySting !== false){
28
+ return resolveAssetSource(src)?.uri;
29
+ }
30
+ return resolveAssetSource(src);
31
+ }
32
+ if(isObj(src) && isValidImageSrc(src.uri)){
33
+ return src.uri;
34
+ } else if(isValidImageSrc(src)) return src;
35
+ return null;
36
+ }