@eo-sdk/client 8.16.21 → 8.16.23

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.
@@ -12,6 +12,7 @@ export class TreeComponent {
12
12
  this.selectionKey = ' '; // default is Space
13
13
  // the nodes that are selected. In case of `multiselect` set to true, this will be an
14
14
  this.expandedNodesChanged = new EventEmitter();
15
+ this.onSelected = new EventEmitter();
15
16
  this.propagateChange = (_) => {
16
17
  };
17
18
  }
@@ -95,6 +96,7 @@ export class TreeComponent {
95
96
  onNodeSelected(node) {
96
97
  // if the selected node isn't allowed to be selected, we'll instead try to
97
98
  // toggle expanded flag for parent nodes
99
+ this.onSelected.emit(node);
98
100
  this.updateFocus(node, this.focusedNode);
99
101
  if (!node.selectable) {
100
102
  this.toggleExpanded(node);
@@ -223,6 +225,7 @@ TreeComponent.propDecorators = {
223
225
  readonly: [{ type: Input }],
224
226
  selectionKey: [{ type: Input }],
225
227
  expandedNodesChanged: [{ type: Output }],
228
+ onSelected: [{ type: Output }],
226
229
  highlightedNodes: [{ type: Input, args: ['highlightedNodes',] }],
227
230
  treeInput: [{ type: Input, args: ['tree',] }],
228
231
  treeUpdate: [{ type: Input, args: ['treeUpdate',] }],
@@ -230,4 +233,4 @@ TreeComponent.propDecorators = {
230
233
  onFocusOut: [{ type: HostListener, args: ['focusout',] }],
231
234
  onKey: [{ type: HostListener, args: ['keydown', ['$event'],] }]
232
235
  };
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay90cmVlL3RyZWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osV0FBVyxFQUFFLFVBQVUsRUFDeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBMEN2RSxNQUFNLE9BQU8sYUFBYTtJQXdCeEIsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQXRCWCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBRXBDLG1CQUFjLEdBQWEsRUFBRSxDQUFDO1FBQzlCLHNCQUFpQixHQUFhLEVBQUUsQ0FBQztRQUNqQyxrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQixpQkFBWSxHQUFVLEVBQUUsQ0FBQztRQUt4QixZQUFPLEdBQWdCLEVBQUUsQ0FBQztRQUkxQixpQkFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDLG1CQUFtQjtRQUVoRCxxRkFBcUY7UUFDM0UseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxvQkFBZSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7UUFDN0IsQ0FBQyxDQUFBO0lBR0QsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsSUFDSSxnQkFBZ0IsQ0FBQyxLQUFlO1FBQ2xDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxJQUFJ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QyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7OztZQXBRRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLG1pQkFBb0M7Z0JBRXBDLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQzt3QkFDNUMsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O2FBQ3RDOzs7WUEzQ2MsVUFBVTs7O3dCQThDdEIsV0FBVyxTQUFDLGVBQWU7c0JBVTNCLEtBQUs7MEJBQ0wsS0FBSzt1QkFDTCxLQUFLOzJCQUVMLEtBQUs7bUNBR0wsTUFBTTsrQkFXTixLQUFLLFNBQUMsa0JBQWtCO3dCQU14QixLQUFLLFNBQUMsTUFBTTt5QkFTWixLQUFLLFNBQUMsWUFBWTt3QkFRbEIsWUFBWSxTQUFDLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQzt5QkFRekMsWUFBWSxTQUFDLFVBQVU7b0JBZXZCLFlBQVksU0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEhvc3RMaXN0ZW5lcixcbiAgZm9yd2FyZFJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsIEVsZW1lbnRSZWYsIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJlZU5vZGUge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGNoaWxkcmVuOiBUcmVlTm9kZVtdO1xuICBwYXRoPzogc3RyaW5nW107XG4gIGV4cGFuZGVkOiBib29sZWFuO1xuICBzZWxlY3RhYmxlOiBib29sZWFuO1xuICBzZWxlY3RlZDogYm9vbGVhbjtcbiAgaXNSZWZlcmVuY2U/OiBib29sZWFuO1xuICBoaWdobGlnaHRlZD86IGJvb2xlYW47XG4gIGZvY3VzZWQ/OiBib29sZWFuO1xuICAvKiogYmFkZ2UgdG8gYmUgYWRkZWQgdG8gYSB0cmVlIG5vZGUgKi9cbiAgYmFkZ2VzPzogVHJlZU5vZGVCYWRnZVtdO1xuICBkYXRhPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyZWVOb2RlQmFkZ2Uge1xuICB2YWx1ZTogc3RyaW5nO1xuICBjc3NDbGFzcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmVlT3B0aW9ucyB7XG4gIC8qKiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRoZSB1c2VyIGNhbiBzZWxlY3QganVzdCBvbmUgb3IgbXVsdGlwbGUgdmFsdWVzIGZyb20gdGhlIHRyZWUgKi9cbiAgbXVsdGlzZWxlY3Q/OiBib29sZWFuO1xuICBkaXNhYmxlRGVzZWxlY3Rpb24/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby10cmVlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cmVlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHJlZUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUcmVlQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgX3RhYkluZGV4ID0gMDtcblxuICBwcml2YXRlIF9leHBhbmRlZE5vZGVzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIF9oaWdobGlnaHRlZE5vZGVzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIHNlbGVjdGVkTm9kZXM6IGFueVtdID0gW107XG4gIHByaXZhdGUgdmlzaWJsZU5vZGVzOiBhbnlbXSA9IFtdO1xuICBwcml2YXRlIGZvY3VzZWROb2RlOiBUcmVlTm9kZTtcblxuICB0cmVlOiBUcmVlTm9kZVtdO1xuXG4gIEBJbnB1dCgpIG9wdGlvbnM6IFRyZWVPcHRpb25zID0ge307XG4gIEBJbnB1dCgpIGlzRGlzcGxheWVkOiBib29sZWFuO1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzZWxlY3Rpb25LZXkgPSAnICc7IC8vIGRlZmF1bHQgaXMgU3BhY2VcblxuICAvLyB0aGUgbm9kZXMgdGhhdCBhcmUgc2VsZWN0ZWQuIEluIGNhc2Ugb2YgYG11bHRpc2VsZWN0YCBzZXQgdG8gdHJ1ZSwgdGhpcyB3aWxsIGJlIGFuXG4gIEBPdXRwdXQoKSBleHBhbmRlZE5vZGVzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBASW5wdXQoJ2hpZ2hsaWdodGVkTm9kZXMnKVxuICBzZXQgaGlnaGxpZ2h0ZWROb2Rlcyhub2Rlczogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9oaWdobGlnaHRlZE5vZGVzID0gbm9kZXMgfHwgW107XG4gICAgdGhpcy52aXNpYmxlTm9kZXMuZm9yRWFjaChuID0+IChuLmhpZ2hsaWdodGVkID0gISF0aGlzLl9oaWdobGlnaHRlZE5vZGVzLmZpbmQoaWQgPT4gaWQgPT09IG4uaWQpKSk7XG4gIH1cblxuICBASW5wdXQoJ3RyZWUnKVxuICBzZXQgdHJlZUlucHV0KHRyZWU6IFRyZWVOb2RlW10pIHtcbiAgICAvLyB0aGlzLnRyZWUgPSB0cmVlO1xuICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xuICAgIHRoaXMuX2V4cGFuZGVkTm9kZXMgPSBbXTtcbiAgICB0aGlzLmZvY3VzZWROb2RlID0gbnVsbDtcbiAgICB0aGlzLnVwZGF0ZVRyZWUodHJlZSk7XG4gIH1cblxuICBASW5wdXQoJ3RyZWVVcGRhdGUnKVxuICBzZXQgdHJlZVVwZGF0ZSh0cmVlOiBUcmVlTm9kZVtdKSB7XG4gICAgaWYgKHRyZWUpIHtcbiAgICAgIHRoaXMudXBkYXRlVHJlZSh0cmVlKTtcbiAgICB9XG4gIH1cblxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC50YXJnZXQnXSlcbiAgb25Gb2N1c0luKHRhcmdldDogYW55KSB7XG4gICAgaWYgKCF0aGlzLmZvY3VzZWROb2RlIHx8ICF0aGlzLmZvY3VzZWROb2RlLmZvY3VzZWQpIHtcbiAgICAgIGxldCBub2RlID0gdGhpcy5zZWxlY3RlZE5vZGVzWzBdIHx8IHRoaXMudmlzaWJsZU5vZGVzWzBdO1xuICAgICAgdGhpcy51cGRhdGVGb2N1cyhub2RlKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcpXG4gIG9uRm9jdXNPdXQoKSB7XG4gICAgdGhpcy51cGRhdGVGb2N1cygpO1xuICB9XG5cbiAgb25Gb2N1cyhldnQpIHtcbiAgfVxuXG4gIG9uQmx1cihldnQpIHtcbiAgfVxuXG4gIG9uVG9nZ2xlKGV2dCkge1xuXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXkoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnQXJyb3dVcCc6IHtcbiAgICAgICAgdGhpcy5mb2N1c05vZGUoZmFsc2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0Fycm93RG93bic6IHtcbiAgICAgICAgdGhpcy5mb2N1c05vZGUodHJ1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6IHtcbiAgICAgICAgdGhpcy50b2dnbGVFeHBhbmRlZCh0aGlzLmZvY3VzZWROb2RlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOiB7XG4gICAgICAgIHRoaXMudG9nZ2xlRXhwYW5kZWQodGhpcy5mb2N1c2VkTm9kZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSB0aGlzLnNlbGVjdGlvbktleToge1xuICAgICAgICAvLyB0b2dnbGUgc2VsZWN0aW9uIG9mIHRoZSBmb2N1c2VkIG5vZGVcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZE5vZGUuc2VsZWN0YWJsZSkge1xuICAgICAgICAgIC8vIHRoaXMuZm9jdXNlZE5vZGUuc2VsZWN0ZWQgPSAhdGhpcy5mb2N1c2VkTm9kZS5zZWxlY3RlZDtcbiAgICAgICAgICB0aGlzLm9uTm9kZVNlbGVjdGVkKHRoaXMuZm9jdXNlZE5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChbJ0Fycm93VXAnLCAnQXJyb3dEb3duJywgJ0Fycm93UmlnaHQnLCAnQXJyb3dMZWZ0J10uaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG5cbiAgd3JpdGVWYWx1ZShzZWxlY3RlZE5vZGVzOiBUcmVlTm9kZVtdKTogdm9pZCB7XG4gICAgbGV0IF9zZWxlY3RlZE5vZGVzID0gIXNlbGVjdGVkTm9kZXMgfHwgQXJyYXkuaXNBcnJheShzZWxlY3RlZE5vZGVzKSA/IHNlbGVjdGVkTm9kZXMgfHwgW10gOiBbc2VsZWN0ZWROb2Rlc107XG5cbiAgICBpZiAodGhpcy5zZWxlY3RlZE5vZGVzLmxlbmd0aCAhPT0gX3NlbGVjdGVkTm9kZXMubGVuZ3RoIHx8IHRoaXMuc2VsZWN0ZWROb2Rlcy5zb21lKChuLCBpKSA9PiBuLmlkICE9PSBfc2VsZWN0ZWROb2Rlc1tpXS5pZCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IF9zZWxlY3RlZE5vZGVzO1xuICAgICAgdGhpcy51cGRhdGVUcmVlKHRoaXMudHJlZSk7XG4gICAgfVxuXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICB9XG5cbiAgb25Ob2RlU2VsZWN0ZWQobm9kZSkge1xuICAgIC8vIGlmIHRoZSBzZWxlY3RlZCBub2RlIGlzbid0IGFsbG93ZWQgdG8gYmUgc2VsZWN0ZWQsIHdlJ2xsIGluc3RlYWQgdHJ5IHRvXG4gICAgLy8gdG9nZ2xlIGV4cGFuZGVkIGZsYWcgZm9yIHBhcmVudCBub2Rlc1xuXG4gICAgdGhpcy51cGRhdGVGb2N1cyhub2RlLCB0aGlzLmZvY3VzZWROb2RlKTtcblxuICAgIGlmICghbm9kZS5zZWxlY3RhYmxlKSB7XG4gICAgICB0aGlzLnRvZ2dsZUV4cGFuZGVkKG5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBub2RlLnNlbGVjdGVkID0gIW5vZGUuc2VsZWN0ZWQ7XG4gICAgICBpZiAobm9kZS5zZWxlY3RlZCkge1xuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy5tdWx0aXNlbGVjdCAmJiB0aGlzLnNlbGVjdGVkTm9kZXMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzWzBdLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzID0gW107XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzLnB1c2gobm9kZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlRGVzZWxlY3Rpb24pIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZXMgPSB0aGlzLnNlbGVjdGVkTm9kZXMuZmlsdGVyKFxuICAgICAgICAgICAgbiA9PiBuLmlkICE9PSBub2RlLmlkXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBub2RlLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5vcHRpb25zLm11bHRpc2VsZWN0ID8gdGhpcy5zZWxlY3RlZE5vZGVzIDogdGhpcy5zZWxlY3RlZE5vZGVzWzBdKTtcbiAgICB9XG4gIH1cblxuXG4gIHB1YmxpYyBvbk5vZGVFeHBhbmRlZChub2RlOiBUcmVlTm9kZSkge1xuICAgIHRoaXMuY29sbGVjdFZpc2libGVOb2Rlcyhub2RlKTtcbiAgICB0aGlzLmV4cGFuZGVkTm9kZXNDaGFuZ2VkLmVtaXQodGhpcy5fZXhwYW5kZWROb2Rlcyk7XG4gIH1cblxuXG4gIHB1YmxpYyB0b2dnbGVFeHBhbmRlZChub2RlOiBUcmVlTm9kZSkge1xuICAgIGlmIChub2RlLmNoaWxkcmVuICYmIG5vZGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICBub2RlLmV4cGFuZGVkID0gIW5vZGUuZXhwYW5kZWQ7XG4gICAgICB0aGlzLm9uTm9kZUV4cGFuZGVkKG5vZGUpO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gVXBkYXRlIHRoZSB0cmVlIGFjY29yZGluZyB0byB0aGUgc2VsZWN0ZWQgbm9kZXNcbiAgcHJpdmF0ZSB1cGRhdGVUcmVlKHRyZWU/OiBhbnkpIHtcbiAgICBpZiAodHJlZSB8fCB0aGlzLnRyZWUpIHtcbiAgICAgIHRoaXMudHJlZSA9ICh0cmVlIHx8IHRoaXMudHJlZSkubWFwKG5vZGUgPT4gdGhpcy51cGRhdGVUcmVlTm9kZShub2RlLCBbXSkpO1xuICAgICAgdGhpcy5jb2xsZWN0VmlzaWJsZU5vZGVzKCk7XG4gICAgfVxuICB9XG5cblxuICAvLyBSZWN1cnNpdmUgZnVuY3Rpb24gd2Fsa2luZyB0aGUgdHJlZSBub2RlcyBhbmQgc2V0dGluZyB0aGUgbm9kZXMgYHNlbGVjdGVkYCBmbGFnc1xuICBwcml2YXRlIHVwZGF0ZVRyZWVOb2RlKG5vZGU6IFRyZWVOb2RlLCBwYXJlbnRzOiBUcmVlTm9kZVtdKSB7XG4gICAgbm9kZS5zZWxlY3RlZCA9ICEhdGhpcy5zZWxlY3RlZE5vZGVzLmZpbmQobiA9PiBub2RlLmlkID09PSBuLmlkIHx8ICghbi5pZCAmJiBub2RlLmRhdGE/LnZhbHVlID09PSBuLnZhbHVlKSk7XG4gICAgbm9kZS5leHBhbmRlZCA9IHRoaXMuX2V4cGFuZGVkTm9kZXMubGVuZ3RoID8gISF0aGlzLl9leHBhbmRlZE5vZGVzLmZpbmQoaWQgPT4gaWQgPT09IG5vZGUuaWQpIDogbm9kZS5leHBhbmRlZDtcbiAgICBub2RlLmhpZ2hsaWdodGVkID0gISF0aGlzLl9oaWdobGlnaHRlZE5vZGVzLmZpbmQoaWQgPT4gaWQgPT09IG5vZGUuaWQpO1xuICAgIG5vZGUuZm9jdXNlZCA9IHRoaXMuZm9jdXNlZE5vZGUgJiYgdGhpcy5mb2N1c2VkTm9kZS5pZCA9PT0gbm9kZS5pZCA/IHRoaXMuZm9jdXNlZE5vZGUuZm9jdXNlZCA6IGZhbHNlO1xuICAgIC8vIG5vZGUubGV2ZWwgPSBwYXJlbnRzLmxlbmd0aDtcblxuICAgIC8vIGV4cGFuZCBhbGwgcGFyZW50IG5vZGVzIGFzIHdlbGxcbiAgICBpZiAobm9kZS5zZWxlY3RlZCAmJiBwYXJlbnRzLmxlbmd0aCkge1xuICAgICAgcGFyZW50cy5mb3JFYWNoKHAgPT4gKHAuZXhwYW5kZWQgPSB0cnVlKSk7XG4gICAgfVxuICAgIGlmIChub2RlLmNoaWxkcmVuKSB7XG4gICAgICBub2RlLmNoaWxkcmVuLmZvckVhY2gobiA9PiB0aGlzLnVwZGF0ZVRyZWVOb2RlKG4sIHBhcmVudHMuY29uY2F0KFtub2RlXSkpKTtcbiAgICB9XG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICAvLyBDb2xsZWN0IGFsbCB2aXNpYmxlIG5vZGVzIGluIHRoZSByaWdodCBvcmRlciB0byBiZSB1c2VkIHRvIGZldGNoIHRoZSBwcmV2aW91cyBvclxuICAvLyBuZXh0IG5vZGUgdXNpbmcga2V5Ym9hcmQgbmF2aWdhdGlvbi5cbiAgcHJpdmF0ZSBjb2xsZWN0VmlzaWJsZU5vZGVzKG5vZGU/OiBUcmVlTm9kZSkge1xuICAgIHRoaXMudmlzaWJsZU5vZGVzID0gdGhpcy5jb2xsZWN0VmlzaWJsZUNoaWxkcmVuKHRoaXMudHJlZSk7XG4gICAgdGhpcy5zZWxlY3RlZE5vZGVzID0gdGhpcy52aXNpYmxlTm9kZXMuZmlsdGVyKG4gPT4gbi5zZWxlY3RlZCk7XG4gIH1cblxuICAvLyByZWN1cnNpdmUgcGFydCBvZiBjb2xsZWN0Q2hpbGROb2RlcygpXG4gIHByaXZhdGUgY29sbGVjdFZpc2libGVDaGlsZHJlbihub2RlczogVHJlZU5vZGVbXSA9IFtdKSB7XG4gICAgbGV0IGZsYXQgPSBbXTtcbiAgICB0aGlzLl9leHBhbmRlZE5vZGVzID0gW107XG4gICAgbm9kZXMuZm9yRWFjaChub2RlID0+IHtcbiAgICAgIGZsYXQucHVzaChub2RlKTtcbiAgICAgIGlmIChub2RlLmV4cGFuZGVkKSB7XG4gICAgICAgIHRoaXMuX2V4cGFuZGVkTm9kZXMucHVzaChub2RlLmlkKTtcbiAgICAgICAgZmxhdCA9IGZsYXQuY29uY2F0KHRoaXMuY29sbGVjdFZpc2libGVDaGlsZHJlbihub2RlLmNoaWxkcmVuKSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGZsYXQ7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUZvY3VzKG5vZGU/OiBUcmVlTm9kZSwgb2xkPzogVHJlZU5vZGUpIHtcbiAgICBpZiAob2xkKSB7XG4gICAgICBpZiAobm9kZSAhPT0gb2xkKSB7XG4gICAgICAgIG9sZC5mb2N1c2VkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZU5vZGVzLmZvckVhY2gobiA9PiAobi5mb2N1c2VkID0gZmFsc2UpKTtcbiAgICB9XG4gICAgaWYgKG5vZGUpIHtcbiAgICAgIG5vZGUuZm9jdXNlZCA9IHRydWU7XG4gICAgICB0aGlzLmZvY3VzZWROb2RlID0gbm9kZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvY3VzTm9kZShuZXh0PzogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLnZpc2libGVOb2Rlcy5sZW5ndGgpIHtcbiAgICAgIGxldCBpbmRleCA9IDAsIHNoaWZ0ID0gbmV4dCA/IDEgOiAtMTtcbiAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLnZpc2libGVOb2Rlcy5maW5kKChuLCBpKSA9PiB7XG4gICAgICAgIGluZGV4ID0gaTtcbiAgICAgICAgcmV0dXJuIG4uZm9jdXNlZDtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBuZXh0SWR4ID0gbm9kZSA/IGluZGV4ICsgc2hpZnQgOiAwO1xuICAgICAgY29uc3QgaWR4ID0gbmV4dElkeCA+PSB0aGlzLnZpc2libGVOb2Rlcy5sZW5ndGggPyAwIDogKG5leHRJZHggPCAwID8gdGhpcy52aXNpYmxlTm9kZXMubGVuZ3RoIC0gMSA6IG5leHRJZHgpO1xuICAgICAgdGhpcy51cGRhdGVGb2N1cyh0aGlzLnZpc2libGVOb2Rlc1tpZHhdLCBub2RlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
236
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay90cmVlL3RyZWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osV0FBVyxFQUFFLFVBQVUsRUFDeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBMEN2RSxNQUFNLE9BQU8sYUFBYTtJQXlCeEIsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQXZCWCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBRXBDLG1CQUFjLEdBQWEsRUFBRSxDQUFDO1FBQzlCLHNCQUFpQixHQUFhLEVBQUUsQ0FBQztRQUNqQyxrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQixpQkFBWSxHQUFVLEVBQUUsQ0FBQztRQUt4QixZQUFPLEdBQWdCLEVBQUUsQ0FBQztRQUkxQixpQkFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDLG1CQUFtQjtRQUVoRCxxRkFBcUY7UUFDM0UseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMxQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQyxvQkFBZSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7UUFDN0IsQ0FBQyxDQUFBO0lBR0QsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsSUFDSSxnQkFBZ0IsQ0FBQyxLQUFlO1FBQ2xDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FB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QUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7OztZQXJRRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLG1pQkFBb0M7Z0JBRXBDLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQzt3QkFDNUMsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O2FBQ3RDOzs7WUEzQ2MsVUFBVTs7O3dCQThDdEIsV0FBVyxTQUFDLGVBQWU7c0JBVTNCLEtBQUs7MEJBQ0wsS0FBSzt1QkFDTCxLQUFLOzJCQUVMLEtBQUs7bUNBR0wsTUFBTTt5QkFDTixNQUFNOytCQVdOLEtBQUssU0FBQyxrQkFBa0I7d0JBTXhCLEtBQUssU0FBQyxNQUFNO3lCQVNaLEtBQUssU0FBQyxZQUFZO3dCQVFsQixZQUFZLFNBQUMsU0FBUyxFQUFFLENBQUMsZUFBZSxDQUFDO3lCQVF6QyxZQUFZLFNBQUMsVUFBVTtvQkFldkIsWUFBWSxTQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdExpc3RlbmVyLFxuICBmb3J3YXJkUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZywgRWxlbWVudFJlZiwgT25Jbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGludGVyZmFjZSBUcmVlTm9kZSB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgY2hpbGRyZW46IFRyZWVOb2RlW107XG4gIHBhdGg/OiBzdHJpbmdbXTtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIHNlbGVjdGFibGU6IGJvb2xlYW47XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBpc1JlZmVyZW5jZT86IGJvb2xlYW47XG4gIGhpZ2hsaWdodGVkPzogYm9vbGVhbjtcbiAgZm9jdXNlZD86IGJvb2xlYW47XG4gIC8qKiBiYWRnZSB0byBiZSBhZGRlZCB0byBhIHRyZWUgbm9kZSAqL1xuICBiYWRnZXM/OiBUcmVlTm9kZUJhZGdlW107XG4gIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJlZU5vZGVCYWRnZSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGNzc0NsYXNzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyZWVPcHRpb25zIHtcbiAgLyoqIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdGhlIHVzZXIgY2FuIHNlbGVjdCBqdXN0IG9uZSBvciBtdWx0aXBsZSB2YWx1ZXMgZnJvbSB0aGUgdHJlZSAqL1xuICBtdWx0aXNlbGVjdD86IGJvb2xlYW47XG4gIGRpc2FibGVEZXNlbGVjdGlvbj86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXRyZWUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RyZWUuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUcmVlQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKSBfdGFiSW5kZXggPSAwO1xuXG4gIHByaXZhdGUgX2V4cGFuZGVkTm9kZXM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX2hpZ2hsaWdodGVkTm9kZXM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgc2VsZWN0ZWROb2RlczogYW55W10gPSBbXTtcbiAgcHJpdmF0ZSB2aXNpYmxlTm9kZXM6IGFueVtdID0gW107XG4gIHByaXZhdGUgZm9jdXNlZE5vZGU6IFRyZWVOb2RlO1xuXG4gIHRyZWU6IFRyZWVOb2RlW107XG5cbiAgQElucHV0KCkgb3B0aW9uczogVHJlZU9wdGlvbnMgPSB7fTtcbiAgQElucHV0KCkgaXNEaXNwbGF5ZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHNlbGVjdGlvbktleSA9ICcgJzsgLy8gZGVmYXVsdCBpcyBTcGFjZVxuXG4gIC8vIHRoZSBub2RlcyB0aGF0IGFyZSBzZWxlY3RlZC4gSW4gY2FzZSBvZiBgbXVsdGlzZWxlY3RgIHNldCB0byB0cnVlLCB0aGlzIHdpbGwgYmUgYW5cbiAgQE91dHB1dCgpIGV4cGFuZGVkTm9kZXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBASW5wdXQoJ2hpZ2hsaWdodGVkTm9kZXMnKVxuICBzZXQgaGlnaGxpZ2h0ZWROb2Rlcyhub2Rlczogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9oaWdobGlnaHRlZE5vZGVzID0gbm9kZXMgfHwgW107XG4gICAgdGhpcy52aXNpYmxlTm9kZXMuZm9yRWFjaChuID0+IChuLmhpZ2hsaWdodGVkID0gISF0aGlzLl9oaWdobGlnaHRlZE5vZGVzLmZpbmQoaWQgPT4gaWQgPT09IG4uaWQpKSk7XG4gIH1cblxuICBASW5wdXQoJ3RyZWUnKVxuICBzZXQgdHJlZUlucHV0KHRyZWU6IFRyZWVOb2RlW10pIHtcbiAgICAvLyB0aGlzLnRyZWUgPSB0cmVlO1xuICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xuICAgIHRoaXMuX2V4cGFuZGVkTm9kZXMgPSBbXTtcbiAgICB0aGlzLmZvY3VzZWROb2RlID0gbnVsbDtcbiAgICB0aGlzLnVwZGF0ZVRyZWUodHJlZSk7XG4gIH1cblxuICBASW5wdXQoJ3RyZWVVcGRhdGUnKVxuICBzZXQgdHJlZVVwZGF0ZSh0cmVlOiBUcmVlTm9kZVtdKSB7XG4gICAgaWYgKHRyZWUpIHtcbiAgICAgIHRoaXMudXBkYXRlVHJlZSh0cmVlKTtcbiAgICB9XG4gIH1cblxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nLCBbJyRldmVudC50YXJnZXQnXSlcbiAgb25Gb2N1c0luKHRhcmdldDogYW55KSB7XG4gICAgaWYgKCF0aGlzLmZvY3VzZWROb2RlIHx8ICF0aGlzLmZvY3VzZWROb2RlLmZvY3VzZWQpIHtcbiAgICAgIGxldCBub2RlID0gdGhpcy5zZWxlY3RlZE5vZGVzWzBdIHx8IHRoaXMudmlzaWJsZU5vZGVzWzBdO1xuICAgICAgdGhpcy51cGRhdGVGb2N1cyhub2RlKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcpXG4gIG9uRm9jdXNPdXQoKSB7XG4gICAgdGhpcy51cGRhdGVGb2N1cygpO1xuICB9XG5cbiAgb25Gb2N1cyhldnQpIHtcbiAgfVxuXG4gIG9uQmx1cihldnQpIHtcbiAgfVxuXG4gIG9uVG9nZ2xlKGV2dCkge1xuXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXkoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnQXJyb3dVcCc6IHtcbiAgICAgICAgdGhpcy5mb2N1c05vZGUoZmFsc2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0Fycm93RG93bic6IHtcbiAgICAgICAgdGhpcy5mb2N1c05vZGUodHJ1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6IHtcbiAgICAgICAgdGhpcy50b2dnbGVFeHBhbmRlZCh0aGlzLmZvY3VzZWROb2RlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOiB7XG4gICAgICAgIHRoaXMudG9nZ2xlRXhwYW5kZWQodGhpcy5mb2N1c2VkTm9kZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSB0aGlzLnNlbGVjdGlvbktleToge1xuICAgICAgICAvLyB0b2dnbGUgc2VsZWN0aW9uIG9mIHRoZSBmb2N1c2VkIG5vZGVcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZE5vZGUuc2VsZWN0YWJsZSkge1xuICAgICAgICAgIC8vIHRoaXMuZm9jdXNlZE5vZGUuc2VsZWN0ZWQgPSAhdGhpcy5mb2N1c2VkTm9kZS5zZWxlY3RlZDtcbiAgICAgICAgICB0aGlzLm9uTm9kZVNlbGVjdGVkKHRoaXMuZm9jdXNlZE5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChbJ0Fycm93VXAnLCAnQXJyb3dEb3duJywgJ0Fycm93UmlnaHQnLCAnQXJyb3dMZWZ0J10uaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG5cbiAgd3JpdGVWYWx1ZShzZWxlY3RlZE5vZGVzOiBUcmVlTm9kZVtdKTogdm9pZCB7XG4gICAgbGV0IF9zZWxlY3RlZE5vZGVzID0gIXNlbGVjdGVkTm9kZXMgfHwgQXJyYXkuaXNBcnJheShzZWxlY3RlZE5vZGVzKSA/IHNlbGVjdGVkTm9kZXMgfHwgW10gOiBbc2VsZWN0ZWROb2Rlc107XG5cbiAgICBpZiAodGhpcy5zZWxlY3RlZE5vZGVzLmxlbmd0aCAhPT0gX3NlbGVjdGVkTm9kZXMubGVuZ3RoIHx8IHRoaXMuc2VsZWN0ZWROb2Rlcy5zb21lKChuLCBpKSA9PiBuLmlkICE9PSBfc2VsZWN0ZWROb2Rlc1tpXS5pZCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IF9zZWxlY3RlZE5vZGVzO1xuICAgICAgdGhpcy51cGRhdGVUcmVlKHRoaXMudHJlZSk7XG4gICAgfVxuXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICB9XG5cbiAgb25Ob2RlU2VsZWN0ZWQobm9kZSkge1xuICAgIC8vIGlmIHRoZSBzZWxlY3RlZCBub2RlIGlzbid0IGFsbG93ZWQgdG8gYmUgc2VsZWN0ZWQsIHdlJ2xsIGluc3RlYWQgdHJ5IHRvXG4gICAgLy8gdG9nZ2xlIGV4cGFuZGVkIGZsYWcgZm9yIHBhcmVudCBub2Rlc1xuICAgIHRoaXMub25TZWxlY3RlZC5lbWl0KG5vZGUpO1xuICAgIHRoaXMudXBkYXRlRm9jdXMobm9kZSwgdGhpcy5mb2N1c2VkTm9kZSk7XG5cbiAgICBpZiAoIW5vZGUuc2VsZWN0YWJsZSkge1xuICAgICAgdGhpcy50b2dnbGVFeHBhbmRlZChub2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5zZWxlY3RlZCA9ICFub2RlLnNlbGVjdGVkO1xuICAgICAgaWYgKG5vZGUuc2VsZWN0ZWQpIHtcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMubXVsdGlzZWxlY3QgJiYgdGhpcy5zZWxlY3RlZE5vZGVzLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2Rlc1swXS5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2Rlcy5wdXNoKG5vZGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZURlc2VsZWN0aW9uKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzID0gdGhpcy5zZWxlY3RlZE5vZGVzLmZpbHRlcihcbiAgICAgICAgICAgIG4gPT4gbi5pZCAhPT0gbm9kZS5pZFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbm9kZS5zZWxlY3RlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMub3B0aW9ucy5tdWx0aXNlbGVjdCA/IHRoaXMuc2VsZWN0ZWROb2RlcyA6IHRoaXMuc2VsZWN0ZWROb2Rlc1swXSk7XG4gICAgfVxuICB9XG5cblxuICBwdWJsaWMgb25Ob2RlRXhwYW5kZWQobm9kZTogVHJlZU5vZGUpIHtcbiAgICB0aGlzLmNvbGxlY3RWaXNpYmxlTm9kZXMobm9kZSk7XG4gICAgdGhpcy5leHBhbmRlZE5vZGVzQ2hhbmdlZC5lbWl0KHRoaXMuX2V4cGFuZGVkTm9kZXMpO1xuICB9XG5cblxuICBwdWJsaWMgdG9nZ2xlRXhwYW5kZWQobm9kZTogVHJlZU5vZGUpIHtcbiAgICBpZiAobm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgbm9kZS5leHBhbmRlZCA9ICFub2RlLmV4cGFuZGVkO1xuICAgICAgdGhpcy5vbk5vZGVFeHBhbmRlZChub2RlKTtcbiAgICB9XG4gIH1cblxuXG4gIC8vIFVwZGF0ZSB0aGUgdHJlZSBhY2NvcmRpbmcgdG8gdGhlIHNlbGVjdGVkIG5vZGVzXG4gIHByaXZhdGUgdXBkYXRlVHJlZSh0cmVlPzogYW55KSB7XG4gICAgaWYgKHRyZWUgfHwgdGhpcy50cmVlKSB7XG4gICAgICB0aGlzLnRyZWUgPSAodHJlZSB8fCB0aGlzLnRyZWUpLm1hcChub2RlID0+IHRoaXMudXBkYXRlVHJlZU5vZGUobm9kZSwgW10pKTtcbiAgICAgIHRoaXMuY29sbGVjdFZpc2libGVOb2RlcygpO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gUmVjdXJzaXZlIGZ1bmN0aW9uIHdhbGtpbmcgdGhlIHRyZWUgbm9kZXMgYW5kIHNldHRpbmcgdGhlIG5vZGVzIGBzZWxlY3RlZGAgZmxhZ3NcbiAgcHJpdmF0ZSB1cGRhdGVUcmVlTm9kZShub2RlOiBUcmVlTm9kZSwgcGFyZW50czogVHJlZU5vZGVbXSkge1xuICAgIG5vZGUuc2VsZWN0ZWQgPSAhIXRoaXMuc2VsZWN0ZWROb2Rlcy5maW5kKG4gPT4gbm9kZS5pZCA9PT0gbi5pZCB8fCAoIW4uaWQgJiYgbm9kZS5kYXRhPy52YWx1ZSA9PT0gbi52YWx1ZSkpO1xuICAgIG5vZGUuZXhwYW5kZWQgPSB0aGlzLl9leHBhbmRlZE5vZGVzLmxlbmd0aCA/ICEhdGhpcy5fZXhwYW5kZWROb2Rlcy5maW5kKGlkID0+IGlkID09PSBub2RlLmlkKSA6IG5vZGUuZXhwYW5kZWQ7XG4gICAgbm9kZS5oaWdobGlnaHRlZCA9ICEhdGhpcy5faGlnaGxpZ2h0ZWROb2Rlcy5maW5kKGlkID0+IGlkID09PSBub2RlLmlkKTtcbiAgICBub2RlLmZvY3VzZWQgPSB0aGlzLmZvY3VzZWROb2RlICYmIHRoaXMuZm9jdXNlZE5vZGUuaWQgPT09IG5vZGUuaWQgPyB0aGlzLmZvY3VzZWROb2RlLmZvY3VzZWQgOiBmYWxzZTtcbiAgICAvLyBub2RlLmxldmVsID0gcGFyZW50cy5sZW5ndGg7XG5cbiAgICAvLyBleHBhbmQgYWxsIHBhcmVudCBub2RlcyBhcyB3ZWxsXG4gICAgaWYgKG5vZGUuc2VsZWN0ZWQgJiYgcGFyZW50cy5sZW5ndGgpIHtcbiAgICAgIHBhcmVudHMuZm9yRWFjaChwID0+IChwLmV4cGFuZGVkID0gdHJ1ZSkpO1xuICAgIH1cbiAgICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgICAgbm9kZS5jaGlsZHJlbi5mb3JFYWNoKG4gPT4gdGhpcy51cGRhdGVUcmVlTm9kZShuLCBwYXJlbnRzLmNvbmNhdChbbm9kZV0pKSk7XG4gICAgfVxuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgLy8gQ29sbGVjdCBhbGwgdmlzaWJsZSBub2RlcyBpbiB0aGUgcmlnaHQgb3JkZXIgdG8gYmUgdXNlZCB0byBmZXRjaCB0aGUgcHJldmlvdXMgb3JcbiAgLy8gbmV4dCBub2RlIHVzaW5nIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gIHByaXZhdGUgY29sbGVjdFZpc2libGVOb2Rlcyhub2RlPzogVHJlZU5vZGUpIHtcbiAgICB0aGlzLnZpc2libGVOb2RlcyA9IHRoaXMuY29sbGVjdFZpc2libGVDaGlsZHJlbih0aGlzLnRyZWUpO1xuICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IHRoaXMudmlzaWJsZU5vZGVzLmZpbHRlcihuID0+IG4uc2VsZWN0ZWQpO1xuICB9XG5cbiAgLy8gcmVjdXJzaXZlIHBhcnQgb2YgY29sbGVjdENoaWxkTm9kZXMoKVxuICBwcml2YXRlIGNvbGxlY3RWaXNpYmxlQ2hpbGRyZW4obm9kZXM6IFRyZWVOb2RlW10gPSBbXSkge1xuICAgIGxldCBmbGF0ID0gW107XG4gICAgdGhpcy5fZXhwYW5kZWROb2RlcyA9IFtdO1xuICAgIG5vZGVzLmZvckVhY2gobm9kZSA9PiB7XG4gICAgICBmbGF0LnB1c2gobm9kZSk7XG4gICAgICBpZiAobm9kZS5leHBhbmRlZCkge1xuICAgICAgICB0aGlzLl9leHBhbmRlZE5vZGVzLnB1c2gobm9kZS5pZCk7XG4gICAgICAgIGZsYXQgPSBmbGF0LmNvbmNhdCh0aGlzLmNvbGxlY3RWaXNpYmxlQ2hpbGRyZW4obm9kZS5jaGlsZHJlbikpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBmbGF0O1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGb2N1cyhub2RlPzogVHJlZU5vZGUsIG9sZD86IFRyZWVOb2RlKSB7XG4gICAgaWYgKG9sZCkge1xuICAgICAgaWYgKG5vZGUgIT09IG9sZCkge1xuICAgICAgICBvbGQuZm9jdXNlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2libGVOb2Rlcy5mb3JFYWNoKG4gPT4gKG4uZm9jdXNlZCA9IGZhbHNlKSk7XG4gICAgfVxuICAgIGlmIChub2RlKSB7XG4gICAgICBub2RlLmZvY3VzZWQgPSB0cnVlO1xuICAgICAgdGhpcy5mb2N1c2VkTm9kZSA9IG5vZGU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05vZGUobmV4dD86IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy52aXNpYmxlTm9kZXMubGVuZ3RoKSB7XG4gICAgICBsZXQgaW5kZXggPSAwLCBzaGlmdCA9IG5leHQgPyAxIDogLTE7XG4gICAgICBjb25zdCBub2RlID0gdGhpcy52aXNpYmxlTm9kZXMuZmluZCgobiwgaSkgPT4ge1xuICAgICAgICBpbmRleCA9IGk7XG4gICAgICAgIHJldHVybiBuLmZvY3VzZWQ7XG4gICAgICB9KTtcblxuICAgICAgY29uc3QgbmV4dElkeCA9IG5vZGUgPyBpbmRleCArIHNoaWZ0IDogMDtcbiAgICAgIGNvbnN0IGlkeCA9IG5leHRJZHggPj0gdGhpcy52aXNpYmxlTm9kZXMubGVuZ3RoID8gMCA6IChuZXh0SWR4IDwgMCA/IHRoaXMudmlzaWJsZU5vZGVzLmxlbmd0aCAtIDEgOiBuZXh0SWR4KTtcbiAgICAgIHRoaXMudXBkYXRlRm9jdXModGhpcy52aXNpYmxlTm9kZXNbaWR4XSwgbm9kZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -54,6 +54,16 @@ import localeEnGb from '@angular/common/locales/en-GB';
54
54
  import localeExtraEnGb from '@angular/common/locales/extra/en-GB';
55
55
  import localeHe from '@angular/common/locales/he';
56
56
  import localeExtraHe from '@angular/common/locales/extra/he';
57
+ import localeFi from '@angular/common/locales/fi';
58
+ import localeExtraFi from '@angular/common/locales/extra/fi';
59
+ import localeDa from '@angular/common/locales/da';
60
+ import localeExtraDa from '@angular/common/locales/extra/da';
61
+ import localeSe from '@angular/common/locales/se';
62
+ import localeExtraSe from '@angular/common/locales/extra/se';
63
+ import localeNb from '@angular/common/locales/nb';
64
+ import localeExtraNb from '@angular/common/locales/extra/nb';
65
+ import localeNn from '@angular/common/locales/nn';
66
+ import localeExtraNn from '@angular/common/locales/extra/nn';
57
67
  /**
58
68
  * @ignore
59
69
  * Loader that fetches translations based on the configured locations
@@ -84,7 +94,12 @@ export class EoxTranslateJsonLoader {
84
94
  registerLocaleData(localeTh, 'th', localeExtraTh); // Thai
85
95
  registerLocaleData(localeVi, 'vi', localeExtraVi); // Vietnamese
86
96
  registerLocaleData(localeEnGb, 'en-GB', localeExtraEnGb); // English (Great-Britain)
87
- registerLocaleData(localeHe, 'he', localeExtraHe);
97
+ registerLocaleData(localeHe, 'he', localeExtraHe); // Hebrew
98
+ registerLocaleData(localeFi, 'fi', localeExtraFi); // Finish
99
+ registerLocaleData(localeDa, 'da', localeExtraDa); // Danish
100
+ registerLocaleData(localeSe, 'se', localeExtraSe); // Swedish
101
+ registerLocaleData(localeNb, 'nb', localeExtraNb); // Norwegian Bokmål
102
+ registerLocaleData(localeNn, 'nn', localeExtraNn); // Norwegian Nynorsk
88
103
  }
89
104
  /**
90
105
  *
@@ -107,4 +122,4 @@ EoxTranslateJsonLoader.ctorParameters = () => [
107
122
  { type: HttpClient },
108
123
  { type: CoreConfig, decorators: [{ type: Inject, args: [CORE_CONFIG,] }] }
109
124
  ];
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWpzb24tbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9jb25maWcvdHJhbnNsYXRlLWpzb24tbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JDLE9BQU8sRUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFL0M7O0dBRUc7QUFDSCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLFVBQVUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RCxPQUFPLGVBQWUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNsRSxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxr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QUNwRCxDQUFDO0lBR0Q7Ozs7T0FJRztJQUNILGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbEcsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDaEUsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxNQUFjLEVBQUUsSUFBWTtRQUN0RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLENBQUMsSUFBSSxDQUNoRCxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNmLHNFQUFzRTtZQUN0RSwwRUFBMEU7WUFDMUUsb0RBQW9EO1lBQ3BELE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQzFGLENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDOzs7WUEvR0ssVUFBVTtZQUlWLFVBQVUsdUJBNERzQixNQUFNLFNBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHJhbnNsYXRlTG9hZGVyfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgZm9ya0pvaW59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Q29yZUNvbmZpZ30gZnJvbSAnLi9jb3JlLWNvbmZpZyc7XG5pbXBvcnQge0NPUkVfQ09ORklHfSBmcm9tICcuL2NvcmUtaW5pdC50b2tlbnMnO1xuXG4vKipcbiAqIGkxOG4gcGFja2FnZXNcbiAqL1xuaW1wb3J0IHtyZWdpc3RlckxvY2FsZURhdGF9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgbG9jYWxlRGVDaCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9kZS1DSCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFEZUNoIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2RlLUNIJztcbmltcG9ydCBsb2NhbGVEZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9kZSc7XG5pbXBvcnQgbG9jYWxlRXh0cmFEZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9kZSc7XG5pbXBvcnQgbG9jYWxlQXIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvYXInO1xuaW1wb3J0IGxvY2FsZUV4dHJhQXIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvYXInO1xuaW1wb3J0IGxvY2FsZUVzIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2VzJztcbmltcG9ydCBsb2NhbGVFeHRyYUVzIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2VzJztcbmltcG9ydCBsb2NhbGVQdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wdCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFQdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9wdCc7XG5pbXBvcnQgbG9jYWxlRnIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZnInO1xuaW1wb3J0IGxvY2FsZUV4dHJhRnIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvZnInO1xuaW1wb3J0IGxvY2FsZVpoIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poJztcbmltcG9ydCBsb2NhbGVFeHRyYVpoIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3poJztcbmltcG9ydCBsb2NhbGVaaEhhbnQgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvemgtSGFudCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFaaEhhbnQgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvemgtSGFudCc7XG5pbXBvcnQgbG9jYWxlTHYgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvbHYnO1xuaW1wb3J0IGxvY2FsZUV4dHJhTHYgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvbHYnO1xuaW1wb3J0IGxvY2FsZVJ1IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3J1JztcbmltcG9ydCBsb2NhbGVFeHRyYVJ1IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3J1JztcbmltcG9ydCBsb2NhbGVJdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9pdCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFJdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9pdCc7XG5pbXBvcnQgbG9jYWxlTmwgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvbmwnO1xuaW1wb3J0IGxvY2FsZUV4dHJhTmwgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvbmwnO1xuaW1wb3J0IGxvY2FsZVNrIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3NrJztcbmltcG9ydCBsb2NhbGVFeHRyYVNrIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3NrJztcbmltcG9ydCBsb2NhbGVQbCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wbCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFQbCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9wbCc7XG5pbXBvcnQgbG9jYWxlVWsgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvdWsnO1xuaW1wb3J0IGxvY2FsZUV4dHJhVWsgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvdWsnO1xuaW1wb3J0IGxvY2FsZUphIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2phJztcbmltcG9ydCBsb2NhbGVFeHRyYUphIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2phJztcbmltcG9ydCBsb2NhbGVLbyBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9rbyc7XG5pbXBvcnQgbG9jYWxlRXh0cmFLbyBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9rbyc7XG5pbXBvcnQgbG9jYWxlSGkgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaGknO1xuaW1wb3J0IGxvY2FsZUV4dHJhSGkgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvaGknO1xuaW1wb3J0IGxvY2FsZUJuIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2JuJztcbmltcG9ydCBsb2NhbGVFeHRyYUJuIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2JuJztcbmltcG9ydCBsb2NhbGVWaSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy92aSc7XG5pbXBvcnQgbG9jYWxlRXh0cmFWaSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS92aSc7XG5pbXBvcnQgbG9jYWxlVGggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvdGgnO1xuaW1wb3J0IGxvY2FsZUV4dHJhVGggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvdGgnO1xuaW1wb3J0IGxvY2FsZUVuR2IgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZW4tR0InO1xuaW1wb3J0IGxvY2FsZUV4dHJhRW5HYiBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9lbi1HQic7XG5pbXBvcnQgbG9jYWxlSGUgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaGUnO1xuaW1wb3J0IGxvY2FsZUV4dHJhSGUgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvaGUnO1xuXG4vKipcbiAqIEBpZ25vcmVcbiAqIExvYWRlciB0aGF0IGZldGNoZXMgdHJhbnNsYXRpb25zIGJhc2VkIG9uIHRoZSBjb25maWd1cmVkIGxvY2F0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgRW94VHJhbnNsYXRlSnNvbkxvYWRlciBpbXBsZW1lbnRzIFRyYW5zbGF0ZUxvYWRlciB7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGh0dHA6IEh0dHBDbGllbnQsIEBJbmplY3QoQ09SRV9DT05GSUcpIHB1YmxpYyBjb25maWc6IENvcmVDb25maWcpIHtcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRGUsICdkZScsIGxvY2FsZUV4dHJhRGUpOyAvLyBHZXJtYW5cbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlQXIsICdhcicsIGxvY2FsZUV4dHJhQXIpOyAvLyBBcmFiaWNcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRXMsICdlcycsIGxvY2FsZUV4dHJhRXMpOyAvLyBTcGFuaXNoXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVB0LCAncHQnLCBsb2NhbGVFeHRyYVB0KTsgLy8gUG9ydHVndWVzZVxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVGciwgJ2ZyJywgbG9jYWxlRXh0cmFGcik7IC8vIEZyZW5jaFxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVaaCwgJ3poJywgbG9jYWxlRXh0cmFaaCk7IC8vIENoaW5lc2VcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlTHYsICdsdicsIGxvY2FsZUV4dHJhTHYpOyAvLyBMYXR2aWFuXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVJ1LCAncnUnLCBsb2NhbGVFeHRyYVJ1KTsgLy8gUnVzc2lhblxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVJdCwgJ2l0JywgbG9jYWxlRXh0cmFJdCk7IC8vIEl0YWxpYW5cbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlTmwsICdubCcsIGxvY2FsZUV4dHJhTmwpOyAvLyBEdXRjaFxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVTaywgJ3NrJywgbG9jYWxlRXh0cmFTayk7IC8vIFNsb3Zha1xuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVQbCwgJ3BsJywgbG9jYWxlRXh0cmFQbCk7IC8vIFBvbGlzaFxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVVaywgJ3VrJywgbG9jYWxlRXh0cmFVayk7IC8vIFVrcmFpbmlhblxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVKYSwgJ2phJywgbG9jYWxlRXh0cmFKYSk7IC8vIEphcGFuZXNlXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUtvLCAna28nLCBsb2NhbGVFeHRyYUtvKTsgLy8gS29yZWFuXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUhpLCAnaGknLCBsb2NhbGVFeHRyYUhpKTsgLy8gSGluZGlcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlQm4sICdibicsIGxvY2FsZUV4dHJhQm4pOyAvLyBCZW5nYWxlc2VcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRGVDaCwgJ2RlLUNIJywgbG9jYWxlRXh0cmFEZUNoKTsgLy8gR2VybWFuIChzd2l0emVybGFuZClcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlWmhIYW50LCAnemgtSGFudCcsIGxvY2FsZUV4dHJhWmhIYW50KTsgLy8gQ2hpbmVzZSAodHJhZGl0aW9uYWwpXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVRoLCAndGgnLCBsb2NhbGVFeHRyYVRoKTsgLy8gVGhhaVxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVWaSwgJ3ZpJywgbG9jYWxlRXh0cmFWaSk7IC8vIFZpZXRuYW1lc2VcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRW5HYiwgJ2VuLUdCJywgbG9jYWxlRXh0cmFFbkdiKTsgLy8gRW5nbGlzaCAoR3JlYXQtQnJpdGFpbilcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlSGUsICdoZScsIGxvY2FsZUV4dHJhSGUpO1xuICB9XG5cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHN0cmluZyBsYW5nXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8T2JqZWN0PlxuICAgKi9cbiAgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxPYmplY3Q+IHtcbiAgICByZXR1cm4gZm9ya0pvaW4odGhpcy5jb25maWcudHJhbnNsYXRpb25zLm1hcChmb2xkZXIgPT4gdGhpcy5sb2FkVHJhbnNsYXRpb25GaWxlKGZvbGRlciwgbGFuZykpKS5waXBlKFxuICAgICAgbWFwKChyZXMpID0+IHJlcy5yZWR1Y2UoKGFjYywgeCkgPT4gT2JqZWN0LmFzc2lnbihhY2MsIHgpLCB7fSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFRyYW5zbGF0aW9uRmlsZShmb2xkZXI6IHN0cmluZywgbGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHtmb2xkZXJ9JHtsYW5nfS5qc29uYCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgLy8gSVNPIGNvZGVzIHdpdGggbW9yZSB0aGFuIDIgY2hhcmFjdGVycyBhcmUgc3ViLWxhbmd1YWdlcyBsaWtlIGRlLUNILlxuICAgICAgICAvLyBJZiB0aGVyZSBpcyBubyB0cmFuc2xhdGlvbiBmaWxlIGZvciB0aGF0IHN1Yi1sYW5ndWFnZSB3ZSdsbCB0cnkgdG8gbG9hZFxuICAgICAgICAvLyB0aGUgZmlsZSBmb3IgdGhlIGJhc2UgbGFuZ3VhZ2UgKGluIHRoaXMgY2FzZSBkZSkuXG4gICAgICAgIHJldHVybiBsYW5nLmxlbmd0aCA+IDIgPyB0aGlzLmxvYWRUcmFuc2xhdGlvbkZpbGUoZm9sZGVyLCBsYW5nLnN1YnN0cmluZygwLCAyKSkgOiBvZih7fSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG59XG4iXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWpzb24tbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9jb25maWcvdHJhbnNsYXRlLWpzb24tbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JDLE9BQU8sRUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFL0M7O0dBRUc7QUFDSCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLFVBQVUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RCxPQUFPLGVBQWUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNsRSxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLGFBQWEsTUFBTSxr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QUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhO1FBQ2hFLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzVELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQzdELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQzdELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQzdELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQzdELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxRQUFRO1FBQzNELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzVELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzVELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxZQUFZO1FBQy9ELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxXQUFXO1FBQzlELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzVELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxRQUFRO1FBQzNELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxZQUFZO1FBQy9ELGtCQUFrQixDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQyx1QkFBdUI7UUFDakYsa0JBQWtCLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsd0JBQXdCO1FBQ3hGLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxPQUFPO1FBQzFELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhO1FBQ2hFLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQywwQkFBMEI7UUFDcEYsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDNUQsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDNUQsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDNUQsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLFVBQVU7UUFDN0Qsa0JBQWtCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtRQUN0RSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsb0JBQW9CO0lBQ3pFLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLElBQVk7UUFDekIsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNsRyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNoRSxDQUFDO0lBQ0osQ0FBQztJQUVPLG1CQUFtQixDQUFDLE1BQWMsRUFBRSxJQUFZO1FBQ3RELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ2hELFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2Ysc0VBQXNFO1lBQ3RFLDBFQUEwRTtZQUMxRSxvREFBb0Q7WUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0YsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OztZQTlISyxVQUFVO1lBSVYsVUFBVSx1QkFzRXNCLE1BQU0sU0FBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUcmFuc2xhdGVMb2FkZXJ9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0luamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIG9mLCBmb3JrSm9pbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb3JlQ29uZmlnfSBmcm9tICcuL2NvcmUtY29uZmlnJztcbmltcG9ydCB7Q09SRV9DT05GSUd9IGZyb20gJy4vY29yZS1pbml0LnRva2Vucyc7XG5cbi8qKlxuICogaTE4biBwYWNrYWdlc1xuICovXG5pbXBvcnQge3JlZ2lzdGVyTG9jYWxlRGF0YX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCBsb2NhbGVEZUNoIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2RlLUNIJztcbmltcG9ydCBsb2NhbGVFeHRyYURlQ2ggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvZGUtQ0gnO1xuaW1wb3J0IGxvY2FsZURlIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2RlJztcbmltcG9ydCBsb2NhbGVFeHRyYURlIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2RlJztcbmltcG9ydCBsb2NhbGVBciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9hcic7XG5pbXBvcnQgbG9jYWxlRXh0cmFBciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9hcic7XG5pbXBvcnQgbG9jYWxlRXMgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXMnO1xuaW1wb3J0IGxvY2FsZUV4dHJhRXMgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvZXMnO1xuaW1wb3J0IGxvY2FsZVB0IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3B0JztcbmltcG9ydCBsb2NhbGVFeHRyYVB0IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3B0JztcbmltcG9ydCBsb2NhbGVGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgbG9jYWxlRXh0cmFGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9mcic7XG5pbXBvcnQgbG9jYWxlWmggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvemgnO1xuaW1wb3J0IGxvY2FsZUV4dHJhWmggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvemgnO1xuaW1wb3J0IGxvY2FsZVpoSGFudCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy96aC1IYW50JztcbmltcG9ydCBsb2NhbGVFeHRyYVpoSGFudCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS96aC1IYW50JztcbmltcG9ydCBsb2NhbGVMdiBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9sdic7XG5pbXBvcnQgbG9jYWxlRXh0cmFMdiBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9sdic7XG5pbXBvcnQgbG9jYWxlUnUgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvcnUnO1xuaW1wb3J0IGxvY2FsZUV4dHJhUnUgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvcnUnO1xuaW1wb3J0IGxvY2FsZUl0IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2l0JztcbmltcG9ydCBsb2NhbGVFeHRyYUl0IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2l0JztcbmltcG9ydCBsb2NhbGVObCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9ubCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFObCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9ubCc7XG5pbXBvcnQgbG9jYWxlU2sgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvc2snO1xuaW1wb3J0IGxvY2FsZUV4dHJhU2sgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvc2snO1xuaW1wb3J0IGxvY2FsZVBsIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3BsJztcbmltcG9ydCBsb2NhbGVFeHRyYVBsIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3BsJztcbmltcG9ydCBsb2NhbGVVayBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy91ayc7XG5pbXBvcnQgbG9jYWxlRXh0cmFVayBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS91ayc7XG5pbXBvcnQgbG9jYWxlSmEgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvamEnO1xuaW1wb3J0IGxvY2FsZUV4dHJhSmEgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvamEnO1xuaW1wb3J0IGxvY2FsZUtvIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2tvJztcbmltcG9ydCBsb2NhbGVFeHRyYUtvIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2tvJztcbmltcG9ydCBsb2NhbGVIaSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9oaSc7XG5pbXBvcnQgbG9jYWxlRXh0cmFIaSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9oaSc7XG5pbXBvcnQgbG9jYWxlQm4gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvYm4nO1xuaW1wb3J0IGxvY2FsZUV4dHJhQm4gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvYm4nO1xuaW1wb3J0IGxvY2FsZVZpIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3ZpJztcbmltcG9ydCBsb2NhbGVFeHRyYVZpIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL3ZpJztcbmltcG9ydCBsb2NhbGVUaCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy90aCc7XG5pbXBvcnQgbG9jYWxlRXh0cmFUaCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS90aCc7XG5pbXBvcnQgbG9jYWxlRW5HYiBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9lbi1HQic7XG5pbXBvcnQgbG9jYWxlRXh0cmFFbkdiIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2VuLUdCJztcbmltcG9ydCBsb2NhbGVIZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9oZSc7XG5pbXBvcnQgbG9jYWxlRXh0cmFIZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9oZSc7XG5pbXBvcnQgbG9jYWxlRmkgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZmknO1xuaW1wb3J0IGxvY2FsZUV4dHJhRmkgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvZmknO1xuaW1wb3J0IGxvY2FsZURhIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2RhJztcbmltcG9ydCBsb2NhbGVFeHRyYURhIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL2RhJztcbmltcG9ydCBsb2NhbGVTZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9zZSc7XG5pbXBvcnQgbG9jYWxlRXh0cmFTZSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9leHRyYS9zZSc7XG5pbXBvcnQgbG9jYWxlTmIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvbmInO1xuaW1wb3J0IGxvY2FsZUV4dHJhTmIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZXh0cmEvbmInO1xuaW1wb3J0IGxvY2FsZU5uIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL25uJztcbmltcG9ydCBsb2NhbGVFeHRyYU5uIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2V4dHJhL25uJztcblxuLyoqXG4gKiBAaWdub3JlXG4gKiBMb2FkZXIgdGhhdCBmZXRjaGVzIHRyYW5zbGF0aW9ucyBiYXNlZCBvbiB0aGUgY29uZmlndXJlZCBsb2NhdGlvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIEVveFRyYW5zbGF0ZUpzb25Mb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBodHRwOiBIdHRwQ2xpZW50LCBASW5qZWN0KENPUkVfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBDb3JlQ29uZmlnKSB7XG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZURlLCAnZGUnLCBsb2NhbGVFeHRyYURlKTsgLy8gR2VybWFuXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUFyLCAnYXInLCBsb2NhbGVFeHRyYUFyKTsgLy8gQXJhYmljXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUVzLCAnZXMnLCBsb2NhbGVFeHRyYUVzKTsgLy8gU3BhbmlzaFxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVQdCwgJ3B0JywgbG9jYWxlRXh0cmFQdCk7IC8vIFBvcnR1Z3Vlc2VcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRnIsICdmcicsIGxvY2FsZUV4dHJhRnIpOyAvLyBGcmVuY2hcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlWmgsICd6aCcsIGxvY2FsZUV4dHJhWmgpOyAvLyBDaGluZXNlXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUx2LCAnbHYnLCBsb2NhbGVFeHRyYUx2KTsgLy8gTGF0dmlhblxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVSdSwgJ3J1JywgbG9jYWxlRXh0cmFSdSk7IC8vIFJ1c3NpYW5cbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlSXQsICdpdCcsIGxvY2FsZUV4dHJhSXQpOyAvLyBJdGFsaWFuXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZU5sLCAnbmwnLCBsb2NhbGVFeHRyYU5sKTsgLy8gRHV0Y2hcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlU2ssICdzaycsIGxvY2FsZUV4dHJhU2spOyAvLyBTbG92YWtcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlUGwsICdwbCcsIGxvY2FsZUV4dHJhUGwpOyAvLyBQb2xpc2hcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlVWssICd1aycsIGxvY2FsZUV4dHJhVWspOyAvLyBVa3JhaW5pYW5cbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlSmEsICdqYScsIGxvY2FsZUV4dHJhSmEpOyAvLyBKYXBhbmVzZVxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVLbywgJ2tvJywgbG9jYWxlRXh0cmFLbyk7IC8vIEtvcmVhblxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVIaSwgJ2hpJywgbG9jYWxlRXh0cmFIaSk7IC8vIEhpbmRpXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUJuLCAnYm4nLCBsb2NhbGVFeHRyYUJuKTsgLy8gQmVuZ2FsZXNlXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZURlQ2gsICdkZS1DSCcsIGxvY2FsZUV4dHJhRGVDaCk7IC8vIEdlcm1hbiAoc3dpdHplcmxhbmQpXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVpoSGFudCwgJ3poLUhhbnQnLCBsb2NhbGVFeHRyYVpoSGFudCk7IC8vIENoaW5lc2UgKHRyYWRpdGlvbmFsKVxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVUaCwgJ3RoJywgbG9jYWxlRXh0cmFUaCk7IC8vIFRoYWlcbiAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlVmksICd2aScsIGxvY2FsZUV4dHJhVmkpOyAvLyBWaWV0bmFtZXNlXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUVuR2IsICdlbi1HQicsIGxvY2FsZUV4dHJhRW5HYik7IC8vIEVuZ2xpc2ggKEdyZWF0LUJyaXRhaW4pXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUhlLCAnaGUnLCBsb2NhbGVFeHRyYUhlKTsgLy8gSGVicmV3XG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUZpLCAnZmknLCBsb2NhbGVFeHRyYUZpKTsgLy8gRmluaXNoXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZURhLCAnZGEnLCBsb2NhbGVFeHRyYURhKTsgLy8gRGFuaXNoXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZVNlLCAnc2UnLCBsb2NhbGVFeHRyYVNlKTsgLy8gU3dlZGlzaFxuICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVOYiwgJ25iJywgbG9jYWxlRXh0cmFOYik7IC8vIE5vcndlZ2lhbiBCb2ttw6VsXG4gICAgcmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZU5uLCAnbm4nLCBsb2NhbGVFeHRyYU5uKTsgLy8gTm9yd2VnaWFuIE55bm9yc2tcbiAgfVxuXG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBzdHJpbmcgbGFuZ1xuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPE9iamVjdD5cbiAgICovXG4gIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8T2JqZWN0PiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKHRoaXMuY29uZmlnLnRyYW5zbGF0aW9ucy5tYXAoZm9sZGVyID0+IHRoaXMubG9hZFRyYW5zbGF0aW9uRmlsZShmb2xkZXIsIGxhbmcpKSkucGlwZShcbiAgICAgIG1hcCgocmVzKSA9PiByZXMucmVkdWNlKChhY2MsIHgpID0+IE9iamVjdC5hc3NpZ24oYWNjLCB4KSwge30pKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxvYWRUcmFuc2xhdGlvbkZpbGUoZm9sZGVyOiBzdHJpbmcsIGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7Zm9sZGVyfSR7bGFuZ30uanNvbmApLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlKSA9PiB7XG4gICAgICAgIC8vIElTTyBjb2RlcyB3aXRoIG1vcmUgdGhhbiAyIGNoYXJhY3RlcnMgYXJlIHN1Yi1sYW5ndWFnZXMgbGlrZSBkZS1DSC5cbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gdHJhbnNsYXRpb24gZmlsZSBmb3IgdGhhdCBzdWItbGFuZ3VhZ2Ugd2UnbGwgdHJ5IHRvIGxvYWRcbiAgICAgICAgLy8gdGhlIGZpbGUgZm9yIHRoZSBiYXNlIGxhbmd1YWdlIChpbiB0aGlzIGNhc2UgZGUpLlxuICAgICAgICByZXR1cm4gbGFuZy5sZW5ndGggPiAyID8gdGhpcy5sb2FkVHJhbnNsYXRpb25GaWxlKGZvbGRlciwgbGFuZy5zdWJzdHJpbmcoMCwgMikpIDogb2Yoe30pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -82,7 +82,7 @@ export class Config {
82
82
  */
83
83
  getSupportedClientLocales() {
84
84
  return ['en', 'de', 'ar', 'es', 'pt', 'fr', 'zh', 'lv', 'ru', 'it', 'nl', 'sk', 'pl', 'uk', 'ja', 'ko', 'hi', 'bn', 'de-CH', 'zh-Hant',
85
- 'th', 'vi', 'en-GB', 'he'];
85
+ 'th', 'vi', 'en-GB', 'he', 'fi', 'se', 'da', 'nb', 'nn'];
86
86
  }
87
87
  /**
88
88
  * Get the dashboards background image
@@ -130,4 +130,4 @@ Config.ctorParameters = () => [
130
130
  { type: TranslateService },
131
131
  { type: EventService }
132
132
  ];
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lby1zZGsvY29yZS9zcmMvbGliL3NlcnZpY2UvY29uZmlnL2NvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFNUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sTUFBTTtJQU1qQjs7T0FFRztJQUNILFlBQW9CLFNBQTJCLEVBQVUsS0FBbUI7UUFBeEQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBUHBFLFFBQUcsR0FBZ0IsSUFBSSxDQUFDO1FBRXhCLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBTTlCLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7O09BR0c7SUFDSSxHQUFHLENBQUMsR0FBZ0I7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksR0FBRyxDQUFpQjtZQUM1QixDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQztZQUNuQyxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7WUFDekIsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDO1lBQzdCLENBQUMsV0FB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QUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDOzs7WUFqSUYsVUFBVTs7O1lBVEgsZ0JBQWdCO1lBRWhCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7VXRpbHN9IGZyb20gJy4uLy4uL3V0aWwvdXRpbHMnO1xuaW1wb3J0IHtFdmVudFNlcnZpY2V9IGZyb20gJy4uL2V2ZW50cy9ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7RW5haW9Db25maWd9IGZyb20gJy4vY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQge0VuYWlvRXZlbnR9IGZyb20gJy4uL2V2ZW50cy9ldmVudHMnO1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgYWxsIENvbmZpZ3VyYXRpb25zXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25maWcge1xuXG4gIHByaXZhdGUgY2ZnOiBFbmFpb0NvbmZpZyA9IG51bGw7XG5cbiAgcHJpdmF0ZSBmaXhTZXJ2aWNlVXJpcyA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIGV2ZW50OiBFdmVudFNlcnZpY2UpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIGluaXRpYWxpemVHcmlkKCkge1xuICAgIHRoaXMuZXZlbnQudHJpZ2dlcihFbmFpb0V2ZW50LkVPX0xJQ0VOU0VfR1JJRCk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKiBTZXQgZHVyaW5nIGFwcCBpbml0IChzZWUgQ29yZUluaXQpXG4gICAqL1xuICBwdWJsaWMgc2V0KGNmZzogRW5haW9Db25maWcpIHtcbiAgICB0aGlzLmNmZyA9IGNmZztcbiAgICB0aGlzLmZpeFNlcnZpY2VVcmlzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oW1xuICAgICAgICAgICAgICAgICAgICAgIFsnc2VydmljZUJhc2UnLCAnL3Jlc3Qtd3Mvc2VydmljZSddLFxuICAgICAgICAgICAgICAgICAgICAgIFsnc2VhcmNoQmFzZScsICcvc2VhcmNoJ10sXG4gICAgICAgICAgICAgICAgICAgICAgWydjb250ZXh0QmFzZScsICcvc3RydWN0dXJlJ10sXG4gICAgICAgICAgICAgICAgICAgICAgWydpbmJveEJhc2UnLCAnL2luYm94c2VydmljZSddLFxuICAgICAgICAgICAgICAgICAgICAgIFsnYnBtQmFzZScsICcvYnBtJ10sXG4gICAgICAgICAgICAgICAgICAgICAgWydhZ2VudEJhc2UnLCAnL2FnZW50J10sXG4gICAgICAgICAgICAgICAgICAgICAgWydzdGF0dXNCYXNlJywgJy9zdGF0dXMnXV0pO1xuICAgIGNvbnN0IGxhbmd1YWdlcyA9IHRoaXMuZ2V0Q2xpZW50TG9jYWxlcygpLm1hcChsYW5nID0+IGxhbmcuaXNvKTtcbiAgICB0aGlzLnRyYW5zbGF0ZS5hZGRMYW5ncyhsYW5ndWFnZXMpO1xuICAgIHRoaXMudHJhbnNsYXRlLnNldERlZmF1bHRMYW5nKHRoaXMuZ2V0RGVmYXVsdENsaWVudExvY2FsZSgpKTtcbiAgICB0aGlzLmluaXRpYWxpemVHcmlkKCk7XG4gIH1cblxuICAvKipcbiAgICogQERlcHJlY2F0ZWQgcmVwbGFjZWQgYnkgZ2V0Q29udGV4dFBhdGhcbiAgICovXG4gIGdldExvZ2luQmFzZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldENvbnRleHRQYXRoKCk7XG4gIH1cblxuICBnZXRDb250ZXh0UGF0aCgpOiBzdHJpbmcge1xuICAgIGxldCBjcCA9IHRoaXMuZ2V0VXJpKCdjb250ZXh0UGF0aCcpXG4gICAgICAvLyBUT0RPOiByZW1vdmUgd2hlbiBub3Qgc3VwcG9ydGVkIGFueW1vcmVcbiAgICAgIHx8IHRoaXMuZ2V0VXJpKCdsb2dpbkJhc2UnKTtcbiAgICByZXR1cm4gKGNwICYmIGNwICE9PSAnLycpID8gY3AgOiAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIG5lc3RlZCBwcm9wZXJ0eSBvZiBjb25maWcgfCBjb21wbGV0ZSBjb25maWcgYnkgZGVmYXVsdFxuICAgKiBAcGFyYW0gcHJvcGVydHkgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGJlIHJldHJpZXZlZFxuICAgKi9cbiAgcHVibGljIGdldFJhdyhwcm9wZXJ0eTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gcHJvcGVydHkgPyBVdGlscy5nZXRQcm9wZXJ0eSh0aGlzLmNmZywgcHJvcGVydHkpIDogdGhpcy5jZmc7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciB0aGUgVVJJXG4gICAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkvdXJpIHRvIGJlIHJldHJpZXZlZFxuICAgKiBAcmV0dXJucyB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgZnJvbSB0aGUgVVJJLVNlY3Rpb24gb2YgdGhlIGNvbmZpZ1xuICAgKi9cbiAgcHVibGljIGdldFVyaShwcm9wZXJ0eTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gKHRoaXMuY2ZnWyd1cmknXSAmJiB0aGlzLmNmZ1sndXJpJ11bcHJvcGVydHldKSB8fCB0aGlzLmZpeFNlcnZpY2VVcmlzLmdldChwcm9wZXJ0eSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciB0aGUgYXZhaWxhYmxlIGNsaWVudCBsb2NhbGVzXG4gICAqIEByZXR1cm5zIGF2YWlsYWJsZSBjbGllbnQgbG9jYWxlc1xuICAgKi9cbiAgcHVibGljIGdldENsaWVudExvY2FsZXMoKTogYW55W10ge1xuICAgIHJldHVybiB0aGlzLmNmZ1snbGFuZ3VhZ2VzJ107XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciB0aGUgc3VwcG9ydGVkIGNsaWVudCBsb2NhbGVzXG4gICAqIEByZXR1cm5zIHN1cHBvcnRlZCBjbGllbnQgbG9jYWxlc1xuICAgKi9cbiAgcHVibGljIGdldFN1cHBvcnRlZENsaWVudExvY2FsZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbJ2VuJywgJ2RlJywgJ2FyJywgJ2VzJywgJ3B0JywgJ2ZyJywgJ3poJywgJ2x2JywgJ3J1JywgJ2l0JywgJ25sJywgJ3NrJywgJ3BsJywgJ3VrJywgJ2phJywgJ2tvJywgJ2hpJywgJ2JuJywgJ2RlLUNIJywgJ3poLUhhbnQnLFxuICAgICAgJ3RoJywgJ3ZpJywgJ2VuLUdCJywgJ2hlJ107XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBkYXNoYm9hcmRzIGJhY2tncm91bmQgaW1hZ2VcbiAgICogQHJldHVybnMgYmFja2dyb3VuZCBpbWFnZSB1cmkgZm9yIHRoZSBkYXNoYm9hcmRzIGJhY2tncm91bmQgaW1hZ2VcbiAgICovXG4gIHB1YmxpYyBnZXREYXNoYm9hcmRCYWNrZ3JvdW5kSW1hZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jZmdbJ2Rhc2hib2FyZEJhY2tncm91bmRJbWFnZSddO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgc2lkZWJhcnMgaGVhZGVyIGJhY2tncm91bmQgaW1hZ2VcbiAgICogQHJldHVybnMgYmFja2dyb3VuZCBpbWFnZSB1cmkgZm9yIHRoZSBzaWRlYmFycyBoZWFkZXIgYmFja2dyb3VuZCBpbWFnZVxuICAgKi9cbiAgcHVibGljIGdldFNpZGVCYXJIZWFkZXJJbWFnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNmZ1snc2lkZUJhckhlYWRlckltYWdlJ107XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBuYXZpZ2F0aW9uIGJhciBpbWFnZSAoTG9nbylcbiAgICogb25seSBhY2NlcHRzIHN2Zy5cbiAgICogQHJldHVybnMgYmFja2dyb3VuZCBpbWFnZSB1cmkgZm9yIHRoZSBOYXZpZ2F0aW9uYmFyIChMb2dvKVxuICAgKi9cbiAgcHVibGljIGdldE5hdmlnYXRpb25CYXJJbWFnZSgpOiBzdHJpbmcge1xuICAgIGxldCBsb2dvID0gdGhpcy5jZmdbJ25hdkJhckxvZ28nXTtcbiAgICBsb2dvID0gbG9nby5lbmRzV2l0aCgnLnN2ZycpID8gbG9nbyA6IGA8c3ZnPjwvc3ZnPmA7XG4gICAgcmV0dXJuIGxvZ287XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBkZWZhdWx0IGNsaWVudCBsb2NhbGVcbiAgICogQHJldHVybnMgSVNPIHN0cmluZyBvZiB0aGUgbG9jYWxlXG4gICAqL1xuICBwdWJsaWMgZ2V0RGVmYXVsdENsaWVudExvY2FsZSgpIHtcbiAgICBjb25zdCBsYW5nID0gdGhpcy5nZXRDbGllbnRMb2NhbGVzKCkuZmluZChfID0+IF8uZmFsbGJhY2spO1xuICAgIHJldHVybiBsYW5nID8gbGFuZy5pc28gOiAnZW4nO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHRlciBmb3IgdGhlIEFnZW50IENvbmZpZ3VyYXRpb25cbiAgICovXG4gIHB1YmxpYyBnZXRBZ2VudENvbmZpZygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmNmZ1snYWdlbnQnXTtcbiAgfVxufVxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lby1zZGsvY29yZS9zcmMvbGliL3NlcnZpY2UvY29uZmlnL2NvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFNUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sTUFBTTtJQU1qQjs7T0FFRztJQUNILFlBQW9CLFNBQTJCLEVBQVUsS0FBbUI7UUFBeEQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBUHBFLFFBQUcsR0FBZ0IsSUFBSSxDQUFDO1FBRXhCLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBTTlCLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7O09BR0c7SUFDSSxHQUFHLENBQUMsR0FBZ0I7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksR0FBRyxDQUFpQjtZQUM1QixDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQztZQUNuQyxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7WUFDekIsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDO1lBQzdCLENBQUMsV0FB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T0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksc0JBQXNCO1FBQzNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzRCxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7OztZQWpJRixVQUFVOzs7WUFUSCxnQkFBZ0I7WUFFaEIsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtVdGlsc30gZnJvbSAnLi4vLi4vdXRpbC91dGlscyc7XG5pbXBvcnQge0V2ZW50U2VydmljZX0gZnJvbSAnLi4vZXZlbnRzL2V2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtFbmFpb0NvbmZpZ30gZnJvbSAnLi9jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7RW5haW9FdmVudH0gZnJvbSAnLi4vZXZlbnRzL2V2ZW50cyc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiBhbGwgQ29uZmlndXJhdGlvbnNcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZyB7XG5cbiAgcHJpdmF0ZSBjZmc6IEVuYWlvQ29uZmlnID0gbnVsbDtcblxuICBwcml2YXRlIGZpeFNlcnZpY2VVcmlzID0gbnVsbDtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgZXZlbnQ6IEV2ZW50U2VydmljZSkge1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUdyaWQoKSB7XG4gICAgdGhpcy5ldmVudC50cmlnZ2VyKEVuYWlvRXZlbnQuRU9fTElDRU5TRV9HUklEKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqIFNldCBkdXJpbmcgYXBwIGluaXQgKHNlZSBDb3JlSW5pdClcbiAgICovXG4gIHB1YmxpYyBzZXQoY2ZnOiBFbmFpb0NvbmZpZykge1xuICAgIHRoaXMuY2ZnID0gY2ZnO1xuICAgIHRoaXMuZml4U2VydmljZVVyaXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPihbXG4gICAgICAgICAgICAgICAgICAgICAgWydzZXJ2aWNlQmFzZScsICcvcmVzdC13cy9zZXJ2aWNlJ10sXG4gICAgICAgICAgICAgICAgICAgICAgWydzZWFyY2hCYXNlJywgJy9zZWFyY2gnXSxcbiAgICAgICAgICAgICAgICAgICAgICBbJ2NvbnRleHRCYXNlJywgJy9zdHJ1Y3R1cmUnXSxcbiAgICAgICAgICAgICAgICAgICAgICBbJ2luYm94QmFzZScsICcvaW5ib3hzZXJ2aWNlJ10sXG4gICAgICAgICAgICAgICAgICAgICAgWydicG1CYXNlJywgJy9icG0nXSxcbiAgICAgICAgICAgICAgICAgICAgICBbJ2FnZW50QmFzZScsICcvYWdlbnQnXSxcbiAgICAgICAgICAgICAgICAgICAgICBbJ3N0YXR1c0Jhc2UnLCAnL3N0YXR1cyddXSk7XG4gICAgY29uc3QgbGFuZ3VhZ2VzID0gdGhpcy5nZXRDbGllbnRMb2NhbGVzKCkubWFwKGxhbmcgPT4gbGFuZy5pc28pO1xuICAgIHRoaXMudHJhbnNsYXRlLmFkZExhbmdzKGxhbmd1YWdlcyk7XG4gICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcodGhpcy5nZXREZWZhdWx0Q2xpZW50TG9jYWxlKCkpO1xuICAgIHRoaXMuaW5pdGlhbGl6ZUdyaWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBARGVwcmVjYXRlZCByZXBsYWNlZCBieSBnZXRDb250ZXh0UGF0aFxuICAgKi9cbiAgZ2V0TG9naW5CYXNlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q29udGV4dFBhdGgoKTtcbiAgfVxuXG4gIGdldENvbnRleHRQYXRoKCk6IHN0cmluZyB7XG4gICAgbGV0IGNwID0gdGhpcy5nZXRVcmkoJ2NvbnRleHRQYXRoJylcbiAgICAgIC8vIFRPRE86IHJlbW92ZSB3aGVuIG5vdCBzdXBwb3J0ZWQgYW55bW9yZVxuICAgICAgfHwgdGhpcy5nZXRVcmkoJ2xvZ2luQmFzZScpO1xuICAgIHJldHVybiAoY3AgJiYgY3AgIT09ICcvJykgPyBjcCA6ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgbmVzdGVkIHByb3BlcnR5IG9mIGNvbmZpZyB8IGNvbXBsZXRlIGNvbmZpZyBieSBkZWZhdWx0XG4gICAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gYmUgcmV0cmlldmVkXG4gICAqL1xuICBwdWJsaWMgZ2V0UmF3KHByb3BlcnR5OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiBwcm9wZXJ0eSA/IFV0aWxzLmdldFByb3BlcnR5KHRoaXMuY2ZnLCBwcm9wZXJ0eSkgOiB0aGlzLmNmZztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBVUklcbiAgICogQHBhcmFtIHByb3BlcnR5IFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eS91cmkgdG8gYmUgcmV0cmlldmVkXG4gICAqIEByZXR1cm5zIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBmcm9tIHRoZSBVUkktU2VjdGlvbiBvZiB0aGUgY29uZmlnXG4gICAqL1xuICBwdWJsaWMgZ2V0VXJpKHByb3BlcnR5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiAodGhpcy5jZmdbJ3VyaSddICYmIHRoaXMuY2ZnWyd1cmknXVtwcm9wZXJ0eV0pIHx8IHRoaXMuZml4U2VydmljZVVyaXMuZ2V0KHByb3BlcnR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBhdmFpbGFibGUgY2xpZW50IGxvY2FsZXNcbiAgICogQHJldHVybnMgYXZhaWxhYmxlIGNsaWVudCBsb2NhbGVzXG4gICAqL1xuICBwdWJsaWMgZ2V0Q2xpZW50TG9jYWxlcygpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMuY2ZnWydsYW5ndWFnZXMnXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBzdXBwb3J0ZWQgY2xpZW50IGxvY2FsZXNcbiAgICogQHJldHVybnMgc3VwcG9ydGVkIGNsaWVudCBsb2NhbGVzXG4gICAqL1xuICBwdWJsaWMgZ2V0U3VwcG9ydGVkQ2xpZW50TG9jYWxlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsnZW4nLCAnZGUnLCAnYXInLCAnZXMnLCAncHQnLCAnZnInLCAnemgnLCAnbHYnLCAncnUnLCAnaXQnLCAnbmwnLCAnc2snLCAncGwnLCAndWsnLCAnamEnLCAna28nLCAnaGknLCAnYm4nLCAnZGUtQ0gnLCAnemgtSGFudCcsXG4gICAgICAndGgnLCAndmknLCAnZW4tR0InLCAnaGUnLCAnZmknLCAnc2UnLCAnZGEnLCAnbmInLCAnbm4nXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGRhc2hib2FyZHMgYmFja2dyb3VuZCBpbWFnZVxuICAgKiBAcmV0dXJucyBiYWNrZ3JvdW5kIGltYWdlIHVyaSBmb3IgdGhlIGRhc2hib2FyZHMgYmFja2dyb3VuZCBpbWFnZVxuICAgKi9cbiAgcHVibGljIGdldERhc2hib2FyZEJhY2tncm91bmRJbWFnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNmZ1snZGFzaGJvYXJkQmFja2dyb3VuZEltYWdlJ107XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBzaWRlYmFycyBoZWFkZXIgYmFja2dyb3VuZCBpbWFnZVxuICAgKiBAcmV0dXJucyBiYWNrZ3JvdW5kIGltYWdlIHVyaSBmb3IgdGhlIHNpZGViYXJzIGhlYWRlciBiYWNrZ3JvdW5kIGltYWdlXG4gICAqL1xuICBwdWJsaWMgZ2V0U2lkZUJhckhlYWRlckltYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2ZnWydzaWRlQmFySGVhZGVySW1hZ2UnXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG5hdmlnYXRpb24gYmFyIGltYWdlIChMb2dvKVxuICAgKiBvbmx5IGFjY2VwdHMgc3ZnLlxuICAgKiBAcmV0dXJucyBiYWNrZ3JvdW5kIGltYWdlIHVyaSBmb3IgdGhlIE5hdmlnYXRpb25iYXIgKExvZ28pXG4gICAqL1xuICBwdWJsaWMgZ2V0TmF2aWdhdGlvbkJhckltYWdlKCk6IHN0cmluZyB7XG4gICAgbGV0IGxvZ28gPSB0aGlzLmNmZ1snbmF2QmFyTG9nbyddO1xuICAgIGxvZ28gPSBsb2dvLmVuZHNXaXRoKCcuc3ZnJykgPyBsb2dvIDogYDxzdmc+PC9zdmc+YDtcbiAgICByZXR1cm4gbG9nbztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGRlZmF1bHQgY2xpZW50IGxvY2FsZVxuICAgKiBAcmV0dXJucyBJU08gc3RyaW5nIG9mIHRoZSBsb2NhbGVcbiAgICovXG4gIHB1YmxpYyBnZXREZWZhdWx0Q2xpZW50TG9jYWxlKCkge1xuICAgIGNvbnN0IGxhbmcgPSB0aGlzLmdldENsaWVudExvY2FsZXMoKS5maW5kKF8gPT4gXy5mYWxsYmFjayk7XG4gICAgcmV0dXJuIGxhbmcgPyBsYW5nLmlzbyA6ICdlbic7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciB0aGUgQWdlbnQgQ29uZmlndXJhdGlvblxuICAgKi9cbiAgcHVibGljIGdldEFnZW50Q29uZmlnKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuY2ZnWydhZ2VudCddO1xuICB9XG59XG4iXX0=
@@ -51,6 +51,16 @@ import localeEnGb from '@angular/common/locales/en-GB';
51
51
  import localeExtraEnGb from '@angular/common/locales/extra/en-GB';
52
52
  import localeHe from '@angular/common/locales/he';
53
53
  import localeExtraHe from '@angular/common/locales/extra/he';
54
+ import localeFi from '@angular/common/locales/fi';
55
+ import localeExtraFi from '@angular/common/locales/extra/fi';
56
+ import localeDa from '@angular/common/locales/da';
57
+ import localeExtraDa from '@angular/common/locales/extra/da';
58
+ import localeSe from '@angular/common/locales/se';
59
+ import localeExtraSe from '@angular/common/locales/extra/se';
60
+ import localeNb from '@angular/common/locales/nb';
61
+ import localeExtraNb from '@angular/common/locales/extra/nb';
62
+ import localeNn from '@angular/common/locales/nn';
63
+ import localeExtraNn from '@angular/common/locales/extra/nn';
54
64
  import * as momentImported from 'moment';
55
65
  import { LocalStorage, StorageMap } from '@ngx-pwa/local-storage';
56
66
  import { saveAs } from 'file-saver';
@@ -139,7 +149,12 @@ class EoxTranslateJsonLoader {
139
149
  registerLocaleData(localeTh, 'th', localeExtraTh); // Thai
140
150
  registerLocaleData(localeVi, 'vi', localeExtraVi); // Vietnamese
141
151
  registerLocaleData(localeEnGb, 'en-GB', localeExtraEnGb); // English (Great-Britain)
142
- registerLocaleData(localeHe, 'he', localeExtraHe);
152
+ registerLocaleData(localeHe, 'he', localeExtraHe); // Hebrew
153
+ registerLocaleData(localeFi, 'fi', localeExtraFi); // Finish
154
+ registerLocaleData(localeDa, 'da', localeExtraDa); // Danish
155
+ registerLocaleData(localeSe, 'se', localeExtraSe); // Swedish
156
+ registerLocaleData(localeNb, 'nb', localeExtraNb); // Norwegian Bokmål
157
+ registerLocaleData(localeNn, 'nn', localeExtraNn); // Norwegian Nynorsk
143
158
  }
144
159
  /**
145
160
  *
@@ -1177,7 +1192,7 @@ class Config {
1177
1192
  */
1178
1193
  getSupportedClientLocales() {
1179
1194
  return ['en', 'de', 'ar', 'es', 'pt', 'fr', 'zh', 'lv', 'ru', 'it', 'nl', 'sk', 'pl', 'uk', 'ja', 'ko', 'hi', 'bn', 'de-CH', 'zh-Hant',
1180
- 'th', 'vi', 'en-GB', 'he'];
1195
+ 'th', 'vi', 'en-GB', 'he', 'fi', 'se', 'da', 'nb', 'nn'];
1181
1196
  }
1182
1197
  /**
1183
1198
  * Get the dashboards background image