@wavemaker/app-rn-runtime 11.3.2-next.27252 → 11.4.0-next.1417011

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 (41) hide show
  1. app-rn-runtime/actions/notification-action.js +4 -5
  2. app-rn-runtime/actions/notification-action.js.map +1 -1
  3. app-rn-runtime/components/container/tabs/tabpane/tabpane.component.js +1 -4
  4. app-rn-runtime/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
  5. app-rn-runtime/components/container/tabs/tabs.component.js +10 -25
  6. app-rn-runtime/components/container/tabs/tabs.component.js.map +1 -1
  7. app-rn-runtime/components/data/form/form.component.js +1 -1
  8. app-rn-runtime/components/data/form/form.component.js.map +1 -1
  9. app-rn-runtime/components/data/list/list.component.js +4 -16
  10. app-rn-runtime/components/data/list/list.component.js.map +1 -1
  11. app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js +1 -2
  12. app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
  13. app-rn-runtime/components/device/camera/camera.component.js +4 -6
  14. app-rn-runtime/components/device/camera/camera.component.js.map +1 -1
  15. app-rn-runtime/components/device/camera/camera.props.js +1 -0
  16. app-rn-runtime/components/device/camera/camera.props.js.map +1 -1
  17. app-rn-runtime/components/input/baseinput/baseinput.component.js +0 -7
  18. app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
  19. app-rn-runtime/components/page/partial-container/partial-container.styles.js +1 -2
  20. app-rn-runtime/components/page/partial-container/partial-container.styles.js.map +1 -1
  21. app-rn-runtime/core/injector.js +1 -15
  22. app-rn-runtime/core/injector.js.map +1 -1
  23. app-rn-runtime/core/tappable.component.js +2 -9
  24. app-rn-runtime/core/tappable.component.js.map +1 -1
  25. app-rn-runtime/core/utils.js +0 -6
  26. app-rn-runtime/core/utils.js.map +1 -1
  27. app-rn-runtime/package.json +5 -5
  28. app-rn-runtime/runtime/App.js +14 -13
  29. app-rn-runtime/runtime/App.js.map +1 -1
  30. app-rn-runtime/runtime/App.navigator.js +12 -2
  31. app-rn-runtime/runtime/App.navigator.js.map +1 -1
  32. app-rn-runtime/runtime/services/device/camera-service.js +6 -28
  33. app-rn-runtime/runtime/services/device/camera-service.js.map +1 -1
  34. app-rn-runtime/runtime/services/device/scan-service.js +14 -15
  35. app-rn-runtime/runtime/services/device/scan-service.js.map +1 -1
  36. app-rn-runtime/variables/device/camera/capture-image.operation.js.map +1 -1
  37. app-rn-runtime/variables/device/camera/capture-video.operation.js.map +1 -1
  38. app-rn-runtime/variables/device/file/upload-file.operation.js +21 -43
  39. app-rn-runtime/variables/device/file/upload-file.operation.js.map +1 -1
  40. app-rn-runtime/variables/service-variable.js +7 -12
  41. app-rn-runtime/variables/service-variable.js.map +1 -1
@@ -1,56 +1,34 @@
1
1
  import axios from 'axios';
2
- import { Platform } from 'react-native';
3
2
  import { endsWith } from 'lodash-es';
4
- import * as DocumentPicker from 'expo-document-picker';
5
3
  import { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';
6
- const namedParameters = {
7
- copyToCacheDirectory: false,
8
- multiple: false,
9
- type: '*/*'
10
- };
11
4
  export class UploadFileOperation {
12
- chooseFile() {
13
- return DocumentPicker.getDocumentAsync(namedParameters).then(response => {
14
- return Platform.OS === 'web' ? response.file : response.uri;
15
- });
16
- }
17
5
  invoke(params) {
18
6
  params.serverUrl = endsWith(params.serverUrl, '/') ? params.serverUrl : params.serverUrl + '/';
19
7
  let serverUrl = params.serverUrl + 'services/file/uploadFile';
20
8
  if (params.remoteFolder) {
21
9
  serverUrl = serverUrl + '?relativePath=' + params.remoteFolder;
22
10
  }
23
- return Promise.resolve().then(() => {
24
- if (!params.localFile && params.browse) {
25
- return this.chooseFile();
26
- } else {
27
- return params.localFile;
28
- }
29
- }).then(filePath => {
30
- if (!filePath) {
31
- return;
32
- }
33
- const fileName = filePath.split('/').pop() || '';
34
- const arr = fileName.split('.');
35
- const fileExtension = '.' + arr[arr.length - 1];
36
- let fileObj = {
37
- uri: filePath,
38
- type: FileExtensionTypesMap[fileExtension],
39
- name: fileName
40
- };
41
- let formData = new FormData();
42
- formData.append('files', fileObj);
43
- return axios({
44
- url: serverUrl,
45
- method: 'POST',
46
- headers: {
47
- 'Content-Type': 'multipart/form-data'
48
- },
49
- data: formData
50
- }).then(response => {
51
- return response.data[0];
52
- }, error => error);
53
- });
11
+ const filePath = params.localFile;
12
+ const fileName = filePath.split('/').pop() || '';
13
+ const arr = fileName.split('.');
14
+ const fileExtension = '.' + arr[arr.length - 1];
15
+ let fileObj = {
16
+ uri: filePath,
17
+ type: FileExtensionTypesMap[fileExtension],
18
+ name: fileName
19
+ };
20
+ let formData = new FormData();
21
+ formData.append('files', fileObj);
22
+ return axios({
23
+ url: serverUrl,
24
+ method: 'POST',
25
+ headers: {
26
+ 'Content-Type': 'multipart/form-data'
27
+ },
28
+ data: formData
29
+ }).then(response => {
30
+ return response.data[0];
31
+ }, error => error);
54
32
  }
55
33
  }
56
34
  //# sourceMappingURL=upload-file.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["axios","Platform","endsWith","DocumentPicker","FileExtensionTypesMap","namedParameters","copyToCacheDirectory","multiple","type","UploadFileOperation","chooseFile","getDocumentAsync","then","response","OS","file","uri","invoke","params","serverUrl","remoteFolder","Promise","resolve","localFile","browse","filePath","fileName","split","pop","arr","fileExtension","length","fileObj","name","formData","FormData","append","url","method","headers","data","error"],"sources":["upload-file.operation.tsx"],"sourcesContent":["import axios from 'axios';\nimport { Platform } from 'react-native';\nimport { endsWith } from 'lodash-es';\nimport * as DocumentPicker from 'expo-document-picker';\n\nimport { Operation } from '@wavemaker/app-rn-runtime/variables/device/operation.provider';\nimport { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';\n\nexport interface UploadFileInput {\n localFile: string;\n remoteFolder: string;\n serverUrl: string;\n browse: boolean;\n}\n\nexport interface UploadFileOutput {\n fileName: string;\n path: string;\n length: number;\n success: boolean;\n inlinePath: string;\n errorMessage: string;\n}\n\nconst namedParameters = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport class UploadFileOperation implements Operation {\n\n public chooseFile() {\n return DocumentPicker.getDocumentAsync(namedParameters).then((response: any) => {\n return Platform.OS === 'web' ? response.file : response.uri;\n });\n }\n\n public invoke(params: UploadFileInput): Promise<UploadFileOutput> {\n params.serverUrl = endsWith(params.serverUrl, '/') ? params.serverUrl : params.serverUrl + '/';\n let serverUrl = params.serverUrl + 'services/file/uploadFile';\n if (params.remoteFolder) {\n serverUrl = serverUrl + '?relativePath=' + params.remoteFolder\n }\n return Promise.resolve().then(() => {\n if (!params.localFile && params.browse) {\n return this.chooseFile();\n } else {\n return params.localFile;\n }\n }).then((filePath: string) => {\n if (!filePath) {\n return;\n }\n const fileName: string | undefined = filePath.split('/').pop() || '';\n const arr: any = fileName.split('.');\n const fileExtension: string = '.' + arr[arr.length - 1];\n let fileObj = {\n uri: filePath,\n type: FileExtensionTypesMap[fileExtension],\n name: fileName,\n };\n\n let formData = new FormData();\n formData.append('files', fileObj);\n return axios({\n url: serverUrl,\n method: 'POST',\n headers: {\n 'Content-Type': 'multipart/form-data'\n },\n data: formData\n }).then(\n (response) => {\n return response.data[0];\n }, error => error);\n });\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,QAAQ,QAAQ,WAAW;AACpC,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAGtD,SAASC,qBAAqB,QAAQ,qDAAqD;AAkB3F,MAAMC,eAAe,GAAG;EACtBC,oBAAoB,EAAE,KAAK;EAC3BC,QAAQ,EAAE,KAAK;EACfC,IAAI,EAAE;AACR,CAAC;AAED,OAAO,MAAMC,mBAAmB,CAAsB;EAE7CC,UAAU,GAAG;IAClB,OAAOP,cAAc,CAACQ,gBAAgB,CAACN,eAAe,CAAC,CAACO,IAAI,CAAEC,QAAa,IAAK;MAC9E,OAAOZ,QAAQ,CAACa,EAAE,KAAK,KAAK,GAAGD,QAAQ,CAACE,IAAI,GAAGF,QAAQ,CAACG,GAAG;IAC7D,CAAC,CAAC;EACJ;EAEOC,MAAM,CAACC,MAAuB,EAA6B;IAChEA,MAAM,CAACC,SAAS,GAAGjB,QAAQ,CAACgB,MAAM,CAACC,SAAS,EAAE,GAAG,CAAC,GAAGD,MAAM,CAACC,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,GAAG;IAC9F,IAAIA,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,0BAA0B;IAC7D,IAAID,MAAM,CAACE,YAAY,EAAE;MACvBD,SAAS,GAAGA,SAAS,GAAG,gBAAgB,GAAGD,MAAM,CAACE,YAAY;IAChE;IACA,OAAOC,OAAO,CAACC,OAAO,EAAE,CAACV,IAAI,CAAC,MAAM;MAClC,IAAI,CAACM,MAAM,CAACK,SAAS,IAAIL,MAAM,CAACM,MAAM,EAAE;QACtC,OAAO,IAAI,CAACd,UAAU,EAAE;MAC1B,CAAC,MAAM;QACL,OAAOQ,MAAM,CAACK,SAAS;MACzB;IACF,CAAC,CAAC,CAACX,IAAI,CAAEa,QAAgB,IAAK;MAC5B,IAAI,CAACA,QAAQ,EAAE;QACb;MACF;MACA,MAAMC,QAA4B,GAAGD,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,EAAE,IAAI,EAAE;MACpE,MAAMC,GAAQ,GAAGH,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC;MACpC,MAAMG,aAAqB,GAAG,GAAG,GAAGD,GAAG,CAACA,GAAG,CAACE,MAAM,GAAG,CAAC,CAAC;MACvD,IAAIC,OAAO,GAAG;QACZhB,GAAG,EAAES,QAAQ;QACbjB,IAAI,EAAEJ,qBAAqB,CAAC0B,aAAa,CAAC;QAC1CG,IAAI,EAAEP;MACR,CAAC;MAED,IAAIQ,QAAQ,GAAG,IAAIC,QAAQ,EAAE;MAC7BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEJ,OAAO,CAAC;MACjC,OAAOhC,KAAK,CAAC;QACXqC,GAAG,EAAElB,SAAS;QACdmB,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE;QAClB,CAAC;QACDC,IAAI,EAAEN;MACR,CAAC,CAAC,CAACtB,IAAI,CACJC,QAAQ,IAAK;QACd,OAAOA,QAAQ,CAAC2B,IAAI,CAAC,CAAC,CAAC;MACzB,CAAC,EAAEC,KAAK,IAAIA,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ;AACF"}
1
+ {"version":3,"names":["axios","endsWith","FileExtensionTypesMap","UploadFileOperation","invoke","params","serverUrl","remoteFolder","filePath","localFile","fileName","split","pop","arr","fileExtension","length","fileObj","uri","type","name","formData","FormData","append","url","method","headers","data","then","response","error"],"sources":["upload-file.operation.tsx"],"sourcesContent":["import axios from 'axios';\nimport { endsWith } from 'lodash-es';\n\nimport { Operation } from '@wavemaker/app-rn-runtime/variables/device/operation.provider';\nimport { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';\n\nexport interface UploadFileInput {\n localFile: string;\n remoteFolder: string;\n serverUrl: string;\n}\n\nexport interface UploadFileOutput {\n fileName: string;\n path: string;\n length: number;\n success: boolean;\n inlinePath: string;\n errorMessage: string;\n}\n\nexport class UploadFileOperation implements Operation {\n\n public invoke(params: UploadFileInput): Promise<UploadFileOutput> {\n params.serverUrl = endsWith(params.serverUrl, '/') ? params.serverUrl : params.serverUrl + '/';\n let serverUrl = params.serverUrl + 'services/file/uploadFile';\n if (params.remoteFolder) {\n serverUrl = serverUrl + '?relativePath=' + params.remoteFolder\n }\n const filePath = params.localFile;\n const fileName: string | undefined = filePath.split('/').pop() || '';\n const arr: any = fileName.split('.');\n const fileExtension: string = '.' + arr[arr.length - 1];\n let fileObj = {\n uri: filePath,\n type: FileExtensionTypesMap[fileExtension],\n name: fileName,\n };\n\n let formData = new FormData();\n formData.append('files', fileObj);\n return axios({\n url: serverUrl,\n method: 'POST',\n headers: {\n 'Content-Type': 'multipart/form-data'\n },\n data: formData\n }).then(\n (response) => {\n return response.data[0];\n }, error => error);\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,WAAW;AAGpC,SAASC,qBAAqB,QAAQ,qDAAqD;AAiB3F,OAAO,MAAMC,mBAAmB,CAAsB;EAE7CC,MAAM,CAACC,MAAuB,EAA6B;IAChEA,MAAM,CAACC,SAAS,GAAGL,QAAQ,CAACI,MAAM,CAACC,SAAS,EAAE,GAAG,CAAC,GAAGD,MAAM,CAACC,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,GAAG;IAC9F,IAAIA,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,0BAA0B;IAC7D,IAAID,MAAM,CAACE,YAAY,EAAE;MACvBD,SAAS,GAAGA,SAAS,GAAG,gBAAgB,GAAGD,MAAM,CAACE,YAAY;IAChE;IACA,MAAMC,QAAQ,GAAGH,MAAM,CAACI,SAAS;IACjC,MAAMC,QAA4B,GAAGF,QAAQ,CAACG,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,EAAE,IAAI,EAAE;IACpE,MAAMC,GAAQ,GAAGH,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC;IACpC,MAAMG,aAAqB,GAAG,GAAG,GAAGD,GAAG,CAACA,GAAG,CAACE,MAAM,GAAG,CAAC,CAAC;IACvD,IAAIC,OAAO,GAAG;MACZC,GAAG,EAAET,QAAQ;MACbU,IAAI,EAAEhB,qBAAqB,CAACY,aAAa,CAAC;MAC1CK,IAAI,EAAET;IACR,CAAC;IAED,IAAIU,QAAQ,GAAG,IAAIC,QAAQ,EAAE;IAC7BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEN,OAAO,CAAC;IACjC,OAAOhB,KAAK,CAAC;MACXuB,GAAG,EAAEjB,SAAS;MACdkB,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEN;IACR,CAAC,CAAC,CAACO,IAAI,CACJC,QAAQ,IAAK;MACd,OAAOA,QAAQ,CAACF,IAAI,CAAC,CAAC,CAAC;IACzB,CAAC,EAAEG,KAAK,IAAIA,KAAK,CAAC;EACpB;AACF"}
@@ -1,7 +1,7 @@
1
1
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
3
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
- import { isEqual, isEmpty } from 'lodash';
4
+ import { isEqual } from 'lodash';
5
5
  import { ServiceVariable as _ServiceVariable } from '@wavemaker/variables/src/model/variable/service-variable';
6
6
  import httpService from '@wavemaker/app-rn-runtime/variables/http.service';
7
7
  import injector from '@wavemaker/app-rn-runtime/core/injector';
@@ -53,7 +53,7 @@ export class ServiceVariable extends _ServiceVariable {
53
53
  const last = this.params;
54
54
  const latest = this.config.paramProvider();
55
55
  if (!isEqual(last, latest)) {
56
- this.invoke(latest);
56
+ this.invoke();
57
57
  }
58
58
  return Promise.resolve(this);
59
59
  }
@@ -67,12 +67,7 @@ export class ServiceVariable extends _ServiceVariable {
67
67
  this.appConfig.refresh(false);
68
68
  }
69
69
  invoke(options, onSuccess, onError) {
70
- this.params = this.config.paramProvider();
71
- let params = options ? options.inputFields ? options.inputFields : options : undefined;
72
- if (!params) {
73
- params = !isEmpty(this.dataBinding) ? this.dataBinding : this.config.paramProvider();
74
- }
75
- this.dataBinding = params;
70
+ this.dataBinding = this.params = this.config.paramProvider();
76
71
  // service definitions data depends on whether user logged in or not
77
72
  // Try to get the latest definition
78
73
  this.serviceInfo = this.config.getServiceInfo();
@@ -108,9 +103,9 @@ export class ServiceVariable extends _ServiceVariable {
108
103
  // }
109
104
  // }
110
105
 
111
- // setInput(key: any, val?: any, options?: any) {
112
- // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));
113
- // return this.params;
114
- // }
106
+ setInput(key, val, options) {
107
+ // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));
108
+ // return this.params;
109
+ }
115
110
  }
116
111
  //# sourceMappingURL=service-variable.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isEqual","isEmpty","ServiceVariable","_ServiceVariable","httpService","injector","_ServiceVariableEvents","constructor","config","variableConfig","name","dataSet","paramProvider","dataBinding","isList","service","serviceType","maxResults","_context","operation","operationId","serviceInfo","getServiceInfo","httpClientService","onSuccess","context","args","variable","data","options","onError","onCanUpdate","onBeforeUpdate","onResult","onBeforeDatasetReady","get","invokeOnParamChange","last","params","latest","invoke","Promise","resolve","doNext","currentPage","reject","onDataUpdated","appConfig","refresh","inputFields","undefined","console","error"],"sources":["service-variable.ts"],"sourcesContent":["import { VariableConfig, VariableEvents } from './base-variable';\nimport { isEqual, isEmpty } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { $queue } from './utils/inflight-queue';\nimport { ServiceVariable as _ServiceVariable } from '@wavemaker/variables/src/model/variable/service-variable';\nimport httpService from '@wavemaker/app-rn-runtime/variables/http.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport interface ServiceVariableConfig extends VariableConfig {\n baseUrl: string;\n maxResults: number;\n _context: any;\n serviceType: string;\n onCanUpdate: any;\n onBeforeUpdate: any;\n onResult: any;\n onBeforeDatasetReady: any;\n inFlightBehavior: string;\n getServiceInfo: Function;\n}\n\nenum _ServiceVariableEvents {\n BEFORE_INVOKE = 'beforeInvoke'\n}\nexport type ServiceVariableEvents = _ServiceVariableEvents | VariableEvents;\n\nexport class ServiceVariable extends _ServiceVariable {\n private cancelTokenSource: any;\n params: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n\n constructor(public config: ServiceVariableConfig) {\n const variableConfig = {\n name: config.name,\n dataSet: config.paramProvider(),\n dataBinding: config.paramProvider(),\n isList: config.isList,\n service: config.service,\n serviceType: config.serviceType,\n maxResults: config.maxResults,\n _context: config._context,\n operation: config.operation,\n operationId: config.operationId,\n serviceInfo: config.getServiceInfo(),\n httpClientService: httpService,\n onSuccess: (context: any, args: any) => {\n return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);\n },\n onError: (context: any, args: any) => {\n return config.onError && config.onError(args.variable, args.data, args.options);\n },\n onCanUpdate: (context: any, args: any) => {\n return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);\n },\n onBeforeUpdate: (context: any, args: any) => {\n return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.data, args.options);\n },\n onResult: (context: any, args: any) => {\n return config.onResult && config.onResult(args.variable, args.data, args.options);\n },\n onBeforeDatasetReady: (context: any, args: any) => {\n return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);\n }\n }\n super(variableConfig);\n }\n\n invokeOnParamChange() {\n const last = this.params;\n const latest = this.config.paramProvider();\n if (!isEqual(last, latest)) {\n this.invoke(latest);\n }\n return Promise.resolve(this);\n }\n\n public doNext(currentPage: number) {\n // this.invoke({\n // page: currentPage\n // });\n return Promise.reject(this);\n }\n\n onDataUpdated() {\n this.appConfig.refresh(false);\n }\n\n invoke(options? : any, onSuccess?: Function, onError?: Function) {\n this.params = this.config.paramProvider();\n let params = options ? (options.inputFields ? options.inputFields : options) : undefined;\n if (!params) {\n params = !isEmpty(this.dataBinding) ? this.dataBinding : this.config.paramProvider();\n }\n this.dataBinding = params;\n // service definitions data depends on whether user logged in or not\n // Try to get the latest definition\n this.serviceInfo = this.config.getServiceInfo();\n if (!this.serviceInfo) {\n console.error(`Service Info is missing for (${this.name}) variable.`)\n }\n return super.invoke(options, onSuccess, onError);\n }\n\n // cancel($file?: any) {\n // // CHecks if there is any pending requests in the queue\n // if ($queue.requestsQueue.has(this)) {\n // // If the request is a File upload request then modify the elements associated with file upload\n // // else unsubscribe from the observable on the variable.\n // if (false) {\n // // $file._uploadProgress.unsubscribe();\n // // $file.status = 'abort';\n // // this.totalFilesCount--;\n // // initiateCallback(VARIABLE_CONSTANTS.EVENT.ABORT, variable, $file);\n // // if (!this.isFileUploadInProgress(variable.dataBinding) && this.totalFilesCount === 0) {\n // // $queue.process(variable);\n // // // notify inflight variable\n // // this.notifyInflight(variable, false);\n // // }\n // } else {\n // if (true) {\n // this.cancelTokenSource.cancel();\n // $queue.process(this);\n // // notify inflight variable\n // //this.notifyInflight(variable, false);\n // }\n // }\n // }\n // }\n\n // setInput(key: any, val?: any, options?: any) {\n // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));\n // return this.params;\n // }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["isEqual","ServiceVariable","_ServiceVariable","httpService","injector","_ServiceVariableEvents","constructor","config","variableConfig","name","dataSet","paramProvider","dataBinding","isList","service","serviceType","maxResults","_context","operation","operationId","serviceInfo","getServiceInfo","httpClientService","onSuccess","context","args","variable","data","options","onError","onCanUpdate","onBeforeUpdate","onResult","onBeforeDatasetReady","get","invokeOnParamChange","last","params","latest","invoke","Promise","resolve","doNext","currentPage","reject","onDataUpdated","appConfig","refresh","console","error","setInput","key","val"],"sources":["service-variable.ts"],"sourcesContent":["import { VariableConfig, VariableEvents } from './base-variable';\nimport { isEqual } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { $queue } from './utils/inflight-queue';\nimport { ServiceVariable as _ServiceVariable } from '@wavemaker/variables/src/model/variable/service-variable';\nimport httpService from '@wavemaker/app-rn-runtime/variables/http.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport interface ServiceVariableConfig extends VariableConfig {\n baseUrl: string;\n maxResults: number;\n _context: any;\n serviceType: string;\n onCanUpdate: any;\n onBeforeUpdate: any;\n onResult: any;\n onBeforeDatasetReady: any;\n inFlightBehavior: string;\n getServiceInfo: Function;\n}\n\nenum _ServiceVariableEvents {\n BEFORE_INVOKE = 'beforeInvoke'\n}\nexport type ServiceVariableEvents = _ServiceVariableEvents | VariableEvents;\n\nexport class ServiceVariable extends _ServiceVariable {\n private cancelTokenSource: any;\n params: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n\n constructor(public config: ServiceVariableConfig) {\n const variableConfig = {\n name: config.name,\n dataSet: config.paramProvider(),\n dataBinding: config.paramProvider(),\n isList: config.isList,\n service: config.service,\n serviceType: config.serviceType,\n maxResults: config.maxResults,\n _context: config._context,\n operation: config.operation,\n operationId: config.operationId,\n serviceInfo: config.getServiceInfo(),\n httpClientService: httpService,\n onSuccess: (context: any, args: any) => {\n return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);\n },\n onError: (context: any, args: any) => {\n return config.onError && config.onError(args.variable, args.data, args.options);\n },\n onCanUpdate: (context: any, args: any) => {\n return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);\n },\n onBeforeUpdate: (context: any, args: any) => {\n return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.data, args.options);\n },\n onResult: (context: any, args: any) => {\n return config.onResult && config.onResult(args.variable, args.data, args.options);\n },\n onBeforeDatasetReady: (context: any, args: any) => {\n return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);\n }\n }\n super(variableConfig);\n }\n\n invokeOnParamChange() {\n const last = this.params;\n const latest = this.config.paramProvider();\n if (!isEqual(last, latest)) {\n this.invoke();\n }\n return Promise.resolve(this);\n }\n\n public doNext(currentPage: number) {\n // this.invoke({\n // page: currentPage\n // });\n return Promise.reject(this);\n }\n\n onDataUpdated() {\n this.appConfig.refresh(false);\n }\n\n invoke(options? : any, onSuccess?: Function, onError?: Function) {\n this.dataBinding = this.params = this.config.paramProvider();\n // service definitions data depends on whether user logged in or not\n // Try to get the latest definition\n this.serviceInfo = this.config.getServiceInfo();\n if (!this.serviceInfo) {\n console.error(`Service Info is missing for (${this.name}) variable.`)\n }\n return super.invoke(options, onSuccess, onError);\n }\n\n // cancel($file?: any) {\n // // CHecks if there is any pending requests in the queue\n // if ($queue.requestsQueue.has(this)) {\n // // If the request is a File upload request then modify the elements associated with file upload\n // // else unsubscribe from the observable on the variable.\n // if (false) {\n // // $file._uploadProgress.unsubscribe();\n // // $file.status = 'abort';\n // // this.totalFilesCount--;\n // // initiateCallback(VARIABLE_CONSTANTS.EVENT.ABORT, variable, $file);\n // // if (!this.isFileUploadInProgress(variable.dataBinding) && this.totalFilesCount === 0) {\n // // $queue.process(variable);\n // // // notify inflight variable\n // // this.notifyInflight(variable, false);\n // // }\n // } else {\n // if (true) {\n // this.cancelTokenSource.cancel();\n // $queue.process(this);\n // // notify inflight variable\n // //this.notifyInflight(variable, false);\n // }\n // }\n // }\n // }\n\n setInput(key: any, val?: any, options?: any) {\n // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));\n // return this.params;\n }\n}\n"],"mappings":"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"}