@fto-consult/expo-ui 8.65.2 → 8.67.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
@@ -27,6 +27,7 @@ module.exports = function(api,opts) {
27
27
  }
28
28
  return true;
29
29
  })
30
+ require("./bin/generate-jsonconfig")({...opts,alias});
30
31
  return {
31
32
  presets: [
32
33
  ...filteredPlugins,
@@ -11,8 +11,8 @@
11
11
  "@react-navigation/native-stack": "^6.9.26",
12
12
  "@react-navigation/stack": "^6.3.29",
13
13
  "@shopify/flash-list": "1.6.3",
14
- "expo": "^50.0.14",
15
- "expo-camera": "~14.1.1",
14
+ "expo": "^50.0.15",
15
+ "expo-camera": "~14.1.2",
16
16
  "expo-clipboard": "~5.0.1",
17
17
  "expo-font": "~11.10.3",
18
18
  "expo-image-picker": "~14.7.1",
@@ -0,0 +1,86 @@
1
+ /***
2
+ génère le fichier jsconfig.json de vs code pour notemment spécifier les emplacements des alias et autres
3
+ */
4
+ const {writeFile,JSONFileManager,extendObj,isNonNullString} = require("@fto-consult/node-utils");
5
+ const fs = require("fs");
6
+ const path = require("path");
7
+
8
+ /****
9
+ génière les alias dans le fichier jsconfig.json
10
+ @param {
11
+ projectRoot {string}, le projectRoot
12
+ compilerOptions {obj}, les options de compilerOptions,
13
+ alias | paths {object}, les alias de l'application
14
+ }
15
+ */
16
+ module.exports = function generateJSONConfig(opts){
17
+ opts = Object.assign({},opts);
18
+ const alias = extendObj({},opts.alias,opts.paths);
19
+ const projectRoot = opts.projectRoot && typeof opts.projectRoot ==="string" && fs.existsSync(path.resolve(opts.projectRoot)) && path.resolve(opts.projectRoot) || process.cwd();
20
+ const jsconfigPath = path.resolve(projectRoot,"jsconfig.json");
21
+ if(!fs.existsSync(jsconfigPath)){
22
+ try {
23
+ writeFile(jsconfigPath,`{}`);
24
+ } catch(e){
25
+ console.log("generatingn jsconfig.json file on path",jsconfigPath);
26
+ }
27
+ }
28
+ if(!fs.existsSync(jsconfigPath)) {
29
+ console.log("unable to generate jsconfig.json on path "+jsconfigPath);
30
+ return;
31
+ }
32
+ const paths = {};
33
+ const JManager = JSONFileManager(jsconfigPath);
34
+ if(JManager.hasPackage){
35
+ const baseUrl = path.resolve(projectRoot);
36
+ let hasFoundAlias = false;
37
+ for(let i in alias){
38
+ const alia = alias[i];
39
+ const p = Array.isArray(alia) && alia.length && alia || isNonNullString(alia) && alia.split(",") || undefined;
40
+ let aliasIndex = String(i);
41
+ if(Array.isArray(p)){
42
+ const rAlias = [];
43
+ p.map((a)=>{
44
+ if(!isNonNullString(a)) return;
45
+ const aa = path.resolve(a);
46
+ if(!fs.existsSync(aa)) return;
47
+ const lstat = fs.lstatSync(aa);
48
+ let np = path.relative(baseUrl,aa).trim().split("\\").join("/");
49
+ if(lstat.isDirectory() && !lstat.isFile()){
50
+ np = np.trim().rtrim("/*").rtrim("/").rtrim("\\").trim();
51
+ if(!np){
52
+ np = "./*"
53
+ } else if(!np.endsWith("/*")){
54
+ np+="/*";
55
+ }
56
+ aliasIndex = aliasIndex.rtrim("/*").rtrim("/").rtrim("\\")+"/*";
57
+ }
58
+ if(np){
59
+ rAlias.push(np);
60
+ }
61
+ });
62
+ if(rAlias.length){
63
+ paths[aliasIndex] = rAlias;
64
+ hasFoundAlias = true;
65
+ }
66
+ }
67
+ }
68
+ const excludeA = JManager.get("exclude");
69
+ const jEx = Array.isArray(excludeA)? excludeA : [];
70
+ ["node_modules", "build", "dist","out","web-build"].map((a)=>{
71
+ if(!jEx.includes(a)){
72
+ jEx.push(a);
73
+ }
74
+ });
75
+ JManager.set("compilerOptions",extendObj(true,{},JManager.get("compilerOptions"),{
76
+ paths,
77
+ baseUrl : "./",
78
+ },opts.compilerOptions));
79
+ JManager.set("exclude",jEx);
80
+ JManager.persist();
81
+ if(!hasFoundAlias){
82
+ console.log("not valid alias to update in jsonconfig.json on path "+jsconfigPath);
83
+ }
84
+ console.log("jsconfig.json successfull created on path "+jsconfigPath);
85
+ }
86
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fto-consult/expo-ui",
3
- "version": "8.65.2",
3
+ "version": "8.67.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,21 +1,22 @@
1
1
  module.exports = {
2
2
  "@fto-consult/expo-ui": {
3
- "name": "@fto-consult/expo-ui",
4
- "version": "8.65.1",
5
- "repository": {
6
- "type": "git",
7
- "url": "git+https://github.com/borispipo/expo-ui.git"
8
- },
9
- "homepage": "https://github.com/borispipo/expo-ui#readme"
3
+ "version": "8.65.2",
4
+ "url": "https://github.com/borispipo/expo-ui#readme",
5
+ "license": "ISC"
10
6
  },
11
7
  "@babel/plugin-proposal-export-namespace-from": {
12
8
  "version": "7.18.9",
13
9
  "url": "https://babel.dev/docs/en/next/babel-plugin-proposal-export-namespace-from",
14
10
  "license": "MIT"
15
11
  },
16
- "@emotion/react": {
17
- "version": "11.11.4",
18
- "url": "https://github.com/emotion-js/emotion/tree/main/packages/react",
12
+ "@emotion/native": {
13
+ "version": "11.11.0",
14
+ "url": "https://emotion.sh",
15
+ "license": "MIT"
16
+ },
17
+ "@expo/html-elements": {
18
+ "version": "0.5.1",
19
+ "url": "https://github.com/expo/expo/tree/main/packages/html-elements",
19
20
  "license": "MIT"
20
21
  },
21
22
  "@expo/metro-config": {
@@ -23,28 +24,49 @@ module.exports = {
23
24
  "url": "https://github.com/expo/expo.git",
24
25
  "license": "MIT"
25
26
  },
27
+ "@expo/vector-icons": {
28
+ "version": "14.0.0",
29
+ "url": "https://expo.github.io/vector-icons",
30
+ "license": "MIT"
31
+ },
26
32
  "@expo/webpack-config": {
27
33
  "version": "19.0.1",
28
34
  "url": "https://github.com/expo/expo-webpack-integrations/tree/main/packages/webpack-config#readme",
29
35
  "license": "MIT"
30
36
  },
31
- "@faker-js/faker": {
32
- "version": "8.4.1",
33
- "url": "https://github.com/faker-js/faker.git",
37
+ "@pchmn/expo-material3-theme": {
38
+ "version": "1.3.2",
39
+ "url": "https://github.com/pchmn/expo-material3-theme#readme",
34
40
  "license": "MIT"
35
41
  },
36
- "@fto-consult/common": {
37
- "version": "4.39.11",
38
- "url": "https://github.com/borispipo/common#readme",
39
- "license": "ISC"
42
+ "@react-native-community/netinfo": {
43
+ "version": "11.1.0",
44
+ "url": "https://github.com/react-native-netinfo/react-native-netinfo#readme",
45
+ "license": "MIT"
40
46
  },
41
- "@fto-consult/node-utils": {
42
- "version": "1.7.1",
47
+ "@react-native/assets-registry": {
48
+ "version": "0.72.0",
49
+ "url": "git@github.com:facebook/react-native.git",
43
50
  "license": "MIT"
44
51
  },
45
- "apexcharts": {
46
- "version": "3.48.0",
47
- "url": "https://apexcharts.com",
52
+ "@react-navigation/native": {
53
+ "version": "6.1.17",
54
+ "url": "https://reactnavigation.org",
55
+ "license": "MIT"
56
+ },
57
+ "@react-navigation/native-stack": {
58
+ "version": "6.9.26",
59
+ "url": "https://github.com/software-mansion/react-native-screens#readme",
60
+ "license": "MIT"
61
+ },
62
+ "@react-navigation/stack": {
63
+ "version": "6.3.29",
64
+ "url": "https://reactnavigation.org/docs/stack-navigator/",
65
+ "license": "MIT"
66
+ },
67
+ "@shopify/flash-list": {
68
+ "version": "1.6.3",
69
+ "url": "https://shopify.github.io/flash-list/",
48
70
  "license": "MIT"
49
71
  },
50
72
  "babel-plugin-inline-dotenv": {
@@ -62,48 +84,74 @@ module.exports = {
62
84
  "url": "https://github.com/crypto-browserify/crypto-browserify",
63
85
  "license": "MIT"
64
86
  },
65
- "file-saver": {
66
- "version": "2.0.5",
67
- "url": "https://github.com/eligrey/FileSaver.js#readme",
87
+ "expo": {
88
+ "version": "50.0.15",
89
+ "url": "https://github.com/expo/expo/tree/main/packages/expo",
90
+ "license": "MIT"
91
+ },
92
+ "expo-camera": {
93
+ "version": "14.1.2",
94
+ "url": "https://docs.expo.dev/versions/latest/sdk/camera/",
95
+ "license": "MIT"
96
+ },
97
+ "expo-clipboard": {
98
+ "version": "5.0.1",
99
+ "url": "https://docs.expo.dev/versions/latest/sdk/clipboard",
100
+ "license": "MIT"
101
+ },
102
+ "expo-document-picker": {
103
+ "version": "11.10.1",
104
+ "url": "https://docs.expo.dev/versions/latest/sdk/document-picker/",
105
+ "license": "MIT"
106
+ },
107
+ "expo-font": {
108
+ "version": "11.10.3",
109
+ "url": "https://docs.expo.dev/versions/latest/sdk/font/",
68
110
  "license": "MIT"
69
111
  },
70
- "google-libphonenumber": {
71
- "version": "3.2.34",
72
- "url": "https://ruimarinho.github.io/google-libphonenumber/",
73
- "license": "(MIT AND Apache-2.0)"
112
+ "expo-image-picker": {
113
+ "version": "14.7.1",
114
+ "url": "https://docs.expo.dev/versions/latest/sdk/imagepicker/",
115
+ "license": "MIT"
74
116
  },
75
- "html2canvas": {
76
- "version": "1.4.1",
77
- "url": "https://html2canvas.hertzen.com",
117
+ "expo-intent-launcher": {
118
+ "version": "10.11.0",
119
+ "url": "https://docs.expo.dev/versions/latest/sdk/intent-launcher/",
78
120
  "license": "MIT"
79
121
  },
80
- "htmlparser2-without-node-native": {
81
- "version": "3.9.2",
82
- "url": "git://github.com/fb55/htmlparser2.git",
122
+ "expo-linking": {
123
+ "version": "6.2.2",
124
+ "url": "https://docs.expo.dev/versions/latest/sdk/linking",
83
125
  "license": "MIT"
84
126
  },
85
- "is-plain-obj": {
86
- "version": "4.1.0",
127
+ "expo-sharing": {
128
+ "version": "11.10.0",
129
+ "url": "https://docs.expo.dev/versions/latest/sdk/sharing/",
87
130
  "license": "MIT"
88
131
  },
89
- "jsbarcode": {
90
- "version": "3.11.6",
91
- "url": "https://github.com/lindell/JsBarcode#readme",
132
+ "expo-sqlite": {
133
+ "version": "13.4.0",
134
+ "url": "https://docs.expo.dev/versions/latest/sdk/sqlite/",
92
135
  "license": "MIT"
93
136
  },
94
- "prop-types": {
95
- "version": "15.8.1",
96
- "url": "https://facebook.github.io/react/",
137
+ "expo-status-bar": {
138
+ "version": "1.11.1",
139
+ "url": "https://docs.expo.dev/versions/latest/sdk/status-bar/",
97
140
  "license": "MIT"
98
141
  },
99
- "react-content-loader": {
100
- "version": "6.2.1",
101
- "url": "https://github.com/danilowoz/react-content-loader",
142
+ "expo-system-ui": {
143
+ "version": "2.9.3",
144
+ "url": "https://docs.expo.dev/versions/latest/sdk/system-ui",
102
145
  "license": "MIT"
103
146
  },
104
- "react-dom": {
105
- "version": "18.2.0",
106
- "url": "https://reactjs.org/",
147
+ "expo-web-browser": {
148
+ "version": "12.8.2",
149
+ "url": "https://docs.expo.dev/versions/latest/sdk/webbrowser/",
150
+ "license": "MIT"
151
+ },
152
+ "react-native": {
153
+ "version": "0.73.6",
154
+ "url": "https://reactnative.dev/",
107
155
  "license": "MIT"
108
156
  },
109
157
  "react-native-big-list": {
@@ -111,44 +159,45 @@ module.exports = {
111
159
  "url": "https://marcocesarato.github.io/react-native-big-list-docs/",
112
160
  "license": "GPL-3.0-or-later"
113
161
  },
114
- "react-native-iphone-x-helper": {
115
- "version": "1.3.1",
116
- "url": "https://github.com/ptelad/react-native-iphone-x-helper#readme",
162
+ "react-native-blob-util": {
163
+ "version": "0.18.6",
164
+ "url": "https://github.com/RonRadtke/react-native-blob-util",
117
165
  "license": "MIT"
118
166
  },
119
- "react-native-mime-types": {
120
- "version": "2.5.0",
167
+ "react-native-gesture-handler": {
168
+ "version": "2.14.1",
169
+ "url": "https://github.com/software-mansion/react-native-gesture-handler#readme",
121
170
  "license": "MIT"
122
171
  },
123
- "react-native-paper": {
124
- "version": "5.12.3",
125
- "url": "https://callstack.github.io/react-native-paper",
172
+ "react-native-reanimated": {
173
+ "version": "3.6.2",
174
+ "url": "https://github.com/software-mansion/react-native-reanimated#readme",
126
175
  "license": "MIT"
127
176
  },
128
- "react-native-paper-dates": {
129
- "version": "0.22.3",
130
- "url": "https://github.com/web-ridge/react-native-paper-dates#readme",
177
+ "react-native-safe-area-context": {
178
+ "version": "4.8.2",
179
+ "url": "https://github.com/th3rdwave/react-native-safe-area-context#readme",
131
180
  "license": "MIT"
132
181
  },
133
- "react-native-web": {
134
- "version": "0.19.10",
135
- "url": "git://github.com/necolas/react-native-web.git",
182
+ "react-native-screens": {
183
+ "version": "3.29.0",
184
+ "url": "https://github.com/software-mansion/react-native-screens#readme",
136
185
  "license": "MIT"
137
186
  },
138
- "react-virtuoso": {
139
- "version": "4.7.8",
140
- "url": "https://virtuoso.dev/",
187
+ "react-native-svg": {
188
+ "version": "14.1.0",
189
+ "url": "https://github.com/react-native-community/react-native-svg",
141
190
  "license": "MIT"
142
191
  },
143
- "readable-stream": {
144
- "version": "4.5.2",
145
- "url": "https://github.com/nodejs/readable-stream",
192
+ "react-native-view-shot": {
193
+ "version": "3.8.0",
194
+ "url": "https://github.com/gre/react-native-view-shot",
146
195
  "license": "MIT"
147
196
  },
148
- "sanitize-filename": {
149
- "version": "1.6.3",
150
- "url": "git@github.com:parshap/node-sanitize-filename.git",
151
- "license": "WTFPL OR ISC"
197
+ "react-native-webview": {
198
+ "version": "13.6.4",
199
+ "url": "https://github.com/react-native-webview/react-native-webview#readme",
200
+ "license": "MIT"
152
201
  },
153
202
  "sharp-cli": {
154
203
  "version": "2.1.1",
@@ -160,19 +209,9 @@ module.exports = {
160
209
  "url": "https://github.com/browserify/stream-browserify",
161
210
  "license": "MIT"
162
211
  },
163
- "tippy.js": {
164
- "version": "6.3.7",
165
- "url": "https://atomiks.github.io/tippyjs/",
166
- "license": "MIT"
167
- },
168
212
  "vm": {
169
213
  "version": "0.1.0",
170
214
  "url": "https://github.com/DiegoRBaquero/node-vm#readme",
171
215
  "license": "MIT"
172
- },
173
- "xlsx": {
174
- "version": "0.18.5",
175
- "url": "https://sheetjs.com/",
176
- "license": "Apache-2.0"
177
216
  }
178
217
  };