@dotglitch/ngx-common 1.0.15 → 1.0.17

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.
@@ -26,6 +26,7 @@ export * from './services/dependency.service';
26
26
  export * from './services/dialog.service';
27
27
  export * from './services/fetch.service';
28
28
  export * from './services/keyboard.service';
29
+ export * from './services/file.service';
29
30
  // export * from './services/serviceworker.service';
30
31
  /**
31
32
  ** Lazy loader component & service
@@ -41,4 +42,4 @@ export * from './components/dynamic-html/dynamic-html.service';
41
42
  export * from './components/dynamic-html/dynamic-html.module';
42
43
  export * from './components/dynamic-html/dynamic-html.component';
43
44
  export * from './components/dynamic-html/types';
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBQ0gsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxlQUFlLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFFeEM7O0VBRUU7QUFDRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLG9EQUFvRDtBQUVwRDs7RUFFRTtBQUNGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsZ0NBQWdDLENBQUM7QUFFL0M7O0VBRUU7QUFDRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwYWNrYWdlXG4gKi9cblxuLyoqXG4gKiogVHlwZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvcG9wdXAnO1xuXG4vKipcbiAqKiBEaXJlY3RpdmVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqKiBQaXBlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2h0bWwtYnlwYXNzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9yZXNvdXJjZS1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3NjcmlwdC1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3N0eWxlLWJ5cGFzcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvdXJsLWJ5cGFzcy5waXBlJztcblxuLyoqXG4qKiBTZXJ2aWNlc1xuKi9cbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGVwZW5kZW5jeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9mZXRjaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG4vLyBleHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3NlcnZpY2V3b3JrZXIuc2VydmljZSc7XG5cbi8qKlxuKiogTGF6eSBsb2FkZXIgY29tcG9uZW50ICYgc2VydmljZVxuKi9cbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sYXp5LWxvYWRlci9sYXp5LWxvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sYXp5LWxvYWRlci9sYXp5LWxvYWRlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2xhenktbG9hZGVyL2xhenktbG9hZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvdHlwZXMnO1xuXG4vKipcbioqIFNlcnZpY2VzXG4qL1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtaHRtbC9keW5hbWljLWh0bWwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL2R5bmFtaWMtaHRtbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtaHRtbC9keW5hbWljLWh0bWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvdHlwZXMnO1xuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBQ0gsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxlQUFlLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFFeEM7O0VBRUU7QUFDRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsb0RBQW9EO0FBRXBEOztFQUVFO0FBQ0YsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUUvQzs7RUFFRTtBQUNGLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsaUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHBhY2thZ2VcbiAqL1xuXG4vKipcbiAqKiBUeXBlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL21lbnUnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9wb3B1cCc7XG5cbi8qKlxuICoqIERpcmVjdGl2ZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9tZW51LmRpcmVjdGl2ZSc7XG5cbi8qKlxuICoqIFBpcGVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvaHRtbC1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3Jlc291cmNlLWJ5cGFzcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvc2NyaXB0LWJ5cGFzcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvc3R5bGUtYnlwYXNzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy91cmwtYnlwYXNzLnBpcGUnO1xuXG4vKipcbioqIFNlcnZpY2VzXG4qL1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9kZXBlbmRlbmN5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2ZldGNoLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZmlsZS5zZXJ2aWNlJztcbi8vIGV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvc2VydmljZXdvcmtlci5zZXJ2aWNlJztcblxuLyoqXG4qKiBMYXp5IGxvYWRlciBjb21wb25lbnQgJiBzZXJ2aWNlXG4qL1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2xhenktbG9hZGVyL2xhenktbG9hZGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2xhenktbG9hZGVyL2xhenktbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvbGF6eS1sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sYXp5LWxvYWRlci90eXBlcyc7XG5cbi8qKlxuKiogU2VydmljZXNcbiovXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL2R5bmFtaWMtaHRtbC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL2R5bmFtaWMtaHRtbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtaHRtbC90eXBlcyc7XG4iXX0=
@@ -10,9 +10,12 @@ export class DialogService {
10
10
  this.lazyLoader = lazyLoader;
11
11
  this.dialogs = [];
12
12
  }
13
- open(name, opts = {}) {
13
+ open(name, groupOrOptions, opts = {}) {
14
+ const group = typeof groupOrOptions == "string" ? groupOrOptions : 'default';
15
+ if (typeof groupOrOptions == 'object')
16
+ opts = groupOrOptions;
14
17
  return new Promise((resolve, reject) => {
15
- const registration = this.lazyLoader.resolveRegistrationEntry(name, opts.group || "default");
18
+ const registration = this.lazyLoader.resolveRegistrationEntry(name, group);
16
19
  if (!registration)
17
20
  return reject(new Error("Cannot open dialog for " + name + ". Could not find in registry."));
18
21
  const args = {
@@ -25,7 +28,7 @@ export class DialogService {
25
28
  id: name,
26
29
  inputs: opts.inputs || {},
27
30
  outputs: opts.outputs || {},
28
- group: opts.group
31
+ group: group
29
32
  },
30
33
  panelClass: [
31
34
  "dialog-" + name,
@@ -63,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
63
66
  providedIn: 'root'
64
67
  }]
65
68
  }], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: i2.LazyLoaderService }]; } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL3NlcnZpY2VzL2RpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQUdsQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBMEI5RCxNQUFNLE9BQU8sYUFBYTtJQUl0QixZQUNZLE1BQWlCLEVBQ2pCLFVBQTZCO1FBRDdCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFKakMsWUFBTyxHQUFpQyxFQUFFLENBQUM7SUFNbkQsQ0FBQztJQUVELElBQUksQ0FBQyxJQUFZLEVBQUUsT0FBc0IsRUFBRTtRQUN2QyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBRW5DLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsd0JBQXdCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxDQUFDLENBQUM7WUFDN0YsSUFBSSxDQUFDLFlBQVk7Z0JBQ2IsT0FBTyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMseUJBQXlCLEdBQUcsSUFBSSxHQUFHLCtCQUErQixDQUFDLENBQUMsQ0FBQztZQUdqRyxNQUFNLElBQUksR0FBRztnQkFDVCxpQkFBaUIsRUFBRSxJQUFJO2dCQUN2QixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsS0FBSyxFQUFFLFlBQVksQ0FBQyxPQUFPLENBQUM7Z0JBQzVCLE1BQU0sRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDO2dCQUM5QixHQUFHLElBQUk7Z0JBQ1AsSUFBSSxFQUFFO29CQUNGLEVBQUUsRUFBRSxJQUFJO29CQUNSLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUU7b0JBQ3pCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUU7b0JBQzNCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztpQkFDcEI7Z0JBQ0QsVUFBVSxFQUFFO29CQUNSLFNBQVMsR0FBRyxJQUFJO29CQUNoQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDbEY7YUFDSixDQUFDO1lBRUYsUUFBUTtZQUNSLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUUvQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRTFCLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3BDLEdBQUcsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ3JDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxLQUFLLENBQUMsSUFBWTtRQUNkLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQzNELE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7MEdBN0RRLGFBQWE7OEdBQWIsYUFBYSxjQUZWLE1BQU07MkZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IExhenlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vcHVibGljLWFwaSc7XG5cbmNvbnN0IHsgbG9nLCB3YXJuLCBlcnIgfSA9IExvZ2dlcihcIkRpYWxvZ1NlcnZpY2VcIiwgXCIjNjA3ZDhiXCIpO1xuXG5leHBvcnQgdHlwZSBEaWFsb2dPcHRpb25zID0gUGFydGlhbDxPbWl0PE1hdERpYWxvZ0NvbmZpZzxhbnk+LCAnZGF0YSc+ICYge1xuICAgIC8qKlxuICAgICAqXG4gICAgICovXG4gICAgZ3JvdXA6IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgcHJvcGVydGllcyB0byBiZSBwcm92aWRlZCB0byBASW5wdXQoKSBpbmplY3RvcnNcbiAgICAgKi9cbiAgICBpbnB1dHM6IHsgW2tleTogc3RyaW5nXTogYW55IH0sXG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBwcm9wZXJ0aWVzIHRvIGJlIHByb3ZpZGVkIHRvIEBJbnB1dCgpIGluamVjdG9yc1xuICAgICAqL1xuICAgIG91dHB1dHM6IHsgW2tleTogc3RyaW5nXTogRnVuY3Rpb24gfSxcbiAgICAvKipcbiAgICAgKiBDb250ZXh0IGluIHdoaWNoIHRvIGV4ZWN1dGUgY2FsbGJhY2tzIGZyb20gdGhlIGBvdXRwdXRzYCBwcm9wZXJ0eSB2aWFcbiAgICAgKiBAT3V0cHV0KCkgZXZlbnQgRW1pdHRlcnNcbiAgICAgKi9cbiAgICBwYXJlbnQ6IGFueVxufT47XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGlhbG9nU2VydmljZSB7XG5cbiAgICBwcml2YXRlIGRpYWxvZ3M6IE1hdERpYWxvZ1JlZjx1bmtub3duLCBhbnk+W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICBwcml2YXRlIGxhenlMb2FkZXI6IExhenlMb2FkZXJTZXJ2aWNlXG4gICAgKSB7XG4gICAgfVxuXG4gICAgb3BlbihuYW1lOiBzdHJpbmcsIG9wdHM6IERpYWxvZ09wdGlvbnMgPSB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IHRoaXMubGF6eUxvYWRlci5yZXNvbHZlUmVnaXN0cmF0aW9uRW50cnkobmFtZSwgb3B0cy5ncm91cCB8fCBcImRlZmF1bHRcIik7XG4gICAgICAgICAgICBpZiAoIXJlZ2lzdHJhdGlvbilcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBFcnJvcihcIkNhbm5vdCBvcGVuIGRpYWxvZyBmb3IgXCIgKyBuYW1lICsgXCIuIENvdWxkIG5vdCBmaW5kIGluIHJlZ2lzdHJ5LlwiKSk7XG5cblxuICAgICAgICAgICAgY29uc3QgYXJncyA9IHtcbiAgICAgICAgICAgICAgICBjbG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICByZXN0b3JlRm9jdXM6IHRydWUsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlZ2lzdHJhdGlvblsnd2lkdGgnXSxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlZ2lzdHJhdGlvblsnaGVpZ2h0J10sXG4gICAgICAgICAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBuYW1lLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dHM6IG9wdHMuaW5wdXRzIHx8IHt9LFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRzOiBvcHRzLm91dHB1dHMgfHwge30sXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwOiBvcHRzLmdyb3VwXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYW5lbENsYXNzOiBbXG4gICAgICAgICAgICAgICAgICAgIFwiZGlhbG9nLVwiICsgbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgLi4uKEFycmF5LmlzQXJyYXkob3B0cy5wYW5lbENsYXNzKSA/IG9wdHMucGFuZWxDbGFzcyA6IFtvcHRzLnBhbmVsQ2xhc3NdIHx8IFtdKVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIC8vIFRPRE86XG4gICAgICAgICAgICBsZXQgZGlhbG9nID0gdGhpcy5kaWFsb2cub3Blbih1bmRlZmluZWQsIGFyZ3MpO1xuXG4gICAgICAgICAgICBkaWFsb2dbJ2lkeCddID0gbmFtZTtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9ncy5wdXNoKGRpYWxvZyk7XG5cbiAgICAgICAgICAgIGRpYWxvZy5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGxvZyhcIkRpYWxvZyBjbG9zZWQgXCIgKyBuYW1lLCByZXN1bHQpO1xuICAgICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBDbG9zZSBhbGwgZGlhbG9ncyBtYXRjaGluZyB0aGUgZ2l2ZW4gbmFtZVxuICAgIGNsb3NlKG5hbWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCBkaWFsb2dzID0gdGhpcy5kaWFsb2dzLmZpbHRlcihkID0+IGRbJ2lkeCddID09IG5hbWUpO1xuICAgICAgICBkaWFsb2dzLmZvckVhY2goZGlhbG9nID0+IGRpYWxvZy5jbG9zZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgdG8gY2xvc2UgX2FsbF8gZGlhbG9ncy5cbiAgICAgKiBTaG91bGQgYmUgdXNlZCBzcGFyaW5nbHkuXG4gICAgICovXG4gICAgY2xlYXJEaWFsb2coKSB7XG4gICAgICAgIHRoaXMuZGlhbG9ncy5mb3JFYWNoKGRpYWxvZyA9PiBkaWFsb2cuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbiBhIGNvbmZpcm1hdGlvbiBkaWFsb2cuIFdpbGwgcmVqZWN0IGlmIGEgY2FuY2VsIG9jY3Vycy5cbiAgICAgKiBAcGFyYW0gdGl0bGUgdGl0bGUgb2YgdGhlIGRpYWxvZ1xuICAgICAqIEBwYXJhbSBtZXNzYWdlIG1haW4gcXVlc3Rpb24gdGhhdCBhIHVzZXIgbmVlZHMgdG8gY29uZmlybS9kZW55XG4gICAgICogQHJldHVybnNcbiAgICAgKi9cbiAgICAvLyBjb25maXJtQWN0aW9uKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiB7XG4gICAgLy8gICAgICAgICBjb25zdCBkaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuKENvbmZpcm1hdGlvbkNvbXBvbmVudCwge1xuICAgIC8vICAgICAgICAgICAgIG1heEhlaWdodDogXCI5MHZoXCIsXG4gICAgLy8gICAgICAgICAgICAgbWF4V2lkdGg6IFwiOTB2d1wiLFxuICAgIC8vICAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFtcImRpYWxvZy1jb25maXJtYXRpb25cIl0sXG4gICAgLy8gICAgICAgICAgICAgY2xvc2VPbk5hdmlnYXRpb246IHRydWUsXG4gICAgLy8gICAgICAgICAgICAgcmVzdG9yZUZvY3VzOiB0cnVlLFxuICAgIC8vICAgICAgICAgICAgIGRhdGE6IHt0aXRsZSwgbWVzc2FnZX1cbiAgICAvLyAgICAgICAgIH0pO1xuXG4gICAgLy8gICAgICAgICBkaWFsb2cuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAvLyAgICAgICAgICAgICByZXN1bHQgPT0gdHJ1ZSA/IHJlcygpIDogcmVqKCk7XG4gICAgLy8gICAgICAgICB9KTtcbiAgICAvLyAgICAgfSk7XG4gICAgLy8gfVxufVxuIl19
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL3NlcnZpY2VzL2RpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQUdsQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBcUI5RCxNQUFNLE9BQU8sYUFBYTtJQUl0QixZQUNZLE1BQWlCLEVBQ2pCLFVBQTZCO1FBRDdCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFKakMsWUFBTyxHQUFpQyxFQUFFLENBQUM7SUFNbkQsQ0FBQztJQU1ELElBQUksQ0FBQyxJQUFZLEVBQUUsY0FBb0IsRUFBRSxPQUFzQixFQUFFO1FBQzdELE1BQU0sS0FBSyxHQUFHLE9BQU8sY0FBYyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDN0UsSUFBSSxPQUFPLGNBQWMsSUFBSSxRQUFRO1lBQ2pDLElBQUksR0FBRyxjQUFjLENBQUM7UUFFMUIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUVuQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLHdCQUF3QixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzRSxJQUFJLENBQUMsWUFBWTtnQkFDYixPQUFPLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLEdBQUcsK0JBQStCLENBQUMsQ0FBQyxDQUFDO1lBR2pHLE1BQU0sSUFBSSxHQUFHO2dCQUNULGlCQUFpQixFQUFFLElBQUk7Z0JBQ3ZCLFlBQVksRUFBRSxJQUFJO2dCQUNsQixLQUFLLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQztnQkFDNUIsTUFBTSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUM7Z0JBQzlCLEdBQUcsSUFBSTtnQkFDUCxJQUFJLEVBQUU7b0JBQ0YsRUFBRSxFQUFFLElBQUk7b0JBQ1IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRTtvQkFDekIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRTtvQkFDM0IsS0FBSyxFQUFFLEtBQUs7aUJBQ2Y7Z0JBQ0QsVUFBVSxFQUFFO29CQUNSLFNBQVMsR0FBRyxJQUFJO29CQUNoQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDbEY7YUFDSixDQUFDO1lBRUYsUUFBUTtZQUNSLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUUvQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRTFCLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3BDLEdBQUcsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ3JDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxLQUFLLENBQUMsSUFBWTtRQUNkLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQzNELE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7MEdBckVRLGFBQWE7OEdBQWIsYUFBYSxjQUZWLE1BQU07MkZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IExhenlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vcHVibGljLWFwaSc7XG5cbmNvbnN0IHsgbG9nLCB3YXJuLCBlcnIgfSA9IExvZ2dlcihcIkRpYWxvZ1NlcnZpY2VcIiwgXCIjNjA3ZDhiXCIpO1xuXG5leHBvcnQgdHlwZSBEaWFsb2dPcHRpb25zID0gUGFydGlhbDxPbWl0PE1hdERpYWxvZ0NvbmZpZzxhbnk+LCAnZGF0YSc+ICYge1xuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgcHJvcGVydGllcyB0byBiZSBwcm92aWRlZCB0byBASW5wdXQoKSBpbmplY3RvcnNcbiAgICAgKi9cbiAgICBpbnB1dHM6IHsgW2tleTogc3RyaW5nXTogYW55IH0sXG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBwcm9wZXJ0aWVzIHRvIGJlIHByb3ZpZGVkIHRvIEBJbnB1dCgpIGluamVjdG9yc1xuICAgICAqL1xuICAgIG91dHB1dHM6IHsgW2tleTogc3RyaW5nXTogRnVuY3Rpb24gfSxcbiAgICAvKipcbiAgICAgKiBDb250ZXh0IGluIHdoaWNoIHRvIGV4ZWN1dGUgY2FsbGJhY2tzIGZyb20gdGhlIGBvdXRwdXRzYCBwcm9wZXJ0eSB2aWFcbiAgICAgKiBAT3V0cHV0KCkgZXZlbnQgRW1pdHRlcnNcbiAgICAgKi9cbiAgICBwYXJlbnQ6IGFueVxufT47XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGlhbG9nU2VydmljZSB7XG5cbiAgICBwcml2YXRlIGRpYWxvZ3M6IE1hdERpYWxvZ1JlZjx1bmtub3duLCBhbnk+W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICBwcml2YXRlIGxhenlMb2FkZXI6IExhenlMb2FkZXJTZXJ2aWNlXG4gICAgKSB7XG4gICAgfVxuXG4gICAgb3BlbihuYW1lOiBzdHJpbmcpXG4gICAgb3BlbihuYW1lOiBzdHJpbmcsIG9wdHM6IERpYWxvZ09wdGlvbnMpXG4gICAgb3BlbihuYW1lOiBzdHJpbmcsIGdyb3VwOiBzdHJpbmcpXG4gICAgb3BlbihuYW1lOiBzdHJpbmcsIGdyb3VwOiBzdHJpbmcsIG9wdHM6IERpYWxvZ09wdGlvbnMpXG4gICAgb3BlbihuYW1lOiBzdHJpbmcsIGdyb3VwT3JPcHRpb25zPzogYW55LCBvcHRzOiBEaWFsb2dPcHRpb25zID0ge30pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBncm91cCA9IHR5cGVvZiBncm91cE9yT3B0aW9ucyA9PSBcInN0cmluZ1wiID8gZ3JvdXBPck9wdGlvbnMgOiAnZGVmYXVsdCc7XG4gICAgICAgIGlmICh0eXBlb2YgZ3JvdXBPck9wdGlvbnMgPT0gJ29iamVjdCcpXG4gICAgICAgICAgICBvcHRzID0gZ3JvdXBPck9wdGlvbnM7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcblxuICAgICAgICAgICAgY29uc3QgcmVnaXN0cmF0aW9uID0gdGhpcy5sYXp5TG9hZGVyLnJlc29sdmVSZWdpc3RyYXRpb25FbnRyeShuYW1lLCBncm91cCk7XG4gICAgICAgICAgICBpZiAoIXJlZ2lzdHJhdGlvbilcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBFcnJvcihcIkNhbm5vdCBvcGVuIGRpYWxvZyBmb3IgXCIgKyBuYW1lICsgXCIuIENvdWxkIG5vdCBmaW5kIGluIHJlZ2lzdHJ5LlwiKSk7XG5cblxuICAgICAgICAgICAgY29uc3QgYXJncyA9IHtcbiAgICAgICAgICAgICAgICBjbG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICByZXN0b3JlRm9jdXM6IHRydWUsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlZ2lzdHJhdGlvblsnd2lkdGgnXSxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlZ2lzdHJhdGlvblsnaGVpZ2h0J10sXG4gICAgICAgICAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBuYW1lLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dHM6IG9wdHMuaW5wdXRzIHx8IHt9LFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRzOiBvcHRzLm91dHB1dHMgfHwge30sXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwOiBncm91cFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcGFuZWxDbGFzczogW1xuICAgICAgICAgICAgICAgICAgICBcImRpYWxvZy1cIiArIG5hbWUsXG4gICAgICAgICAgICAgICAgICAgIC4uLihBcnJheS5pc0FycmF5KG9wdHMucGFuZWxDbGFzcykgPyBvcHRzLnBhbmVsQ2xhc3MgOiBbb3B0cy5wYW5lbENsYXNzXSB8fCBbXSlcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAvLyBUT0RPOlxuICAgICAgICAgICAgbGV0IGRpYWxvZyA9IHRoaXMuZGlhbG9nLm9wZW4odW5kZWZpbmVkLCBhcmdzKTtcblxuICAgICAgICAgICAgZGlhbG9nWydpZHgnXSA9IG5hbWU7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ3MucHVzaChkaWFsb2cpO1xuXG4gICAgICAgICAgICBkaWFsb2cuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICBsb2coXCJEaWFsb2cgY2xvc2VkIFwiICsgbmFtZSwgcmVzdWx0KTtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQ2xvc2UgYWxsIGRpYWxvZ3MgbWF0Y2hpbmcgdGhlIGdpdmVuIG5hbWVcbiAgICBjbG9zZShuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZGlhbG9ncyA9IHRoaXMuZGlhbG9ncy5maWx0ZXIoZCA9PiBkWydpZHgnXSA9PSBuYW1lKTtcbiAgICAgICAgZGlhbG9ncy5mb3JFYWNoKGRpYWxvZyA9PiBkaWFsb2cuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIHRvIGNsb3NlIF9hbGxfIGRpYWxvZ3MuXG4gICAgICogU2hvdWxkIGJlIHVzZWQgc3BhcmluZ2x5LlxuICAgICAqL1xuICAgIGNsZWFyRGlhbG9nKCkge1xuICAgICAgICB0aGlzLmRpYWxvZ3MuZm9yRWFjaChkaWFsb2cgPT4gZGlhbG9nLmNsb3NlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9wZW4gYSBjb25maXJtYXRpb24gZGlhbG9nLiBXaWxsIHJlamVjdCBpZiBhIGNhbmNlbCBvY2N1cnMuXG4gICAgICogQHBhcmFtIHRpdGxlIHRpdGxlIG9mIHRoZSBkaWFsb2dcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBtYWluIHF1ZXN0aW9uIHRoYXQgYSB1c2VyIG5lZWRzIHRvIGNvbmZpcm0vZGVueVxuICAgICAqIEByZXR1cm5zXG4gICAgICovXG4gICAgLy8gY29uZmlybUFjdGlvbih0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXMsIHJlaikgPT4ge1xuICAgIC8vICAgICAgICAgY29uc3QgZGlhbG9nID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtYXRpb25Db21wb25lbnQsIHtcbiAgICAvLyAgICAgICAgICAgICBtYXhIZWlnaHQ6IFwiOTB2aFwiLFxuICAgIC8vICAgICAgICAgICAgIG1heFdpZHRoOiBcIjkwdndcIixcbiAgICAvLyAgICAgICAgICAgICBwYW5lbENsYXNzOiBbXCJkaWFsb2ctY29uZmlybWF0aW9uXCJdLFxuICAgIC8vICAgICAgICAgICAgIGNsb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgIC8vICAgICAgICAgICAgIHJlc3RvcmVGb2N1czogdHJ1ZSxcbiAgICAvLyAgICAgICAgICAgICBkYXRhOiB7dGl0bGUsIG1lc3NhZ2V9XG4gICAgLy8gICAgICAgICB9KTtcblxuICAgIC8vICAgICAgICAgZGlhbG9nLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgLy8gICAgICAgICAgICAgcmVzdWx0ID09IHRydWUgPyByZXMoKSA6IHJlaigpO1xuICAgIC8vICAgICAgICAgfSk7XG4gICAgLy8gICAgIH0pO1xuICAgIC8vIH1cbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./fetch.service";
4
+ /**
5
+ * Service that listens for global keyboard events
6
+ */
7
+ export class FileService {
8
+ constructor(fetch) {
9
+ this.fetch = fetch;
10
+ this.chooseFile = (accept, multiple = false, formMetadata = {}) => {
11
+ return new Promise(r => {
12
+ const inEl = document.createElement('input');
13
+ inEl.setAttribute('type', 'file');
14
+ if (multiple)
15
+ inEl.setAttribute('multiple', '');
16
+ if (accept)
17
+ inEl.setAttribute('accept', accept);
18
+ inEl.click();
19
+ let formData = new FormData();
20
+ inEl.addEventListener('change', () => {
21
+ Object.keys(inEl.files).forEach(k => {
22
+ const file = inEl.files[k];
23
+ const name = file.name;
24
+ formData.append(name, file);
25
+ });
26
+ formData.append("data", JSON.stringify(formMetadata));
27
+ inEl.remove();
28
+ r(formData);
29
+ });
30
+ });
31
+ };
32
+ }
33
+ }
34
+ FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, deps: [{ token: i1.Fetch }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, providedIn: 'root' });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, decorators: [{
37
+ type: Injectable,
38
+ args: [{
39
+ providedIn: 'root'
40
+ }]
41
+ }], ctorParameters: function () { return [{ type: i1.Fetch }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9zZXJ2aWNlcy9maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLFdBQVc7SUFFcEIsWUFBb0IsS0FBWTtRQUFaLFVBQUssR0FBTCxLQUFLLENBQU87UUFFaEMsZUFBVSxHQUFHLENBQUMsTUFBZSxFQUFFLFFBQVEsR0FBRyxLQUFLLEVBQUUsWUFBWSxHQUFHLEVBQUUsRUFBSSxFQUFFO1lBQ3BFLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ25CLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLFFBQVE7b0JBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLElBQUksTUFBTTtvQkFDTixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFeEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUViLElBQUksUUFBUSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBRTlCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO29CQUNqQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQ2hDLE1BQU0sSUFBSSxHQU1OLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBRWxCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7d0JBQ3ZCLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQVcsQ0FBQyxDQUFDO29CQUN2QyxDQUFDLENBQUMsQ0FBQztvQkFDSCxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7b0JBQ3RELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ2hCLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7SUFqQ2tDLENBQUM7O3dHQUY1QixXQUFXOzRHQUFYLFdBQVcsY0FGUixNQUFNOzJGQUVULFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmV0Y2ggfSBmcm9tICcuL2ZldGNoLnNlcnZpY2UnO1xuXG5cbi8qKlxuICogU2VydmljZSB0aGF0IGxpc3RlbnMgZm9yIGdsb2JhbCBrZXlib2FyZCBldmVudHNcbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGaWxlU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZldGNoOiBGZXRjaCkgeyB9XG5cbiAgICBjaG9vc2VGaWxlID0gKGFjY2VwdD86IHN0cmluZywgbXVsdGlwbGUgPSBmYWxzZSwgZm9ybU1ldGFkYXRhID0ge30sICkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UociA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbkVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgICAgICAgIGluRWwuc2V0QXR0cmlidXRlKCd0eXBlJywgJ2ZpbGUnKTtcbiAgICAgICAgICAgIGlmIChtdWx0aXBsZSlcbiAgICAgICAgICAgICAgICBpbkVsLnNldEF0dHJpYnV0ZSgnbXVsdGlwbGUnLCAnJyk7XG4gICAgICAgICAgICBpZiAoYWNjZXB0KVxuICAgICAgICAgICAgICAgIGluRWwuc2V0QXR0cmlidXRlKCdhY2NlcHQnLCBhY2NlcHQpO1xuXG4gICAgICAgICAgICBpbkVsLmNsaWNrKCk7XG5cbiAgICAgICAgICAgIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICAgICAgICBpbkVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsICgpID0+IHtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhpbkVsLmZpbGVzKS5mb3JFYWNoKGsgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsYXN0TW9kaWZpZWQ6IG51bWJlcixcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RNb2RpZmllZERhdGU6IERhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplOiBudW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgIH0gPSBpbkVsLmZpbGVzW2tdO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBmaWxlLm5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChuYW1lLCBmaWxlIGFzIGFueSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgZm9ybURhdGEuYXBwZW5kKFwiZGF0YVwiLCBKU09OLnN0cmluZ2lmeShmb3JtTWV0YWRhdGEpKTtcbiAgICAgICAgICAgICAgICBpbkVsLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIHIoZm9ybURhdGEpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICAvLyB1cGxvYWRGaWxlID0gKGNvbmZpZzogTmd4RmlsZU1hbmFnZXJDb25maWd1cmF0aW9uLCBjdXJyZW50RGlyZWN0b3J5OiBzdHJpbmcsIHRhcmdldFBhdGg/OiBzdHJpbmcpID0+IHtcbiAgICAvLyAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHIgPT4ge1xuICAgIC8vICAgICAgICAgY29uc3QgaW5FbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgLy8gICAgICAgICBpbkVsLnNldEF0dHJpYnV0ZSgndHlwZScsICdmaWxlJyk7XG4gICAgLy8gICAgICAgICBpbkVsLnNldEF0dHJpYnV0ZSgnbXVsdGlwbGUnLCAnJyk7XG4gICAgLy8gICAgICAgICBpbkVsLmNsaWNrKCk7XG5cbiAgICAvLyAgICAgICAgIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgLy8gICAgICAgICBpbkVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsICgpID0+IHtcbiAgICAvLyAgICAgICAgICAgICBPYmplY3Qua2V5cyhpbkVsLmZpbGVzKS5mb3JFYWNoKGsgPT4ge1xuICAgIC8vICAgICAgICAgICAgICAgICBjb25zdCBmaWxlOiB7XG4gICAgLy8gICAgICAgICAgICAgICAgICAgICBsYXN0TW9kaWZpZWQ6IG51bWJlcixcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIGxhc3RNb2RpZmllZERhdGU6IERhdGUsXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICBzaXplOiBudW1iZXIsXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgLy8gICAgICAgICAgICAgICAgIH0gPSBpbkVsLmZpbGVzW2tdO1xuXG4gICAgLy8gICAgICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBmaWxlLm5hbWU7XG4gICAgLy8gICAgICAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChuYW1lLCBmaWxlIGFzIGFueSk7XG4gICAgLy8gICAgICAgICAgICAgfSk7XG4gICAgLy8gICAgICAgICAgICAgZm9ybURhdGEuYXBwZW5kKFwiZGF0YVwiLCBKU09OLnN0cmluZ2lmeSh7XG4gICAgLy8gICAgICAgICAgICAgICAgIHBhdGg6IGN1cnJlbnREaXJlY3RvcnlcbiAgICAvLyAgICAgICAgICAgICB9KSk7XG5cbiAgICAvLyAgICAgICAgICAgICBjb25zdCB1cmwgPSBjb25maWcuYXBpU2V0dGluZ3MudXBsb2FkRW50cnlVcmxUZW1wbGF0ZVxuICAgIC8vICAgICAgICAgICAgICAgICA/IGNvbmZpZy5hcGlTZXR0aW5ncy51cGxvYWRFbnRyeVVybFRlbXBsYXRlKHRhcmdldFBhdGggPz8gY3VycmVudERpcmVjdG9yeSlcbiAgICAvLyAgICAgICAgICAgICAgICAgOiBjb25maWcuYXBpU2V0dGluZ3MudXBsb2FkRW50cnlVcmw7XG5cbiAgICAvLyAgICAgICAgICAgICByKHRoaXMuZmV0Y2gucG9zdCh1cmwsIGZvcm1EYXRhKS50aGVuKHJlcyA9PiB7XG4gICAgLy8gICAgICAgICAgICAgICAgIGluRWwucmVtb3ZlKCk7XG4gICAgLy8gICAgICAgICAgICAgICAgIHJldHVybiByZXM7XG4gICAgLy8gICAgICAgICAgICAgfSkpO1xuICAgIC8vICAgICAgICAgfSk7XG4gICAgLy8gICAgIH0pO1xuICAgIC8vIH07XG59XG4iXX0=
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
125
125
  type: HostListener,
126
126
  args: ["window:resize"]
127
127
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvc2VydmljZXMva2V5Ym9hcmQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQXFCL0I7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZUFBZTtJQWN4QjtRQVpRLGFBQVEsR0FBK0IsRUFBRSxDQUFDO1FBQzNDLGdCQUFXLEdBU1osRUFBRSxDQUFDO1FBR0wsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sU0FBUyxDQUFDLEdBQWtCO1FBQ2hDLGtDQUFrQztRQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7UUFFNUMsOEVBQThFO1FBQzlFLDJEQUEyRDtRQUMzRCxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVzthQUMxQixNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FDVCxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksU0FBUyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUNqRCxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksU0FBUyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEtBQUss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QUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDWixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7T0FFRztJQUNILElBQUksY0FBYztRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNEOztPQUVHO0lBQ0gsSUFBSSxZQUFZO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBSUQsU0FBUztRQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OzRHQXRJUSxlQUFlO2dIQUFmLGVBQWUsY0FGWixNQUFNOzJGQUVULGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzBFQW1JRyxTQUFTO3NCQUZSLFlBQVk7dUJBQUMsYUFBYTs7c0JBQzFCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBLZXlDb21tYW5kID0ge1xuICAgIC8qKlxuICAgICAqIFRoZSBub24tbW9kaWZpZXIga2V5KHMpIHRoYXQgbXVzdCBiZSBwcmVzc2VkIGZvciB0aGUgZXZlbnQgdG8gZmlyZS5cbiAgICAgKi9cbiAgICBrZXk6IHN0cmluZyB8IHN0cmluZ1tdLFxuICAgIGxhYmVsOiBzdHJpbmcsXG5cbiAgICBjdHJsPzogYm9vbGVhbixcbiAgICBhbHQ/OiBib29sZWFuLFxuICAgIHNoaWZ0PzogYm9vbGVhbixcbiAgICBzdXBlcj86IGJvb2xlYW4sXG4gICAgdGFiPzogYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIFNob3VsZCB0aGUgaGFuZGxlciBpbnRlcnJ1cHQgZGVmYXVsdCBldmVudCBoYW5kbGluZ1xuICAgICAqL1xuICAgIGludGVycnVwdD86IGJvb2xlYW4sXG59XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGxpc3RlbnMgZm9yIGdsb2JhbCBrZXlib2FyZCBldmVudHNcbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBLZXlib2FyZFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSBoZWxkS2V5czogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPSB7fTtcbiAgICBwdWJsaWMga2V5Q29tbWFuZHM6IHtcbiAgICAgICAgY3RybD86IGJvb2xlYW4sXG4gICAgICAgIGFsdD86IGJvb2xlYW4sXG4gICAgICAgIHNoaWZ0PzogYm9vbGVhbixcbiAgICAgICAgc3VwZXI/OiBib29sZWFuLFxuICAgICAgICBpbnRlcnJ1cHQ/OiBib29sZWFuLFxuICAgICAgICBsYWJlbDogc3RyaW5nLFxuICAgICAgICBrZXlzOiBzdHJpbmdbXSxcbiAgICAgICAgc3ViOiBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+XG4gICAgfVtdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIChldnQpID0+IHRoaXMub25LZXlEb3duKGV2dCkpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImtleXVwXCIsIChldnQpID0+IHRoaXMub25LZXlVcChldnQpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJrZXlkb3duXCIsIGV2dC5rZXkpXG4gICAgICAgIHRoaXMuaGVsZEtleXNbZXZ0LmtleS50b0xvd2VyQ2FzZSgpXSA9IHRydWU7XG5cbiAgICAgICAgLy8gRG8gYSBnZW5lcmFsIGZpbHRlciB3aGVyZSBhbGwgb2YgdGhlIG1vZGlmaWVycyBtdXN0IGJlIG1hdGNoZWQgaWYgc3BlY2lmaWVkXG4gICAgICAgIC8vIFRoZW4gY2hlY2sgdGhhdCB0aGUgYWN0dWFsIGtleXMgbWF0Y2ggd2hhdCB3YXMgc3BlY2lmaWVkXG4gICAgICAgIGxldCBjb21tYW5kcyA9IHRoaXMua2V5Q29tbWFuZHNcbiAgICAgICAgICAgIC5maWx0ZXIoa2MgPT5cbiAgICAgICAgICAgICAgICAoa2MuY3RybCA9PSB1bmRlZmluZWQgfHwga2MuY3RybCA9PT0gZXZ0LmN0cmxLZXkpICYmXG4gICAgICAgICAgICAgICAgKGtjLmFsdCA9PSB1bmRlZmluZWQgfHwga2MuYWx0ID09PSBldnQuYWx0S2V5KSAmJlxuICAgICAgICAgICAgICAgIChrYy5zaGlmdCA9PSB1bmRlZmluZWQgfHwga2Muc2hpZnQgPT09IGV2dC5zaGlmdEtleSkgJiZcbiAgICAgICAgICAgICAgICAoa2Muc3VwZXIgPT0gdW5kZWZpbmVkIHx8IGtjLnN1cGVyID09PSBldnQubWV0YUtleSkgJiZcbiAgICAgICAgICAgICAgICBrYy5rZXlzLmxlbmd0aCA9PSBrYy5rZXlzLmZpbHRlcihrID0+IHRoaXMuaGVsZEtleXNba10pPy5sZW5ndGhcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgaWYgKGV2dC5jdHJsS2V5ICYmIGNvbW1hbmRzLmxlbmd0aCA+IDAgfHwgY29tbWFuZHMuZmluZChjID0+IGMuaW50ZXJydXB0KSkge1xuICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZ0LmtleSA9PSBcIlBhdXNlXCIpXG4gICAgICAgICAgICBkZWJ1Z2dlcjtcblxuICAgICAgICBjb21tYW5kcy5mb3JFYWNoKGtjID0+IGtjLnN1Yi5uZXh0KGV2dCkpO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQcmV2ZW50IENUUkwrUCBhbmQgb3RoZXIgc3RhbmRhcmQga2V5IGV2ZW50cyBmcm9tIGJlaW5nIGhhbmRsZWQgYnkgdGhlIGJyb3dzZXIuXG4gICAgICAgICAqIEFsbG93IHNwZWNpZmljIGNvbWJvbmF0aW9uczpcbiAgICAgICAgICogQ1RSTCtXXG4gICAgICAgICAqIENUUkwrVFxuICAgICAgICAgKiBDVFJMK0Y1XG4gICAgICAgICAqL1xuICAgICAgICAvLyBpZiAoZXZ0LmN0cmxLZXkgJiYgIVsndycsICd0JywgJ0Y1J10uaW5jbHVkZXMoZXZ0LmtleSkpIHtcbiAgICAgICAgLy8gICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbktleVVwKGV2dDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICB0aGlzLmhlbGRLZXlzW2V2dC5rZXkudG9Mb3dlckNhc2UoKV0gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uS2V5UHJlc3MoZXZ0OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIC8vIHRoaXMuaGVsZEtleXNbZXZ0LmtleV0gPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVc2UgdGhpcyB0byBzdWJzY3JpYmUgdG8ga2V5Ym9hcmQgZXZlbnRzIHRocm91Z2hvdXRcbiAgICAgKiB0aGUgYXBwbGljYXRpb24uIFRoaXMgaXMgYSBwYXNzaXZlIGxpc3RlbmVyIGFuZCB3aWxsXG4gICAgICogKipOT1QqKiBpbnRlcnJ1cHQgdGhlIGV2ZW50IGNoYWluLlxuICAgICAqL1xuICAgIHB1YmxpYyBvbktleUNvbW1hbmQoa2V5OiBLZXlDb21tYW5kKSB7XG4gICAgICAgIGNvbnN0IHN1YiA9IG5ldyBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+KCk7XG4gICAgICAgIGxldCBpdGVtID0ge1xuICAgICAgICAgICAgLi4ua2V5LFxuICAgICAgICAgICAga2V5czogKEFycmF5LmlzQXJyYXkoa2V5LmtleSkgPyBrZXkua2V5IDogW2tleS5rZXldKSxcbiAgICAgICAgICAgIHN1Yjogc3ViXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmtleUNvbW1hbmRzLnB1c2goaXRlbSk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnN1YixcbiAgICAgICAgICAgIHN1YnNjcmliZTogKCguLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcyA9IHN1Yi5zdWJzY3JpYmUoLi4uYXJncyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgLi4ucyxcbiAgICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmU6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHMudW5zdWJzY3JpYmUoKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBrZXljb21tYW5kIGZyb20gdGhlIGxpc3Qgb2YgbGlzdGVuZXJzLlxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaSA9IHRoaXMua2V5Q29tbWFuZHMuZmluZEluZGV4KGMgPT4gYyA9PSBpdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMua2V5Q29tbWFuZHMuc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pIGFzIFN1YmplY3Q8S2V5Ym9hcmRFdmVudD5bJ3N1YnNjcmliZSddXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJuIGB0cnVlYCBpZiBzaGlmdCBpcyBjdXJyZW50bHkgcHJlc3NlZC5cbiAgICAgKi9cbiAgICBnZXQgaXNTaGlmdFByZXNzZWQoKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaGVsZEtleXNbXCJzaGlmdFwiXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJuIGB0cnVlYCBpZiBjdHJsIGlzIGN1cnJlbnRseSBwcmVzc2VkLlxuICAgICAqL1xuICAgIGdldCBpc0N0cmxQcmVzc2VkKCkge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhlbGRLZXlzW1wiY29udHJvbFwiXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJuIGB0cnVlYCBpZiBhbHQgaXMgY3VycmVudGx5IHByZXNzZWQuXG4gICAgICovXG4gICAgZ2V0IGlzQWx0UHJlc3NlZCgpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5oZWxkS2V5c1tcImFsdFwiXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJuIGB0cnVlYCBpZiBzdXBlciAobWFjL2xpbnV4KSBvciB0aGUgd2luZG93cyBrZXkgaXMgY3VycmVudGx5IHByZXNzZWQuXG4gICAgICovXG4gICAgZ2V0IGlzU3VwZXJQcmVzc2VkKCkge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhlbGRLZXlzW1wic3VwZXJcIl07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybiBgdHJ1ZWAgaWYgdGFiIGlzIGN1cnJlbnRseSBwcmVzc2VkLlxuICAgICAqL1xuICAgIGdldCBpc1RhYlByZXNzZWQoKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaGVsZEtleXNbXCJ0YWJcIl07XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpibHVyXCIpXG4gICAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIilcbiAgICBjbGVhcktleXMoKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuaGVsZEtleXMpLmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICB0aGlzLmhlbGRLZXlzW2tdID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvc2VydmljZXMva2V5Ym9hcmQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQXFCL0I7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZUFBZTtJQWN4QjtRQVpRLGFBQVEsR0FBK0IsRUFBRSxDQUFDO1FBQzNDLGdCQUFXLEdBU1osRUFBRSxDQUFDO1FBR0wsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sU0FBUyxDQUFDLEdBQWtCO1FBQ2hDLGtDQUFrQztRQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7UUFFNUMsOEVBQThFO1FBQzlFLDJEQUEyRDtRQUMzRCxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVzthQUMxQixNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FDVCxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksU0FBUyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUNqRCxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksU0FBUyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEtBQUss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QUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDWixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7T0FFRztJQUNILElBQUksY0FBYztRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNEOztPQUVHO0lBQ0gsSUFBSSxZQUFZO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBSUQsU0FBUztRQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OzRHQXRJUSxlQUFlO2dIQUFmLGVBQWUsY0FGWixNQUFNOzJGQUVULGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzBFQW1JRyxTQUFTO3NCQUZSLFlBQVk7dUJBQUMsYUFBYTs7c0JBQzFCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBLZXlDb21tYW5kID0ge1xuICAgIC8qKlxuICAgICAqIFRoZSBub24tbW9kaWZpZXIga2V5KHMpIHRoYXQgbXVzdCBiZSBwcmVzc2VkIGZvciB0aGUgZXZlbnQgdG8gZmlyZS5cbiAgICAgKi9cbiAgICBrZXk6IHN0cmluZyB8IHN0cmluZ1tdLFxuICAgIGxhYmVsPzogc3RyaW5nLFxuXG4gICAgY3RybD86IGJvb2xlYW4sXG4gICAgYWx0PzogYm9vbGVhbixcbiAgICBzaGlmdD86IGJvb2xlYW4sXG4gICAgc3VwZXI/OiBib29sZWFuLFxuICAgIHRhYj86IGJvb2xlYW4sXG5cbiAgICAvKipcbiAgICAgKiBTaG91bGQgdGhlIGhhbmRsZXIgaW50ZXJydXB0IGRlZmF1bHQgZXZlbnQgaGFuZGxpbmdcbiAgICAgKi9cbiAgICBpbnRlcnJ1cHQ/OiBib29sZWFuLFxufVxuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBsaXN0ZW5zIGZvciBnbG9iYWwga2V5Ym9hcmQgZXZlbnRzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgaGVsZEtleXM6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XG4gICAgcHVibGljIGtleUNvbW1hbmRzOiB7XG4gICAgICAgIGN0cmw/OiBib29sZWFuLFxuICAgICAgICBhbHQ/OiBib29sZWFuLFxuICAgICAgICBzaGlmdD86IGJvb2xlYW4sXG4gICAgICAgIHN1cGVyPzogYm9vbGVhbixcbiAgICAgICAgaW50ZXJydXB0PzogYm9vbGVhbixcbiAgICAgICAgbGFiZWw/OiBzdHJpbmcsXG4gICAgICAgIGtleXM6IHN0cmluZ1tdLFxuICAgICAgICBzdWI6IFN1YmplY3Q8S2V5Ym9hcmRFdmVudD5cbiAgICB9W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgKGV2dCkgPT4gdGhpcy5vbktleURvd24oZXZ0KSk7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwia2V5dXBcIiwgKGV2dCkgPT4gdGhpcy5vbktleVVwKGV2dCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25LZXlEb3duKGV2dDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhcImtleWRvd25cIiwgZXZ0LmtleSlcbiAgICAgICAgdGhpcy5oZWxkS2V5c1tldnQua2V5LnRvTG93ZXJDYXNlKCldID0gdHJ1ZTtcblxuICAgICAgICAvLyBEbyBhIGdlbmVyYWwgZmlsdGVyIHdoZXJlIGFsbCBvZiB0aGUgbW9kaWZpZXJzIG11c3QgYmUgbWF0Y2hlZCBpZiBzcGVjaWZpZWRcbiAgICAgICAgLy8gVGhlbiBjaGVjayB0aGF0IHRoZSBhY3R1YWwga2V5cyBtYXRjaCB3aGF0IHdhcyBzcGVjaWZpZWRcbiAgICAgICAgbGV0IGNvbW1hbmRzID0gdGhpcy5rZXlDb21tYW5kc1xuICAgICAgICAgICAgLmZpbHRlcihrYyA9PlxuICAgICAgICAgICAgICAgIChrYy5jdHJsID09IHVuZGVmaW5lZCB8fCBrYy5jdHJsID09PSBldnQuY3RybEtleSkgJiZcbiAgICAgICAgICAgICAgICAoa2MuYWx0ID09IHVuZGVmaW5lZCB8fCBrYy5hbHQgPT09IGV2dC5hbHRLZXkpICYmXG4gICAgICAgICAgICAgICAgKGtjLnNoaWZ0ID09IHVuZGVmaW5lZCB8fCBrYy5zaGlmdCA9PT0gZXZ0LnNoaWZ0S2V5KSAmJlxuICAgICAgICAgICAgICAgIChrYy5zdXBlciA9PSB1bmRlZmluZWQgfHwga2Muc3VwZXIgPT09IGV2dC5tZXRhS2V5KSAmJlxuICAgICAgICAgICAgICAgIGtjLmtleXMubGVuZ3RoID09IGtjLmtleXMuZmlsdGVyKGsgPT4gdGhpcy5oZWxkS2V5c1trXSk/Lmxlbmd0aFxuICAgICAgICAgICAgKTtcblxuICAgICAgICBpZiAoZXZ0LmN0cmxLZXkgJiYgY29tbWFuZHMubGVuZ3RoID4gMCB8fCBjb21tYW5kcy5maW5kKGMgPT4gYy5pbnRlcnJ1cHQpKSB7XG4gICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldnQua2V5ID09IFwiUGF1c2VcIilcbiAgICAgICAgICAgIGRlYnVnZ2VyO1xuXG4gICAgICAgIGNvbW1hbmRzLmZvckVhY2goa2MgPT4ga2Muc3ViLm5leHQoZXZ0KSk7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFByZXZlbnQgQ1RSTCtQIGFuZCBvdGhlciBzdGFuZGFyZCBrZXkgZXZlbnRzIGZyb20gYmVpbmcgaGFuZGxlZCBieSB0aGUgYnJvd3Nlci5cbiAgICAgICAgICogQWxsb3cgc3BlY2lmaWMgY29tYm9uYXRpb25zOlxuICAgICAgICAgKiBDVFJMK1dcbiAgICAgICAgICogQ1RSTCtUXG4gICAgICAgICAqIENUUkwrRjVcbiAgICAgICAgICovXG4gICAgICAgIC8vIGlmIChldnQuY3RybEtleSAmJiAhWyd3JywgJ3QnLCAnRjUnXS5pbmNsdWRlcyhldnQua2V5KSkge1xuICAgICAgICAvLyAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uS2V5VXAoZXZ0OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIHRoaXMuaGVsZEtleXNbZXZ0LmtleS50b0xvd2VyQ2FzZSgpXSA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25LZXlQcmVzcyhldnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgLy8gdGhpcy5oZWxkS2V5c1tldnQua2V5XSA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVzZSB0aGlzIHRvIHN1YnNjcmliZSB0byBrZXlib2FyZCBldmVudHMgdGhyb3VnaG91dFxuICAgICAqIHRoZSBhcHBsaWNhdGlvbi4gVGhpcyBpcyBhIHBhc3NpdmUgbGlzdGVuZXIgYW5kIHdpbGxcbiAgICAgKiAqKk5PVCoqIGludGVycnVwdCB0aGUgZXZlbnQgY2hhaW4uXG4gICAgICovXG4gICAgcHVibGljIG9uS2V5Q29tbWFuZChrZXk6IEtleUNvbW1hbmQpIHtcbiAgICAgICAgY29uc3Qgc3ViID0gbmV3IFN1YmplY3Q8S2V5Ym9hcmRFdmVudD4oKTtcbiAgICAgICAgbGV0IGl0ZW0gPSB7XG4gICAgICAgICAgICAuLi5rZXksXG4gICAgICAgICAgICBrZXlzOiAoQXJyYXkuaXNBcnJheShrZXkua2V5KSA/IGtleS5rZXkgOiBba2V5LmtleV0pLFxuICAgICAgICAgICAgc3ViOiBzdWJcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMua2V5Q29tbWFuZHMucHVzaChpdGVtKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uc3ViLFxuICAgICAgICAgICAgc3Vic2NyaWJlOiAoKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzID0gc3ViLnN1YnNjcmliZSguLi5hcmdzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5zLFxuICAgICAgICAgICAgICAgICAgICB1bnN1YnNjcmliZTogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcy51bnN1YnNjcmliZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBSZW1vdmUgdGhlIGtleWNvbW1hbmQgZnJvbSB0aGUgbGlzdCBvZiBsaXN0ZW5lcnMuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpID0gdGhpcy5rZXlDb21tYW5kcy5maW5kSW5kZXgoYyA9PiBjID09IGl0ZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5rZXlDb21tYW5kcy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSkgYXMgU3ViamVjdDxLZXlib2FyZEV2ZW50Plsnc3Vic2NyaWJlJ11cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYHRydWVgIGlmIHNoaWZ0IGlzIGN1cnJlbnRseSBwcmVzc2VkLlxuICAgICAqL1xuICAgIGdldCBpc1NoaWZ0UHJlc3NlZCgpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5oZWxkS2V5c1tcInNoaWZ0XCJdO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYHRydWVgIGlmIGN0cmwgaXMgY3VycmVudGx5IHByZXNzZWQuXG4gICAgICovXG4gICAgZ2V0IGlzQ3RybFByZXNzZWQoKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaGVsZEtleXNbXCJjb250cm9sXCJdO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYHRydWVgIGlmIGFsdCBpcyBjdXJyZW50bHkgcHJlc3NlZC5cbiAgICAgKi9cbiAgICBnZXQgaXNBbHRQcmVzc2VkKCkge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhlbGRLZXlzW1wiYWx0XCJdO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYHRydWVgIGlmIHN1cGVyIChtYWMvbGludXgpIG9yIHRoZSB3aW5kb3dzIGtleSBpcyBjdXJyZW50bHkgcHJlc3NlZC5cbiAgICAgKi9cbiAgICBnZXQgaXNTdXBlclByZXNzZWQoKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuaGVsZEtleXNbXCJzdXBlclwiXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJuIGB0cnVlYCBpZiB0YWIgaXMgY3VycmVudGx5IHByZXNzZWQuXG4gICAgICovXG4gICAgZ2V0IGlzVGFiUHJlc3NlZCgpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5oZWxkS2V5c1tcInRhYlwiXTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKFwid2luZG93OmJsdXJcIilcbiAgICBASG9zdExpc3RlbmVyKFwid2luZG93OnJlc2l6ZVwiKVxuICAgIGNsZWFyS2V5cygpIHtcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5oZWxkS2V5cykuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGVsZEtleXNba10gPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -1064,16 +1064,19 @@ class DialogService {
1064
1064
  this.lazyLoader = lazyLoader;
1065
1065
  this.dialogs = [];
1066
1066
  }
1067
- open(name, opts = {}) {
1067
+ open(name, groupOrOptions, opts = {}) {
1068
+ const group = typeof groupOrOptions == "string" ? groupOrOptions : 'default';
1069
+ if (typeof groupOrOptions == 'object')
1070
+ opts = groupOrOptions;
1068
1071
  return new Promise((resolve, reject) => {
1069
- const registration = this.lazyLoader.resolveRegistrationEntry(name, opts.group || "default");
1072
+ const registration = this.lazyLoader.resolveRegistrationEntry(name, group);
1070
1073
  if (!registration)
1071
1074
  return reject(new Error("Cannot open dialog for " + name + ". Could not find in registry."));
1072
1075
  const args = Object.assign(Object.assign({ closeOnNavigation: true, restoreFocus: true, width: registration['width'], height: registration['height'] }, opts), { data: {
1073
1076
  id: name,
1074
1077
  inputs: opts.inputs || {},
1075
1078
  outputs: opts.outputs || {},
1076
- group: opts.group
1079
+ group: group
1077
1080
  }, panelClass: [
1078
1081
  "dialog-" + name,
1079
1082
  ...(Array.isArray(opts.panelClass) ? opts.panelClass : [opts.panelClass] || [])
@@ -1294,6 +1297,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
1294
1297
  args: ["window:resize"]
1295
1298
  }] } });
1296
1299
 
1300
+ /**
1301
+ * Service that listens for global keyboard events
1302
+ */
1303
+ class FileService {
1304
+ constructor(fetch) {
1305
+ this.fetch = fetch;
1306
+ this.chooseFile = (accept, multiple = false, formMetadata = {}) => {
1307
+ return new Promise(r => {
1308
+ const inEl = document.createElement('input');
1309
+ inEl.setAttribute('type', 'file');
1310
+ if (multiple)
1311
+ inEl.setAttribute('multiple', '');
1312
+ if (accept)
1313
+ inEl.setAttribute('accept', accept);
1314
+ inEl.click();
1315
+ let formData = new FormData();
1316
+ inEl.addEventListener('change', () => {
1317
+ Object.keys(inEl.files).forEach(k => {
1318
+ const file = inEl.files[k];
1319
+ const name = file.name;
1320
+ formData.append(name, file);
1321
+ });
1322
+ formData.append("data", JSON.stringify(formMetadata));
1323
+ inEl.remove();
1324
+ r(formData);
1325
+ });
1326
+ });
1327
+ };
1328
+ }
1329
+ }
1330
+ FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, deps: [{ token: Fetch }], target: i0.ɵɵFactoryTarget.Injectable });
1331
+ FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, providedIn: 'root' });
1332
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileService, decorators: [{
1333
+ type: Injectable,
1334
+ args: [{
1335
+ providedIn: 'root'
1336
+ }]
1337
+ }], ctorParameters: function () { return [{ type: Fetch }]; } });
1338
+
1297
1339
  var ComponentResolveStrategy;
1298
1340
  (function (ComponentResolveStrategy) {
1299
1341
  /**
@@ -2056,5 +2098,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
2056
2098
  * Generated bundle index. Do not edit.
2057
2099
  */
2058
2100
 
2059
- export { ComponentResolveStrategy, DependencyService, DialogService, DynamicHTMLComponent, DynamicHTMLOptions, DynamicHTMLRenderer, Fetch, HtmlBypass, KeyboardService, LazyLoaderComponent, LazyLoaderModule, LazyLoaderService, MenuDirective, NGX_DYNAMIC_CONFIG, NGX_LAZY_LOADER_CONFIG, NgxDynamicHTMLModule, OnMount, ResourceBypass, ScriptBypass, StyleBypass, TooltipDirective, UrlBypass, openMenu, openTooltip };
2101
+ export { ComponentResolveStrategy, DependencyService, DialogService, DynamicHTMLComponent, DynamicHTMLOptions, DynamicHTMLRenderer, Fetch, FileService, HtmlBypass, KeyboardService, LazyLoaderComponent, LazyLoaderModule, LazyLoaderService, MenuDirective, NGX_DYNAMIC_CONFIG, NGX_LAZY_LOADER_CONFIG, NgxDynamicHTMLModule, OnMount, ResourceBypass, ScriptBypass, StyleBypass, TooltipDirective, UrlBypass, openMenu, openTooltip };
2060
2102
  //# sourceMappingURL=dotglitch-ngx-common.mjs.map