@stemy/ngx-utils 17.3.9 → 17.3.10

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.
@@ -63,7 +63,7 @@ export class DropdownContentDirective {
63
63
  });
64
64
  return {
65
65
  styles: {
66
- left: `${x}px`, top: `${y}px`, right: undefined, bottom: undefined,
66
+ left: `${x}px`, top: `${y}px`, right: null, bottom: null,
67
67
  position: "absolute",
68
68
  },
69
69
  placement,
@@ -81,10 +81,9 @@ export class DropdownContentDirective {
81
81
  top: y != null ? `${y}px` : ``,
82
82
  });
83
83
  }
84
- Object.assign(content.style, {
84
+ Object.assign(content.style, styles, {
85
85
  opacity: init ? "0" : "1",
86
- zIndex: `var(--dd-z-index, 100)`,
87
- ...styles
86
+ zIndex: `var(--dd-z-index, 100)`
88
87
  });
89
88
  const refRect = ref.getBoundingClientRect();
90
89
  const contentRect = content.getBoundingClientRect();
@@ -199,4 +198,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
199
198
  }] }, { type: i0.TemplateRef, decorators: [{
200
199
  type: Optional
201
200
  }] }] });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvZHJvcGRvd24tY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFxQixRQUFRLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhILE9BQU8sRUFDSCxLQUFLLEVBQ0wsYUFBYSxFQUNiLFVBQVUsRUFDVixlQUFlLEVBQ2YsS0FBSyxFQUdPLFVBQVUsRUFDekIsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQUU5QyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBb0JoRCxNQUFNLE9BQU8sd0JBQXdCO0lBUWpDLFlBQXNCLEdBQXFCLEVBQ2EsUUFBcUIsRUFDM0MsUUFBMkIsRUFDNUIsV0FBNkI7UUFIeEMsUUFBRyxHQUFILEdBQUcsQ0FBa0I7UUFDYSxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQzNDLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUZBQXlGLENBQUMsQ0FBQztRQUMvRyxDQUFDO1FBQ0QsSUFBSSxDQUFDLElB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VG5DLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsS0FBSztvQkFDakIsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0I7OzBCQVVnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFlBQVk7OzBCQUMvQixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtcbiAgICBhcnJvdyxcbiAgICBhdXRvUGxhY2VtZW50LFxuICAgIGF1dG9VcGRhdGUsXG4gICAgY29tcHV0ZVBvc2l0aW9uLFxuICAgIHNoaWZ0LFxuICAgIE1pZGRsZXdhcmVEYXRhLFxuICAgIFBsYWNlbWVudCxcbiAgICBNaWRkbGV3YXJlLCBsaW1pdFNoaWZ0XG59IGZyb20gXCJAZmxvYXRpbmctdWkvZG9tXCI7XG5cbmltcG9ydCB7Uk9PVF9FTEVNRU5UfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XG5pbXBvcnQge0Ryb3Bkb3duRGlyZWN0aXZlfSBmcm9tIFwiLi9kcm9wZG93bi5kaXJlY3RpdmVcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZVV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvb2JzZXJ2YWJsZS51dGlsc1wiO1xuaW1wb3J0IHtnZXRDc3NWYXJpYWJsZXN9IGZyb20gXCIuLi91dGlscy9taXNjXCI7XG5cbmNvbnN0IHJlY3RQcm9wcyA9IFtcInhcIiwgXCJ5XCIsIFwid2lkdGhcIiwgXCJoZWlnaHRcIl07XG5cbmludGVyZmFjZSBDb21wdXRlUmVzdWx0IHtcbiAgICBzdHlsZXM6IHtcbiAgICAgICAgcG9zaXRpb246IFwiZml4ZWRcIiB8IFwiYWJzb2x1dGVcIjtcbiAgICAgICAgbGVmdDogc3RyaW5nO1xuICAgICAgICB0b3A6IHN0cmluZztcbiAgICAgICAgcmlnaHQ6IHN0cmluZztcbiAgICAgICAgYm90dG9tOiBzdHJpbmc7XG4gICAgfSxcbiAgICBwbGFjZW1lbnQ6IFBsYWNlbWVudDtcbiAgICBpc01vYmlsZVZpZXc6IGJvb2xlYW47XG4gICAgbWlkZGxld2FyZURhdGE/OiBNaWRkbGV3YXJlRGF0YTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXG4gICAgc2VsZWN0b3I6IFwiW2Ryb3Bkb3duQ29udGVudF1cIixcbiAgICBleHBvcnRBczogXCJkcm9wZG93bi1jb250ZW50XCIsXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29udGVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIHByb3RlY3RlZCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgYXR0YWNoVG86IEhUTUxFbGVtZW50O1xuICAgIHByb3RlY3RlZCBhdHRhY2hPdXRzaWRlOiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBsYXN0UGxhY2VtZW50OiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIGNsZWFuVXA6ICgpID0+IHZvaWQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoUk9PVF9FTEVNRU5UKSBwcm90ZWN0ZWQgcm9vdEVsZW06IEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCBkcm9wZG93bjogRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEcm9wZG93bkRpcmVjdGl2ZSBpcyByZXF1aXJlZCEgUGxlYXNlIHVzZSBpdCBpbnNpZGUgYSBkZCwgZHJvcC1kb3duIGRpcmVjdGl2ZSBhdHRyaWJ1dGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJUZW1wbGF0ZVJlZiBpcyByZXF1aXJlZCEgUGxlYXNlIHVzZSB3aXRoICpkcm9wZG93bkNvbnRlbnRcIik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sYXN0UGxhY2VtZW50ID0gbnVsbDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBPYnNlcnZhYmxlVXRpbHMubXVsdGlTdWJzY3JpcHRpb24oXG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duLm9uU2hvd24uc3Vic2NyaWJlKCgpID0+IHRoaXMuY3JlYXRlVmlldygpKSxcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd24ub25IaWRkZW4uc3Vic2NyaWJlKCgpID0+IHRoaXMuZGVzdHJveVZpZXcoKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZGVzdHJveVZpZXcoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVmlldyhpbml0OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMuZHJvcGRvd24uY29udGVudEVsZW1lbnQpIHJldHVybjtcbiAgICAgICAgY29uc3QgbW9iaWxlV2lkdGggPSB0aGlzLmRyb3Bkb3duLm1vYmlsZVZpZXdVbmRlciB8fCAwO1xuICAgICAgICBjb25zdCByZWYgPSB0aGlzLmRyb3Bkb3duLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IFtjb250ZW50LCBhcnJvd0VsXSA9IHRoaXMuY3JlYXRlV3JhcHBlcigpO1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNvbnRlbnRFbGVtZW50ID0gY29udGVudDtcbiAgICAgICAgLy8gU2V0IHVwIGZsb2F0aW5nIFVJIHBvc2l0aW9uaW5nIHNldHRpbmdzXG4gICAgICAgIGNvbnN0IG1pZGRsZXdhcmU6IE1pZGRsZXdhcmVbXSA9IFtdO1xuICAgICAgICBpZiAodGhpcy5kcm9wZG93bi5hdXRvUGxhY2VtZW50KSB7XG4gICAgICAgICAgICBtaWRkbGV3YXJlLnB1c2goXG4gICAgICAgICAgICAgICAgc2hpZnQoe1xuICAgICAgICAgICAgICAgICAgICBib3VuZGFyeTogdGhpcy5kcm9wZG93bi5ib3VuZGFyeSxcbiAgICAgICAgICAgICAgICAgICAgbGltaXRlcjogbGltaXRTaGlmdCgpXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgYXV0b1BsYWNlbWVudCh0aGlzLmRyb3Bkb3duLmF1dG9QbGFjZW1lbnQpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBtaWRkbGV3YXJlLnB1c2goXG4gICAgICAgICAgICBhcnJvdyh7ZWxlbWVudDogYXJyb3dFbH0pXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGNvbXB1dGUgPSBhc3luYyAoKTogUHJvbWlzZTxDb21wdXRlUmVzdWx0PiA9PiB7XG4gICAgICAgICAgICBjb25zdCBpc01vYmlsZVZpZXcgPSB3aW5kb3cuaW5uZXJXaWR0aCA8PSBtb2JpbGVXaWR0aDtcbiAgICAgICAgICAgIGlmIChpc01vYmlsZVZpZXcpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IFwiMHB4XCIsIHRvcDogXCIwcHhcIiwgcmlnaHQ6IFwiMHB4XCIsIGJvdHRvbTogXCIwcHhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogXCJ0b3BcIixcbiAgICAgICAgICAgICAgICAgICAgaXNNb2JpbGVWaWV3XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHt4LCB5LCBwbGFjZW1lbnQsIG1pZGRsZXdhcmVEYXRhfSA9IGF3YWl0IGNvbXB1dGVQb3NpdGlvbihcbiAgICAgICAgICAgICAgICByZWYsXG4gICAgICAgICAgICAgICAgY29udGVudCxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHN0cmF0ZWd5OiBcImFic29sdXRlXCIsXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy5kcm9wZG93bi5wbGFjZW1lbnQgfHwgXCJib3R0b21cIixcbiAgICAgICAgICAgICAgICAgICAgbWlkZGxld2FyZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgc3R5bGVzOiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGAke3h9cHhgLCB0b3A6IGAke3l9cHhgLCByaWdodDogdW5kZWZpbmVkLCBib3R0b206IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBpc01vYmlsZVZpZXcsXG4gICAgICAgICAgICAgICAgbWlkZGxld2FyZURhdGFcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgLy8gU2V0IHVwIGZsb2F0aW5nIFVJIGF1dG8gdXBkYXRlXG4gICAgICAgIHRoaXMuY2xlYW5VcCA9IGF1dG9VcGRhdGUoXG4gICAgICAgICAgICByZWYsXG4gICAgICAgICAgICBjb250ZW50LFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbXB1dGUoKS50aGVuKCh7c3R5bGVzLCBwbGFjZW1lbnQsIGlzTW9iaWxlVmlldywgbWlkZGxld2FyZURhdGF9KSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKG1pZGRsZXdhcmVEYXRhPy5hcnJvdykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qge3gsIHl9ID0gbWlkZGxld2FyZURhdGEuYXJyb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGFycm93RWwuc3R5bGUsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB4ICE9IG51bGwgPyBgJHt4fXB4YCA6IGBgLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogeSAhPSBudWxsID8gYCR7eX1weGAgOiBgYCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihjb250ZW50LnN0eWxlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiBpbml0ID8gXCIwXCIgOiBcIjFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogYHZhcigtLWRkLXotaW5kZXgsIDEwMClgLFxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uc3R5bGVzXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZlJlY3QgPSByZWYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRSZWN0ID0gY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdFBsYWNlbWVudCA9IHRoaXMubGFzdFBsYWNlbWVudDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3UGxhY2VtZW50ID0gYGRyb3Bkb3duLXBsYWNlbWVudC0ke3BsYWNlbWVudH1gO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdFBsYWNlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmLmNsYXNzTGlzdC5yZXBsYWNlKGxhc3RQbGFjZW1lbnQsIG5ld1BsYWNlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LmNsYXNzTGlzdC5yZXBsYWNlKGxhc3RQbGFjZW1lbnQsIG5ld1BsYWNlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWYuY2xhc3NMaXN0LmFkZChuZXdQbGFjZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudC5jbGFzc0xpc3QuYWRkKG5ld1BsYWNlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzTW9iaWxlVmlldykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudC5jbGFzc0xpc3QucmVtb3ZlKGBkcm9wZG93bi1jb250ZW50LWRlc2t0b3BgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQuY2xhc3NMaXN0LmFkZChgZHJvcGRvd24tY29udGVudC1tb2JpbGVgKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQuY2xhc3NMaXN0LmFkZChgZHJvcGRvd24tY29udGVudC1kZXNrdG9wYCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LmNsYXNzTGlzdC5yZW1vdmUoYGRyb3Bkb3duLWNvbnRlbnQtbW9iaWxlYCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVjdFByb3BzLmZvckVhY2gocHJvcCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LnN0eWxlLnNldFByb3BlcnR5KGAtLXRvZ2dsZS0ke3Byb3B9YCwgYCR7cmVmUmVjdFtwcm9wXX1weGApO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmLnN0eWxlLnNldFByb3BlcnR5KGAtLWNvbnRlbnQtJHtwcm9wfWAsIGAke2NvbnRlbnRSZWN0W3Byb3BdfXB4YCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RQbGFjZW1lbnQgPSBuZXdQbGFjZW1lbnQ7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBkZXN0cm95VmlldygpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duLmNvbnRlbnRFbGVtZW50KSByZXR1cm47XG4gICAgICAgIHRoaXMuZHJvcGRvd24uY29udGVudEVsZW1lbnQucmVtb3ZlKCk7XG4gICAgICAgIHRoaXMuZHJvcGRvd24uY29udGVudEVsZW1lbnQgPSBudWxsO1xuICAgICAgICB0aGlzLnZjci5jbGVhcigpO1xuICAgICAgICB0aGlzLmNsZWFuVXA/LigpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB3aGVyZVRvQXR0YWNoKCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5kcm9wZG93bi5hdHRhY2hUbztcbiAgICAgICAgaWYgKHRhcmdldCA9PT0gXCJyb290XCIgJiYgdGhpcy5yb290RWxlbSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucm9vdEVsZW07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRhcmdldCBpbnN0YW5jZW9mIEVsZW1lbnRSZWYpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYW5jaG9yID0gdGhpcy52Y3IuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICByZXR1cm4gYW5jaG9yPy5wYXJlbnRFbGVtZW50IHx8IHRoaXMucm9vdEVsZW07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVdyYXBwZXIoKSB7XG4gICAgICAgIGNvbnN0IHdyYXBwZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgICBjb25zdCBhcnJvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XG4gICAgICAgIGFycm93LmNsYXNzTGlzdC5hZGQoYGRyb3Bkb3duLWNvbnRlbnQtYXJyb3dgKTtcbiAgICAgICAgYXJyb3cuc3R5bGUucG9zaXRpb24gPSBgYWJzb2x1dGVgO1xuICAgICAgICB3cmFwcGVyLmFwcGVuZENoaWxkKGFycm93KTtcbiAgICAgICAgY29uc3QgcmVmID0gdGhpcy52Y3IuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYpO1xuICAgICAgICByZWYucm9vdE5vZGVzLmZvckVhY2gobm9kZSA9PiB3cmFwcGVyLmFwcGVuZENoaWxkKG5vZGUpKTtcbiAgICAgICAgcmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5hdHRhY2hUbyA9IHRoaXMud2hlcmVUb0F0dGFjaCgpO1xuICAgICAgICB0aGlzLmF0dGFjaFRvLmFwcGVuZENoaWxkKHdyYXBwZXIpO1xuICAgICAgICB0aGlzLmF0dGFjaE91dHNpZGUgPSAhdGhpcy5kcm9wZG93bi5uYXRpdmVFbGVtZW50Py5jb250YWlucyh0aGlzLmF0dGFjaFRvKTtcblxuICAgICAgICBpZiAodGhpcy5hdHRhY2hPdXRzaWRlKSB7XG4gICAgICAgICAgICBjb25zdCByZWZlcmVuY2VTdHlsZXMgPSBnZXRDc3NWYXJpYWJsZXModGhpcy5kcm9wZG93bi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIGNvbnN0IHdyYXBwZXJTdHlsZXMgPSBnZXRDc3NWYXJpYWJsZXMod3JhcHBlcik7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhyZWZlcmVuY2VTdHlsZXMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXdyYXBwZXJTdHlsZXNba2V5XSkge1xuICAgICAgICAgICAgICAgICAgICB3cmFwcGVyLnN0eWxlLnNldFByb3BlcnR5KGtleSwgcmVmZXJlbmNlU3R5bGVzW2tleV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXV0b1BsYWNlbWVudCA9IHRoaXMuZHJvcGRvd24uYXV0b1BsYWNlbWVudDtcbiAgICAgICAgaWYgKHRoaXMubGFzdFBsYWNlbWVudCkge1xuICAgICAgICAgICAgd3JhcHBlci5jbGFzc0xpc3QuYWRkKHRoaXMubGFzdFBsYWNlbWVudCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGF1dG9QbGFjZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsID0gYXV0b1BsYWNlbWVudC5hbGxvd2VkUGxhY2VtZW50cy5zb21lKHAgPT4gcC5pbmNsdWRlcyhcInRvcFwiKSB8fCBwLmluY2x1ZGVzKFwiYm90dG9tXCIpKTtcbiAgICAgICAgICAgIGNvbnN0IGhvcml6b250YWwgPSBhdXRvUGxhY2VtZW50LmFsbG93ZWRQbGFjZW1lbnRzLnNvbWUocCA9PiBwLmluY2x1ZGVzKFwibGVmdFwiKSB8fCBwLmluY2x1ZGVzKFwicmlnaHRcIikpO1xuICAgICAgICAgICAgaWYgKHZlcnRpY2FsICYmIGhvcml6b250YWwpIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVyLmNsYXNzTGlzdC5hZGQoYGRyb3Bkb3duLWNvbnRlbnQtYXhpcy1ib3RoYCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF4aXMgPSB2ZXJ0aWNhbCA/IFwidmVydGljYWxcIiA6IFwiaG9yaXpvbnRhbFwiO1xuICAgICAgICAgICAgICAgIHdyYXBwZXIuY2xhc3NMaXN0LmFkZChgZHJvcGRvd24tY29udGVudC1heGlzLSR7YXhpc31gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB3cmFwcGVyLmNsYXNzTGlzdC5hZGQoXCJkcm9wZG93bi1jb250ZW50LXdyYXBcIik7XG4gICAgICAgIHJldHVybiBbd3JhcHBlciwgYXJyb3ddO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3JlYXRlVmlldyh0cnVlKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmRlc3Ryb3lWaWV3KCkpO1xuICAgIH1cbn1cbiJdfQ==
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvZHJvcGRvd24tY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFxQixRQUFRLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhILE9BQU8sRUFDSCxLQUFLLEVBQ0wsYUFBYSxFQUNiLFVBQVUsRUFDVixlQUFlLEVBQ2YsS0FBSyxFQUdPLFVBQVUsRUFDekIsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQUU5QyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBb0JoRCxNQUFNLE9BQU8sd0JBQXdCO0lBUWpDLFlBQXNCLEdBQXFCLEVBQ2EsUUFBcUIsRUFDM0MsUUFBMkIsRUFDNUIsV0FBNkI7UUFIeEMsUUFBRyxHQUFILEdBQUcsQ0FBa0I7UUFDYSxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQzNDLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUZBQXlGLENBQUMsQ0FBQztRQUMvRyxDQUFDO1FBQ0QsSUFBSSxDQUFDLElB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QUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsS0FBSztvQkFDakIsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0I7OzBCQVVnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFlBQVk7OzBCQUMvQixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtcbiAgICBhcnJvdyxcbiAgICBhdXRvUGxhY2VtZW50LFxuICAgIGF1dG9VcGRhdGUsXG4gICAgY29tcHV0ZVBvc2l0aW9uLFxuICAgIHNoaWZ0LFxuICAgIE1pZGRsZXdhcmVEYXRhLFxuICAgIFBsYWNlbWVudCxcbiAgICBNaWRkbGV3YXJlLCBsaW1pdFNoaWZ0XG59IGZyb20gXCJAZmxvYXRpbmctdWkvZG9tXCI7XG5cbmltcG9ydCB7Uk9PVF9FTEVNRU5UfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XG5pbXBvcnQge0Ryb3Bkb3duRGlyZWN0aXZlfSBmcm9tIFwiLi9kcm9wZG93bi5kaXJlY3RpdmVcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZVV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvb2JzZXJ2YWJsZS51dGlsc1wiO1xuaW1wb3J0IHtnZXRDc3NWYXJpYWJsZXN9IGZyb20gXCIuLi91dGlscy9taXNjXCI7XG5cbmNvbnN0IHJlY3RQcm9wcyA9IFtcInhcIiwgXCJ5XCIsIFwid2lkdGhcIiwgXCJoZWlnaHRcIl07XG5cbmludGVyZmFjZSBDb21wdXRlUmVzdWx0IHtcbiAgICBzdHlsZXM6IHtcbiAgICAgICAgcG9zaXRpb246IFwiZml4ZWRcIiB8IFwiYWJzb2x1dGVcIjtcbiAgICAgICAgbGVmdDogc3RyaW5nO1xuICAgICAgICB0b3A6IHN0cmluZztcbiAgICAgICAgcmlnaHQ6IHN0cmluZztcbiAgICAgICAgYm90dG9tOiBzdHJpbmc7XG4gICAgfSxcbiAgICBwbGFjZW1lbnQ6IFBsYWNlbWVudDtcbiAgICBpc01vYmlsZVZpZXc6IGJvb2xlYW47XG4gICAgbWlkZGxld2FyZURhdGE/OiBNaWRkbGV3YXJlRGF0YTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXG4gICAgc2VsZWN0b3I6IFwiW2Ryb3Bkb3duQ29udGVudF1cIixcbiAgICBleHBvcnRBczogXCJkcm9wZG93bi1jb250ZW50XCIsXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29udGVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIHByb3RlY3RlZCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgYXR0YWNoVG86IEhUTUxFbGVtZW50O1xuICAgIHByb3RlY3RlZCBhdHRhY2hPdXRzaWRlOiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBsYXN0UGxhY2VtZW50OiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIGNsZWFuVXA6ICgpID0+IHZvaWQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoUk9PVF9FTEVNRU5UKSBwcm90ZWN0ZWQgcm9vdEVsZW06IEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCBkcm9wZG93bjogRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEcm9wZG93bkRpcmVjdGl2ZSBpcyByZXF1aXJlZCEgUGxlYXNlIHVzZSBpdCBpbnNpZGUgYSBkZCwgZHJvcC1kb3duIGRpcmVjdGl2ZSBhdHRyaWJ1dGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJUZW1wbGF0ZVJlZiBpcyByZXF1aXJlZCEgUGxlYXNlIHVzZSB3aXRoICpkcm9wZG93bkNvbnRlbnRcIik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sYXN0UGxhY2VtZW50ID0gbnVsbDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBPYnNlcnZhYmxlVXRpbHMubXVsdGlTdWJzY3JpcHRpb24oXG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duLm9uU2hvd24uc3Vic2NyaWJlKCgpID0+IHRoaXMuY3JlYXRlVmlldygpKSxcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd24ub25IaWRkZW4uc3Vic2NyaWJlKCgpID0+IHRoaXMuZGVzdHJveVZpZXcoKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZGVzdHJveVZpZXcoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVmlldyhpbml0OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMuZHJvcGRvd24uY29udGVudEVsZW1lbnQpIHJldHVybjtcbiAgICAgICAgY29uc3QgbW9iaWxlV2lkdGggPSB0aGlzLmRyb3Bkb3duLm1vYmlsZVZpZXdVbmRlciB8fCAwO1xuICAgICAgICBjb25zdCByZWYgPSB0aGlzLmRyb3Bkb3duLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IFtjb250ZW50LCBhcnJvd0VsXSA9IHRoaXMuY3JlYXRlV3JhcHBlcigpO1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNvbnRlbnRFbGVtZW50ID0gY29udGVudDtcbiAgICAgICAgLy8gU2V0IHVwIGZsb2F0aW5nIFVJIHBvc2l0aW9uaW5nIHNldHRpbmdzXG4gICAgICAgIGNvbnN0IG1pZGRsZXdhcmU6IE1pZGRsZXdhcmVbXSA9IFtdO1xuICAgICAgICBpZiAodGhpcy5kcm9wZG93bi5hdXRvUGxhY2VtZW50KSB7XG4gICAgICAgICAgICBtaWRkbGV3YXJlLnB1c2goXG4gICAgICAgICAgICAgICAgc2hpZnQoe1xuICAgICAgICAgICAgICAgICAgICBib3VuZGFyeTogdGhpcy5kcm9wZG93bi5ib3VuZGFyeSxcbiAgICAgICAgICAgICAgICAgICAgbGltaXRlcjogbGltaXRTaGlmdCgpXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgYXV0b1BsYWNlbWVudCh0aGlzLmRyb3Bkb3duLmF1dG9QbGFjZW1lbnQpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBtaWRkbGV3YXJlLnB1c2goXG4gICAgICAgICAgICBhcnJvdyh7ZWxlbWVudDogYXJyb3dFbH0pXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGNvbXB1dGUgPSBhc3luYyAoKTogUHJvbWlzZTxDb21wdXRlUmVzdWx0PiA9PiB7XG4gICAgICAgICAgICBjb25zdCBpc01vYmlsZVZpZXcgPSB3aW5kb3cuaW5uZXJXaWR0aCA8PSBtb2JpbGVXaWR0aDtcbiAgICAgICAgICAgIGlmIChpc01vYmlsZVZpZXcpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IFwiMHB4XCIsIHRvcDogXCIwcHhcIiwgcmlnaHQ6IFwiMHB4XCIsIGJvdHRvbTogXCIwcHhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogXCJ0b3BcIixcbiAgICAgICAgICAgICAgICAgICAgaXNNb2JpbGVWaWV3XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHt4LCB5LCBwbGFjZW1lbnQsIG1pZGRsZXdhcmVEYXRhfSA9IGF3YWl0IGNvbXB1dGVQb3NpdGlvbihcbiAgICAgICAgICAgICAgICByZWYsXG4gICAgICAgICAgICAgICAgY29udGVudCxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHN0cmF0ZWd5OiBcImFic29sdXRlXCIsXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy5kcm9wZG93bi5wbGFjZW1lbnQgfHwgXCJib3R0b21cIixcbiAgICAgICAgICAgICAgICAgICAgbWlkZGxld2FyZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgc3R5bGVzOiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGAke3h9cHhgLCB0b3A6IGAke3l9cHhgLCByaWdodDogbnVsbCwgYm90dG9tOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIGlzTW9iaWxlVmlldyxcbiAgICAgICAgICAgICAgICBtaWRkbGV3YXJlRGF0YVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICAvLyBTZXQgdXAgZmxvYXRpbmcgVUkgYXV0byB1cGRhdGVcbiAgICAgICAgdGhpcy5jbGVhblVwID0gYXV0b1VwZGF0ZShcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29tcHV0ZSgpLnRoZW4oKHtzdHlsZXMsIHBsYWNlbWVudCwgaXNNb2JpbGVWaWV3LCBtaWRkbGV3YXJlRGF0YX0pID0+IHtcblxuICAgICAgICAgICAgICAgICAgICBpZiAobWlkZGxld2FyZURhdGE/LmFycm93KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7eCwgeX0gPSBtaWRkbGV3YXJlRGF0YS5hcnJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oYXJyb3dFbC5zdHlsZSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHggIT0gbnVsbCA/IGAke3h9cHhgIDogYGAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiB5ICE9IG51bGwgPyBgJHt5fXB4YCA6IGBgLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGNvbnRlbnQuc3R5bGUsIHN0eWxlcywge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogaW5pdCA/IFwiMFwiIDogXCIxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IGB2YXIoLS1kZC16LWluZGV4LCAxMDApYFxuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWZSZWN0ID0gcmVmLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50UmVjdCA9IGNvbnRlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RQbGFjZW1lbnQgPSB0aGlzLmxhc3RQbGFjZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5ld1BsYWNlbWVudCA9IGBkcm9wZG93bi1wbGFjZW1lbnQtJHtwbGFjZW1lbnR9YDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGxhc3RQbGFjZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZi5jbGFzc0xpc3QucmVwbGFjZShsYXN0UGxhY2VtZW50LCBuZXdQbGFjZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudC5jbGFzc0xpc3QucmVwbGFjZShsYXN0UGxhY2VtZW50LCBuZXdQbGFjZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmLmNsYXNzTGlzdC5hZGQobmV3UGxhY2VtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQuY2xhc3NMaXN0LmFkZChuZXdQbGFjZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc01vYmlsZVZpZXcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQuY2xhc3NMaXN0LnJlbW92ZShgZHJvcGRvd24tY29udGVudC1kZXNrdG9wYCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LmNsYXNzTGlzdC5hZGQoYGRyb3Bkb3duLWNvbnRlbnQtbW9iaWxlYCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LmNsYXNzTGlzdC5hZGQoYGRyb3Bkb3duLWNvbnRlbnQtZGVza3RvcGApO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudC5jbGFzc0xpc3QucmVtb3ZlKGBkcm9wZG93bi1jb250ZW50LW1vYmlsZWApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlY3RQcm9wcy5mb3JFYWNoKHByb3AgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudC5zdHlsZS5zZXRQcm9wZXJ0eShgLS10b2dnbGUtJHtwcm9wfWAsIGAke3JlZlJlY3RbcHJvcF19cHhgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZi5zdHlsZS5zZXRQcm9wZXJ0eShgLS1jb250ZW50LSR7cHJvcH1gLCBgJHtjb250ZW50UmVjdFtwcm9wXX1weGApO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXN0UGxhY2VtZW50ID0gbmV3UGxhY2VtZW50O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGVzdHJveVZpZXcoKSB7XG4gICAgICAgIGlmICghdGhpcy5kcm9wZG93bi5jb250ZW50RWxlbWVudCkgcmV0dXJuO1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNvbnRlbnRFbGVtZW50LnJlbW92ZSgpO1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNvbnRlbnRFbGVtZW50ID0gbnVsbDtcbiAgICAgICAgdGhpcy52Y3IuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5jbGVhblVwPy4oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgd2hlcmVUb0F0dGFjaCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMuZHJvcGRvd24uYXR0YWNoVG87XG4gICAgICAgIGlmICh0YXJnZXQgPT09IFwicm9vdFwiICYmIHRoaXMucm9vdEVsZW0pIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJvb3RFbGVtO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50UmVmKSB7XG4gICAgICAgICAgICByZXR1cm4gdGFyZ2V0Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gdGFyZ2V0O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFuY2hvciA9IHRoaXMudmNyLmVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgcmV0dXJuIGFuY2hvcj8ucGFyZW50RWxlbWVudCB8fCB0aGlzLnJvb3RFbGVtO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjcmVhdGVXcmFwcGVyKCkge1xuICAgICAgICBjb25zdCB3cmFwcGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKTtcbiAgICAgICAgY29uc3QgYXJyb3cgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgICBhcnJvdy5jbGFzc0xpc3QuYWRkKGBkcm9wZG93bi1jb250ZW50LWFycm93YCk7XG4gICAgICAgIGFycm93LnN0eWxlLnBvc2l0aW9uID0gYGFic29sdXRlYDtcbiAgICAgICAgd3JhcHBlci5hcHBlbmRDaGlsZChhcnJvdyk7XG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMudmNyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmKTtcbiAgICAgICAgcmVmLnJvb3ROb2Rlcy5mb3JFYWNoKG5vZGUgPT4gd3JhcHBlci5hcHBlbmRDaGlsZChub2RlKSk7XG4gICAgICAgIHJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuYXR0YWNoVG8gPSB0aGlzLndoZXJlVG9BdHRhY2goKTtcbiAgICAgICAgdGhpcy5hdHRhY2hUby5hcHBlbmRDaGlsZCh3cmFwcGVyKTtcbiAgICAgICAgdGhpcy5hdHRhY2hPdXRzaWRlID0gIXRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudD8uY29udGFpbnModGhpcy5hdHRhY2hUbyk7XG5cbiAgICAgICAgaWYgKHRoaXMuYXR0YWNoT3V0c2lkZSkge1xuICAgICAgICAgICAgY29uc3QgcmVmZXJlbmNlU3R5bGVzID0gZ2V0Q3NzVmFyaWFibGVzKHRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyU3R5bGVzID0gZ2V0Q3NzVmFyaWFibGVzKHdyYXBwZXIpO1xuICAgICAgICAgICAgT2JqZWN0LmtleXMocmVmZXJlbmNlU3R5bGVzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF3cmFwcGVyU3R5bGVzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgd3JhcHBlci5zdHlsZS5zZXRQcm9wZXJ0eShrZXksIHJlZmVyZW5jZVN0eWxlc1trZXldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGF1dG9QbGFjZW1lbnQgPSB0aGlzLmRyb3Bkb3duLmF1dG9QbGFjZW1lbnQ7XG4gICAgICAgIGlmICh0aGlzLmxhc3RQbGFjZW1lbnQpIHtcbiAgICAgICAgICAgIHdyYXBwZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmxhc3RQbGFjZW1lbnQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhdXRvUGxhY2VtZW50KSB7XG4gICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbCA9IGF1dG9QbGFjZW1lbnQuYWxsb3dlZFBsYWNlbWVudHMuc29tZShwID0+IHAuaW5jbHVkZXMoXCJ0b3BcIikgfHwgcC5pbmNsdWRlcyhcImJvdHRvbVwiKSk7XG4gICAgICAgICAgICBjb25zdCBob3Jpem9udGFsID0gYXV0b1BsYWNlbWVudC5hbGxvd2VkUGxhY2VtZW50cy5zb21lKHAgPT4gcC5pbmNsdWRlcyhcImxlZnRcIikgfHwgcC5pbmNsdWRlcyhcInJpZ2h0XCIpKTtcbiAgICAgICAgICAgIGlmICh2ZXJ0aWNhbCAmJiBob3Jpem9udGFsKSB7XG4gICAgICAgICAgICAgICAgd3JhcHBlci5jbGFzc0xpc3QuYWRkKGBkcm9wZG93bi1jb250ZW50LWF4aXMtYm90aGApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBheGlzID0gdmVydGljYWwgPyBcInZlcnRpY2FsXCIgOiBcImhvcml6b250YWxcIjtcbiAgICAgICAgICAgICAgICB3cmFwcGVyLmNsYXNzTGlzdC5hZGQoYGRyb3Bkb3duLWNvbnRlbnQtYXhpcy0ke2F4aXN9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgd3JhcHBlci5jbGFzc0xpc3QuYWRkKFwiZHJvcGRvd24tY29udGVudC13cmFwXCIpO1xuICAgICAgICByZXR1cm4gW3dyYXBwZXIsIGFycm93XTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNyZWF0ZVZpZXcodHJ1ZSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5kZXN0cm95VmlldygpKTtcbiAgICB9XG59XG4iXX0=
@@ -4861,7 +4861,7 @@ class DropdownContentDirective {
4861
4861
  });
4862
4862
  return {
4863
4863
  styles: {
4864
- left: `${x}px`, top: `${y}px`, right: undefined, bottom: undefined,
4864
+ left: `${x}px`, top: `${y}px`, right: null, bottom: null,
4865
4865
  position: "absolute",
4866
4866
  },
4867
4867
  placement,
@@ -4879,10 +4879,9 @@ class DropdownContentDirective {
4879
4879
  top: y != null ? `${y}px` : ``,
4880
4880
  });
4881
4881
  }
4882
- Object.assign(content.style, {
4882
+ Object.assign(content.style, styles, {
4883
4883
  opacity: init ? "0" : "1",
4884
- zIndex: `var(--dd-z-index, 100)`,
4885
- ...styles
4884
+ zIndex: `var(--dd-z-index, 100)`
4886
4885
  });
4887
4886
  const refRect = ref.getBoundingClientRect();
4888
4887
  const contentRect = content.getBoundingClientRect();