@fto-consult/expo-ui 8.25.13 → 8.25.15

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fto-consult/expo-ui",
3
- "version": "8.25.13",
3
+ "version": "8.25.15",
4
4
  "description": "Bibliothèque de composants UI Expo,react-native",
5
5
  "scripts": {
6
6
  "clear-npx-cache": "npx clear-npx-cache",
@@ -68,7 +68,7 @@
68
68
  "dependencies": {
69
69
  "@emotion/react": "^11.11.1",
70
70
  "@faker-js/faker": "^8.0.2",
71
- "@fto-consult/common": "^4.25.23",
71
+ "@fto-consult/common": "^4.26.1",
72
72
  "@fto-consult/node-utils": "^1.4.7",
73
73
  "apexcharts": "^3.45.2",
74
74
  "crypto-browserify": "^3.12.0",
package/src/pdf/index.js CHANGED
@@ -1,12 +1,14 @@
1
1
  import {createPDF as cCreatePdf,print as cPrint,fields as pdfFields} from "$cpdf";
2
2
  import Preloader from "$preloader";
3
- import {extendObj} from "$cutils";
4
3
  import pdfMake from "$cpdf/pdfmake";
5
4
  import notify from "$cnotify";
6
5
  import DialogProvider from "$ecomponents/Form/FormData/DialogProvider";
7
- import {isNonNullString,defaultObj,defaultStr} from "$cutils";
6
+ import {isNonNullString,defaultObj,defaultStr,extendObj} from "$cutils";
8
7
  import session from "$session";
9
8
  import printPdfMake from "./print";
9
+ import appConfig from "$capp/config";
10
+ import Auth from "$cauth";
11
+
10
12
 
11
13
  const {createPdf} = pdfMake;
12
14
  pdfMake.createPdf = (docDefinition,...rest)=>{
@@ -140,9 +142,47 @@ export const getPrintSettings = ({multiple,duplicateDocOnPage,pageBreakBeforeEac
140
142
  session.set(sessionName,sessionD);
141
143
  }
142
144
  DialogProvider.close();
143
- resolve({...opts,data,fields});
145
+ resolve({...opts,data:{...config,...data},fields});
146
+ },
147
+ onCancel : (e)=>{
148
+ reject(e);
149
+ Preloader.close();
144
150
  },
145
- onCancel : reject,
146
151
  })
147
152
  });
148
- }
153
+ }
154
+
155
+ /**** permet d'imprimer une table data
156
+ @param {Array<object>||object}, la/les donnée(s) à imprimer
157
+ @param {object<{
158
+ table|tableName {string}, le nom de la table data à utilser pour l'impression
159
+ print {funtion}, la fonction à utiliser pour faire l'impression, si cette fonction n'est pas définie, alors la table data lié à la table doit l'implémenter dans l'option print
160
+ }>}
161
+ @return Promise
162
+ */
163
+ export function printTableData(data,options){
164
+ options = Object.assign({},options);
165
+ const table = defaultStr(options.table,options.tableName);
166
+ const tableObj = appConfig.getTable(table);
167
+ if(!table || !tableObj){
168
+ return Promise.reject({message:`Vous devez spécifier la table pour laquelle vous souhaitez effectuer l'impression des données`})
169
+ }
170
+ const tableText = defaultStr(tableObj.label,tableObj.text,table);
171
+ const tablePrint = typeof options.print =="function"? options.print : typeof tableObj.print =="function"? tableObj.print : undefined;
172
+ if(!tablePrint){
173
+ return Promise.reject({message : `La fonction d'impression n'est pas supportée par la table [${tableText}]`})
174
+ }
175
+ if(!Auth.isTableDataAllowed({table,action:'print'})){
176
+ return Promise.reject({message:'Vous n\'etes pas autorisé à imprimer ce type de document'});
177
+ }
178
+ const printOptions = typeof tableObj.printOptions =="function"? tableObj.printOptions({...options,table,data}) : tableObj.printOptions;
179
+ return print(data,{
180
+ getSettings : (options)=>{
181
+ return getPrintSettings(extendObj(true,{},{sessionName:`print-${table}`},options,printOptions)).then(({data})=>{
182
+ return data;
183
+ });
184
+ },
185
+ print : tablePrint,
186
+ ...Object.assign({},options),
187
+ });
188
+ }
@@ -1,50 +1,72 @@
1
1
  module.exports = {
2
2
  "@fto-consult/expo-ui": {
3
- "name": "@fto-consult/expo-ui",
4
- "version": "8.25.12",
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.25.14",
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.3",
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": {
22
- "version": "0.17.3",
23
+ "version": "0.17.4",
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.3.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.25.23",
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"
46
+ },
47
+ "@react-native/assets-registry": {
48
+ "version": "0.72.0",
49
+ "url": "git@github.com:facebook/react-native.git",
50
+ "license": "MIT"
51
+ },
52
+ "@react-navigation/native": {
53
+ "version": "6.1.9",
54
+ "url": "https://reactnavigation.org",
55
+ "license": "MIT"
56
+ },
57
+ "@react-navigation/native-stack": {
58
+ "version": "6.9.17",
59
+ "url": "https://github.com/software-mansion/react-native-screens#readme",
60
+ "license": "MIT"
40
61
  },
41
- "@fto-consult/node-utils": {
42
- "version": "1.4.7",
62
+ "@react-navigation/stack": {
63
+ "version": "6.3.20",
64
+ "url": "https://reactnavigation.org/docs/stack-navigator/",
43
65
  "license": "MIT"
44
66
  },
45
- "apexcharts": {
46
- "version": "3.45.2",
47
- "url": "https://apexcharts.com",
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": {
@@ -57,53 +79,64 @@ module.exports = {
57
79
  "url": "https://github.com/tleunen/babel-plugin-module-resolver.git",
58
80
  "license": "MIT"
59
81
  },
60
- "crypto-browserify": {
61
- "version": "3.12.0",
62
- "url": "https://github.com/crypto-browserify/crypto-browserify",
82
+ "expo": {
83
+ "version": "50.0.6",
84
+ "url": "https://github.com/expo/expo/tree/main/packages/expo",
85
+ "license": "MIT"
86
+ },
87
+ "expo-camera": {
88
+ "version": "14.0.4",
89
+ "url": "https://docs.expo.dev/versions/latest/sdk/camera/",
63
90
  "license": "MIT"
64
91
  },
65
- "file-saver": {
66
- "version": "2.0.5",
67
- "url": "https://github.com/eligrey/FileSaver.js#readme",
92
+ "expo-clipboard": {
93
+ "version": "5.0.1",
94
+ "url": "https://docs.expo.dev/versions/latest/sdk/clipboard",
68
95
  "license": "MIT"
69
96
  },
70
- "google-libphonenumber": {
71
- "version": "3.2.34",
72
- "url": "https://ruimarinho.github.io/google-libphonenumber/",
73
- "license": "(MIT AND Apache-2.0)"
97
+ "expo-font": {
98
+ "version": "11.10.2",
99
+ "url": "https://docs.expo.dev/versions/latest/sdk/font/",
100
+ "license": "MIT"
74
101
  },
75
- "html2canvas": {
76
- "version": "1.4.1",
77
- "url": "https://html2canvas.hertzen.com",
102
+ "expo-image-picker": {
103
+ "version": "14.7.1",
104
+ "url": "https://docs.expo.dev/versions/latest/sdk/imagepicker/",
78
105
  "license": "MIT"
79
106
  },
80
- "htmlparser2-without-node-native": {
81
- "version": "3.9.2",
82
- "url": "git://github.com/fb55/htmlparser2.git",
107
+ "expo-linking": {
108
+ "version": "6.2.2",
109
+ "url": "https://docs.expo.dev/versions/latest/sdk/linking",
83
110
  "license": "MIT"
84
111
  },
85
- "is-plain-obj": {
86
- "version": "4.1.0",
112
+ "expo-sharing": {
113
+ "version": "11.10.0",
114
+ "url": "https://docs.expo.dev/versions/latest/sdk/sharing/",
87
115
  "license": "MIT"
88
116
  },
89
- "jsbarcode": {
90
- "version": "3.11.6",
91
- "url": "https://github.com/lindell/JsBarcode#readme",
117
+ "expo-sqlite": {
118
+ "version": "13.2.2",
119
+ "url": "https://docs.expo.dev/versions/latest/sdk/sqlite/",
92
120
  "license": "MIT"
93
121
  },
94
- "prop-types": {
95
- "version": "15.8.1",
96
- "url": "https://facebook.github.io/react/",
122
+ "expo-status-bar": {
123
+ "version": "1.11.1",
124
+ "url": "https://docs.expo.dev/versions/latest/sdk/status-bar/",
97
125
  "license": "MIT"
98
126
  },
99
- "react-content-loader": {
100
- "version": "6.2.1",
101
- "url": "https://github.com/danilowoz/react-content-loader",
127
+ "expo-system-ui": {
128
+ "version": "2.9.3",
129
+ "url": "https://docs.expo.dev/versions/latest/sdk/system-ui",
102
130
  "license": "MIT"
103
131
  },
104
- "react-dom": {
105
- "version": "18.2.0",
106
- "url": "https://reactjs.org/",
132
+ "expo-web-browser": {
133
+ "version": "12.8.2",
134
+ "url": "https://docs.expo.dev/versions/latest/sdk/webbrowser/",
135
+ "license": "MIT"
136
+ },
137
+ "react-native": {
138
+ "version": "0.73.2",
139
+ "url": "https://reactnative.dev/",
107
140
  "license": "MIT"
108
141
  },
109
142
  "react-native-big-list": {
@@ -111,63 +144,44 @@ module.exports = {
111
144
  "url": "https://marcocesarato.github.io/react-native-big-list-docs/",
112
145
  "license": "GPL-3.0-or-later"
113
146
  },
114
- "react-native-iphone-x-helper": {
115
- "version": "1.3.1",
116
- "url": "https://github.com/ptelad/react-native-iphone-x-helper#readme",
147
+ "react-native-blob-util": {
148
+ "version": "0.18.6",
149
+ "url": "https://github.com/RonRadtke/react-native-blob-util",
117
150
  "license": "MIT"
118
151
  },
119
- "react-native-mime-types": {
120
- "version": "2.4.0",
152
+ "react-native-gesture-handler": {
153
+ "version": "2.14.1",
154
+ "url": "https://github.com/software-mansion/react-native-gesture-handler#readme",
121
155
  "license": "MIT"
122
156
  },
123
- "react-native-paper": {
124
- "version": "5.12.3",
125
- "url": "https://callstack.github.io/react-native-paper",
157
+ "react-native-reanimated": {
158
+ "version": "3.6.2",
159
+ "url": "https://github.com/software-mansion/react-native-reanimated#readme",
126
160
  "license": "MIT"
127
161
  },
128
- "react-native-paper-dates": {
129
- "version": "0.21.8",
130
- "url": "https://github.com/web-ridge/react-native-paper-dates#readme",
162
+ "react-native-safe-area-context": {
163
+ "version": "4.8.2",
164
+ "url": "https://github.com/th3rdwave/react-native-safe-area-context#readme",
131
165
  "license": "MIT"
132
166
  },
133
- "react-native-web": {
134
- "version": "0.19.10",
135
- "url": "git://github.com/necolas/react-native-web.git",
167
+ "react-native-screens": {
168
+ "version": "3.29.0",
169
+ "url": "https://github.com/software-mansion/react-native-screens#readme",
136
170
  "license": "MIT"
137
171
  },
138
- "react-virtuoso": {
139
- "version": "4.6.3",
140
- "url": "https://virtuoso.dev/",
172
+ "react-native-svg": {
173
+ "version": "14.1.0",
174
+ "url": "https://github.com/react-native-community/react-native-svg",
141
175
  "license": "MIT"
142
176
  },
143
- "readable-stream": {
144
- "version": "4.5.2",
145
- "url": "https://github.com/nodejs/readable-stream",
177
+ "react-native-view-shot": {
178
+ "version": "3.8.0",
179
+ "url": "https://github.com/gre/react-native-view-shot",
146
180
  "license": "MIT"
147
181
  },
148
- "sanitize-filename": {
149
- "version": "1.6.3",
150
- "url": "git@github.com:parshap/node-sanitize-filename.git",
151
- "license": "WTFPL OR ISC"
152
- },
153
- "sharp-cli": {
154
- "version": "2.1.1",
155
- "url": "https://github.com/vseventer/sharp-cli",
156
- "license": "MIT"
157
- },
158
- "stream-browserify": {
159
- "version": "3.0.0",
160
- "url": "https://github.com/browserify/stream-browserify",
182
+ "react-native-webview": {
183
+ "version": "13.6.4",
184
+ "url": "https://github.com/react-native-webview/react-native-webview#readme",
161
185
  "license": "MIT"
162
- },
163
- "tippy.js": {
164
- "version": "6.3.7",
165
- "url": "https://atomiks.github.io/tippyjs/",
166
- "license": "MIT"
167
- },
168
- "xlsx": {
169
- "version": "0.18.5",
170
- "url": "https://sheetjs.com/",
171
- "license": "Apache-2.0"
172
186
  }
173
187
  };