@wavemaker/app-ng-runtime 11.5.0-next.40002 → 11.5.0-next.40301

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. app-ng-runtime/components/basic/search/bundles/index.umd.js +7 -0
  2. app-ng-runtime/components/basic/search/bundles/index.umd.js.map +1 -1
  3. app-ng-runtime/components/basic/search/esm2015/search.component.js +7 -1
  4. app-ng-runtime/components/basic/search/fesm2015/index.js +6 -0
  5. app-ng-runtime/components/basic/search/fesm2015/index.js.map +1 -1
  6. app-ng-runtime/components/basic/tree/bundles/index.umd.js +236 -132
  7. app-ng-runtime/components/basic/tree/bundles/index.umd.js.map +1 -1
  8. app-ng-runtime/components/basic/tree/esm2015/tree.component.js +208 -135
  9. app-ng-runtime/components/basic/tree/fesm2015/index.js +207 -134
  10. app-ng-runtime/components/basic/tree/fesm2015/index.js.map +1 -1
  11. app-ng-runtime/components/basic/tree/index.metadata.json +1 -1
  12. app-ng-runtime/components/basic/tree/tree.component.d.ts +21 -25
  13. app-ng-runtime/components/chart/bundles/index.umd.js +1 -7
  14. app-ng-runtime/components/chart/bundles/index.umd.js.map +1 -1
  15. app-ng-runtime/components/chart/esm2015/chart.component.js +2 -8
  16. app-ng-runtime/components/chart/fesm2015/index.js +1 -7
  17. app-ng-runtime/components/chart/fesm2015/index.js.map +1 -1
  18. app-ng-runtime/components/chart/index.metadata.json +1 -1
  19. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +0 -6
  20. app-ng-runtime/components/containers/tabs/bundles/index.umd.js.map +1 -1
  21. app-ng-runtime/components/containers/tabs/esm2015/tab-pane/tab-pane.component.js +1 -7
  22. app-ng-runtime/components/containers/tabs/fesm2015/index.js +0 -6
  23. app-ng-runtime/components/containers/tabs/fesm2015/index.js.map +1 -1
  24. app-ng-runtime/components/containers/tabs/index.metadata.json +1 -1
  25. app-ng-runtime/components/containers/tabs/tab-pane/tab-pane.component.d.ts +0 -2
  26. app-ng-runtime/components/data/form/bundles/index.umd.js +3 -9
  27. app-ng-runtime/components/data/form/bundles/index.umd.js.map +1 -1
  28. app-ng-runtime/components/data/form/esm2015/form.component.js +5 -11
  29. app-ng-runtime/components/data/form/fesm2015/index.js +4 -10
  30. app-ng-runtime/components/data/form/fesm2015/index.js.map +1 -1
  31. app-ng-runtime/components/data/form/index.metadata.json +1 -1
  32. app-ng-runtime/components/input/calendar/bundles/index.umd.js +1 -11
  33. app-ng-runtime/components/input/calendar/bundles/index.umd.js.map +1 -1
  34. app-ng-runtime/components/input/calendar/calendar.component.d.ts +2 -4
  35. app-ng-runtime/components/input/calendar/esm2015/calendar.component.js +2 -12
  36. app-ng-runtime/components/input/calendar/fesm2015/index.js +1 -11
  37. app-ng-runtime/components/input/calendar/fesm2015/index.js.map +1 -1
  38. app-ng-runtime/components/input/calendar/index.metadata.json +1 -1
  39. app-ng-runtime/components/input/default/bundles/index.umd.js +3 -9
  40. app-ng-runtime/components/input/default/bundles/index.umd.js.map +1 -1
  41. app-ng-runtime/components/input/default/dataset-aware-form.component.d.ts +2 -4
  42. app-ng-runtime/components/input/default/esm2015/base-form-custom.component.js +4 -2
  43. app-ng-runtime/components/input/default/esm2015/dataset-aware-form.component.js +1 -9
  44. app-ng-runtime/components/input/default/fesm2015/index.js +3 -9
  45. app-ng-runtime/components/input/default/fesm2015/index.js.map +1 -1
  46. app-ng-runtime/components/input/default/index.metadata.json +1 -1
  47. app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +0 -1
  48. app-ng-runtime/components/input/epoch/bundles/index.umd.js +24 -25
  49. app-ng-runtime/components/input/epoch/bundles/index.umd.js.map +1 -1
  50. app-ng-runtime/components/input/epoch/esm2015/base-date-time.component.js +19 -17
  51. app-ng-runtime/components/input/epoch/esm2015/date/date.component.js +3 -5
  52. app-ng-runtime/components/input/epoch/esm2015/date-time/date-time-picker.component.js +10 -10
  53. app-ng-runtime/components/input/epoch/esm2015/date-time/date-time.component.js +2 -2
  54. app-ng-runtime/components/input/epoch/esm2015/time/time.component.js +2 -2
  55. app-ng-runtime/components/input/epoch/fesm2015/index.js +31 -31
  56. app-ng-runtime/components/input/epoch/fesm2015/index.js.map +1 -1
  57. app-ng-runtime/components/input/epoch/index.metadata.json +1 -1
  58. app-ng-runtime/core/bundles/index.umd.js +8 -12
  59. app-ng-runtime/core/bundles/index.umd.js.map +1 -1
  60. app-ng-runtime/core/esm2015/services/state-persistence.service.js +2 -4
  61. app-ng-runtime/core/esm2015/services/viewport.service.js +7 -9
  62. app-ng-runtime/core/esm2015/utils/utils.js +2 -2
  63. app-ng-runtime/core/fesm2015/index.js +8 -12
  64. app-ng-runtime/core/fesm2015/index.js.map +1 -1
  65. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js +1 -1
  66. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js.map +1 -1
  67. app-ng-runtime/mobile/components/basic/default/esm2015/image-cache/image-cache.directive.js +2 -2
  68. app-ng-runtime/mobile/components/basic/default/fesm2015/index.js +1 -1
  69. app-ng-runtime/mobile/components/basic/default/fesm2015/index.js.map +1 -1
  70. app-ng-runtime/mobile/components/basic/default/index.metadata.json +1 -1
  71. app-ng-runtime/package.json +1 -1
  72. app-ng-runtime/runtime/base/bundles/index.umd.js +2 -35
  73. app-ng-runtime/runtime/base/bundles/index.umd.js.map +1 -1
  74. app-ng-runtime/runtime/base/esm2015/services/i18n.service.js +3 -35
  75. app-ng-runtime/runtime/base/fesm2015/index.js +2 -34
  76. app-ng-runtime/runtime/base/fesm2015/index.js.map +1 -1
  77. app-ng-runtime/runtime/base/index.metadata.json +1 -1
  78. app-ng-runtime/runtime/base/services/i18n.service.d.ts +0 -2
@@ -403,7 +403,7 @@
403
403
  }
404
404
  ImageCacheDirective.prototype.ngDoCheck = function () {
405
405
  var _this = this;
406
- if (_.isString(this.componentInstance.imgSource)
406
+ if (this.componentInstance.imgSource
407
407
  && this.componentInstance.imgSource.startsWith('http')) {
408
408
  if (this._lastUrl !== this.componentInstance.imgSource) {
409
409
  this._lastUrl = this.componentInstance.imgSource;
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","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/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","../../../../../../node_modules/tslib/tslib.es6.js","../../../../../../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.ts","../../../../../../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","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","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\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","import { Component, Injector, OnDestroy } 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","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 entryComponents: []\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './network-info-toaster/network-info-toaster.props';"],"names":["Directive","Inject","WidgetRef","HostListener","DEFAULT_CLS","addClass","setCSS","hasCordova","noop","removeClass","Component","DeviceService","DeviceFileDownloadService","ElementRef","File","FileOpener","HttpClient","EventEmitter","isIos","$appDigest","Input","Output","convertToBlob","Injectable","AbstractSpinnerService","transformFileURI","Self","DeviceFileCacheService","register","NetworkState","styler","StylableComponent","provideAsWidgetRef","NetworkService","App","Injector","setAttr","removeAttr","NgModule","CommonModule","ProgressModule","WmComponentsModule"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","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/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","../../../../../../node_modules/tslib/tslib.es6.js","../../../../../../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.ts","../../../../../../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","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\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 (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","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\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","import { Component, Injector, OnDestroy } 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","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 entryComponents: []\n})\nexport class BasicModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './network-info-toaster/network-info-toaster.props';"],"names":["Directive","Inject","WidgetRef","HostListener","DEFAULT_CLS","addClass","setCSS","hasCordova","noop","removeClass","Component","DeviceService","DeviceFileDownloadService","ElementRef","File","FileOpener","HttpClient","EventEmitter","isIos","$appDigest","Input","Output","convertToBlob","Injectable","AbstractSpinnerService","transformFileURI","Self","DeviceFileCacheService","register","NetworkState","styler","StylableComponent","provideAsWidgetRef","NetworkService","App","Injector","setAttr","removeAttr","NgModule","CommonModule","ProgressModule","WmComponentsModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;QAYI,yBAAuC,MAAW;YAAX,WAAM,GAAN,MAAM,CAAK;SAAK;QAGvD,iCAAO,GAAP;YACI,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACjC,IAAI,IAAI,EAAE;gBACN,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE;oBAC9F,OAAO;iBACV;qBAAM,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;oBAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;oBAChF,OAAO;iBACV;qBAAM,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;oBACjC,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC;iBAC1B;gBACD,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE;oBACnB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;iBACzC;aACJ;SACJ;;;;gBAvBJA,YAAS,SAAC;oBACP,QAAQ,EAAE,YAAY;iBACzB;;;gDAGgBC,SAAM,SAACC,cAAS;;;0BAE5BC,eAAY,SAAC,OAAO;;;ICHzB,IAAMC,aAAW,GAAG,wCAAwC,CAAC;IAE7D,IAAM,oBAAoB,GAAG,qBAAqB,CAAC;;QAc/C,4BACY,aAA4B,EAC5B,mBAA8C,EAC9C,KAAiB,EACjB,IAAU,EACV,UAAsB,EACtB,IAAgB;YAN5B,iBAoBC;YAnBW,kBAAa,GAAb,aAAa,CAAe;YAC5B,wBAAmB,GAAnB,mBAAmB,CAA2B;YAC9C,UAAK,GAAL,KAAK,CAAY;YACjB,SAAI,GAAJ,IAAI,CAAM;YACV,eAAU,GAAV,UAAU,CAAY;YACtB,SAAI,GAAJ,IAAI,CAAY;YAZrB,qBAAgB,GAAG,CAAC,CAAC;YACrB,gBAAW,GAAG,KAAK,CAAC;YACpB,YAAO,GAAG,iEAAiE,CAAC;YAa/EC,WAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAED,aAAW,CAAC,CAAC;YAChDE,SAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACrD,IAAIC,aAAU,EAAE,EAAE;gBACd,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,UAAA,SAAS;oBAC9B,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,kBAAkB,EAAE;wBACzD,KAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,oBAAoB,CAAC,CAAC,KAAK,CAACC,OAAI,CAAC,CAAC;wBACzG,KAAI,CAAC,cAAc,EAAE;6BAChB,IAAI,CAAC,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAI,CAAC,EAAEA,OAAI,CAAC,CAAC;qBACxD;iBACJ,CAAC,CAAC;aACN;SACJ;QAEM,mCAAM,GAAN;YACHH,WAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;SAChD;QAEM,iDAAoB,GAApB;YAAA,iBAgBN;YAfG,IAAM,OAAO,GAAI,OAAO,CAAC,IAAI,CAAC,mCAAmC,GAAG,oBAAoB,EACpF,YAAY,GAAM,IAAI,CAAC,UAAU,CAAC,IAAI,2DAAsD,IAAI,CAAC,UAAU,CAAC,KAAK,qBAAgB,IAAI,CAAC,UAAU,CAAC,iBAAiB,kBAAa,oBAAoB,wBAAmB,IAAI,CAAC,UAAU,CAAC,eAAiB,EACvP,gBAAgB,GAAG,EAAE,IAAI,EAAE,UAAA,CAAC,IAAM,KAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;YAC1H,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAC7B,YAAY,EACZ,KAAK,EACL,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAChD,oBAAoB,EACpB,gBAAgB,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,yCAAyC,CAAC,CAAC;aAC5E,EAAE;gBACC,IAAI,CAAC,OAAO,GAAG,oCAAoC,CAAC;aACvD,CAAC,CAAC;YACP,IAAI,CAAC,OAAO,GAAG,qCAAmC,IAAI,CAAC,UAAU,CAAC,aAAa,OAAI,CAAC;YACpF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;SAC3B;QAEO,2CAAc,GAAd;YAAA,iBAgBP;YAfG,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gBAC/B,KAAI,CAAC,IAAI,CAAC,GAAG,CAAI,KAAI,CAAC,UAAU,CAAC,IAAI,uDAAkD,KAAI,CAAC,UAAU,CAAC,KAAK,wBAAmB,KAAI,CAAC,UAAU,CAAC,eAAiB,CAAC;qBAC5J,SAAS,EAAE;qBACX,IAAI,CAAC,UAAC,QAAa;oBAChB,IAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EACvD,aAAa,GAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;oBACnD,IAAI,KAAI,CAAC,UAAU,CAAC,WAAW,GAAG,iBAAiB,EAAE;wBACjD,KAAI,CAAC,UAAU,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;wBACtD,KAAI,CAAC,UAAU,CAAC,aAAa,GAAG,aAAa,CAAC;wBAC9C,OAAO,CAAC,iBAAiB,CAAC,CAAC;qBAC9B;yBAAM;wBACH,MAAM,EAAE,CAAC;qBACZ;iBACJ,EAAE,MAAM,CAAC,CAAC;aAClB,CAAC,CAAC;SACN;QAEO,yCAAY,GAAZ;YAAA,iBASP;YARG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,GAAG,MAAM,EAAE,iBAAiB,CAAC;qBACrF,IAAI,CAAC,UAAA,IAAI;oBACN,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnC,OAAO,KAAI,CAAC,UAAU,CAAC;iBAC1B,EAAEG,OAAI,CAAC,CAAC;aAChB;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3C;QAEO,gDAAmB,GAAnB;YACJ,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,OAAO,GAAG,iEAAiE,CAAC;YACjFC,cAAW,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;SACnD;;;;gBA1FJC,YAAS,SAAC;oBACP,QAAQ,EAAE,eAAe;oBACzB,yrBAA0C;iBAC7C;;;gBAXmCC,kBAAa;gBAAxCC,8BAAyB;gBANdC,aAAU;gBAErBC,QAAI;gBACJC,gBAAU;gBAJVC,eAAU;;;;QCsCf,8BAAoB,aAA4B;YAA5B,kBAAa,GAAb,aAAa,CAAe;YANzC,kBAAa,GAAW,EAAE,CAAC;YAChB,kBAAa,GAAG,IAAIC,eAAY,EAAE,CAAC;SAKD;QAG7C,+CAAgB,GAAhB,UAAiB,QAAgB;YACpC,IAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,IAAI,QAAQ,GAAG,CAAC,EAAE;gBACd,OAAO,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;aAC3C;YACD,OAAO,EAAE,CAAC;SACb;QAEM,0CAAW,GAAX;YACH,IAAI,IAAI,CAAC,4BAA4B,EAAE;gBACnC,IAAI,CAAC,4BAA4B,EAAE,CAAC;aACvC;SACJ;QAEM,0CAAW,GAAX,UAAY,IAAI;YACnB,IAAI,IAAI,CAAC,MAAM,EAAE;gBACb,IAAI,IAAI,CAAC,UAAU,EAAE;oBACjB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;iBAC3B;qBAAM;oBACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;iBACzB;aACJ;iBAAM;gBACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aACzB;SACJ;QAED,sBAAW,sCAAI;iBAAf,UAAgB,IAAa;gBAA7B,iBAwBC;gBAvBG,IAAI,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC;gBACjD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,IAAI,IAAI,EAAE;oBACN,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;wBACrB,IAAIC,QAAK,EAAE,EAAE;4BACT,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;yBAC7C;wBACD,yBAAyB,CAAC,OAAO,EAAE,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAA,CAAC,CAAC;qBACrE;oBACD,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;wBACnE,IAAI,KAAI,CAAC,SAAS,EAAE;4BAChB,IAAI,KAAI,CAAC,aAAa,CAAC,MAAM,EAAE;gCAC3B,KAAI,CAAC,WAAW,CAAC,KAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;6BAC/C;iCAAM;gCACH,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;6BAC1B;4BACDC,aAAU,EAAE,CAAC;4BACb,OAAO,KAAK,CAAC;yBAChB;qBACJ,CAAC,CAAC;iBACN;qBAAM,IAAI,IAAI,CAAC,4BAA4B,EAAE;oBAC1C,IAAI,CAAC,4BAA4B,EAAE,CAAC;iBACvC;aACJ;;;WAAA;QAEM,qCAAM,GAAN;YAAA,iBAaN;YAZG,IAAM,KAAK,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC;gBACvC,CAAC,CAAC,OAAO,CAAC,KAAI,CAAC,aAAa,EAAE,UAAU,CAAC;oBACrC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS;wBAC1B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,IAAI,EAAG,CAAC,CAAC,IAAI,EAAC,CAAC,CAAC;iBACvB,CAAC,CAAC;gBACH,KAAI,CAAC,aAAa,GAAG,EAAE,CAAC;gBACxB,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;aAC3C,CAAC,CAAC;SACN;QAEO,2CAAY,GAAZ,UAAa,IAAU;YAC3B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;SAC3B;QAEO,yCAAU,GAAV,UAAW,MAAc;YAAzB,iBAWP;YAVG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;gBACf,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC;qBACzC,IAAI,CAAC,UAAA,KAAK;oBACP,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;oBACrB,MAAM,CAAC,MAAM,GAAG,KAAI,CAAC,aAAa,CAAC;oBACnC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC;iBAC/B,CAAC,CAAC;aACV;iBAAM;gBACH,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;aAC/B;SACJ;QAEO,2CAAY,GAAZ,UAAa,KAAa;YAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,CAAC;gBAC1B,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM;oBACrC,CAAC,CAAC,IAAI,CAAC,UAAA,CAAC;wBACJ,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;wBAChB,OAAO,EAAE,CAAC;qBACb,EAAE,MAAM,CAAC,CAAC;iBACd,CAAC,CAAC;aACN,CAAC,CAAC,CAAC;SACP;QAEO,yCAAU,GAAV,UAAW,MAAW,EAAE,gBAAwB;YACpD,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gBAC/B,IAAI,cAAc,CAAC;gBACnB,MAAM,CAAC,YAAY,EAAE,CAAC,WAAW,CAAC,UAAC,OAAgB;oBAC/C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;wBAC9B,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;wBAChD,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,UAAA,CAAC;4BACzB,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,UAAA,GAAG,IAAI,OAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC,GAAA,CAAC,IAAI,CAAC,CAAC;yBAC9F,CAAC,CAAC;qBACN;oBACD,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,GAAA,CAAC,CAAC,CAAC;iBACpF,EAAE,MAAM,CAAC,CAAC;aACd,CAAC,CAAC;SACN;QAGO,4CAAa,GAAb;YAAA,iBAGP;YAFG,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC;iBAC5D,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,aAAa,CAAC,KAAK,GAAG,KAAK,GAAA,CAAC,CAAC;SACxD;QAEO,yCAAU,GAAV,UAAW,IAAI;YACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC;gBACzC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;aAC3B;YACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SAC1B;;;;gBA9IJT,YAAS,SAAC;oBACP,QAAQ,EAAE,uBAAuB;oBACjC,shEAA4C;iBAC/C;;;gBAvBQC,kBAAa;;;mCA2BjBS,QAAK;2BACLA,QAAK;gCAELC,SAAM,SAAC,QAAQ;;;;QCbhB,6BAA2B,cAAsC;YAAtC,mBAAc,GAAd,cAAc,CAAwB;SAAI;QAE9D,yCAAW,GAAX,UAAY,QAAgB;YAA5B,iBASN;YATkB,yBAAA,EAAA,gBAAgB;YAC/B,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAW,UAAC,OAAO,EAAE,MAAM;gBACzC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;aACvE,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAA,CAAC;iBACrC,IAAI,CAAC,UAAC,KAAK;gBACR,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,OAAO,KAAK,CAAC;aAChB,CAAC,CAAC;SACN;QAEM,4CAAc,GAAd,UAAe,CAAuB;YACzC,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;SACjC;QAEM,yCAAW,GAAX,UAAY,QAAgB,EAAE,gBAAyB;YAAvD,iBASN;YATkB,yBAAA,EAAA,gBAAgB;YAC/B,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAW,UAAC,OAAO,EAAE,MAAM;gBACzC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;aACvE,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAA,CAAC;iBACrC,IAAI,CAAC,UAAC,KAAK;gBACR,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,OAAO,KAAK,CAAC;aAChB,CAAC,CAAC;SACN;QAEM,0CAAY,GAAZ,UAAa,QAAgB;YAA7B,iBASN;YATmB,yBAAA,EAAA,gBAAgB;YAChC,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAW,UAAC,OAAO,EAAE,MAAM;gBACzC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;aACvE,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAA,CAAC;iBACrC,IAAI,CAAC,UAAC,KAAK;gBACR,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,OAAO,KAAK,CAAC;aAChB,CAAC,CAAC;SACN;QAEM,0CAAY,GAAZ,UAAa,QAAgB;YAA7B,iBAUN;YAVmB,yBAAA,EAAA,gBAAgB;YAChC,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAW,UAAC,OAAO,EAAE,MAAM;gBACzC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;aACvE,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAA,CAAC;iBACrC,IAAI,CAAC,UAAC,KAAK;gBACR,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,OAAO,KAAK,CAAC;aAChB,CAAC,CAAC;SAEN;;;;;;QAOO,sCAAQ,GAAR,UAAS,SAAmB;YAChC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,UAAA,QAAQ;gBACpC,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAC7B,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;iBACnC;gBACD,OAAOC,gBAAa,CAAC,QAAQ,CAAC,CAAA;aACjC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAA,SAAS;gBACd,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,UAAA,OAAO;oBAC3B,IAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAC9B,OAAO;wBACH,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;wBAC3B,IAAI,EAAE,IAAI;wBACV,OAAO,EAAE,OAAO,CAAC,IAAI;wBACrB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;qBAC1B,CAAC;iBACL,CAAC,CAAC;aACN,CAAC,CAAC;SACV;;;IA7Ee,gCAAY,GAAG,qBAAqB,CAAC;;;gBAFxDC,aAAU,SAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;gBAZVC,yBAAsB;;;ICM9C,IAAM,aAAa,GAAI,+CAA+C,CAAC;;QAWnE,6BACuC,iBAAiB,EAC5C,sBAA8C,EAC9C,IAAU;YAFiB,sBAAiB,GAAjB,iBAAiB,CAAA;YAC5C,2BAAsB,GAAtB,sBAAsB,CAAwB;YAC9C,SAAI,GAAJ,IAAI,CAAM;YANd,eAAU,GAAG,KAAK,CAAC;YACnB,aAAQ,GAAG,EAAE,CAAC;SAOlB;QAEG,uCAAS,GAAT;YAAA,iBAcN;YAbG,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS;mBAC7B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;gBACxD,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;oBACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;oBACjD,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,aAAa,CAAC;oBACjD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAC,SAAS;wBAC5C,KAAI,CAAC,SAAS,GAAGC,mBAAgB,CAAC,SAAS,CAAC,CAAC;wBAC7C,KAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,KAAI,CAAC,SAAS,CAAC;qBACrD,CAAC,CAAC;iBACN;qBAAM,IAAI,IAAI,CAAC,SAAS,EAAE;oBACvB,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;iBACrD;aACJ;SACJ;QAED,sBACI,6CAAY;iBADhB,UACiB,GAAW;gBACxB,IAAI,CAAC,UAAU,IAAIlB,aAAU,EAAE,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC;aACtD;;;WAAA;QAEO,0CAAY,GAAZ,UAAa,GAAW;YAC5B,IAAIA,aAAU,EAAE,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAK,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;gBACzE,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;qBAC7E,KAAK,CAACC,OAAI,CAAC,CAAC;aACpB;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAC/B;;;;gBA3CJR,YAAS,SAAC;oBACP,QAAQ,EAAE,gBAAgB;iBAC7B;;;gDAQQ0B,OAAI,YAAIzB,SAAM,SAACC,cAAS;gBAdxByB,2BAAsB;gBAJtBb,QAAI;;;+BAwCRM,QAAK;;;IC1CV;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;QC5Oa,aAAa,GAAG;QACzBQ,aAAQ,CACJ,yBAAyB,EACzB,IAAI,GAAG,CACH,EAAE,CACL,CACJ,CAAC;IACN;;ICDA,IAAM,WAAW,GAAG,sBAAsB,CAAC;IAC3C,IAAM,aAAa,GAAkB,EAAC,UAAU,EAAE,yBAAyB,EAAE,SAAS,EAAE,WAAW,EAAC,CAAC;AAEzFC;IAAZ,WAAY,YAAY;QACpB,yDAAa,CAAA;QACb,2DAAc,CAAA;QACd,8GAAwC,CAAA;QACxC,4HAA+C,CAAA;QAC/C,gFAAyB,CAAA;IAC7B,CAAC,EANWA,oBAAY,KAAZA,oBAAY,QAMvB;;QAUgD,+CAAiB;QAU9D,qCAAoB,cAA8B,EAAE,GAAQ,EAAE,GAAa;YAA3E,YACI,kBAAM,GAAG,EAAE,aAAa,CAAC,SAQ5B;YATmB,oBAAc,GAAd,cAAc,CAAgB;YAP3C,iBAAW,GAAG,KAAK,CAAC;YACpB,wBAAkB,GAAG,KAAK,CAAC;YAC3B,wBAAkB,GAAG,KAAK,CAAC;YAO9BC,WAAM,CAAC,KAAI,CAAC,QAAQ,EAAE,KAAI,CAAC,CAAC;YAC5B,KAAI,CAAC,kBAAkB,GAAa,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACtE,KAAI,CAAC,kBAAkB,GAAG,KAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAC5D,KAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,SAAS,CAAC,sBAAsB,EAAE,UAAC,IAAI;gBACjE,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;aAC5B,CAAC,CAAC;YACH,KAAI,CAAC,aAAa,EAAE,CAAC;;SACxB;QAEO,mDAAa,GAAb,UAAc,IAAK;YAAnB,iBA0BP;YAzBG,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC9C,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;YACnC,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBACxB,OAAO,KAAK,CAAC;aAChB;YACD,IAAI,IAAI,CAAC,WAAW,EAAE;gBAClB,IAAI,CAAC,YAAY,GAAGD,oBAAY,CAAC,SAAS,CAAC;gBAC3C,QAAQ,GAAG,IAAI,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,YAAY,EAAE;gBAC1B,IAAI,CAAC,YAAY,GAAGA,oBAAY,CAAC,UAAU,CAAC;aAC/C;iBAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAChC,IAAI,CAAC,YAAY,GAAGA,oBAAY,CAAC,mCAAmC,CAAC;aACxE;iBAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;gBAC5D,IAAI,CAAC,YAAY,GAAGA,oBAAY,CAAC,0CAA0C,CAAC;aAC/E;iBAAM;gBACH,IAAI,CAAC,YAAY,GAAGA,oBAAY,CAAC,oBAAoB,CAAC;aACzD;YACD,IAAI,CAAC,WAAW,IAAI,EAAE,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,IAAK,QAAQ,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC;YACtG,IAAI,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE;gBAC9B,UAAU,CAAC;oBACP,KAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzBV,aAAU,EAAE,CAAC;iBAChB,EAAE,IAAI,CAAC,CAAC;aACZ;SACJ;QAEM,6CAAO,GAAP;YACH,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;SACjC;QAEM,iDAAW,GAAX;YACH,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;SAC5B;QAEM,iDAAW,GAAX;YACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,iBAAM,WAAW,WAAE,CAAC;SACvB;;KA5DL,CAAiDY,sBAAiB;IACvD,2CAAe,GAAG,aAAa,EAAE,CAAC;;gBAR5CrB,YAAS,SAAC;oBACP,QAAQ,EAAE,wBAAwB;oBAClC,46CAAoD;oBACpD,SAAS,EAAE;wBACPsB,uBAAkB,CAAC,2BAA2B,CAAC;qBAClD;iBACJ;;;gBApBQC,mBAAc;gBADFC,MAAG;gBALJC,WAAQ;;;ICwB5B,IAAM,WAAW,GAAG,CAAC,CAAC;;QAgBlB,iCAAoB,EAAc;YAAd,OAAE,GAAF,EAAE,CAAY;YAL1B,cAAS,GAAG,IAAI,CAAC;YAElB,cAAS,GAAc,EAAE,CAAC;YAC1B,UAAK,GAAG,EAAE,CAAC;YAGd9B,WAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,uCAAuC,CAAC,CAAC;SAC5E;QAEM,gDAAc,GAAd,UAAe,IAAY,EAAE,GAAO,EAAE,GAAS;YAA/C,iBAiBN;YAjBmC,oBAAA,EAAA,OAAO;YAAE,oBAAA,EAAA,SAAS;YAClD,IAAM,QAAQ,GAAY;gBACtB,GAAG,EAAE,GAAG;gBACR,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;gBACZ,aAAa,EAAE,EAAE;gBACjB,IAAI,EAAE,GAAG,KAAK,GAAG;gBACjB,eAAe,EAAG,QAAQ;gBAC1B,KAAK,EAAE,CAAC;aACX,CAAC;YACF,IAAM,GAAG,GAAG;gBACR,GAAG,EAAE,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,YAAY,CAAC,GAAA;gBAC7C,GAAG,EAAE,UAAC,YAAY,EAAE,aAAa,IAAK,OAAA,KAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC,GAAA;gBACpG,OAAO,EAAE,cAAM,OAAA,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAA;aAC/C,CAAC;YACF,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,cAAM,OAAA,GAAG,GAAA,CAAC,CAAC;SACpD;QAEM,qDAAmB,GAAnB;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,GAAA,CAAC,CAAC;SAC7C;QAEM,2CAAS,GAAT;YACH,IAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,GAAA,CAAC,CAAC;YAC9D,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,EAAE;gBACvC+B,UAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACjD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;aAC1B;iBAAM,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,kBAAkB,EAAE;gBAC9CC,aAAU,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;SACJ;QAEO,4CAAU,GAAV,UAAW,QAAQ;YAAnB,iBAYP;YAXG,OAAO,IAAI,OAAO,CAAE,UAAA,OAAO;gBACvB,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBACZ,IAAI,KAAI,CAAC,SAAS,CAAC,MAAM,GAAG,WAAW,EAAE;wBACrC,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC9B,OAAO,CAAC,QAAQ,CAAC,CAAC;qBACrB;yBAAM;wBACH,OAAO,KAAK,CAAC;qBAChB;iBACJ,CAAC,CAAC;gBACH,KAAI,CAAC,UAAU,EAAE,CAAC;aACrB,CAAC,CAAC;SACN;QAEO,4CAAU,GAAV;YACJ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,EAAE;gBACpD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACnB,IAAI,CAAC,UAAU,EAAE,CAAC;aACrB;SACJ;QAEO,gDAAc,GAAd,UAAe,QAAiB;YAAhC,iBAQP;YAPG,OAAO,IAAI,OAAO,CAAE,UAAA,OAAO;gBACvB,UAAU,CAAC;oBACP,CAAC,CAAC,MAAM,CAAC,KAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;oBACnC,KAAI,CAAC,UAAU,EAAE,CAAC;oBAClB,OAAO,EAAE,CAAC;iBACb,EAAE,IAAI,CAAC,CAAC;aACZ,CAAC,CAAC;SACN;QAEO,oDAAkB,GAAlB,UAAmB,QAAiB,EAAE,YAAoB,EAAE,aAAkB;YAA9E,iBAgBP;YAfG,IAAI,YAAY,KAAK,OAAO,EAAE;gBAC1B,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE;oBAChC,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC;iBAChC;gBACD,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC;gBAC/B,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;aAChE;iBAAM,IAAI,YAAY,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;gBACjE,QAAQ,CAAC,MAAM,GAAG;oBACd,aAAa,EAAE,CAAC;oBAChB,OAAO,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;iBACxC,CAAC;aACL;iBAAM;gBACH,QAAQ,CAAC,YAAY,CAAC,GAAG,aAAa,CAAC;aAC1C;YACD,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC;SACjD;;;;gBAnGJ3B,YAAS,SAAC;oBACP,QAAQ,EAAE,oBAAoB;oBAC9B,swDAA+C;oBAC/C,SAAS,EAAE;wBACPsB,uBAAkB,CAAC,uBAAuB,CAAC;qBAC9C;iBACJ;;;gBAhC4BnB,aAAU;;;;QCKvC;;QAKI,iDAAc,GAAd,UAAe,uBAAgD;YAC3D,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;SAC1D;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4BM,iDAAc,GAAd,UAAe,IAAY,EAAE,GAAY,EAAE,GAAY;YAC1D,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;gBAC/B,OAAO,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;aAC/D;YACD,OAAO,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SACtE;;;IAvCe,qCAAY,GAAG,0BAA0B,CAAC;;;gBAF7DU,aAAU,SAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ICSlC,IAAM,UAAU,GAAG;QACf,eAAe;QACf,kBAAkB;QAClB,oBAAoB;QACpB,mBAAmB;QACnB,2BAA2B;QAC3B,uBAAuB;KAC1B,CAAC;;QAYF;;;;;gBAVCe,WAAQ,SAAC;oBACN,OAAO,EAAE;wBACLC,mBAAY;wBACZC,uBAAc;wBACdC,uBAAkB;qBACrB;oBACD,YAAY,2BAAM,UAAU,EAAC;oBAC7B,OAAO,2BAAM,UAAU,EAAC;oBACxB,eAAe,EAAE,EAAE;iBACtB;;;IC/BD;;;;;;;;;;;;;;;;;;;;;"}
@@ -13,7 +13,7 @@ export class ImageCacheDirective {
13
13
  this._lastUrl = '';
14
14
  }
15
15
  ngDoCheck() {
16
- if (_.isString(this.componentInstance.imgSource)
16
+ if (this.componentInstance.imgSource
17
17
  && this.componentInstance.imgSource.startsWith('http')) {
18
18
  if (this._lastUrl !== this.componentInstance.imgSource) {
19
19
  this._lastUrl = this.componentInstance.imgSource;
@@ -52,4 +52,4 @@ ImageCacheDirective.ctorParameters = () => [
52
52
  ImageCacheDirective.propDecorators = {
53
53
  wmImageCache: [{ type: Input }]
54
54
  };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9iaWxlL2NvbXBvbmVudHMvYmFzaWMvZGVmYXVsdC9zcmMvaW1hZ2UtY2FjaGUvaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVcsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd6RCxNQUFNLGFBQWEsR0FBSSwrQ0FBK0MsQ0FBQztBQUt2RSxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQ3VDLGlCQUFpQixFQUM1QyxzQkFBOEMsRUFDOUMsSUFBVTtRQUZpQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQUE7UUFDNUMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxTQUFJLEdBQUosSUFBSSxDQUFNO1FBTmQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixhQUFRLEdBQUcsRUFBRSxDQUFDO0lBT25CLENBQUM7SUFFRyxTQUFTO1FBQ1osSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUM7ZUFDekMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDeEQsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUU7Z0JBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQztnQkFDakQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUNoRCxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxDQUFDO2FBQ047aUJBQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDckQ7U0FDSjtJQUNMLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxHQUFHLEtBQUssTUFBTSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFlBQVksQ0FBQyxHQUFXO1FBQzVCLElBQUksVUFBVSxFQUFFLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFLLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztpQkFDN0UsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7OztZQTNDSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjthQUM3Qjs7OzRDQVFRLElBQUksWUFBSSxNQUFNLFNBQUMsU0FBUztZQWZ4QixzQkFBc0I7WUFKdEIsSUFBSTs7OzJCQXlDUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBEb0NoZWNrLCBJbmplY3QsIElucHV0LCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBXaWRnZXRSZWYgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IGhhc0NvcmRvdmEsIG5vb3AsIHRyYW5zZm9ybUZpbGVVUkkgfSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBEZXZpY2VGaWxlQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnQHdtL21vYmlsZS9jb3JlJztcblxuZGVjbGFyZSBjb25zdCBfO1xuY29uc3QgREVGQVVMVF9JTUFHRSA9ICAncmVzb3VyY2VzL2ltYWdlcy9pbWFnZWxpc3RzL2RlZmF1bHQtaW1hZ2UucG5nJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbd21JbWFnZUNhY2hlXSdcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VDYWNoZURpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuXG4gICAgcHJpdmF0ZSBfY2FjaGVVcmw7XG4gICAgcHJpdmF0ZSBfaXNFbmFibGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfbGFzdFVybCA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChXaWRnZXRSZWYpIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2UsXG4gICAgICAgIHByaXZhdGUgZGV2aWNlRmlsZUNhY2hlU2VydmljZTogRGV2aWNlRmlsZUNhY2hlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBmaWxlOiBGaWxlXG5cbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdEb0NoZWNrKCkge1xuICAgICAgICBpZiAoXy5pc1N0cmluZyh0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSlcbiAgICAgICAgICAgICYmIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2xhc3RVcmwgIT09IHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbGFzdFVybCA9IHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlO1xuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlID0gREVGQVVMVF9JTUFHRTtcbiAgICAgICAgICAgICAgICB0aGlzLmdldExvY2FsUGF0aCh0aGlzLl9sYXN0VXJsKS50aGVuKChsb2NhbFBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2FjaGVVcmwgPSB0cmFuc2Zvcm1GaWxlVVJJKGxvY2FsUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuaW1nU291cmNlID0gdGhpcy5fY2FjaGVVcmw7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2NhY2hlVXJsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UgPSB0aGlzLl9jYWNoZVVybDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHdtSW1hZ2VDYWNoZSh2YWw6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9pc0VuYWJsZWQgPSAoaGFzQ29yZG92YSgpICYmIHZhbCA9PT0gJ3RydWUnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldExvY2FsUGF0aCh2YWw6IHN0cmluZykge1xuICAgICAgICBpZiAoaGFzQ29yZG92YSgpICYmIHZhbCAmJiB2YWwuaW5kZXhPZigne3snKSA8IDAgICYmIHZhbC5zdGFydHNXaXRoKCdodHRwJykpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRldmljZUZpbGVDYWNoZVNlcnZpY2UuZ2V0TG9jYWxQYXRoKHZhbCwgdHJ1ZSwgdHJ1ZSwgIXRoaXMuX2lzRW5hYmxlZClcbiAgICAgICAgICAgICAgICAuY2F0Y2gobm9vcCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh2YWwpO1xuICAgIH1cbn1cbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9iaWxlL2NvbXBvbmVudHMvYmFzaWMvZGVmYXVsdC9zcmMvaW1hZ2UtY2FjaGUvaW1hZ2UtY2FjaGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVcsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RCxNQUFNLGFBQWEsR0FBSSwrQ0FBK0MsQ0FBQztBQUt2RSxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQ3VDLGlCQUFpQixFQUM1QyxzQkFBOEMsRUFDOUMsSUFBVTtRQUZpQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQUE7UUFDNUMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxTQUFJLEdBQUosSUFBSSxDQUFNO1FBTmQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixhQUFRLEdBQUcsRUFBRSxDQUFDO0lBT25CLENBQUM7SUFFRyxTQUFTO1FBQ1osSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUztlQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN4RCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsRUFBRTtnQkFDcEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDO2dCQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQztnQkFDakQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7b0JBQ2hELElBQUksQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQzdDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDdEQsQ0FBQyxDQUFDLENBQUM7YUFDTjtpQkFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUNyRDtTQUNKO0lBQ0wsQ0FBQztJQUVELElBQ0ksWUFBWSxDQUFDLEdBQVc7UUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLEdBQUcsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sWUFBWSxDQUFDLEdBQVc7UUFDNUIsSUFBSSxVQUFVLEVBQUUsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUssR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN6RSxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2lCQUM3RSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQzs7O1lBM0NKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2FBQzdCOzs7NENBUVEsSUFBSSxZQUFJLE1BQU0sU0FBQyxTQUFTO1lBZHhCLHNCQUFzQjtZQUp0QixJQUFJOzs7MkJBd0NSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIERvQ2hlY2ssIEluamVjdCwgSW5wdXQsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRmlsZSB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9maWxlL25neCc7XG5cbmltcG9ydCB7IFdpZGdldFJlZiB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuaW1wb3J0IHsgaGFzQ29yZG92YSwgbm9vcCwgdHJhbnNmb3JtRmlsZVVSSSB9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IERldmljZUZpbGVDYWNoZVNlcnZpY2UgfSBmcm9tICdAd20vbW9iaWxlL2NvcmUnO1xuXG5jb25zdCBERUZBVUxUX0lNQUdFID0gICdyZXNvdXJjZXMvaW1hZ2VzL2ltYWdlbGlzdHMvZGVmYXVsdC1pbWFnZS5wbmcnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t3bUltYWdlQ2FjaGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBJbWFnZUNhY2hlRGlyZWN0aXZlIGltcGxlbWVudHMgRG9DaGVjayB7XG5cbiAgICBwcml2YXRlIF9jYWNoZVVybDtcbiAgICBwcml2YXRlIF9pc0VuYWJsZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9sYXN0VXJsID0gJyc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQFNlbGYoKSBASW5qZWN0KFdpZGdldFJlZikgcHJpdmF0ZSBjb21wb25lbnRJbnN0YW5jZSxcbiAgICAgICAgcHJpdmF0ZSBkZXZpY2VGaWxlQ2FjaGVTZXJ2aWNlOiBEZXZpY2VGaWxlQ2FjaGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGZpbGU6IEZpbGVcblxuICAgICkge31cblxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZVxuICAgICAgICAgICAgJiYgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2Uuc3RhcnRzV2l0aCgnaHR0cCcpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fbGFzdFVybCAhPT0gdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sYXN0VXJsID0gdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2U7XG4gICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UgPSBERUZBVUxUX0lNQUdFO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0TG9jYWxQYXRoKHRoaXMuX2xhc3RVcmwpLnRoZW4oKGxvY2FsUGF0aCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZVVybCA9IHRyYW5zZm9ybUZpbGVVUkkobG9jYWxQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbWdTb3VyY2UgPSB0aGlzLl9jYWNoZVVybDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fY2FjaGVVcmwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmltZ1NvdXJjZSA9IHRoaXMuX2NhY2hlVXJsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgd21JbWFnZUNhY2hlKHZhbDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2lzRW5hYmxlZCA9IChoYXNDb3Jkb3ZhKCkgJiYgdmFsID09PSAndHJ1ZScpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TG9jYWxQYXRoKHZhbDogc3RyaW5nKSB7XG4gICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkgJiYgdmFsICYmIHZhbC5pbmRleE9mKCd7eycpIDwgMCAgJiYgdmFsLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGV2aWNlRmlsZUNhY2hlU2VydmljZS5nZXRMb2NhbFBhdGgodmFsLCB0cnVlLCB0cnVlLCAhdGhpcy5faXNFbmFibGVkKVxuICAgICAgICAgICAgICAgIC5jYXRjaChub29wKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHZhbCk7XG4gICAgfVxufVxuIl19
@@ -363,7 +363,7 @@ class ImageCacheDirective {
363
363
  this._lastUrl = '';
364
364
  }
365
365
  ngDoCheck() {
366
- if (_.isString(this.componentInstance.imgSource)
366
+ if (this.componentInstance.imgSource
367
367
  && this.componentInstance.imgSource.startsWith('http')) {
368
368
  if (this._lastUrl !== this.componentInstance.imgSource) {
369
369
  this._lastUrl = this.componentInstance.imgSource;