@tetacom/ng-components 1.0.20 → 1.0.24

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.
Files changed (26) hide show
  1. package/common/util/position-util.d.ts +1 -1
  2. package/component/date-picker/date-picker/date-picker.component.d.ts +5 -1
  3. package/component/property-grid/property-grid/property-grid-item/property-grid-item.component.d.ts +2 -0
  4. package/component/property-grid/property-grid.module.d.ts +2 -1
  5. package/component/table/contract/table-column.d.ts +6 -0
  6. package/esm2020/common/util/position-util.mjs +13 -4
  7. package/esm2020/component/date-picker/date-picker/date-picker.component.mjs +17 -6
  8. package/esm2020/component/date-picker/month-picker/month-picker.component.mjs +3 -3
  9. package/esm2020/component/dropdown/dropdown-base.mjs +24 -16
  10. package/esm2020/component/filter/date-filter/date-filter.component.mjs +1 -1
  11. package/esm2020/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +7 -4
  12. package/esm2020/component/property-grid/property-grid.module.mjs +6 -2
  13. package/esm2020/component/select/select/select.component.mjs +3 -3
  14. package/esm2020/component/table/contract/table-column.mjs +2 -1
  15. package/esm2020/component/table/default/date-cell/date-cell.component.mjs +3 -3
  16. package/esm2020/component/table/default/date-time-cell/date-time-cell.component.mjs +1 -1
  17. package/esm2020/component/table/default/list-cell/list-cell.component.mjs +3 -3
  18. package/esm2020/component/table/head-cell-dropdown/head-cell-dropdown.component.mjs +3 -3
  19. package/esm2020/component/table/service/table.service.mjs +7 -3
  20. package/esm2020/component/table/table/table.component.mjs +5 -3
  21. package/esm2020/component/table/table-body/table-body.component.mjs +3 -3
  22. package/fesm2015/tetacom-ng-components.mjs +283 -245
  23. package/fesm2015/tetacom-ng-components.mjs.map +1 -1
  24. package/fesm2020/tetacom-ng-components.mjs +281 -243
  25. package/fesm2020/tetacom-ng-components.mjs.map +1 -1
  26. package/package.json +1 -1
@@ -130,23 +130,31 @@ export class DropdownBase {
130
130
  this.setPosition(this._head.nativeElement, this._body);
131
131
  }
132
132
  setPosition(container, target) {
133
- const containerRect = container.getBoundingClientRect();
133
+ const containerPosition = container.getBoundingClientRect();
134
+ const targetPosition = target.getBoundingClientRect();
134
135
  const rect = {
135
- bottom: containerRect.bottom,
136
- top: containerRect.top,
137
- left: containerRect.left,
138
- right: containerRect.right,
136
+ bottom: containerPosition.bottom,
137
+ top: containerPosition.top,
138
+ left: containerPosition.left,
139
+ right: containerPosition.right,
139
140
  };
140
- // const transformedParent = DomUtil.findTransformedParent(container);
141
- // console.log(transformedParent);
142
- // if (transformedParent) {
143
- // const parentPosition = transformedParent.getBoundingClientRect();
144
- // rect.left = rect.left - parentPosition.left;
145
- // rect.top = rect.top - parentPosition.top;
146
- // rect.bottom = parentPosition.bottom - rect.top;
147
- // rect.right = parentPosition.right - rect.right;
148
- // }
149
- const position = PositionUtil.getPosition(rect, target.getBoundingClientRect(), this.align, this.verticalAlign);
141
+ const targetRect = {
142
+ bottom: targetPosition.bottom,
143
+ top: targetPosition.top,
144
+ left: targetPosition.left,
145
+ right: targetPosition.right,
146
+ };
147
+ const targetTransformedParent = DomUtil.findTransformedParent(target);
148
+ let parentPosition = {
149
+ left: 0,
150
+ right: 0,
151
+ top: 0,
152
+ bottom: 0
153
+ };
154
+ if (targetTransformedParent) {
155
+ parentPosition = targetTransformedParent.getBoundingClientRect();
156
+ }
157
+ const position = PositionUtil.getPosition(rect, targetRect, this.align, this.verticalAlign, 0, 0, parentPosition);
150
158
  PositionUtil.setElementPosition(target, position);
151
159
  }
152
160
  }
@@ -193,4 +201,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
193
201
  type: HostListener,
194
202
  args: ['window:keyup', ['$event']]
195
203
  }] } });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9kcm9wZG93bi9kcm9wZG93bi1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBR3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBR3pELGtFQUFrRTtBQUNsRSxNQUFNLE9BQU8sWUFBWTtJQThDdkIsWUFDWSxJQUF1QixFQUN2QixTQUFjLEVBQ2QsV0FBb0MsRUFDcEMsS0FBYSxFQUNiLFNBQW9CO1FBSnBCLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQUs7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDcEMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFsRHZCLFVBQUssR0FBVSxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQzFCLGtCQUFhLEdBQWtCLGFBQWEsQ0FBQyxNQUFNLENBQUM7UUFHcEQsV0FBTSxHQUFH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QUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0YsSUFBSTtzQkFEUCxLQUFLO2dCQXFCSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNFLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFNSSxLQUFLO3NCQUpkLFlBQVk7dUJBQUMscUJBQXFCLEVBQUU7d0JBQ25DLE1BQU0sRUFBRSxLQUFLO3dCQUNiLElBQUksRUFBRSxVQUFVO3FCQUNqQjtnQkFJUyxRQUFRO3NCQURqQixZQUFZO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkE4QnRCLEtBQUs7c0JBQXZDLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVlXLGFBQWE7c0JBQXhELFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBdUJBLEtBQUs7c0JBQTlDLFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbnRlbnRDaGlsZCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tVXRpbCB9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL2RvbS11dGlsJztcbmltcG9ydCB7IFBvc2l0aW9uVXRpbCB9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL3Bvc2l0aW9uLXV0aWwnO1xuaW1wb3J0IHsgQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcbmltcG9ydCB7IFZlcnRpY2FsQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7IERyb3Bkb3duSGVhZERpcmVjdGl2ZSB9IGZyb20gJy4vZHJvcGRvd24taGVhZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRHJvcGRvd25Db250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wZG93bi1jb250ZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBdXRvQ2xvc2VJZ25vcmVDYXNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvbnRyYWN0L2F1dG8tY2xvc2UtaWdub3JlLWNhc2UnO1xuaW1wb3J0IHsgSVJlY3QgfSBmcm9tICcuLi8uLi9jb21tb24vY29udHJhY3QvaS1yZWN0JztcbmltcG9ydCB7IHRha2VXaGlsZSwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKClcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQmFzZSB7XG4gIEBJbnB1dCgpIGFsaWduOiBBbGlnbiA9IEFsaWduLmxlZnQ7XG4gIEBJbnB1dCgpIHZlcnRpY2FsQWxpZ246IFZlcnRpY2FsQWxpZ24gPSBWZXJ0aWNhbEFsaWduLmJvdHRvbTtcbiAgQElucHV0KCkgYXBwZW5kVG9Cb2R5OiBib29sZWFuO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgc2hhZG93ID0gdHJ1ZTtcbiAgQElucHV0KCkgY2xhc3NOYW1lOiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICBASW5wdXQoKVxuICBzZXQgb3Blbih2YWw6IGJvb2xlYW4pIHtcbiAgICBpZiAodmFsICE9IG51bGwgJiYgdmFsICE9PSB0aGlzLl9vcGVuICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAodmFsKSB7XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd24oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbjtcbiAgfVxuXG4gIGdldCBjb250YWluZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBwZW5kVG9Cb2R5XG4gICAgICA/IHRoaXMuX2RvY3VtZW50LmJvZHlcbiAgICAgIDogdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQE91dHB1dCgpIG9wZW5DaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlSWdub3JlOiBBcnJheTxBdXRvQ2xvc2VJZ25vcmVDYXNlPiA9IFsnaW5zaWRlJ107XG5cbiAgQENvbnRlbnRDaGlsZChEcm9wZG93bkhlYWREaXJlY3RpdmUsIHtcbiAgICBzdGF0aWM6IGZhbHNlLFxuICAgIHJlYWQ6IEVsZW1lbnRSZWYsXG4gIH0pXG4gIHByb3RlY3RlZCBfaGVhZDogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkKERyb3Bkb3duQ29udGVudERpcmVjdGl2ZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHByb3RlY3RlZCBfY29udGVudDogRHJvcGRvd25Db250ZW50RGlyZWN0aXZlO1xuXG4gIHByb3RlY3RlZCBfYm9keTogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJvdGVjdGVkIF9vcGVuID0gZmFsc2U7XG4gIHByb3RlY3RlZCBfYWxpdmUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcm90ZWN0ZWQgX2RvY3VtZW50OiBhbnksXG4gICAgcHJvdGVjdGVkIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcm90ZWN0ZWQgX3pvbmU6IE5nWm9uZSxcbiAgICBwcm90ZWN0ZWQgX3JlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7XG4gICAgdGhpcy5fem9uZS5vblN0YWJsZVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoXykgPT4gdGhpcy5fYWxpdmUpLFxuICAgICAgICB0aHJvdHRsZVRpbWUoMTAsIHVuZGVmaW5lZCwgeyB0cmFpbGluZzogdHJ1ZSB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICBpZiAodGhpcy5faGVhZD8ubmF0aXZlRWxlbWVudCAmJiB0aGlzLl9ib2R5KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5faGVhZD8ubmF0aXZlRWxlbWVudCAmJiB0aGlzLl9ib2R5KSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0UG9zaXRpb24odGhpcy5faGVhZC5uYXRpdmVFbGVtZW50LCB0aGlzLl9ib2R5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIGNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3Blbikge1xuICAgICAgaWYgKCFEb21VdGlsLmNsaWNrZWRJbnNpZGUodGhpcy5fYm9keSwgZXZlbnQpKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoRG9tVXRpbC5jbGlja2VkSW5zaWRlKHRoaXMuX2hlYWQubmF0aXZlRWxlbWVudCwgZXZlbnQpKSB7XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKSBkb2N1bWVudENsaWNrKFxuICAgIGV2ZW50OiBNb3VzZUV2ZW50XG4gICk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLm9wZW4gfHxcbiAgICAgICF0aGlzLmF1dG9DbG9zZSB8fFxuICAgICAgZXZlbnQuZGV0YWlsID09PSAwIHx8XG4gICAgICBEb21VdGlsLmNsaWNrZWRJbnNpZGUodGhpcy5faGVhZC5uYXRpdmVFbGVtZW50LCBldmVudCkgfHxcbiAgICAgIERvbVV0aWwuY2xpY2tlZEluc2lkZSh0aGlzLl9ib2R5LCBldmVudClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKERvbVV0aWwuY2xpY2tlZEluc2lkZSh0aGlzLl9ib2R5LCBldmVudCkpIHtcbiAgICAgIGlmICh0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKCdpbnNpZGUnKSA8IDApIHtcbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKCdvdXRzaWRlJykgPCAwKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cCcsIFsnJGV2ZW50J10pIGtleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgIXRoaXMuYXV0b0Nsb3NlIHx8XG4gICAgICBbJ2VzYycsICdlbnRlciddLmV2ZXJ5KFxuICAgICAgICAoXzogJ2VzYycgfCAnZW50ZXInKSA9PiB0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKF8pID49IDBcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgKGV2ZW50LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuYXV0b0Nsb3NlSWdub3JlLmluZGV4T2YoJ2VzYycpIDwgMCkgfHxcbiAgICAgIChldmVudC5jb2RlID09PSAnRW50ZXInICYmIHRoaXMuYXV0b0Nsb3NlSWdub3JlLmluZGV4T2YoJ2VudGVyJykgPCAwKVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3BlbiAmJiB0aGlzLl9ib2R5ICYmIHRoaXMuY29udGFpbmVyLmNvbnRhaW5zKHRoaXMuX2JvZHkpKSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmNvbnRhaW5lciwgdGhpcy5fYm9keSk7XG4gICAgICB0aGlzLl9vcGVuID0gZmFsc2U7XG4gICAgICB0aGlzLl9ib2R5ID0gbnVsbDtcbiAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3Blbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX29wZW4gfHwgIXRoaXMuX2NvbnRlbnQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vcGVuID0gdHJ1ZTtcbiAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdCh0aGlzLm9wZW4pO1xuICAgIGNvbnN0IHJlbmRlcmVyID0gdGhpcy5fcmVuZGVyZXI7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuX2NvbnRlbnQubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBjb250YWluZXIgPSAodGhpcy5fYm9keSA9XG4gICAgICB0aGlzLl9ib2R5IHx8IHJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpKTtcbiAgICByZW5kZXJlci5hZGRDbGFzcyhjb250YWluZXIsICdkcm9wZG93bicpO1xuXG4gICAgaWYgKHRoaXMuY2xhc3NOYW1lICE9IG51bGwpIHtcbiAgICAgIGlmICh0aGlzLmNsYXNzTmFtZSBpbnN0YW5jZW9mIEFycmF5ICYmIHRoaXMuY2xhc3NOYW1lLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5jbGFzc05hbWUuZm9yRWFjaCgoXykgPT4ge1xuICAgICAgICAgIHJlbmRlcmVyLmFkZENsYXNzKGNvbnRhaW5lciwgXyk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgaWYgKHR5cGVvZiB0aGlzLmNsYXNzTmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoY29udGFpbmVyLCB0aGlzLmNsYXNzTmFtZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmVuZGVyZXIuYXBwZW5kQ2hpbGQoY29udGFpbmVyLCBjb250ZW50KTtcbiAgICByZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lciwgY29udGFpbmVyKTtcblxuICAgIHRoaXMuc2V0UG9zaXRpb24odGhpcy5faGVhZC5uYXRpdmVFbGVtZW50LCB0aGlzLl9ib2R5KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UG9zaXRpb24oY29udGFpbmVyOiBIVE1MRWxlbWVudCwgdGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lclJlY3QgPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgcmVjdDogSVJlY3QgPSB7XG4gICAgICBib3R0b206IGNvbnRhaW5lclJlY3QuYm90dG9tLFxuICAgICAgdG9wOiBjb250YWluZXJSZWN0LnRvcCxcbiAgICAgIGxlZnQ6IGNvbnRhaW5lclJlY3QubGVmdCxcbiAgICAgIHJpZ2h0OiBjb250YWluZXJSZWN0LnJpZ2h0LFxuICAgIH07XG4gICAgLy8gY29uc3QgdHJhbnNmb3JtZWRQYXJlbnQgPSBEb21VdGlsLmZpbmRUcmFuc2Zvcm1lZFBhcmVudChjb250YWluZXIpO1xuICAgIC8vIGNvbnNvbGUubG9nKHRyYW5zZm9ybWVkUGFyZW50KTtcbiAgICAvLyBpZiAodHJhbnNmb3JtZWRQYXJlbnQpIHtcbiAgICAvLyAgIGNvbnN0IHBhcmVudFBvc2l0aW9uID0gdHJhbnNmb3JtZWRQYXJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgLy8gICByZWN0LmxlZnQgPSByZWN0LmxlZnQgLSBwYXJlbnRQb3NpdGlvbi5sZWZ0O1xuICAgIC8vICAgcmVjdC50b3AgPSByZWN0LnRvcCAtIHBhcmVudFBvc2l0aW9uLnRvcDtcbiAgICAvLyAgIHJlY3QuYm90dG9tID0gcGFyZW50UG9zaXRpb24uYm90dG9tIC0gcmVjdC50b3A7XG4gICAgLy8gICByZWN0LnJpZ2h0ID0gcGFyZW50UG9zaXRpb24ucmlnaHQgLSByZWN0LnJpZ2h0O1xuICAgIC8vIH1cblxuICAgIGNvbnN0IHBvc2l0aW9uID0gUG9zaXRpb25VdGlsLmdldFBvc2l0aW9uKFxuICAgICAgcmVjdCxcbiAgICAgIHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgIHRoaXMuYWxpZ24sXG4gICAgICB0aGlzLnZlcnRpY2FsQWxpZ25cbiAgICApO1xuXG4gICAgUG9zaXRpb25VdGlsLnNldEVsZW1lbnRQb3NpdGlvbih0YXJnZXQsIHBvc2l0aW9uKTtcbiAgfVxufVxuIl19
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9kcm9wZG93bi9kcm9wZG93bi1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbkQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBR3RFLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBR3ZELGtFQUFrRTtBQUNsRSxNQUFNLE9BQU8sWUFBWTtJQThDdkIsWUFDWSxJQUF1QixFQUN2QixTQUFjLEVBQ2QsV0FBb0MsRUFDcEMsS0FBYSxFQUNiLFNBQW9CO1FBSnBCLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQUs7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDcEMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFsRHZCLFVBQUssR0FBVSxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQzFCLGtCQUFhLEdBQWtCLGFBQWEsQ0FBQyxNQUFNLENBQUM7UUFHcEQsV0FBTSxHQUFHLElBQUksQ0FBQztRQXdCYixlQUFVLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFDakUsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixvQkFBZSxHQUErQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBV3hELFVBQUssR0FBdUIsSUFBSSxDQUFDO1FBQ2pDLFVBQUssR0FBRyxLQUFLLENBQUM7UUFDZCxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBU3RCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTthQUNoQixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQzdCLFlBQVksQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQzlDO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsYUFBYSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQzNDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLGFBQWEsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO3dCQUMzQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDeEQ7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQTNERCxJQUNJLElBQUksQ0FBQyxHQUFZO1FBQ25CLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxHQUFHLEtBQUssSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDdkQsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3JCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QjtTQUNGO0lBQ0gsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsWUFBWTtZQUN0QixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJO1lBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUNyQyxDQUFDO0lBMENrQyxLQUFLLENBQUMsS0FBaUI7UUFDeEQsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRTtnQkFDN0MsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3RCO1NBQ0Y7YUFBTTtZQUNMLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRTtnQkFDMUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3JCO1NBQ0Y7SUFDSCxDQUFDO0lBRTJDLGFBQWEsQ0FDdkQsS0FBaUI7UUFFakIsSUFDRSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQ1YsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNmLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUNsQixPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQztZQUN0RCxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQ3hDO1lBQ0EsT0FBTztTQUNSO1FBQ0QsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDNUMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QjtTQUNGO2FBQU07WUFDTCxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3RCO1NBQ0Y7SUFDSCxDQUFDO0lBRXlDLEtBQUssQ0FBQyxLQUFvQjtRQUNsRSxJQUNFLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDVixDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2YsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUNwQixDQUFDLENBQWtCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FDN0QsRUFDRDtZQUNBLE9BQU87U0FDUjtRQUNELElBQ0UsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEUsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDckU7WUFDQSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRVMsYUFBYTtRQUNyQixJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pELE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBQzVDLE1BQU0sU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDM0IsSUFBSSxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsUUFBUSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDekMsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRTtZQUMxQixJQUFJLElBQUksQ0FBQyxTQUFTLFlBQVksS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDM0IsUUFBUSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFDRCxJQUFJLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxRQUFRLEVBQUU7Z0JBQ3RDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUM5QztTQUNGO1FBRUQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWhELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxXQUFXLENBQUMsU0FBc0IsRUFBRSxNQUFtQjtRQUM3RCxNQUFNLGlCQUFpQixHQUFHLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzVELE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRXRELE1BQU0sSUFBSSxHQUFVO1lBQ2xCLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxNQUFNO1lBQ2hDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxHQUFHO1lBQzFCLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO1lBQzVCLEtBQUssRUFBRSxpQkFBaUIsQ0FBQyxLQUFLO1NBQy9CLENBQUM7UUFFRixNQUFNLFVBQVUsR0FBVTtZQUN4QixNQUFNLEVBQUUsY0FBYyxDQUFDLE1BQU07WUFDN0IsR0FBRyxFQUFFLGNBQWMsQ0FBQyxHQUFHO1lBQ3ZCLElBQUksRUFBRSxjQUFjLENBQUMsSUFBSTtZQUN6QixLQUFLLEVBQUUsY0FBYyxDQUFDLEtBQUs7U0FDNUIsQ0FBQztRQUVGLE1BQU0sdUJBQXVCLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RFLElBQUksY0FBYyxHQUFHO1lBQ25CLElBQUksRUFBRSxDQUFDO1lBQ1AsS0FBSyxFQUFFLENBQUM7WUFDUixHQUFHLEVBQUUsQ0FBQztZQUNOLE1BQU0sRUFBRSxDQUFDO1NBQ1YsQ0FBQztRQUNGLElBQUksdUJBQXVCLEVBQUU7WUFDM0IsY0FBYyxHQUFHLHVCQUF1QixDQUFDLHFCQUFxQixFQUFFLENBQUM7U0FDbEU7UUFFRCxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsV0FBVyxDQUN2QyxJQUFJLEVBQ0osVUFBVSxFQUNWLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLGFBQWEsRUFDbEIsQ0FBQyxFQUNELENBQUMsRUFDRCxjQUFjLENBQ2YsQ0FBQztRQUVGLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7eUdBdk1VLFlBQVk7NkZBQVosWUFBWSx1Y0FpQ1QscUJBQXFCLDJCQUUzQixVQUFVLHdEQUlKLHdCQUF3QjsyRkF2QzNCLFlBQVk7a0JBRnhCLFNBQVM7bU1BR0MsS0FBSztzQkFBYixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdGLElBQUk7c0JBRFAsS0FBSztnQkFxQkksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUksS0FBSztzQkFKZCxZQUFZO3VCQUFDLHFCQUFxQixFQUFFO3dCQUNuQyxNQUFNLEVBQUUsS0FBSzt3QkFDYixJQUFJLEVBQUUsVUFBVTtxQkFDakI7Z0JBSVMsUUFBUTtzQkFEakIsWUFBWTt1QkFBQyx3QkFBd0IsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBOEJwQixLQUFLO3NCQUF2QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFZVyxhQUFhO3NCQUF4RCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXVCQSxLQUFLO3NCQUE5QyxZQUFZO3VCQUFDLGNBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb250ZW50Q2hpbGQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9tVXRpbH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvZG9tLXV0aWwnO1xuaW1wb3J0IHtQb3NpdGlvblV0aWx9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL3Bvc2l0aW9uLXV0aWwnO1xuaW1wb3J0IHtBbGlnbn0gZnJvbSAnLi4vLi4vY29tbW9uL2VudW0vYWxpZ24uZW51bSc7XG5pbXBvcnQge1ZlcnRpY2FsQWxpZ259IGZyb20gJy4uLy4uL2NvbW1vbi9lbnVtL3ZlcnRpY2FsLWFsaWduLmVudW0nO1xuaW1wb3J0IHtEcm9wZG93bkhlYWREaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24taGVhZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtEcm9wZG93bkNvbnRlbnREaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24tY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtBdXRvQ2xvc2VJZ25vcmVDYXNlfSBmcm9tICcuLi8uLi9jb21tb24vY29udHJhY3QvYXV0by1jbG9zZS1pZ25vcmUtY2FzZSc7XG5pbXBvcnQge0lSZWN0fSBmcm9tICcuLi8uLi9jb21tb24vY29udHJhY3QvaS1yZWN0JztcbmltcG9ydCB7dGFrZVdoaWxlLCB0aHJvdHRsZVRpbWV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQERpcmVjdGl2ZSgpXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkJhc2Uge1xuICBASW5wdXQoKSBhbGlnbjogQWxpZ24gPSBBbGlnbi5sZWZ0O1xuICBASW5wdXQoKSB2ZXJ0aWNhbEFsaWduOiBWZXJ0aWNhbEFsaWduID0gVmVydGljYWxBbGlnbi5ib3R0b207XG4gIEBJbnB1dCgpIGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNoYWRvdyA9IHRydWU7XG4gIEBJbnB1dCgpIGNsYXNzTmFtZTogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgQElucHV0KClcbiAgc2V0IG9wZW4odmFsOiBib29sZWFuKSB7XG4gICAgaWYgKHZhbCAhPSBudWxsICYmIHZhbCAhPT0gdGhpcy5fb3BlbiAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLm9wZW5Ecm9wZG93bigpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IG9wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX29wZW47XG4gIH1cblxuICBnZXQgY29udGFpbmVyKCkge1xuICAgIHJldHVybiB0aGlzLmFwcGVuZFRvQm9keVxuICAgICAgPyB0aGlzLl9kb2N1bWVudC5ib2R5XG4gICAgICA6IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBPdXRwdXQoKSBvcGVuQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZSA9IHRydWU7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZUlnbm9yZTogQXJyYXk8QXV0b0Nsb3NlSWdub3JlQ2FzZT4gPSBbJ2luc2lkZSddO1xuXG4gIEBDb250ZW50Q2hpbGQoRHJvcGRvd25IZWFkRGlyZWN0aXZlLCB7XG4gICAgc3RhdGljOiBmYWxzZSxcbiAgICByZWFkOiBFbGVtZW50UmVmLFxuICB9KVxuICBwcm90ZWN0ZWQgX2hlYWQ6IEVsZW1lbnRSZWY7XG5cbiAgQENvbnRlbnRDaGlsZChEcm9wZG93bkNvbnRlbnREaXJlY3RpdmUsIHtzdGF0aWM6IGZhbHNlfSlcbiAgcHJvdGVjdGVkIF9jb250ZW50OiBEcm9wZG93bkNvbnRlbnREaXJlY3RpdmU7XG5cbiAgcHJvdGVjdGVkIF9ib2R5OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgX29wZW4gPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF9hbGl2ZSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBfZG9jdW1lbnQ6IGFueSxcbiAgICBwcm90ZWN0ZWQgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByb3RlY3RlZCBfem9uZTogTmdab25lLFxuICAgIHByb3RlY3RlZCBfcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHtcbiAgICB0aGlzLl96b25lLm9uU3RhYmxlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKChfKSA9PiB0aGlzLl9hbGl2ZSksXG4gICAgICAgIHRocm90dGxlVGltZSgxMCwgdW5kZWZpbmVkLCB7dHJhaWxpbmc6IHRydWV9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICBpZiAodGhpcy5faGVhZD8ubmF0aXZlRWxlbWVudCAmJiB0aGlzLl9ib2R5KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5faGVhZD8ubmF0aXZlRWxlbWVudCAmJiB0aGlzLl9ib2R5KSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0UG9zaXRpb24odGhpcy5faGVhZC5uYXRpdmVFbGVtZW50LCB0aGlzLl9ib2R5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIGNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3Blbikge1xuICAgICAgaWYgKCFEb21VdGlsLmNsaWNrZWRJbnNpZGUodGhpcy5fYm9keSwgZXZlbnQpKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoRG9tVXRpbC5jbGlja2VkSW5zaWRlKHRoaXMuX2hlYWQubmF0aXZlRWxlbWVudCwgZXZlbnQpKSB7XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKSBkb2N1bWVudENsaWNrKFxuICAgIGV2ZW50OiBNb3VzZUV2ZW50XG4gICk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLm9wZW4gfHxcbiAgICAgICF0aGlzLmF1dG9DbG9zZSB8fFxuICAgICAgZXZlbnQuZGV0YWlsID09PSAwIHx8XG4gICAgICBEb21VdGlsLmNsaWNrZWRJbnNpZGUodGhpcy5faGVhZC5uYXRpdmVFbGVtZW50LCBldmVudCkgfHxcbiAgICAgIERvbVV0aWwuY2xpY2tlZEluc2lkZSh0aGlzLl9ib2R5LCBldmVudClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKERvbVV0aWwuY2xpY2tlZEluc2lkZSh0aGlzLl9ib2R5LCBldmVudCkpIHtcbiAgICAgIGlmICh0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKCdpbnNpZGUnKSA8IDApIHtcbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKCdvdXRzaWRlJykgPCAwKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cCcsIFsnJGV2ZW50J10pIGtleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMub3BlbiB8fFxuICAgICAgIXRoaXMuYXV0b0Nsb3NlIHx8XG4gICAgICBbJ2VzYycsICdlbnRlciddLmV2ZXJ5KFxuICAgICAgICAoXzogJ2VzYycgfCAnZW50ZXInKSA9PiB0aGlzLmF1dG9DbG9zZUlnbm9yZS5pbmRleE9mKF8pID49IDBcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgKGV2ZW50LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuYXV0b0Nsb3NlSWdub3JlLmluZGV4T2YoJ2VzYycpIDwgMCkgfHxcbiAgICAgIChldmVudC5jb2RlID09PSAnRW50ZXInICYmIHRoaXMuYXV0b0Nsb3NlSWdub3JlLmluZGV4T2YoJ2VudGVyJykgPCAwKVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZURyb3Bkb3duKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3BlbiAmJiB0aGlzLl9ib2R5ICYmIHRoaXMuY29udGFpbmVyLmNvbnRhaW5zKHRoaXMuX2JvZHkpKSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmNvbnRhaW5lciwgdGhpcy5fYm9keSk7XG4gICAgICB0aGlzLl9vcGVuID0gZmFsc2U7XG4gICAgICB0aGlzLl9ib2R5ID0gbnVsbDtcbiAgICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3Blbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX29wZW4gfHwgIXRoaXMuX2NvbnRlbnQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vcGVuID0gdHJ1ZTtcbiAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdCh0aGlzLm9wZW4pO1xuICAgIGNvbnN0IHJlbmRlcmVyID0gdGhpcy5fcmVuZGVyZXI7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuX2NvbnRlbnQubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBjb250YWluZXIgPSAodGhpcy5fYm9keSA9XG4gICAgICB0aGlzLl9ib2R5IHx8IHJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpKTtcbiAgICByZW5kZXJlci5hZGRDbGFzcyhjb250YWluZXIsICdkcm9wZG93bicpO1xuICAgIGlmICh0aGlzLmNsYXNzTmFtZSAhPSBudWxsKSB7XG4gICAgICBpZiAodGhpcy5jbGFzc05hbWUgaW5zdGFuY2VvZiBBcnJheSAmJiB0aGlzLmNsYXNzTmFtZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuY2xhc3NOYW1lLmZvckVhY2goKF8pID0+IHtcbiAgICAgICAgICByZW5kZXJlci5hZGRDbGFzcyhjb250YWluZXIsIF8pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0eXBlb2YgdGhpcy5jbGFzc05hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJlbmRlcmVyLmFkZENsYXNzKGNvbnRhaW5lciwgdGhpcy5jbGFzc05hbWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lciwgY29udGVudCk7XG4gICAgcmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXIsIGNvbnRhaW5lcik7XG5cbiAgICB0aGlzLnNldFBvc2l0aW9uKHRoaXMuX2hlYWQubmF0aXZlRWxlbWVudCwgdGhpcy5fYm9keSk7XG4gIH1cblxuICBwcml2YXRlIHNldFBvc2l0aW9uKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXJQb3NpdGlvbiA9IGNvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB0YXJnZXRQb3NpdGlvbiA9IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IHJlY3Q6IElSZWN0ID0ge1xuICAgICAgYm90dG9tOiBjb250YWluZXJQb3NpdGlvbi5ib3R0b20sXG4gICAgICB0b3A6IGNvbnRhaW5lclBvc2l0aW9uLnRvcCxcbiAgICAgIGxlZnQ6IGNvbnRhaW5lclBvc2l0aW9uLmxlZnQsXG4gICAgICByaWdodDogY29udGFpbmVyUG9zaXRpb24ucmlnaHQsXG4gICAgfTtcblxuICAgIGNvbnN0IHRhcmdldFJlY3Q6IElSZWN0ID0ge1xuICAgICAgYm90dG9tOiB0YXJnZXRQb3NpdGlvbi5ib3R0b20sXG4gICAgICB0b3A6IHRhcmdldFBvc2l0aW9uLnRvcCxcbiAgICAgIGxlZnQ6IHRhcmdldFBvc2l0aW9uLmxlZnQsXG4gICAgICByaWdodDogdGFyZ2V0UG9zaXRpb24ucmlnaHQsXG4gICAgfTtcblxuICAgIGNvbnN0IHRhcmdldFRyYW5zZm9ybWVkUGFyZW50ID0gRG9tVXRpbC5maW5kVHJhbnNmb3JtZWRQYXJlbnQodGFyZ2V0KTtcbiAgICBsZXQgcGFyZW50UG9zaXRpb24gPSB7XG4gICAgICBsZWZ0OiAwLFxuICAgICAgcmlnaHQ6IDAsXG4gICAgICB0b3A6IDAsXG4gICAgICBib3R0b206IDBcbiAgICB9O1xuICAgIGlmICh0YXJnZXRUcmFuc2Zvcm1lZFBhcmVudCkge1xuICAgICAgcGFyZW50UG9zaXRpb24gPSB0YXJnZXRUcmFuc2Zvcm1lZFBhcmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG5cbiAgICBjb25zdCBwb3NpdGlvbiA9IFBvc2l0aW9uVXRpbC5nZXRQb3NpdGlvbihcbiAgICAgIHJlY3QsXG4gICAgICB0YXJnZXRSZWN0LFxuICAgICAgdGhpcy5hbGlnbixcbiAgICAgIHRoaXMudmVydGljYWxBbGlnbixcbiAgICAgIDAsXG4gICAgICAwLFxuICAgICAgcGFyZW50UG9zaXRpb25cbiAgICApO1xuXG4gICAgUG9zaXRpb25VdGlsLnNldEVsZW1lbnRQb3NpdGlvbih0YXJnZXQsIHBvc2l0aW9uKTtcbiAgfVxufVxuIl19
@@ -38,7 +38,7 @@ export class DateFilterComponent extends FilterComponentBase {
38
38
  }
39
39
  }
40
40
  DateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: DateFilterComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
41
- DateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: DateFilterComponent, selector: "teta-date-filter", inputs: { column: "column", filterOptions: "filterOptions", state: "state" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-row padding-3\">\n <teta-input [label]=\"'\u041E\u0442'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.greaterThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.greaterThan=$event\"></teta-date-picker>\n </teta-input>\n <teta-input [label]=\"'\u0414\u043E'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.lessThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.lessThan=$event\"></teta-date-picker>\n </teta-input>\n</div>\n", styles: [""], components: [{ type: i1.InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { type: i2.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "appendToBody", "showTime", "format"] }], directives: [{ type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ DateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: DateFilterComponent, selector: "teta-date-filter", inputs: { column: "column", filterOptions: "filterOptions", state: "state" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-row padding-3\">\n <teta-input [label]=\"'\u041E\u0442'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.greaterThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.greaterThan=$event\"></teta-date-picker>\n </teta-input>\n <teta-input [label]=\"'\u0414\u043E'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.lessThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.lessThan=$event\"></teta-date-picker>\n </teta-input>\n</div>\n", styles: [""], components: [{ type: i1.InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { type: i2.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "showTime", "format"] }], directives: [{ type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: DateFilterComponent, decorators: [{
43
43
  type: Component,
44
44
  args: [{ selector: 'teta-date-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-row padding-3\">\n <teta-input [label]=\"'\u041E\u0442'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.greaterThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.greaterThan=$event\"></teta-date-picker>\n </teta-input>\n <teta-input [label]=\"'\u0414\u043E'\">\n <teta-date-picker style=\"width: 110px\"\n [ngModel]=\"filter.value?.lessThan\"\n [appendToBody]=\"true\"\n (ngModelChange)=\"filter.value.lessThan=$event\"></teta-date-picker>\n </teta-input>\n</div>\n", styles: [""] }]
@@ -2,6 +2,7 @@ import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import { FilterType } from '../../../filter/enum/filter-type.enum';
3
3
  import { FormsUtil } from '../../../../util/forms-util';
4
4
  import { filter, takeWhile } from 'rxjs/operators';
5
+ import { Align } from '../../../../common/enum/align.enum';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@ngneat/transloco";
7
8
  import * as i2 from "../../../input/input/input.component";
@@ -10,11 +11,13 @@ import * as i4 from "../../../date-picker/date-picker/date-picker.component";
10
11
  import * as i5 from "../../../toggle/toggle/toggle.component";
11
12
  import * as i6 from "../../../input/text-field/text-field.component";
12
13
  import * as i7 from "@angular/common";
13
- import * as i8 from "@angular/forms";
14
+ import * as i8 from "../../../../directive/hint/hint.directive";
15
+ import * as i9 from "@angular/forms";
14
16
  export class PropertyGridItemComponent {
15
17
  constructor(_transloco) {
16
18
  this._transloco = _transloco;
17
19
  this.controlValueChange = new EventEmitter();
20
+ this.align = Align;
18
21
  this.filterTypeEnum = FilterType;
19
22
  this._alive = true;
20
23
  }
@@ -80,10 +83,10 @@ export class PropertyGridItemComponent {
80
83
  }
81
84
  }
82
85
  PropertyGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: PropertyGridItemComponent, deps: [{ token: i1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component });
83
- PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", formGroup: "formGroup", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], components: [{ type: i2.InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { type: i3.SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { type: i4.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "appendToBody", "showTime", "format"] }, { type: i5.ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { type: i6.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }] });
86
+ PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", formGroup: "formGroup", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [tetaHint]=\"column.hint\"\n [align]=\"align.left\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], components: [{ type: i2.InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { type: i3.SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { type: i4.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "showTime", "format"] }, { type: i5.ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { type: i6.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay"] }, { type: i9.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }] });
84
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: PropertyGridItemComponent, decorators: [{
85
88
  type: Component,
86
- args: [{ selector: 'teta-property-grid-item', template: "<teta-input [label]=\"caption\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""] }]
89
+ args: [{ selector: 'teta-property-grid-item', template: "<teta-input [label]=\"caption\"\n [tetaHint]=\"column.hint\"\n [align]=\"align.left\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""] }]
87
90
  }], ctorParameters: function () { return [{ type: i1.TranslocoService }]; }, propDecorators: { column: [{
88
91
  type: Input
89
92
  }], hideNonEditable: [{
@@ -97,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
97
100
  }], controlValueChange: [{
98
101
  type: Output
99
102
  }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1pdGVtL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS9wcm9wZXJ0eS1ncmlkLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXhELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7QUFRbkQsTUFBTSxPQUFPLHlCQUF5QjtJQWdEcEMsWUFBb0IsVUFBNEI7UUFBNUIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFqQnRDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQ2hFLG1CQUFjLEdBQUcsVUFBVSxDQUFDO1FBY3BCLFdBQU0sR0FBRyxJQUFJLENBQUM7SUFFNkIsQ0FBQztJQTNDcEQsSUFDSSxTQUFTLENBQUMsSUFBZTtRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcs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LElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSztZQUNuRCxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMvQixDQUFDOztzSEEvRlUseUJBQXlCOzBHQUF6Qix5QkFBeUIsd1BDdkJ0Qyx3d0RBcUNBOzJGRGRhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSx5QkFBeUI7dUdBSzFCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFHRixTQUFTO3NCQURaLEtBQUs7Z0JBeUJHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vLi4vLi4vdGFibGUvY29udHJhY3QvdGFibGUtY29sdW1uJztcbmltcG9ydCB7IElEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBJSWROYW1lIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktaWQtbmFtZSc7XG5pbXBvcnQgeyBGaWx0ZXJUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZmlsdGVyL2VudW0vZmlsdGVyLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3Jtc1V0aWwgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlsL2Zvcm1zLXV0aWwnO1xuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtcHJvcGVydHktZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eUdyaWRJdGVtQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBjb2x1bW46IFRhYmxlQ29sdW1uO1xuICBASW5wdXQoKSBoaWRlTm9uRWRpdGFibGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRpY3Q6IElEaWN0aW9uYXJ5PElJZE5hbWU8YW55PltdPjtcblxuICBASW5wdXQoKVxuICBzZXQgZm9ybUdyb3VwKGZvcm06IEZvcm1Hcm91cCkge1xuICAgIHRoaXMuX2Zvcm1Hcm91cCA9IGZvcm07XG4gICAgdGhpcy5fZm9ybVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl9mb3JtU3ViID0gdGhpcy5fZm9ybUdyb3VwLmNvbnRyb2xzW3RoaXMuY29sdW1uLm5hbWVdLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSksXG4gICAgICAgIGZpbHRlcihcbiAgICAgICAgICAoXykgPT5cbiAgICAgICAgICAgIHRoaXMuY29sdW1uLmZpbHRlclR5cGUgIT09IEZpbHRlclR5cGUuc3RyaW5nICYmXG4gICAgICAgICAgICB0aGlzLmNvbHVtbi5maWx0ZXJUeXBlICE9PSBGaWx0ZXJUeXBlLm51bWJlclxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgIGlkOiBfLFxuICAgICAgICAgIG5hbWU6IHRoaXMuY29sdW1uLm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXQgZm9ybUdyb3VwKCkge1xuICAgIHJldHVybiB0aGlzLl9mb3JtR3JvdXA7XG4gIH1cblxuICBASW5wdXQoKSBob3Jpem9udGFsOiBib29sZWFuO1xuICBAT3V0cHV0KCkgY29udHJvbFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJSWROYW1lPGFueT4+KCk7XG4gIGZpbHRlclR5cGVFbnVtID0gRmlsdGVyVHlwZTtcblxuICBwcml2YXRlIF9mb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgcHJpdmF0ZSBfZm9ybVN1YjogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCBjYXB0aW9uKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmZpbHRlclR5cGUgPT09IEZpbHRlclR5cGUuYm9vbGVhbikge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICByZXR1cm4gYCR7dGhpcy5jb2x1bW4uY2FwdGlvbn0ke1xuICAgICAgdGhpcy5jb2x1bW4udW5pdCA/IGAsICR7dGhpcy5jb2x1bW4udW5pdH1gIDogJydcbiAgICB9YDtcbiAgfVxuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF90cmFuc2xvY286IFRyYW5zbG9jb1NlcnZpY2UpIHt9XG5cbiAgZ2V0RGljdCgpIHtcbiAgICBjb25zdCBkaWN0ID0gdGhpcy5kaWN0W3RoaXMuY29sdW1uLm5hbWVdO1xuICAgIGlmICh0aGlzLmNvbHVtbi5wYXJlbnROYW1lPy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gZGljdD8uZmlsdGVyKFxuICAgICAgICAoZGljdEl0ZW06IElJZE5hbWU8YW55PikgPT5cbiAgICAgICAgICBkaWN0SXRlbS5wYXJlbnRJZCA9PT1cbiAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpW3RoaXMuY29sdW1uLnBhcmVudE5hbWVdXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gZGljdDtcbiAgfVxuXG4gIGNvbnRyb2xJc0ludmFsaWQoY29udHJvbE5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBGb3Jtc1V0aWwuY29udHJvbElzSW52YWxpZCh0aGlzLmZvcm1Hcm91cCwgY29udHJvbE5hbWUpO1xuICB9XG5cbiAgZ2V0RXJyb3IoY29sdW1uOiBUYWJsZUNvbHVtbik6IHN0cmluZyB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldChjb2x1bW4ubmFtZSk7XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdHJhbnNsb2NvLnRyYW5zbGF0ZSgnZXJyb3JzLmZpZWxkX2lzX3JlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWluJykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWluX3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1pblZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWF4JykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWF4X3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1heFZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgdmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2UuZW1pdCh7XG4gICAgICBpZDogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbdGhpcy5jb2x1bW4ubmFtZV0udmFsdWUsXG4gICAgICBuYW1lOiB0aGlzLmNvbHVtbi5uYW1lLFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gICAgdGhpcy5fZm9ybVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPHRldGEtaW5wdXQgW2xhYmVsXT1cImNhcHRpb25cIlxuICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgW2hvcml6b250YWxdPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICAqbmdJZj1cImNvbHVtbi5lZGl0YWJsZSB8fCAhaGlkZU5vbkVkaXRhYmxlXCI+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtbi5maWx0ZXJUeXBlXCI+XG4gICAgPHRldGEtc2VsZWN0IGNsYXNzPVwicm93X2F1dG9cIlxuICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0ubGlzdFwiXG4gICAgICAgICAgICAgICAgIFtzZWFyY2hSZWZdPVwiZ2V0RGljdCgpPy5sZW5ndGggPiAxMCA/ICduYW1lJyA6ICcnXCJcbiAgICAgICAgICAgICAgICAgW2FsbG93TnVsbF09XCIhY29sdW1uLnJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgICAgW2FwcGVuZFRvQm9keV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiZ2V0RGljdCgpXCJcbiAgICAgICAgICAgICAgICAgW3ZhbHVlUmVmXT1cIidpZCdcIlxuICAgICAgICAgICAgICAgICBbdGV4dFJlZl09XCInbmFtZSdcIlxuICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIj48L3RldGEtc2VsZWN0PlxuICAgIDx0ZXRhLWRhdGUtcGlja2VyICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvd19hdXRvXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXBwZW5kVG9Cb2R5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpbnZhbGlkXT1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLWRhdGUtcGlja2VyPlxuICAgIDx0ZXRhLXRvZ2dsZSAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0uYm9vbGVhblwiXG4gICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29sdW1uLm5hbWVcIj57e2NvbHVtbi5jYXB0aW9ufX08L3RldGEtdG9nZ2xlPlxuICAgIDx0ZXRhLXRleHQtZmllbGQgY2xhc3M9XCJyb3dfYXV0b1wiXG4gICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hEZWZhdWx0XG4gICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwidmFsdWVDaGFuZ2UoKVwiXG4gICAgICAgICAgICAgICAgICAgICBbb25seU51bWJlcl09XCJjb2x1bW4uZmlsdGVyVHlwZSA9PT0gZmlsdGVyVHlwZUVudW0ubnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb2x1bW4uY2FwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJjb250cm9sSXNJbnZhbGlkKGNvbHVtbi5uYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLXRleHQtZmllbGQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2ICpuZ0lmPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgIG5nUHJvamVjdEFzPVwibWVzc2FnZVwiXG4gICAgICAgY2xhc3M9XCJjb2xvci1yZWQtNTBcIj5cbiAgICB7e2dldEVycm9yKGNvbHVtbil9fVxuICA8L2Rpdj5cbjwvdGV0YS1pbnB1dD5cbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1pdGVtL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS9wcm9wZXJ0eS1ncmlkLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXhELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7OztBQU96RCxNQUFNLE9BQU8seUJBQXlCO0lBaURwQyxZQUFvQixVQUE0QjtRQUE1QixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQWxCdEMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDaEUsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNkLG1CQUFjLEdBQUcsVUFBVSxDQUFDO1FBY3BCLFdBQU0sR0FBRyxJQUFJLENBQUM7SUFFNkIsQ0FBQztJQTVDcEQsSUFDSSxTQUFTLENBQUMsSUFBZTtRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FB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SCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7WUFDM0IsRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSztZQUNuRCxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMvQixDQUFDOztzSEFoR1UseUJBQXlCOzBHQUF6Qix5QkFBeUIsd1BDeEJ0QyxvMURBdUNBOzJGRGZhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSx5QkFBeUI7dUdBSzFCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFHRixTQUFTO3NCQURaLEtBQUs7Z0JBeUJHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vLi4vLi4vdGFibGUvY29udHJhY3QvdGFibGUtY29sdW1uJztcbmltcG9ydCB7IElEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBJSWROYW1lIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktaWQtbmFtZSc7XG5pbXBvcnQgeyBGaWx0ZXJUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZmlsdGVyL2VudW0vZmlsdGVyLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3Jtc1V0aWwgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlsL2Zvcm1zLXV0aWwnO1xuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0FsaWdufSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1wcm9wZXJ0eS1ncmlkLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JpZEl0ZW1Db21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGNvbHVtbjogVGFibGVDb2x1bW47XG4gIEBJbnB1dCgpIGhpZGVOb25FZGl0YWJsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgZGljdDogSURpY3Rpb25hcnk8SUlkTmFtZTxhbnk+W10+O1xuXG4gIEBJbnB1dCgpXG4gIHNldCBmb3JtR3JvdXAoZm9ybTogRm9ybUdyb3VwKSB7XG4gICAgdGhpcy5fZm9ybUdyb3VwID0gZm9ybTtcbiAgICB0aGlzLl9mb3JtU3ViPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX2Zvcm1TdWIgPSB0aGlzLl9mb3JtR3JvdXAuY29udHJvbHNbdGhpcy5jb2x1bW4ubmFtZV0udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSxcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgIChfKSA9PlxuICAgICAgICAgICAgdGhpcy5jb2x1bW4uZmlsdGVyVHlwZSAhPT0gRmlsdGVyVHlwZS5zdHJpbmcgJiZcbiAgICAgICAgICAgIHRoaXMuY29sdW1uLmZpbHRlclR5cGUgIT09IEZpbHRlclR5cGUubnVtYmVyXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgaWQ6IF8sXG4gICAgICAgICAgbmFtZTogdGhpcy5jb2x1bW4ubmFtZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1Hcm91cDtcbiAgfVxuXG4gIEBJbnB1dCgpIGhvcml6b250YWw6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBjb250cm9sVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElJZE5hbWU8YW55Pj4oKTtcbiAgYWxpZ24gPSBBbGlnbjtcbiAgZmlsdGVyVHlwZUVudW0gPSBGaWx0ZXJUeXBlO1xuXG4gIHByaXZhdGUgX2Zvcm1Hcm91cDogRm9ybUdyb3VwO1xuICBwcml2YXRlIF9mb3JtU3ViOiBTdWJzY3JpcHRpb247XG5cbiAgZ2V0IGNhcHRpb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5jb2x1bW4uZmlsdGVyVHlwZSA9PT0gRmlsdGVyVHlwZS5ib29sZWFuKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLmNvbHVtbi5jYXB0aW9ufSR7XG4gICAgICB0aGlzLmNvbHVtbi51bml0ID8gYCwgJHt0aGlzLmNvbHVtbi51bml0fWAgOiAnJ1xuICAgIH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWxpdmUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3RyYW5zbG9jbzogVHJhbnNsb2NvU2VydmljZSkge31cblxuICBnZXREaWN0KCkge1xuICAgIGNvbnN0IGRpY3QgPSB0aGlzLmRpY3RbdGhpcy5jb2x1bW4ubmFtZV07XG4gICAgaWYgKHRoaXMuY29sdW1uLnBhcmVudE5hbWU/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBkaWN0Py5maWx0ZXIoXG4gICAgICAgIChkaWN0SXRlbTogSUlkTmFtZTxhbnk+KSA9PlxuICAgICAgICAgIGRpY3RJdGVtLnBhcmVudElkID09PVxuICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKClbdGhpcy5jb2x1bW4ucGFyZW50TmFtZV1cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBkaWN0O1xuICB9XG5cbiAgY29udHJvbElzSW52YWxpZChjb250cm9sTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIEZvcm1zVXRpbC5jb250cm9sSXNJbnZhbGlkKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSk7XG4gIH1cblxuICBnZXRFcnJvcihjb2x1bW46IFRhYmxlQ29sdW1uKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KGNvbHVtbi5uYW1lKTtcbiAgICBpZiAoY29udHJvbD8uaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMuZmllbGRfaXNfcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdtaW4nKSkge1xuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zbG9jby50cmFuc2xhdGUoJ2Vycm9ycy5taW5fdmFsdWUnLCB7XG4gICAgICAgIHZhbHVlOiBjb2x1bW4ubWluVmFsdWUsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdtYXgnKSkge1xuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zbG9jby50cmFuc2xhdGUoJ2Vycm9ycy5tYXhfdmFsdWUnLCB7XG4gICAgICAgIHZhbHVlOiBjb2x1bW4ubWF4VmFsdWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB2YWx1ZUNoYW5nZSgpIHtcbiAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZS5lbWl0KHtcbiAgICAgIGlkOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1t0aGlzLmNvbHVtbi5uYW1lXS52YWx1ZSxcbiAgICAgIG5hbWU6IHRoaXMuY29sdW1uLm5hbWUsXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWxpdmUgPSBmYWxzZTtcbiAgICB0aGlzLl9mb3JtU3ViPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8dGV0YS1pbnB1dCBbbGFiZWxdPVwiY2FwdGlvblwiXG4gICAgICAgICAgICBbdGV0YUhpbnRdPVwiY29sdW1uLmhpbnRcIlxuICAgICAgICAgICAgW2FsaWduXT1cImFsaWduLmxlZnRcIlxuICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgW2hvcml6b250YWxdPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICAqbmdJZj1cImNvbHVtbi5lZGl0YWJsZSB8fCAhaGlkZU5vbkVkaXRhYmxlXCI+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtbi5maWx0ZXJUeXBlXCI+XG4gICAgPHRldGEtc2VsZWN0IGNsYXNzPVwicm93X2F1dG9cIlxuICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0ubGlzdFwiXG4gICAgICAgICAgICAgICAgIFtzZWFyY2hSZWZdPVwiZ2V0RGljdCgpPy5sZW5ndGggPiAxMCA/ICduYW1lJyA6ICcnXCJcbiAgICAgICAgICAgICAgICAgW2FsbG93TnVsbF09XCIhY29sdW1uLnJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgICAgW2FwcGVuZFRvQm9keV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiZ2V0RGljdCgpXCJcbiAgICAgICAgICAgICAgICAgW3ZhbHVlUmVmXT1cIidpZCdcIlxuICAgICAgICAgICAgICAgICBbdGV4dFJlZl09XCInbmFtZSdcIlxuICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIj48L3RldGEtc2VsZWN0PlxuICAgIDx0ZXRhLWRhdGUtcGlja2VyICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvd19hdXRvXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXBwZW5kVG9Cb2R5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpbnZhbGlkXT1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLWRhdGUtcGlja2VyPlxuICAgIDx0ZXRhLXRvZ2dsZSAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0uYm9vbGVhblwiXG4gICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29sdW1uLm5hbWVcIj57e2NvbHVtbi5jYXB0aW9ufX08L3RldGEtdG9nZ2xlPlxuICAgIDx0ZXRhLXRleHQtZmllbGQgY2xhc3M9XCJyb3dfYXV0b1wiXG4gICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hEZWZhdWx0XG4gICAgICAgICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwidmFsdWVDaGFuZ2UoKVwiXG4gICAgICAgICAgICAgICAgICAgICBbb25seU51bWJlcl09XCJjb2x1bW4uZmlsdGVyVHlwZSA9PT0gZmlsdGVyVHlwZUVudW0ubnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb2x1bW4uY2FwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJjb250cm9sSXNJbnZhbGlkKGNvbHVtbi5uYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLXRleHQtZmllbGQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2ICpuZ0lmPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgIG5nUHJvamVjdEFzPVwibWVzc2FnZVwiXG4gICAgICAgY2xhc3M9XCJjb2xvci1yZWQtNTBcIj5cbiAgICB7e2dldEVycm9yKGNvbHVtbil9fVxuICA8L2Rpdj5cbjwvdGV0YS1pbnB1dD5cbiJdfQ==
@@ -15,6 +15,7 @@ import { OnlyNumberModule } from '../../directive/only-number/only-number.module
15
15
  import { InputModule } from '../input/input.module';
16
16
  import { ToggleModule } from '../toggle/toggle.module';
17
17
  import { TRANSLOCO_SCOPE, TranslocoModule } from '@ngneat/transloco';
18
+ import { HintModule } from '../../directive/hint/hint.module';
18
19
  import * as i0 from "@angular/core";
19
20
  export class PropertyGridModule {
20
21
  }
@@ -34,7 +35,8 @@ PropertyGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", vers
34
35
  InputModule,
35
36
  ToggleModule,
36
37
  ReactiveFormsModule,
37
- TranslocoModule], exports: [PropertyGridComponent] });
38
+ TranslocoModule,
39
+ HintModule], exports: [PropertyGridComponent] });
38
40
  PropertyGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: PropertyGridModule, providers: [
39
41
  {
40
42
  provide: TRANSLOCO_SCOPE,
@@ -52,6 +54,7 @@ PropertyGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", vers
52
54
  ToggleModule,
53
55
  ReactiveFormsModule,
54
56
  TranslocoModule,
57
+ HintModule,
55
58
  ]] });
56
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: PropertyGridModule, decorators: [{
57
60
  type: NgModule,
@@ -77,6 +80,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
77
80
  ToggleModule,
78
81
  ReactiveFormsModule,
79
82
  TranslocoModule,
83
+ HintModule,
80
84
  ],
81
85
  providers: [
82
86
  {
@@ -87,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
87
91
  ],
88
92
  }]
89
93
  }] });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUM1RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQy9HLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQzVHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFpQ3JFLE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkE3QjNCLHFCQUFxQjtRQUNyQiwyQkFBMkI7UUFDM0Isd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QiwwQkFBMEI7UUFDMUIsMEJBQTBCO1FBQzFCLHlCQUF5QixhQUl6QixZQUFZO1FBQ1osV0FBVztRQUNYLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDaEIsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixXQUFXO1FBQ1gsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixlQUFlLGFBWFAscUJBQXFCO2dIQXFCcEIsa0JBQWtCLGFBUmxCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsZUFBZTtZQUN4QixRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDOUMsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLFlBbEJRO1lBQ1AsWUFBWTtZQUNaLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsV0FBVztZQUNYLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsZUFBZTtTQUNoQjsyRkFTVSxrQkFBa0I7a0JBL0I5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLDJCQUEyQjt3QkFDM0Isd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUNoQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZUFBZTtxQkFDaEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7NEJBQzlDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBQcm9wZXJ0eUdyaWRDb21wb25lbnQgfSBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtZXJpY0l0ZW1EZWZhdWx0Q29tcG9uZW50IH0gZnJvbSAnLi9kZWZhdWx0L251bWVyaWMtaXRlbS1kZWZhdWx0L251bWVyaWMtaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlSXRlbURlZmF1bHRDb21wb25lbnQgfSBmcm9tICcuL2RlZmF1bHQvZGF0ZS1pdGVtLWRlZmF1bHQvZGF0ZS1pdGVtLWRlZmF1bHQuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RJdGVtRGVmYXVsdENvbXBvbmVudCB9IGZyb20gJy4vZGVmYXVsdC9saXN0LWl0ZW0tZGVmYXVsdC9saXN0LWl0ZW0tZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RyaW5nSXRlbURlZmF1bHRDb21wb25lbnQgfSBmcm9tICcuL2RlZmF1bHQvc3RyaW5nLWl0ZW0tZGVmYXVsdC9zdHJpbmctaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE51bWJlclBpcGVNb2R1bGUgfSBmcm9tICcuLi8uLi9waXBlL251bWJlci1waXBlL251bWJlci1waXBlLm1vZHVsZSc7XG5pbXBvcnQgeyBEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnLi4vZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXIubW9kdWxlJztcbmltcG9ydCB7IFNlbGVjdE1vZHVsZSB9IGZyb20gJy4uL3NlbGVjdC9zZWxlY3QubW9kdWxlJztcbmltcG9ydCB7IFByb3BlcnR5R3JpZEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtZ3JvdXAvcHJvcGVydHktZ3JpZC1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvcGVydHlHcmlkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLWl0ZW0vcHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmx5TnVtYmVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL29ubHktbnVtYmVyL29ubHktbnVtYmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBJbnB1dE1vZHVsZSB9IGZyb20gJy4uL2lucHV0L2lucHV0Lm1vZHVsZSc7XG5pbXBvcnQgeyBUb2dnbGVNb2R1bGUgfSBmcm9tICcuLi90b2dnbGUvdG9nZ2xlLm1vZHVsZSc7XG5pbXBvcnQgeyBUUkFOU0xPQ09fU0NPUEUsIFRyYW5zbG9jb01vZHVsZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUHJvcGVydHlHcmlkQ29tcG9uZW50LFxuICAgIE51bWVyaWNJdGVtRGVmYXVsdENvbXBvbmVudCxcbiAgICBEYXRlSXRlbURlZmF1bHRDb21wb25lbnQsXG4gICAgTGlzdEl0ZW1EZWZhdWx0Q29tcG9uZW50LFxuICAgIFN0cmluZ0l0ZW1EZWZhdWx0Q29tcG9uZW50LFxuICAgIFByb3BlcnR5R3JpZEdyb3VwQ29tcG9uZW50LFxuICAgIFByb3BlcnR5R3JpZEl0ZW1Db21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtQcm9wZXJ0eUdyaWRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE51bWJlclBpcGVNb2R1bGUsXG4gICAgRGF0ZVBpY2tlck1vZHVsZSxcbiAgICBTZWxlY3RNb2R1bGUsXG4gICAgT25seU51bWJlck1vZHVsZSxcbiAgICBJbnB1dE1vZHVsZSxcbiAgICBUb2dnbGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBUcmFuc2xvY29Nb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFRSQU5TTE9DT19TQ09QRSxcbiAgICAgIHVzZVZhbHVlOiB7IHNjb3BlOiAnZXJyb3JzJywgYWxpYXM6ICdlcnJvcnMnIH0sXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eUdyaWRNb2R1bGUge31cbiJdfQ==
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUMxRyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw2REFBNkQsQ0FBQztBQUN2RyxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzdHLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQzFHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFDLGVBQWUsRUFBRSxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7O0FBa0M1RCxNQUFNLE9BQU8sa0JBQWtCOzsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsaUJBOUIzQixxQkFBcUI7UUFDckIsMkJBQTJCO1FBQzNCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQix5QkFBeUIsYUFJekIsWUFBWTtRQUNaLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLFVBQVUsYUFaRixxQkFBcUI7Z0hBc0JwQixrQkFBa0IsYUFSbEI7UUFDVDtZQUNFLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLFFBQVEsRUFBRSxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBQztZQUM1QyxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsWUFuQlE7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUNYLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsVUFBVTtTQUNYOzJGQVNVLGtCQUFrQjtrQkFoQzlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsMkJBQTJCO3dCQUMzQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7b0JBQ2hDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLFVBQVU7cUJBQ1g7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUM7NEJBQzVDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7UHJvcGVydHlHcmlkQ29tcG9uZW50fSBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHtOdW1lcmljSXRlbURlZmF1bHRDb21wb25lbnR9IGZyb20gJy4vZGVmYXVsdC9udW1lcmljLWl0ZW0tZGVmYXVsdC9udW1lcmljLWl0ZW0tZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHtEYXRlSXRlbURlZmF1bHRDb21wb25lbnR9IGZyb20gJy4vZGVmYXVsdC9kYXRlLWl0ZW0tZGVmYXVsdC9kYXRlLWl0ZW0tZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHtMaXN0SXRlbURlZmF1bHRDb21wb25lbnR9IGZyb20gJy4vZGVmYXVsdC9saXN0LWl0ZW0tZGVmYXVsdC9saXN0LWl0ZW0tZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHtTdHJpbmdJdGVtRGVmYXVsdENvbXBvbmVudH0gZnJvbSAnLi9kZWZhdWx0L3N0cmluZy1pdGVtLWRlZmF1bHQvc3RyaW5nLWl0ZW0tZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtOdW1iZXJQaXBlTW9kdWxlfSBmcm9tICcuLi8uLi9waXBlL251bWJlci1waXBlL251bWJlci1waXBlLm1vZHVsZSc7XG5pbXBvcnQge0RhdGVQaWNrZXJNb2R1bGV9IGZyb20gJy4uL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLm1vZHVsZSc7XG5pbXBvcnQge1NlbGVjdE1vZHVsZX0gZnJvbSAnLi4vc2VsZWN0L3NlbGVjdC5tb2R1bGUnO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRHcm91cENvbXBvbmVudH0gZnJvbSAnLi9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtZ3JvdXAvcHJvcGVydHktZ3JpZC1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRJdGVtQ29tcG9uZW50fSBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1pdGVtL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHtPbmx5TnVtYmVyTW9kdWxlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb25seS1udW1iZXIvb25seS1udW1iZXIubW9kdWxlJztcbmltcG9ydCB7SW5wdXRNb2R1bGV9IGZyb20gJy4uL2lucHV0L2lucHV0Lm1vZHVsZSc7XG5pbXBvcnQge1RvZ2dsZU1vZHVsZX0gZnJvbSAnLi4vdG9nZ2xlL3RvZ2dsZS5tb2R1bGUnO1xuaW1wb3J0IHtUUkFOU0xPQ09fU0NPUEUsIFRyYW5zbG9jb01vZHVsZX0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xuaW1wb3J0IHtIaW50TW9kdWxlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaGludC9oaW50Lm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFByb3BlcnR5R3JpZENvbXBvbmVudCxcbiAgICBOdW1lcmljSXRlbURlZmF1bHRDb21wb25lbnQsXG4gICAgRGF0ZUl0ZW1EZWZhdWx0Q29tcG9uZW50LFxuICAgIExpc3RJdGVtRGVmYXVsdENvbXBvbmVudCxcbiAgICBTdHJpbmdJdGVtRGVmYXVsdENvbXBvbmVudCxcbiAgICBQcm9wZXJ0eUdyaWRHcm91cENvbXBvbmVudCxcbiAgICBQcm9wZXJ0eUdyaWRJdGVtQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbUHJvcGVydHlHcmlkQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOdW1iZXJQaXBlTW9kdWxlLFxuICAgIERhdGVQaWNrZXJNb2R1bGUsXG4gICAgU2VsZWN0TW9kdWxlLFxuICAgIE9ubHlOdW1iZXJNb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG4gICAgVG9nZ2xlTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVHJhbnNsb2NvTW9kdWxlLFxuICAgIEhpbnRNb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFRSQU5TTE9DT19TQ09QRSxcbiAgICAgIHVzZVZhbHVlOiB7c2NvcGU6ICdlcnJvcnMnLCBhbGlhczogJ2Vycm9ycyd9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvcGVydHlHcmlkTW9kdWxlIHtcbn1cbiJdfQ==
@@ -165,7 +165,7 @@ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
165
165
  useExisting: forwardRef(() => SelectComponent),
166
166
  multi: true,
167
167
  },
168
- ], queries: [{ propertyName: "optionDirective", first: true, predicate: SelectOptionDirective, descendants: true, static: true }, { propertyName: "valueDirective", first: true, predicate: SelectValueDirective, descendants: true, static: true }], ngImport: i0, template: "<teta-dropdown [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n class=\"row row_auto\">\n <div tetaDropdownHead\n class=\"row row_auto select-head\"\n [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n <teta-icon *ngIf=\"icon\" [name]=\"icon\" class=\"margin-right-1\"></teta-icon>\n <span class=\"placeholder\" *ngIf=\"(value == null || value?.length === 0) && placeholder\">\n {{placeholder}}\n </span>\n <ng-container\n *ngTemplateOutlet=\"valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}\"></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\"></teta-icon>\n </div>\n <div *ngIf=\"options?.length\" tetaDropdownContent class=\"select-list scrollable row_auto\">\n <ng-container *ngIf=\"searchRef\">\n <div class=\"select-search\">\n <teta-text-field [ngModel]=\"searchText\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"'\u041F\u043E\u0438\u0441\u043A'\"\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!multiple && allowNull\">\n <div class=\"list-item list-item_interactive\"\n (click)=\"clear()\"\n [class.list-item_active]=\"value==null\">\n \u041D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!virtual\">\n <div class=\"list-item list-item_interactive\"\n *ngFor=\"let option of visibleOptions\"\n [class.select-list-item_active]=\"itemSelected(option) && multiple\"\n [class.list-item_active]=\"itemSelected(option)\"\n [class.select-list-item]=\"multiple\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option) && multiple\" [name]=\"'tick'\" [palette]=\"'primary'\"></teta-icon>\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </span>\n </div>\n </ng-container>\n <cdk-virtual-scroll-viewport *ngIf=\"virtual\"\n [itemSize]=\"40\"\n minBufferPx=\"200\"\n maxBufferPx=\"600\">\n <div class=\"select-list-item select-list-item_interactive\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0;\"\n [class.select-list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option)\" [name]=\"'tick'\" [palette]=\"'primary'\" class=\"margin-left-2\"></teta-icon>\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"row row_auto select-chip-field flex-wrap\" *ngIf=\"multiple && value?.length\">\n <div *ngFor=\"let item of value\" class=\"chip\">\n <teta-icon [name]=\"'closeCircle'\" (click)=\"removeItemClick(item, $event)\"></teta-icon>\n {{getText(item)}}\n </div>\n </div>\n </div>\n</teta-dropdown>\n\n<ng-template #optionDefault let-option>\n {{getText(option)}}\n</ng-template>\n<ng-template #valueDefault let-value>\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\" *ngIf=\"multiple\">\n <ng-container\n *ngFor=\"let item of value; let i = index\">{{getText(item) + (value.length === i + 1 ? '' : ', ') }}</ng-container>\n </div>\n <ng-container *ngIf=\"!multiple\">\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{getText(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""], components: [{ type: i1.DropdownComponent, selector: "teta-dropdown" }, { type: i2.IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { type: i3.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }, { type: i4.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }], directives: [{ type: i5.DropdownHeadDirective, selector: "[tetaDropdownHead]" }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.DropdownContentDirective, selector: "[tetaDropdownContent]" }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.HighlightDirective, selector: "[tetaHighlight]", inputs: ["tetaHighlight"] }, { type: i4.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i4.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
168
+ ], queries: [{ propertyName: "optionDirective", first: true, predicate: SelectOptionDirective, descendants: true, static: true }, { propertyName: "valueDirective", first: true, predicate: SelectValueDirective, descendants: true, static: true }], ngImport: i0, template: "<teta-dropdown [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n class=\"row row_auto\">\n <div tetaDropdownHead\n class=\"row row_auto select-head\"\n [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n <teta-icon *ngIf=\"icon\" [name]=\"icon\" class=\"margin-right-1\"></teta-icon>\n <span class=\"placeholder\" *ngIf=\"(value == null || value?.length === 0) && placeholder\">\n {{placeholder}}\n </span>\n <ng-container\n *ngTemplateOutlet=\"valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}\"></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\"></teta-icon>\n </div>\n <div *ngIf=\"options?.length\" tetaDropdownContent class=\"select-list scrollable row_auto\" (click)=\"$event.preventDefault()\">\n <ng-container *ngIf=\"searchRef\">\n <div class=\"select-search\">\n <teta-text-field [ngModel]=\"searchText\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"'\u041F\u043E\u0438\u0441\u043A'\"\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!multiple && allowNull\">\n <div class=\"list-item list-item_interactive\"\n (click)=\"clear()\"\n [class.list-item_active]=\"value==null\">\n \u041D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!virtual\">\n <div class=\"list-item list-item_interactive\"\n *ngFor=\"let option of visibleOptions\"\n [class.select-list-item_active]=\"itemSelected(option) && multiple\"\n [class.list-item_active]=\"itemSelected(option)\"\n [class.select-list-item]=\"multiple\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option) && multiple\" [name]=\"'tick'\" [palette]=\"'primary'\"></teta-icon>\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </span>\n </div>\n </ng-container>\n <cdk-virtual-scroll-viewport *ngIf=\"virtual\"\n [itemSize]=\"40\"\n minBufferPx=\"200\"\n maxBufferPx=\"600\">\n <div class=\"select-list-item select-list-item_interactive\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0;\"\n [class.select-list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option)\" [name]=\"'tick'\" [palette]=\"'primary'\" class=\"margin-left-2\"></teta-icon>\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"row row_auto select-chip-field flex-wrap\" *ngIf=\"multiple && value?.length\">\n <div *ngFor=\"let item of value\" class=\"chip\">\n <teta-icon [name]=\"'closeCircle'\" (click)=\"removeItemClick(item, $event)\"></teta-icon>\n {{getText(item)}}\n </div>\n </div>\n </div>\n</teta-dropdown>\n\n<ng-template #optionDefault let-option>\n {{getText(option)}}\n</ng-template>\n<ng-template #valueDefault let-value>\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\" *ngIf=\"multiple\">\n <ng-container\n *ngFor=\"let item of value; let i = index\">{{getText(item) + (value.length === i + 1 ? '' : ', ') }}</ng-container>\n </div>\n <ng-container *ngIf=\"!multiple\">\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{getText(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""], components: [{ type: i1.DropdownComponent, selector: "teta-dropdown" }, { type: i2.IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { type: i3.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }, { type: i4.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }], directives: [{ type: i5.DropdownHeadDirective, selector: "[tetaDropdownHead]" }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.DropdownContentDirective, selector: "[tetaDropdownContent]" }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.HighlightDirective, selector: "[tetaHighlight]", inputs: ["tetaHighlight"] }, { type: i4.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i4.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
169
169
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: SelectComponent, decorators: [{
170
170
  type: Component,
171
171
  args: [{ selector: 'teta-select', providers: [
@@ -174,7 +174,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
174
174
  useExisting: forwardRef(() => SelectComponent),
175
175
  multi: true,
176
176
  },
177
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<teta-dropdown [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n class=\"row row_auto\">\n <div tetaDropdownHead\n class=\"row row_auto select-head\"\n [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n <teta-icon *ngIf=\"icon\" [name]=\"icon\" class=\"margin-right-1\"></teta-icon>\n <span class=\"placeholder\" *ngIf=\"(value == null || value?.length === 0) && placeholder\">\n {{placeholder}}\n </span>\n <ng-container\n *ngTemplateOutlet=\"valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}\"></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\"></teta-icon>\n </div>\n <div *ngIf=\"options?.length\" tetaDropdownContent class=\"select-list scrollable row_auto\">\n <ng-container *ngIf=\"searchRef\">\n <div class=\"select-search\">\n <teta-text-field [ngModel]=\"searchText\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"'\u041F\u043E\u0438\u0441\u043A'\"\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!multiple && allowNull\">\n <div class=\"list-item list-item_interactive\"\n (click)=\"clear()\"\n [class.list-item_active]=\"value==null\">\n \u041D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!virtual\">\n <div class=\"list-item list-item_interactive\"\n *ngFor=\"let option of visibleOptions\"\n [class.select-list-item_active]=\"itemSelected(option) && multiple\"\n [class.list-item_active]=\"itemSelected(option)\"\n [class.select-list-item]=\"multiple\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option) && multiple\" [name]=\"'tick'\" [palette]=\"'primary'\"></teta-icon>\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </span>\n </div>\n </ng-container>\n <cdk-virtual-scroll-viewport *ngIf=\"virtual\"\n [itemSize]=\"40\"\n minBufferPx=\"200\"\n maxBufferPx=\"600\">\n <div class=\"select-list-item select-list-item_interactive\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0;\"\n [class.select-list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option)\" [name]=\"'tick'\" [palette]=\"'primary'\" class=\"margin-left-2\"></teta-icon>\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"row row_auto select-chip-field flex-wrap\" *ngIf=\"multiple && value?.length\">\n <div *ngFor=\"let item of value\" class=\"chip\">\n <teta-icon [name]=\"'closeCircle'\" (click)=\"removeItemClick(item, $event)\"></teta-icon>\n {{getText(item)}}\n </div>\n </div>\n </div>\n</teta-dropdown>\n\n<ng-template #optionDefault let-option>\n {{getText(option)}}\n</ng-template>\n<ng-template #valueDefault let-value>\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\" *ngIf=\"multiple\">\n <ng-container\n *ngFor=\"let item of value; let i = index\">{{getText(item) + (value.length === i + 1 ? '' : ', ') }}</ng-container>\n </div>\n <ng-container *ngIf=\"!multiple\">\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{getText(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""] }]
177
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<teta-dropdown [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n class=\"row row_auto\">\n <div tetaDropdownHead\n class=\"row row_auto select-head\"\n [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n <teta-icon *ngIf=\"icon\" [name]=\"icon\" class=\"margin-right-1\"></teta-icon>\n <span class=\"placeholder\" *ngIf=\"(value == null || value?.length === 0) && placeholder\">\n {{placeholder}}\n </span>\n <ng-container\n *ngTemplateOutlet=\"valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}\"></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\"></teta-icon>\n </div>\n <div *ngIf=\"options?.length\" tetaDropdownContent class=\"select-list scrollable row_auto\" (click)=\"$event.preventDefault()\">\n <ng-container *ngIf=\"searchRef\">\n <div class=\"select-search\">\n <teta-text-field [ngModel]=\"searchText\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"'\u041F\u043E\u0438\u0441\u043A'\"\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!multiple && allowNull\">\n <div class=\"list-item list-item_interactive\"\n (click)=\"clear()\"\n [class.list-item_active]=\"value==null\">\n \u041D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E\n </div>\n <div class=\"list-divider\"></div>\n </ng-container>\n <ng-container *ngIf=\"!virtual\">\n <div class=\"list-item list-item_interactive\"\n *ngFor=\"let option of visibleOptions\"\n [class.select-list-item_active]=\"itemSelected(option) && multiple\"\n [class.list-item_active]=\"itemSelected(option)\"\n [class.select-list-item]=\"multiple\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option) && multiple\" [name]=\"'tick'\" [palette]=\"'primary'\"></teta-icon>\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </span>\n </div>\n </ng-container>\n <cdk-virtual-scroll-viewport *ngIf=\"virtual\"\n [itemSize]=\"40\"\n minBufferPx=\"200\"\n maxBufferPx=\"600\">\n <div class=\"select-list-item select-list-item_interactive\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0;\"\n [class.select-list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\">\n <teta-icon *ngIf=\"itemSelected(option)\" [name]=\"'tick'\" [palette]=\"'primary'\" class=\"margin-left-2\"></teta-icon>\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}\">\n </ng-container>\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"row row_auto select-chip-field flex-wrap\" *ngIf=\"multiple && value?.length\">\n <div *ngFor=\"let item of value\" class=\"chip\">\n <teta-icon [name]=\"'closeCircle'\" (click)=\"removeItemClick(item, $event)\"></teta-icon>\n {{getText(item)}}\n </div>\n </div>\n </div>\n</teta-dropdown>\n\n<ng-template #optionDefault let-option>\n {{getText(option)}}\n</ng-template>\n<ng-template #valueDefault let-value>\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\" *ngIf=\"multiple\">\n <ng-container\n *ngFor=\"let item of value; let i = index\">{{getText(item) + (value.length === i + 1 ? '' : ', ') }}</ng-container>\n </div>\n <ng-container *ngIf=\"!multiple\">\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{getText(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""] }]
178
178
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { multiple: [{
179
179
  type: HostBinding,
180
180
  args: ['class.select_multiple']
@@ -231,4 +231,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
231
231
  type: HostBinding,
232
232
  args: ['class.select_disabled']
233
233
  }] } });
234
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9zZWxlY3Qvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFekUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7OztBQWVqRSxNQUFNLE9BQU8sZUFBZTtJQXFEMUIsWUFDVSxJQUF1QixFQUN2QixXQUF1QjtRQUR2QixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQWpEeEIsVUFBSyxHQUFVLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDOUIsa0JBQWEsR0FBa0IsYUFBYSxDQUFDLE1BQU0sQ0FBQztRQUNwRCxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLG9CQUFlLEdBQStCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekQsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUtkLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFZUSxTQUFJ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QWpCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHTixlQUFlO3NCQURkLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlyRCxjQUFjO3NCQURiLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdsQixJQUFJO3NCQUFyQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFYyxXQUFXO3NCQUF4RCxXQUFXO3VCQUFDLGNBQWM7Z0JBQ2UsUUFBUTtzQkFBakQsV0FBVzt1QkFBQyxVQUFVO2dCQUduQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWxpZ24gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcbmltcG9ydCB7IFZlcnRpY2FsQWxpZ24gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7IEF1dG9DbG9zZUlnbm9yZUNhc2UgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vY29udHJhY3QvYXV0by1jbG9zZS1pZ25vcmUtY2FzZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RWYWx1ZURpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9tdWx0aXBsZScpXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuO1xuICBASW5wdXQoKSBvcHRpb25zOiBhbnlbXTtcbiAgQElucHV0KCkgaW52YWxpZDogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxpZ246IEFsaWduID0gQWxpZ24ubWluV2lkdGg7XG4gIEBJbnB1dCgpIHZlcnRpY2FsQWxpZ246IFZlcnRpY2FsQWxpZ24gPSBWZXJ0aWNhbEFsaWduLmJvdHRvbTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlSWdub3JlOiBBcnJheTxBdXRvQ2xvc2VJZ25vcmVDYXNlPiA9IFsnaW5zaWRlJ107XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBpdGVtU2l6ZSA9IDMyO1xuICBASW5wdXQoKSB2aXJ0dWFsOiBib29sZWFuO1xuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxsb3dOdWxsID0gdHJ1ZTtcblxuICBASW5wdXQoKSB2YWx1ZVJlZjogKChpdGVtOiBhbnkpID0+IGFueSkgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHRleHRSZWY6ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpIHwgc3RyaW5nO1xuICBASW5wdXQoKSBzZWFyY2hSZWY6IHN0cmluZyB8ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0T3B0aW9uRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBvcHRpb25EaXJlY3RpdmU6IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTtcblxuICBAQ29udGVudENoaWxkKFNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB2YWx1ZURpcmVjdGl2ZTogU2VsZWN0VmFsdWVEaXJlY3RpdmU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3Rfb3BlbicpIG9wZW4gPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdCcpIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0Q2xhc3MgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JykgcHJpdmF0ZSByZWFkb25seSB0YWJpbmRleCA9IDA7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3RfZGlzYWJsZWQnKVxuICBnZXQgaXNEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIHZhbHVlOiBhbnkgfCBhbnlbXTtcbiAgc2VhcmNoVGV4dDogc3RyaW5nO1xuXG4gIGdldCB2aXNpYmxlT3B0aW9ucygpOiBhbnlbXSB7XG4gICAgaWYgKCF0aGlzLnNlYXJjaFRleHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LmZpbHRlcihcbiAgICAgIChvcHRpb24pID0+XG4gICAgICAgIHRoaXMuZ2V0U2VhcmNoU3RyaW5nKG9wdGlvbilcbiAgICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAgIC5pbmRleE9mKHRoaXMuc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpKSA+PSAwXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHt9XG5cbiAgY2xlYXIoKSB7XG4gICAgbGV0IHZhbDogYW55O1xuICAgIGlmICh0aGlzLm11bHRpcGxlID09PSB0cnVlKSB7XG4gICAgICB2YWwgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsID0gbnVsbDtcbiAgICB9XG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgY2xpY2tPcHRpb24ob3B0aW9uOiBhbnksIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUgPT09IHRydWUpIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbXTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnZhbHVlLmluZGV4T2Yob3B0aW9uKSA+PSAwKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBvcHRpb25dO1xuICAgICAgfVxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlLm1hcCgoXykgPT4gdGhpcy5nZXRWYWx1ZShfKSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gb3B0aW9uO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmdldFZhbHVlKHRoaXMudmFsdWUpKTtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGl0ZW1TZWxlY3RlZChvcHRpb246IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZT8uaW5kZXhPZihvcHRpb24pID49IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlID09PSBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlSXRlbUNsaWNrKG9wdGlvbjogYW55LCBldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZS5tYXAoKF8pID0+IHRoaXMuZ2V0VmFsdWUoXykpKTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0ob3B0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5maWx0ZXIoKF8pID0+IF8gIT09IG9wdGlvbik7XG4gIH1cblxuICBzZWFyY2godGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcbiAgfVxuXG4gIGdldFRleHQob3B0aW9uOiBhbnkpOiBzdHJpbmcge1xuICAgIGlmIChvcHRpb24gPT0gbnVsbCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBzd2l0Y2ggKHR5cGVvZiB0aGlzLnRleHRSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy50ZXh0UmVmXTtcbiAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dFJlZihvcHRpb24pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZShvcHRpb246IGFueSk6IGFueSB7XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy52YWx1ZVJlZikge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgcmV0dXJuIG9wdGlvblt0aGlzLnZhbHVlUmVmXTtcbiAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgZ2V0U2VhcmNoU3RyaW5nKG9wdGlvbjogYW55KTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHR5cGVvZiB0aGlzLnNlYXJjaFJlZikge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgcmV0dXJuIG9wdGlvblt0aGlzLnNlYXJjaFJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaFJlZihvcHRpb24pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSB8IGFueVtdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPVxuICAgICAgICB2YWx1ZSAmJiB0aGlzLm9wdGlvbnNcbiAgICAgICAgICA/IHRoaXMub3B0aW9ucy5maWx0ZXIoXG4gICAgICAgICAgICAgIChvcHRpb24pID0+IHZhbHVlLmluZGV4T2YodGhpcy5nZXRWYWx1ZShvcHRpb24pKSA+IC0xXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgIHRoaXMub3B0aW9ucyAmJlxuICAgICAgICB0aGlzLm9wdGlvbnMuZmluZCgob3B0aW9uKSA9PiB0aGlzLmdldFZhbHVlKG9wdGlvbikgPT09IHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VsZWN0ZWRWYWx1ZSgpIHt9XG59XG4iLCI8dGV0YS1kcm9wZG93biBbYWxpZ25dPVwiYWxpZ25cIlxuICAgICAgICAgICAgICAgW3ZlcnRpY2FsQWxpZ25dPVwidmVydGljYWxBbGlnblwiXG4gICAgICAgICAgICAgICBbYXV0b0Nsb3NlXT1cImF1dG9DbG9zZVwiXG4gICAgICAgICAgICAgICBbYXV0b0Nsb3NlSWdub3JlXT1cImF1dG9DbG9zZUlnbm9yZVwiXG4gICAgICAgICAgICAgICBbKG9wZW4pXT1cIm9wZW5cIlxuICAgICAgICAgICAgICAgW2FwcGVuZFRvQm9keV09XCJhcHBlbmRUb0JvZHlcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIGNsYXNzPVwicm93IHJvd19hdXRvXCI+XG4gIDxkaXYgdGV0YURyb3Bkb3duSGVhZFxuICAgICAgIGNsYXNzPVwicm93IHJvd19hdXRvIHNlbGVjdC1oZWFkXCJcbiAgICAgICBbY2xhc3Muc2VsZWN0LWhlYWRfaW52YWxpZF09XCJpbnZhbGlkXCI+XG4gICAgPGRpdiBjbGFzcz1cInJvd19hdXRvIGZsZXggYWxpZ24tY2VudGVyXCI+XG4gICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaWNvblwiIFtuYW1lXT1cImljb25cIiBjbGFzcz1cIm1hcmdpbi1yaWdodC0xXCI+PC90ZXRhLWljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cInBsYWNlaG9sZGVyXCIgKm5nSWY9XCIodmFsdWUgPT0gbnVsbCB8fCB2YWx1ZT8ubGVuZ3RoID09PSAwKSAmJiBwbGFjZWhvbGRlclwiPlxuICAgICAgICAgIHt7cGxhY2Vob2xkZXJ9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidmFsdWVEaXJlY3RpdmUgPyB2YWx1ZURpcmVjdGl2ZS50ZW1wbGF0ZSA6IHZhbHVlRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogdmFsdWUsIHZhbHVlOiB2YWx1ZX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8dGV0YS1pY29uIFtuYW1lXT1cIidhcnJvd0Rvd25TbWFsbCdcIj48L3RldGEtaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJvcHRpb25zPy5sZW5ndGhcIiB0ZXRhRHJvcGRvd25Db250ZW50IGNsYXNzPVwic2VsZWN0LWxpc3Qgc2Nyb2xsYWJsZSByb3dfYXV0b1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWFyY2hSZWZcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3Qtc2VhcmNoXCI+XG4gICAgICAgIDx0ZXRhLXRleHQtZmllbGQgW25nTW9kZWxdPVwic2VhcmNoVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIn0J/QvtC40YHQuidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtsZWZ0SWNvbk5hbWVdPVwiJ3NlYXJjaCdcIj48L3RldGEtdGV4dC1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpc3QtZGl2aWRlclwiPjwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbXVsdGlwbGUgJiYgYWxsb3dOdWxsXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZVwiXG4gICAgICAgICAgIChjbGljayk9XCJjbGVhcigpXCJcbiAgICAgICAgICAgW2NsYXNzLmxpc3QtaXRlbV9hY3RpdmVdPVwidmFsdWU9PW51bGxcIj5cbiAgICAgICAg0J3QtSDQstGL0LHRgNCw0L3QvlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1kaXZpZGVyXCI+PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF2aXJ0dWFsXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZVwiXG4gICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgdmlzaWJsZU9wdGlvbnNcIlxuICAgICAgICAgICBbY2xhc3Muc2VsZWN0LWxpc3QtaXRlbV9hY3RpdmVdPVwiaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGVcIlxuICAgICAgICAgICBbY2xhc3MubGlzdC1pdGVtX2FjdGl2ZV09XCJpdGVtU2VsZWN0ZWQob3B0aW9uKVwiXG4gICAgICAgICAgIFtjbGFzcy5zZWxlY3QtbGlzdC1pdGVtXT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGVcIiBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIncHJpbWFyeSdcIj48L3RldGEtaWNvbj5cbiAgICAgICAgPHNwYW4gW3RldGFIaWdobGlnaHRdPVwic2VhcmNoVGV4dFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwib3B0aW9uRGlyZWN0aXZlID8gb3B0aW9uRGlyZWN0aXZlLnRlbXBsYXRlIDogb3B0aW9uRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogb3B0aW9uLCBvcHRpb246IG9wdGlvbn1cIj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCAqbmdJZj1cInZpcnR1YWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1TaXplXT1cIjQwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbkJ1ZmZlclB4PVwiMjAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heEJ1ZmZlclB4PVwiNjAwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0LWxpc3QtaXRlbSBzZWxlY3QtbGlzdC1pdGVtX2ludGVyYWN0aXZlXCJcbiAgICAgICAgICAgKmNka1ZpcnR1YWxGb3I9XCJsZXQgb3B0aW9uIG9mIHZpc2libGVPcHRpb25zOyB0ZW1wbGF0ZUNhY2hlU2l6ZTogMDtcIlxuICAgICAgICAgICBbY2xhc3Muc2VsZWN0LWxpc3QtaXRlbV9hY3RpdmVdPVwiaXRlbVNlbGVjdGVkKG9wdGlvbilcIlxuICAgICAgICAgICBbdGV0YUhpZ2hsaWdodF09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaXRlbVNlbGVjdGVkKG9wdGlvbilcIiBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIncHJpbWFyeSdcIiBjbGFzcz1cIm1hcmdpbi1sZWZ0LTJcIj48L3RldGEtaWNvbj5cbiAgICAgICAgPGRpdiBbdGV0YUhpZ2hsaWdodF09XCJzZWFyY2hUZXh0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJvcHRpb25EaXJlY3RpdmUgPyBvcHRpb25EaXJlY3RpdmUudGVtcGxhdGUgOiBvcHRpb25EZWZhdWx0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBvcHRpb24sIG9wdGlvbjogb3B0aW9ufVwiPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICAgIDxkaXYgY2xhc3M9XCJyb3cgcm93X2F1dG8gc2VsZWN0LWNoaXAtZmllbGQgZmxleC13cmFwXCIgKm5nSWY9XCJtdWx0aXBsZSAmJiB2YWx1ZT8ubGVuZ3RoXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlXCIgY2xhc3M9XCJjaGlwXCI+XG4gICAgICAgIDx0ZXRhLWljb24gW25hbWVdPVwiJ2Nsb3NlQ2lyY2xlJ1wiIChjbGljayk9XCJyZW1vdmVJdGVtQ2xpY2soaXRlbSwgJGV2ZW50KVwiPjwvdGV0YS1pY29uPlxuICAgICAgICB7e2dldFRleHQoaXRlbSl9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZXRhLWRyb3Bkb3duPlxuXG48bmctdGVtcGxhdGUgI29wdGlvbkRlZmF1bHQgbGV0LW9wdGlvbj5cbiAge3tnZXRUZXh0KG9wdGlvbil9fVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdmFsdWVEZWZhdWx0IGxldC12YWx1ZT5cbiAgPGRpdiBjbGFzcz1cInJvd19hdXRvIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzXCIgKm5nSWY9XCJtdWx0aXBsZVwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlOyBsZXQgaSA9IGluZGV4XCI+e3tnZXRUZXh0KGl0ZW0pICsgKHZhbHVlLmxlbmd0aCA9PT0gaSArIDEgPyAnJyA6ICcsICcpIH19PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW11bHRpcGxlXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJyb3cgcm93X2F1dG8gIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzXCI+e3tnZXRUZXh0KHZhbHVlKX19PC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvbXBvbmVudC9zZWxlY3Qvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFekUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7OztBQWVqRSxNQUFNLE9BQU8sZUFBZTtJQXFEMUIsWUFDVSxJQUF1QixFQUN2QixXQUF1QjtRQUR2QixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQWpEeEIsVUFBSyxHQUFVLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDOUIsa0JBQWEsR0FBa0IsYUFBYSxDQUFDLE1BQU0sQ0FBQztRQUNwRCxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLG9CQUFlLEdBQStCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekQsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUtkLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFZUSxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBRUQsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDdkIsYUFBUSxHQUFHLENBQUMsQ0FBQztRQTZJdkQsYUFBUSxHQUF5QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFNMUMsY0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQTFIbEIsQ0FBQztJQXZCSixJQUNJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUtELElBQUksY0FBYztRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDckI7UUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUN6QixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ1QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7YUFDekIsV0FBVyxFQUFFO2FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQ2pELENBQUM7SUFDSixDQUFDO0lBT0QsS0FBSztRQUNILElBQUksR0FBUSxDQUFDO1FBQ2IsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtZQUMxQixHQUFHLEdBQUcsRUFBRSxDQUFDO1NBQ1Y7YUFBTTtZQUNMLEdBQUcsR0FBRyxJQUFJLENBQUM7U0FDWjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQVcsRUFBRSxLQUFpQjtRQUN4QyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRTtnQkFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7YUFDakI7WUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN6QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQ3RDO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDeEQ7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQVc7UUFDdEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pDO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFXLEVBQUUsS0FBaUI7UUFDNUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFXO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUFXO1FBQ2pCLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtZQUNsQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsUUFBUSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDM0IsS0FBSyxRQUFRO2dCQUNYLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzlCO2dCQUNFLE9BQU8sTUFBTSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUFXO1FBQ2xCLFFBQVEsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzVCLEtBQUssUUFBUTtnQkFDWCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsS0FBSyxVQUFVO2dCQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMvQjtnQkFDRSxPQUFPLE1BQU0sQ0FBQztTQUNqQjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsTUFBVztRQUN6QixRQUFRLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM3QixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2hDLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEM7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELFFBQVEsS0FBVSxDQUFDO0lBRW5CLFVBQVUsQ0FBQyxLQUFrQjtRQUMzQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLEtBQUs7Z0JBQ1IsS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPO29CQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ2pCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDdEQ7b0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNWO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSztnQkFDUixJQUFJLENBQUMsT0FBTztvQkFDWixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUlELGdCQUFnQixDQUFDLEVBQXdCO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFJRCxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxnQkFBZ0IsS0FBSSxDQUFDOzs0R0E3TGxCLGVBQWU7Z0dBQWYsZUFBZSxpcEJBVGY7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDOUMsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLHVFQXlCYSxxQkFBcUIsK0ZBR3JCLG9CQUFvQiw4REN4RHBDLHc1SUE0RkE7MkZEN0RhLGVBQWU7a0JBYjNCLFNBQVM7K0JBQ0UsYUFBYSxhQUdaO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGdCQUFnQixDQUFDOzRCQUM5QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTtpSUFLL0MsUUFBUTtzQkFGUCxXQUFXO3VCQUFDLHVCQUF1Qjs7c0JBQ25DLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHTixlQUFlO3NCQURkLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlyRCxjQUFjO3NCQURiLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdsQixJQUFJO3NCQUFyQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFYyxXQUFXO3NCQUF4RCxXQUFXO3VCQUFDLGNBQWM7Z0JBQ2UsUUFBUTtzQkFBakQsV0FBVzt1QkFBQyxVQUFVO2dCQUduQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWxpZ24gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcbmltcG9ydCB7IFZlcnRpY2FsQWxpZ24gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7IEF1dG9DbG9zZUlnbm9yZUNhc2UgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vY29udHJhY3QvYXV0by1jbG9zZS1pZ25vcmUtY2FzZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RWYWx1ZURpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9tdWx0aXBsZScpXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuO1xuICBASW5wdXQoKSBvcHRpb25zOiBhbnlbXTtcbiAgQElucHV0KCkgaW52YWxpZDogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxpZ246IEFsaWduID0gQWxpZ24ubWluV2lkdGg7XG4gIEBJbnB1dCgpIHZlcnRpY2FsQWxpZ246IFZlcnRpY2FsQWxpZ24gPSBWZXJ0aWNhbEFsaWduLmJvdHRvbTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlSWdub3JlOiBBcnJheTxBdXRvQ2xvc2VJZ25vcmVDYXNlPiA9IFsnaW5zaWRlJ107XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBpdGVtU2l6ZSA9IDMyO1xuICBASW5wdXQoKSB2aXJ0dWFsOiBib29sZWFuO1xuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxsb3dOdWxsID0gdHJ1ZTtcblxuICBASW5wdXQoKSB2YWx1ZVJlZjogKChpdGVtOiBhbnkpID0+IGFueSkgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHRleHRSZWY6ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpIHwgc3RyaW5nO1xuICBASW5wdXQoKSBzZWFyY2hSZWY6IHN0cmluZyB8ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0T3B0aW9uRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBvcHRpb25EaXJlY3RpdmU6IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTtcblxuICBAQ29udGVudENoaWxkKFNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB2YWx1ZURpcmVjdGl2ZTogU2VsZWN0VmFsdWVEaXJlY3RpdmU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3Rfb3BlbicpIG9wZW4gPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdCcpIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0Q2xhc3MgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JykgcHJpdmF0ZSByZWFkb25seSB0YWJpbmRleCA9IDA7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3RfZGlzYWJsZWQnKVxuICBnZXQgaXNEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIHZhbHVlOiBhbnkgfCBhbnlbXTtcbiAgc2VhcmNoVGV4dDogc3RyaW5nO1xuXG4gIGdldCB2aXNpYmxlT3B0aW9ucygpOiBhbnlbXSB7XG4gICAgaWYgKCF0aGlzLnNlYXJjaFRleHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LmZpbHRlcihcbiAgICAgIChvcHRpb24pID0+XG4gICAgICAgIHRoaXMuZ2V0U2VhcmNoU3RyaW5nKG9wdGlvbilcbiAgICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAgIC5pbmRleE9mKHRoaXMuc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpKSA+PSAwXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHt9XG5cbiAgY2xlYXIoKSB7XG4gICAgbGV0IHZhbDogYW55O1xuICAgIGlmICh0aGlzLm11bHRpcGxlID09PSB0cnVlKSB7XG4gICAgICB2YWwgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsID0gbnVsbDtcbiAgICB9XG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgY2xpY2tPcHRpb24ob3B0aW9uOiBhbnksIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUgPT09IHRydWUpIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbXTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnZhbHVlLmluZGV4T2Yob3B0aW9uKSA+PSAwKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBvcHRpb25dO1xuICAgICAgfVxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlLm1hcCgoXykgPT4gdGhpcy5nZXRWYWx1ZShfKSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gb3B0aW9uO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmdldFZhbHVlKHRoaXMudmFsdWUpKTtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGl0ZW1TZWxlY3RlZChvcHRpb246IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZT8uaW5kZXhPZihvcHRpb24pID49IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlID09PSBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlSXRlbUNsaWNrKG9wdGlvbjogYW55LCBldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZS5tYXAoKF8pID0+IHRoaXMuZ2V0VmFsdWUoXykpKTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0ob3B0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5maWx0ZXIoKF8pID0+IF8gIT09IG9wdGlvbik7XG4gIH1cblxuICBzZWFyY2godGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcbiAgfVxuXG4gIGdldFRleHQob3B0aW9uOiBhbnkpOiBzdHJpbmcge1xuICAgIGlmIChvcHRpb24gPT0gbnVsbCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBzd2l0Y2ggKHR5cGVvZiB0aGlzLnRleHRSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy50ZXh0UmVmXTtcbiAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dFJlZihvcHRpb24pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZShvcHRpb246IGFueSk6IGFueSB7XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy52YWx1ZVJlZikge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgcmV0dXJuIG9wdGlvblt0aGlzLnZhbHVlUmVmXTtcbiAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgZ2V0U2VhcmNoU3RyaW5nKG9wdGlvbjogYW55KTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHR5cGVvZiB0aGlzLnNlYXJjaFJlZikge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgcmV0dXJuIG9wdGlvblt0aGlzLnNlYXJjaFJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaFJlZihvcHRpb24pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSB8IGFueVtdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPVxuICAgICAgICB2YWx1ZSAmJiB0aGlzLm9wdGlvbnNcbiAgICAgICAgICA/IHRoaXMub3B0aW9ucy5maWx0ZXIoXG4gICAgICAgICAgICAgIChvcHRpb24pID0+IHZhbHVlLmluZGV4T2YodGhpcy5nZXRWYWx1ZShvcHRpb24pKSA+IC0xXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgIHRoaXMub3B0aW9ucyAmJlxuICAgICAgICB0aGlzLm9wdGlvbnMuZmluZCgob3B0aW9uKSA9PiB0aGlzLmdldFZhbHVlKG9wdGlvbikgPT09IHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VsZWN0ZWRWYWx1ZSgpIHt9XG59XG4iLCI8dGV0YS1kcm9wZG93biBbYWxpZ25dPVwiYWxpZ25cIlxuICAgICAgICAgICAgICAgW3ZlcnRpY2FsQWxpZ25dPVwidmVydGljYWxBbGlnblwiXG4gICAgICAgICAgICAgICBbYXV0b0Nsb3NlXT1cImF1dG9DbG9zZVwiXG4gICAgICAgICAgICAgICBbYXV0b0Nsb3NlSWdub3JlXT1cImF1dG9DbG9zZUlnbm9yZVwiXG4gICAgICAgICAgICAgICBbKG9wZW4pXT1cIm9wZW5cIlxuICAgICAgICAgICAgICAgW2FwcGVuZFRvQm9keV09XCJhcHBlbmRUb0JvZHlcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIGNsYXNzPVwicm93IHJvd19hdXRvXCI+XG4gIDxkaXYgdGV0YURyb3Bkb3duSGVhZFxuICAgICAgIGNsYXNzPVwicm93IHJvd19hdXRvIHNlbGVjdC1oZWFkXCJcbiAgICAgICBbY2xhc3Muc2VsZWN0LWhlYWRfaW52YWxpZF09XCJpbnZhbGlkXCI+XG4gICAgPGRpdiBjbGFzcz1cInJvd19hdXRvIGZsZXggYWxpZ24tY2VudGVyXCI+XG4gICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaWNvblwiIFtuYW1lXT1cImljb25cIiBjbGFzcz1cIm1hcmdpbi1yaWdodC0xXCI+PC90ZXRhLWljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cInBsYWNlaG9sZGVyXCIgKm5nSWY9XCIodmFsdWUgPT0gbnVsbCB8fCB2YWx1ZT8ubGVuZ3RoID09PSAwKSAmJiBwbGFjZWhvbGRlclwiPlxuICAgICAgICAgIHt7cGxhY2Vob2xkZXJ9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidmFsdWVEaXJlY3RpdmUgPyB2YWx1ZURpcmVjdGl2ZS50ZW1wbGF0ZSA6IHZhbHVlRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogdmFsdWUsIHZhbHVlOiB2YWx1ZX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8dGV0YS1pY29uIFtuYW1lXT1cIidhcnJvd0Rvd25TbWFsbCdcIj48L3RldGEtaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJvcHRpb25zPy5sZW5ndGhcIiB0ZXRhRHJvcGRvd25Db250ZW50IGNsYXNzPVwic2VsZWN0LWxpc3Qgc2Nyb2xsYWJsZSByb3dfYXV0b1wiIChjbGljayk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWFyY2hSZWZcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3Qtc2VhcmNoXCI+XG4gICAgICAgIDx0ZXRhLXRleHQtZmllbGQgW25nTW9kZWxdPVwic2VhcmNoVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIn0J/QvtC40YHQuidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtsZWZ0SWNvbk5hbWVdPVwiJ3NlYXJjaCdcIj48L3RldGEtdGV4dC1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpc3QtZGl2aWRlclwiPjwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbXVsdGlwbGUgJiYgYWxsb3dOdWxsXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZVwiXG4gICAgICAgICAgIChjbGljayk9XCJjbGVhcigpXCJcbiAgICAgICAgICAgW2NsYXNzLmxpc3QtaXRlbV9hY3RpdmVdPVwidmFsdWU9PW51bGxcIj5cbiAgICAgICAg0J3QtSDQstGL0LHRgNCw0L3QvlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1kaXZpZGVyXCI+PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF2aXJ0dWFsXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZVwiXG4gICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgdmlzaWJsZU9wdGlvbnNcIlxuICAgICAgICAgICBbY2xhc3Muc2VsZWN0LWxpc3QtaXRlbV9hY3RpdmVdPVwiaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGVcIlxuICAgICAgICAgICBbY2xhc3MubGlzdC1pdGVtX2FjdGl2ZV09XCJpdGVtU2VsZWN0ZWQob3B0aW9uKVwiXG4gICAgICAgICAgIFtjbGFzcy5zZWxlY3QtbGlzdC1pdGVtXT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGVcIiBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIncHJpbWFyeSdcIj48L3RldGEtaWNvbj5cbiAgICAgICAgPHNwYW4gW3RldGFIaWdobGlnaHRdPVwic2VhcmNoVGV4dFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwib3B0aW9uRGlyZWN0aXZlID8gb3B0aW9uRGlyZWN0aXZlLnRlbXBsYXRlIDogb3B0aW9uRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogb3B0aW9uLCBvcHRpb246IG9wdGlvbn1cIj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCAqbmdJZj1cInZpcnR1YWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1TaXplXT1cIjQwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbkJ1ZmZlclB4PVwiMjAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heEJ1ZmZlclB4PVwiNjAwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0LWxpc3QtaXRlbSBzZWxlY3QtbGlzdC1pdGVtX2ludGVyYWN0aXZlXCJcbiAgICAgICAgICAgKmNka1ZpcnR1YWxGb3I9XCJsZXQgb3B0aW9uIG9mIHZpc2libGVPcHRpb25zOyB0ZW1wbGF0ZUNhY2hlU2l6ZTogMDtcIlxuICAgICAgICAgICBbY2xhc3Muc2VsZWN0LWxpc3QtaXRlbV9hY3RpdmVdPVwiaXRlbVNlbGVjdGVkKG9wdGlvbilcIlxuICAgICAgICAgICBbdGV0YUhpZ2hsaWdodF09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICA8dGV0YS1pY29uICpuZ0lmPVwiaXRlbVNlbGVjdGVkKG9wdGlvbilcIiBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIncHJpbWFyeSdcIiBjbGFzcz1cIm1hcmdpbi1sZWZ0LTJcIj48L3RldGEtaWNvbj5cbiAgICAgICAgPGRpdiBbdGV0YUhpZ2hsaWdodF09XCJzZWFyY2hUZXh0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJvcHRpb25EaXJlY3RpdmUgPyBvcHRpb25EaXJlY3RpdmUudGVtcGxhdGUgOiBvcHRpb25EZWZhdWx0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBvcHRpb24sIG9wdGlvbjogb3B0aW9ufVwiPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICAgIDxkaXYgY2xhc3M9XCJyb3cgcm93X2F1dG8gc2VsZWN0LWNoaXAtZmllbGQgZmxleC13cmFwXCIgKm5nSWY9XCJtdWx0aXBsZSAmJiB2YWx1ZT8ubGVuZ3RoXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlXCIgY2xhc3M9XCJjaGlwXCI+XG4gICAgICAgIDx0ZXRhLWljb24gW25hbWVdPVwiJ2Nsb3NlQ2lyY2xlJ1wiIChjbGljayk9XCJyZW1vdmVJdGVtQ2xpY2soaXRlbSwgJGV2ZW50KVwiPjwvdGV0YS1pY29uPlxuICAgICAgICB7e2dldFRleHQoaXRlbSl9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZXRhLWRyb3Bkb3duPlxuXG48bmctdGVtcGxhdGUgI29wdGlvbkRlZmF1bHQgbGV0LW9wdGlvbj5cbiAge3tnZXRUZXh0KG9wdGlvbil9fVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdmFsdWVEZWZhdWx0IGxldC12YWx1ZT5cbiAgPGRpdiBjbGFzcz1cInJvd19hdXRvIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzXCIgKm5nSWY9XCJtdWx0aXBsZVwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlOyBsZXQgaSA9IGluZGV4XCI+e3tnZXRUZXh0KGl0ZW0pICsgKHZhbHVlLmxlbmd0aCA9PT0gaSArIDEgPyAnJyA6ICcsICcpIH19PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW11bHRpcGxlXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJyb3cgcm93X2F1dG8gIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzXCI+e3tnZXRUZXh0KHZhbHVlKX19PC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -30,6 +30,7 @@ export class TableColumn extends FilterItem {
30
30
  this.groupingOrder = options?.groupingOrder ?? 0;
31
31
  this.groupByFn = options?.groupByFn;
32
32
  this.headCellComponent = options?.headCellComponent;
33
+ this.headDropdownTemplate = options?.headDropdownTemplate;
33
34
  this.cellComponent = options?.cellComponent;
34
35
  this.aggregate = options?.aggregate;
35
36
  this.defaultValue = options?.defaultValue;
@@ -39,4 +40,4 @@ export class TableColumn extends FilterItem {
39
40
  this.columns = options?.columns?.map((x) => new TableColumn(x)) ?? [];
40
41
  }
41
42
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50L3RhYmxlL2NvbnRyYWN0L3RhYmxlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFPN0QsTUFBTSxPQUFPLFdBQVksU0FBUSxVQUFVO0lBK0Z6Qzs7T0FFRztJQUNILFlBQVksT0FtQ1g7UUFDQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFySWpCOztXQUVHO1FBQ0gsVUFBSyxHQUFHLEdBQUcsQ0FBQztRQUNaOztXQUVHO1FBQ0gsU0FBSSxHQUFHLENBQUMsQ0FBQztRQWlEVDs7V0FFRztRQUNILGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBMkVoQixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksR0FBRyxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxFQUFFLE1BQU0sSUFBSSxLQUFLLENBQUM7UUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLEVBQUUsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLEVBQUUsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsSUFBSSxJQUFJLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sRUFBRSxhQUFhLElBQUksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxFQUFFLGlCQUFpQixDQUFDO1FBQ3BELElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxFQUFFLGFBQWEsQ0FBQztRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLEVBQUUsWUFBWSxDQUFDO1FBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsQ0FBQztRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLEVBQUUsUUFBUSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmlsdGVySXRlbX0gZnJvbSAnLi4vLi4vZmlsdGVyL2NvbnRhcmN0L2ZpbHRlci1pdGVtJztcbmltcG9ydCB7RmlsdGVyVHlwZX0gZnJvbSAnLi4vLi4vZmlsdGVyL2VudW0vZmlsdGVyLXR5cGUuZW51bSc7XG5pbXBvcnQge1N0cmluZ0ZpbHRlclR5cGV9IGZyb20gJy4uLy4uL2ZpbHRlci9lbnVtL3N0cmluZy1maWx0ZXItdHlwZS5lbnVtJztcbmltcG9ydCB7TGlzdEZpbHRlclR5cGV9IGZyb20gJy4uLy4uL2ZpbHRlci9lbnVtL2xpc3QtZmlsdGVyLXR5cGUuZW51bSc7XG5pbXBvcnQge1RhYmxlUm93fSBmcm9tICcuL3RhYmxlLXJvdyc7XG5pbXBvcnQge0FnZ3JlZ2F0aW9uVHlwZX0gZnJvbSAnLi4vZW51bS9hZ2dyZWdhdGlvbi10eXBlLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW4gZXh0ZW5kcyBGaWx0ZXJJdGVtIHtcbiAgLyoqXG4gICAqINCo0LjRgNC40L3QsFxuICAgKi9cbiAgd2lkdGggPSAxNTA7XG4gIC8qKlxuICAgKiDQmtC+0Y3RhNGE0LjRhtC40LXQvdGCINGA0LDRgdGC0Y/QttC10L3QuNGPINGP0YfQtdC50LrQuFxuICAgKi9cbiAgZmxleCA9IDA7XG4gIC8qKlxuICAgKiDQodGC0L7QsdC10YYg0LfQsNC60YDQtdC/0LvQtdC9XG4gICAqL1xuICBsb2NrZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiDQndCw0LfQstCw0L3QuNC1INGB0YLQvtC70LHRhtCwINCyINGB0YLRgNC+0LrQtSDRgNC10LfRg9C70YzRgtCw0YLQvtCyXG4gICAqL1xuICBvdmVycmlkZSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiDQndCw0LfQstCw0L3QuNC1INGB0YLQvtC70LHRhtCwINGA0L7QtNC40YLQtdC70Y9cbiAgICovXG4gIHBhcmVudE5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqINCd0LDQt9Cy0LDQvdC40LUg0YHRgtC+0LvQsdGG0LAg0LTQu9GPINC30LDQs9C+0LvQvtCy0LrQsCDRgtCw0LHQu9C40YbRi1xuICAgKi9cbiAgb3ZlcnJpZGUgY2FwdGlvbjogc3RyaW5nO1xuICAvKipcbiAgICog0JXQtNC40L3QuNGG0Ysg0LjQt9C80LXRgNC10L3QuNGPXG4gICAqL1xuICB1bml0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiDRgdC/0LjRgdC+0Logc3R5bGUg0LrQu9Cw0YHRgdC+0LIg0LTQu9GPINGI0LDQv9C60Lgg0YLQsNCx0LvQuNGG0YtcbiAgICovXG4gIGhlYWRDZWxsQ2xhc3M6IHN0cmluZ1tdO1xuICAvKipcbiAgICog0YHQv9C40YHQvtC6IHN0eWxlINC60LvQsNGB0YHQvtCyINC00LvRjyDRj9GH0LXQudC60Lgg0YLQsNCx0LvQuNGG0YtcbiAgICovXG4gIGNlbGxDbGFzczogc3RyaW5nW107XG4gIC8qKlxuICAgKiDQlNC+0L/QvtC70L3QuNGC0LXQu9GM0L3Ri9C1INC00LDQvdC90YvQtSwg0YHQstC+0LHQvtC00L3QvtC1INC+0L/QuNGB0LDQvdC40LUsINC00L7RgdGC0YPQv9C90Ysg0LLQvdGD0YLRgNC4INC60L7QvNC/0L7QvdC10YLQsCDRj9GH0LXQudC60LgsINC80L7QttC90L4g0L/RgNC+0LrQuNC90YPRgtGMIGNhbGxiYWNrINC90LDQv9GA0LjQvNC10YBcbiAgICovXG4gIGRhdGE6IGFueTtcbiAgLyoqXG4gICAqINCa0L7Qu9C+0L3QutCwINC00L7RgdGC0YPQv9C90LAg0LTQu9GPINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y9cbiAgICovXG4gIGVkaXRhYmxlOiBib29sZWFuO1xuICAvKipcbiAgICog0JrQvtC80L/QvtC90LXQvdGCINC00LvRjyDRgNC10L3QtNC10YDQsCDRj9GH0LXQudC60LhcbiAgICovXG4gIGNlbGxDb21wb25lbnQ6IGFueTtcbiAgLyoqXG4gICAqINCa0L7QvNC/0L7QvdC10L3RgiDQtNC70Y8g0YDQtdC90LTQtdGA0LAg0LfQsNCz0L7Qu9C+0LLQutCwINGB0YLQvtC70LHRhtCwINGP0YfQtdC50LrQuFxuICAgKi9cbiAgaGVhZENlbGxDb21wb25lbnQ6IGFueTtcbiAgLyoqXG4gICAqINCT0YDRg9C/0L/QuNGA0L7QstCw0YLRjCDQv9C+INGN0YLQvtC80YMg0YHRgtC+0LvQsdGG0YNcbiAgICovXG4gIGdyb3VwQnk6IGJvb2xlYW47XG4gIC8qKlxuICAgKiDQn9C+0YDRj9C00L7QuiDQs9GA0YPQv9C/0LjRgNC+0LLQutC4XG4gICAqL1xuICBncm91cGluZ09yZGVyID0gMDtcbiAgLyoqXG4gICAqXG4gICAqL1xuICBncm91cEJ5Rm46ICgocm93OiBUYWJsZVJvdzxhbnk+KSA9PiBzdHJpbmcpIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICog0JTQvtGH0LXRgNC90LjQtSDQutC+0LvQvtC90LrQuFxuICAgKi9cbiAgb3ZlcnJpZGUgY29sdW1uczogVGFibGVDb2x1bW5bXTtcblxuICAvKipcbiAgICogQWdncmVnYXRlIHR5cGVcbiAgICovXG4gIGFnZ3JlZ2F0ZTogQWdncmVnYXRpb25UeXBlO1xuXG4gIC8qKlxuICAgKiDQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INC30LDQv9C40YHQuFxuICAgKi9cbiAgZGVmYXVsdFZhbHVlOiBhbnk7XG5cbiAgLyoqXG4gICAqINCX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0L/RgNC4INGB0L7Qt9C00LDQvdC40Lgg0LfQsNC/0LjRgdC4XG4gICAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiDQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INC30LDQv9C40YHQuFxuICAgKi9cbiAgbWluVmFsdWU6IG51bWJlcjtcblxuICAvKipcbiAgICog0J/QvtC70LUg0L7QsdGP0LfQsNGC0LXQu9GM0L3QviDQtNC70Y8g0LfQsNC/0L7Qu9C90LXQvdC40Y9cbiAgICovXG4gIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiDQmNC90LjRhtC40LDQu9C40LfQsNGG0LjRjyDQuNC3INCw0L3QvtC90LjQvNC90L7Qs9C+INC+0LHRitC10LrRgtCwXG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zPzoge1xuICAgIHdpZHRoPzogbnVtYmVyO1xuICAgIGZsZXg/OiBudW1iZXI7XG4gICAgc29ydE9yZGVyPzogbnVtYmVyO1xuICAgIGxvY2tlZD86IGJvb2xlYW47XG4gICAgbmFtZT86IHN0cmluZztcbiAgICBwYXJlbnROYW1lPzogc3RyaW5nO1xuICAgIGNhcHRpb24/OiBzdHJpbmc7XG4gICAgaGludD86IHN0cmluZztcbiAgICB1bml0Pzogc3RyaW5nO1xuICAgIHNvcnRhYmxlPzogYm9vbGVhbjtcbiAgICBzb3J0RmllbGQ/OiBzdHJpbmc7XG4gICAgZmlsdGVyYWJsZT86IGJvb2xlYW47XG4gICAgZmlsdGVyRmllbGQ/OiBzdHJpbmc7XG4gICAgZmlsdGVyVHlwZT86IEZpbHRlclR5cGUgfCBudWxsO1xuICAgIHN0cmluZ0ZpbHRlclR5cGU/OiBTdHJpbmdGaWx0ZXJUeXBlO1xuICAgIGxpc3RGaWx0ZXJUeXBlPzogTGlzdEZpbHRlclR5cGU7XG4gICAgc3RyaWN0PzogYm9vbGVhbjtcbiAgICBoZWFkQ2VsbENsYXNzPzogc3RyaW5nW107XG4gICAgY2VsbENsYXNzPzogc3RyaW5nW107XG4gICAgZGF0YT86IGFueTtcbiAgICBlZGl0YWJsZT86IGJvb2xlYW47XG4gICAgb2JqZWN0VHlwZT86IGJvb2xlYW47XG4gICAgY2VsbENvbXBvbmVudD86IGFueTtcbiAgICBoZWFkQ2VsbENvbXBvbmVudD86IGFueTtcbiAgICBmaWx0ZXJDb21wb25lbnQ/OiBhbnk7XG4gICAgZ3JvdXBCeT86IGJvb2xlYW47XG4gICAgZ3JvdXBpbmdPcmRlcj86IG51bWJlcjtcbiAgICBncm91cEJ5Rm4/OiAocm93OiBUYWJsZVJvdzxhbnk+KSA9PiBzdHJpbmc7XG4gICAgY29sdW1ucz86IGFueVtdO1xuICAgIGFnZ3JlZ2F0ZT86IEFnZ3JlZ2F0aW9uVHlwZTtcbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgbWF4VmFsdWU/OiBudW1iZXI7XG4gICAgbWluVmFsdWU/OiBudW1iZXI7XG4gICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICB9KSB7XG4gICAgc3VwZXIob3B0aW9ucyk7XG4gICAgdGhpcy53aWR0aCA9IG9wdGlvbnM/LndpZHRoID8/IDE1MDtcbiAgICB0aGlzLmZsZXggPSBvcHRpb25zPy5mbGV4ID8/IDA7XG4gICAgdGhpcy5oZWFkQ2VsbENsYXNzID0gb3B0aW9ucz8uaGVhZENlbGxDbGFzcyA/PyBbXTtcbiAgICB0aGlzLmNlbGxDbGFzcyA9IG9wdGlvbnM/LmNlbGxDbGFzcyA/PyBbXTtcbiAgICB0aGlzLmxvY2tlZCA9IG9wdGlvbnM/LmxvY2tlZCA/PyBmYWxzZTtcbiAgICB0aGlzLnBhcmVudE5hbWUgPSBvcHRpb25zPy5wYXJlbnROYW1lO1xuICAgIHRoaXMudW5pdCA9IG9wdGlvbnM/LnVuaXQgPz8gJyc7XG4gICAgdGhpcy5kYXRhID0gb3B0aW9ucz8uZGF0YTtcbiAgICB0aGlzLmVkaXRhYmxlID0gb3B0aW9ucz8uZWRpdGFibGUgPz8gdHJ1ZTtcbiAgICB0aGlzLmdyb3VwQnkgPSBvcHRpb25zPy5ncm91cEJ5ID8/IGZhbHNlO1xuICAgIHRoaXMuZ3JvdXBpbmdPcmRlciA9IG9wdGlvbnM/Lmdyb3VwaW5nT3JkZXIgPz8gMDtcbiAgICB0aGlzLmdyb3VwQnlGbiA9IG9wdGlvbnM/Lmdyb3VwQnlGbjtcbiAgICB0aGlzLmhlYWRDZWxsQ29tcG9uZW50ID0gb3B0aW9ucz8uaGVhZENlbGxDb21wb25lbnQ7XG4gICAgdGhpcy5jZWxsQ29tcG9uZW50ID0gb3B0aW9ucz8uY2VsbENvbXBvbmVudDtcbiAgICB0aGlzLmFnZ3JlZ2F0ZSA9IG9wdGlvbnM/LmFnZ3JlZ2F0ZTtcbiAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IG9wdGlvbnM/LmRlZmF1bHRWYWx1ZTtcbiAgICB0aGlzLm1heFZhbHVlID0gb3B0aW9ucz8ubWF4VmFsdWU7XG4gICAgdGhpcy5taW5WYWx1ZSA9IG9wdGlvbnM/Lm1pblZhbHVlO1xuICAgIHRoaXMucmVxdWlyZWQgPSBvcHRpb25zPy5yZXF1aXJlZDtcbiAgICB0aGlzLmNvbHVtbnMgPSBvcHRpb25zPy5jb2x1bW5zPy5tYXAoKHgpID0+IG5ldyBUYWJsZUNvbHVtbih4KSkgPz8gW107XG4gIH1cbn1cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50L3RhYmxlL2NvbnRyYWN0L3RhYmxlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFRN0QsTUFBTSxPQUFPLFdBQVksU0FBUSxVQUFVO0lBbUd6Qzs7T0FFRztJQUNILFlBQVksT0FvQ1g7UUFDQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUExSWpCOztXQUVHO1FBQ0gsVUFBSyxHQUFHLEdBQUcsQ0FBQztRQUNaOztXQUVHO1FBQ0gsU0FBSSxHQUFHLENBQUMsQ0FBQztRQXFEVDs7V0FFRztRQUNILGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBNEVoQixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksR0FBRyxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxFQUFFLE1BQU0sSUFBSSxLQUFLLENBQUM7UUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLEVBQUUsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLEVBQUUsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsSUFBSSxJQUFJLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sRUFBRSxhQUFhLElBQUksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxFQUFFLGlCQUFpQixDQUFDO1FBQ3BELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLEVBQUUsb0JBQW9CLENBQUM7UUFDMUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLEVBQUUsYUFBYSxDQUFDO1FBQzVDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sRUFBRSxZQUFZLENBQUM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLEVBQUUsUUFBUSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsQ0FBQztRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtGaWx0ZXJJdGVtfSBmcm9tICcuLi8uLi9maWx0ZXIvY29udGFyY3QvZmlsdGVyLWl0ZW0nO1xuaW1wb3J0IHtGaWx0ZXJUeXBlfSBmcm9tICcuLi8uLi9maWx0ZXIvZW51bS9maWx0ZXItdHlwZS5lbnVtJztcbmltcG9ydCB7U3RyaW5nRmlsdGVyVHlwZX0gZnJvbSAnLi4vLi4vZmlsdGVyL2VudW0vc3RyaW5nLWZpbHRlci10eXBlLmVudW0nO1xuaW1wb3J0IHtMaXN0RmlsdGVyVHlwZX0gZnJvbSAnLi4vLi4vZmlsdGVyL2VudW0vbGlzdC1maWx0ZXItdHlwZS5lbnVtJztcbmltcG9ydCB7VGFibGVSb3d9IGZyb20gJy4vdGFibGUtcm93JztcbmltcG9ydCB7QWdncmVnYXRpb25UeXBlfSBmcm9tICcuLi9lbnVtL2FnZ3JlZ2F0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQge1RlbXBsYXRlUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlQ29sdW1uIGV4dGVuZHMgRmlsdGVySXRlbSB7XG4gIC8qKlxuICAgKiDQqNC40YDQuNC90LBcbiAgICovXG4gIHdpZHRoID0gMTUwO1xuICAvKipcbiAgICog0JrQvtGN0YTRhNC40YbQuNC10L3RgiDRgNCw0YHRgtGP0LbQtdC90LjRjyDRj9GH0LXQudC60LhcbiAgICovXG4gIGZsZXggPSAwO1xuICAvKipcbiAgICog0KHRgtC+0LHQtdGGINC30LDQutGA0LXQv9C70LXQvVxuICAgKi9cbiAgbG9ja2VkOiBib29sZWFuO1xuICAvKipcbiAgICog0J3QsNC30LLQsNC90LjQtSDRgdGC0L7Qu9Cx0YbQsCDQsiDRgdGC0YDQvtC60LUg0YDQtdC30YPQu9GM0YLQsNGC0L7QslxuICAgKi9cbiAgb3ZlcnJpZGUgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICog0J3QsNC30LLQsNC90LjQtSDRgdGC0L7Qu9Cx0YbQsCDRgNC+0LTQuNGC0LXQu9GPXG4gICAqL1xuICBwYXJlbnROYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiDQndCw0LfQstCw0L3QuNC1INGB0YLQvtC70LHRhtCwINC00LvRjyDQt9Cw0LPQvtC70L7QstC60LAg0YLQsNCx0LvQuNGG0YtcbiAgICovXG4gIG92ZXJyaWRlIGNhcHRpb246IHN0cmluZztcbiAgLyoqXG4gICAqINCV0LTQuNC90LjRhtGLINC40LfQvNC10YDQtdC90LjRj1xuICAgKi9cbiAgdW5pdDogc3RyaW5nO1xuICAvKipcbiAgICog0YHQv9C40YHQvtC6IHN0eWxlINC60LvQsNGB0YHQvtCyINC00LvRjyDRiNCw0L/QutC4INGC0LDQsdC70LjRhtGLXG4gICAqL1xuICBoZWFkQ2VsbENsYXNzOiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqINGB0L/QuNGB0L7QuiBzdHlsZSDQutC70LDRgdGB0L7QsiDQtNC70Y8g0Y/Rh9C10LnQutC4INGC0LDQsdC70LjRhtGLXG4gICAqL1xuICBjZWxsQ2xhc3M6IHN0cmluZ1tdO1xuICAvKipcbiAgICog0JTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQtSDQtNCw0L3QvdGL0LUsINGB0LLQvtCx0L7QtNC90L7QtSDQvtC/0LjRgdCw0L3QuNC1LCDQtNC+0YHRgtGD0L/QvdGLINCy0L3Rg9GC0YDQuCDQutC+0LzQv9C+0L3QtdGC0LAg0Y/Rh9C10LnQutC4LCDQvNC+0LbQvdC+INC/0YDQvtC60LjQvdGD0YLRjCBjYWxsYmFjayDQvdCw0L/RgNC40LzQtdGAXG4gICAqL1xuICBkYXRhOiBhbnk7XG4gIC8qKlxuICAgKiDQmtC+0LvQvtC90LrQsCDQtNC+0YHRgtGD0L/QvdCwINC00LvRjyDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNGPXG4gICAqL1xuICBlZGl0YWJsZTogYm9vbGVhbjtcbiAgLyoqXG4gICAqINCa0L7QvNC/0L7QvdC10L3RgiDQtNC70Y8g0YDQtdC90LTQtdGA0LAg0Y/Rh9C10LnQutC4XG4gICAqL1xuICBjZWxsQ29tcG9uZW50OiBhbnk7XG4gIC8qKlxuICAgKiDQmtC+0LzQv9C+0L3QtdC90YIg0LTQu9GPINGA0LXQvdC00LXRgNCwINC30LDQs9C+0LvQvtCy0LrQsCDRgdGC0L7Qu9Cx0YbQsCDRj9GH0LXQudC60LhcbiAgICovXG4gIGhlYWRDZWxsQ29tcG9uZW50OiBhbnk7XG4gIC8qKlxuICAgKiBDdXN0b20gaGVhZCBkcm9wZG93biBmb3IgY29sdW1uXG4gICAqL1xuICBoZWFkRHJvcGRvd25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqXG4gICAqINCT0YDRg9C/0L/QuNGA0L7QstCw0YLRjCDQv9C+INGN0YLQvtC80YMg0YHRgtC+0LvQsdGG0YNcbiAgICovXG4gIGdyb3VwQnk6IGJvb2xlYW47XG4gIC8qKlxuICAgKiDQn9C+0YDRj9C00L7QuiDQs9GA0YPQv9C/0LjRgNC+0LLQutC4XG4gICAqL1xuICBncm91cGluZ09yZGVyID0gMDtcbiAgLyoqXG4gICAqXG4gICAqL1xuICBncm91cEJ5Rm46ICgocm93OiBUYWJsZVJvdzxhbnk+KSA9PiBzdHJpbmcpIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICog0JTQvtGH0LXRgNC90LjQtSDQutC+0LvQvtC90LrQuFxuICAgKi9cbiAgb3ZlcnJpZGUgY29sdW1uczogVGFibGVDb2x1bW5bXTtcblxuICAvKipcbiAgICogQWdncmVnYXRlIHR5cGVcbiAgICovXG4gIGFnZ3JlZ2F0ZTogQWdncmVnYXRpb25UeXBlO1xuXG4gIC8qKlxuICAgKiDQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INC30LDQv9C40YHQuFxuICAgKi9cbiAgZGVmYXVsdFZhbHVlOiBhbnk7XG5cbiAgLyoqXG4gICAqINCX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0L/RgNC4INGB0L7Qt9C00LDQvdC40Lgg0LfQsNC/0LjRgdC4XG4gICAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiDQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INC30LDQv9C40YHQuFxuICAgKi9cbiAgbWluVmFsdWU6IG51bWJlcjtcblxuICAvKipcbiAgICog0J/QvtC70LUg0L7QsdGP0LfQsNGC0LXQu9GM0L3QviDQtNC70Y8g0LfQsNC/0L7Qu9C90LXQvdC40Y9cbiAgICovXG4gIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiDQmNC90LjRhtC40LDQu9C40LfQsNGG0LjRjyDQuNC3INCw0L3QvtC90LjQvNC90L7Qs9C+INC+0LHRitC10LrRgtCwXG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zPzoge1xuICAgIHdpZHRoPzogbnVtYmVyO1xuICAgIGZsZXg/OiBudW1iZXI7XG4gICAgc29ydE9yZGVyPzogbnVtYmVyO1xuICAgIGxvY2tlZD86IGJvb2xlYW47XG4gICAgbmFtZT86IHN0cmluZztcbiAgICBwYXJlbnROYW1lPzogc3RyaW5nO1xuICAgIGNhcHRpb24/OiBzdHJpbmc7XG4gICAgaGludD86IHN0cmluZztcbiAgICB1bml0Pzogc3RyaW5nO1xuICAgIHNvcnRhYmxlPzogYm9vbGVhbjtcbiAgICBzb3J0RmllbGQ/OiBzdHJpbmc7XG4gICAgZmlsdGVyYWJsZT86IGJvb2xlYW47XG4gICAgZmlsdGVyRmllbGQ/OiBzdHJpbmc7XG4gICAgZmlsdGVyVHlwZT86IEZpbHRlclR5cGUgfCBudWxsO1xuICAgIHN0cmluZ0ZpbHRlclR5cGU/OiBTdHJpbmdGaWx0ZXJUeXBlO1xuICAgIGxpc3RGaWx0ZXJUeXBlPzogTGlzdEZpbHRlclR5cGU7XG4gICAgc3RyaWN0PzogYm9vbGVhbjtcbiAgICBoZWFkQ2VsbENsYXNzPzogc3RyaW5nW107XG4gICAgY2VsbENsYXNzPzogc3RyaW5nW107XG4gICAgZGF0YT86IGFueTtcbiAgICBlZGl0YWJsZT86IGJvb2xlYW47XG4gICAgb2JqZWN0VHlwZT86IGJvb2xlYW47XG4gICAgY2VsbENvbXBvbmVudD86IGFueTtcbiAgICBoZWFkQ2VsbENvbXBvbmVudD86IGFueTtcbiAgICBoZWFkRHJvcGRvd25UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG4gICAgZmlsdGVyQ29tcG9uZW50PzogYW55O1xuICAgIGdyb3VwQnk/OiBib29sZWFuO1xuICAgIGdyb3VwaW5nT3JkZXI/OiBudW1iZXI7XG4gICAgZ3JvdXBCeUZuPzogKHJvdzogVGFibGVSb3c8YW55PikgPT4gc3RyaW5nO1xuICAgIGNvbHVtbnM/OiBhbnlbXTtcbiAgICBhZ2dyZWdhdGU/OiBBZ2dyZWdhdGlvblR5cGU7XG4gICAgZGVmYXVsdFZhbHVlPzogYW55O1xuICAgIG1heFZhbHVlPzogbnVtYmVyO1xuICAgIG1pblZhbHVlPzogbnVtYmVyO1xuICAgIHJlcXVpcmVkPzogYm9vbGVhbjtcbiAgfSkge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuICAgIHRoaXMud2lkdGggPSBvcHRpb25zPy53aWR0aCA/PyAxNTA7XG4gICAgdGhpcy5mbGV4ID0gb3B0aW9ucz8uZmxleCA/PyAwO1xuICAgIHRoaXMuaGVhZENlbGxDbGFzcyA9IG9wdGlvbnM/LmhlYWRDZWxsQ2xhc3MgPz8gW107XG4gICAgdGhpcy5jZWxsQ2xhc3MgPSBvcHRpb25zPy5jZWxsQ2xhc3MgPz8gW107XG4gICAgdGhpcy5sb2NrZWQgPSBvcHRpb25zPy5sb2NrZWQgPz8gZmFsc2U7XG4gICAgdGhpcy5wYXJlbnROYW1lID0gb3B0aW9ucz8ucGFyZW50TmFtZTtcbiAgICB0aGlzLnVuaXQgPSBvcHRpb25zPy51bml0ID8/ICcnO1xuICAgIHRoaXMuZGF0YSA9IG9wdGlvbnM/LmRhdGE7XG4gICAgdGhpcy5lZGl0YWJsZSA9IG9wdGlvbnM/LmVkaXRhYmxlID8/IHRydWU7XG4gICAgdGhpcy5ncm91cEJ5ID0gb3B0aW9ucz8uZ3JvdXBCeSA/PyBmYWxzZTtcbiAgICB0aGlzLmdyb3VwaW5nT3JkZXIgPSBvcHRpb25zPy5ncm91cGluZ09yZGVyID8/IDA7XG4gICAgdGhpcy5ncm91cEJ5Rm4gPSBvcHRpb25zPy5ncm91cEJ5Rm47XG4gICAgdGhpcy5oZWFkQ2VsbENvbXBvbmVudCA9IG9wdGlvbnM/LmhlYWRDZWxsQ29tcG9uZW50O1xuICAgIHRoaXMuaGVhZERyb3Bkb3duVGVtcGxhdGUgPSBvcHRpb25zPy5oZWFkRHJvcGRvd25UZW1wbGF0ZTtcbiAgICB0aGlzLmNlbGxDb21wb25lbnQgPSBvcHRpb25zPy5jZWxsQ29tcG9uZW50O1xuICAgIHRoaXMuYWdncmVnYXRlID0gb3B0aW9ucz8uYWdncmVnYXRlO1xuICAgIHRoaXMuZGVmYXVsdFZhbHVlID0gb3B0aW9ucz8uZGVmYXVsdFZhbHVlO1xuICAgIHRoaXMubWF4VmFsdWUgPSBvcHRpb25zPy5tYXhWYWx1ZTtcbiAgICB0aGlzLm1pblZhbHVlID0gb3B0aW9ucz8ubWluVmFsdWU7XG4gICAgdGhpcy5yZXF1aXJlZCA9IG9wdGlvbnM/LnJlcXVpcmVkO1xuICAgIHRoaXMuY29sdW1ucyA9IG9wdGlvbnM/LmNvbHVtbnM/Lm1hcCgoeCkgPT4gbmV3IFRhYmxlQ29sdW1uKHgpKSA/PyBbXTtcbiAgfVxufVxuIl19