@acorex/components 7.1.16 → 7.1.18

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.
@@ -42,7 +42,6 @@ class MXValueComponent extends MXBaseComponent {
42
42
  return this.getValue(this._value) || this.defaultValue;
43
43
  }
44
44
  set value(v) {
45
- debugger;
46
45
  v = this.setValue(v);
47
46
  //if (!this._isInited ) {
48
47
  const old = AXObjectUtil.deepJSONClone(this.value);
@@ -105,9 +104,7 @@ class MXValueComponent extends MXBaseComponent {
105
104
  const isRequired = Array.from(this.getHostElement().querySelectorAll('ax-validation-rule')).some(c => c.__axContext__.enabled && c.__axContext__.rule == 'required');
106
105
  //
107
106
  if (isRequired) {
108
- const container = this.getHostElement().classList.contains('ax-editor-container')
109
- ? this.getHostElement()
110
- : this.getHostElement().querySelector('.ax-editor-container');
107
+ const container = this.getHostElement().classList.contains('ax-editor-container') ? this.getHostElement() : this.getHostElement().querySelector('.ax-editor-container');
111
108
  const formField = container?.closest('.ax-form-field');
112
109
  const label = formField?.querySelector('ax-label')?.__axContext__;
113
110
  if (label)
@@ -156,9 +153,7 @@ class MXValueComponent extends MXBaseComponent {
156
153
  });
157
154
  }
158
155
  setState(state, ...args) {
159
- const container = this.getHostElement().classList.contains('ax-editor-container')
160
- ? this.getHostElement()
161
- : this.getHostElement().querySelector('.ax-editor-container');
156
+ const container = this.getHostElement().classList.contains('ax-editor-container') ? this.getHostElement() : this.getHostElement().querySelector('.ax-editor-container');
162
157
  const formField = container?.closest('.ax-form-field');
163
158
  const label = formField?.querySelector('ax-label') || formField?.querySelector('label');
164
159
  let target = container || this.getHostElement().firstElementChild;
@@ -204,4 +199,4 @@ export { MXValueComponent };
204
199
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: MXValueComponent, decorators: [{
205
200
  type: Injectable
206
201
  }] });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uL3NyYy9jb21wb25lbnRzL3ZhbHVlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFvQixlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFHM0UsTUFDYSxnQkFBMEIsU0FBUSxlQUFlO0lBQzVEOzs7T0FHRztJQUNILGNBQWMsR0FBMkMsSUFBSSxZQUFZLEVBQTRCLENBQUM7SUFFdEcsV0FBVyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3pELFdBQVcsR0FBbUMsSUFBSSxZQUFZLEVBQW9CLENBQUM7SUFFM0UsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUVuQzs7T0FFRztJQUNILElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxLQUFLLENBQVM7SUFDdEIsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxrQkFBa0IsR0FBWSxLQUFLLENBQUM7SUFFNUMsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksaUJBQWlCLENBQUMsS0FBYztRQUNsQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxTQUFTLENBQUk7SUFDYixZQUFZLENBQUk7SUFFUixNQUFNLENBQUk7SUFDbEIsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQ3pELENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxDQUFJO1FBQ1osUUFBUSxDQUFBO1FBQ1IsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckIseUJBQXlCO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELDRCQUE0QjtRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUNoQixJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksU0FBUyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLEVBQUU7Z0JBQ2pGLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDeEI7WUFDRCxTQUFTO1lBQ1QsMEJBQTBCO1lBQzFCLHVCQUF1QjtZQUN2QixNQUFNO1lBQ04sSUFBSTtTQUNMO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUNoQyxHQUFHO0lBQ0wsQ0FBQztJQUVPLE1BQU0sR0FBcUIsT0FBTyxDQUFDO0lBRTNDLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsS0FBdUI7UUFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRVMsdUJBQXVCLENBQUMsUUFBYyxFQUFFLFFBQWM7UUFDOUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDdkIsU0FBUyxFQUFFLElBQUk7WUFDZixLQUFLLEVBQUUsUUFBUTtZQUNmLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7U0FDMUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRVMsUUFBUSxDQUFDLEtBQVU7UUFDM0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRVMsUUFBUSxDQUFDLEtBQVU7UUFDM0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRVMsUUFBUTtRQUNoQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRVMsZUFBZTtRQUN2QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVPLGNBQWM7UUFDcEIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDOUYsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFTLENBQUMsYUFBYSxDQUFDLE9BQU8sSUFBSyxDQUFTLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxVQUFVLENBQ3JGLENBQUM7UUFDRixFQUFFO1FBQ0YsSUFBSSxVQUFVLEVBQUU7WUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDL0UsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDaEUsTUFBTSxTQUFTLEdBQUcsU0FBUyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3ZELE1BQU0sS0FBSyxHQUFJLFNBQVMsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFTLEVBQUUsYUFBYSxDQUFDO1lBQzNFLElBQUksS0FBSztnQkFBRSxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUNsQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFFLENBQVMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckksRUFBRTtRQUNGLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2QixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7Z0JBQ3JCLE1BQU0sRUFBRSxJQUFJO2dCQUNaLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO2dCQUNmLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTthQUNaLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxJQUFJLE9BQU8sQ0FBTSxPQUFPLENBQUMsRUFBRTtZQUNoQyxPQUFPLENBQUMsR0FBRyxDQUNULEtBQUs7aUJBQ0YsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBUSxDQUFTLEVBQUUsUUFBUSxLQUFLLFVBQVUsQ0FBQztpQkFDdkQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNQLE9BQVEsQ0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQ0wsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1QsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLENBQUM7Z0JBQzlDLElBQUksS0FBSyxFQUFFO29CQUNULElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDdEMsT0FBTyxDQUFDO3dCQUNOLE1BQU0sRUFBRSxLQUFLO3dCQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzt3QkFDakIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO3dCQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7d0JBQ2YsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO3FCQUNaLENBQUMsQ0FBQztpQkFDSjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUN6QixPQUFPLENBQUM7d0JBQ04sTUFBTSxFQUFFLElBQUk7d0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO3dCQUNqQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7d0JBQ2YsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO3FCQUNaLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsUUFBUSxDQUFDLEtBQXVCLEVBQUUsR0FBRyxJQUFJO1FBQ2pELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLHFCQUFxQixDQUFDO1lBQy9FLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDaEUsTUFBTSxTQUFTLEdBQUcsU0FBUyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sS0FBSyxHQUFHLFNBQVMsRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksU0FBUyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4RixJQUFJLE1BQU0sR0FBRyxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1FBQ2xFLElBQUksTUFBTSxFQUFFLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO1lBQ2hELE1BQU0sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDdEQ7UUFDRCxNQUFNLE1BQU0sR0FBRyxNQUFNLEVBQUUsYUFBYSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUUvQixRQUFRLEtBQUssRUFBRTtZQUNiLEtBQUssT0FBTztnQkFDVixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQztnQkFDdEIsSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDLEVBQUU7b0JBQ2pELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBRSxDQUFDLENBQUM7aUJBQ3BFO2dCQUNELEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQzFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLENBQUM7Z0JBQzlELE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7Z0JBQ3hCLE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdkIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ1gsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7b0JBQ3ZDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzFCO2dCQUNELEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBRXZDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDO2dCQUN0QixNQUFNO1NBQ1Q7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7dUdBM05VLGdCQUFnQjsyR0FBaEIsZ0JBQWdCOztTQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYT2JqZWN0VXRpbCB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBBWENvbXBvbmVudFN0YXRlLCBNWEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtY29tcG9uZW50LmNsYXNzJztcbmltcG9ydCB7IEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICcuLi9jbGFzc2VzL2V2ZW50cy5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNWFZhbHVlQ29tcG9uZW50PFQgPSBhbnk+IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgcHJlc3MgYSBrZXkuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uVmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PigpO1xuXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBzdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEFYQ29tcG9uZW50U3RhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWENvbXBvbmVudFN0YXRlPigpO1xuXG4gIHByaXZhdGUgX3JlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqICBJZiBzZXQgdG8gdHJ1ZSwgdXNlciBjYW5ub3QgY2hhbmdlIHRoZSB2YWx1ZSBvZiBjb21wb25lbnQuXG4gICAqL1xuICBnZXQgcmVhZG9ubHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xuICB9XG4gIHNldCByZWFkb25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlYWRvbmx5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgX25hbWU6IHN0cmluZztcbiAgZ2V0IG5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25hbWU7XG4gIH1cbiAgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX25hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVXNlckludGVyYWN0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0IGlzVXNlckludGVyYWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc1VzZXJJbnRlcmFjdGlvbjtcbiAgfVxuXG4gIHNldCBpc1VzZXJJbnRlcmFjdGlvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lzVXNlckludGVyYWN0aW9uID0gdmFsdWU7XG4gIH1cblxuICBpbml0VmFsdWU6IFQ7XG4gIGRlZmF1bHRWYWx1ZTogVDtcblxuICBwcml2YXRlIF92YWx1ZTogVDtcbiAgZ2V0IHZhbHVlKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmdldFZhbHVlKHRoaXMuX3ZhbHVlKSB8fCB0aGlzLmRlZmF1bHRWYWx1ZTtcbiAgfVxuICBzZXQgdmFsdWUodjogVCkge1xuICAgIGRlYnVnZ2VyXG4gICAgdiA9IHRoaXMuc2V0VmFsdWUodik7XG4gICAgLy9pZiAoIXRoaXMuX2lzSW5pdGVkICkge1xuICAgIGNvbnN0IG9sZCA9IEFYT2JqZWN0VXRpbC5kZWVwSlNPTkNsb25lKHRoaXMudmFsdWUpO1xuICAgIC8vIFRPRE86IGNoZWNrIHJlYWwgZXF1YWxpdHlcbiAgICBpZiAodiAhPSBvbGQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdjtcbiAgICAgIHRoaXMuZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkLCB0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgaWYgKHYgPT0gbnVsbCB8fCB2ID09IHVuZGVmaW5lZCB8fCB2ID09ICcnIHx8IChBcnJheS5pc0FycmF5KHYpICYmIHYubGVuZ3RoID09IDApKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoJ2NsZWFyJyk7XG4gICAgICB9XG4gICAgICAvLyBlbHNlIHtcbiAgICAgIC8vICAgaWYgKHRoaXMuX2lzSW5pdGVkKSB7XG4gICAgICAvLyAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgICAgLy8gICB9XG4gICAgICAvLyB9XG4gICAgfVxuICAgIHRoaXMuX2lzVXNlckludGVyYWN0aW9uID0gZmFsc2U7XG4gICAgLy99XG4gIH1cblxuICBwcml2YXRlIF9zdGF0ZTogQVhDb21wb25lbnRTdGF0ZSA9ICdjbGVhcic7XG5cbiAgZ2V0IHN0YXRlKCk6IEFYQ29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHNldCBzdGF0ZSh2YWx1ZTogQVhDb21wb25lbnRTdGF0ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgdmFsdWU6IG5ld1ZhbHVlLFxuICAgICAgb2xkVmFsdWU6IG9sZFZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IHRoaXMuaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgfSk7XG4gICAgdGhpcy5faXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5nZXRIb3N0RWxlbWVudCgpLnNldEF0dHJpYnV0ZSgnYXgtZm9ybS1pbnB1dCcsICd0cnVlJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2NoZWNrUmVxdWlyZWQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMub25PcHRpb25DaGFuZ2VkPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkKCkge1xuICAgIGNvbnN0IGlzUmVxdWlyZWQgPSBBcnJheS5mcm9tKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yQWxsKCdheC12YWxpZGF0aW9uLXJ1bGUnKSkuc29tZShcbiAgICAgIGMgPT4gKGMgYXMgYW55KS5fX2F4Q29udGV4dF9fLmVuYWJsZWQgJiYgKGMgYXMgYW55KS5fX2F4Q29udGV4dF9fLnJ1bGUgPT0gJ3JlcXVpcmVkJ1xuICAgICk7XG4gICAgLy9cbiAgICBpZiAoaXNSZXF1aXJlZCkge1xuICAgICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLmNsYXNzTGlzdC5jb250YWlucygnYXgtZWRpdG9yLWNvbnRhaW5lcicpXG4gICAgICAgID8gdGhpcy5nZXRIb3N0RWxlbWVudCgpXG4gICAgICAgIDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3IoJy5heC1lZGl0b3ItY29udGFpbmVyJyk7XG4gICAgICBjb25zdCBmb3JtRmllbGQgPSBjb250YWluZXI/LmNsb3Nlc3QoJy5heC1mb3JtLWZpZWxkJyk7XG4gICAgICBjb25zdCBsYWJlbCA9IChmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgYXMgYW55KT8uX19heENvbnRleHRfXztcbiAgICAgIGlmIChsYWJlbCkgbGFiZWwucmVxdWlyZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHZhbGlkYXRlKCk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgcnVsZXMgPSBBcnJheS5mcm9tKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yQWxsKCdheC12YWxpZGF0aW9uLXJ1bGUnKSkuZmlsdGVyKGMgPT4gKGMgYXMgYW55KS5fX2F4Q29udGV4dF9fLmVuYWJsZWQpO1xuICAgIC8vXG4gICAgaWYgKCFydWxlcyB8fCBydWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoJ2NsZWFyJyk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcbiAgICAgICAgcmVzdWx0OiB0cnVlLFxuICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+KHJlc29sdmUgPT4ge1xuICAgICAgUHJvbWlzZS5hbGwoXG4gICAgICAgIHJ1bGVzXG4gICAgICAgICAgLmZpbHRlcihjID0+IHR5cGVvZiAoYyBhcyBhbnkpPy52YWxpZGF0ZSA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAubWFwKGMgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChjIGFzIGFueSkudmFsaWRhdGUodGhpcy52YWx1ZSk7XG4gICAgICAgICAgfSlcbiAgICAgICkudGhlbihkID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBkLmZpbmQoYyA9PiBjLnJlc3VsdCA9PT0gZmFsc2UpO1xuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKCdlcnJvcicsIGVycm9yLm1lc3NhZ2UpO1xuICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgcmVzdWx0OiBmYWxzZSxcbiAgICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IubWVzc2FnZSxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoJ3N1Y2Nlc3MnKTtcbiAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgIHJlc3VsdDogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFN0YXRlKHN0YXRlOiBBWENvbXBvbmVudFN0YXRlLCAuLi5hcmdzKSB7XG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLmNsYXNzTGlzdC5jb250YWlucygnYXgtZWRpdG9yLWNvbnRhaW5lcicpXG4gICAgICA/IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKVxuICAgICAgOiB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LWVkaXRvci1jb250YWluZXInKTtcbiAgICBjb25zdCBmb3JtRmllbGQgPSBjb250YWluZXI/LmNsb3Nlc3QoJy5heC1mb3JtLWZpZWxkJyk7XG4gICAgY29uc3QgbGFiZWwgPSBmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgfHwgZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdsYWJlbCcpO1xuICAgIGxldCB0YXJnZXQgPSBjb250YWluZXIgfHwgdGhpcy5nZXRIb3N0RWxlbWVudCgpLmZpcnN0RWxlbWVudENoaWxkO1xuICAgIGlmICh0YXJnZXQ/LnF1ZXJ5U2VsZWN0b3IoJy5heC1lcnJvci1jb250YWluZXInKSkge1xuICAgICAgdGFyZ2V0ID0gdGFyZ2V0LnF1ZXJ5U2VsZWN0b3IoJy5heC1lcnJvci1jb250YWluZXInKTtcbiAgICB9XG4gICAgY29uc3QgcGFyZW50ID0gdGFyZ2V0Py5wYXJlbnRFbGVtZW50O1xuICAgIGlmICghdGFyZ2V0IHx8ICFwYXJlbnQpIHJldHVybjtcblxuICAgIHN3aXRjaCAoc3RhdGUpIHtcbiAgICAgIGNhc2UgJ2NsZWFyJzpcbiAgICAgICAgdGhpcy5fc3RhdGUgPSAnY2xlYXInO1xuICAgICAgICBpZiAocGFyZW50LnF1ZXJ5U2VsZWN0b3IoJ3NwYW4uYXgtZXJyb3ItbWVzc2FnZScpKSB7XG4gICAgICAgICAgcGFyZW50LnJlbW92ZUNoaWxkKHBhcmVudC5xdWVyeVNlbGVjdG9yKCdzcGFuLmF4LWVycm9yLW1lc3NhZ2UnKSEpO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsPy5jbGFzc0xpc3QucmVtb3ZlKCdheC1zdGF0ZS1lcnJvcicpO1xuICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LnJlbW92ZSgnYXgtc3RhdGUtZXJyb3InLCAnYXgtc3RhdGUtc3VjY2VzcycpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgnYXgtc3RhdGUtc3VjY2VzcycpO1xuICAgICAgICB0aGlzLl9zdGF0ZSA9ICdzdWNjZXNzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoJ2NsZWFyJyk7XG4gICAgICAgIGlmIChhcmdzWzBdKSB7XG4gICAgICAgICAgY29uc3Qgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgICAgICBzcGFuLmlubmVyVGV4dCA9IGFyZ3NbMF07XG4gICAgICAgICAgc3Bhbi5jbGFzc0xpc3QuYWRkKCdheC1lcnJvci1tZXNzYWdlJyk7XG4gICAgICAgICAgcGFyZW50LmFwcGVuZENoaWxkKHNwYW4pO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsPy5jbGFzc0xpc3QuYWRkKCdheC1zdGF0ZS1lcnJvcicpO1xuICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgnYXgtc3RhdGUtZXJyb3InKTtcblxuICAgICAgICB0aGlzLl9zdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIl19
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uL3NyYy9jb21wb25lbnRzL3ZhbHVlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFvQixlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFHM0UsTUFDYSxnQkFBMEIsU0FBUSxlQUFlO0lBQzVEOzs7T0FHRztJQUNILGNBQWMsR0FBMkMsSUFBSSxZQUFZLEVBQTRCLENBQUM7SUFFdEcsV0FBVyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3pELFdBQVcsR0FBbUMsSUFBSSxZQUFZLEVBQW9CLENBQUM7SUFFM0UsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUVuQzs7T0FFRztJQUNILElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxLQUFLLENBQVM7SUFDdEIsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxrQkFBa0IsR0FBWSxLQUFLLENBQUM7SUFFNUMsSUFBSSxpQkFB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LENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQzt1R0FwTlUsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7O1NBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhPYmplY3RVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IEFYQ29tcG9uZW50U3RhdGUsIE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1jb21wb25lbnQuY2xhc3MnO1xuaW1wb3J0IHsgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1YVmFsdWVDb21wb25lbnQ8VCA9IGFueT4gZXh0ZW5kcyBNWEJhc2VDb21wb25lbnQge1xuICAvKipcbiAgICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBwcmVzcyBhIGtleS5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25WYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PGFueT4+KCk7XG5cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhDb21wb25lbnRTdGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYQ29tcG9uZW50U3RhdGU+KCk7XG5cbiAgcHJpdmF0ZSBfcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogIElmIHNldCB0byB0cnVlLCB1c2VyIGNhbm5vdCBjaGFuZ2UgdGhlIHZhbHVlIG9mIGNvbXBvbmVudC5cbiAgICovXG4gIGdldCByZWFkb25seSgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XG4gIH1cbiAgc2V0IHJlYWRvbmx5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVhZG9ubHkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nO1xuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbmFtZSA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNVc2VySW50ZXJhY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXQgaXNVc2VySW50ZXJhY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzVXNlckludGVyYWN0aW9uO1xuICB9XG5cbiAgc2V0IGlzVXNlckludGVyYWN0aW9uKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNVc2VySW50ZXJhY3Rpb24gPSB2YWx1ZTtcbiAgfVxuXG4gIGluaXRWYWx1ZTogVDtcbiAgZGVmYXVsdFZhbHVlOiBUO1xuXG4gIHByaXZhdGUgX3ZhbHVlOiBUO1xuICBnZXQgdmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUodGhpcy5fdmFsdWUpIHx8IHRoaXMuZGVmYXVsdFZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2OiBUKSB7XG4gICAgdiA9IHRoaXMuc2V0VmFsdWUodik7XG4gICAgLy9pZiAoIXRoaXMuX2lzSW5pdGVkICkge1xuICAgIGNvbnN0IG9sZCA9IEFYT2JqZWN0VXRpbC5kZWVwSlNPTkNsb25lKHRoaXMudmFsdWUpO1xuICAgIC8vIFRPRE86IGNoZWNrIHJlYWwgZXF1YWxpdHlcbiAgICBpZiAodiAhPSBvbGQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdjtcbiAgICAgIHRoaXMuZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkLCB0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgaWYgKHYgPT0gbnVsbCB8fCB2ID09IHVuZGVmaW5lZCB8fCB2ID09ICcnIHx8IChBcnJheS5pc0FycmF5KHYpICYmIHYubGVuZ3RoID09IDApKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoJ2NsZWFyJyk7XG4gICAgICB9XG4gICAgICAvLyBlbHNlIHtcbiAgICAgIC8vICAgaWYgKHRoaXMuX2lzSW5pdGVkKSB7XG4gICAgICAvLyAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgICAgLy8gICB9XG4gICAgICAvLyB9XG4gICAgfVxuICAgIHRoaXMuX2lzVXNlckludGVyYWN0aW9uID0gZmFsc2U7XG4gICAgLy99XG4gIH1cblxuICBwcml2YXRlIF9zdGF0ZTogQVhDb21wb25lbnRTdGF0ZSA9ICdjbGVhcic7XG5cbiAgZ2V0IHN0YXRlKCk6IEFYQ29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHNldCBzdGF0ZSh2YWx1ZTogQVhDb21wb25lbnRTdGF0ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgdmFsdWU6IG5ld1ZhbHVlLFxuICAgICAgb2xkVmFsdWU6IG9sZFZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IHRoaXMuaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgfSk7XG4gICAgdGhpcy5faXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5nZXRIb3N0RWxlbWVudCgpLnNldEF0dHJpYnV0ZSgnYXgtZm9ybS1pbnB1dCcsICd0cnVlJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2NoZWNrUmVxdWlyZWQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMub25PcHRpb25DaGFuZ2VkPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkKCkge1xuICAgIGNvbnN0IGlzUmVxdWlyZWQgPSBBcnJheS5mcm9tKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yQWxsKCdheC12YWxpZGF0aW9uLXJ1bGUnKSkuc29tZShjID0+IChjIGFzIGFueSkuX19heENvbnRleHRfXy5lbmFibGVkICYmIChjIGFzIGFueSkuX19heENvbnRleHRfXy5ydWxlID09ICdyZXF1aXJlZCcpO1xuICAgIC8vXG4gICAgaWYgKGlzUmVxdWlyZWQpIHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5jbGFzc0xpc3QuY29udGFpbnMoJ2F4LWVkaXRvci1jb250YWluZXInKSA/IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSA6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCcuYXgtZWRpdG9yLWNvbnRhaW5lcicpO1xuICAgICAgY29uc3QgZm9ybUZpZWxkID0gY29udGFpbmVyPy5jbG9zZXN0KCcuYXgtZm9ybS1maWVsZCcpO1xuICAgICAgY29uc3QgbGFiZWwgPSAoZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdheC1sYWJlbCcpIGFzIGFueSk/Ll9fYXhDb250ZXh0X187XG4gICAgICBpZiAobGFiZWwpIGxhYmVsLnJlcXVpcmVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZSgpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHJ1bGVzID0gQXJyYXkuZnJvbSh0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvckFsbCgnYXgtdmFsaWRhdGlvbi1ydWxlJykpLmZpbHRlcihjID0+IChjIGFzIGFueSkuX19heENvbnRleHRfXy5lbmFibGVkKTtcbiAgICAvL1xuICAgIGlmICghcnVsZXMgfHwgcnVsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICAgIHJlc3VsdDogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PihyZXNvbHZlID0+IHtcbiAgICAgIFByb21pc2UuYWxsKFxuICAgICAgICBydWxlc1xuICAgICAgICAgIC5maWx0ZXIoYyA9PiB0eXBlb2YgKGMgYXMgYW55KT8udmFsaWRhdGUgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgLm1hcChjID0+IHtcbiAgICAgICAgICAgIHJldHVybiAoYyBhcyBhbnkpLnZhbGlkYXRlKHRoaXMudmFsdWUpO1xuICAgICAgICAgIH0pXG4gICAgICApLnRoZW4oZCA9PiB7XG4gICAgICAgIGNvbnN0IGVycm9yID0gZC5maW5kKGMgPT4gYy5yZXN1bHQgPT09IGZhbHNlKTtcbiAgICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSgnZXJyb3InLCBlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgIHJlc3VsdDogZmFsc2UsXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKCdzdWNjZXNzJyk7XG4gICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICByZXN1bHQ6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRTdGF0ZShzdGF0ZTogQVhDb21wb25lbnRTdGF0ZSwgLi4uYXJncykge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5jbGFzc0xpc3QuY29udGFpbnMoJ2F4LWVkaXRvci1jb250YWluZXInKSA/IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSA6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCcuYXgtZWRpdG9yLWNvbnRhaW5lcicpO1xuICAgIGNvbnN0IGZvcm1GaWVsZCA9IGNvbnRhaW5lcj8uY2xvc2VzdCgnLmF4LWZvcm0tZmllbGQnKTtcbiAgICBjb25zdCBsYWJlbCA9IGZvcm1GaWVsZD8ucXVlcnlTZWxlY3RvcignYXgtbGFiZWwnKSB8fCBmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2xhYmVsJyk7XG4gICAgbGV0IHRhcmdldCA9IGNvbnRhaW5lciB8fCB0aGlzLmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQ7XG4gICAgaWYgKHRhcmdldD8ucXVlcnlTZWxlY3RvcignLmF4LWVycm9yLWNvbnRhaW5lcicpKSB7XG4gICAgICB0YXJnZXQgPSB0YXJnZXQucXVlcnlTZWxlY3RvcignLmF4LWVycm9yLWNvbnRhaW5lcicpO1xuICAgIH1cbiAgICBjb25zdCBwYXJlbnQgPSB0YXJnZXQ/LnBhcmVudEVsZW1lbnQ7XG4gICAgaWYgKCF0YXJnZXQgfHwgIXBhcmVudCkgcmV0dXJuO1xuXG4gICAgc3dpdGNoIChzdGF0ZSkge1xuICAgICAgY2FzZSAnY2xlYXInOlxuICAgICAgICB0aGlzLl9zdGF0ZSA9ICdjbGVhcic7XG4gICAgICAgIGlmIChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykpIHtcbiAgICAgICAgICBwYXJlbnQucmVtb3ZlQ2hpbGQocGFyZW50LnF1ZXJ5U2VsZWN0b3IoJ3NwYW4uYXgtZXJyb3ItbWVzc2FnZScpISk7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgIHRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCdheC1zdGF0ZS1lcnJvcicsICdheC1zdGF0ZS1zdWNjZXNzJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoJ2NsZWFyJyk7XG4gICAgICAgIHRhcmdldC5jbGFzc0xpc3QuYWRkKCdheC1zdGF0ZS1zdWNjZXNzJyk7XG4gICAgICAgIHRoaXMuX3N0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICAgICAgaWYgKGFyZ3NbMF0pIHtcbiAgICAgICAgICBjb25zdCBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgICAgIHNwYW4uaW5uZXJUZXh0ID0gYXJnc1swXTtcbiAgICAgICAgICBzcGFuLmNsYXNzTGlzdC5hZGQoJ2F4LWVycm9yLW1lc3NhZ2UnKTtcbiAgICAgICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoc3Bhbik7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgIHRhcmdldC5jbGFzc0xpc3QuYWRkKCdheC1zdGF0ZS1lcnJvcicpO1xuXG4gICAgICAgIHRoaXMuX3N0YXRlID0gJ2Vycm9yJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iXX0=
@@ -16,15 +16,22 @@ class AXHotkeysService {
16
16
  addShortcut(options) {
17
17
  const merged = { ...this.defaults, ...options };
18
18
  const event = `keydown.${merged.keys}`;
19
- return new Observable((observer) => {
19
+ return new Observable(observer => {
20
20
  const handler = (e) => {
21
21
  e.preventDefault();
22
22
  observer.next(e);
23
23
  };
24
- const dispose = this.eventManager.addEventListener(merged.element, event, handler);
25
- return () => {
26
- dispose();
27
- };
24
+ if (merged.element) {
25
+ // Todo: check addEventListener is not function
26
+ const dispose = this.eventManager.addEventListener(merged.element, event, handler);
27
+ return () => {
28
+ dispose();
29
+ };
30
+ }
31
+ else {
32
+ // console.error('Element is not accessible');
33
+ return null;
34
+ }
28
35
  });
29
36
  }
30
37
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AXHotkeysService, deps: [{ token: i1.EventManager }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -38,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
38
45
  type: Inject,
39
46
  args: [DOCUMENT]
40
47
  }] }]; } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9jb21tb24vc3JjL3NlcnZpY2VzL2hvdGtleS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU90RCxNQUNhLGdCQUFnQjtJQU1qQjtJQUNrQjtJQU41QixRQUFRLEdBQXFCO1FBQzNCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUTtLQUN2QixDQUFDO0lBRUYsWUFDVSxZQUEwQixFQUNSLFFBQWtCO1FBRHBDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ1IsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUMzQyxDQUFDO0lBRUosV0FBVyxDQUFDLE9BQXlCO1FBQ25DLE1BQU0sTUFBTSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDaEQsTUFBTSxLQUFLLEdBQUcsV0FBVyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdkMsT0FBTyxJQUFJLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBVSxFQUFFLEVBQUU7Z0JBQzdCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuQixDQUFDLENBQUM7WUFFRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUNoRCxNQUFNLENBQUMsT0FBTyxFQUNkLEtBQUssRUFDTCxPQUFPLENBQ1IsQ0FBQztZQUVGLE9BQU8sR0FBRyxFQUFFO2dCQUNWLE9BQU8sRUFBRSxDQUFDO1lBQ1osQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQTlCVSxnQkFBZ0IsOENBT2pCLFFBQVE7MkdBUFAsZ0JBQWdCLGNBREgsTUFBTTs7U0FDbkIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFRN0IsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudE1hbmFnZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzL2ludGVybmFsL09ic2VydmFibGUnO1xuXG50eXBlIE9wdGlvbnMgPSB7XG4gIGVsZW1lbnQ6IGFueTtcbiAga2V5czogc3RyaW5nO1xufTtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWEhvdGtleXNTZXJ2aWNlIHtcbiAgZGVmYXVsdHM6IFBhcnRpYWw8T3B0aW9ucz4gPSB7XG4gICAgZWxlbWVudDogdGhpcy5kb2N1bWVudCxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGV2ZW50TWFuYWdlcjogRXZlbnRNYW5hZ2VyLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50XG4gICkge31cblxuICBhZGRTaG9ydGN1dChvcHRpb25zOiBQYXJ0aWFsPE9wdGlvbnM+KSB7XG4gICAgY29uc3QgbWVyZ2VkID0geyAuLi50aGlzLmRlZmF1bHRzLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgZXZlbnQgPSBga2V5ZG93bi4ke21lcmdlZC5rZXlzfWA7XG5cbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICBjb25zdCBoYW5kbGVyID0gKGU6IFVJRXZlbnQpID0+IHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvYnNlcnZlci5uZXh0KGUpO1xuICAgICAgfTtcblxuICAgICAgY29uc3QgZGlzcG9zZSA9IHRoaXMuZXZlbnRNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgIG1lcmdlZC5lbGVtZW50LFxuICAgICAgICBldmVudCxcbiAgICAgICAgaGFuZGxlclxuICAgICAgKTtcblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgZGlzcG9zZSgpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxufVxuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9jb21tb24vc3JjL3NlcnZpY2VzL2hvdGtleS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU90RCxNQUNhLGdCQUFnQjtJQUtQO0lBQXNEO0lBSjFFLFFBQVEsR0FBcUI7UUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO0tBQ3ZCLENBQUM7SUFFRixZQUFvQixZQUEwQixFQUE0QixRQUFrQjtRQUF4RSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUE0QixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQUcsQ0FBQztJQUVoRyxXQUFXLENBQUMsT0FBeUI7UUFDbkMsTUFBTSxNQUFNLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUNoRCxNQUFNLEtBQUssR0FBRyxXQUFXLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QyxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQy9CLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBVSxFQUFFLEVBQUU7Z0JBQzdCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuQixDQUFDLENBQUM7WUFDRixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ2xCLCtDQUErQztnQkFFL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDbkYsT0FBTyxHQUFHLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLENBQUM7Z0JBQ1osQ0FBQyxDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsOENBQThDO2dCQUM5QyxPQUFPLElBQUksQ0FBQzthQUNiO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQTNCVSxnQkFBZ0IsOENBSzZCLFFBQVE7MkdBTHJELGdCQUFnQixjQURILE1BQU07O1NBQ25CLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBTWlCLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcblxudHlwZSBPcHRpb25zID0ge1xuICBlbGVtZW50OiBhbnk7XG4gIGtleXM6IHN0cmluZztcbn07XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhIb3RrZXlzU2VydmljZSB7XG4gIGRlZmF1bHRzOiBQYXJ0aWFsPE9wdGlvbnM+ID0ge1xuICAgIGVsZW1lbnQ6IHRoaXMuZG9jdW1lbnQsXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudE1hbmFnZXI6IEV2ZW50TWFuYWdlciwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQpIHt9XG5cbiAgYWRkU2hvcnRjdXQob3B0aW9uczogUGFydGlhbDxPcHRpb25zPikge1xuICAgIGNvbnN0IG1lcmdlZCA9IHsgLi4udGhpcy5kZWZhdWx0cywgLi4ub3B0aW9ucyB9O1xuICAgIGNvbnN0IGV2ZW50ID0gYGtleWRvd24uJHttZXJnZWQua2V5c31gO1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCBoYW5kbGVyID0gKGU6IFVJRXZlbnQpID0+IHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvYnNlcnZlci5uZXh0KGUpO1xuICAgICAgfTtcbiAgICAgIGlmIChtZXJnZWQuZWxlbWVudCkge1xuICAgICAgICAvLyBUb2RvOiBjaGVjayBhZGRFdmVudExpc3RlbmVyIGlzIG5vdCBmdW5jdGlvblxuXG4gICAgICAgIGNvbnN0IGRpc3Bvc2UgPSB0aGlzLmV2ZW50TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKG1lcmdlZC5lbGVtZW50LCBldmVudCwgaGFuZGxlcik7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgZGlzcG9zZSgpO1xuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gY29uc29sZS5lcnJvcignRWxlbWVudCBpcyBub3QgYWNjZXNzaWJsZScpO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -313,7 +313,7 @@ class AXMenuComponent extends AXBaseMenuMixin {
313
313
  this._overlayRef?.detach();
314
314
  }
315
315
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AXMenuComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
316
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AXMenuComponent, selector: "ax-menu", inputs: { disabled: "disabled", tabIndex: "tabIndex", textField: "textField", valueField: "valueField", items: "items", parentId: "parentId", iconField: "iconField", tooltip: "tooltip", opened: "opened", active: "active", visibleField: "visibleField", disableField: "disableField", hasChildField: "hasChildField", dividerField: "dividerField", openMode: "openMode", displayMode: "displayMode", showModal: "showModal" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onMenuItemClick: "onMenuItemClick" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }, { propertyName: "_contentItemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\n </ul>\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\n <ng-container *ngFor=\"let item of list\">\n <li\n *ngIf=\"item[visibleField] != false\"\n [class.ax-state-disabled]=\"item[disableField]\"\n (click)=\"_onMenuClick($event, item)\"\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\n <div\n class=\"ax-menu-item\"\n [ngClass]=\"{\n 'ax-is-parent': item?.children?.length,\n 'ax-is-child': !isRoot\n }\"\n *ngIf=\"itemTemplate == null; else tmpItem\">\n <div class=\"ax-menu-item-prefix\">\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\n </div>\n <div class=\"ax-menu-item-suffix\">\n <span\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': item?.children?.length > 0,\n 'ax-menu-active-icon': item.opened\n }\"\n *ngIf=\"!item.isLoading\"></span>\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\n </div>\n </div>\n <!--------------- check for custom item template --------------->\n <ng-template #tmpItem>\n <ng-container *ngIf=\"!isLoading\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\n </ng-container>\n </ng-template>\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\n </ul>\n </li>\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\n </ng-container>\n </ng-template>\n</ng-container>\n<ng-container *ngIf=\"isLoading\">\n <ng-template>\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #tmpEmpty>\n <ng-container *ngIf=\"!isLoading\">\n <!--------------- check for custom template --------------->\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\n </ng-container>\n <ng-template #elseEmptyTemplate>\n {{ 'common.no-result-found' | trans }}\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column;color:rgba(var(--ax-color-text-default))}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
316
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AXMenuComponent, selector: "ax-menu", inputs: { disabled: "disabled", tabIndex: "tabIndex", textField: "textField", valueField: "valueField", items: "items", parentId: "parentId", iconField: "iconField", tooltip: "tooltip", opened: "opened", active: "active", visibleField: "visibleField", disableField: "disableField", hasChildField: "hasChildField", dividerField: "dividerField", openMode: "openMode", displayMode: "displayMode", showModal: "showModal" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onMenuItemClick: "onMenuItemClick" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }, { propertyName: "_contentItemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\n </ul>\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\n <ng-container *ngFor=\"let item of list\">\n <li\n *ngIf=\"item[visibleField] != false\"\n [class.ax-state-disabled]=\"item[disableField]\"\n (click)=\"_onMenuClick($event, item)\"\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\n <div\n class=\"ax-menu-item\"\n [ngClass]=\"{\n 'ax-is-parent': item?.children?.length,\n 'ax-is-child': !isRoot\n }\"\n *ngIf=\"itemTemplate == null; else tmpItem\">\n <div class=\"ax-menu-item-prefix\">\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\n </div>\n <div class=\"ax-menu-item-suffix\">\n <span\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': item?.children?.length > 0,\n 'ax-menu-active-icon': item.opened\n }\"\n *ngIf=\"!item.isLoading\"></span>\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\n </div>\n </div>\n <!--------------- check for custom item template --------------->\n <ng-template #tmpItem>\n <ng-container *ngIf=\"!isLoading\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\n </ng-container>\n </ng-template>\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\n </ul>\n </li>\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\n </ng-container>\n </ng-template>\n</ng-container>\n<ng-container *ngIf=\"isLoading\">\n <ng-template>\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #tmpEmpty>\n <ng-container *ngIf=\"!isLoading\">\n <!--------------- check for custom template --------------->\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\n </ng-container>\n <ng-template #elseEmptyTemplate>\n {{ 'common.no-result-found' | trans }}\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
317
317
  }
318
318
  export { AXMenuComponent };
319
319
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AXMenuComponent, decorators: [{
@@ -336,7 +336,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
336
336
  'openMode',
337
337
  'displayMode',
338
338
  'showModal',
339
- ], outputs: ['onBlur', 'onFocus', 'onMenuItemClick'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\n </ul>\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\n <ng-container *ngFor=\"let item of list\">\n <li\n *ngIf=\"item[visibleField] != false\"\n [class.ax-state-disabled]=\"item[disableField]\"\n (click)=\"_onMenuClick($event, item)\"\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\n <div\n class=\"ax-menu-item\"\n [ngClass]=\"{\n 'ax-is-parent': item?.children?.length,\n 'ax-is-child': !isRoot\n }\"\n *ngIf=\"itemTemplate == null; else tmpItem\">\n <div class=\"ax-menu-item-prefix\">\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\n </div>\n <div class=\"ax-menu-item-suffix\">\n <span\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': item?.children?.length > 0,\n 'ax-menu-active-icon': item.opened\n }\"\n *ngIf=\"!item.isLoading\"></span>\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\n </div>\n </div>\n <!--------------- check for custom item template --------------->\n <ng-template #tmpItem>\n <ng-container *ngIf=\"!isLoading\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\n </ng-container>\n </ng-template>\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\n </ul>\n </li>\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\n </ng-container>\n </ng-template>\n</ng-container>\n<ng-container *ngIf=\"isLoading\">\n <ng-template>\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #tmpEmpty>\n <ng-container *ngIf=\"!isLoading\">\n <!--------------- check for custom template --------------->\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\n </ng-container>\n <ng-template #elseEmptyTemplate>\n {{ 'common.no-result-found' | trans }}\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column;color:rgba(var(--ax-color-text-default))}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"] }]
339
+ ], outputs: ['onBlur', 'onFocus', 'onMenuItemClick'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: displayItems, isRoot: true }\"></ng-container>\n </ul>\n <ng-template #recursiveListTmpl let-list=\"list\" let-isRoot=\"isRoot\">\n <ng-container *ngFor=\"let item of list\">\n <li\n *ngIf=\"item[visibleField] != false\"\n [class.ax-state-disabled]=\"item[disableField]\"\n (click)=\"_onMenuClick($event, item)\"\n (mouseenter)=\"_onMenuMouseEnter($event, item)\"\n [ngClass]=\"{ 'ax-state-active ': item.active }\">\n <div\n class=\"ax-menu-item\"\n [ngClass]=\"{\n 'ax-is-parent': item?.children?.length,\n 'ax-is-child': !isRoot\n }\"\n *ngIf=\"itemTemplate == null; else tmpItem\">\n <div class=\"ax-menu-item-prefix\">\n <span class=\"ax-menu-item-icon\" *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></span>\n <span>{{ _getItemDisplayTextTemplte(item) }}</span>\n </div>\n <div class=\"ax-menu-item-suffix\">\n <span\n class=\"ax-menu-item-icon ax-icon ax-menu-item-icon-chevron\"\n [ngClass]=\"{\n 'ax-icon-chevron-down': item?.children?.length > 0,\n 'ax-menu-active-icon': item.opened\n }\"\n *ngIf=\"!item.isLoading\"></span>\n <ax-loading *ngIf=\"item.isLoading\"> </ax-loading>\n </div>\n </div>\n <!--------------- check for custom item template --------------->\n <ng-template #tmpItem>\n <ng-container *ngIf=\"!isLoading\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"> </ng-container>\n </ng-container>\n </ng-template>\n <ul *ngIf=\"item?.children?.length > 0 && item.opened && !_overlayRef\" [class.ax-state-disabled]=\"item[disableField]\">\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context: { list: item.children }\"> </ng-container>\n </ul>\n </li>\n <li class=\"ax-menu-item-divider\" *ngIf=\"item[this.dividerField]\"></li>\n </ng-container>\n </ng-template>\n</ng-container>\n<ng-container *ngIf=\"isLoading\">\n <ng-template>\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #tmpEmpty>\n <ng-container *ngIf=\"!isLoading\">\n <!--------------- check for custom template --------------->\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"> </ng-container>\n </ng-container>\n <ng-template #elseEmptyTemplate>\n {{ 'common.no-result-found' | trans }}\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: ["ax-menu{font-size:.875rem;display:block}ax-menu ul{width:-moz-fit-content;width:fit-content;display:flex;flex-direction:column}ax-menu ul li.ax-state-active{color:rgba(var(--ax-color-primary-500))}ax-menu ul li .ax-menu-item{display:flex}ax-menu ul li .ax-menu-item .ax-menu-item-prefix,ax-menu ul li .ax-menu-item .ax-menu-item-suffix{display:flex;align-items:center;justify-content:center}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon-chevron,ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon-chevron{transform:rotate(-90deg)}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon:not(:empty),ax-menu ul li .ax-menu-item .ax-menu-item-suffix .ax-menu-item-icon:not(:empty){min-width:1.25rem;min-height:1.25rem}ax-menu ul li .ax-menu-item .ax-menu-item-prefix .ax-menu-item-icon{padding-inline-end:.5rem}ax-menu ul li .ax-menu-item .ax-menu-item-icon{font-size:1.25rem}ax-menu ul li.ax-state-disabled{cursor:not-allowed!important;opacity:.5}ax-menu ul li.ax-state-active .ax-menu-item-icon-chevron{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}ax-menu .ax-horizontal>li,ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-horizontal{flex-direction:row;align-items:center}ax-menu .ax-horizontal .ax-menu-item-divider{width:1px;height:1rem;background-color:rgba(var(--ax-color-on-surface))}ax-menu .ax-horizontal li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-horizontal li:not(.ax-menu-item-divider){padding:.5rem;cursor:pointer}ax-menu .ax-vertical{flex-direction:column;width:100%}ax-menu .ax-vertical>li{font-weight:500}ax-menu .ax-vertical .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-vertical li.ax-state-active .ax-menu-item-icon-chevron{transform:rotate(0)!important}ax-menu .ax-vertical li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul{background-color:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-menu .ax-vertical.ax-submenu-ul li{border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-menu-item-divider){padding:.5rem}ax-menu .ax-vertical.ax-submenu-ul li:not(.ax-state-disabled,.ax-menu-item-divider):hover{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface-fore))}ax-menu .ax-side-menu{width:100%;flex-direction:column;gap:.5rem;-webkit-user-select:none;user-select:none}ax-menu .ax-side-menu .ax-menu-item-divider{width:100%;height:1px;background-color:rgba(var(--ax-color-on-surface));margin:.375rem 0}ax-menu .ax-side-menu ul{display:flex;flex-direction:column;margin-top:.5rem;width:100%;padding:0 .5rem}ax-menu .ax-side-menu li .ax-menu-item-icon-chevron.ax-menu-active-icon{transform:rotate(180deg)!important}ax-menu .ax-side-menu li .ax-menu-item{justify-content:space-between}ax-menu .ax-side-menu li .ax-menu-item.ax-is-parent{font-weight:500}ax-menu .ax-side-menu li:not(.ax-menu-item-divider){padding:.5rem 0;cursor:pointer}\n"] }]
340
340
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i2.AXPlatform }]; }, propDecorators: { _contentEmptyTemplate: [{
341
341
  type: ContentChild,
342
342
  args: ['emptyTemplate']
@@ -1,12 +1,11 @@
1
- import { MXInteractiveComponent } from "@acorex/components/common";
2
- import { EventEmitter, Injectable } from "@angular/core";
1
+ import { MXInteractiveComponent } from '@acorex/components/common';
2
+ import { EventEmitter, Injectable } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  class MXDropDownComponent extends MXInteractiveComponent {
5
5
  onOpened = new EventEmitter();
6
6
  onClosed = new EventEmitter();
7
7
  popOverPositions = [];
8
8
  initPopOverPositions() {
9
- debugger;
10
9
  const offset = Number(getComputedStyle(document.documentElement).getPropertyValue('--ax-base-size').replace('px', ''));
11
10
  const list = [
12
11
  {
@@ -14,28 +13,28 @@ class MXDropDownComponent extends MXInteractiveComponent {
14
13
  originY: 'bottom',
15
14
  overlayX: 'start',
16
15
  overlayY: 'top',
17
- offsetY: offset
16
+ offsetY: offset,
18
17
  },
19
18
  {
20
19
  originX: 'start',
21
20
  originY: 'top',
22
21
  overlayX: 'start',
23
22
  overlayY: 'bottom',
24
- offsetY: -offset
23
+ offsetY: -offset,
25
24
  },
26
25
  {
27
26
  originX: 'end',
28
27
  originY: 'bottom',
29
28
  overlayX: 'end',
30
29
  overlayY: 'top',
31
- offsetY: offset
30
+ offsetY: offset,
32
31
  },
33
32
  {
34
33
  originX: 'end',
35
34
  originY: 'top',
36
35
  overlayX: 'end',
37
36
  overlayY: 'bottom',
38
- offsetY: -offset
37
+ offsetY: -offset,
39
38
  },
40
39
  ];
41
40
  this.popOverPositions.push(...list);
@@ -69,4 +68,4 @@ export { MXDropDownComponent };
69
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: MXDropDownComponent, decorators: [{
70
69
  type: Injectable
71
70
  }] });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlci9zcmMvZHJvcGRvd24tY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0Msc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHekQsTUFDc0IsbUJBQW9CLFNBQVEsc0JBQXNCO0lBRXBFLFFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUM5RCxRQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7SUFLcEQsZ0JBQWdCLEdBQTBCLEVBQUUsQ0FBQztJQUU3QyxvQkFBb0I7UUFDMUIsUUFBUSxDQUFBO1FBQ1IsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2SCxNQUFNLElBQUksR0FBMEI7WUFDaEM7Z0JBQ0ksT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLE9BQU8sRUFBRSxRQUFRO2dCQUNqQixRQUFRLEVBQUUsT0FBTztnQkFDakIsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsT0FBTyxFQUFFLE1BQU07YUFDbEI7WUFDRDtnQkFDSSxPQUFPLEVBQUUsT0FBTztnQkFDaEIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixPQUFPLEVBQUUsQ0FBQyxNQUFNO2FBQ25CO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFFBQVEsRUFBRSxLQUFLO2dCQUNmLFFBQVEsRUFBRSxLQUFLO2dCQUNmLE9BQU8sRUFBRSxNQUFNO2FBQ2xCO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLE9BQU8sRUFBRSxDQUFDLE1BQU07YUFDbkI7U0FDSixDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtZQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQy9CLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsSUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDOUIsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQ2hDLENBQUM7dUdBdEVpQixtQkFBbUI7MkdBQW5CLG1CQUFtQjs7U0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbm5lY3RlZFBvc2l0aW9uLCBBWEV2ZW50LCBNWEludGVyYWN0aXZlQ29tcG9uZW50IH0gZnJvbSBcIkBhY29yZXgvY29tcG9uZW50cy9jb21tb25cIjtcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBWFBvcG92ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9wb3BvdmVyLmNvbXBvbmVudFwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTVhEcm9wRG93bkNvbXBvbmVudCBleHRlbmRzIE1YSW50ZXJhY3RpdmVDb21wb25lbnQge1xuXG4gICAgb25PcGVuZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcbiAgICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHBvcG92ZXI6IEFYUG9wb3ZlckNvbXBvbmVudDtcblxuXG4gICAgcHJvdGVjdGVkIHBvcE92ZXJQb3NpdGlvbnM6IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtdO1xuXG4gICAgcHJvdGVjdGVkIGluaXRQb3BPdmVyUG9zaXRpb25zKCkge1xuICAgICAgICBkZWJ1Z2dlclxuICAgICAgICBjb25zdCBvZmZzZXQgPSBOdW1iZXIoZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtYmFzZS1zaXplJykucmVwbGFjZSgncHgnLCAnJykpO1xuICAgICAgICBjb25zdCBsaXN0OiBBWENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgb2Zmc2V0WTogb2Zmc2V0XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG9mZnNldFk6IC1vZmZzZXRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBvZmZzZXRZOiAtb2Zmc2V0XG4gICAgICAgICAgICB9LFxuICAgICAgICBdO1xuICAgICAgICB0aGlzLnBvcE92ZXJQb3NpdGlvbnMucHVzaCguLi5saXN0KTtcbiAgICB9XG5cbiAgICB0b2dnbGUoKSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkICE9PSB0cnVlKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXIudG9nZ2xlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjbG9zZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wb3BvdmVyLmNsb3NlKCk7XG4gICAgICAgICh0aGlzIGFzIGFueSk/LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb3BlbigpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuIHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnBvcG92ZXIub3BlbigpO1xuICAgICAgICB0aGlzLnBvcG92ZXIuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wb3BvdmVyPy5pc09wZW47XG4gICAgfVxuXG59Il19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlci9zcmMvZHJvcGRvd24tY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0Msc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHekQsTUFDc0IsbUJBQW9CLFNBQVEsc0JBQXNCO0lBQ3RFLFFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUM5RCxRQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7SUFJcEQsZ0JBQWdCLEdBQTBCLEVBQUUsQ0FBQztJQUU3QyxvQkFBb0I7UUFDNUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2SCxNQUFNLElBQUksR0FBMEI7WUFDbEM7Z0JBQ0UsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLE9BQU8sRUFBRSxRQUFRO2dCQUNqQixRQUFRLEVBQUUsT0FBTztnQkFDakIsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsT0FBTyxFQUFFLE1BQU07YUFDaEI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsT0FBTztnQkFDaEIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixPQUFPLEVBQUUsQ0FBQyxNQUFNO2FBQ2pCO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFFBQVEsRUFBRSxLQUFLO2dCQUNmLFFBQVEsRUFBRSxLQUFLO2dCQUNmLE9BQU8sRUFBRSxNQUFNO2FBQ2hCO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLE9BQU8sRUFBRSxDQUFDLE1BQU07YUFDakI7U0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pDLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsSUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDaEMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQzlCLENBQUM7dUdBbkVtQixtQkFBbUI7MkdBQW5CLG1CQUFtQjs7U0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbm5lY3RlZFBvc2l0aW9uLCBBWEV2ZW50LCBNWEludGVyYWN0aXZlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vcG9wb3Zlci5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTVhEcm9wRG93bkNvbXBvbmVudCBleHRlbmRzIE1YSW50ZXJhY3RpdmVDb21wb25lbnQge1xuICBvbk9wZW5lZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQ7XG5cbiAgcHJvdGVjdGVkIHBvcE92ZXJQb3NpdGlvbnM6IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtdO1xuXG4gIHByb3RlY3RlZCBpbml0UG9wT3ZlclBvc2l0aW9ucygpIHtcbiAgICBjb25zdCBvZmZzZXQgPSBOdW1iZXIoZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtYmFzZS1zaXplJykucmVwbGFjZSgncHgnLCAnJykpO1xuICAgIGNvbnN0IGxpc3Q6IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtcbiAgICAgIHtcbiAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgIG9mZnNldFk6IG9mZnNldCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICBvZmZzZXRZOiAtb2Zmc2V0LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgIG9yaWdpblk6ICdib3R0b20nLFxuICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgb2Zmc2V0WTogb2Zmc2V0LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgb2Zmc2V0WTogLW9mZnNldCxcbiAgICAgIH0sXG4gICAgXTtcbiAgICB0aGlzLnBvcE92ZXJQb3NpdGlvbnMucHVzaCguLi5saXN0KTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCAhPT0gdHJ1ZSkge1xuICAgICAgdGhpcy5wb3BvdmVyLnRvZ2dsZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5pc09wZW4gfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnBvcG92ZXIuY2xvc2UoKTtcbiAgICAodGhpcyBhcyBhbnkpPy5mb2N1cygpO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICBpZiAodGhpcy5pc09wZW4gfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnBvcG92ZXIub3BlbigpO1xuICAgIHRoaXMucG9wb3Zlci5mb2N1cygpO1xuICB9XG5cbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wb3BvdmVyPy5pc09wZW47XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { Overlay } from '@angular/cdk/overlay';
2
2
  import { TemplatePortal } from '@angular/cdk/portal';
3
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, ElementRef, Input, ViewChild, Output, EventEmitter, inject, } from '@angular/core';
3
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, ElementRef, Input, ViewChild, Output, EventEmitter, inject } from '@angular/core';
4
4
  import { some, includes } from 'lodash-es';
5
5
  import { fromEvent, throttleTime } from 'rxjs';
6
6
  import { MXBaseComponent, MXInteractiveComponent } from '@acorex/components/common';
@@ -74,7 +74,7 @@ class AXPopoverComponent extends MXInteractiveComponent {
74
74
  if (this._target) {
75
75
  if (this.openTrigger === 'mouseover') {
76
76
  const mouseEnter$ = fromEvent(this._target, 'mouseover');
77
- this._addSub(mouseEnter$.subscribe((e) => {
77
+ this._addSub(mouseEnter$.subscribe(e => {
78
78
  const point = { x: e.clientX, y: e.clientY };
79
79
  if (AXDrawingUtil.isInElementBound(point, this._target))
80
80
  this.open();
@@ -82,12 +82,12 @@ class AXPopoverComponent extends MXInteractiveComponent {
82
82
  }
83
83
  if (this.closeTrigger === 'mouseout') {
84
84
  const mouseMove$ = fromEvent(document, 'mousemove');
85
- this._addSub(mouseMove$.pipe(throttleTime(50)).subscribe((e) => {
85
+ this._addSub(mouseMove$.pipe(throttleTime(50)).subscribe(e => {
86
86
  this._mousePos.x = e.clientX;
87
87
  this._mousePos.y = e.clientY;
88
88
  if (this.isOpen) {
89
89
  setTimeout(() => {
90
- if (some([this._target, this._overlayRef.overlayElement], (el) => includes(document.elementsFromPoint(this._mousePos.x, this._mousePos.y), el)))
90
+ if (some([this._target, this._overlayRef.overlayElement], el => includes(document.elementsFromPoint(this._mousePos.x, this._mousePos.y), el)))
91
91
  this.close();
92
92
  }, 100);
93
93
  }
@@ -96,7 +96,7 @@ class AXPopoverComponent extends MXInteractiveComponent {
96
96
  //
97
97
  if (this.openTrigger === 'click' || this.openTrigger === 'toggle') {
98
98
  const click$ = fromEvent(this._target, 'click');
99
- this._addSub(click$.subscribe((e) => {
99
+ this._addSub(click$.subscribe(e => {
100
100
  this.openTrigger == 'toggle' ? this.toggle() : this.open();
101
101
  }));
102
102
  }
@@ -104,10 +104,9 @@ class AXPopoverComponent extends MXInteractiveComponent {
104
104
  }
105
105
  //
106
106
  ngOnDestroy() {
107
- debugger;
108
107
  this._overlayRef?.detach();
109
108
  this._overlayRef?.dispose();
110
- this._subs.forEach((s) => {
109
+ this._subs.forEach(s => {
111
110
  s?.unsubscribe();
112
111
  });
113
112
  }
@@ -133,7 +132,6 @@ class AXPopoverComponent extends MXInteractiveComponent {
133
132
  }
134
133
  //
135
134
  open() {
136
- debugger;
137
135
  if (this.isOpen) {
138
136
  return;
139
137
  }
@@ -154,7 +152,7 @@ class AXPopoverComponent extends MXInteractiveComponent {
154
152
  this._openAsPopover(targetRef);
155
153
  }
156
154
  if (this.closeTrigger == 'clickout') {
157
- this._addSub(this._overlayRef._outsidePointerEvents.subscribe((c) => {
155
+ this._addSub(this._overlayRef._outsidePointerEvents.subscribe(c => {
158
156
  const target = c.target;
159
157
  const comElem = targetRef;
160
158
  if (!comElem.contains(target)) {
@@ -164,13 +162,12 @@ class AXPopoverComponent extends MXInteractiveComponent {
164
162
  }
165
163
  this._addSub(this._overlayRef.attachments().subscribe(() => {
166
164
  if (!this._isScrollAttached) {
167
- this._addSub(this._platform.scroll.subscribe((c) => {
165
+ this._addSub(this._platform.scroll.subscribe(c => {
168
166
  try {
169
167
  if (!c.nativeEvent.target?.closest('.ax-overlay-pane'))
170
168
  this.close();
171
169
  }
172
- catch (error) {
173
- }
170
+ catch (error) { }
174
171
  }));
175
172
  this._isScrollAttached = true;
176
173
  }
@@ -253,4 +250,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
253
250
  }], onClosed: [{
254
251
  type: Output
255
252
  }] } });
256
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9wb3BvdmVyL3NyYy9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL3BvcG92ZXIvc3JjL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLEtBQUssRUFDTCxTQUFTLEVBRVQsTUFBTSxFQUNOLFlBQVksRUFDWixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDM0MsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFBZ0MsZUFBZSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBVyxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHNUQsTUFNYSxrQkFBbUIsU0FBUSxzQkFBc0I7SUFFcEQsU0FBUyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxRQUFRLEdBQVksTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRTVDLEVBQUU7SUFDTSxPQUFPLENBQWM7SUFDN0IsSUFDVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lB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aUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQVVwQyxNQUFNO3NCQURoQixLQUFLO2dCQVdOLFFBQVE7c0JBRFAsS0FBSztnQkFpQk4sYUFBYTtzQkFEWixTQUFTO3VCQUFDLGNBQWM7Z0JBUXpCLFdBQVc7c0JBRFYsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLGFBQWE7c0JBRFosS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBUU4sUUFBUTtzQkFEUCxNQUFNO2dCQUdQLFFBQVE7c0JBRFAsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG4gIFRlbXBsYXRlUmVmLFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNvbWUsIGluY2x1ZGVzIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50LCB0aHJvdHRsZVRpbWUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYQ29ubmVjdGVkUG9zaXRpb24sIEFYRXZlbnQsIE1YQmFzZUNvbXBvbmVudCwgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBBWFBvaW50LCBBWERyYXdpbmdVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlL3V0aWxzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1wb3BvdmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQVhQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSBfcGxhdGZvcm06IEFYUGxhdGZvcm0gPSBpbmplY3QoQVhQbGF0Zm9ybSk7XG4gIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgLy9cbiAgcHJpdmF0ZSBfdGFyZ2V0OiBIVE1MRWxlbWVudDtcbiAgQElucHV0KClcbiAgcHVibGljIGdldCB0YXJnZXQoKTogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmIHwgTVhCYXNlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0O1xuICB9XG4gIHB1YmxpYyBzZXQgdGFyZ2V0KHY6IEhUTUxFbGVtZW50IHwgRWxlbWVudFJlZiB8IE1YQmFzZUNvbXBvbmVudCkge1xuICAgIGlmICh2IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHRoaXMuX3RhcmdldCA9IHY7XG4gICAgZWxzZSBpZiAodiBpbnN0YW5jZW9mIEVsZW1lbnRSZWYpIHRoaXMuX3RhcmdldCA9IHYubmF0aXZlRWxlbWVudDtcbiAgICBlbHNlIGlmICh2IGluc3RhbmNlb2YgTVhCYXNlQ29tcG9uZW50KSB0aGlzLl90YXJnZXQgPSB2LmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwb3NpdGlvbjogQVhDb25uZWN0ZWRQb3NpdGlvbiB8IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgIH0sXG4gIF07XG4gIC8vXG4gIEBWaWV3Q2hpbGQoJ2Jhc2VUZW1wbGF0ZScpXG4gIF9iYXNlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICBfdGVtcGxhdGVQb3J0YWw6IFRlbXBsYXRlUG9ydGFsO1xuXG4gIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICAvL1xuICBASW5wdXQoKVxuICBvcGVuVHJpZ2dlcjogJ21hbnVhbCcgfCAnY2xpY2snIHwgJ21vdXNlb3ZlcicgfCAndG9nZ2xlJyA9ICd0b2dnbGUnO1xuICAvL1xuICBASW5wdXQoKVxuICBjbG9zZVRyaWdnZXI6ICdtYW51YWwnIHwgJ2NsaWNrb3V0JyB8ICdtb3VzZW91dCcgPSAnY2xpY2tvdXQnO1xuICAvL1xuICBASW5wdXQoKVxuICBoYXNCYWNrZHJvcDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGJhY2tkcm9wQ2xhc3M6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBhZGFwdGl2aXR5RW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAvL1xuICBwcml2YXRlIF9tb3VzZVBvczogQVhQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuICBwcml2YXRlIF9pc1Njcm9sbEF0dGFjaGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2xhc3RBY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgLy9cbiAgQE91dHB1dCgpXG4gIG9uT3BlbmVkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XG4gIEBPdXRwdXQoKVxuICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuXG4gIF9lbWl0T25PcGVuZWRFdmVudCgpIHtcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICB9KTtcbiAgfVxuXG4gIF9lbWl0T25DbG9zZWRFdmVudCgpIHtcbiAgICB0aGlzLm9uQ2xvc2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICB9KTtcbiAgfVxuICAvL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuX3RhcmdldCkge1xuICAgICAgaWYgKHRoaXMub3BlblRyaWdnZXIgPT09ICdtb3VzZW92ZXInKSB7XG4gICAgICAgIGNvbnN0IG1vdXNlRW50ZXIkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX3RhcmdldCwgJ21vdXNlb3ZlcicpO1xuICAgICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgICAgbW91c2VFbnRlciQuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwb2ludCA9IHsgeDogZS5jbGllbnRYLCB5OiBlLmNsaWVudFkgfTtcbiAgICAgICAgICAgIGlmIChBWERyYXdpbmdVdGlsLmlzSW5FbGVtZW50Qm91bmQocG9pbnQsIHRoaXMuX3RhcmdldCkpXG4gICAgICAgICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jbG9zZVRyaWdnZXIgPT09ICdtb3VzZW91dCcpIHtcbiAgICAgICAgY29uc3QgbW91c2VNb3ZlJCA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlbW92ZScpO1xuICAgICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgICAgbW91c2VNb3ZlJC5waXBlKHRocm90dGxlVGltZSg1MCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbW91c2VQb3MueCA9IGUuY2xpZW50WDtcbiAgICAgICAgICAgIHRoaXMuX21vdXNlUG9zLnkgPSBlLmNsaWVudFk7XG4gICAgICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgc29tZShbdGhpcy5fdGFyZ2V0LCB0aGlzLl9vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50XSwgKGVsKSA9PlxuICAgICAgICAgICAgICAgICAgICBpbmNsdWRlcyhcbiAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5lbGVtZW50c0Zyb21Qb2ludChcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vdXNlUG9zLngsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9tb3VzZVBvcy55XG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBlbFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgICB9LCAxMDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICAvL1xuICAgICAgaWYgKHRoaXMub3BlblRyaWdnZXIgPT09ICdjbGljaycgfHwgdGhpcy5vcGVuVHJpZ2dlciA9PT0gJ3RvZ2dsZScpIHtcbiAgICAgICAgY29uc3QgY2xpY2skID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX3RhcmdldCwgJ2NsaWNrJyk7XG4gICAgICAgIHRoaXMuX2FkZFN1YihcbiAgICAgICAgICBjbGljayQuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9wZW5UcmlnZ2VyID09ICd0b2dnbGUnID8gdGhpcy50b2dnbGUoKSA6IHRoaXMub3BlbigpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGRlYnVnZ2VyXG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNoKCk7XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xuICAgIHRoaXMuX3N1YnMuZm9yRWFjaCgocykgPT4ge1xuICAgICAgcz8udW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLmlzT3BlbiA/IHRoaXMuY2xvc2UoKSA6IHRoaXMub3BlbigpO1xuICB9XG5cbiAgLy9cbiAgY2xvc2UoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3Blbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vdmVybGF5UmVmPy5kZXRhY2goKTtcbiAgICB0aGlzLl9lbWl0T25DbG9zZWRFdmVudCgpO1xuICAgIC8vXG4gICAgaWYgKHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50Py5mb2N1cykge1xuICAgICAgdGhpcy5fbGFzdEFjdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBkaXNwb3NlKCkge1xuICAgIHRoaXMuY2xvc2UoKTtcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5kaXNwb3NlKCk7XG4gICAgdGhpcy5fb3ZlcmxheVJlZiA9IG51bGwgYXMgYW55O1xuICB9XG5cbiAgLy9cbiAgb3BlbigpIHtcbiAgICBkZWJ1Z2dlclxuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgdGhpcy5fZW5zdXJlT3ZlcmxheUNyZWF0ZWQoKTtcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5hdHRhY2godGhpcy5fdGVtcGxhdGVQb3J0YWwpO1xuICAgIHRoaXMuX2VtaXRPbk9wZW5lZEV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIF9lbnN1cmVPdmVybGF5Q3JlYXRlZCgpIHtcbiAgICBjb25zdCB0YXJnZXRSZWYgPSB0aGlzLl90YXJnZXQ7XG4gICAgaWYgKCF0YXJnZXRSZWYpIHJldHVybjtcblxuICAgIGlmICghdGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgaWYgKHRoaXMuX3BsYXRmb3JtLmlzKCdTTScpICYmIHRoaXMuYWRhcHRpdml0eUVuYWJsZWQpIHtcbiAgICAgICAgdGhpcy5fb3BlbkFzQWN0aW9uc2hlZXQoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuX29wZW5Bc1BvcG92ZXIodGFyZ2V0UmVmKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuY2xvc2VUcmlnZ2VyID09ICdjbGlja291dCcpIHtcbiAgICAgICAgdGhpcy5fYWRkU3ViKFxuICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuX291dHNpZGVQb2ludGVyRXZlbnRzLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gYy50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBjb21FbGVtID0gdGFyZ2V0UmVmO1xuICAgICAgICAgICAgaWYgKCFjb21FbGVtLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgIHRoaXMuX292ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5faXNTY3JvbGxBdHRhY2hlZCkge1xuICAgICAgICAgICAgdGhpcy5fYWRkU3ViKFxuICAgICAgICAgICAgICB0aGlzLl9wbGF0Zm9ybS5zY3JvbGwuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgIShjLm5hdGl2ZUV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk/LmNsb3Nlc3QoXG4gICAgICAgICAgICAgICAgICAgICAgJy5heC1vdmVybGF5LXBhbmUnXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuX2lzU2Nyb2xsQXR0YWNoZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fdGVtcGxhdGVQb3J0YWwpIHtcbiAgICAgIHRoaXMuX3RlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKFxuICAgICAgICB0aGlzLl9iYXNlVGVtcGxhdGUsXG4gICAgICAgIHRoaXMuZ2V0Vmlld0NvbnRhaW5lcigpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29wZW5Bc1BvcG92ZXIodGFyZ2V0UmVmOiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5XG4gICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRhcmdldFJlZilcbiAgICAgICAgLndpdGhQb3NpdGlvbnMoXG4gICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLnBvc2l0aW9uKSA/IHRoaXMucG9zaXRpb24gOiBbdGhpcy5wb3NpdGlvbl1cbiAgICAgICAgKVxuICAgICAgICAud2l0aFB1c2goZmFsc2UpLFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgICBkaXNwb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgcGFuZWxDbGFzczogWydheC1hbmltYXRlLWZhZGVJbicsICdheC1hbmltYXRlLWZhc3RlciddLFxuICAgICAgbWF4SGVpZ2h0OiAndW5zZXQnLFxuICAgICAgaGFzQmFja2Ryb3A6IHRoaXMuaGFzQmFja2Ryb3AsXG4gICAgICBiYWNrZHJvcENsYXNzOiBbdGhpcy5iYWNrZHJvcENsYXNzIHx8ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCddLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbkFzQWN0aW9uc2hlZXQoKSB7XG4gICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXlcbiAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oZG9jdW1lbnQuYm9keSlcbiAgICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvdmVybGF5WDogJ2NlbnRlcicsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSksXG4gICAgICBkaXNwb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgcGFuZWxDbGFzczogWydheC1hbmltYXRlLXNsaWRlSW5VcCcsICdheC1hbmltYXRlLWZhc3RlciddLFxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICB3aWR0aDogJzEwMCUnLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVJlZiA/IHRoaXMuX292ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSA6IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkU3ViKHN1YjogU3Vic2NyaXB0aW9uKSB7XG4gICAgdGhpcy5fc3Vicy5wdXNoKHN1Yik7XG4gIH1cblxuICB1cGRhdGVQb3NpdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9vdmVybGF5UmVmPy51cGRhdGVQb3NpdGlvbigpO1xuICAgIHRoaXMuZm9jdXMoKTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNiYXNlVGVtcGxhdGU+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+Il19
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9wb3BvdmVyL3NyYy9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL3BvcG92ZXIvc3JjL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9KLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RCxPQUFPLEVBQWdDLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQVcsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRTVELE1BTWEsa0JBQW1CLFNBQVEsc0JBQXNCO0lBQ3BELFNBQVMsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsUUFBUSxHQUFZLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUU1QyxFQUFFO0lBQ00sT0FBTyxDQUFjO0lBQzdCLElBQ1csTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBVyxNQUFNLENBQUMsQ0FBNkM7UUFDN0QsSUFBSSxDQUFDLFlBQVksV0FBVztZQUFFLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO2FBQzFDLElBQUksQ0FBQyxZQUFZLFVBQVU7WUFBRSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUM7YUFDNUQsSUFBSSxDQUFDLFlBQVksZUFBZTtZQUFFLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLGlCQUFnQyxDQUFDO0lBQzVHLENBQUM7SUFHRCxRQUFRLEdBQWdEO1FBQ3REO1lBQ0UsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLEtBQUs7U0FDaEI7UUFDRDtZQUNFLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLFFBQVE7U0FDbkI7S0FDRixDQUFDO0lBQ0YsRUFBRTtJQUVGLGFBQWEsQ0FBbUI7SUFDaEMsV0FBVyxDQUFhO0lBQ3hCLGVBQWUsQ0FBaUI7SUFFaEMsS0FBSyxHQUFtQixFQUFFLENBQUM7SUFDM0IsRUFBRTtJQUVGLFdBQVcsR0FBZ0QsUUFBUSxDQUFDO0lBQ3BFLEVBQUU7SUFFRixZQUFZLEdBQXVDLFVBQVUsQ0FBQztJQUM5RCxFQUFFO0lBRUYsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUc3QixhQUFhLENBQVM7SUFHdEIsaUJBQWlCLEdBQVksS0FBSyxDQUFDO0lBQ25DLEVBQUU7SUFDTSxTQUFTLEdBQVksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNwQyxpQkFBaUIsR0FBWSxLQUFLLENBQUM7SUFDbkMsa0JBQWtCLENBQWM7SUFDeEMsRUFBRTtJQUVGLFFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUU5RCxRQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7SUFFOUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2pCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUU7U0FDbkMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNqQixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxFQUFFO0lBQ0YsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssV0FBVyxFQUFFO2dCQUNwQyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQWEsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLE9BQU8sQ0FDVixXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUN4QixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQzdDLElBQUksYUFBYSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO3dCQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDdkUsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO1lBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTtnQkFDcEMsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFhLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FDVixVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDN0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO3dCQUNmLFVBQVUsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0NBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUM5SixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7cUJBQ1Q7Z0JBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO1lBQ0QsRUFBRTtZQUNGLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxRQUFRLEVBQUU7Z0JBQ2pFLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBYSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUM1RCxJQUFJLENBQUMsT0FBTyxDQUNWLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDN0QsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO1NBQ0Y7SUFDSCxDQUFDO0lBQ0QsRUFBRTtJQUNGLFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDckIsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsRUFBRTtJQUNGLEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNoQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzFCLEVBQUU7UUFDRixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxFQUFFO0lBQ0YsSUFBSTtRQUNGLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxRQUFRLENBQUMsYUFBNEIsQ0FBQztRQUNoRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUV2QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNyQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDckQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7YUFDM0I7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNoQztZQUVELElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxVQUFVLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ25ELE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFxQixDQUFDO29CQUN2QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7b0JBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO3dCQUM3QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7cUJBQ2Q7Z0JBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO1lBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FDVixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7b0JBQzNCLElBQUksQ0FBQyxPQUFPLENBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUNsQyxJQUFJOzRCQUNGLElBQUksQ0FBRSxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQXNCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDO2dDQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzt5QkFDdkY7d0JBQUMsT0FBTyxLQUFLLEVBQUUsR0FBRTtvQkFDcEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztvQkFDRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2lCQUMvQjtZQUNILENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3pCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1NBQ3hGO0lBQ0gsQ0FBQztJQUVPLGNBQWMsQ0FBQyxTQUFzQjtRQUMzQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3RDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRO2lCQUM1QixRQUFRLEVBQUU7aUJBQ1YsbUJBQW1CLENBQUMsU0FBUyxDQUFDO2lCQUM5QixhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM3RSxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ2xCLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRTtZQUMzRCxtQkFBbUIsRUFBRSxJQUFJO1lBQ3pCLFVBQVUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDO1lBQ3RELFNBQVMsRUFBRSxPQUFPO1lBQ2xCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLGtDQUFrQyxDQUFDO1NBQzFFLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUN0QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUTtpQkFDNUIsUUFBUSxFQUFFO2lCQUNWLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7aUJBQ2xDLGFBQWEsQ0FBQztnQkFDYjtvQkFDRSxPQUFPLEVBQUUsUUFBUTtvQkFDakIsT0FBTyxFQUFFLFFBQVE7b0JBQ2pCLFFBQVEsRUFBRSxRQUFRO29CQUNsQixRQUFRLEVBQUUsUUFBUTtpQkFDbkI7YUFDRixDQUFDO1lBQ0osbUJBQW1CLEVBQUUsSUFBSTtZQUN6QixVQUFVLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxtQkFBbUIsQ0FBQztZQUN6RCxXQUFXLEVBQUUsSUFBSTtZQUNqQixLQUFLLEVBQUUsTUFBTTtTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNuRSxDQUFDO0lBRU8sT0FBTyxDQUFDLEdBQWlCO1FBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO3VHQXJQVSxrQkFBa0I7MkZBQWxCLGtCQUFrQixtY0NmL0IsMEVBRWM7O1NEYUQsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFFUCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQVNwQyxNQUFNO3NCQURoQixLQUFLO2dCQVdOLFFBQVE7c0JBRFAsS0FBSztnQkFpQk4sYUFBYTtzQkFEWixTQUFTO3VCQUFDLGNBQWM7Z0JBUXpCLFdBQVc7c0JBRFYsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLGFBQWE7c0JBRFosS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBUU4sUUFBUTtzQkFEUCxNQUFNO2dCQUdQLFFBQVE7c0JBRFAsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzb21lLCBpbmNsdWRlcyB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGZyb21FdmVudCwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWENvbm5lY3RlZFBvc2l0aW9uLCBBWEV2ZW50LCBNWEJhc2VDb21wb25lbnQsIE1YSW50ZXJhY3RpdmVDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYUGxhdGZvcm0gfSBmcm9tICdAYWNvcmV4L2NvcmUvcGxhdGZvcm0nO1xuaW1wb3J0IHsgQVhQb2ludCwgQVhEcmF3aW5nVXRpbCB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBNWEludGVyYWN0aXZlQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBfcGxhdGZvcm06IEFYUGxhdGZvcm0gPSBpbmplY3QoQVhQbGF0Zm9ybSk7XG4gIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgLy9cbiAgcHJpdmF0ZSBfdGFyZ2V0OiBIVE1MRWxlbWVudDtcbiAgQElucHV0KClcbiAgcHVibGljIGdldCB0YXJnZXQoKTogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmIHwgTVhCYXNlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0O1xuICB9XG4gIHB1YmxpYyBzZXQgdGFyZ2V0KHY6IEhUTUxFbGVtZW50IHwgRWxlbWVudFJlZiB8IE1YQmFzZUNvbXBvbmVudCkge1xuICAgIGlmICh2IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHRoaXMuX3RhcmdldCA9IHY7XG4gICAgZWxzZSBpZiAodiBpbnN0YW5jZW9mIEVsZW1lbnRSZWYpIHRoaXMuX3RhcmdldCA9IHYubmF0aXZlRWxlbWVudDtcbiAgICBlbHNlIGlmICh2IGluc3RhbmNlb2YgTVhCYXNlQ29tcG9uZW50KSB0aGlzLl90YXJnZXQgPSB2LmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwb3NpdGlvbjogQVhDb25uZWN0ZWRQb3NpdGlvbiB8IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgIH0sXG4gIF07XG4gIC8vXG4gIEBWaWV3Q2hpbGQoJ2Jhc2VUZW1wbGF0ZScpXG4gIF9iYXNlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICBfdGVtcGxhdGVQb3J0YWw6IFRlbXBsYXRlUG9ydGFsO1xuXG4gIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICAvL1xuICBASW5wdXQoKVxuICBvcGVuVHJpZ2dlcjogJ21hbnVhbCcgfCAnY2xpY2snIHwgJ21vdXNlb3ZlcicgfCAndG9nZ2xlJyA9ICd0b2dnbGUnO1xuICAvL1xuICBASW5wdXQoKVxuICBjbG9zZVRyaWdnZXI6ICdtYW51YWwnIHwgJ2NsaWNrb3V0JyB8ICdtb3VzZW91dCcgPSAnY2xpY2tvdXQnO1xuICAvL1xuICBASW5wdXQoKVxuICBoYXNCYWNrZHJvcDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGJhY2tkcm9wQ2xhc3M6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBhZGFwdGl2aXR5RW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAvL1xuICBwcml2YXRlIF9tb3VzZVBvczogQVhQb2ludCA9IHsgeDogMCwgeTogMCB9O1xuICBwcml2YXRlIF9pc1Njcm9sbEF0dGFjaGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2xhc3RBY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgLy9cbiAgQE91dHB1dCgpXG4gIG9uT3BlbmVkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XG4gIEBPdXRwdXQoKVxuICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuXG4gIF9lbWl0T25PcGVuZWRFdmVudCgpIHtcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICB9KTtcbiAgfVxuXG4gIF9lbWl0T25DbG9zZWRFdmVudCgpIHtcbiAgICB0aGlzLm9uQ2xvc2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICB9KTtcbiAgfVxuICAvL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuX3RhcmdldCkge1xuICAgICAgaWYgKHRoaXMub3BlblRyaWdnZXIgPT09ICdtb3VzZW92ZXInKSB7XG4gICAgICAgIGNvbnN0IG1vdXNlRW50ZXIkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX3RhcmdldCwgJ21vdXNlb3ZlcicpO1xuICAgICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgICAgbW91c2VFbnRlciQuc3Vic2NyaWJlKGUgPT4ge1xuICAgICAgICAgICAgY29uc3QgcG9pbnQgPSB7IHg6IGUuY2xpZW50WCwgeTogZS5jbGllbnRZIH07XG4gICAgICAgICAgICBpZiAoQVhEcmF3aW5nVXRpbC5pc0luRWxlbWVudEJvdW5kKHBvaW50LCB0aGlzLl90YXJnZXQpKSB0aGlzLm9wZW4oKTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2xvc2VUcmlnZ2VyID09PSAnbW91c2VvdXQnKSB7XG4gICAgICAgIGNvbnN0IG1vdXNlTW92ZSQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsICdtb3VzZW1vdmUnKTtcbiAgICAgICAgdGhpcy5fYWRkU3ViKFxuICAgICAgICAgIG1vdXNlTW92ZSQucGlwZSh0aHJvdHRsZVRpbWUoNTApKS5zdWJzY3JpYmUoZSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9tb3VzZVBvcy54ID0gZS5jbGllbnRYO1xuICAgICAgICAgICAgdGhpcy5fbW91c2VQb3MueSA9IGUuY2xpZW50WTtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoc29tZShbdGhpcy5fdGFyZ2V0LCB0aGlzLl9vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50XSwgZWwgPT4gaW5jbHVkZXMoZG9jdW1lbnQuZWxlbWVudHNGcm9tUG9pbnQodGhpcy5fbW91c2VQb3MueCwgdGhpcy5fbW91c2VQb3MueSksIGVsKSkpIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgICAgfSwgMTAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgLy9cbiAgICAgIGlmICh0aGlzLm9wZW5UcmlnZ2VyID09PSAnY2xpY2snIHx8IHRoaXMub3BlblRyaWdnZXIgPT09ICd0b2dnbGUnKSB7XG4gICAgICAgIGNvbnN0IGNsaWNrJCA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLl90YXJnZXQsICdjbGljaycpO1xuICAgICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgICAgY2xpY2skLnN1YnNjcmliZShlID0+IHtcbiAgICAgICAgICAgIHRoaXMub3BlblRyaWdnZXIgPT0gJ3RvZ2dsZScgPyB0aGlzLnRvZ2dsZSgpIDogdGhpcy5vcGVuKCk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNoKCk7XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHtcbiAgICAgIHM/LnVuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gIH1cblxuICB0b2dnbGUoKSB7XG4gICAgdGhpcy5pc09wZW4gPyB0aGlzLmNsb3NlKCkgOiB0aGlzLm9wZW4oKTtcbiAgfVxuXG4gIC8vXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNoKCk7XG4gICAgdGhpcy5fZW1pdE9uQ2xvc2VkRXZlbnQoKTtcbiAgICAvL1xuICAgIGlmICh0aGlzLl9sYXN0QWN0aXZlRWxlbWVudD8uZm9jdXMpIHtcbiAgICAgIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgZGlzcG9zZSgpIHtcbiAgICB0aGlzLmNsb3NlKCk7XG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xuICAgIHRoaXMuX292ZXJsYXlSZWYgPSBudWxsIGFzIGFueTtcbiAgfVxuXG4gIC8vXG4gIG9wZW4oKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICB0aGlzLl9lbnN1cmVPdmVybGF5Q3JlYXRlZCgpO1xuICAgIHRoaXMuX292ZXJsYXlSZWY/LmF0dGFjaCh0aGlzLl90ZW1wbGF0ZVBvcnRhbCk7XG4gICAgdGhpcy5fZW1pdE9uT3BlbmVkRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Vuc3VyZU92ZXJsYXlDcmVhdGVkKCkge1xuICAgIGNvbnN0IHRhcmdldFJlZiA9IHRoaXMuX3RhcmdldDtcbiAgICBpZiAoIXRhcmdldFJlZikgcmV0dXJuO1xuXG4gICAgaWYgKCF0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICBpZiAodGhpcy5fcGxhdGZvcm0uaXMoJ1NNJykgJiYgdGhpcy5hZGFwdGl2aXR5RW5hYmxlZCkge1xuICAgICAgICB0aGlzLl9vcGVuQXNBY3Rpb25zaGVldCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fb3BlbkFzUG9wb3Zlcih0YXJnZXRSZWYpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jbG9zZVRyaWdnZXIgPT0gJ2NsaWNrb3V0Jykge1xuICAgICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5fb3V0c2lkZVBvaW50ZXJFdmVudHMuc3Vic2NyaWJlKGMgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gYy50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBjb21FbGVtID0gdGFyZ2V0UmVmO1xuICAgICAgICAgICAgaWYgKCFjb21FbGVtLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLl9hZGRTdWIoXG4gICAgICAgIHRoaXMuX292ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5faXNTY3JvbGxBdHRhY2hlZCkge1xuICAgICAgICAgICAgdGhpcy5fYWRkU3ViKFxuICAgICAgICAgICAgICB0aGlzLl9wbGF0Zm9ybS5zY3JvbGwuc3Vic2NyaWJlKGMgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICBpZiAoIShjLm5hdGl2ZUV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk/LmNsb3Nlc3QoJy5heC1vdmVybGF5LXBhbmUnKSkgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7fVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuX2lzU2Nyb2xsQXR0YWNoZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fdGVtcGxhdGVQb3J0YWwpIHtcbiAgICAgIHRoaXMuX3RlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX2Jhc2VUZW1wbGF0ZSwgdGhpcy5nZXRWaWV3Q29udGFpbmVyKCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29wZW5Bc1BvcG92ZXIodGFyZ2V0UmVmOiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5XG4gICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRhcmdldFJlZilcbiAgICAgICAgLndpdGhQb3NpdGlvbnMoQXJyYXkuaXNBcnJheSh0aGlzLnBvc2l0aW9uKSA/IHRoaXMucG9zaXRpb24gOiBbdGhpcy5wb3NpdGlvbl0pXG4gICAgICAgIC53aXRoUHVzaChmYWxzZSksXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRydWUsXG4gICAgICBwYW5lbENsYXNzOiBbJ2F4LWFuaW1hdGUtZmFkZUluJywgJ2F4LWFuaW1hdGUtZmFzdGVyJ10sXG4gICAgICBtYXhIZWlnaHQ6ICd1bnNldCcsXG4gICAgICBoYXNCYWNrZHJvcDogdGhpcy5oYXNCYWNrZHJvcCxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6IFt0aGlzLmJhY2tkcm9wQ2xhc3MgfHwgJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJ10sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9vcGVuQXNBY3Rpb25zaGVldCgpIHtcbiAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUoe1xuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheVxuICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhkb2N1bWVudC5ib2R5KVxuICAgICAgICAud2l0aFBvc2l0aW9ucyhbXG4gICAgICAgICAge1xuICAgICAgICAgICAgb3JpZ2luWDogJ2NlbnRlcicsXG4gICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnY2VudGVyJyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdKSxcbiAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRydWUsXG4gICAgICBwYW5lbENsYXNzOiBbJ2F4LWFuaW1hdGUtc2xpZGVJblVwJywgJ2F4LWFuaW1hdGUtZmFzdGVyJ10sXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgfSk7XG4gIH1cblxuICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vdmVybGF5UmVmID8gdGhpcy5fb3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpIDogZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIF9hZGRTdWIoc3ViOiBTdWJzY3JpcHRpb24pIHtcbiAgICB0aGlzLl9zdWJzLnB1c2goc3ViKTtcbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX292ZXJsYXlSZWY/LnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgdGhpcy5mb2N1cygpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2Jhc2VUZW1wbGF0ZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, ContentChildren, HostBinding, NgModule } from '@angular/core';
2
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ContentChildren, HostBinding, NgModule } from '@angular/core';
3
3
  import { MXColorComponent } from '@acorex/components/common';
4
4
  import { classes } from 'polytype';
5
5
  import * as i1 from '@angular/common';
@@ -25,6 +25,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
25
25
  * @category Components
26
26
  */
27
27
  class AXAvatarComponent extends classes(MXColorComponent) {
28
+ cssClass;
28
29
  _children;
29
30
  ngAfterViewInit() {
30
31
  this._children.changes.subscribe(() => {
@@ -35,12 +36,15 @@ class AXAvatarComponent extends classes(MXColorComponent) {
35
36
  return `ax-${this.color}-default`;
36
37
  }
37
38
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AXAvatarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
38
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: "color" }, host: { properties: { "class": "this.__hostClass" } }, queries: [{ propertyName: "_children", predicate: ["ax-text, ax-icon, ax-image"] }], usesInheritance: true, ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\n\n<ng-template #custom>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #default>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-default\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n viewBox=\"0 0 512 512\">\n <g style=\"isolation:isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill:#fff;opacity:0.7\" />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity:0.05\" />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill:#fff\" />\n </g>\n </g>\n </g>\n </svg>\n</ng-template>", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{border-width:2px;border-color:rgba(var(--ax-color-surface));margin:-.25rem;overflow:hidden}ax-avatar{position:relative;display:flex;justify-content:center;width:4rem;height:4rem}ax-avatar *{border-radius:inherit}ax-avatar ax-image{overflow:hidden}ax-avatar ax-text{font-size:1.25rem;line-height:1.75rem}ax-avatar ax-icon,ax-avatar ax-text{@apply ax-w-full ax-h-full ax-flex ax-items-center ax-justify-center;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-avatar.ax-primary-default .ax-default{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-text{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-icon{background-color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-default .ax-default{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-text{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-icon{background-color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-default .ax-default{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-text{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-icon{background-color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-default .ax-default{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-text{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-icon{background-color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-default .ax-default{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-text{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-icon{background-color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-default .ax-default{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-text{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-icon{background-color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-default .ax-default{fill:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-text,ax-avatar.ax-ghost-default ax-icon{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-icon svg{fill:rgba(var(--ax-color-on-surface))}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
39
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: "color", cssClass: ["class", "cssClass"] }, host: { properties: { "class": "this.__hostClass" } }, queries: [{ propertyName: "_children", predicate: ["ax-text, ax-icon, ax-image"] }], usesInheritance: true, ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\n\n<ng-template #custom>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #default>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-default {{ cssClass }}\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\" style=\"fill: #fff; opacity: 0.7\" />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\" />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: #fff\" />\n </g>\n </g>\n </g>\n </svg>\n</ng-template>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{border-width:2px;border-color:rgba(var(--ax-color-surface));margin:-.25rem;overflow:hidden}ax-avatar{position:relative;display:flex;justify-content:center;width:4rem;height:4rem}ax-avatar *{border-radius:inherit}ax-avatar ax-image{overflow:hidden}ax-avatar ax-text{font-size:1.25rem;line-height:1.75rem}ax-avatar ax-icon,ax-avatar ax-text{@apply ax-w-full ax-h-full ax-flex ax-items-center ax-justify-center;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-avatar.ax-primary-default .ax-default{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-text{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-icon{background-color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-default .ax-default{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-text{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-icon{background-color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-default .ax-default{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-text{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-icon{background-color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-default .ax-default{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-text{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-icon{background-color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-default .ax-default{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-text{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-icon{background-color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-default .ax-default{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-text{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-icon{background-color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-default .ax-default{fill:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-text,ax-avatar.ax-ghost-default ax-icon{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-icon svg{fill:rgba(var(--ax-color-on-surface))}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
39
40
  }
40
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AXAvatarComponent, decorators: [{
41
42
  type: Component,
42
- args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\n\n<ng-template #custom>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #default>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-default\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n viewBox=\"0 0 512 512\">\n <g style=\"isolation:isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill:#fff;opacity:0.7\" />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity:0.05\" />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill:#fff\" />\n </g>\n </g>\n </g>\n </svg>\n</ng-template>", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{border-width:2px;border-color:rgba(var(--ax-color-surface));margin:-.25rem;overflow:hidden}ax-avatar{position:relative;display:flex;justify-content:center;width:4rem;height:4rem}ax-avatar *{border-radius:inherit}ax-avatar ax-image{overflow:hidden}ax-avatar ax-text{font-size:1.25rem;line-height:1.75rem}ax-avatar ax-icon,ax-avatar ax-text{@apply ax-w-full ax-h-full ax-flex ax-items-center ax-justify-center;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-avatar.ax-primary-default .ax-default{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-text{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-icon{background-color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-default .ax-default{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-text{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-icon{background-color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-default .ax-default{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-text{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-icon{background-color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-default .ax-default{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-text{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-icon{background-color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-default .ax-default{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-text{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-icon{background-color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-default .ax-default{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-text{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-icon{background-color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-default .ax-default{fill:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-text,ax-avatar.ax-ghost-default ax-icon{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-icon svg{fill:rgba(var(--ax-color-on-surface))}\n"] }]
43
- }], propDecorators: { _children: [{
43
+ args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\n\n<ng-template #custom>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #default>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-default {{ cssClass }}\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\" style=\"fill: #fff; opacity: 0.7\" />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\" />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: #fff\" />\n </g>\n </g>\n </g>\n </svg>\n</ng-template>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{border-width:2px;border-color:rgba(var(--ax-color-surface));margin:-.25rem;overflow:hidden}ax-avatar{position:relative;display:flex;justify-content:center;width:4rem;height:4rem}ax-avatar *{border-radius:inherit}ax-avatar ax-image{overflow:hidden}ax-avatar ax-text{font-size:1.25rem;line-height:1.75rem}ax-avatar ax-icon,ax-avatar ax-text{@apply ax-w-full ax-h-full ax-flex ax-items-center ax-justify-center;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-avatar.ax-primary-default .ax-default{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-text{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-default ax-icon{background-color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-default .ax-default{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-text{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-default ax-icon{background-color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-default .ax-default{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-text{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-default ax-icon{background-color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-default .ax-default{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-text{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-default ax-icon{background-color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-default .ax-default{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-text{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-default ax-icon{background-color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-default .ax-default{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-text{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-default ax-icon{background-color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-default .ax-default{fill:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-text,ax-avatar.ax-ghost-default ax-icon{background-color:rgba(var(--ax-color-on-surface));color:rgba(var(--ax-color-on-surface))}ax-avatar.ax-ghost-default ax-icon svg{fill:rgba(var(--ax-color-on-surface))}\n"] }]
44
+ }], propDecorators: { cssClass: [{
45
+ type: Input,
46
+ args: ['class']
47
+ }], _children: [{
44
48
  type: ContentChildren,
45
49
  args: ['ax-text, ax-icon, ax-image']
46
50
  }], __hostClass: [{