@wavemaker/app-ng-runtime 11.6.0-next.24748 → 11.6.0-next.24749

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.
@@ -542,7 +542,7 @@
542
542
  getLocalPath(val) {
543
543
  if (i1$1.hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {
544
544
  return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)
545
- .catch(i1$1.noop);
545
+ .catch(() => val);
546
546
  }
547
547
  return Promise.resolve(val);
548
548
  }
@@ -1,7 +1,7 @@
1
1
  import { Directive, Inject, Input, Self } from '@angular/core';
2
2
  import { File } from '@awesome-cordova-plugins/file/ngx';
3
3
  import { WidgetRef } from '@wm/components/base';
4
- import { hasCordova, noop, transformFileURI } from '@wm/core';
4
+ import { hasCordova, transformFileURI } from '@wm/core';
5
5
  import { DeviceFileCacheService } from '@wm/mobile/core';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@wm/mobile/core";
@@ -37,7 +37,7 @@ export class ImageCacheDirective {
37
37
  getLocalPath(val) {
38
38
  if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {
39
39
  return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)
40
- .catch(noop);
40
+ .catch(() => val);
41
41
  }
42
42
  return Promise.resolve(val);
43
43
  }
@@ -57,4 +57,4 @@ ImageCacheDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ImageCa
57
57
  }] }, { type: i1.DeviceFileCacheService }, { type: i2.File }]; }, { wmImageCache: [{
58
58
  type: Input
59
59
  }] }); })();
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9iaWxlL2NvbXBvbmVudHMvYmFzaWMvZGVmYXVsdC9zcmMvaW1hZ2UtY2FjaGUvaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVcsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUd6RCxNQUFNLGFBQWEsR0FBSSwrQ0FBK0MsQ0FBQztBQUt2RSxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQ3VDLGlCQUFpQixFQUM1QyxzQkFBOEMsRUFDOUMsSUFBVTtRQUZpQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQUE7UUFDNUMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxTQUFJLEdBQUosSUFBSSxDQUFNO1FBTmQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixhQUFRLEdBQUcsRUFBRSxDQUFDO0lBT25CLENBQUM7SUFFRyxTQUFTO1FBQ1osSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUM7ZUFDekMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDeEQsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUU7Z0JBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQztnQkFDakQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUNoRCxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxDQUFDO2FBQ047aUJBQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDckQ7U0FDSjtJQUNMLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxHQUFHLEtBQUssTUFBTSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFlBQVksQ0FBQyxHQUFXO1FBQzVCLElBQUksVUFBVSxFQUFFLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFLLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztpQkFDN0UsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O3NGQXhDUSxtQkFBbUIsdUJBT1IsU0FBUztzRUFQcEIsbUJBQW1CO3VGQUFuQixtQkFBbUI7Y0FIL0IsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7YUFDN0I7O3NCQVFRLElBQUk7O3NCQUFJLE1BQU07dUJBQUMsU0FBUztnRkF1QnpCLFlBQVk7a0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRG9DaGVjaywgSW5qZWN0LCBJbnB1dCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGaWxlIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2ZpbGUvbmd4JztcblxuaW1wb3J0IHsgV2lkZ2V0UmVmIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBoYXNDb3Jkb3ZhLCBub29wLCB0cmFuc2Zvcm1GaWxlVVJJIH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgRGV2aWNlRmlsZUNhY2hlU2VydmljZSB9IGZyb20gJ0B3bS9tb2JpbGUvY29yZSc7XG5cbmRlY2xhcmUgY29uc3QgXztcbmNvbnN0IERFRkFVTFRfSU1BR0UgPSAgJ3Jlc291cmNlcy9pbWFnZXMvaW1hZ2VsaXN0cy9kZWZhdWx0LWltYWdlLnBuZyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3dtSW1hZ2VDYWNoZV0nXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlQ2FjaGVEaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrIHtcblxuICAgIHByaXZhdGUgX2NhY2hlVXJsO1xuICAgIHByaXZhdGUgX2lzRW5hYmxlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2xhc3RVcmwgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoV2lkZ2V0UmVmKSBwcml2YXRlIGNvbXBvbmVudEluc3RhbmNlLFxuICAgICAgICBwcml2YXRlIGRldmljZUZpbGVDYWNoZVNlcnZpY2U6IERldmljZUZpbGVDYWNoZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmlsZTogRmlsZVxuXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG5nRG9DaGVjaygpIHtcbiAgICAgICAgaWYgKF8uaXNTdHJpbmcodGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UpXG4gICAgICAgICAgICAmJiB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZS5zdGFydHNXaXRoKCdodHRwJykpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9sYXN0VXJsICE9PSB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xhc3RVcmwgPSB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSA9IERFRkFVTFRfSU1BR0U7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRMb2NhbFBhdGgodGhpcy5fbGFzdFVybCkudGhlbigobG9jYWxQYXRoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhY2hlVXJsID0gdHJhbnNmb3JtRmlsZVVSSShsb2NhbFBhdGgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSA9IHRoaXMuX2NhY2hlVXJsO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jYWNoZVVybCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlID0gdGhpcy5fY2FjaGVVcmw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCB3bUltYWdlQ2FjaGUodmFsOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5faXNFbmFibGVkID0gKGhhc0NvcmRvdmEoKSAmJiB2YWwgPT09ICd0cnVlJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRMb2NhbFBhdGgodmFsOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGhhc0NvcmRvdmEoKSAmJiB2YWwgJiYgdmFsLmluZGV4T2YoJ3t7JykgPCAwICAmJiB2YWwuc3RhcnRzV2l0aCgnaHR0cCcpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kZXZpY2VGaWxlQ2FjaGVTZXJ2aWNlLmdldExvY2FsUGF0aCh2YWwsIHRydWUsIHRydWUsICF0aGlzLl9pc0VuYWJsZWQpXG4gICAgICAgICAgICAgICAgLmNhdGNoKG5vb3ApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodmFsKTtcbiAgICB9XG59XG4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9iaWxlL2NvbXBvbmVudHMvYmFzaWMvZGVmYXVsdC9zcmMvaW1hZ2UtY2FjaGUvaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVcsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFRLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBR3pELE1BQU0sYUFBYSxHQUFJLCtDQUErQyxDQUFDO0FBS3ZFLE1BQU0sT0FBTyxtQkFBbUI7SUFNNUIsWUFDdUMsaUJBQWlCLEVBQzVDLHNCQUE4QyxFQUM5QyxJQUFVO1FBRmlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBQTtRQUM1QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLFNBQUksR0FBSixJQUFJLENBQU07UUFOZCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGFBQVEsR0FBRyxFQUFFLENBQUM7SUFPbkIsQ0FBQztJQUVHLFNBQVM7UUFDWixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQztlQUN6QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN4RCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsRUFBRTtnQkFDcEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDO2dCQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQztnQkFDakQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7b0JBQ2hELElBQUksQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQzdDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDdEQsQ0FBQyxDQUFDLENBQUM7YUFDTjtpQkFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUNyRDtTQUNKO0lBQ0wsQ0FBQztJQUVELElBQ0ksWUFBWSxDQUFDLEdBQVc7UUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLEdBQUcsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sWUFBWSxDQUFDLEdBQVc7UUFDNUIsSUFBSSxVQUFVLEVBQUUsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUssR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN6RSxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2lCQUM3RSxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDekI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQzs7c0ZBeENRLG1CQUFtQix1QkFPUixTQUFTO3NFQVBwQixtQkFBbUI7dUZBQW5CLG1CQUFtQjtjQUgvQixTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjthQUM3Qjs7c0JBUVEsSUFBSTs7c0JBQUksTUFBTTt1QkFBQyxTQUFTO2dGQXVCekIsWUFBWTtrQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBEb0NoZWNrLCBJbmplY3QsIElucHV0LCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBXaWRnZXRSZWYgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IGhhc0NvcmRvdmEsIG5vb3AsIHRyYW5zZm9ybUZpbGVVUkkgfSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBEZXZpY2VGaWxlQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnQHdtL21vYmlsZS9jb3JlJztcblxuZGVjbGFyZSBjb25zdCBfO1xuY29uc3QgREVGQVVMVF9JTUFHRSA9ICAncmVzb3VyY2VzL2ltYWdlcy9pbWFnZWxpc3RzL2RlZmF1bHQtaW1hZ2UucG5nJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbd21JbWFnZUNhY2hlXSdcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VDYWNoZURpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuXG4gICAgcHJpdmF0ZSBfY2FjaGVVcmw7XG4gICAgcHJpdmF0ZSBfaXNFbmFibGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfbGFzdFVybCA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChXaWRnZXRSZWYpIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2UsXG4gICAgICAgIHByaXZhdGUgZGV2aWNlRmlsZUNhY2hlU2VydmljZTogRGV2aWNlRmlsZUNhY2hlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBmaWxlOiBGaWxlXG5cbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdEb0NoZWNrKCkge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyh0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSlcbiAgICAgICAgICAgICYmIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2xhc3RVcmwgIT09IHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFVybCA9IHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlO1xuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlID0gREVGQVVMVF9JTUFHRTtcbiAgICAgICAgICAgICAgICB0aGlzLmdldExvY2FsUGF0aCh0aGlzLl9sYXN0VXJsKS50aGVuKChsb2NhbFBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2FjaGVVcmwgPSB0cmFuc2Zvcm1GaWxlVVJJKGxvY2FsUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlID0gdGhpcy5fY2FjaGVVcmw7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2NhY2hlVXJsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UgPSB0aGlzLl9jYWNoZVVybDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHdtSW1hZ2VDYWNoZSh2YWw6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9pc0VuYWJsZWQgPSAoaGFzQ29yZG92YSgpICYmIHZhbCA9PT0gJ3RydWUnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldExvY2FsUGF0aCh2YWw6IHN0cmluZykge1xuICAgICAgICBpZiAoaGFzQ29yZG92YSgpICYmIHZhbCAmJiB2YWwuaW5kZXhPZigne3snKSA8IDAgICYmIHZhbC5zdGFydHNXaXRoKCdodHRwJykpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRldmljZUZpbGVDYWNoZVNlcnZpY2UuZ2V0TG9jYWxQYXRoKHZhbCwgdHJ1ZSwgdHJ1ZSwgIXRoaXMuX2lzRW5hYmxlZClcbiAgICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4gdmFsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHZhbCk7XG4gICAgfVxufVxuIl19
@@ -524,7 +524,7 @@ class ImageCacheDirective {
524
524
  getLocalPath(val) {
525
525
  if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {
526
526
  return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)
527
- .catch(noop);
527
+ .catch(() => val);
528
528
  }
529
529
  return Promise.resolve(val);
530
530
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/basic/default/src/anchor/anchor.directive.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.ts","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-selector.service.ts","../../../../../../projects/mobile/components/basic/default/src/image-cache/image-cache.directive.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.props.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.html","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.html","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-management.service.ts","../../../../../../projects/mobile/components/basic/default/src/basic.module.ts","../../../../../../projects/mobile/components/basic/default/src/index.ts"],"sourcesContent":["import { Directive, HostListener, Inject } from '@angular/core';\n\nimport { WidgetRef } from '@wm/components/base';\n\ndeclare const _;\ndeclare const cordova;\n\n@Directive({\n selector: '[wmAnchor]'\n})\nexport class AnchorDirective {\n\n constructor(@Inject(WidgetRef) private widget: any) { }\n\n @HostListener('click')\n onClick () {\n let href = this.widget.hyperlink;\n if (href) {\n if (href.indexOf(':') >= 0 && !(_.startsWith(href, 'http://') || _.startsWith(href, 'https://'))) {\n return;\n } else if (_.startsWith(href, '#')) {\n window.location.href = window.location.origin + window.location.pathname + href;\n return;\n } else if (_.startsWith(href, '//')) {\n href = 'https:' + href;\n }\n if (window['cordova']) {\n window.open(href, this.widget.target);\n }\n }\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Component, ElementRef } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\n\nimport { addClass, hasCordova, noop, removeClass, setCSS } from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\nconst DEFAULT_CLS = 'app-update-dialog modal fade in hidden';\n\nconst AUTO_UPDATE_FILENAME = 'app-auto-update.apk';\n\n@Component({\n selector: '[wmAppUpdate]',\n templateUrl: './app-update.component.html'\n})\nexport class AppUpdateComponent {\n\n public downloadProgress = 0;\n public downloading = false;\n public message = 'There is an update available. Would you like to update the app?';\n\n private _buildMeta: any;\n\n constructor(\n private deviceService: DeviceService,\n private fileDownloadService: DeviceFileDownloadService,\n private elRef: ElementRef,\n private file: File,\n private fileOpener: FileOpener,\n private http: HttpClient\n ) {\n\n addClass(this.elRef.nativeElement, DEFAULT_CLS);\n setCSS(this.elRef.nativeElement, 'display', 'block');\n if (hasCordova()) {\n this.getBuildMeta().then(buildMeta => {\n if (buildMeta && buildMeta.buildMode === 'DEVELOPMENT_MODE') {\n this.file.removeFile(cordova.file.externalApplicationStorageDirectory, AUTO_UPDATE_FILENAME).catch(noop);\n this.checkForUpdate()\n .then(this.getUserConfirmation.bind(this), noop);\n }\n });\n }\n }\n\n public cancel() {\n addClass(this.elRef.nativeElement, 'hidden');\n }\n\n public installLatestVersion() {\n const apkFile = cordova.file.externalApplicationStorageDirectory + AUTO_UPDATE_FILENAME,\n downloadLink = `${this._buildMeta.host}/appBuild/rest/mobileBuilds/android/download?token=${this._buildMeta.token}&buildNumber=${this._buildMeta.latestBuildNumber}&fileName=${AUTO_UPDATE_FILENAME}&releaseVersion=${this._buildMeta.platformVersion}`,\n progressObserver = { next: e => { this.downloadProgress = (e.loaded / e.total) * 100; }, error: null, complete: null};\n this.fileDownloadService.download(\n downloadLink,\n false,\n cordova.file.externalApplicationStorageDirectory,\n AUTO_UPDATE_FILENAME,\n progressObserver).then(() => {\n this.fileOpener.open(apkFile, 'application/vnd.android.package-archive');\n }, function () {\n this.message = 'Failed to download latest version.';\n });\n this.message = `Downloading the latest version [${this._buildMeta.latestVersion}].`;\n this.downloading = true;\n }\n\n private checkForUpdate() {\n return new Promise((resolve, reject) => {\n this.http.get(`${this._buildMeta.host}/appBuild/rest/mobileBuilds/latest_build?token=${this._buildMeta.token}&releaseVersion=${this._buildMeta.platformVersion}`)\n .toPromise()\n .then((response: any) => {\n const latestBuildNumber = response.success.body.buildNumber,\n latestVersion = response.success.body.version;\n if (this._buildMeta.buildNumber < latestBuildNumber) {\n this._buildMeta.latestBuildNumber = latestBuildNumber;\n this._buildMeta.latestVersion = latestVersion;\n resolve(latestBuildNumber);\n } else {\n reject();\n }\n }, reject);\n });\n }\n\n private getBuildMeta() {\n if (!this._buildMeta) {\n return this.file.readAsText(cordova.file.applicationDirectory + 'www/', 'build_meta.json')\n .then(data => {\n this._buildMeta = JSON.parse(data);\n return this._buildMeta;\n }, noop);\n }\n return Promise.resolve(this._buildMeta);\n }\n\n private getUserConfirmation() {\n this.downloadProgress = 0;\n this.downloading = false;\n this.message = 'There is an update available. Would you like to update the app?';\n removeClass(this.elRef.nativeElement, 'hidden');\n }\n}\n","<div class=\"modal-dialog\">\n <div class=\"modal-content\"> \n <div class=\"modal-body\"> \n <span [textContent]=\"message\"></span>\n <div class=\"progress\" [hidden]=\"!downloading\">\n <div class=\"progress-bar\" [style.width.%]=\"downloadProgress\"></div>\n </div>\n </div>\n <div class=\"modal-footer\"> \n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\" (click)=\"cancel()\">Skip update</button>\n <button type=\"button\" class=\"btn btn-primary\" [hidden]=\"downloading\" (click)=\"installLatestVersion()\">Update</button>\n </div>\n </div>\n</div>","<div class=\"app-file-browser\" *ngIf=\"isVisible && currentFolder\">\n <div class=\"modal-backdrop fade\" [class.in]=\"isVisible\"></div>\n <div class=\"modal fade\" style=\"display: block;\" [class.in]=\"isVisible\" >\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header clearfix\">\n <h4 class=\"modal-title pull-left\">\n <span (click)=\"onFileClick(currentFolder.parent)\" [hidden]=\"!!!currentFolder.parent\">\n <i class=\"wi wi-long-arrow-left\"></i>\n </span>\n {{currentFolder.name}}\n </h4>\n <div class=\"selected-file-button pull-right\" (click)=\"refreshFolder()\">\n <i class=\"wi wi-refresh\"></i>\n </div>\n </div>\n <div class=\"modal-body\">\n <div class=\"file-info-box\" *ngFor=\"let file of currentFolder.files\">\n <div class=\"file-info\" [class.bg-primary]=\"file.isSelected\" (click)=\"onFileClick(file)\">\n <i class=\"file-icon wi wi-folder\" *ngIf=\"!file.isFile\"></i>\n <i class=\"file-icon wi wi-file {{getFileExtension(file.name)}}\" *ngIf=\"file.isFile\"></i>\n <span class=\"file-name\">{{file.name}}</span>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"selectedFiles && selectedFiles.length > 0\" (click)=\"submit()\">\n Done <span class=\"badge badge-light\">{{selectedFiles.length}}</span>\n </button>\n <button type=\"button\" class=\"btn btn-default\" (click)=\"show = false;\">Close</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\n\nimport { $appDigest, isIos } from '@wm/core';\nimport { DeviceService } from '@wm/mobile/core';\n\ndeclare const _;\ndeclare const cordova;\ndeclare const resolveLocalFileSystemURL;\n\nexport interface File {\n name: string;\n size: number;\n isSelected: boolean;\n file: (success: (navtiveFileObject: any) => void, failure: (message: any) => any) => void;\n}\n\nexport interface Folder {\n name: string;\n files: File[];\n folders: Folder[];\n parent: Folder;\n}\n\n@Component({\n selector: '[wmMobileFileBrowser]',\n templateUrl: './file-browser.component.html'\n})\nexport class FileBrowserComponent implements OnDestroy {\n\n public currentFolder: Folder;\n @Input() public fileTypeToSelect: string;\n @Input() public multiple: boolean;\n public selectedFiles: File[] = [];\n @Output('submit') submitEmitter = new EventEmitter();\n public isVisible: boolean;\n\n private backButtonListenerDeregister: any;\n\n constructor(private deviceService: DeviceService) {}\n\n\n public getFileExtension(fileName: string): string {\n const extIndex = fileName ? fileName.lastIndexOf('.') : -1;\n if (extIndex > 0) {\n return fileName.substring(extIndex + 1);\n }\n return '';\n }\n\n public ngOnDestroy() {\n if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public onFileClick(file): void {\n if (file.isFile) {\n if (file.isSelected) {\n this.deselectFile(file);\n } else {\n this.selectFile(file);\n }\n } else {\n this.goToFolder(file);\n }\n }\n\n public set show(flag: boolean) {\n let rootDir = cordova.file.externalRootDirectory;\n this.isVisible = flag;\n if (flag) {\n if (!this.currentFolder) {\n if (isIos()) {\n rootDir = cordova.file.documentsDirectory;\n }\n resolveLocalFileSystemURL(rootDir, root => this.goToFolder(root));\n }\n this.backButtonListenerDeregister = this.deviceService.onBackButtonTap(() => {\n if (this.isVisible) {\n if (this.currentFolder.parent) {\n this.onFileClick(this.currentFolder.parent);\n } else {\n this.isVisible = false;\n }\n $appDigest();\n return false;\n }\n });\n } else if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public submit() {\n const files = [];\n this.loadFileSize(this.selectedFiles).then(() => {\n _.forEach(this.selectedFiles, function (f) {\n f.isSelected = false;\n files.push({ path: f.nativeURL,\n name: f.name,\n size : f.size});\n });\n this.selectedFiles = [];\n this.isVisible = false;\n this.submitEmitter.next({files: files});\n });\n }\n\n private deselectFile(file: File): void {\n _.remove(this.selectedFiles, file);\n file.isSelected = false;\n }\n\n private goToFolder(folder: Folder): void {\n if (!folder.files) {\n this.loadFolder(folder, this.fileTypeToSelect)\n .then(files => {\n folder.files = files;\n folder.parent = this.currentFolder;\n this.currentFolder = folder;\n });\n } else {\n this.currentFolder = folder;\n }\n }\n\n private loadFileSize(files: File[]): Promise<void[]> {\n return Promise.all(files.map(f => {\n return new Promise<void>((resolve, reject) => {\n f.file(o => {\n f.size = o.size;\n resolve();\n }, reject);\n });\n }));\n }\n\n private loadFolder(folder: any, fileTypeToSelect: string): Promise<File[]> {\n return new Promise((resolve, reject) => {\n let fileTypeToShow;\n folder.createReader().readEntries((entries: File[]) => {\n if (!_.isEmpty(fileTypeToSelect)) {\n fileTypeToShow = _.split(fileTypeToSelect, ',');\n entries = _.filter(entries, e => {\n return !e.isFile || _.findIndex(fileTypeToShow, ext => _.endsWith(e.name, '.' + ext)) >= 0;\n });\n }\n resolve(_.sortBy(entries, e => (e.isFile ? '1_' : '0_') + e.name.toLowerCase()));\n }, reject);\n });\n }\n\n\n private refreshFolder(): Promise<any> {\n return this.loadFolder(this.currentFolder, this.fileTypeToSelect)\n .then(files => this.currentFolder.files = files);\n }\n\n private selectFile(file): void {\n if (!this.multiple && this.selectedFiles.length > 0) {\n this.selectedFiles[0].isSelected = false;\n this.selectedFiles = [];\n }\n this.selectedFiles.push(file);\n file.isSelected = true;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { convertToBlob, AbstractSpinnerService } from '@wm/core';\nimport { FileBrowserComponent } from './file-browser.component';\n\ndeclare const _;\ndeclare const window, cordova;\n\nexport interface FileContent {\n name: string;\n path: string;\n blob: any;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class FileSelectorService {\n static readonly SERVICE_NAME = 'FileSelectorService';\n\n private fileBrowserComponent: FileBrowserComponent;\n\n public constructor(private spinnerService: AbstractSpinnerService) {}\n\n public selectAudio(multiple = false): Promise<any> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectAudio(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public setFileBrowser(f: FileBrowserComponent) {\n this.fileBrowserComponent = f;\n }\n\n public selectFiles(multiple = false, fileTypeToSelect?: string): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectFiles(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectImages(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectImage(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectVideos(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectVideo(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n\n }\n\n /**\n * Converts the file to blob using filepath\n * @param filePaths, array of file paths\n * @returns fileObj having name, path, content\n */\n private getFiles(filePaths: string[]): Promise<FileContent[]> {\n return Promise.all(_.map(filePaths, filePath => {\n if (filePath.indexOf('://') < 0) {\n filePath = 'file://' + filePath;\n }\n return convertToBlob(filePath)\n })).then(filesList => {\n return _.map(filesList, fileObj => {\n const path = fileObj.filepath;\n return {\n name: path.split('/').pop(),\n path: path,\n content: fileObj.blob,\n size: fileObj.blob.size\n };\n });\n });\n }\n}\n","import { Directive, DoCheck, Inject, Input, Self } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { WidgetRef } from '@wm/components/base';\nimport { hasCordova, noop, transformFileURI } from '@wm/core';\nimport { DeviceFileCacheService } from '@wm/mobile/core';\n\ndeclare const _;\nconst DEFAULT_IMAGE = 'resources/images/imagelists/default-image.png';\n\n@Directive({\n selector: '[wmImageCache]'\n})\nexport class ImageCacheDirective implements DoCheck {\n\n private _cacheUrl;\n private _isEnabled = false;\n private _lastUrl = '';\n\n constructor(\n @Self() @Inject(WidgetRef) private componentInstance,\n private deviceFileCacheService: DeviceFileCacheService,\n private file: File\n\n ) {}\n\n public ngDoCheck() {\n if (_.isString(this.componentInstance.imgSource)\n && this.componentInstance.imgSource.startsWith('http')) {\n if (this._lastUrl !== this.componentInstance.imgSource) {\n this._lastUrl = this.componentInstance.imgSource;\n this.componentInstance.imgSource = DEFAULT_IMAGE;\n this.getLocalPath(this._lastUrl).then((localPath) => {\n this._cacheUrl = transformFileURI(localPath);\n this.componentInstance.imgSource = this._cacheUrl;\n });\n } else if (this._cacheUrl) {\n this.componentInstance.imgSource = this._cacheUrl;\n }\n }\n }\n\n @Input()\n set wmImageCache(val: string) {\n this._isEnabled = (hasCordova() && val === 'true');\n }\n\n private getLocalPath(val: string) {\n if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {\n return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)\n .catch(noop);\n }\n return Promise.resolve(val);\n }\n}\n","import { register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-network-info-toaster',\n new Map(\n []\n )\n );\n};\n","<div class=\"network-info-toaster-content\" [ngSwitch]=\"networkState\" *ngIf=\"showMessage\">\n <div class=\"info\" *ngSwitchCase=\"-3\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_NETWORK_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-2\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n <button class=\"btn btn-primary connect-btn\" (click)=\"connect()\" [textContent]=\"appLocale.LABEL_CONNECT_TO_SERVICE\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"0\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTING\"></label>\n </div>\n <div class=\"info\" *ngSwitchCase=\"1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTED\"></label>\n </div>\n</div>","import {Component, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './network-info-toaster.props';\nimport {$appDigest, App} from '@wm/core';\nimport { NetworkService } from '@wm/mobile/core';\n\nconst DEFAULT_CLS = 'network-info-toaster';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-network-info-toaster', hostClass: DEFAULT_CLS};\n\nexport enum NetworkState {\n CONNECTED = 1,\n CONNECTING = 0,\n SERVICE_AVAILABLE_BUT_NOT_CONNECTED = -1,\n NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE = -2,\n NETWORK_NOT_AVAIABLE = -3\n}\n\n\n@Component({\n selector: '[wmNetworkInfoToaster]',\n templateUrl: './network-info-toaster.component.html',\n providers: [\n provideAsWidgetRef(NetworkInfoToasterComponent)\n ]\n})\nexport class NetworkInfoToasterComponent extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n public showMessage = false;\n public isServiceConnected = false;\n public isServiceAvailable = false;\n public networkState: NetworkState;\n\n private _listenerDestroyer;\n\n constructor(private networkService: NetworkService, app: App, inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.$element, this);\n this.isServiceAvailable = <boolean> this.networkService.isAvailable();\n this.isServiceConnected = this.networkService.isConnected();\n this._listenerDestroyer = app.subscribe('onNetworkStateChange', (data) => {\n this.renderMessage(data);\n });\n this.renderMessage();\n }\n\n private renderMessage(data?) {\n data = data || this.networkService.getState();\n const oldState = this.networkState;\n let autoHide = false;\n if (data.noServiceRequired) {\n return false;\n }\n if (data.isConnected) {\n this.networkState = NetworkState.CONNECTED;\n autoHide = true;\n } else if (data.isConnecting) {\n this.networkState = NetworkState.CONNECTING;\n } else if (data.isServiceAvailable) {\n this.networkState = NetworkState.SERVICE_AVAILABLE_BUT_NOT_CONNECTED;\n } else if (data.isNetworkAvailable && !data.isServiceAvailable) {\n this.networkState = NetworkState.NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE;\n } else {\n this.networkState = NetworkState.NETWORK_NOT_AVAIABLE;\n }\n this.showMessage = (!(oldState === undefined && data.isConnected) && oldState !== this.networkState);\n if (autoHide && this.showMessage) {\n setTimeout(() => {\n this.showMessage = false;\n $appDigest();\n }, 5000);\n }\n }\n\n public connect() {\n this.networkService.connect();\n }\n\n public hideMessage() {\n this.showMessage = false;\n }\n\n public ngOnDestroy() {\n this._listenerDestroyer();\n super.ngOnDestroy();\n }\n}\n","<ng-container *ngIf=\"instances.length > 0\">\n <div class=\"modal-dialog app-dialog\">\n <div class=\"modal-content\">\n <ul class=\"instance-list list-unstyled\">\n <li *ngFor=\"let instance of getVisibleInstances(instances); index as i\" class=\"instance-list-item\">\n <div class=\"row\">\n <div class=\"col-xs-8\">\n <label class=\"app-global-progress-bar-name h6\">{{instance.name}}</label>\n </div>\n <div class=\"col-xs-4 app-global-progress-bar-progress-label-col\">\n <label class=\"app-global-progress-bar-progress-label h6\">\n {{instance.progressLabel}}</label>\n </div>\n </div>\n <ng-template [ngTemplateOutlet]=\"progressTemplate\" [ngTemplateOutletContext]=\"{instance: instance}\"></ng-template>\n <button class=\"btn btn-secondary pull-right stop-btn\" *ngIf=\"instance.onStop\" (click)=\"instance.onStop();\">\n {{instance.stopButtonLabel}}\n </button>\n <div style=\"clear: both;\"></div>\n </li>\n <li class=\"instance-list-item\" *ngIf=\"queue.length > 0\">\n <label class=\"global-progress-bar-ui-primary-label h6\">\n ({{queue.length}}) queued\n </label>\n </li>\n </ul>\n </div>\n </div>\n</ng-container>\n<ng-template #progressTemplate let-instance=\"instance\">\n <div wmProgressBar minvalue.bind=\"instance.min\" maxvalue.bind=\"instance.max\" datavalue.bind=\"instance.value\"></div>\n</ng-template>","import { Component, DoCheck, ElementRef } from '@angular/core';\n\nimport { addClass, removeAttr, setAttr } from '@wm/core';\nimport { provideAsWidgetRef } from '@wm/components/base';\n\ndeclare const _;\n\nexport interface Process {\n max: number;\n min: number;\n name: string;\n onStop: () => void;\n progressLabel: string;\n show: boolean;\n stopButtonLabel: string;\n value: number;\n}\n\nexport interface ProcessApi {\n destroy: () => Promise<void>;\n get: (propertyName: string) => string;\n set: (propertyName: string, propertyValue: any) => void;\n}\n\nconst MAX_PROCESS = 3;\n\n@Component({\n selector: '[wmProcessManager]',\n templateUrl: './process-manager.component.html',\n providers: [\n provideAsWidgetRef(ProcessManagerComponent)\n ]\n})\nexport class ProcessManagerComponent implements DoCheck {\n\n private isVisible = true;\n\n public instances: Process[] = [];\n public queue = [];\n\n constructor(private el: ElementRef) {\n addClass(this.el.nativeElement, 'app-global-progress-bar modal default');\n }\n\n public createInstance(name: string, min = 0, max = 100): Promise<ProcessApi> {\n const instance: Process = {\n max: max,\n min: min,\n name: name,\n onStop: null,\n progressLabel: '',\n show: min !== max,\n stopButtonLabel : 'Cancel',\n value: 0\n };\n const api = {\n get: (propertyName) => instance[propertyName],\n set: (propertyName, propertyValue) => this.setInstaceProperty(instance, propertyName, propertyValue),\n destroy: () => this.removeInstance(instance)\n };\n return this.addToQueue(instance).then(() => api);\n }\n\n public getVisibleInstances() {\n return this.instances.filter(i => i.show);\n }\n\n public ngDoCheck() {\n const hasInstancesToShow = !!this.instances.find(i => i.show);\n if (this.isVisible && !hasInstancesToShow) {\n setAttr(this.el.nativeElement, 'hidden', 'true');\n this.isVisible = false;\n } else if (!this.isVisible && hasInstancesToShow) {\n removeAttr(this.el.nativeElement, 'hidden');\n this.isVisible = true;\n }\n }\n\n private addToQueue(instance): Promise<void> {\n return new Promise( resolve => {\n this.queue.push(() => {\n if (this.instances.length < MAX_PROCESS) {\n this.instances.push(instance);\n resolve(instance);\n } else {\n return false;\n }\n });\n this.flushQueue();\n });\n }\n\n private flushQueue() {\n if (this.queue.length > 0 && this.queue[0]() !== false) {\n this.queue.shift();\n this.flushQueue();\n }\n }\n\n private removeInstance(instance: Process): Promise<void> {\n return new Promise( resolve => {\n setTimeout(() => {\n _.remove(this.instances, instance);\n this.flushQueue();\n resolve();\n }, 1000);\n });\n }\n\n private setInstaceProperty(instance: Process, propertyName: string, propertyValue: any) {\n if (propertyName === 'value') {\n if (instance.value >= instance.max) {\n propertyValue = instance.max;\n }\n instance.value = propertyValue;\n instance.progressLabel = instance.value + '/' + instance.max;\n } else if (propertyName === 'onStop' && _.isFunction(propertyValue)) {\n instance.onStop = () => {\n propertyValue();\n return this.removeInstance(instance);\n };\n } else {\n instance[propertyName] = propertyValue;\n }\n instance.show = instance.min !== instance.max;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ProcessManagerComponent, ProcessApi } from './process-manager.component';\n\n@Injectable({ providedIn: 'root' })\nexport class ProcessManagementService {\n static readonly SERVICE_NAME = 'ProcessManagementService';\n\n private processManagerComponent: ProcessManagerComponent;\n\n setUIComponent(processManagerComponent: ProcessManagerComponent) {\n this.processManagerComponent = processManagerComponent;\n }\n\n /**\n * Returns a promise that will be resolved when an instance is available. At max, 3 instances can only run\n * in parallel and rest has to wait till a process is completed.\n *\n * A progress instance has the following properties.\n *\n * 1) min {number} minimum value, default value is 0 </br>\n * 2) max {number} maximum value, default value is 100 </br>\n * 3) value {number} progress value </br>\n * 4) progressLabel {string} process name </br>\n * 5) stopButtonLabel {string} label for stop button, default value is 'Cancel' </br>\n * 6) onStop {function} function to invoke when stop button is clicked. </br>\n *\n * A progress instance has 3 methods </br>\n * 1) set(property, value) -- sets value to the corresponding property </br>\n * 2) get(property) -- returns property value </br>\n * 3) destroy() -- closes the instance. </br>\n *\n * A progress instance will get auto closed when value and max are equal or when destroy method is called.\n *\n * @param {string} name name of the process whose progress is going to be shown\n * @param {number} min minimum value\n * @param {number} max maximum value\n *\n * @returns {object} a promise\n */\n public createInstance(name: string, min?: number, max?: number): Promise<ProcessApi> {\n if (!this.processManagerComponent) {\n return Promise.reject('ProcessManagerComponent is missing');\n }\n return this.processManagerComponent.createInstance(name, min, max);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { ProgressModule } from '@wm/components/basic/progress';\n\nimport { AnchorDirective } from './anchor/anchor.directive';\nimport { AppUpdateComponent } from './app-update/app-update.component';\nimport { FileBrowserComponent } from './file-browser/file-browser.component';\nimport { ImageCacheDirective } from './image-cache/image-cache.directive';\nimport { NetworkInfoToasterComponent } from './network-info-toaster/network-info-toaster.component';\nimport { ProcessManagerComponent } from './process-manager/process-manager.component';\n\nconst components = [\n AnchorDirective,\n AppUpdateComponent,\n FileBrowserComponent,\n ImageCacheDirective,\n NetworkInfoToasterComponent,\n ProcessManagerComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","_c0","i1","i2"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/basic/default/src/anchor/anchor.directive.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.ts","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-selector.service.ts","../../../../../../projects/mobile/components/basic/default/src/image-cache/image-cache.directive.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.props.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.html","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.html","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-management.service.ts","../../../../../../projects/mobile/components/basic/default/src/basic.module.ts","../../../../../../projects/mobile/components/basic/default/src/index.ts"],"sourcesContent":["import { Directive, HostListener, Inject } from '@angular/core';\n\nimport { WidgetRef } from '@wm/components/base';\n\ndeclare const _;\ndeclare const cordova;\n\n@Directive({\n selector: '[wmAnchor]'\n})\nexport class AnchorDirective {\n\n constructor(@Inject(WidgetRef) private widget: any) { }\n\n @HostListener('click')\n onClick () {\n let href = this.widget.hyperlink;\n if (href) {\n if (href.indexOf(':') >= 0 && !(_.startsWith(href, 'http://') || _.startsWith(href, 'https://'))) {\n return;\n } else if (_.startsWith(href, '#')) {\n window.location.href = window.location.origin + window.location.pathname + href;\n return;\n } else if (_.startsWith(href, '//')) {\n href = 'https:' + href;\n }\n if (window['cordova']) {\n window.open(href, this.widget.target);\n }\n }\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Component, ElementRef } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\n\nimport { addClass, hasCordova, noop, removeClass, setCSS } from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\nconst DEFAULT_CLS = 'app-update-dialog modal fade in hidden';\n\nconst AUTO_UPDATE_FILENAME = 'app-auto-update.apk';\n\n@Component({\n selector: '[wmAppUpdate]',\n templateUrl: './app-update.component.html'\n})\nexport class AppUpdateComponent {\n\n public downloadProgress = 0;\n public downloading = false;\n public message = 'There is an update available. Would you like to update the app?';\n\n private _buildMeta: any;\n\n constructor(\n private deviceService: DeviceService,\n private fileDownloadService: DeviceFileDownloadService,\n private elRef: ElementRef,\n private file: File,\n private fileOpener: FileOpener,\n private http: HttpClient\n ) {\n\n addClass(this.elRef.nativeElement, DEFAULT_CLS);\n setCSS(this.elRef.nativeElement, 'display', 'block');\n if (hasCordova()) {\n this.getBuildMeta().then(buildMeta => {\n if (buildMeta && buildMeta.buildMode === 'DEVELOPMENT_MODE') {\n this.file.removeFile(cordova.file.externalApplicationStorageDirectory, AUTO_UPDATE_FILENAME).catch(noop);\n this.checkForUpdate()\n .then(this.getUserConfirmation.bind(this), noop);\n }\n });\n }\n }\n\n public cancel() {\n addClass(this.elRef.nativeElement, 'hidden');\n }\n\n public installLatestVersion() {\n const apkFile = cordova.file.externalApplicationStorageDirectory + AUTO_UPDATE_FILENAME,\n downloadLink = `${this._buildMeta.host}/appBuild/rest/mobileBuilds/android/download?token=${this._buildMeta.token}&buildNumber=${this._buildMeta.latestBuildNumber}&fileName=${AUTO_UPDATE_FILENAME}&releaseVersion=${this._buildMeta.platformVersion}`,\n progressObserver = { next: e => { this.downloadProgress = (e.loaded / e.total) * 100; }, error: null, complete: null};\n this.fileDownloadService.download(\n downloadLink,\n false,\n cordova.file.externalApplicationStorageDirectory,\n AUTO_UPDATE_FILENAME,\n progressObserver).then(() => {\n this.fileOpener.open(apkFile, 'application/vnd.android.package-archive');\n }, function () {\n this.message = 'Failed to download latest version.';\n });\n this.message = `Downloading the latest version [${this._buildMeta.latestVersion}].`;\n this.downloading = true;\n }\n\n private checkForUpdate() {\n return new Promise((resolve, reject) => {\n this.http.get(`${this._buildMeta.host}/appBuild/rest/mobileBuilds/latest_build?token=${this._buildMeta.token}&releaseVersion=${this._buildMeta.platformVersion}`)\n .toPromise()\n .then((response: any) => {\n const latestBuildNumber = response.success.body.buildNumber,\n latestVersion = response.success.body.version;\n if (this._buildMeta.buildNumber < latestBuildNumber) {\n this._buildMeta.latestBuildNumber = latestBuildNumber;\n this._buildMeta.latestVersion = latestVersion;\n resolve(latestBuildNumber);\n } else {\n reject();\n }\n }, reject);\n });\n }\n\n private getBuildMeta() {\n if (!this._buildMeta) {\n return this.file.readAsText(cordova.file.applicationDirectory + 'www/', 'build_meta.json')\n .then(data => {\n this._buildMeta = JSON.parse(data);\n return this._buildMeta;\n }, noop);\n }\n return Promise.resolve(this._buildMeta);\n }\n\n private getUserConfirmation() {\n this.downloadProgress = 0;\n this.downloading = false;\n this.message = 'There is an update available. Would you like to update the app?';\n removeClass(this.elRef.nativeElement, 'hidden');\n }\n}\n","<div class=\"modal-dialog\">\n <div class=\"modal-content\"> \n <div class=\"modal-body\"> \n <span [textContent]=\"message\"></span>\n <div class=\"progress\" [hidden]=\"!downloading\">\n <div class=\"progress-bar\" [style.width.%]=\"downloadProgress\"></div>\n </div>\n </div>\n <div class=\"modal-footer\"> \n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\" (click)=\"cancel()\">Skip update</button>\n <button type=\"button\" class=\"btn btn-primary\" [hidden]=\"downloading\" (click)=\"installLatestVersion()\">Update</button>\n </div>\n </div>\n</div>","<div class=\"app-file-browser\" *ngIf=\"isVisible && currentFolder\">\n <div class=\"modal-backdrop fade\" [class.in]=\"isVisible\"></div>\n <div class=\"modal fade\" style=\"display: block;\" [class.in]=\"isVisible\" >\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header clearfix\">\n <h4 class=\"modal-title pull-left\">\n <span (click)=\"onFileClick(currentFolder.parent)\" [hidden]=\"!!!currentFolder.parent\">\n <i class=\"wi wi-long-arrow-left\"></i>\n </span>\n {{currentFolder.name}}\n </h4>\n <div class=\"selected-file-button pull-right\" (click)=\"refreshFolder()\">\n <i class=\"wi wi-refresh\"></i>\n </div>\n </div>\n <div class=\"modal-body\">\n <div class=\"file-info-box\" *ngFor=\"let file of currentFolder.files\">\n <div class=\"file-info\" [class.bg-primary]=\"file.isSelected\" (click)=\"onFileClick(file)\">\n <i class=\"file-icon wi wi-folder\" *ngIf=\"!file.isFile\"></i>\n <i class=\"file-icon wi wi-file {{getFileExtension(file.name)}}\" *ngIf=\"file.isFile\"></i>\n <span class=\"file-name\">{{file.name}}</span>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"selectedFiles && selectedFiles.length > 0\" (click)=\"submit()\">\n Done <span class=\"badge badge-light\">{{selectedFiles.length}}</span>\n </button>\n <button type=\"button\" class=\"btn btn-default\" (click)=\"show = false;\">Close</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\n\nimport { $appDigest, isIos } from '@wm/core';\nimport { DeviceService } from '@wm/mobile/core';\n\ndeclare const _;\ndeclare const cordova;\ndeclare const resolveLocalFileSystemURL;\n\nexport interface File {\n name: string;\n size: number;\n isSelected: boolean;\n file: (success: (navtiveFileObject: any) => void, failure: (message: any) => any) => void;\n}\n\nexport interface Folder {\n name: string;\n files: File[];\n folders: Folder[];\n parent: Folder;\n}\n\n@Component({\n selector: '[wmMobileFileBrowser]',\n templateUrl: './file-browser.component.html'\n})\nexport class FileBrowserComponent implements OnDestroy {\n\n public currentFolder: Folder;\n @Input() public fileTypeToSelect: string;\n @Input() public multiple: boolean;\n public selectedFiles: File[] = [];\n @Output('submit') submitEmitter = new EventEmitter();\n public isVisible: boolean;\n\n private backButtonListenerDeregister: any;\n\n constructor(private deviceService: DeviceService) {}\n\n\n public getFileExtension(fileName: string): string {\n const extIndex = fileName ? fileName.lastIndexOf('.') : -1;\n if (extIndex > 0) {\n return fileName.substring(extIndex + 1);\n }\n return '';\n }\n\n public ngOnDestroy() {\n if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public onFileClick(file): void {\n if (file.isFile) {\n if (file.isSelected) {\n this.deselectFile(file);\n } else {\n this.selectFile(file);\n }\n } else {\n this.goToFolder(file);\n }\n }\n\n public set show(flag: boolean) {\n let rootDir = cordova.file.externalRootDirectory;\n this.isVisible = flag;\n if (flag) {\n if (!this.currentFolder) {\n if (isIos()) {\n rootDir = cordova.file.documentsDirectory;\n }\n resolveLocalFileSystemURL(rootDir, root => this.goToFolder(root));\n }\n this.backButtonListenerDeregister = this.deviceService.onBackButtonTap(() => {\n if (this.isVisible) {\n if (this.currentFolder.parent) {\n this.onFileClick(this.currentFolder.parent);\n } else {\n this.isVisible = false;\n }\n $appDigest();\n return false;\n }\n });\n } else if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public submit() {\n const files = [];\n this.loadFileSize(this.selectedFiles).then(() => {\n _.forEach(this.selectedFiles, function (f) {\n f.isSelected = false;\n files.push({ path: f.nativeURL,\n name: f.name,\n size : f.size});\n });\n this.selectedFiles = [];\n this.isVisible = false;\n this.submitEmitter.next({files: files});\n });\n }\n\n private deselectFile(file: File): void {\n _.remove(this.selectedFiles, file);\n file.isSelected = false;\n }\n\n private goToFolder(folder: Folder): void {\n if (!folder.files) {\n this.loadFolder(folder, this.fileTypeToSelect)\n .then(files => {\n folder.files = files;\n folder.parent = this.currentFolder;\n this.currentFolder = folder;\n });\n } else {\n this.currentFolder = folder;\n }\n }\n\n private loadFileSize(files: File[]): Promise<void[]> {\n return Promise.all(files.map(f => {\n return new Promise<void>((resolve, reject) => {\n f.file(o => {\n f.size = o.size;\n resolve();\n }, reject);\n });\n }));\n }\n\n private loadFolder(folder: any, fileTypeToSelect: string): Promise<File[]> {\n return new Promise((resolve, reject) => {\n let fileTypeToShow;\n folder.createReader().readEntries((entries: File[]) => {\n if (!_.isEmpty(fileTypeToSelect)) {\n fileTypeToShow = _.split(fileTypeToSelect, ',');\n entries = _.filter(entries, e => {\n return !e.isFile || _.findIndex(fileTypeToShow, ext => _.endsWith(e.name, '.' + ext)) >= 0;\n });\n }\n resolve(_.sortBy(entries, e => (e.isFile ? '1_' : '0_') + e.name.toLowerCase()));\n }, reject);\n });\n }\n\n\n private refreshFolder(): Promise<any> {\n return this.loadFolder(this.currentFolder, this.fileTypeToSelect)\n .then(files => this.currentFolder.files = files);\n }\n\n private selectFile(file): void {\n if (!this.multiple && this.selectedFiles.length > 0) {\n this.selectedFiles[0].isSelected = false;\n this.selectedFiles = [];\n }\n this.selectedFiles.push(file);\n file.isSelected = true;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { convertToBlob, AbstractSpinnerService } from '@wm/core';\nimport { FileBrowserComponent } from './file-browser.component';\n\ndeclare const _;\ndeclare const window, cordova;\n\nexport interface FileContent {\n name: string;\n path: string;\n blob: any;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class FileSelectorService {\n static readonly SERVICE_NAME = 'FileSelectorService';\n\n private fileBrowserComponent: FileBrowserComponent;\n\n public constructor(private spinnerService: AbstractSpinnerService) {}\n\n public selectAudio(multiple = false): Promise<any> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectAudio(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public setFileBrowser(f: FileBrowserComponent) {\n this.fileBrowserComponent = f;\n }\n\n public selectFiles(multiple = false, fileTypeToSelect?: string): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectFiles(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectImages(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectImage(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectVideos(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectVideo(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n\n }\n\n /**\n * Converts the file to blob using filepath\n * @param filePaths, array of file paths\n * @returns fileObj having name, path, content\n */\n private getFiles(filePaths: string[]): Promise<FileContent[]> {\n return Promise.all(_.map(filePaths, filePath => {\n if (filePath.indexOf('://') < 0) {\n filePath = 'file://' + filePath;\n }\n return convertToBlob(filePath)\n })).then(filesList => {\n return _.map(filesList, fileObj => {\n const path = fileObj.filepath;\n return {\n name: path.split('/').pop(),\n path: path,\n content: fileObj.blob,\n size: fileObj.blob.size\n };\n });\n });\n }\n}\n","import { Directive, DoCheck, Inject, Input, Self } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { WidgetRef } from '@wm/components/base';\nimport { hasCordova, noop, transformFileURI } from '@wm/core';\nimport { DeviceFileCacheService } from '@wm/mobile/core';\n\ndeclare const _;\nconst DEFAULT_IMAGE = 'resources/images/imagelists/default-image.png';\n\n@Directive({\n selector: '[wmImageCache]'\n})\nexport class ImageCacheDirective implements DoCheck {\n\n private _cacheUrl;\n private _isEnabled = false;\n private _lastUrl = '';\n\n constructor(\n @Self() @Inject(WidgetRef) private componentInstance,\n private deviceFileCacheService: DeviceFileCacheService,\n private file: File\n\n ) {}\n\n public ngDoCheck() {\n if (_.isString(this.componentInstance.imgSource)\n && this.componentInstance.imgSource.startsWith('http')) {\n if (this._lastUrl !== this.componentInstance.imgSource) {\n this._lastUrl = this.componentInstance.imgSource;\n this.componentInstance.imgSource = DEFAULT_IMAGE;\n this.getLocalPath(this._lastUrl).then((localPath) => {\n this._cacheUrl = transformFileURI(localPath);\n this.componentInstance.imgSource = this._cacheUrl;\n });\n } else if (this._cacheUrl) {\n this.componentInstance.imgSource = this._cacheUrl;\n }\n }\n }\n\n @Input()\n set wmImageCache(val: string) {\n this._isEnabled = (hasCordova() && val === 'true');\n }\n\n private getLocalPath(val: string) {\n if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {\n return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)\n .catch(() => val);\n }\n return Promise.resolve(val);\n }\n}\n","import { register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-network-info-toaster',\n new Map(\n []\n )\n );\n};\n","<div class=\"network-info-toaster-content\" [ngSwitch]=\"networkState\" *ngIf=\"showMessage\">\n <div class=\"info\" *ngSwitchCase=\"-3\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_NETWORK_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-2\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n <button class=\"btn btn-primary connect-btn\" (click)=\"connect()\" [textContent]=\"appLocale.LABEL_CONNECT_TO_SERVICE\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"0\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTING\"></label>\n </div>\n <div class=\"info\" *ngSwitchCase=\"1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTED\"></label>\n </div>\n</div>","import {Component, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './network-info-toaster.props';\nimport {$appDigest, App} from '@wm/core';\nimport { NetworkService } from '@wm/mobile/core';\n\nconst DEFAULT_CLS = 'network-info-toaster';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-network-info-toaster', hostClass: DEFAULT_CLS};\n\nexport enum NetworkState {\n CONNECTED = 1,\n CONNECTING = 0,\n SERVICE_AVAILABLE_BUT_NOT_CONNECTED = -1,\n NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE = -2,\n NETWORK_NOT_AVAIABLE = -3\n}\n\n\n@Component({\n selector: '[wmNetworkInfoToaster]',\n templateUrl: './network-info-toaster.component.html',\n providers: [\n provideAsWidgetRef(NetworkInfoToasterComponent)\n ]\n})\nexport class NetworkInfoToasterComponent extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n public showMessage = false;\n public isServiceConnected = false;\n public isServiceAvailable = false;\n public networkState: NetworkState;\n\n private _listenerDestroyer;\n\n constructor(private networkService: NetworkService, app: App, inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.$element, this);\n this.isServiceAvailable = <boolean> this.networkService.isAvailable();\n this.isServiceConnected = this.networkService.isConnected();\n this._listenerDestroyer = app.subscribe('onNetworkStateChange', (data) => {\n this.renderMessage(data);\n });\n this.renderMessage();\n }\n\n private renderMessage(data?) {\n data = data || this.networkService.getState();\n const oldState = this.networkState;\n let autoHide = false;\n if (data.noServiceRequired) {\n return false;\n }\n if (data.isConnected) {\n this.networkState = NetworkState.CONNECTED;\n autoHide = true;\n } else if (data.isConnecting) {\n this.networkState = NetworkState.CONNECTING;\n } else if (data.isServiceAvailable) {\n this.networkState = NetworkState.SERVICE_AVAILABLE_BUT_NOT_CONNECTED;\n } else if (data.isNetworkAvailable && !data.isServiceAvailable) {\n this.networkState = NetworkState.NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE;\n } else {\n this.networkState = NetworkState.NETWORK_NOT_AVAIABLE;\n }\n this.showMessage = (!(oldState === undefined && data.isConnected) && oldState !== this.networkState);\n if (autoHide && this.showMessage) {\n setTimeout(() => {\n this.showMessage = false;\n $appDigest();\n }, 5000);\n }\n }\n\n public connect() {\n this.networkService.connect();\n }\n\n public hideMessage() {\n this.showMessage = false;\n }\n\n public ngOnDestroy() {\n this._listenerDestroyer();\n super.ngOnDestroy();\n }\n}\n","<ng-container *ngIf=\"instances.length > 0\">\n <div class=\"modal-dialog app-dialog\">\n <div class=\"modal-content\">\n <ul class=\"instance-list list-unstyled\">\n <li *ngFor=\"let instance of getVisibleInstances(instances); index as i\" class=\"instance-list-item\">\n <div class=\"row\">\n <div class=\"col-xs-8\">\n <label class=\"app-global-progress-bar-name h6\">{{instance.name}}</label>\n </div>\n <div class=\"col-xs-4 app-global-progress-bar-progress-label-col\">\n <label class=\"app-global-progress-bar-progress-label h6\">\n {{instance.progressLabel}}</label>\n </div>\n </div>\n <ng-template [ngTemplateOutlet]=\"progressTemplate\" [ngTemplateOutletContext]=\"{instance: instance}\"></ng-template>\n <button class=\"btn btn-secondary pull-right stop-btn\" *ngIf=\"instance.onStop\" (click)=\"instance.onStop();\">\n {{instance.stopButtonLabel}}\n </button>\n <div style=\"clear: both;\"></div>\n </li>\n <li class=\"instance-list-item\" *ngIf=\"queue.length > 0\">\n <label class=\"global-progress-bar-ui-primary-label h6\">\n ({{queue.length}}) queued\n </label>\n </li>\n </ul>\n </div>\n </div>\n</ng-container>\n<ng-template #progressTemplate let-instance=\"instance\">\n <div wmProgressBar minvalue.bind=\"instance.min\" maxvalue.bind=\"instance.max\" datavalue.bind=\"instance.value\"></div>\n</ng-template>","import { Component, DoCheck, ElementRef } from '@angular/core';\n\nimport { addClass, removeAttr, setAttr } from '@wm/core';\nimport { provideAsWidgetRef } from '@wm/components/base';\n\ndeclare const _;\n\nexport interface Process {\n max: number;\n min: number;\n name: string;\n onStop: () => void;\n progressLabel: string;\n show: boolean;\n stopButtonLabel: string;\n value: number;\n}\n\nexport interface ProcessApi {\n destroy: () => Promise<void>;\n get: (propertyName: string) => string;\n set: (propertyName: string, propertyValue: any) => void;\n}\n\nconst MAX_PROCESS = 3;\n\n@Component({\n selector: '[wmProcessManager]',\n templateUrl: './process-manager.component.html',\n providers: [\n provideAsWidgetRef(ProcessManagerComponent)\n ]\n})\nexport class ProcessManagerComponent implements DoCheck {\n\n private isVisible = true;\n\n public instances: Process[] = [];\n public queue = [];\n\n constructor(private el: ElementRef) {\n addClass(this.el.nativeElement, 'app-global-progress-bar modal default');\n }\n\n public createInstance(name: string, min = 0, max = 100): Promise<ProcessApi> {\n const instance: Process = {\n max: max,\n min: min,\n name: name,\n onStop: null,\n progressLabel: '',\n show: min !== max,\n stopButtonLabel : 'Cancel',\n value: 0\n };\n const api = {\n get: (propertyName) => instance[propertyName],\n set: (propertyName, propertyValue) => this.setInstaceProperty(instance, propertyName, propertyValue),\n destroy: () => this.removeInstance(instance)\n };\n return this.addToQueue(instance).then(() => api);\n }\n\n public getVisibleInstances() {\n return this.instances.filter(i => i.show);\n }\n\n public ngDoCheck() {\n const hasInstancesToShow = !!this.instances.find(i => i.show);\n if (this.isVisible && !hasInstancesToShow) {\n setAttr(this.el.nativeElement, 'hidden', 'true');\n this.isVisible = false;\n } else if (!this.isVisible && hasInstancesToShow) {\n removeAttr(this.el.nativeElement, 'hidden');\n this.isVisible = true;\n }\n }\n\n private addToQueue(instance): Promise<void> {\n return new Promise( resolve => {\n this.queue.push(() => {\n if (this.instances.length < MAX_PROCESS) {\n this.instances.push(instance);\n resolve(instance);\n } else {\n return false;\n }\n });\n this.flushQueue();\n });\n }\n\n private flushQueue() {\n if (this.queue.length > 0 && this.queue[0]() !== false) {\n this.queue.shift();\n this.flushQueue();\n }\n }\n\n private removeInstance(instance: Process): Promise<void> {\n return new Promise( resolve => {\n setTimeout(() => {\n _.remove(this.instances, instance);\n this.flushQueue();\n resolve();\n }, 1000);\n });\n }\n\n private setInstaceProperty(instance: Process, propertyName: string, propertyValue: any) {\n if (propertyName === 'value') {\n if (instance.value >= instance.max) {\n propertyValue = instance.max;\n }\n instance.value = propertyValue;\n instance.progressLabel = instance.value + '/' + instance.max;\n } else if (propertyName === 'onStop' && _.isFunction(propertyValue)) {\n instance.onStop = () => {\n propertyValue();\n return this.removeInstance(instance);\n };\n } else {\n instance[propertyName] = propertyValue;\n }\n instance.show = instance.min !== instance.max;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ProcessManagerComponent, ProcessApi } from './process-manager.component';\n\n@Injectable({ providedIn: 'root' })\nexport class ProcessManagementService {\n static readonly SERVICE_NAME = 'ProcessManagementService';\n\n private processManagerComponent: ProcessManagerComponent;\n\n setUIComponent(processManagerComponent: ProcessManagerComponent) {\n this.processManagerComponent = processManagerComponent;\n }\n\n /**\n * Returns a promise that will be resolved when an instance is available. At max, 3 instances can only run\n * in parallel and rest has to wait till a process is completed.\n *\n * A progress instance has the following properties.\n *\n * 1) min {number} minimum value, default value is 0 </br>\n * 2) max {number} maximum value, default value is 100 </br>\n * 3) value {number} progress value </br>\n * 4) progressLabel {string} process name </br>\n * 5) stopButtonLabel {string} label for stop button, default value is 'Cancel' </br>\n * 6) onStop {function} function to invoke when stop button is clicked. </br>\n *\n * A progress instance has 3 methods </br>\n * 1) set(property, value) -- sets value to the corresponding property </br>\n * 2) get(property) -- returns property value </br>\n * 3) destroy() -- closes the instance. </br>\n *\n * A progress instance will get auto closed when value and max are equal or when destroy method is called.\n *\n * @param {string} name name of the process whose progress is going to be shown\n * @param {number} min minimum value\n * @param {number} max maximum value\n *\n * @returns {object} a promise\n */\n public createInstance(name: string, min?: number, max?: number): Promise<ProcessApi> {\n if (!this.processManagerComponent) {\n return Promise.reject('ProcessManagerComponent is missing');\n }\n return this.processManagerComponent.createInstance(name, min, max);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { ProgressModule } from '@wm/components/basic/progress';\n\nimport { AnchorDirective } from './anchor/anchor.directive';\nimport { AppUpdateComponent } from './app-update/app-update.component';\nimport { FileBrowserComponent } from './file-browser/file-browser.component';\nimport { ImageCacheDirective } from './image-cache/image-cache.directive';\nimport { NetworkInfoToasterComponent } from './network-info-toaster/network-info-toaster.component';\nimport { ProcessManagerComponent } from './process-manager/process-manager.component';\n\nconst components = [\n AnchorDirective,\n AppUpdateComponent,\n FileBrowserComponent,\n ImageCacheDirective,\n NetworkInfoToasterComponent,\n ProcessManagerComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","_c0","i1","i2"],"mappings":"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"}
@@ -492,7 +492,7 @@ class ImageCacheDirective {
492
492
  getLocalPath(val) {
493
493
  if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {
494
494
  return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)
495
- .catch(noop);
495
+ .catch(() => val);
496
496
  }
497
497
  return Promise.resolve(val);
498
498
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/basic/default/src/anchor/anchor.directive.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.ts","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-selector.service.ts","../../../../../../projects/mobile/components/basic/default/src/image-cache/image-cache.directive.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.props.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.html","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.html","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-management.service.ts","../../../../../../projects/mobile/components/basic/default/src/basic.module.ts","../../../../../../projects/mobile/components/basic/default/src/index.ts"],"sourcesContent":["import { Directive, HostListener, Inject } from '@angular/core';\n\nimport { WidgetRef } from '@wm/components/base';\n\ndeclare const _;\ndeclare const cordova;\n\n@Directive({\n selector: '[wmAnchor]'\n})\nexport class AnchorDirective {\n\n constructor(@Inject(WidgetRef) private widget: any) { }\n\n @HostListener('click')\n onClick () {\n let href = this.widget.hyperlink;\n if (href) {\n if (href.indexOf(':') >= 0 && !(_.startsWith(href, 'http://') || _.startsWith(href, 'https://'))) {\n return;\n } else if (_.startsWith(href, '#')) {\n window.location.href = window.location.origin + window.location.pathname + href;\n return;\n } else if (_.startsWith(href, '//')) {\n href = 'https:' + href;\n }\n if (window['cordova']) {\n window.open(href, this.widget.target);\n }\n }\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Component, ElementRef } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\n\nimport { addClass, hasCordova, noop, removeClass, setCSS } from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\nconst DEFAULT_CLS = 'app-update-dialog modal fade in hidden';\n\nconst AUTO_UPDATE_FILENAME = 'app-auto-update.apk';\n\n@Component({\n selector: '[wmAppUpdate]',\n templateUrl: './app-update.component.html'\n})\nexport class AppUpdateComponent {\n\n public downloadProgress = 0;\n public downloading = false;\n public message = 'There is an update available. Would you like to update the app?';\n\n private _buildMeta: any;\n\n constructor(\n private deviceService: DeviceService,\n private fileDownloadService: DeviceFileDownloadService,\n private elRef: ElementRef,\n private file: File,\n private fileOpener: FileOpener,\n private http: HttpClient\n ) {\n\n addClass(this.elRef.nativeElement, DEFAULT_CLS);\n setCSS(this.elRef.nativeElement, 'display', 'block');\n if (hasCordova()) {\n this.getBuildMeta().then(buildMeta => {\n if (buildMeta && buildMeta.buildMode === 'DEVELOPMENT_MODE') {\n this.file.removeFile(cordova.file.externalApplicationStorageDirectory, AUTO_UPDATE_FILENAME).catch(noop);\n this.checkForUpdate()\n .then(this.getUserConfirmation.bind(this), noop);\n }\n });\n }\n }\n\n public cancel() {\n addClass(this.elRef.nativeElement, 'hidden');\n }\n\n public installLatestVersion() {\n const apkFile = cordova.file.externalApplicationStorageDirectory + AUTO_UPDATE_FILENAME,\n downloadLink = `${this._buildMeta.host}/appBuild/rest/mobileBuilds/android/download?token=${this._buildMeta.token}&buildNumber=${this._buildMeta.latestBuildNumber}&fileName=${AUTO_UPDATE_FILENAME}&releaseVersion=${this._buildMeta.platformVersion}`,\n progressObserver = { next: e => { this.downloadProgress = (e.loaded / e.total) * 100; }, error: null, complete: null};\n this.fileDownloadService.download(\n downloadLink,\n false,\n cordova.file.externalApplicationStorageDirectory,\n AUTO_UPDATE_FILENAME,\n progressObserver).then(() => {\n this.fileOpener.open(apkFile, 'application/vnd.android.package-archive');\n }, function () {\n this.message = 'Failed to download latest version.';\n });\n this.message = `Downloading the latest version [${this._buildMeta.latestVersion}].`;\n this.downloading = true;\n }\n\n private checkForUpdate() {\n return new Promise((resolve, reject) => {\n this.http.get(`${this._buildMeta.host}/appBuild/rest/mobileBuilds/latest_build?token=${this._buildMeta.token}&releaseVersion=${this._buildMeta.platformVersion}`)\n .toPromise()\n .then((response: any) => {\n const latestBuildNumber = response.success.body.buildNumber,\n latestVersion = response.success.body.version;\n if (this._buildMeta.buildNumber < latestBuildNumber) {\n this._buildMeta.latestBuildNumber = latestBuildNumber;\n this._buildMeta.latestVersion = latestVersion;\n resolve(latestBuildNumber);\n } else {\n reject();\n }\n }, reject);\n });\n }\n\n private getBuildMeta() {\n if (!this._buildMeta) {\n return this.file.readAsText(cordova.file.applicationDirectory + 'www/', 'build_meta.json')\n .then(data => {\n this._buildMeta = JSON.parse(data);\n return this._buildMeta;\n }, noop);\n }\n return Promise.resolve(this._buildMeta);\n }\n\n private getUserConfirmation() {\n this.downloadProgress = 0;\n this.downloading = false;\n this.message = 'There is an update available. Would you like to update the app?';\n removeClass(this.elRef.nativeElement, 'hidden');\n }\n}\n","<div class=\"modal-dialog\">\n <div class=\"modal-content\"> \n <div class=\"modal-body\"> \n <span [textContent]=\"message\"></span>\n <div class=\"progress\" [hidden]=\"!downloading\">\n <div class=\"progress-bar\" [style.width.%]=\"downloadProgress\"></div>\n </div>\n </div>\n <div class=\"modal-footer\"> \n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\" (click)=\"cancel()\">Skip update</button>\n <button type=\"button\" class=\"btn btn-primary\" [hidden]=\"downloading\" (click)=\"installLatestVersion()\">Update</button>\n </div>\n </div>\n</div>","<div class=\"app-file-browser\" *ngIf=\"isVisible && currentFolder\">\n <div class=\"modal-backdrop fade\" [class.in]=\"isVisible\"></div>\n <div class=\"modal fade\" style=\"display: block;\" [class.in]=\"isVisible\" >\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header clearfix\">\n <h4 class=\"modal-title pull-left\">\n <span (click)=\"onFileClick(currentFolder.parent)\" [hidden]=\"!!!currentFolder.parent\">\n <i class=\"wi wi-long-arrow-left\"></i>\n </span>\n {{currentFolder.name}}\n </h4>\n <div class=\"selected-file-button pull-right\" (click)=\"refreshFolder()\">\n <i class=\"wi wi-refresh\"></i>\n </div>\n </div>\n <div class=\"modal-body\">\n <div class=\"file-info-box\" *ngFor=\"let file of currentFolder.files\">\n <div class=\"file-info\" [class.bg-primary]=\"file.isSelected\" (click)=\"onFileClick(file)\">\n <i class=\"file-icon wi wi-folder\" *ngIf=\"!file.isFile\"></i>\n <i class=\"file-icon wi wi-file {{getFileExtension(file.name)}}\" *ngIf=\"file.isFile\"></i>\n <span class=\"file-name\">{{file.name}}</span>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"selectedFiles && selectedFiles.length > 0\" (click)=\"submit()\">\n Done <span class=\"badge badge-light\">{{selectedFiles.length}}</span>\n </button>\n <button type=\"button\" class=\"btn btn-default\" (click)=\"show = false;\">Close</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\n\nimport { $appDigest, isIos } from '@wm/core';\nimport { DeviceService } from '@wm/mobile/core';\n\ndeclare const _;\ndeclare const cordova;\ndeclare const resolveLocalFileSystemURL;\n\nexport interface File {\n name: string;\n size: number;\n isSelected: boolean;\n file: (success: (navtiveFileObject: any) => void, failure: (message: any) => any) => void;\n}\n\nexport interface Folder {\n name: string;\n files: File[];\n folders: Folder[];\n parent: Folder;\n}\n\n@Component({\n selector: '[wmMobileFileBrowser]',\n templateUrl: './file-browser.component.html'\n})\nexport class FileBrowserComponent implements OnDestroy {\n\n public currentFolder: Folder;\n @Input() public fileTypeToSelect: string;\n @Input() public multiple: boolean;\n public selectedFiles: File[] = [];\n @Output('submit') submitEmitter = new EventEmitter();\n public isVisible: boolean;\n\n private backButtonListenerDeregister: any;\n\n constructor(private deviceService: DeviceService) {}\n\n\n public getFileExtension(fileName: string): string {\n const extIndex = fileName ? fileName.lastIndexOf('.') : -1;\n if (extIndex > 0) {\n return fileName.substring(extIndex + 1);\n }\n return '';\n }\n\n public ngOnDestroy() {\n if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public onFileClick(file): void {\n if (file.isFile) {\n if (file.isSelected) {\n this.deselectFile(file);\n } else {\n this.selectFile(file);\n }\n } else {\n this.goToFolder(file);\n }\n }\n\n public set show(flag: boolean) {\n let rootDir = cordova.file.externalRootDirectory;\n this.isVisible = flag;\n if (flag) {\n if (!this.currentFolder) {\n if (isIos()) {\n rootDir = cordova.file.documentsDirectory;\n }\n resolveLocalFileSystemURL(rootDir, root => this.goToFolder(root));\n }\n this.backButtonListenerDeregister = this.deviceService.onBackButtonTap(() => {\n if (this.isVisible) {\n if (this.currentFolder.parent) {\n this.onFileClick(this.currentFolder.parent);\n } else {\n this.isVisible = false;\n }\n $appDigest();\n return false;\n }\n });\n } else if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public submit() {\n const files = [];\n this.loadFileSize(this.selectedFiles).then(() => {\n _.forEach(this.selectedFiles, function (f) {\n f.isSelected = false;\n files.push({ path: f.nativeURL,\n name: f.name,\n size : f.size});\n });\n this.selectedFiles = [];\n this.isVisible = false;\n this.submitEmitter.next({files: files});\n });\n }\n\n private deselectFile(file: File): void {\n _.remove(this.selectedFiles, file);\n file.isSelected = false;\n }\n\n private goToFolder(folder: Folder): void {\n if (!folder.files) {\n this.loadFolder(folder, this.fileTypeToSelect)\n .then(files => {\n folder.files = files;\n folder.parent = this.currentFolder;\n this.currentFolder = folder;\n });\n } else {\n this.currentFolder = folder;\n }\n }\n\n private loadFileSize(files: File[]): Promise<void[]> {\n return Promise.all(files.map(f => {\n return new Promise<void>((resolve, reject) => {\n f.file(o => {\n f.size = o.size;\n resolve();\n }, reject);\n });\n }));\n }\n\n private loadFolder(folder: any, fileTypeToSelect: string): Promise<File[]> {\n return new Promise((resolve, reject) => {\n let fileTypeToShow;\n folder.createReader().readEntries((entries: File[]) => {\n if (!_.isEmpty(fileTypeToSelect)) {\n fileTypeToShow = _.split(fileTypeToSelect, ',');\n entries = _.filter(entries, e => {\n return !e.isFile || _.findIndex(fileTypeToShow, ext => _.endsWith(e.name, '.' + ext)) >= 0;\n });\n }\n resolve(_.sortBy(entries, e => (e.isFile ? '1_' : '0_') + e.name.toLowerCase()));\n }, reject);\n });\n }\n\n\n private refreshFolder(): Promise<any> {\n return this.loadFolder(this.currentFolder, this.fileTypeToSelect)\n .then(files => this.currentFolder.files = files);\n }\n\n private selectFile(file): void {\n if (!this.multiple && this.selectedFiles.length > 0) {\n this.selectedFiles[0].isSelected = false;\n this.selectedFiles = [];\n }\n this.selectedFiles.push(file);\n file.isSelected = true;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { convertToBlob, AbstractSpinnerService } from '@wm/core';\nimport { FileBrowserComponent } from './file-browser.component';\n\ndeclare const _;\ndeclare const window, cordova;\n\nexport interface FileContent {\n name: string;\n path: string;\n blob: any;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class FileSelectorService {\n static readonly SERVICE_NAME = 'FileSelectorService';\n\n private fileBrowserComponent: FileBrowserComponent;\n\n public constructor(private spinnerService: AbstractSpinnerService) {}\n\n public selectAudio(multiple = false): Promise<any> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectAudio(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public setFileBrowser(f: FileBrowserComponent) {\n this.fileBrowserComponent = f;\n }\n\n public selectFiles(multiple = false, fileTypeToSelect?: string): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectFiles(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectImages(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectImage(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectVideos(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectVideo(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n\n }\n\n /**\n * Converts the file to blob using filepath\n * @param filePaths, array of file paths\n * @returns fileObj having name, path, content\n */\n private getFiles(filePaths: string[]): Promise<FileContent[]> {\n return Promise.all(_.map(filePaths, filePath => {\n if (filePath.indexOf('://') < 0) {\n filePath = 'file://' + filePath;\n }\n return convertToBlob(filePath)\n })).then(filesList => {\n return _.map(filesList, fileObj => {\n const path = fileObj.filepath;\n return {\n name: path.split('/').pop(),\n path: path,\n content: fileObj.blob,\n size: fileObj.blob.size\n };\n });\n });\n }\n}\n","import { Directive, DoCheck, Inject, Input, Self } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { WidgetRef } from '@wm/components/base';\nimport { hasCordova, noop, transformFileURI } from '@wm/core';\nimport { DeviceFileCacheService } from '@wm/mobile/core';\n\ndeclare const _;\nconst DEFAULT_IMAGE = 'resources/images/imagelists/default-image.png';\n\n@Directive({\n selector: '[wmImageCache]'\n})\nexport class ImageCacheDirective implements DoCheck {\n\n private _cacheUrl;\n private _isEnabled = false;\n private _lastUrl = '';\n\n constructor(\n @Self() @Inject(WidgetRef) private componentInstance,\n private deviceFileCacheService: DeviceFileCacheService,\n private file: File\n\n ) {}\n\n public ngDoCheck() {\n if (_.isString(this.componentInstance.imgSource)\n && this.componentInstance.imgSource.startsWith('http')) {\n if (this._lastUrl !== this.componentInstance.imgSource) {\n this._lastUrl = this.componentInstance.imgSource;\n this.componentInstance.imgSource = DEFAULT_IMAGE;\n this.getLocalPath(this._lastUrl).then((localPath) => {\n this._cacheUrl = transformFileURI(localPath);\n this.componentInstance.imgSource = this._cacheUrl;\n });\n } else if (this._cacheUrl) {\n this.componentInstance.imgSource = this._cacheUrl;\n }\n }\n }\n\n @Input()\n set wmImageCache(val: string) {\n this._isEnabled = (hasCordova() && val === 'true');\n }\n\n private getLocalPath(val: string) {\n if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {\n return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)\n .catch(noop);\n }\n return Promise.resolve(val);\n }\n}\n","import { register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-network-info-toaster',\n new Map(\n []\n )\n );\n};\n","<div class=\"network-info-toaster-content\" [ngSwitch]=\"networkState\" *ngIf=\"showMessage\">\n <div class=\"info\" *ngSwitchCase=\"-3\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_NETWORK_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-2\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n <button class=\"btn btn-primary connect-btn\" (click)=\"connect()\" [textContent]=\"appLocale.LABEL_CONNECT_TO_SERVICE\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"0\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTING\"></label>\n </div>\n <div class=\"info\" *ngSwitchCase=\"1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTED\"></label>\n </div>\n</div>","import {Component, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './network-info-toaster.props';\nimport {$appDigest, App} from '@wm/core';\nimport { NetworkService } from '@wm/mobile/core';\n\nconst DEFAULT_CLS = 'network-info-toaster';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-network-info-toaster', hostClass: DEFAULT_CLS};\n\nexport enum NetworkState {\n CONNECTED = 1,\n CONNECTING = 0,\n SERVICE_AVAILABLE_BUT_NOT_CONNECTED = -1,\n NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE = -2,\n NETWORK_NOT_AVAIABLE = -3\n}\n\n\n@Component({\n selector: '[wmNetworkInfoToaster]',\n templateUrl: './network-info-toaster.component.html',\n providers: [\n provideAsWidgetRef(NetworkInfoToasterComponent)\n ]\n})\nexport class NetworkInfoToasterComponent extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n public showMessage = false;\n public isServiceConnected = false;\n public isServiceAvailable = false;\n public networkState: NetworkState;\n\n private _listenerDestroyer;\n\n constructor(private networkService: NetworkService, app: App, inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.$element, this);\n this.isServiceAvailable = <boolean> this.networkService.isAvailable();\n this.isServiceConnected = this.networkService.isConnected();\n this._listenerDestroyer = app.subscribe('onNetworkStateChange', (data) => {\n this.renderMessage(data);\n });\n this.renderMessage();\n }\n\n private renderMessage(data?) {\n data = data || this.networkService.getState();\n const oldState = this.networkState;\n let autoHide = false;\n if (data.noServiceRequired) {\n return false;\n }\n if (data.isConnected) {\n this.networkState = NetworkState.CONNECTED;\n autoHide = true;\n } else if (data.isConnecting) {\n this.networkState = NetworkState.CONNECTING;\n } else if (data.isServiceAvailable) {\n this.networkState = NetworkState.SERVICE_AVAILABLE_BUT_NOT_CONNECTED;\n } else if (data.isNetworkAvailable && !data.isServiceAvailable) {\n this.networkState = NetworkState.NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE;\n } else {\n this.networkState = NetworkState.NETWORK_NOT_AVAIABLE;\n }\n this.showMessage = (!(oldState === undefined && data.isConnected) && oldState !== this.networkState);\n if (autoHide && this.showMessage) {\n setTimeout(() => {\n this.showMessage = false;\n $appDigest();\n }, 5000);\n }\n }\n\n public connect() {\n this.networkService.connect();\n }\n\n public hideMessage() {\n this.showMessage = false;\n }\n\n public ngOnDestroy() {\n this._listenerDestroyer();\n super.ngOnDestroy();\n }\n}\n","<ng-container *ngIf=\"instances.length > 0\">\n <div class=\"modal-dialog app-dialog\">\n <div class=\"modal-content\">\n <ul class=\"instance-list list-unstyled\">\n <li *ngFor=\"let instance of getVisibleInstances(instances); index as i\" class=\"instance-list-item\">\n <div class=\"row\">\n <div class=\"col-xs-8\">\n <label class=\"app-global-progress-bar-name h6\">{{instance.name}}</label>\n </div>\n <div class=\"col-xs-4 app-global-progress-bar-progress-label-col\">\n <label class=\"app-global-progress-bar-progress-label h6\">\n {{instance.progressLabel}}</label>\n </div>\n </div>\n <ng-template [ngTemplateOutlet]=\"progressTemplate\" [ngTemplateOutletContext]=\"{instance: instance}\"></ng-template>\n <button class=\"btn btn-secondary pull-right stop-btn\" *ngIf=\"instance.onStop\" (click)=\"instance.onStop();\">\n {{instance.stopButtonLabel}}\n </button>\n <div style=\"clear: both;\"></div>\n </li>\n <li class=\"instance-list-item\" *ngIf=\"queue.length > 0\">\n <label class=\"global-progress-bar-ui-primary-label h6\">\n ({{queue.length}}) queued\n </label>\n </li>\n </ul>\n </div>\n </div>\n</ng-container>\n<ng-template #progressTemplate let-instance=\"instance\">\n <div wmProgressBar minvalue.bind=\"instance.min\" maxvalue.bind=\"instance.max\" datavalue.bind=\"instance.value\"></div>\n</ng-template>","import { Component, DoCheck, ElementRef } from '@angular/core';\n\nimport { addClass, removeAttr, setAttr } from '@wm/core';\nimport { provideAsWidgetRef } from '@wm/components/base';\n\ndeclare const _;\n\nexport interface Process {\n max: number;\n min: number;\n name: string;\n onStop: () => void;\n progressLabel: string;\n show: boolean;\n stopButtonLabel: string;\n value: number;\n}\n\nexport interface ProcessApi {\n destroy: () => Promise<void>;\n get: (propertyName: string) => string;\n set: (propertyName: string, propertyValue: any) => void;\n}\n\nconst MAX_PROCESS = 3;\n\n@Component({\n selector: '[wmProcessManager]',\n templateUrl: './process-manager.component.html',\n providers: [\n provideAsWidgetRef(ProcessManagerComponent)\n ]\n})\nexport class ProcessManagerComponent implements DoCheck {\n\n private isVisible = true;\n\n public instances: Process[] = [];\n public queue = [];\n\n constructor(private el: ElementRef) {\n addClass(this.el.nativeElement, 'app-global-progress-bar modal default');\n }\n\n public createInstance(name: string, min = 0, max = 100): Promise<ProcessApi> {\n const instance: Process = {\n max: max,\n min: min,\n name: name,\n onStop: null,\n progressLabel: '',\n show: min !== max,\n stopButtonLabel : 'Cancel',\n value: 0\n };\n const api = {\n get: (propertyName) => instance[propertyName],\n set: (propertyName, propertyValue) => this.setInstaceProperty(instance, propertyName, propertyValue),\n destroy: () => this.removeInstance(instance)\n };\n return this.addToQueue(instance).then(() => api);\n }\n\n public getVisibleInstances() {\n return this.instances.filter(i => i.show);\n }\n\n public ngDoCheck() {\n const hasInstancesToShow = !!this.instances.find(i => i.show);\n if (this.isVisible && !hasInstancesToShow) {\n setAttr(this.el.nativeElement, 'hidden', 'true');\n this.isVisible = false;\n } else if (!this.isVisible && hasInstancesToShow) {\n removeAttr(this.el.nativeElement, 'hidden');\n this.isVisible = true;\n }\n }\n\n private addToQueue(instance): Promise<void> {\n return new Promise( resolve => {\n this.queue.push(() => {\n if (this.instances.length < MAX_PROCESS) {\n this.instances.push(instance);\n resolve(instance);\n } else {\n return false;\n }\n });\n this.flushQueue();\n });\n }\n\n private flushQueue() {\n if (this.queue.length > 0 && this.queue[0]() !== false) {\n this.queue.shift();\n this.flushQueue();\n }\n }\n\n private removeInstance(instance: Process): Promise<void> {\n return new Promise( resolve => {\n setTimeout(() => {\n _.remove(this.instances, instance);\n this.flushQueue();\n resolve();\n }, 1000);\n });\n }\n\n private setInstaceProperty(instance: Process, propertyName: string, propertyValue: any) {\n if (propertyName === 'value') {\n if (instance.value >= instance.max) {\n propertyValue = instance.max;\n }\n instance.value = propertyValue;\n instance.progressLabel = instance.value + '/' + instance.max;\n } else if (propertyName === 'onStop' && _.isFunction(propertyValue)) {\n instance.onStop = () => {\n propertyValue();\n return this.removeInstance(instance);\n };\n } else {\n instance[propertyName] = propertyValue;\n }\n instance.show = instance.min !== instance.max;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ProcessManagerComponent, ProcessApi } from './process-manager.component';\n\n@Injectable({ providedIn: 'root' })\nexport class ProcessManagementService {\n static readonly SERVICE_NAME = 'ProcessManagementService';\n\n private processManagerComponent: ProcessManagerComponent;\n\n setUIComponent(processManagerComponent: ProcessManagerComponent) {\n this.processManagerComponent = processManagerComponent;\n }\n\n /**\n * Returns a promise that will be resolved when an instance is available. At max, 3 instances can only run\n * in parallel and rest has to wait till a process is completed.\n *\n * A progress instance has the following properties.\n *\n * 1) min {number} minimum value, default value is 0 </br>\n * 2) max {number} maximum value, default value is 100 </br>\n * 3) value {number} progress value </br>\n * 4) progressLabel {string} process name </br>\n * 5) stopButtonLabel {string} label for stop button, default value is 'Cancel' </br>\n * 6) onStop {function} function to invoke when stop button is clicked. </br>\n *\n * A progress instance has 3 methods </br>\n * 1) set(property, value) -- sets value to the corresponding property </br>\n * 2) get(property) -- returns property value </br>\n * 3) destroy() -- closes the instance. </br>\n *\n * A progress instance will get auto closed when value and max are equal or when destroy method is called.\n *\n * @param {string} name name of the process whose progress is going to be shown\n * @param {number} min minimum value\n * @param {number} max maximum value\n *\n * @returns {object} a promise\n */\n public createInstance(name: string, min?: number, max?: number): Promise<ProcessApi> {\n if (!this.processManagerComponent) {\n return Promise.reject('ProcessManagerComponent is missing');\n }\n return this.processManagerComponent.createInstance(name, min, max);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { ProgressModule } from '@wm/components/basic/progress';\n\nimport { AnchorDirective } from './anchor/anchor.directive';\nimport { AppUpdateComponent } from './app-update/app-update.component';\nimport { FileBrowserComponent } from './file-browser/file-browser.component';\nimport { ImageCacheDirective } from './image-cache/image-cache.directive';\nimport { NetworkInfoToasterComponent } from './network-info-toaster/network-info-toaster.component';\nimport { ProcessManagerComponent } from './process-manager/process-manager.component';\n\nconst components = [\n AnchorDirective,\n AppUpdateComponent,\n FileBrowserComponent,\n ImageCacheDirective,\n NetworkInfoToasterComponent,\n ProcessManagerComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","_c0","i1","i2"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/basic/default/src/anchor/anchor.directive.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.ts","../../../../../../projects/mobile/components/basic/default/src/app-update/app-update.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.html","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-browser.component.ts","../../../../../../projects/mobile/components/basic/default/src/file-browser/file-selector.service.ts","../../../../../../projects/mobile/components/basic/default/src/image-cache/image-cache.directive.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.props.ts","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.html","../../../../../../projects/mobile/components/basic/default/src/network-info-toaster/network-info-toaster.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.html","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-manager.component.ts","../../../../../../projects/mobile/components/basic/default/src/process-manager/process-management.service.ts","../../../../../../projects/mobile/components/basic/default/src/basic.module.ts","../../../../../../projects/mobile/components/basic/default/src/index.ts"],"sourcesContent":["import { Directive, HostListener, Inject } from '@angular/core';\n\nimport { WidgetRef } from '@wm/components/base';\n\ndeclare const _;\ndeclare const cordova;\n\n@Directive({\n selector: '[wmAnchor]'\n})\nexport class AnchorDirective {\n\n constructor(@Inject(WidgetRef) private widget: any) { }\n\n @HostListener('click')\n onClick () {\n let href = this.widget.hyperlink;\n if (href) {\n if (href.indexOf(':') >= 0 && !(_.startsWith(href, 'http://') || _.startsWith(href, 'https://'))) {\n return;\n } else if (_.startsWith(href, '#')) {\n window.location.href = window.location.origin + window.location.pathname + href;\n return;\n } else if (_.startsWith(href, '//')) {\n href = 'https:' + href;\n }\n if (window['cordova']) {\n window.open(href, this.widget.target);\n }\n }\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Component, ElementRef } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\nimport { FileOpener } from '@awesome-cordova-plugins/file-opener/ngx';\n\nimport { addClass, hasCordova, noop, removeClass, setCSS } from '@wm/core';\nimport { DeviceFileDownloadService, DeviceService } from '@wm/mobile/core';\n\ndeclare const cordova;\n\nconst DEFAULT_CLS = 'app-update-dialog modal fade in hidden';\n\nconst AUTO_UPDATE_FILENAME = 'app-auto-update.apk';\n\n@Component({\n selector: '[wmAppUpdate]',\n templateUrl: './app-update.component.html'\n})\nexport class AppUpdateComponent {\n\n public downloadProgress = 0;\n public downloading = false;\n public message = 'There is an update available. Would you like to update the app?';\n\n private _buildMeta: any;\n\n constructor(\n private deviceService: DeviceService,\n private fileDownloadService: DeviceFileDownloadService,\n private elRef: ElementRef,\n private file: File,\n private fileOpener: FileOpener,\n private http: HttpClient\n ) {\n\n addClass(this.elRef.nativeElement, DEFAULT_CLS);\n setCSS(this.elRef.nativeElement, 'display', 'block');\n if (hasCordova()) {\n this.getBuildMeta().then(buildMeta => {\n if (buildMeta && buildMeta.buildMode === 'DEVELOPMENT_MODE') {\n this.file.removeFile(cordova.file.externalApplicationStorageDirectory, AUTO_UPDATE_FILENAME).catch(noop);\n this.checkForUpdate()\n .then(this.getUserConfirmation.bind(this), noop);\n }\n });\n }\n }\n\n public cancel() {\n addClass(this.elRef.nativeElement, 'hidden');\n }\n\n public installLatestVersion() {\n const apkFile = cordova.file.externalApplicationStorageDirectory + AUTO_UPDATE_FILENAME,\n downloadLink = `${this._buildMeta.host}/appBuild/rest/mobileBuilds/android/download?token=${this._buildMeta.token}&buildNumber=${this._buildMeta.latestBuildNumber}&fileName=${AUTO_UPDATE_FILENAME}&releaseVersion=${this._buildMeta.platformVersion}`,\n progressObserver = { next: e => { this.downloadProgress = (e.loaded / e.total) * 100; }, error: null, complete: null};\n this.fileDownloadService.download(\n downloadLink,\n false,\n cordova.file.externalApplicationStorageDirectory,\n AUTO_UPDATE_FILENAME,\n progressObserver).then(() => {\n this.fileOpener.open(apkFile, 'application/vnd.android.package-archive');\n }, function () {\n this.message = 'Failed to download latest version.';\n });\n this.message = `Downloading the latest version [${this._buildMeta.latestVersion}].`;\n this.downloading = true;\n }\n\n private checkForUpdate() {\n return new Promise((resolve, reject) => {\n this.http.get(`${this._buildMeta.host}/appBuild/rest/mobileBuilds/latest_build?token=${this._buildMeta.token}&releaseVersion=${this._buildMeta.platformVersion}`)\n .toPromise()\n .then((response: any) => {\n const latestBuildNumber = response.success.body.buildNumber,\n latestVersion = response.success.body.version;\n if (this._buildMeta.buildNumber < latestBuildNumber) {\n this._buildMeta.latestBuildNumber = latestBuildNumber;\n this._buildMeta.latestVersion = latestVersion;\n resolve(latestBuildNumber);\n } else {\n reject();\n }\n }, reject);\n });\n }\n\n private getBuildMeta() {\n if (!this._buildMeta) {\n return this.file.readAsText(cordova.file.applicationDirectory + 'www/', 'build_meta.json')\n .then(data => {\n this._buildMeta = JSON.parse(data);\n return this._buildMeta;\n }, noop);\n }\n return Promise.resolve(this._buildMeta);\n }\n\n private getUserConfirmation() {\n this.downloadProgress = 0;\n this.downloading = false;\n this.message = 'There is an update available. Would you like to update the app?';\n removeClass(this.elRef.nativeElement, 'hidden');\n }\n}\n","<div class=\"modal-dialog\">\n <div class=\"modal-content\"> \n <div class=\"modal-body\"> \n <span [textContent]=\"message\"></span>\n <div class=\"progress\" [hidden]=\"!downloading\">\n <div class=\"progress-bar\" [style.width.%]=\"downloadProgress\"></div>\n </div>\n </div>\n <div class=\"modal-footer\"> \n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\" (click)=\"cancel()\">Skip update</button>\n <button type=\"button\" class=\"btn btn-primary\" [hidden]=\"downloading\" (click)=\"installLatestVersion()\">Update</button>\n </div>\n </div>\n</div>","<div class=\"app-file-browser\" *ngIf=\"isVisible && currentFolder\">\n <div class=\"modal-backdrop fade\" [class.in]=\"isVisible\"></div>\n <div class=\"modal fade\" style=\"display: block;\" [class.in]=\"isVisible\" >\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header clearfix\">\n <h4 class=\"modal-title pull-left\">\n <span (click)=\"onFileClick(currentFolder.parent)\" [hidden]=\"!!!currentFolder.parent\">\n <i class=\"wi wi-long-arrow-left\"></i>\n </span>\n {{currentFolder.name}}\n </h4>\n <div class=\"selected-file-button pull-right\" (click)=\"refreshFolder()\">\n <i class=\"wi wi-refresh\"></i>\n </div>\n </div>\n <div class=\"modal-body\">\n <div class=\"file-info-box\" *ngFor=\"let file of currentFolder.files\">\n <div class=\"file-info\" [class.bg-primary]=\"file.isSelected\" (click)=\"onFileClick(file)\">\n <i class=\"file-icon wi wi-folder\" *ngIf=\"!file.isFile\"></i>\n <i class=\"file-icon wi wi-file {{getFileExtension(file.name)}}\" *ngIf=\"file.isFile\"></i>\n <span class=\"file-name\">{{file.name}}</span>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"selectedFiles && selectedFiles.length > 0\" (click)=\"submit()\">\n Done <span class=\"badge badge-light\">{{selectedFiles.length}}</span>\n </button>\n <button type=\"button\" class=\"btn btn-default\" (click)=\"show = false;\">Close</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\n\nimport { $appDigest, isIos } from '@wm/core';\nimport { DeviceService } from '@wm/mobile/core';\n\ndeclare const _;\ndeclare const cordova;\ndeclare const resolveLocalFileSystemURL;\n\nexport interface File {\n name: string;\n size: number;\n isSelected: boolean;\n file: (success: (navtiveFileObject: any) => void, failure: (message: any) => any) => void;\n}\n\nexport interface Folder {\n name: string;\n files: File[];\n folders: Folder[];\n parent: Folder;\n}\n\n@Component({\n selector: '[wmMobileFileBrowser]',\n templateUrl: './file-browser.component.html'\n})\nexport class FileBrowserComponent implements OnDestroy {\n\n public currentFolder: Folder;\n @Input() public fileTypeToSelect: string;\n @Input() public multiple: boolean;\n public selectedFiles: File[] = [];\n @Output('submit') submitEmitter = new EventEmitter();\n public isVisible: boolean;\n\n private backButtonListenerDeregister: any;\n\n constructor(private deviceService: DeviceService) {}\n\n\n public getFileExtension(fileName: string): string {\n const extIndex = fileName ? fileName.lastIndexOf('.') : -1;\n if (extIndex > 0) {\n return fileName.substring(extIndex + 1);\n }\n return '';\n }\n\n public ngOnDestroy() {\n if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public onFileClick(file): void {\n if (file.isFile) {\n if (file.isSelected) {\n this.deselectFile(file);\n } else {\n this.selectFile(file);\n }\n } else {\n this.goToFolder(file);\n }\n }\n\n public set show(flag: boolean) {\n let rootDir = cordova.file.externalRootDirectory;\n this.isVisible = flag;\n if (flag) {\n if (!this.currentFolder) {\n if (isIos()) {\n rootDir = cordova.file.documentsDirectory;\n }\n resolveLocalFileSystemURL(rootDir, root => this.goToFolder(root));\n }\n this.backButtonListenerDeregister = this.deviceService.onBackButtonTap(() => {\n if (this.isVisible) {\n if (this.currentFolder.parent) {\n this.onFileClick(this.currentFolder.parent);\n } else {\n this.isVisible = false;\n }\n $appDigest();\n return false;\n }\n });\n } else if (this.backButtonListenerDeregister) {\n this.backButtonListenerDeregister();\n }\n }\n\n public submit() {\n const files = [];\n this.loadFileSize(this.selectedFiles).then(() => {\n _.forEach(this.selectedFiles, function (f) {\n f.isSelected = false;\n files.push({ path: f.nativeURL,\n name: f.name,\n size : f.size});\n });\n this.selectedFiles = [];\n this.isVisible = false;\n this.submitEmitter.next({files: files});\n });\n }\n\n private deselectFile(file: File): void {\n _.remove(this.selectedFiles, file);\n file.isSelected = false;\n }\n\n private goToFolder(folder: Folder): void {\n if (!folder.files) {\n this.loadFolder(folder, this.fileTypeToSelect)\n .then(files => {\n folder.files = files;\n folder.parent = this.currentFolder;\n this.currentFolder = folder;\n });\n } else {\n this.currentFolder = folder;\n }\n }\n\n private loadFileSize(files: File[]): Promise<void[]> {\n return Promise.all(files.map(f => {\n return new Promise<void>((resolve, reject) => {\n f.file(o => {\n f.size = o.size;\n resolve();\n }, reject);\n });\n }));\n }\n\n private loadFolder(folder: any, fileTypeToSelect: string): Promise<File[]> {\n return new Promise((resolve, reject) => {\n let fileTypeToShow;\n folder.createReader().readEntries((entries: File[]) => {\n if (!_.isEmpty(fileTypeToSelect)) {\n fileTypeToShow = _.split(fileTypeToSelect, ',');\n entries = _.filter(entries, e => {\n return !e.isFile || _.findIndex(fileTypeToShow, ext => _.endsWith(e.name, '.' + ext)) >= 0;\n });\n }\n resolve(_.sortBy(entries, e => (e.isFile ? '1_' : '0_') + e.name.toLowerCase()));\n }, reject);\n });\n }\n\n\n private refreshFolder(): Promise<any> {\n return this.loadFolder(this.currentFolder, this.fileTypeToSelect)\n .then(files => this.currentFolder.files = files);\n }\n\n private selectFile(file): void {\n if (!this.multiple && this.selectedFiles.length > 0) {\n this.selectedFiles[0].isSelected = false;\n this.selectedFiles = [];\n }\n this.selectedFiles.push(file);\n file.isSelected = true;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { convertToBlob, AbstractSpinnerService } from '@wm/core';\nimport { FileBrowserComponent } from './file-browser.component';\n\ndeclare const _;\ndeclare const window, cordova;\n\nexport interface FileContent {\n name: string;\n path: string;\n blob: any;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class FileSelectorService {\n static readonly SERVICE_NAME = 'FileSelectorService';\n\n private fileBrowserComponent: FileBrowserComponent;\n\n public constructor(private spinnerService: AbstractSpinnerService) {}\n\n public selectAudio(multiple = false): Promise<any> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectAudio(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public setFileBrowser(f: FileBrowserComponent) {\n this.fileBrowserComponent = f;\n }\n\n public selectFiles(multiple = false, fileTypeToSelect?: string): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectFiles(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectImages(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectImage(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n }\n\n public selectVideos(multiple = false): Promise<FileContent[]> {\n var spinnerId = this.spinnerService.show(\"\");\n return new Promise<string[]>((resolve, reject) => {\n cordova.wavemaker.filePicker.selectVideo(multiple, resolve, reject);\n }).then(files => this.getFiles(files))\n .then((paths) => {\n this.spinnerService.hide(spinnerId);\n return paths;\n });\n\n }\n\n /**\n * Converts the file to blob using filepath\n * @param filePaths, array of file paths\n * @returns fileObj having name, path, content\n */\n private getFiles(filePaths: string[]): Promise<FileContent[]> {\n return Promise.all(_.map(filePaths, filePath => {\n if (filePath.indexOf('://') < 0) {\n filePath = 'file://' + filePath;\n }\n return convertToBlob(filePath)\n })).then(filesList => {\n return _.map(filesList, fileObj => {\n const path = fileObj.filepath;\n return {\n name: path.split('/').pop(),\n path: path,\n content: fileObj.blob,\n size: fileObj.blob.size\n };\n });\n });\n }\n}\n","import { Directive, DoCheck, Inject, Input, Self } from '@angular/core';\n\nimport { File } from '@awesome-cordova-plugins/file/ngx';\n\nimport { WidgetRef } from '@wm/components/base';\nimport { hasCordova, noop, transformFileURI } from '@wm/core';\nimport { DeviceFileCacheService } from '@wm/mobile/core';\n\ndeclare const _;\nconst DEFAULT_IMAGE = 'resources/images/imagelists/default-image.png';\n\n@Directive({\n selector: '[wmImageCache]'\n})\nexport class ImageCacheDirective implements DoCheck {\n\n private _cacheUrl;\n private _isEnabled = false;\n private _lastUrl = '';\n\n constructor(\n @Self() @Inject(WidgetRef) private componentInstance,\n private deviceFileCacheService: DeviceFileCacheService,\n private file: File\n\n ) {}\n\n public ngDoCheck() {\n if (_.isString(this.componentInstance.imgSource)\n && this.componentInstance.imgSource.startsWith('http')) {\n if (this._lastUrl !== this.componentInstance.imgSource) {\n this._lastUrl = this.componentInstance.imgSource;\n this.componentInstance.imgSource = DEFAULT_IMAGE;\n this.getLocalPath(this._lastUrl).then((localPath) => {\n this._cacheUrl = transformFileURI(localPath);\n this.componentInstance.imgSource = this._cacheUrl;\n });\n } else if (this._cacheUrl) {\n this.componentInstance.imgSource = this._cacheUrl;\n }\n }\n }\n\n @Input()\n set wmImageCache(val: string) {\n this._isEnabled = (hasCordova() && val === 'true');\n }\n\n private getLocalPath(val: string) {\n if (hasCordova() && val && val.indexOf('{{') < 0 && val.startsWith('http')) {\n return this.deviceFileCacheService.getLocalPath(val, true, true, !this._isEnabled)\n .catch(() => val);\n }\n return Promise.resolve(val);\n }\n}\n","import { register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-network-info-toaster',\n new Map(\n []\n )\n );\n};\n","<div class=\"network-info-toaster-content\" [ngSwitch]=\"networkState\" *ngIf=\"showMessage\">\n <div class=\"info\" *ngSwitchCase=\"-3\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_NETWORK_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-2\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_NOT_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"-1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_AVAILABLE\"></label>\n <button class=\"btn btn-default hide-btn\" (click)=\"hideMessage()\" [textContent]=\"appLocale.LABEL_HIDE_NETWORK_INFO\"></button>\n <button class=\"btn btn-primary connect-btn\" (click)=\"connect()\" [textContent]=\"appLocale.LABEL_CONNECT_TO_SERVICE\"></button>\n </div>\n <div class=\"info\" *ngSwitchCase=\"0\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTING\"></label>\n </div>\n <div class=\"info\" *ngSwitchCase=\"1\">\n <label class=\"message\" [textContent]=\"appLocale.MESSAGE_SERVICE_CONNECTED\"></label>\n </div>\n</div>","import {Component, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './network-info-toaster.props';\nimport {$appDigest, App} from '@wm/core';\nimport { NetworkService } from '@wm/mobile/core';\n\nconst DEFAULT_CLS = 'network-info-toaster';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-network-info-toaster', hostClass: DEFAULT_CLS};\n\nexport enum NetworkState {\n CONNECTED = 1,\n CONNECTING = 0,\n SERVICE_AVAILABLE_BUT_NOT_CONNECTED = -1,\n NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE = -2,\n NETWORK_NOT_AVAIABLE = -3\n}\n\n\n@Component({\n selector: '[wmNetworkInfoToaster]',\n templateUrl: './network-info-toaster.component.html',\n providers: [\n provideAsWidgetRef(NetworkInfoToasterComponent)\n ]\n})\nexport class NetworkInfoToasterComponent extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n public showMessage = false;\n public isServiceConnected = false;\n public isServiceAvailable = false;\n public networkState: NetworkState;\n\n private _listenerDestroyer;\n\n constructor(private networkService: NetworkService, app: App, inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.$element, this);\n this.isServiceAvailable = <boolean> this.networkService.isAvailable();\n this.isServiceConnected = this.networkService.isConnected();\n this._listenerDestroyer = app.subscribe('onNetworkStateChange', (data) => {\n this.renderMessage(data);\n });\n this.renderMessage();\n }\n\n private renderMessage(data?) {\n data = data || this.networkService.getState();\n const oldState = this.networkState;\n let autoHide = false;\n if (data.noServiceRequired) {\n return false;\n }\n if (data.isConnected) {\n this.networkState = NetworkState.CONNECTED;\n autoHide = true;\n } else if (data.isConnecting) {\n this.networkState = NetworkState.CONNECTING;\n } else if (data.isServiceAvailable) {\n this.networkState = NetworkState.SERVICE_AVAILABLE_BUT_NOT_CONNECTED;\n } else if (data.isNetworkAvailable && !data.isServiceAvailable) {\n this.networkState = NetworkState.NETWORK_AVAIABLE_BUT_SERVICE_NOT_AVAILABLE;\n } else {\n this.networkState = NetworkState.NETWORK_NOT_AVAIABLE;\n }\n this.showMessage = (!(oldState === undefined && data.isConnected) && oldState !== this.networkState);\n if (autoHide && this.showMessage) {\n setTimeout(() => {\n this.showMessage = false;\n $appDigest();\n }, 5000);\n }\n }\n\n public connect() {\n this.networkService.connect();\n }\n\n public hideMessage() {\n this.showMessage = false;\n }\n\n public ngOnDestroy() {\n this._listenerDestroyer();\n super.ngOnDestroy();\n }\n}\n","<ng-container *ngIf=\"instances.length > 0\">\n <div class=\"modal-dialog app-dialog\">\n <div class=\"modal-content\">\n <ul class=\"instance-list list-unstyled\">\n <li *ngFor=\"let instance of getVisibleInstances(instances); index as i\" class=\"instance-list-item\">\n <div class=\"row\">\n <div class=\"col-xs-8\">\n <label class=\"app-global-progress-bar-name h6\">{{instance.name}}</label>\n </div>\n <div class=\"col-xs-4 app-global-progress-bar-progress-label-col\">\n <label class=\"app-global-progress-bar-progress-label h6\">\n {{instance.progressLabel}}</label>\n </div>\n </div>\n <ng-template [ngTemplateOutlet]=\"progressTemplate\" [ngTemplateOutletContext]=\"{instance: instance}\"></ng-template>\n <button class=\"btn btn-secondary pull-right stop-btn\" *ngIf=\"instance.onStop\" (click)=\"instance.onStop();\">\n {{instance.stopButtonLabel}}\n </button>\n <div style=\"clear: both;\"></div>\n </li>\n <li class=\"instance-list-item\" *ngIf=\"queue.length > 0\">\n <label class=\"global-progress-bar-ui-primary-label h6\">\n ({{queue.length}}) queued\n </label>\n </li>\n </ul>\n </div>\n </div>\n</ng-container>\n<ng-template #progressTemplate let-instance=\"instance\">\n <div wmProgressBar minvalue.bind=\"instance.min\" maxvalue.bind=\"instance.max\" datavalue.bind=\"instance.value\"></div>\n</ng-template>","import { Component, DoCheck, ElementRef } from '@angular/core';\n\nimport { addClass, removeAttr, setAttr } from '@wm/core';\nimport { provideAsWidgetRef } from '@wm/components/base';\n\ndeclare const _;\n\nexport interface Process {\n max: number;\n min: number;\n name: string;\n onStop: () => void;\n progressLabel: string;\n show: boolean;\n stopButtonLabel: string;\n value: number;\n}\n\nexport interface ProcessApi {\n destroy: () => Promise<void>;\n get: (propertyName: string) => string;\n set: (propertyName: string, propertyValue: any) => void;\n}\n\nconst MAX_PROCESS = 3;\n\n@Component({\n selector: '[wmProcessManager]',\n templateUrl: './process-manager.component.html',\n providers: [\n provideAsWidgetRef(ProcessManagerComponent)\n ]\n})\nexport class ProcessManagerComponent implements DoCheck {\n\n private isVisible = true;\n\n public instances: Process[] = [];\n public queue = [];\n\n constructor(private el: ElementRef) {\n addClass(this.el.nativeElement, 'app-global-progress-bar modal default');\n }\n\n public createInstance(name: string, min = 0, max = 100): Promise<ProcessApi> {\n const instance: Process = {\n max: max,\n min: min,\n name: name,\n onStop: null,\n progressLabel: '',\n show: min !== max,\n stopButtonLabel : 'Cancel',\n value: 0\n };\n const api = {\n get: (propertyName) => instance[propertyName],\n set: (propertyName, propertyValue) => this.setInstaceProperty(instance, propertyName, propertyValue),\n destroy: () => this.removeInstance(instance)\n };\n return this.addToQueue(instance).then(() => api);\n }\n\n public getVisibleInstances() {\n return this.instances.filter(i => i.show);\n }\n\n public ngDoCheck() {\n const hasInstancesToShow = !!this.instances.find(i => i.show);\n if (this.isVisible && !hasInstancesToShow) {\n setAttr(this.el.nativeElement, 'hidden', 'true');\n this.isVisible = false;\n } else if (!this.isVisible && hasInstancesToShow) {\n removeAttr(this.el.nativeElement, 'hidden');\n this.isVisible = true;\n }\n }\n\n private addToQueue(instance): Promise<void> {\n return new Promise( resolve => {\n this.queue.push(() => {\n if (this.instances.length < MAX_PROCESS) {\n this.instances.push(instance);\n resolve(instance);\n } else {\n return false;\n }\n });\n this.flushQueue();\n });\n }\n\n private flushQueue() {\n if (this.queue.length > 0 && this.queue[0]() !== false) {\n this.queue.shift();\n this.flushQueue();\n }\n }\n\n private removeInstance(instance: Process): Promise<void> {\n return new Promise( resolve => {\n setTimeout(() => {\n _.remove(this.instances, instance);\n this.flushQueue();\n resolve();\n }, 1000);\n });\n }\n\n private setInstaceProperty(instance: Process, propertyName: string, propertyValue: any) {\n if (propertyName === 'value') {\n if (instance.value >= instance.max) {\n propertyValue = instance.max;\n }\n instance.value = propertyValue;\n instance.progressLabel = instance.value + '/' + instance.max;\n } else if (propertyName === 'onStop' && _.isFunction(propertyValue)) {\n instance.onStop = () => {\n propertyValue();\n return this.removeInstance(instance);\n };\n } else {\n instance[propertyName] = propertyValue;\n }\n instance.show = instance.min !== instance.max;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ProcessManagerComponent, ProcessApi } from './process-manager.component';\n\n@Injectable({ providedIn: 'root' })\nexport class ProcessManagementService {\n static readonly SERVICE_NAME = 'ProcessManagementService';\n\n private processManagerComponent: ProcessManagerComponent;\n\n setUIComponent(processManagerComponent: ProcessManagerComponent) {\n this.processManagerComponent = processManagerComponent;\n }\n\n /**\n * Returns a promise that will be resolved when an instance is available. At max, 3 instances can only run\n * in parallel and rest has to wait till a process is completed.\n *\n * A progress instance has the following properties.\n *\n * 1) min {number} minimum value, default value is 0 </br>\n * 2) max {number} maximum value, default value is 100 </br>\n * 3) value {number} progress value </br>\n * 4) progressLabel {string} process name </br>\n * 5) stopButtonLabel {string} label for stop button, default value is 'Cancel' </br>\n * 6) onStop {function} function to invoke when stop button is clicked. </br>\n *\n * A progress instance has 3 methods </br>\n * 1) set(property, value) -- sets value to the corresponding property </br>\n * 2) get(property) -- returns property value </br>\n * 3) destroy() -- closes the instance. </br>\n *\n * A progress instance will get auto closed when value and max are equal or when destroy method is called.\n *\n * @param {string} name name of the process whose progress is going to be shown\n * @param {number} min minimum value\n * @param {number} max maximum value\n *\n * @returns {object} a promise\n */\n public createInstance(name: string, min?: number, max?: number): Promise<ProcessApi> {\n if (!this.processManagerComponent) {\n return Promise.reject('ProcessManagerComponent is missing');\n }\n return this.processManagerComponent.createInstance(name, min, max);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { ProgressModule } from '@wm/components/basic/progress';\n\nimport { AnchorDirective } from './anchor/anchor.directive';\nimport { AppUpdateComponent } from './app-update/app-update.component';\nimport { FileBrowserComponent } from './file-browser/file-browser.component';\nimport { ImageCacheDirective } from './image-cache/image-cache.directive';\nimport { NetworkInfoToasterComponent } from './network-info-toaster/network-info-toaster.component';\nimport { ProcessManagerComponent } from './process-manager/process-manager.component';\n\nconst components = [\n AnchorDirective,\n AppUpdateComponent,\n FileBrowserComponent,\n ImageCacheDirective,\n NetworkInfoToasterComponent,\n ProcessManagerComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n ProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS","_c0","i1","i2"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-ng-runtime",
3
- "version": "11.6.0-next.24748",
3
+ "version": "11.6.0-next.24749",
4
4
  "description": "All modules required for a wavemaker application.",
5
5
  "main": "index.js",
6
6
  "scripts": {