@wavemaker/app-ng-runtime 11.9.1-6.647649 → 11.9.1-6.647654

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.
@@ -103,13 +103,71 @@
103
103
  this.invokeEventCallback('success', { $event });
104
104
  }
105
105
  }
106
+ /**
107
+ * CA15: HTTPS WebView cannot show file:// in <img>/<video>.
108
+ * widgets bound to this camera's localFilePath.
109
+ */
110
+ applyCapturePreview(dataUrl) {
111
+ const widgets = this.viewParent && this.viewParent.Widgets;
112
+ if (!dataUrl || !widgets) {
113
+ return;
114
+ }
115
+ const name = this.name;
116
+ const fileUri = this.localFilePath;
117
+ Object.keys(widgets).forEach((key) => {
118
+ const w = widgets[key];
119
+ if (!w || !w.$attrs) {
120
+ return;
121
+ }
122
+ const picBind = w.$attrs.get('picturesource.bind') || '';
123
+ const vidBind = w.$attrs.get('mp4format.bind') || '';
124
+ const bound = (name &&
125
+ (picBind.indexOf(name + '.localFilePath') >= 0 ||
126
+ vidBind.indexOf(name + '.localFilePath') >= 0)) ||
127
+ w.picturesource === fileUri ||
128
+ w.mp4format === fileUri;
129
+ if (!bound) {
130
+ return;
131
+ }
132
+ if (w.nativeElement && w.nativeElement.tagName === 'IMG') {
133
+ w.picturesource = dataUrl;
134
+ w.nativeElement.src = dataUrl;
135
+ return;
136
+ }
137
+ if (typeof w.mp4format !== 'undefined') {
138
+ w.mp4format = dataUrl;
139
+ const el = w.nativeElement &&
140
+ (w.nativeElement.querySelector('video') || w.nativeElement);
141
+ if (el && el.tagName === 'VIDEO') {
142
+ el.src = dataUrl;
143
+ }
144
+ }
145
+ });
146
+ }
106
147
  updateModel($event, value) {
107
148
  value = (value.startsWith('file://') ? '' : 'file://') + value;
108
- this.localFilePath = this.datavalue = value;
109
- core.convertToBlob(value)
149
+ const fileUri = value;
150
+ this.localFilePath = this.datavalue = fileUri;
151
+ core.convertToBlob(fileUri)
110
152
  .then(result => {
111
153
  this.localFile = result.blob;
112
- this.invokeEventCallback('success', { $event, localFilePath: this.localFilePath, localFile: this.localFile });
154
+ const reader = new FileReader();
155
+ reader.onloadend = () => {
156
+ this.applyCapturePreview(reader.result);
157
+ this.invokeEventCallback('success', {
158
+ $event,
159
+ localFilePath: fileUri,
160
+ localFile: this.localFile
161
+ });
162
+ };
163
+ reader.onerror = () => {
164
+ this.invokeEventCallback('success', {
165
+ $event,
166
+ localFilePath: fileUri,
167
+ localFile: this.localFile
168
+ });
169
+ };
170
+ reader.readAsDataURL(result.blob);
113
171
  }, () => {
114
172
  this.localFile = undefined;
115
173
  });
@@ -28,9 +28,15 @@ export declare class CameraComponent extends StylableComponent {
28
28
  savetogallery: boolean;
29
29
  iconsize: any;
30
30
  iconclass: any;
31
+ name: string;
31
32
  private _cameraOptions;
32
33
  constructor(camera: Camera, mediaCapture: MediaCapture, inj: Injector, elRef: ElementRef, cdr: ChangeDetectorRef, explicitContext: any);
33
34
  openCamera($event: any): void;
35
+ /**
36
+ * CA15: HTTPS WebView cannot show file:// in <img>/<video>.
37
+ * widgets bound to this camera's localFilePath.
38
+ */
39
+ private applyCapturePreview;
34
40
  private updateModel;
35
41
  static ɵfac: i0.ɵɵFactoryDeclaration<CameraComponent, [null, null, null, null, null, { optional: true; }]>;
36
42
  static ɵcmp: i0.ɵɵComponentDeclaration<CameraComponent, "button[wmCamera]", ["wmCamera"], {}, {}, never, never, false, never>;
@@ -61,13 +61,71 @@ export class CameraComponent extends StylableComponent {
61
61
  this.invokeEventCallback('success', { $event });
62
62
  }
63
63
  }
64
+ /**
65
+ * CA15: HTTPS WebView cannot show file:// in <img>/<video>.
66
+ * widgets bound to this camera's localFilePath.
67
+ */
68
+ applyCapturePreview(dataUrl) {
69
+ const widgets = this.viewParent && this.viewParent.Widgets;
70
+ if (!dataUrl || !widgets) {
71
+ return;
72
+ }
73
+ const name = this.name;
74
+ const fileUri = this.localFilePath;
75
+ Object.keys(widgets).forEach((key) => {
76
+ const w = widgets[key];
77
+ if (!w || !w.$attrs) {
78
+ return;
79
+ }
80
+ const picBind = w.$attrs.get('picturesource.bind') || '';
81
+ const vidBind = w.$attrs.get('mp4format.bind') || '';
82
+ const bound = (name &&
83
+ (picBind.indexOf(name + '.localFilePath') >= 0 ||
84
+ vidBind.indexOf(name + '.localFilePath') >= 0)) ||
85
+ w.picturesource === fileUri ||
86
+ w.mp4format === fileUri;
87
+ if (!bound) {
88
+ return;
89
+ }
90
+ if (w.nativeElement && w.nativeElement.tagName === 'IMG') {
91
+ w.picturesource = dataUrl;
92
+ w.nativeElement.src = dataUrl;
93
+ return;
94
+ }
95
+ if (typeof w.mp4format !== 'undefined') {
96
+ w.mp4format = dataUrl;
97
+ const el = w.nativeElement &&
98
+ (w.nativeElement.querySelector('video') || w.nativeElement);
99
+ if (el && el.tagName === 'VIDEO') {
100
+ el.src = dataUrl;
101
+ }
102
+ }
103
+ });
104
+ }
64
105
  updateModel($event, value) {
65
106
  value = (value.startsWith('file://') ? '' : 'file://') + value;
66
- this.localFilePath = this.datavalue = value;
67
- convertToBlob(value)
107
+ const fileUri = value;
108
+ this.localFilePath = this.datavalue = fileUri;
109
+ convertToBlob(fileUri)
68
110
  .then(result => {
69
111
  this.localFile = result.blob;
70
- this.invokeEventCallback('success', { $event, localFilePath: this.localFilePath, localFile: this.localFile });
112
+ const reader = new FileReader();
113
+ reader.onloadend = () => {
114
+ this.applyCapturePreview(reader.result);
115
+ this.invokeEventCallback('success', {
116
+ $event,
117
+ localFilePath: fileUri,
118
+ localFile: this.localFile
119
+ });
120
+ };
121
+ reader.onerror = () => {
122
+ this.invokeEventCallback('success', {
123
+ $event,
124
+ localFilePath: fileUri,
125
+ localFile: this.localFile
126
+ });
127
+ };
128
+ reader.readAsDataURL(result.blob);
71
129
  }, () => {
72
130
  this.localFile = undefined;
73
131
  });
@@ -98,4 +156,4 @@ export class CameraComponent extends StylableComponent {
98
156
  args: ['click', ['$event']]
99
157
  }] }); })();
100
158
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CameraComponent, { className: "CameraComponent", filePath: "camera.component.ts", lineNumber: 32 }); })();
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb21wb25lbnRzL2RldmljZS9jYW1lcmEvc3JjL2NhbWVyYS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29tcG9uZW50cy9kZXZpY2UvY2FtZXJhL3NyYy9jYW1lcmEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0SCxPQUFPLEVBQUMsYUFBYSxFQUFFLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFFL0MsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDckMsTUFBTSxhQUFhLEdBQWtCLEVBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFDLENBQUM7QUFFdkYsTUFBTSxDQUFOLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQiwrQkFBZSxDQUFBO0lBQ2YsMkJBQVcsQ0FBQTtBQUNmLENBQUMsRUFIVyxZQUFZLEtBQVosWUFBWSxRQUd2QjtBQUVELE1BQU0sQ0FBTixJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDckIsOEJBQWEsQ0FBQTtJQUNiLDRCQUFXLENBQUE7QUFDZixDQUFDLEVBSFcsYUFBYSxLQUFiLGFBQWEsUUFHeEI7QUFVRCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxpQkFBaUI7YUFDM0Msb0JBQWUsR0FBRyxhQUFhLEVBQUUsQUFBbEIsQ0FBbUI7SUFpQnpDLFlBQW9CLE1BQWMsRUFBVSxZQUEwQixFQUFFLEdBQWEsRUFBRSxLQUFpQixFQUFFLEdBQXNCLEVBQTBDLGVBQW9CO1FBQzFMLEtBQUssQ0FBQyxHQUFHLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBRDNCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUVsRSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBR00sVUFBVSxDQUFDLE1BQU07UUFDcEIsSUFBSSxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQ2YsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLGNBQWMsR0FBRztvQkFDbEIsT0FBTyxFQUFhLElBQUksQ0FBQyxZQUFZO29CQUNyQyxlQUFlLEVBQUssQ0FBQyxFQUFFLHlCQUF5QjtvQkFDaEQsVUFBVSxFQUFVLENBQUMsRUFBRSxjQUFjO29CQUNyQyxTQUFTLEVBQVcsSUFBSSxDQUFDLFNBQVM7b0JBQ2xDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7b0JBQzNDLFlBQVksRUFBUSxJQUFJLENBQUMsaUJBQWlCLEtBQUssYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN6RSxnQkFBZ0IsRUFBSSxJQUFJLENBQUMsYUFBYTtvQkFDdEMsV0FBVyxFQUFTLElBQUksQ0FBQyxnQkFBZ0I7b0JBQ3pDLFlBQVksRUFBUSxJQUFJLENBQUMsaUJBQWlCO2lCQUM3QyxDQUFDO2dCQUNGLGVBQWU7Z0JBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztxQkFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN0RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLGNBQWMsR0FBRztvQkFDbEIsS0FBSyxFQUFFLENBQUM7aUJBQ1gsQ0FBQztnQkFDRixzQkFBc0I7Z0JBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7cUJBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzlFLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsRUFBQyxNQUFNLEVBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDTCxDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQU0sRUFBRSxLQUFLO1FBQzdCLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQy9ELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDNUMsYUFBYSxDQUFDLEtBQUssQ0FBQzthQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztZQUM3QixJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLEVBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFDLENBQUMsQ0FBQztRQUNoSCxDQUFDLEVBQUUsR0FBRyxFQUFFO1lBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO2dGQWhFUSxlQUFlLG1OQWtCa0gsa0JBQWtCO29FQWxCbkosZUFBZTtZQUFmLDBGQUFBLHNCQUFrQixJQUFIO3NFQUxiO2dCQUNQLGtCQUFrQixDQUFDLGVBQWUsQ0FBQzthQUN0QztZQzVCTCx1QkFBaUU7O1lBQXhDLEFBQXRCLHVDQUFxQixxREFBb0M7OztpRkQrQi9DLGVBQWU7Y0FSM0IsU0FBUzsyQkFDSSxrQkFBa0IsYUFFakI7b0JBQ1Asa0JBQWtCLGlCQUFpQjtpQkFDdEMsWUFDUyxVQUFVOztzQkFvQitHLE1BQU07dUJBQUMsa0JBQWtCOztzQkFBRyxRQUFRO3FCQU1oSyxVQUFVO2tCQURoQixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0ZBdkJ4QixlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5qZWN0b3IsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2FtZXJhIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2NhbWVyYS9uZ3gnO1xuaW1wb3J0IHsgTWVkaWFDYXB0dXJlIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL21lZGlhLWNhcHR1cmUvbmd4JztcblxuaW1wb3J0IHsgQVBQTFlfU1RZTEVTX1RZUEUsIElXaWRnZXRDb25maWcsIHByb3ZpZGVBc1dpZGdldFJlZiwgU3R5bGFibGVDb21wb25lbnQsIHN0eWxlciB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuaW1wb3J0IHtjb252ZXJ0VG9CbG9iLCBoYXNDb3Jkb3ZhfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL2NhbWVyYS5wcm9wcyc7XG5cbmNvbnN0IERFRkFVTFRfQ0xTID0gJ2J0biBhcHAtY2FtZXJhJztcbmNvbnN0IFdJREdFVF9DT05GSUc6IElXaWRnZXRDb25maWcgPSB7d2lkZ2V0VHlwZTogJ3dtLWNhbWVyYScsIGhvc3RDbGFzczogREVGQVVMVF9DTFN9O1xuXG5leHBvcnQgZW51bSBDQVBUVVJFX1RZUEUge1xuICAgIElNQUdFID0gJ0lNQUdFJyxcbiAgICBQTkcgPSAnUE5HJ1xufVxuXG5leHBvcnQgZW51bSBFTkNPRElOR19UWVBFIHtcbiAgICBKUEVHID0gJ0pQRUcnLFxuICAgIFBORyA9ICdQTkcnXG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnV0dG9uW3dtQ2FtZXJhXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbWVyYS5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihDYW1lcmFDb21wb25lbnQpXG4gICAgXSxcbiAgICBleHBvcnRBczogJ3dtQ2FtZXJhJ1xufSlcbmV4cG9ydCBjbGFzcyBDYW1lcmFDb21wb25lbnQgZXh0ZW5kcyBTdHlsYWJsZUNvbXBvbmVudCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcbiAgICBwdWJsaWMgYWxsb3dlZGl0OiBib29sZWFuO1xuICAgIHB1YmxpYyBjb3JyZWN0b3JpZW50YXRpb246IGJvb2xlYW47XG4gICAgcHVibGljIGNhcHR1cmV0eXBlOiBzdHJpbmc7XG4gICAgcHVibGljIGRhdGF2YWx1ZTogc3RyaW5nO1xuICAgIHB1YmxpYyBpbWFnZXF1YWxpdHk6IG51bWJlcjtcbiAgICBwdWJsaWMgaW1hZ2VlbmNvZGluZ3R5cGU6IHN0cmluZztcbiAgICBwdWJsaWMgaW1hZ2V0YXJnZXR3aWR0aDogbnVtYmVyO1xuICAgIHB1YmxpYyBpbWFnZXRhcmdldGhlaWdodDogbnVtYmVyO1xuICAgIHB1YmxpYyBsb2NhbEZpbGU6IGFueTtcbiAgICBwdWJsaWMgbG9jYWxGaWxlUGF0aDogc3RyaW5nO1xuICAgIHB1YmxpYyBzYXZldG9nYWxsZXJ5OiBib29sZWFuO1xuICAgIHB1YmxpYyBpY29uc2l6ZTogYW55O1xuICAgIHB1YmxpYyBpY29uY2xhc3M6IGFueTtcblxuICAgIHByaXZhdGUgX2NhbWVyYU9wdGlvbnM6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2FtZXJhOiBDYW1lcmEsIHByaXZhdGUgbWVkaWFDYXB0dXJlOiBNZWRpYUNhcHR1cmUsIGluajogSW5qZWN0b3IsIGVsUmVmOiBFbGVtZW50UmVmLCBjZHI6IENoYW5nZURldGVjdG9yUmVmLCBASW5qZWN0KCdFWFBMSUNJVF9DT05URVhUJykgQE9wdGlvbmFsKCkgZXhwbGljaXRDb250ZXh0OiBhbnkpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHLCBleHBsaWNpdENvbnRleHQpO1xuICAgICAgICBzdHlsZXIodGhpcy5uYXRpdmVFbGVtZW50LCB0aGlzLCBBUFBMWV9TVFlMRVNfVFlQRS5TQ1JPTExBQkxFX0NPTlRBSU5FUik7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvcGVuQ2FtZXJhKCRldmVudCkge1xuICAgICAgICBpZiAoaGFzQ29yZG92YSgpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jYXB0dXJldHlwZSA9PT0gQ0FQVFVSRV9UWVBFLklNQUdFKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fY2FtZXJhT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgcXVhbGl0eSAgICAgICAgICAgOiB0aGlzLmltYWdlcXVhbGl0eSxcbiAgICAgICAgICAgICAgICAgICAgZGVzdGluYXRpb25UeXBlICAgOiAxLCAvLyAwLWRhdGEgdXJsLDEtIGZpbGUgdXJsXG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZVR5cGUgICAgICAgIDogMSwgLy8gb25seSBjYW1lcmFcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dFZGl0ICAgICAgICAgOiB0aGlzLmFsbG93ZWRpdCxcbiAgICAgICAgICAgICAgICAgICAgY29ycmVjdE9yaWVudGF0aW9uOiB0aGlzLmNvcnJlY3RvcmllbnRhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmdUeXBlICAgICAgOiB0aGlzLmltYWdlZW5jb2Rpbmd0eXBlID09PSBFTkNPRElOR19UWVBFLkpQRUcgPyAwIDogMSxcbiAgICAgICAgICAgICAgICAgICAgc2F2ZVRvUGhvdG9BbGJ1bSAgOiB0aGlzLnNhdmV0b2dhbGxlcnksXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFdpZHRoICAgICAgIDogdGhpcy5pbWFnZXRhcmdldHdpZHRoLFxuICAgICAgICAgICAgICAgICAgICB0YXJnZXRIZWlnaHQgICAgICA6IHRoaXMuaW1hZ2V0YXJnZXRoZWlnaHRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIC8vIHN0YXJ0IGNhbWVyYVxuICAgICAgICAgICAgICAgIHRoaXMuY2FtZXJhLmdldFBpY3R1cmUodGhpcy5fY2FtZXJhT3B0aW9ucylcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4ocGF0aCA9PiB0aGlzLnVwZGF0ZU1vZGVsKCRldmVudCwgcGF0aCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYW1lcmFPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICBsaW1pdDogMVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgLy8gc3RhcnQgdmlkZW8gY2FwdHVyZVxuICAgICAgICAgICAgICAgIHRoaXMubWVkaWFDYXB0dXJlLmNhcHR1cmVWaWRlbyh0aGlzLl9jYW1lcmFPcHRpb25zKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihtZWRpYUZpbGVzID0+IHRoaXMudXBkYXRlTW9kZWwoJGV2ZW50LCBtZWRpYUZpbGVzWzBdLmZ1bGxQYXRoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ3N1Y2Nlc3MnLCB7JGV2ZW50fSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZU1vZGVsKCRldmVudCwgdmFsdWUpIHtcbiAgICAgICAgdmFsdWUgPSAodmFsdWUuc3RhcnRzV2l0aCgnZmlsZTovLycpID8gJycgOiAnZmlsZTovLycpICsgdmFsdWU7XG4gICAgICAgIHRoaXMubG9jYWxGaWxlUGF0aCA9IHRoaXMuZGF0YXZhbHVlID0gdmFsdWU7XG4gICAgICAgIGNvbnZlcnRUb0Jsb2IodmFsdWUpXG4gICAgICAgICAgICAudGhlbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubG9jYWxGaWxlID0gcmVzdWx0LmJsb2I7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzdWNjZXNzJywgeyRldmVudCwgbG9jYWxGaWxlUGF0aDogdGhpcy5sb2NhbEZpbGVQYXRoLCBsb2NhbEZpbGU6IHRoaXMubG9jYWxGaWxlfSk7XG4gICAgICAgICAgICB9LCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NhbEZpbGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8aSBbbmdDbGFzc109XCJpY29uY2xhc3NcIiBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6IGljb25zaXplfVwiPjwvaT4iXX0=
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb21wb25lbnRzL2RldmljZS9jYW1lcmEvc3JjL2NhbWVyYS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29tcG9uZW50cy9kZXZpY2UvY2FtZXJhL3NyYy9jYW1lcmEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0SCxPQUFPLEVBQUMsYUFBYSxFQUFFLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFFL0MsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDckMsTUFBTSxhQUFhLEdBQWtCLEVBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFDLENBQUM7QUFFdkYsTUFBTSxDQUFOLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQiwrQkFBZSxDQUFBO0lBQ2YsMkJBQVcsQ0FBQTtBQUNmLENBQUMsRUFIVyxZQUFZLEtBQVosWUFBWSxRQUd2QjtBQUVELE1BQU0sQ0FBTixJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDckIsOEJBQWEs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QUM7WUFDUCxDQUFDLENBQUM7WUFDRixNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxDQUFDLEVBQUUsR0FBRyxFQUFFO1lBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO2dGQTlIUSxlQUFlLG1OQW1Ca0gsa0JBQWtCO29FQW5CbkosZUFBZTtZQUFmLDBGQUFBLHNCQUFrQixJQUFIO3NFQUxiO2dCQUNQLGtCQUFrQixDQUFDLGVBQWUsQ0FBQzthQUN0QztZQzVCTCx1QkFBaUU7O1lBQXhDLEFBQXRCLHVDQUFxQixxREFBb0M7OztpRkQrQi9DLGVBQWU7Y0FSM0IsU0FBUzsyQkFDSSxrQkFBa0IsYUFFakI7b0JBQ1Asa0JBQWtCLGlCQUFpQjtpQkFDdEMsWUFDUyxVQUFVOztzQkFxQitHLE1BQU07dUJBQUMsa0JBQWtCOztzQkFBRyxRQUFRO3FCQU1oSyxVQUFVO2tCQURoQixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0ZBeEJ4QixlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5qZWN0b3IsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2FtZXJhIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2NhbWVyYS9uZ3gnO1xuaW1wb3J0IHsgTWVkaWFDYXB0dXJlIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL21lZGlhLWNhcHR1cmUvbmd4JztcblxuaW1wb3J0IHsgQVBQTFlfU1RZTEVTX1RZUEUsIElXaWRnZXRDb25maWcsIHByb3ZpZGVBc1dpZGdldFJlZiwgU3R5bGFibGVDb21wb25lbnQsIHN0eWxlciB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuaW1wb3J0IHtjb252ZXJ0VG9CbG9iLCBoYXNDb3Jkb3ZhfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL2NhbWVyYS5wcm9wcyc7XG5cbmNvbnN0IERFRkFVTFRfQ0xTID0gJ2J0biBhcHAtY2FtZXJhJztcbmNvbnN0IFdJREdFVF9DT05GSUc6IElXaWRnZXRDb25maWcgPSB7d2lkZ2V0VHlwZTogJ3dtLWNhbWVyYScsIGhvc3RDbGFzczogREVGQVVMVF9DTFN9O1xuXG5leHBvcnQgZW51bSBDQVBUVVJFX1RZUEUge1xuICAgIElNQUdFID0gJ0lNQUdFJyxcbiAgICBQTkcgPSAnUE5HJ1xufVxuXG5leHBvcnQgZW51bSBFTkNPRElOR19UWVBFIHtcbiAgICBKUEVHID0gJ0pQRUcnLFxuICAgIFBORyA9ICdQTkcnXG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnV0dG9uW3dtQ2FtZXJhXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhbWVyYS5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihDYW1lcmFDb21wb25lbnQpXG4gICAgXSxcbiAgICBleHBvcnRBczogJ3dtQ2FtZXJhJ1xufSlcbmV4cG9ydCBjbGFzcyBDYW1lcmFDb21wb25lbnQgZXh0ZW5kcyBTdHlsYWJsZUNvbXBvbmVudCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcbiAgICBwdWJsaWMgYWxsb3dlZGl0OiBib29sZWFuO1xuICAgIHB1YmxpYyBjb3JyZWN0b3JpZW50YXRpb246IGJvb2xlYW47XG4gICAgcHVibGljIGNhcHR1cmV0eXBlOiBzdHJpbmc7XG4gICAgcHVibGljIGRhdGF2YWx1ZTogc3RyaW5nO1xuICAgIHB1YmxpYyBpbWFnZXF1YWxpdHk6IG51bWJlcjtcbiAgICBwdWJsaWMgaW1hZ2VlbmNvZGluZ3R5cGU6IHN0cmluZztcbiAgICBwdWJsaWMgaW1hZ2V0YXJnZXR3aWR0aDogbnVtYmVyO1xuICAgIHB1YmxpYyBpbWFnZXRhcmdldGhlaWdodDogbnVtYmVyO1xuICAgIHB1YmxpYyBsb2NhbEZpbGU6IGFueTtcbiAgICBwdWJsaWMgbG9jYWxGaWxlUGF0aDogc3RyaW5nO1xuICAgIHB1YmxpYyBzYXZldG9nYWxsZXJ5OiBib29sZWFuO1xuICAgIHB1YmxpYyBpY29uc2l6ZTogYW55O1xuICAgIHB1YmxpYyBpY29uY2xhc3M6IGFueTtcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfY2FtZXJhT3B0aW9uczogYW55O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjYW1lcmE6IENhbWVyYSwgcHJpdmF0ZSBtZWRpYUNhcHR1cmU6IE1lZGlhQ2FwdHVyZSwgaW5qOiBJbmplY3RvciwgZWxSZWY6IEVsZW1lbnRSZWYsIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIEBJbmplY3QoJ0VYUExJQ0lUX0NPTlRFWFQnKSBAT3B0aW9uYWwoKSBleHBsaWNpdENvbnRleHQ6IGFueSkge1xuICAgICAgICBzdXBlcihpbmosIFdJREdFVF9DT05GSUcsIGV4cGxpY2l0Q29udGV4dCk7XG4gICAgICAgIHN0eWxlcih0aGlzLm5hdGl2ZUVsZW1lbnQsIHRoaXMsIEFQUExZX1NUWUxFU19UWVBFLlNDUk9MTEFCTEVfQ09OVEFJTkVSKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9wZW5DYW1lcmEoJGV2ZW50KSB7XG4gICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNhcHR1cmV0eXBlID09PSBDQVBUVVJFX1RZUEUuSU1BR0UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYW1lcmFPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICBxdWFsaXR5ICAgICAgICAgICA6IHRoaXMuaW1hZ2VxdWFsaXR5LFxuICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvblR5cGUgICA6IDEsIC8vIDAtZGF0YSB1cmwsMS0gZmlsZSB1cmxcbiAgICAgICAgICAgICAgICAgICAgc291cmNlVHlwZSAgICAgICAgOiAxLCAvLyBvbmx5IGNhbWVyYVxuICAgICAgICAgICAgICAgICAgICBhbGxvd0VkaXQgICAgICAgICA6IHRoaXMuYWxsb3dlZGl0LFxuICAgICAgICAgICAgICAgICAgICBjb3JyZWN0T3JpZW50YXRpb246IHRoaXMuY29ycmVjdG9yaWVudGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBlbmNvZGluZ1R5cGUgICAgICA6IHRoaXMuaW1hZ2VlbmNvZGluZ3R5cGUgPT09IEVOQ09ESU5HX1RZUEUuSlBFRyA/IDAgOiAxLFxuICAgICAgICAgICAgICAgICAgICBzYXZlVG9QaG90b0FsYnVtICA6IHRoaXMuc2F2ZXRvZ2FsbGVyeSxcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0V2lkdGggICAgICAgOiB0aGlzLmltYWdldGFyZ2V0d2lkdGgsXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldEhlaWdodCAgICAgIDogdGhpcy5pbWFnZXRhcmdldGhlaWdodFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgLy8gc3RhcnQgY2FtZXJhXG4gICAgICAgICAgICAgICAgdGhpcy5jYW1lcmEuZ2V0UGljdHVyZSh0aGlzLl9jYW1lcmFPcHRpb25zKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihwYXRoID0+IHRoaXMudXBkYXRlTW9kZWwoJGV2ZW50LCBwYXRoKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NhbWVyYU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiAxXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAvLyBzdGFydCB2aWRlbyBjYXB0dXJlXG4gICAgICAgICAgICAgICAgdGhpcy5tZWRpYUNhcHR1cmUuY2FwdHVyZVZpZGVvKHRoaXMuX2NhbWVyYU9wdGlvbnMpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKG1lZGlhRmlsZXMgPT4gdGhpcy51cGRhdGVNb2RlbCgkZXZlbnQsIG1lZGlhRmlsZXNbMF0uZnVsbFBhdGgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjaygnc3VjY2VzcycsIHskZXZlbnR9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENBMTU6IEhUVFBTIFdlYlZpZXcgY2Fubm90IHNob3cgZmlsZTovLyBpbiA8aW1nPi88dmlkZW8+LlxuICAgICAqIHdpZGdldHMgYm91bmQgdG8gdGhpcyBjYW1lcmEncyBsb2NhbEZpbGVQYXRoLlxuICAgICAqL1xuICAgIHByaXZhdGUgYXBwbHlDYXB0dXJlUHJldmlldyhkYXRhVXJsOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgd2lkZ2V0cyA9IHRoaXMudmlld1BhcmVudCAmJiAodGhpcy52aWV3UGFyZW50IGFzIGFueSkuV2lkZ2V0cztcbiAgICAgICAgaWYgKCFkYXRhVXJsIHx8ICF3aWRnZXRzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMubmFtZTtcbiAgICAgICAgY29uc3QgZmlsZVVyaSA9IHRoaXMubG9jYWxGaWxlUGF0aDtcbiAgICAgICAgT2JqZWN0LmtleXMod2lkZ2V0cykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB3ID0gd2lkZ2V0c1trZXldO1xuICAgICAgICAgICAgaWYgKCF3IHx8ICF3LiRhdHRycykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBpY0JpbmQgPSB3LiRhdHRycy5nZXQoJ3BpY3R1cmVzb3VyY2UuYmluZCcpIHx8ICcnO1xuICAgICAgICAgICAgY29uc3QgdmlkQmluZCA9IHcuJGF0dHJzLmdldCgnbXA0Zm9ybWF0LmJpbmQnKSB8fCAnJztcbiAgICAgICAgICAgIGNvbnN0IGJvdW5kID1cbiAgICAgICAgICAgICAgICAobmFtZSAmJlxuICAgICAgICAgICAgICAgICAgICAocGljQmluZC5pbmRleE9mKG5hbWUgKyAnLmxvY2FsRmlsZVBhdGgnKSA+PSAwIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICB2aWRCaW5kLmluZGV4T2YobmFtZSArICcubG9jYWxGaWxlUGF0aCcpID49IDApKSB8fFxuICAgICAgICAgICAgICAgIHcucGljdHVyZXNvdXJjZSA9PT0gZmlsZVVyaSB8fFxuICAgICAgICAgICAgICAgIHcubXA0Zm9ybWF0ID09PSBmaWxlVXJpO1xuICAgICAgICAgICAgaWYgKCFib3VuZCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh3Lm5hdGl2ZUVsZW1lbnQgJiYgdy5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09ICdJTUcnKSB7XG4gICAgICAgICAgICAgICAgdy5waWN0dXJlc291cmNlID0gZGF0YVVybDtcbiAgICAgICAgICAgICAgICB3Lm5hdGl2ZUVsZW1lbnQuc3JjID0gZGF0YVVybDtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodHlwZW9mIHcubXA0Zm9ybWF0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIHcubXA0Zm9ybWF0ID0gZGF0YVVybDtcbiAgICAgICAgICAgICAgICBjb25zdCBlbCA9XG4gICAgICAgICAgICAgICAgICAgIHcubmF0aXZlRWxlbWVudCAmJlxuICAgICAgICAgICAgICAgICAgICAody5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvJykgfHwgdy5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoZWwgJiYgZWwudGFnTmFtZSA9PT0gJ1ZJREVPJykge1xuICAgICAgICAgICAgICAgICAgICBlbC5zcmMgPSBkYXRhVXJsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVNb2RlbCgkZXZlbnQsIHZhbHVlKSB7XG4gICAgICAgIHZhbHVlID0gKHZhbHVlLnN0YXJ0c1dpdGgoJ2ZpbGU6Ly8nKSA/ICcnIDogJ2ZpbGU6Ly8nKSArIHZhbHVlO1xuICAgICAgICBjb25zdCBmaWxlVXJpID0gdmFsdWU7XG4gICAgICAgIHRoaXMubG9jYWxGaWxlUGF0aCA9IHRoaXMuZGF0YXZhbHVlID0gZmlsZVVyaTtcbiAgICAgICAgY29udmVydFRvQmxvYihmaWxlVXJpKVxuICAgICAgICAgICAgLnRoZW4ocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvY2FsRmlsZSA9IHJlc3VsdC5ibG9iO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICAgICAgICAgICAgcmVhZGVyLm9ubG9hZGVuZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHBseUNhcHR1cmVQcmV2aWV3KHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzdWNjZXNzJywge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxGaWxlUGF0aDogZmlsZVVyaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsRmlsZTogdGhpcy5sb2NhbEZpbGVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICByZWFkZXIub25lcnJvciA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzdWNjZXNzJywge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxGaWxlUGF0aDogZmlsZVVyaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsRmlsZTogdGhpcy5sb2NhbEZpbGVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChyZXN1bHQuYmxvYik7XG4gICAgICAgICAgICB9LCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NhbEZpbGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8aSBbbmdDbGFzc109XCJpY29uY2xhc3NcIiBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6IGljb25zaXplfVwiPjwvaT4iXX0=
@@ -84,13 +84,71 @@ class CameraComponent extends StylableComponent {
84
84
  this.invokeEventCallback('success', { $event });
85
85
  }
86
86
  }
87
+ /**
88
+ * CA15: HTTPS WebView cannot show file:// in <img>/<video>.
89
+ * widgets bound to this camera's localFilePath.
90
+ */
91
+ applyCapturePreview(dataUrl) {
92
+ const widgets = this.viewParent && this.viewParent.Widgets;
93
+ if (!dataUrl || !widgets) {
94
+ return;
95
+ }
96
+ const name = this.name;
97
+ const fileUri = this.localFilePath;
98
+ Object.keys(widgets).forEach((key) => {
99
+ const w = widgets[key];
100
+ if (!w || !w.$attrs) {
101
+ return;
102
+ }
103
+ const picBind = w.$attrs.get('picturesource.bind') || '';
104
+ const vidBind = w.$attrs.get('mp4format.bind') || '';
105
+ const bound = (name &&
106
+ (picBind.indexOf(name + '.localFilePath') >= 0 ||
107
+ vidBind.indexOf(name + '.localFilePath') >= 0)) ||
108
+ w.picturesource === fileUri ||
109
+ w.mp4format === fileUri;
110
+ if (!bound) {
111
+ return;
112
+ }
113
+ if (w.nativeElement && w.nativeElement.tagName === 'IMG') {
114
+ w.picturesource = dataUrl;
115
+ w.nativeElement.src = dataUrl;
116
+ return;
117
+ }
118
+ if (typeof w.mp4format !== 'undefined') {
119
+ w.mp4format = dataUrl;
120
+ const el = w.nativeElement &&
121
+ (w.nativeElement.querySelector('video') || w.nativeElement);
122
+ if (el && el.tagName === 'VIDEO') {
123
+ el.src = dataUrl;
124
+ }
125
+ }
126
+ });
127
+ }
87
128
  updateModel($event, value) {
88
129
  value = (value.startsWith('file://') ? '' : 'file://') + value;
89
- this.localFilePath = this.datavalue = value;
90
- convertToBlob(value)
130
+ const fileUri = value;
131
+ this.localFilePath = this.datavalue = fileUri;
132
+ convertToBlob(fileUri)
91
133
  .then(result => {
92
134
  this.localFile = result.blob;
93
- this.invokeEventCallback('success', { $event, localFilePath: this.localFilePath, localFile: this.localFile });
135
+ const reader = new FileReader();
136
+ reader.onloadend = () => {
137
+ this.applyCapturePreview(reader.result);
138
+ this.invokeEventCallback('success', {
139
+ $event,
140
+ localFilePath: fileUri,
141
+ localFile: this.localFile
142
+ });
143
+ };
144
+ reader.onerror = () => {
145
+ this.invokeEventCallback('success', {
146
+ $event,
147
+ localFilePath: fileUri,
148
+ localFile: this.localFile
149
+ });
150
+ };
151
+ reader.readAsDataURL(result.blob);
94
152
  }, () => {
95
153
  this.localFile = undefined;
96
154
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/device/camera/src/camera.props.ts","../../../../../../projects/mobile/components/device/camera/src/camera.component.ts","../../../../../../projects/mobile/components/device/camera/src/camera.component.html","../../../../../../projects/mobile/components/device/camera/src/camera.module.ts","../../../../../../projects/mobile/components/device/camera/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-camera',\n new Map(\n [\n ['allowedit', {value: false, ...PROP_BOOLEAN}],\n ['capturetype', {value: 'IMAGE', ...PROP_STRING}],\n ['caption', {value: '', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['correctorientation', {value: false, ...PROP_BOOLEAN}],\n ['datavalue', {value: '', ...PROP_STRING}],\n ['iconclass', {value: 'wm-sl-l sl-camera', ...PROP_STRING}],\n ['iconsize', {value: '2em', ...PROP_STRING}],\n ['imagequality', {value: 80, ...PROP_NUMBER}],\n ['imageencodingtype', {value: 'JPEG', ...PROP_STRING}],\n ['imagetargetwidth', PROP_NUMBER],\n ['imagetargetheight', PROP_NUMBER],\n ['localFile', {value: '', ...PROP_STRING}],\n ['localFilePath', {value: '', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['savetogallery', {value: false, ...PROP_BOOLEAN}],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING]\n ]\n )\n );\n};\n","import {ChangeDetectorRef, Component, ElementRef, HostListener, Inject, Injector, Optional} from '@angular/core';\n\nimport { Camera } from '@awesome-cordova-plugins/camera/ngx';\nimport { MediaCapture } from '@awesome-cordova-plugins/media-capture/ngx';\n\nimport { APPLY_STYLES_TYPE, IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport {convertToBlob, hasCordova} from '@wm/core';\n\nimport { registerProps } from './camera.props';\n\nconst DEFAULT_CLS = 'btn app-camera';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-camera', hostClass: DEFAULT_CLS};\n\nexport enum CAPTURE_TYPE {\n IMAGE = 'IMAGE',\n PNG = 'PNG'\n}\n\nexport enum ENCODING_TYPE {\n JPEG = 'JPEG',\n PNG = 'PNG'\n}\n\n@Component({\n selector: 'button[wmCamera]',\n templateUrl: './camera.component.html',\n providers: [\n provideAsWidgetRef(CameraComponent)\n ],\n exportAs: 'wmCamera'\n})\nexport class CameraComponent extends StylableComponent {\n static initializeProps = registerProps();\n public allowedit: boolean;\n public correctorientation: boolean;\n public capturetype: string;\n public datavalue: string;\n public imagequality: number;\n public imageencodingtype: string;\n public imagetargetwidth: number;\n public imagetargetheight: number;\n public localFile: any;\n public localFilePath: string;\n public savetogallery: boolean;\n public iconsize: any;\n public iconclass: any;\n\n private _cameraOptions: any;\n\n constructor(private camera: Camera, private mediaCapture: MediaCapture, inj: Injector, elRef: ElementRef, cdr: ChangeDetectorRef, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.SCROLLABLE_CONTAINER);\n }\n\n @HostListener('click', ['$event'])\n public openCamera($event) {\n if (hasCordova()) {\n if (this.capturetype === CAPTURE_TYPE.IMAGE) {\n this._cameraOptions = {\n quality : this.imagequality,\n destinationType : 1, // 0-data url,1- file url\n sourceType : 1, // only camera\n allowEdit : this.allowedit,\n correctOrientation: this.correctorientation,\n encodingType : this.imageencodingtype === ENCODING_TYPE.JPEG ? 0 : 1,\n saveToPhotoAlbum : this.savetogallery,\n targetWidth : this.imagetargetwidth,\n targetHeight : this.imagetargetheight\n };\n // start camera\n this.camera.getPicture(this._cameraOptions)\n .then(path => this.updateModel($event, path));\n } else {\n this._cameraOptions = {\n limit: 1\n };\n // start video capture\n this.mediaCapture.captureVideo(this._cameraOptions)\n .then(mediaFiles => this.updateModel($event, mediaFiles[0].fullPath));\n }\n } else {\n this.invokeEventCallback('success', {$event});\n }\n }\n\n private updateModel($event, value) {\n value = (value.startsWith('file://') ? '' : 'file://') + value;\n this.localFilePath = this.datavalue = value;\n convertToBlob(value)\n .then(result => {\n this.localFile = result.blob;\n this.invokeEventCallback('success', {$event, localFilePath: this.localFilePath, localFile: this.localFile});\n }, () => {\n this.localFile = undefined;\n });\n }\n}\n","<i [ngClass]=\"iconclass\" [ngStyle]=\"{'font-size': iconsize}\"></i>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { CameraComponent } from './camera.component';\n\nconst components = [\n CameraComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class CameraModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../projects/mobile/components/device/camera/src/camera.props.ts","../../../../../../projects/mobile/components/device/camera/src/camera.component.ts","../../../../../../projects/mobile/components/device/camera/src/camera.component.html","../../../../../../projects/mobile/components/device/camera/src/camera.module.ts","../../../../../../projects/mobile/components/device/camera/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-camera',\n new Map(\n [\n ['allowedit', {value: false, ...PROP_BOOLEAN}],\n ['capturetype', {value: 'IMAGE', ...PROP_STRING}],\n ['caption', {value: '', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['correctorientation', {value: false, ...PROP_BOOLEAN}],\n ['datavalue', {value: '', ...PROP_STRING}],\n ['iconclass', {value: 'wm-sl-l sl-camera', ...PROP_STRING}],\n ['iconsize', {value: '2em', ...PROP_STRING}],\n ['imagequality', {value: 80, ...PROP_NUMBER}],\n ['imageencodingtype', {value: 'JPEG', ...PROP_STRING}],\n ['imagetargetwidth', PROP_NUMBER],\n ['imagetargetheight', PROP_NUMBER],\n ['localFile', {value: '', ...PROP_STRING}],\n ['localFilePath', {value: '', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['savetogallery', {value: false, ...PROP_BOOLEAN}],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING]\n ]\n )\n );\n};\n","import {ChangeDetectorRef, Component, ElementRef, HostListener, Inject, Injector, Optional} from '@angular/core';\n\nimport { Camera } from '@awesome-cordova-plugins/camera/ngx';\nimport { MediaCapture } from '@awesome-cordova-plugins/media-capture/ngx';\n\nimport { APPLY_STYLES_TYPE, IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport {convertToBlob, hasCordova} from '@wm/core';\n\nimport { registerProps } from './camera.props';\n\nconst DEFAULT_CLS = 'btn app-camera';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-camera', hostClass: DEFAULT_CLS};\n\nexport enum CAPTURE_TYPE {\n IMAGE = 'IMAGE',\n PNG = 'PNG'\n}\n\nexport enum ENCODING_TYPE {\n JPEG = 'JPEG',\n PNG = 'PNG'\n}\n\n@Component({\n selector: 'button[wmCamera]',\n templateUrl: './camera.component.html',\n providers: [\n provideAsWidgetRef(CameraComponent)\n ],\n exportAs: 'wmCamera'\n})\nexport class CameraComponent extends StylableComponent {\n static initializeProps = registerProps();\n public allowedit: boolean;\n public correctorientation: boolean;\n public capturetype: string;\n public datavalue: string;\n public imagequality: number;\n public imageencodingtype: string;\n public imagetargetwidth: number;\n public imagetargetheight: number;\n public localFile: any;\n public localFilePath: string;\n public savetogallery: boolean;\n public iconsize: any;\n public iconclass: any;\n public name: string;\n\n private _cameraOptions: any;\n\n constructor(private camera: Camera, private mediaCapture: MediaCapture, inj: Injector, elRef: ElementRef, cdr: ChangeDetectorRef, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.SCROLLABLE_CONTAINER);\n }\n\n @HostListener('click', ['$event'])\n public openCamera($event) {\n if (hasCordova()) {\n if (this.capturetype === CAPTURE_TYPE.IMAGE) {\n this._cameraOptions = {\n quality : this.imagequality,\n destinationType : 1, // 0-data url,1- file url\n sourceType : 1, // only camera\n allowEdit : this.allowedit,\n correctOrientation: this.correctorientation,\n encodingType : this.imageencodingtype === ENCODING_TYPE.JPEG ? 0 : 1,\n saveToPhotoAlbum : this.savetogallery,\n targetWidth : this.imagetargetwidth,\n targetHeight : this.imagetargetheight\n };\n // start camera\n this.camera.getPicture(this._cameraOptions)\n .then(path => this.updateModel($event, path));\n } else {\n this._cameraOptions = {\n limit: 1\n };\n // start video capture\n this.mediaCapture.captureVideo(this._cameraOptions)\n .then(mediaFiles => this.updateModel($event, mediaFiles[0].fullPath));\n }\n } else {\n this.invokeEventCallback('success', {$event});\n }\n }\n\n /**\n * CA15: HTTPS WebView cannot show file:// in <img>/<video>.\n * widgets bound to this camera's localFilePath.\n */\n private applyCapturePreview(dataUrl: string) {\n const widgets = this.viewParent && (this.viewParent as any).Widgets;\n if (!dataUrl || !widgets) {\n return;\n }\n const name = this.name;\n const fileUri = this.localFilePath;\n Object.keys(widgets).forEach((key) => {\n const w = widgets[key];\n if (!w || !w.$attrs) {\n return;\n }\n const picBind = w.$attrs.get('picturesource.bind') || '';\n const vidBind = w.$attrs.get('mp4format.bind') || '';\n const bound =\n (name &&\n (picBind.indexOf(name + '.localFilePath') >= 0 ||\n vidBind.indexOf(name + '.localFilePath') >= 0)) ||\n w.picturesource === fileUri ||\n w.mp4format === fileUri;\n if (!bound) {\n return;\n }\n if (w.nativeElement && w.nativeElement.tagName === 'IMG') {\n w.picturesource = dataUrl;\n w.nativeElement.src = dataUrl;\n return;\n }\n if (typeof w.mp4format !== 'undefined') {\n w.mp4format = dataUrl;\n const el =\n w.nativeElement &&\n (w.nativeElement.querySelector('video') || w.nativeElement);\n if (el && el.tagName === 'VIDEO') {\n el.src = dataUrl;\n }\n }\n });\n }\n\n private updateModel($event, value) {\n value = (value.startsWith('file://') ? '' : 'file://') + value;\n const fileUri = value;\n this.localFilePath = this.datavalue = fileUri;\n convertToBlob(fileUri)\n .then(result => {\n this.localFile = result.blob;\n const reader = new FileReader();\n reader.onloadend = () => {\n this.applyCapturePreview(reader.result as string);\n this.invokeEventCallback('success', {\n $event,\n localFilePath: fileUri,\n localFile: this.localFile\n });\n };\n reader.onerror = () => {\n this.invokeEventCallback('success', {\n $event,\n localFilePath: fileUri,\n localFile: this.localFile\n });\n };\n reader.readAsDataURL(result.blob);\n }, () => {\n this.localFile = undefined;\n });\n }\n}\n","<i [ngClass]=\"iconclass\" [ngStyle]=\"{'font-size': iconsize}\"></i>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { CameraComponent } from './camera.component';\n\nconst components = [\n CameraComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class CameraModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-ng-runtime",
3
- "version": "11.9.1-6.647649",
3
+ "version": "11.9.1-6.647654",
4
4
  "description": "All modules required for a wavemaker application.",
5
5
  "main": "index.js",
6
6
  "scripts": {