@skyux/ag-grid 11.9.0 → 11.11.0

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 (41) hide show
  1. package/documentation.json +766 -766
  2. package/esm2022/lib/modules/ag-grid/ag-grid-adapter.service.mjs +3 -3
  3. package/esm2022/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +8 -15
  4. package/esm2022/lib/modules/ag-grid/ag-grid-row-delete.component.mjs +3 -3
  5. package/esm2022/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +3 -3
  6. package/esm2022/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +3 -3
  7. package/esm2022/lib/modules/ag-grid/ag-grid.module.mjs +4 -4
  8. package/esm2022/lib/modules/ag-grid/ag-grid.service.mjs +10 -17
  9. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +3 -3
  10. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.mjs +4 -4
  11. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +3 -3
  12. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.mjs +4 -4
  13. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +3 -3
  14. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.mjs +4 -4
  15. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +3 -3
  16. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.module.mjs +4 -4
  17. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +3 -3
  18. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.mjs +4 -4
  19. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +3 -3
  20. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.mjs +4 -4
  21. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +3 -3
  22. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +3 -3
  23. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.module.mjs +4 -4
  24. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +3 -3
  25. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.module.mjs +4 -4
  26. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +3 -3
  27. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.module.mjs +4 -4
  28. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-template/cell-renderer-template.component.mjs +3 -3
  29. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +3 -3
  30. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.module.mjs +4 -4
  31. package/esm2022/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +3 -3
  32. package/esm2022/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator.module.mjs +4 -4
  33. package/esm2022/lib/modules/ag-grid/header/header-group.component.mjs +3 -3
  34. package/esm2022/lib/modules/ag-grid/header/header.component.mjs +3 -3
  35. package/esm2022/lib/modules/ag-grid/loading/loading.component.mjs +3 -3
  36. package/esm2022/lib/modules/ag-grid/types/header-group-info.mjs +3 -3
  37. package/esm2022/lib/modules/ag-grid/types/header-info.mjs +3 -3
  38. package/esm2022/lib/modules/shared/sky-ag-grid-resources.module.mjs +4 -4
  39. package/fesm2022/skyux-ag-grid.mjs +134 -148
  40. package/fesm2022/skyux-ag-grid.mjs.map +1 -1
  41. package/package.json +18 -18
@@ -48,10 +48,10 @@ export class SkyAgGridAdapterService {
48
48
  focusableChildren[0].focus();
49
49
  }
50
50
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridAdapterService, deps: [{ token: i1.SkyCoreAdapterService }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridAdapterService, providedIn: 'root' }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridAdapterService, deps: [{ token: i1.SkyCoreAdapterService }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridAdapterService, providedIn: 'root' }); }
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridAdapterService, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridAdapterService, decorators: [{
55
55
  type: Injectable,
56
56
  args: [{
57
57
  providedIn: 'root',
@@ -104,8 +104,8 @@ export class SkyAgGridDataManagerAdapterDirective {
104
104
  if (agGrid) {
105
105
  agGrid.gridReady.pipe(takeUntil(this.#ngUnsubscribe)).subscribe(() => {
106
106
  if (this.#viewConfig && this.viewId) {
107
- this.#viewConfig.onSelectAllClick = this.#selectAll.bind(this);
108
- this.#viewConfig.onClearAllClick = this.#clearAll.bind(this);
107
+ this.#viewConfig.onSelectAllClick = () => agGrid.api.selectAll();
108
+ this.#viewConfig.onClearAllClick = () => agGrid.api.deselectAll();
109
109
  this.#dataManagerSvc.updateViewConfig(this.#viewConfig);
110
110
  this.#dataStateSub = this.#dataManagerSvc
111
111
  .getDataStateUpdates(this.#viewConfig.id)
@@ -168,7 +168,8 @@ export class SkyAgGridDataManagerAdapterDirective {
168
168
  });
169
169
  agGrid.sortChanged.pipe(takeUntil(this.#ngUnsubscribe)).subscribe(() => {
170
170
  const gridColumnStates = agGrid.api.getColumnState();
171
- const activeSortColumnState = gridColumnStates?.find((aGridColumnState) => aGridColumnState.sortIndex === 0);
171
+ const activeSortColumnState = gridColumnStates?.find((aGridColumnState) => aGridColumnState.sortIndex === 0) ??
172
+ gridColumnStates?.find((aGridColumnState) => aGridColumnState.sort);
172
173
  if (this.#viewConfig && this.#currentDataState) {
173
174
  if (activeSortColumnState) {
174
175
  const activeSortColumnDef = agGrid.api.getColumnDef(activeSortColumnState.colId);
@@ -243,14 +244,6 @@ export class SkyAgGridDataManagerAdapterDirective {
243
244
  });
244
245
  }
245
246
  }
246
- #selectAll() {
247
- const agGrid = this.agGridList?.first;
248
- agGrid?.api.selectAll();
249
- }
250
- #clearAll() {
251
- const agGrid = this.agGridList?.first;
252
- agGrid?.api.deselectAll();
253
- }
254
247
  #updateColumnWidth(colId, width) {
255
248
  const viewState = this.viewId && this.#currentDataState?.getViewStateById(this.viewId);
256
249
  if (viewState && this.viewId && this.#currentDataState) {
@@ -298,10 +291,10 @@ export class SkyAgGridDataManagerAdapterDirective {
298
291
  }
299
292
  return gridColumnLimits;
300
293
  }
301
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Directive }); }
302
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: SkyAgGridDataManagerAdapterDirective, selector: "[skyAgGridDataManagerAdapter]", inputs: { viewId: "viewId" }, queries: [{ propertyName: "agGridList", predicate: AgGridAngular, descendants: true }, { propertyName: "skyAgGridWrapperList", predicate: SkyAgGridWrapperComponent, descendants: true }], ngImport: i0 }); }
294
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Directive }); }
295
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: SkyAgGridDataManagerAdapterDirective, selector: "[skyAgGridDataManagerAdapter]", inputs: { viewId: "viewId" }, queries: [{ propertyName: "agGridList", predicate: AgGridAngular, descendants: true }, { propertyName: "skyAgGridWrapperList", predicate: SkyAgGridWrapperComponent, descendants: true }], ngImport: i0 }); }
303
296
  }
304
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, decorators: [{
297
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridDataManagerAdapterDirective, decorators: [{
305
298
  type: Directive,
306
299
  args: [{
307
300
  selector: '[skyAgGridDataManagerAdapter]',
@@ -315,4 +308,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
315
308
  type: ContentChildren,
316
309
  args: [SkyAgGridWrapperComponent, { descendants: true }]
317
310
  }] } });
318
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC1kYXRhLW1hbmFnZXItYWRhcHRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLWRhdGEtbWFuYWdlci1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsZUFBZSxFQUNmLFNBQVMsRUFDVCxLQUFLLEVBSUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVF4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFVaEQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBRXhFOztHQUVHO0FBSUgsTUFBTSxPQUFPLG9DQUFvQztJQVkvQyxjQUFjLENBQTRCO0lBQzFDLGtCQUFrQixHQUF3QixDQUFDLENBQUM7SUFDNUMsaUJBQWlCLENBQWtDO0lBQ25ELHdCQUF3QixDQUF3QztJQUNoRSxhQUFhLENBQTJCO0lBQ3hDLFdBQVcsQ0FBZ0M7SUFDM0MsY0FBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDckMsZUFBZSxDQUFvQjtJQUNuQyxlQUFlLENBQXdCO0lBRTlCLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTNELFlBQ0UsY0FBaUMsRUFDakMsY0FBcUM7UUFFckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxj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QjtzQkFEMUIsZUFBZTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cywgU2t5TWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gIFNreURhdGFNYW5hZ2VyU3RhdGUsXG4gIFNreURhdGFWaWV3Q29sdW1uV2lkdGhzLFxuICBTa3lEYXRhVmlld0NvbmZpZyxcbn0gZnJvbSAnQHNreXV4L2RhdGEtbWFuYWdlcic7XG5cbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHtcbiAgQ29sdW1uTW92ZWRFdmVudCxcbiAgQ29sdW1uUmVzaXplZEV2ZW50LFxuICBDb2x1bW5TdGF0ZSxcbiAgRHJhZ1N0b3BwZWRFdmVudCxcbiAgR3JpZEFwaSxcbiAgSUNvbHVtbkxpbWl0LFxuICBSb3dTZWxlY3RlZEV2ZW50LFxufSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreUFnR3JpZERhdGFNYW5hZ2VyQWRhcHRlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBZ0dyaWREYXRhTWFuYWdlckFkYXB0ZXJEaXJlY3RpdmVcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdFxue1xuICBASW5wdXQoKVxuICBwdWJsaWMgdmlld0lkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBZ0dyaWRBbmd1bGFyLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBhZ0dyaWRMaXN0OiBRdWVyeUxpc3Q8QWdHcmlkQW5ndWxhcj4gfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBza3lBZ0dyaWRXcmFwcGVyTGlzdDogUXVlcnlMaXN0PFNreUFnR3JpZFdyYXBwZXJDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICNjdXJyZW50QWdHcmlkOiBBZ0dyaWRBbmd1bGFyIHwgdW5kZWZpbmVkO1xuICAjY3VycmVudEJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHMgPSAzO1xuICAjY3VycmVudERhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSB8IHVuZGVmaW5lZDtcbiAgI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyOiBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuICAjZGF0YVN0YXRlU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICN2aWV3Q29uZmlnOiBTa3lEYXRhVmlld0NvbmZpZyB8IHVuZGVmaW5lZDtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuICAjZGF0YU1hbmFnZXJTdmM6IFNreURhdGFNYW5hZ2VyU2VydmljZTtcblxuICByZWFkb25seSAjbWVkaWFRdWVyeVNlcnZpY2UgPSBpbmplY3QoU2t5TWVkaWFRdWVyeVNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBkYXRhTWFuYWdlclN2YzogU2t5RGF0YU1hbmFnZXJTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjID0gZGF0YU1hbmFnZXJTdmM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZpZXdJZCkge1xuICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMuc2V0Vmlld2tlZXBlckNsYXNzZXModGhpcy52aWV3SWQsIFsnLmFnLWhlYWRlciddKTtcbiAgICAgIHRoaXMuI3ZpZXdDb25maWcgPSB0aGlzLiNkYXRhTWFuYWdlclN2Yy5nZXRWaWV3QnlJZCh0aGlzLnZpZXdJZCk7XG5cbiAgICAgIHRoaXMuI2NoZWNrRm9yQWdHcmlkKCk7XG4gICAgICB0aGlzLiNjaGVja0ZvclNreUFnR3JpZFdyYXBwZXIoKTtcblxuICAgICAgdGhpcy5hZ0dyaWRMaXN0Py5jaGFuZ2VzXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLiNjaGVja0ZvckFnR3JpZCgpKTtcblxuICAgICAgdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdD8uY2hhbmdlc1xuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy4jY2hlY2tGb3JTa3lBZ0dyaWRXcmFwcGVyKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNtZWRpYVF1ZXJ5U2VydmljZS5zdWJzY3JpYmUoKGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHMpID0+IHtcbiAgICAgIHRoaXMuI2N1cnJlbnRCcmVha3BvaW50ID0gYnJlYWtwb2ludDtcbiAgICAgIHRoaXMuI2FwcGx5Q29sdW1uV2lkdGhzKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2NoZWNrRm9yQWdHcmlkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFnR3JpZExpc3QpIHtcbiAgICAgIGNvbnN0IGFnR3JpZENvdW50ID0gdGhpcy5hZ0dyaWRMaXN0Lmxlbmd0aDtcblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChhZ0dyaWRDb3VudCA9PT0gMCkge1xuICAgICAgICB0aGlzLiN1bnJlZ2lzdGVyQWdHcmlkKCk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuYWdHcmlkTGlzdC5maXJzdCAhPT0gdGhpcy4jY3VycmVudEFnR3JpZCkge1xuICAgICAgICB0aGlzLiNyZWdpc3RlckFnR3JpZCgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoYWdHcmlkQ291bnQgPiAxKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAnTW9yZSB0aGFuIG9uZSBhZy1ncmlkIGNoaWxkIGNvbXBvbmVudCB3YXMgZm91bmQuIFVzaW5nIHRoZSBmaXJzdCBhZy1HcmlkLicsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2NoZWNrRm9yU2t5QWdHcmlkV3JhcHBlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdCkge1xuICAgICAgY29uc3Qgc2t5QWdHcmlkV3JhcHBlckNvdW50ID0gdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdC5sZW5ndGg7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoc2t5QWdHcmlkV3JhcHBlckNvdW50ID09PSAwKSB7XG4gICAgICAgIHRoaXMuI3VucmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICB0aGlzLnNreUFnR3JpZFdyYXBwZXJMaXN0LmZpcnN0ICE9PSB0aGlzLiNjdXJyZW50U2t5QWdHcmlkV3JhcHBlclxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuI3JlZ2lzdGVyU2t5QWdHcmlkV3JhcHBlcigpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc2t5QWdHcmlkV3JhcHBlckNvdW50ID4gMSkge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgJ01vcmUgdGhhbiBvbmUgYWctZ3JpZCBjaGlsZCBjb21wb25lbnQgd2FzIGZvdW5kLiBVc2luZyB0aGUgZmlyc3QgYWctR3JpZC4nLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN1bnJlZ2lzdGVyQWdHcmlkKCk6IHZvaWQge1xuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSB1bmRlZmluZWQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodGhpcy4jZGF0YVN0YXRlU3ViKSB7XG4gICAgICB0aGlzLiNkYXRhU3RhdGVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAjdW5yZWdpc3RlclNreUFnR3JpZFdyYXBwZXIoKTogdm9pZCB7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB1bmRlZmluZWQ7XG4gIH1cblxuICAjcmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk6IHZvaWQge1xuICAgIHRoaXMuI3VucmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB0aGlzLnNreUFnR3JpZFdyYXBwZXJMaXN0Py5maXJzdDtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyKSB7XG4gICAgICAgIHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyLnZpZXdrZWVwZXJDbGFzc2VzID0gW107XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAjcmVnaXN0ZXJBZ0dyaWQoKTogdm9pZCB7XG4gICAgdGhpcy4jdW5yZWdpc3RlckFnR3JpZCgpO1xuXG4gICAgY29uc3QgYWdHcmlkID0gdGhpcy5hZ0dyaWRMaXN0Py5maXJzdDtcblxuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSBhZ0dyaWQ7XG5cbiAgICBpZiAoYWdHcmlkKSB7XG4gICAgICBhZ0dyaWQuZ3JpZFJlYWR5LnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy4jdmlld0NvbmZpZyAmJiB0aGlzLnZpZXdJZCkge1xuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcub25TZWxlY3RBbGxDbGljayA9IHRoaXMuI3NlbGVjdEFsbC5iaW5kKHRoaXMpO1xuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcub25DbGVhckFsbENsaWNrID0gdGhpcy4jY2xlYXJBbGwuYmluZCh0aGlzKTtcbiAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVWaWV3Q29uZmlnKHRoaXMuI3ZpZXdDb25maWcpO1xuICAgICAgICAgIHRoaXMuI2RhdGFTdGF0ZVN1YiA9IHRoaXMuI2RhdGFNYW5hZ2VyU3ZjXG4gICAgICAgICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLiN2aWV3Q29uZmlnLmlkKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGF0YVN0YXRlOiBTa3lEYXRhTWFuYWdlclN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUgPSBkYXRhU3RhdGU7XG4gICAgICAgICAgICAgIHRoaXMuI2Rpc3BsYXlDb2x1bW5zKGRhdGFTdGF0ZSk7XG4gICAgICAgICAgICAgIHRoaXMuI2FwcGx5U29ydChkYXRhU3RhdGUpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoYWdHcmlkLmdyaWRPcHRpb25zPy5jb250ZXh0Py5lbmFibGVUb3BTY3JvbGwpIHtcbiAgICAgICAgICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjLnNldFZpZXdrZWVwZXJDbGFzc2VzKHRoaXMudmlld0lkLCBbXG4gICAgICAgICAgICAgICcuYWctaGVhZGVyJyxcbiAgICAgICAgICAgICAgJy5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsJyxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuI2FwcGx5Q29sdW1uV2lkdGhzKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBhZ0dyaWQuY29sdW1uTW92ZWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpLFxuICAgICAgICAgIGZpbHRlcihcbiAgICAgICAgICAgIChldmVudDogQ29sdW1uTW92ZWRFdmVudCkgPT5cbiAgICAgICAgICAgICAgIVtcbiAgICAgICAgICAgICAgICAnZ3JpZEluaXRpYWxpemluZycsXG4gICAgICAgICAgICAgICAgJ3VpQ29sdW1uUmVzaXplZCcsXG4gICAgICAgICAgICAgICAgJ3VpQ29sdW1uRHJhZ2dlZCcsXG4gICAgICAgICAgICAgICAgJ2FwaScsXG4gICAgICAgICAgICAgIF0uaW5jbHVkZXMoZXZlbnQuc291cmNlKSxcbiAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBDb2x1bW5Nb3ZlZEV2ZW50KSA9PiB7XG4gICAgICAgICAgdGhpcy4jdXBkYXRlQ29sdW1uc0luQ3VycmVudERhdGFTdGF0ZSh2YWx1ZS5hcGkpO1xuICAgICAgICB9KTtcblxuICAgICAgYWdHcmlkLmNvbHVtblJlc2l6ZWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpLFxuICAgICAgICAgIGZpbHRlcihcbiAgICAgICAgICAgIChldmVudDogQ29sdW1uUmVzaXplZEV2ZW50KSA9PiBldmVudC5zb3VyY2UgPT09ICd1aUNvbHVtblJlc2l6ZWQnLFxuICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IENvbHVtblJlc2l6ZWRFdmVudCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNvbElkID0gZXZlbnQuY29sdW1uPy5nZXRDb2xJZCgpO1xuICAgICAgICAgIGNvbnN0IHdpZHRoID0gZXZlbnQuY29sdW1uPy5nZXRBY3R1YWxXaWR0aCgpO1xuICAgICAgICAgIGlmIChjb2xJZCAmJiB3aWR0aCkge1xuICAgICAgICAgICAgdGhpcy4jdXBkYXRlQ29sdW1uV2lkdGgoY29sSWQsIHdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBhZ0dyaWQuZHJhZ1N0b3BwZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRHJhZ1N0b3BwZWRFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuI3VwZGF0ZUNvbHVtbnNJbkN1cnJlbnREYXRhU3RhdGUodmFsdWUuYXBpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgIGFnR3JpZC5yb3dTZWxlY3RlZFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBSb3dTZWxlY3RlZEV2ZW50KSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuI3ZpZXdDb25maWcgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZSkge1xuICAgICAgICAgICAgY29uc3Qgcm93ID0gZXZlbnQubm9kZTtcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkSWRzID0gdGhpcy4jY3VycmVudERhdGFTdGF0ZS5zZWxlY3RlZElkcyB8fCBbXTtcbiAgICAgICAgICAgIGNvbnN0IHJvd0luZGV4ID0gc2VsZWN0ZWRJZHMuaW5kZXhPZihyb3cuZGF0YS5pZCk7XG5cbiAgICAgICAgICAgIGlmIChyb3cuaXNTZWxlY3RlZCgpICYmIHJvd0luZGV4ID09PSAtMSkge1xuICAgICAgICAgICAgICBzZWxlY3RlZElkcy5wdXNoKHJvdy5kYXRhLmlkKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXJvdy5pc1NlbGVjdGVkKCkgJiYgcm93SW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgICAgIHNlbGVjdGVkSWRzLnNwbGljZShyb3dJbmRleCwgMSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuc2VsZWN0ZWRJZHMgPSBzZWxlY3RlZElkcztcbiAgICAgICAgICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjLnVwZGF0ZURhdGFTdGF0ZShcbiAgICAgICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZSxcbiAgICAgICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIGFnR3JpZC5zb3J0Q2hhbmdlZC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZ3JpZENvbHVtblN0YXRlczogQ29sdW1uU3RhdGVbXSA9IGFnR3JpZC5hcGkuZ2V0Q29sdW1uU3RhdGUoKTtcblxuICAgICAgICBjb25zdCBhY3RpdmVTb3J0Q29sdW1uU3RhdGUgPSBncmlkQ29sdW1uU3RhdGVzPy5maW5kKFxuICAgICAgICAgIChhR3JpZENvbHVtblN0YXRlKSA9PiBhR3JpZENvbHVtblN0YXRlLnNvcnRJbmRleCA9PT0gMCxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAodGhpcy4jdmlld0NvbmZpZyAmJiB0aGlzLiNjdXJyZW50RGF0YVN0YXRlKSB7XG4gICAgICAgICAgaWYgKGFjdGl2ZVNvcnRDb2x1bW5TdGF0ZSkge1xuICAgICAgICAgICAgY29uc3QgYWN0aXZlU29ydENvbHVtbkRlZiA9IGFnR3JpZC5hcGkuZ2V0Q29sdW1uRGVmKFxuICAgICAgICAgICAgICBhY3RpdmVTb3J0Q29sdW1uU3RhdGUuY29sSWQsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uID0ge1xuICAgICAgICAgICAgICBkZXNjZW5kaW5nOiBhY3RpdmVTb3J0Q29sdW1uU3RhdGUuc29ydCA9PT0gJ2Rlc2MnLFxuICAgICAgICAgICAgICBpZDogYWN0aXZlU29ydENvbHVtblN0YXRlLmNvbElkLFxuICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWU6IGFjdGl2ZVNvcnRDb2x1bW5EZWY/LmZpZWxkIHx8ICcnLFxuICAgICAgICAgICAgICBsYWJlbDogYWN0aXZlU29ydENvbHVtbkRlZj8uaGVhZGVyTmFtZSB8fCAnJyxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZSxcbiAgICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWQsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgI3VwZGF0ZUNvbHVtbnNJbkN1cnJlbnREYXRhU3RhdGUoYXBpOiBHcmlkQXBpKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI3ZpZXdDb25maWcgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZSkge1xuICAgICAgY29uc3QgY29sdW1uT3JkZXIgPSB0aGlzLiNnZXRDb2x1bW5PcmRlcihhcGkpO1xuXG4gICAgICBjb25zdCB2aWV3U3RhdGUgPSB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLmdldFZpZXdTdGF0ZUJ5SWQoXG4gICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWQsXG4gICAgICApO1xuXG4gICAgICBpZiAoXG4gICAgICAgIHZpZXdTdGF0ZSAmJlxuICAgICAgICAodmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcy5sZW5ndGggIT09IGNvbHVtbk9yZGVyLmxlbmd0aCB8fFxuICAgICAgICAgIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMuc29tZSgoY29sLCBpKSA9PiBjb2wgIT09IGNvbHVtbk9yZGVyW2ldKSlcbiAgICAgICkge1xuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gY29sdW1uT3JkZXI7XG5cbiAgICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KFxuICAgICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICAgIHZpZXdTdGF0ZSxcbiAgICAgICAgICApLFxuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWQsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2dldENvbHVtbk9yZGVyKGFwaTogR3JpZEFwaSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gYXBpXG4gICAgICAuZ2V0Q29sdW1uU3RhdGUoKVxuICAgICAgLmZpbHRlcigoc3RhdGUpID0+ICFzdGF0ZS5oaWRlKVxuICAgICAgLm1hcCgoc3RhdGUpID0+IHN0YXRlLmNvbElkKTtcbiAgfVxuXG4gICNkaXNwbGF5Q29sdW1ucyhkYXRhU3RhdGU6IFNreURhdGFNYW5hZ2VyU3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBhZ0dyaWQgPSB0aGlzLiNjdXJyZW50QWdHcmlkO1xuXG4gICAgaWYgKGFnR3JpZCAmJiB0aGlzLiN2aWV3Q29uZmlnKSB7XG4gICAgICBjb25zdCB2aWV3U3RhdGUgPSBkYXRhU3RhdGUuZ2V0Vmlld1N0YXRlQnlJZCh0aGlzLiN2aWV3Q29uZmlnLmlkKTtcbiAgICAgIGxldCBkaXNwbGF5ZWRDb2x1bW5JZHM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgICAgaWYgKHZpZXdTdGF0ZT8uZGlzcGxheWVkQ29sdW1uSWRzKSB7XG4gICAgICAgIGRpc3BsYXllZENvbHVtbklkcyA9IHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHM7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbHVtbk9yZGVyID0gdGhpcy4jZ2V0Q29sdW1uT3JkZXIoYWdHcmlkLmFwaSk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgZGlzcGxheWVkQ29sdW1uSWRzLmxlbmd0aCAhPT0gY29sdW1uT3JkZXIubGVuZ3RoIHx8XG4gICAgICAgIGRpc3BsYXllZENvbHVtbklkcy5zb21lKChjb2wsIGkpID0+IGNvbCAhPT0gY29sdW1uT3JkZXJbaV0pXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgaGlkZUNvbHVtbnMgPSBhZ0dyaWQuYXBpXG4gICAgICAgICAgLmdldENvbHVtblN0YXRlKClcbiAgICAgICAgICAubWFwKChjb2wpID0+IGNvbC5jb2xJZClcbiAgICAgICAgICAuZmlsdGVyKChjb2xJZCkgPT4gIWRpc3BsYXllZENvbHVtbklkcy5pbmNsdWRlcyhjb2xJZCkpO1xuXG4gICAgICAgIGFnR3JpZC5hcGkuc2V0Q29sdW1uc1Zpc2libGUoaGlkZUNvbHVtbnMsIGZhbHNlKTtcbiAgICAgICAgYWdHcmlkLmFwaS5zZXRDb2x1bW5zVmlzaWJsZShkaXNwbGF5ZWRDb2x1bW5JZHMsIHRydWUpO1xuICAgICAgICBhZ0dyaWQuYXBpLm1vdmVDb2x1bW5zKGRpc3BsYXllZENvbHVtbklkcywgMCk7XG4gICAgICAgIHRoaXMuI3JlbW92ZUNvbHVtbldpZHRocyhoaWRlQ29sdW1ucyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2FwcGx5U29ydChkYXRhU3RhdGU6IFNreURhdGFNYW5hZ2VyU3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBhZ0dyaWQgPSB0aGlzLiNjdXJyZW50QWdHcmlkO1xuICAgIGNvbnN0IGFjdGl2ZVNvcnQgPSBkYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbjtcblxuICAgIGlmIChhY3RpdmVTb3J0KSB7XG4gICAgICBhZ0dyaWQ/LmFwaS5hcHBseUNvbHVtblN0YXRlKHtcbiAgICAgICAgc3RhdGU6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBjb2xJZDogYWN0aXZlU29ydC5pZCxcbiAgICAgICAgICAgIHNvcnQ6IGFjdGl2ZVNvcnQuZGVzY2VuZGluZyA/ICdkZXNjJyA6ICdhc2MnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGRlZmF1bHRTdGF0ZTogeyBzb3J0OiBudWxsIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIGNvbnN0IGFnR3JpZCA9IHRoaXMuYWdHcmlkTGlzdD8uZmlyc3Q7XG4gICAgYWdHcmlkPy5hcGkuc2VsZWN0QWxsKCk7XG4gIH1cblxuICAjY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgY29uc3QgYWdHcmlkID0gdGhpcy5hZ0dyaWRMaXN0Py5maXJzdDtcbiAgICBhZ0dyaWQ/LmFwaS5kZXNlbGVjdEFsbCgpO1xuICB9XG5cbiAgI3VwZGF0ZUNvbHVtbldpZHRoKGNvbElkOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3U3RhdGUgPVxuICAgICAgdGhpcy52aWV3SWQgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZT8uZ2V0Vmlld1N0YXRlQnlJZCh0aGlzLnZpZXdJZCk7XG4gICAgaWYgKHZpZXdTdGF0ZSAmJiB0aGlzLnZpZXdJZCAmJiB0aGlzLiNjdXJyZW50RGF0YVN0YXRlKSB7XG4gICAgICBjb25zdCBjdXJyZW50V2lkdGhzID0gdmlld1N0YXRlPy5jb2x1bW5XaWR0aHM7XG4gICAgICBjb25zdCBicmVha3BvaW50TmFtZSA9XG4gICAgICAgIHRoaXMuI2N1cnJlbnRCcmVha3BvaW50ID09PSBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzID8gJ3hzJyA6ICdzbSc7XG5cbiAgICAgIGN1cnJlbnRXaWR0aHNbYnJlYWtwb2ludE5hbWVdW2NvbElkXSA9IHdpZHRoO1xuXG4gICAgICB2aWV3U3RhdGUuY29sdW1uV2lkdGhzID0gY3VycmVudFdpZHRocztcbiAgICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjLnVwZGF0ZURhdGFTdGF0ZShcbiAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZS5hZGRPclVwZGF0ZVZpZXcodGhpcy52aWV3SWQsIHZpZXdTdGF0ZSksXG4gICAgICAgIHRoaXMudmlld0lkLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAjcmVtb3ZlQ29sdW1uV2lkdGhzKGNvbElkczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3U3RhdGUgPVxuICAgICAgdGhpcy52aWV3SWQgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZT8uZ2V0Vmlld1N0YXRlQnlJZCh0aGlzLnZpZXdJZCk7XG5cbiAgICBpZiAodmlld1N0YXRlICYmIHRoaXMudmlld0lkICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRXaWR0aHMgPSB2aWV3U3RhdGU/LmNvbHVtbldpZHRocztcblxuICAgICAgZm9yIChjb25zdCBjb2xJZCBvZiBjb2xJZHMpIHtcbiAgICAgICAgZGVsZXRlIGN1cnJlbnRXaWR0aHNbJ3hzJ11bY29sSWRdO1xuICAgICAgICBkZWxldGUgY3VycmVudFdpZHRoc1snc20nXVtjb2xJZF07XG4gICAgICB9XG5cbiAgICAgIHZpZXdTdGF0ZS5jb2x1bW5XaWR0aHMgPSBjdXJyZW50V2lkdGhzO1xuICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyh0aGlzLnZpZXdJZCwgdmlld1N0YXRlKSxcbiAgICAgICAgdGhpcy52aWV3SWQsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gICNhcHBseUNvbHVtbldpZHRocygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuYWdHcmlkTGlzdD8uZmlyc3QgfHwgdGhpcy5hZ0dyaWRMaXN0LmZpcnN0LmFwaS5pc0Rlc3Ryb3llZCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgdmlld1N0YXRlID1cbiAgICAgIHRoaXMudmlld0lkICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGU/LmdldFZpZXdTdGF0ZUJ5SWQodGhpcy52aWV3SWQpO1xuXG4gICAgaWYgKHZpZXdTdGF0ZSAmJiB2aWV3U3RhdGUuY29sdW1uV2lkdGhzICYmIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMpIHtcbiAgICAgIGNvbnN0IGJyZWFrcG9pbnROYW1lID1cbiAgICAgICAgdGhpcy4jY3VycmVudEJyZWFrcG9pbnQgPT09IFNreU1lZGlhQnJlYWtwb2ludHMueHMgPyAneHMnIDogJ3NtJztcbiAgICAgIGNvbnN0IGNvbHVtbkxpbWl0cyA9IHRoaXMuI2dldEdyaWRDb2x1bW5MaW1pdHMoXG4gICAgICAgIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMsXG4gICAgICAgIHZpZXdTdGF0ZS5jb2x1bW5XaWR0aHMsXG4gICAgICAgIGJyZWFrcG9pbnROYW1lLFxuICAgICAgKTtcbiAgICAgIHRoaXMuYWdHcmlkTGlzdC5maXJzdC5hcGkuc2l6ZUNvbHVtbnNUb0ZpdCh7IGNvbHVtbkxpbWl0cyB9KTtcbiAgICB9XG4gIH1cblxuICAjZ2V0R3JpZENvbHVtbkxpbWl0cyhcbiAgICBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSxcbiAgICBjdXJyZW50V2lkdGhzOiBTa3lEYXRhVmlld0NvbHVtbldpZHRocyxcbiAgICBicmVha3BvaW50TmFtZToga2V5b2YgU2t5RGF0YVZpZXdDb2x1bW5XaWR0aHMsXG4gICk6IElDb2x1bW5MaW1pdFtdIHtcbiAgICBjb25zdCBncmlkQ29sdW1uTGltaXRzOiBJQ29sdW1uTGltaXRbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBjb2x1bW4gb2YgZGlzcGxheWVkQ29sdW1ucykge1xuICAgICAgY29uc3QgY29sdW1uV2lkdGggPSBjdXJyZW50V2lkdGhzW2JyZWFrcG9pbnROYW1lXVtjb2x1bW5dO1xuXG4gICAgICBpZiAoY29sdW1uV2lkdGgpIHtcbiAgICAgICAgZ3JpZENvbHVtbkxpbWl0cy5wdXNoKHtcbiAgICAgICAgICBrZXk6IGNvbHVtbixcbiAgICAgICAgICBtaW5XaWR0aDogY29sdW1uV2lkdGgsXG4gICAgICAgICAgbWF4V2lkdGg6IGNvbHVtbldpZHRoLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGdyaWRDb2x1bW5MaW1pdHM7XG4gIH1cbn1cbiJdfQ==
311
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWctZ3JpZC1kYXRhLW1hbmFnZXItYWRhcHRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9hZy1ncmlkLWRhdGEtbWFuYWdlci1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsZUFBZSxFQUNmLFNBQVMsRUFDVCxLQUFLLEVBSUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVF4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFVaEQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBRXhFOztHQUVHO0FBSUgsTUFBTSxPQUFPLG9DQUFvQztJQVkvQyxjQUFjLENBQTRCO0lBQzFDLGtCQUFrQixHQUF3QixDQUFDLENBQUM7SUFDNUMsaUJBQWlCLENBQWtDO0lBQ25ELHdCQUF3QixDQUF3QztJQUNoRSxhQUFhLENBQTJCO0lBQ3hDLFdBQVcsQ0FBZ0M7SUFDM0MsY0FBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDckMsZUFBZSxDQUFvQjtJQUNuQyxlQUFlLENBQXdCO0lBRTlCLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTNELFlBQ0UsY0FBaUMsRUFDakMsY0FBcUM7UUFFckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxj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QkFBb0IsQ0FDNUMsU0FBUyxDQUFDLGtCQUFrQixFQUM1QixTQUFTLENBQUMsWUFBWSxFQUN0QixjQUFjLENBQ2YsQ0FBQztZQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDL0QsQ0FBQztJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FDbEIsZ0JBQTBCLEVBQzFCLGFBQXNDLEVBQ3RDLGNBQTZDO1FBRTdDLE1BQU0sZ0JBQWdCLEdBQW1CLEVBQUUsQ0FBQztRQUU1QyxLQUFLLE1BQU0sTUFBTSxJQUFJLGdCQUFnQixFQUFFLENBQUM7WUFDdEMsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRTFELElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2hCLGdCQUFnQixDQUFDLElBQUksQ0FBQztvQkFDcEIsR0FBRyxFQUFFLE1BQU07b0JBQ1gsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFFBQVEsRUFBRSxXQUFXO2lCQUN0QixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQzs4R0EzWlUsb0NBQW9DO2tHQUFwQyxvQ0FBb0MsOEhBTTlCLGFBQWEsMEVBR2IseUJBQXlCOzsyRkFUL0Isb0NBQW9DO2tCQUhoRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7aUJBQzFDOzBIQUtRLE1BQU07c0JBRFosS0FBSztnQkFJQyxVQUFVO3NCQURoQixlQUFlO3VCQUFDLGFBQWEsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSTlDLG9CQUFvQjtzQkFEMUIsZUFBZTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cywgU2t5TWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gIFNreURhdGFNYW5hZ2VyU3RhdGUsXG4gIFNreURhdGFWaWV3Q29sdW1uV2lkdGhzLFxuICBTa3lEYXRhVmlld0NvbmZpZyxcbn0gZnJvbSAnQHNreXV4L2RhdGEtbWFuYWdlcic7XG5cbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHtcbiAgQ29sdW1uTW92ZWRFdmVudCxcbiAgQ29sdW1uUmVzaXplZEV2ZW50LFxuICBDb2x1bW5TdGF0ZSxcbiAgRHJhZ1N0b3BwZWRFdmVudCxcbiAgR3JpZEFwaSxcbiAgSUNvbHVtbkxpbWl0LFxuICBSb3dTZWxlY3RlZEV2ZW50LFxufSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hZy1ncmlkLXdyYXBwZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreUFnR3JpZERhdGFNYW5hZ2VyQWRhcHRlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBZ0dyaWREYXRhTWFuYWdlckFkYXB0ZXJEaXJlY3RpdmVcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdFxue1xuICBASW5wdXQoKVxuICBwdWJsaWMgdmlld0lkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBZ0dyaWRBbmd1bGFyLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBhZ0dyaWRMaXN0OiBRdWVyeUxpc3Q8QWdHcmlkQW5ndWxhcj4gfCB1bmRlZmluZWQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBza3lBZ0dyaWRXcmFwcGVyTGlzdDogUXVlcnlMaXN0PFNreUFnR3JpZFdyYXBwZXJDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICNjdXJyZW50QWdHcmlkOiBBZ0dyaWRBbmd1bGFyIHwgdW5kZWZpbmVkO1xuICAjY3VycmVudEJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHMgPSAzO1xuICAjY3VycmVudERhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSB8IHVuZGVmaW5lZDtcbiAgI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyOiBTa3lBZ0dyaWRXcmFwcGVyQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuICAjZGF0YVN0YXRlU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICN2aWV3Q29uZmlnOiBTa3lEYXRhVmlld0NvbmZpZyB8IHVuZGVmaW5lZDtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuICAjZGF0YU1hbmFnZXJTdmM6IFNreURhdGFNYW5hZ2VyU2VydmljZTtcblxuICByZWFkb25seSAjbWVkaWFRdWVyeVNlcnZpY2UgPSBpbmplY3QoU2t5TWVkaWFRdWVyeVNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBkYXRhTWFuYWdlclN2YzogU2t5RGF0YU1hbmFnZXJTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjID0gZGF0YU1hbmFnZXJTdmM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZpZXdJZCkge1xuICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMuc2V0Vmlld2tlZXBlckNsYXNzZXModGhpcy52aWV3SWQsIFsnLmFnLWhlYWRlciddKTtcbiAgICAgIHRoaXMuI3ZpZXdDb25maWcgPSB0aGlzLiNkYXRhTWFuYWdlclN2Yy5nZXRWaWV3QnlJZCh0aGlzLnZpZXdJZCk7XG5cbiAgICAgIHRoaXMuI2NoZWNrRm9yQWdHcmlkKCk7XG4gICAgICB0aGlzLiNjaGVja0ZvclNreUFnR3JpZFdyYXBwZXIoKTtcblxuICAgICAgdGhpcy5hZ0dyaWRMaXN0Py5jaGFuZ2VzXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLiNjaGVja0ZvckFnR3JpZCgpKTtcblxuICAgICAgdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdD8uY2hhbmdlc1xuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy4jY2hlY2tGb3JTa3lBZ0dyaWRXcmFwcGVyKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNtZWRpYVF1ZXJ5U2VydmljZS5zdWJzY3JpYmUoKGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHMpID0+IHtcbiAgICAgIHRoaXMuI2N1cnJlbnRCcmVha3BvaW50ID0gYnJlYWtwb2ludDtcbiAgICAgIHRoaXMuI2FwcGx5Q29sdW1uV2lkdGhzKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2NoZWNrRm9yQWdHcmlkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFnR3JpZExpc3QpIHtcbiAgICAgIGNvbnN0IGFnR3JpZENvdW50ID0gdGhpcy5hZ0dyaWRMaXN0Lmxlbmd0aDtcblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChhZ0dyaWRDb3VudCA9PT0gMCkge1xuICAgICAgICB0aGlzLiN1bnJlZ2lzdGVyQWdHcmlkKCk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuYWdHcmlkTGlzdC5maXJzdCAhPT0gdGhpcy4jY3VycmVudEFnR3JpZCkge1xuICAgICAgICB0aGlzLiNyZWdpc3RlckFnR3JpZCgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoYWdHcmlkQ291bnQgPiAxKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAnTW9yZSB0aGFuIG9uZSBhZy1ncmlkIGNoaWxkIGNvbXBvbmVudCB3YXMgZm91bmQuIFVzaW5nIHRoZSBmaXJzdCBhZy1HcmlkLicsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2NoZWNrRm9yU2t5QWdHcmlkV3JhcHBlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdCkge1xuICAgICAgY29uc3Qgc2t5QWdHcmlkV3JhcHBlckNvdW50ID0gdGhpcy5za3lBZ0dyaWRXcmFwcGVyTGlzdC5sZW5ndGg7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoc2t5QWdHcmlkV3JhcHBlckNvdW50ID09PSAwKSB7XG4gICAgICAgIHRoaXMuI3VucmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICB0aGlzLnNreUFnR3JpZFdyYXBwZXJMaXN0LmZpcnN0ICE9PSB0aGlzLiNjdXJyZW50U2t5QWdHcmlkV3JhcHBlclxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuI3JlZ2lzdGVyU2t5QWdHcmlkV3JhcHBlcigpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc2t5QWdHcmlkV3JhcHBlckNvdW50ID4gMSkge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgJ01vcmUgdGhhbiBvbmUgYWctZ3JpZCBjaGlsZCBjb21wb25lbnQgd2FzIGZvdW5kLiBVc2luZyB0aGUgZmlyc3QgYWctR3JpZC4nLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN1bnJlZ2lzdGVyQWdHcmlkKCk6IHZvaWQge1xuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSB1bmRlZmluZWQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodGhpcy4jZGF0YVN0YXRlU3ViKSB7XG4gICAgICB0aGlzLiNkYXRhU3RhdGVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAjdW5yZWdpc3RlclNreUFnR3JpZFdyYXBwZXIoKTogdm9pZCB7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB1bmRlZmluZWQ7XG4gIH1cblxuICAjcmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk6IHZvaWQge1xuICAgIHRoaXMuI3VucmVnaXN0ZXJTa3lBZ0dyaWRXcmFwcGVyKCk7XG4gICAgdGhpcy4jY3VycmVudFNreUFnR3JpZFdyYXBwZXIgPSB0aGlzLnNreUFnR3JpZFdyYXBwZXJMaXN0Py5maXJzdDtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyKSB7XG4gICAgICAgIHRoaXMuI2N1cnJlbnRTa3lBZ0dyaWRXcmFwcGVyLnZpZXdrZWVwZXJDbGFzc2VzID0gW107XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAjcmVnaXN0ZXJBZ0dyaWQoKTogdm9pZCB7XG4gICAgdGhpcy4jdW5yZWdpc3RlckFnR3JpZCgpO1xuXG4gICAgY29uc3QgYWdHcmlkID0gdGhpcy5hZ0dyaWRMaXN0Py5maXJzdDtcblxuICAgIHRoaXMuI2N1cnJlbnRBZ0dyaWQgPSBhZ0dyaWQ7XG5cbiAgICBpZiAoYWdHcmlkKSB7XG4gICAgICBhZ0dyaWQuZ3JpZFJlYWR5LnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy4jdmlld0NvbmZpZyAmJiB0aGlzLnZpZXdJZCkge1xuICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcub25TZWxlY3RBbGxDbGljayA9ICgpID0+IGFnR3JpZC5hcGkuc2VsZWN0QWxsKCk7XG4gICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5vbkNsZWFyQWxsQ2xpY2sgPSAoKSA9PiBhZ0dyaWQuYXBpLmRlc2VsZWN0QWxsKCk7XG4gICAgICAgICAgdGhpcy4jZGF0YU1hbmFnZXJTdmMudXBkYXRlVmlld0NvbmZpZyh0aGlzLiN2aWV3Q29uZmlnKTtcbiAgICAgICAgICB0aGlzLiNkYXRhU3RhdGVTdWIgPSB0aGlzLiNkYXRhTWFuYWdlclN2Y1xuICAgICAgICAgICAgLmdldERhdGFTdGF0ZVVwZGF0ZXModGhpcy4jdmlld0NvbmZpZy5pZClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlID0gZGF0YVN0YXRlO1xuICAgICAgICAgICAgICB0aGlzLiNkaXNwbGF5Q29sdW1ucyhkYXRhU3RhdGUpO1xuICAgICAgICAgICAgICB0aGlzLiNhcHBseVNvcnQoZGF0YVN0YXRlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKGFnR3JpZC5ncmlkT3B0aW9ucz8uY29udGV4dD8uZW5hYmxlVG9wU2Nyb2xsKSB7XG4gICAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy5zZXRWaWV3a2VlcGVyQ2xhc3Nlcyh0aGlzLnZpZXdJZCwgW1xuICAgICAgICAgICAgICAnLmFnLWhlYWRlcicsXG4gICAgICAgICAgICAgICcuYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbCcsXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLiNhcHBseUNvbHVtbldpZHRocygpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgYWdHcmlkLmNvbHVtbk1vdmVkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAoZXZlbnQ6IENvbHVtbk1vdmVkRXZlbnQpID0+XG4gICAgICAgICAgICAgICFbXG4gICAgICAgICAgICAgICAgJ2dyaWRJbml0aWFsaXppbmcnLFxuICAgICAgICAgICAgICAgICd1aUNvbHVtblJlc2l6ZWQnLFxuICAgICAgICAgICAgICAgICd1aUNvbHVtbkRyYWdnZWQnLFxuICAgICAgICAgICAgICAgICdhcGknLFxuICAgICAgICAgICAgICBdLmluY2x1ZGVzKGV2ZW50LnNvdXJjZSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogQ29sdW1uTW92ZWRFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuI3VwZGF0ZUNvbHVtbnNJbkN1cnJlbnREYXRhU3RhdGUodmFsdWUuYXBpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgIGFnR3JpZC5jb2x1bW5SZXNpemVkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAoZXZlbnQ6IENvbHVtblJlc2l6ZWRFdmVudCkgPT4gZXZlbnQuc291cmNlID09PSAndWlDb2x1bW5SZXNpemVkJyxcbiAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBDb2x1bW5SZXNpemVkRXZlbnQpID0+IHtcbiAgICAgICAgICBjb25zdCBjb2xJZCA9IGV2ZW50LmNvbHVtbj8uZ2V0Q29sSWQoKTtcbiAgICAgICAgICBjb25zdCB3aWR0aCA9IGV2ZW50LmNvbHVtbj8uZ2V0QWN0dWFsV2lkdGgoKTtcbiAgICAgICAgICBpZiAoY29sSWQgJiYgd2lkdGgpIHtcbiAgICAgICAgICAgIHRoaXMuI3VwZGF0ZUNvbHVtbldpZHRoKGNvbElkLCB3aWR0aCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgYWdHcmlkLmRyYWdTdG9wcGVkXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IERyYWdTdG9wcGVkRXZlbnQpID0+IHtcbiAgICAgICAgICB0aGlzLiN1cGRhdGVDb2x1bW5zSW5DdXJyZW50RGF0YVN0YXRlKHZhbHVlLmFwaSk7XG4gICAgICAgIH0pO1xuXG4gICAgICBhZ0dyaWQucm93U2VsZWN0ZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudDogUm93U2VsZWN0ZWRFdmVudCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLiN2aWV3Q29uZmlnICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdyA9IGV2ZW50Lm5vZGU7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZElkcyA9IHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuc2VsZWN0ZWRJZHMgfHwgW107XG4gICAgICAgICAgICBjb25zdCByb3dJbmRleCA9IHNlbGVjdGVkSWRzLmluZGV4T2Yocm93LmRhdGEuaWQpO1xuXG4gICAgICAgICAgICBpZiAocm93LmlzU2VsZWN0ZWQoKSAmJiByb3dJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMucHVzaChyb3cuZGF0YS5pZCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFyb3cuaXNTZWxlY3RlZCgpICYmIHJvd0luZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICBzZWxlY3RlZElkcy5zcGxpY2Uocm93SW5kZXgsIDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLnNlbGVjdGVkSWRzID0gc2VsZWN0ZWRJZHM7XG4gICAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVEYXRhU3RhdGUoXG4gICAgICAgICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUsXG4gICAgICAgICAgICAgIHRoaXMuI3ZpZXdDb25maWcuaWQsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBhZ0dyaWQuc29ydENoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGdyaWRDb2x1bW5TdGF0ZXM6IENvbHVtblN0YXRlW10gPSBhZ0dyaWQuYXBpLmdldENvbHVtblN0YXRlKCk7XG5cbiAgICAgICAgY29uc3QgYWN0aXZlU29ydENvbHVtblN0YXRlID1cbiAgICAgICAgICBncmlkQ29sdW1uU3RhdGVzPy5maW5kKFxuICAgICAgICAgICAgKGFHcmlkQ29sdW1uU3RhdGUpID0+IGFHcmlkQ29sdW1uU3RhdGUuc29ydEluZGV4ID09PSAwLFxuICAgICAgICAgICkgPz9cbiAgICAgICAgICBncmlkQ29sdW1uU3RhdGVzPy5maW5kKChhR3JpZENvbHVtblN0YXRlKSA9PiBhR3JpZENvbHVtblN0YXRlLnNvcnQpO1xuXG4gICAgICAgIGlmICh0aGlzLiN2aWV3Q29uZmlnICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUpIHtcbiAgICAgICAgICBpZiAoYWN0aXZlU29ydENvbHVtblN0YXRlKSB7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVTb3J0Q29sdW1uRGVmID0gYWdHcmlkLmFwaS5nZXRDb2x1bW5EZWYoXG4gICAgICAgICAgICAgIGFjdGl2ZVNvcnRDb2x1bW5TdGF0ZS5jb2xJZCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLmFjdGl2ZVNvcnRPcHRpb24gPSB7XG4gICAgICAgICAgICAgIGRlc2NlbmRpbmc6IGFjdGl2ZVNvcnRDb2x1bW5TdGF0ZS5zb3J0ID09PSAnZGVzYycsXG4gICAgICAgICAgICAgIGlkOiBhY3RpdmVTb3J0Q29sdW1uU3RhdGUuY29sSWQsXG4gICAgICAgICAgICAgIHByb3BlcnR5TmFtZTogYWN0aXZlU29ydENvbHVtbkRlZj8uZmllbGQgfHwgJycsXG4gICAgICAgICAgICAgIGxhYmVsOiBhY3RpdmVTb3J0Q29sdW1uRGVmPy5oZWFkZXJOYW1lIHx8ICcnLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uID0gdW5kZWZpbmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVEYXRhU3RhdGUoXG4gICAgICAgICAgICB0aGlzLiNjdXJyZW50RGF0YVN0YXRlLFxuICAgICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlQ29sdW1uc0luQ3VycmVudERhdGFTdGF0ZShhcGk6IEdyaWRBcGkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jdmlld0NvbmZpZyAmJiB0aGlzLiNjdXJyZW50RGF0YVN0YXRlKSB7XG4gICAgICBjb25zdCBjb2x1bW5PcmRlciA9IHRoaXMuI2dldENvbHVtbk9yZGVyKGFwaSk7XG5cbiAgICAgIGNvbnN0IHZpZXdTdGF0ZSA9IHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuZ2V0Vmlld1N0YXRlQnlJZChcbiAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgdmlld1N0YXRlICYmXG4gICAgICAgICh2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzLmxlbmd0aCAhPT0gY29sdW1uT3JkZXIubGVuZ3RoIHx8XG4gICAgICAgICAgdmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcy5zb21lKChjb2wsIGkpID0+IGNvbCAhPT0gY29sdW1uT3JkZXJbaV0pKVxuICAgICAgKSB7XG4gICAgICAgIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMgPSBjb2x1bW5PcmRlcjtcblxuICAgICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVEYXRhU3RhdGUoXG4gICAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZS5hZGRPclVwZGF0ZVZpZXcoXG4gICAgICAgICAgICB0aGlzLiN2aWV3Q29uZmlnLmlkLFxuICAgICAgICAgICAgdmlld1N0YXRlLFxuICAgICAgICAgICksXG4gICAgICAgICAgdGhpcy4jdmlld0NvbmZpZy5pZCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZ2V0Q29sdW1uT3JkZXIoYXBpOiBHcmlkQXBpKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBhcGlcbiAgICAgIC5nZXRDb2x1bW5TdGF0ZSgpXG4gICAgICAuZmlsdGVyKChzdGF0ZSkgPT4gIXN0YXRlLmhpZGUpXG4gICAgICAubWFwKChzdGF0ZSkgPT4gc3RhdGUuY29sSWQpO1xuICB9XG5cbiAgI2Rpc3BsYXlDb2x1bW5zKGRhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSk6IHZvaWQge1xuICAgIGNvbnN0IGFnR3JpZCA9IHRoaXMuI2N1cnJlbnRBZ0dyaWQ7XG5cbiAgICBpZiAoYWdHcmlkICYmIHRoaXMuI3ZpZXdDb25maWcpIHtcbiAgICAgIGNvbnN0IHZpZXdTdGF0ZSA9IGRhdGFTdGF0ZS5nZXRWaWV3U3RhdGVCeUlkKHRoaXMuI3ZpZXdDb25maWcuaWQpO1xuICAgICAgbGV0IGRpc3BsYXllZENvbHVtbklkczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICBpZiAodmlld1N0YXRlPy5kaXNwbGF5ZWRDb2x1bW5JZHMpIHtcbiAgICAgICAgZGlzcGxheWVkQ29sdW1uSWRzID0gdmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcztcbiAgICAgIH1cblxuICAgICAgY29uc3QgY29sdW1uT3JkZXIgPSB0aGlzLiNnZXRDb2x1bW5PcmRlcihhZ0dyaWQuYXBpKTtcblxuICAgICAgaWYgKFxuICAgICAgICBkaXNwbGF5ZWRDb2x1bW5JZHMubGVuZ3RoICE9PSBjb2x1bW5PcmRlci5sZW5ndGggfHxcbiAgICAgICAgZGlzcGxheWVkQ29sdW1uSWRzLnNvbWUoKGNvbCwgaSkgPT4gY29sICE9PSBjb2x1bW5PcmRlcltpXSlcbiAgICAgICkge1xuICAgICAgICBjb25zdCBoaWRlQ29sdW1ucyA9IGFnR3JpZC5hcGlcbiAgICAgICAgICAuZ2V0Q29sdW1uU3RhdGUoKVxuICAgICAgICAgIC5tYXAoKGNvbCkgPT4gY29sLmNvbElkKVxuICAgICAgICAgIC5maWx0ZXIoKGNvbElkKSA9PiAhZGlzcGxheWVkQ29sdW1uSWRzLmluY2x1ZGVzKGNvbElkKSk7XG5cbiAgICAgICAgYWdHcmlkLmFwaS5zZXRDb2x1bW5zVmlzaWJsZShoaWRlQ29sdW1ucywgZmFsc2UpO1xuICAgICAgICBhZ0dyaWQuYXBpLnNldENvbHVtbnNWaXNpYmxlKGRpc3BsYXllZENvbHVtbklkcywgdHJ1ZSk7XG4gICAgICAgIGFnR3JpZC5hcGkubW92ZUNvbHVtbnMoZGlzcGxheWVkQ29sdW1uSWRzLCAwKTtcbiAgICAgICAgdGhpcy4jcmVtb3ZlQ29sdW1uV2lkdGhzKGhpZGVDb2x1bW5zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYXBwbHlTb3J0KGRhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSk6IHZvaWQge1xuICAgIGNvbnN0IGFnR3JpZCA9IHRoaXMuI2N1cnJlbnRBZ0dyaWQ7XG4gICAgY29uc3QgYWN0aXZlU29ydCA9IGRhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uO1xuXG4gICAgaWYgKGFjdGl2ZVNvcnQpIHtcbiAgICAgIGFnR3JpZD8uYXBpLmFwcGx5Q29sdW1uU3RhdGUoe1xuICAgICAgICBzdGF0ZTogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGNvbElkOiBhY3RpdmVTb3J0LmlkLFxuICAgICAgICAgICAgc29ydDogYWN0aXZlU29ydC5kZXNjZW5kaW5nID8gJ2Rlc2MnIDogJ2FzYycsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZGVmYXVsdFN0YXRlOiB7IHNvcnQ6IG51bGwgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gICN1cGRhdGVDb2x1bW5XaWR0aChjb2xJZDogc3RyaW5nLCB3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3Qgdmlld1N0YXRlID1cbiAgICAgIHRoaXMudmlld0lkICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGU/LmdldFZpZXdTdGF0ZUJ5SWQodGhpcy52aWV3SWQpO1xuICAgIGlmICh2aWV3U3RhdGUgJiYgdGhpcy52aWV3SWQgJiYgdGhpcy4jY3VycmVudERhdGFTdGF0ZSkge1xuICAgICAgY29uc3QgY3VycmVudFdpZHRocyA9IHZpZXdTdGF0ZT8uY29sdW1uV2lkdGhzO1xuICAgICAgY29uc3QgYnJlYWtwb2ludE5hbWUgPVxuICAgICAgICB0aGlzLiNjdXJyZW50QnJlYWtwb2ludCA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy54cyA/ICd4cycgOiAnc20nO1xuXG4gICAgICBjdXJyZW50V2lkdGhzW2JyZWFrcG9pbnROYW1lXVtjb2xJZF0gPSB3aWR0aDtcblxuICAgICAgdmlld1N0YXRlLmNvbHVtbldpZHRocyA9IGN1cnJlbnRXaWR0aHM7XG4gICAgICB0aGlzLiNkYXRhTWFuYWdlclN2Yy51cGRhdGVEYXRhU3RhdGUoXG4gICAgICAgIHRoaXMuI2N1cnJlbnREYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KHRoaXMudmlld0lkLCB2aWV3U3RhdGUpLFxuICAgICAgICB0aGlzLnZpZXdJZCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgI3JlbW92ZUNvbHVtbldpZHRocyhjb2xJZHM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgY29uc3Qgdmlld1N0YXRlID1cbiAgICAgIHRoaXMudmlld0lkICYmIHRoaXMuI2N1cnJlbnREYXRhU3RhdGU/LmdldFZpZXdTdGF0ZUJ5SWQodGhpcy52aWV3SWQpO1xuXG4gICAgaWYgKHZpZXdTdGF0ZSAmJiB0aGlzLnZpZXdJZCAmJiB0aGlzLiNjdXJyZW50RGF0YVN0YXRlKSB7XG4gICAgICBjb25zdCBjdXJyZW50V2lkdGhzID0gdmlld1N0YXRlPy5jb2x1bW5XaWR0aHM7XG5cbiAgICAgIGZvciAoY29uc3QgY29sSWQgb2YgY29sSWRzKSB7XG4gICAgICAgIGRlbGV0ZSBjdXJyZW50V2lkdGhzWyd4cyddW2NvbElkXTtcbiAgICAgICAgZGVsZXRlIGN1cnJlbnRXaWR0aHNbJ3NtJ11bY29sSWRdO1xuICAgICAgfVxuXG4gICAgICB2aWV3U3RhdGUuY29sdW1uV2lkdGhzID0gY3VycmVudFdpZHRocztcbiAgICAgIHRoaXMuI2RhdGFNYW5hZ2VyU3ZjLnVwZGF0ZURhdGFTdGF0ZShcbiAgICAgICAgdGhpcy4jY3VycmVudERhdGFTdGF0ZS5hZGRPclVwZGF0ZVZpZXcodGhpcy52aWV3SWQsIHZpZXdTdGF0ZSksXG4gICAgICAgIHRoaXMudmlld0lkLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAjYXBwbHlDb2x1bW5XaWR0aHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFnR3JpZExpc3Q/LmZpcnN0IHx8IHRoaXMuYWdHcmlkTGlzdC5maXJzdC5hcGkuaXNEZXN0cm95ZWQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHZpZXdTdGF0ZSA9XG4gICAgICB0aGlzLnZpZXdJZCAmJiB0aGlzLiNjdXJyZW50RGF0YVN0YXRlPy5nZXRWaWV3U3RhdGVCeUlkKHRoaXMudmlld0lkKTtcblxuICAgIGlmICh2aWV3U3RhdGUgJiYgdmlld1N0YXRlLmNvbHVtbldpZHRocyAmJiB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzKSB7XG4gICAgICBjb25zdCBicmVha3BvaW50TmFtZSA9XG4gICAgICAgIHRoaXMuI2N1cnJlbnRCcmVha3BvaW50ID09PSBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzID8gJ3hzJyA6ICdzbSc7XG4gICAgICBjb25zdCBjb2x1bW5MaW1pdHMgPSB0aGlzLiNnZXRHcmlkQ29sdW1uTGltaXRzKFxuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzLFxuICAgICAgICB2aWV3U3RhdGUuY29sdW1uV2lkdGhzLFxuICAgICAgICBicmVha3BvaW50TmFtZSxcbiAgICAgICk7XG4gICAgICB0aGlzLmFnR3JpZExpc3QuZmlyc3QuYXBpLnNpemVDb2x1bW5zVG9GaXQoeyBjb2x1bW5MaW1pdHMgfSk7XG4gICAgfVxuICB9XG5cbiAgI2dldEdyaWRDb2x1bW5MaW1pdHMoXG4gICAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10sXG4gICAgY3VycmVudFdpZHRoczogU2t5RGF0YVZpZXdDb2x1bW5XaWR0aHMsXG4gICAgYnJlYWtwb2ludE5hbWU6IGtleW9mIFNreURhdGFWaWV3Q29sdW1uV2lkdGhzLFxuICApOiBJQ29sdW1uTGltaXRbXSB7XG4gICAgY29uc3QgZ3JpZENvbHVtbkxpbWl0czogSUNvbHVtbkxpbWl0W10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgY29sdW1uIG9mIGRpc3BsYXllZENvbHVtbnMpIHtcbiAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gY3VycmVudFdpZHRoc1ticmVha3BvaW50TmFtZV1bY29sdW1uXTtcblxuICAgICAgaWYgKGNvbHVtbldpZHRoKSB7XG4gICAgICAgIGdyaWRDb2x1bW5MaW1pdHMucHVzaCh7XG4gICAgICAgICAga2V5OiBjb2x1bW4sXG4gICAgICAgICAgbWluV2lkdGg6IGNvbHVtbldpZHRoLFxuICAgICAgICAgIG1heFdpZHRoOiBjb2x1bW5XaWR0aCxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBncmlkQ29sdW1uTGltaXRzO1xuICB9XG59XG4iXX0=
@@ -9,8 +9,8 @@ import * as i2 from "@skyux/layout";
9
9
  * @internal
10
10
  */
11
11
  export class SkyAgGridRowDeleteComponent {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridRowDeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: SkyAgGridRowDeleteComponent, isStandalone: true, selector: "sky-ag-grid-row-delete", viewQueries: [{ propertyName: "inlineDeleteTemplateRef", first: true, predicate: ["inlineDeleteTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "inlineDeleteRefs", predicate: ["inlineDeleteRef"], descendants: true }], ngImport: i0, template: `
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridRowDeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: SkyAgGridRowDeleteComponent, isStandalone: true, selector: "sky-ag-grid-row-delete", viewQueries: [{ propertyName: "inlineDeleteTemplateRef", first: true, predicate: ["inlineDeleteTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "inlineDeleteRefs", predicate: ["inlineDeleteRef"], descendants: true }], ngImport: i0, template: `
14
14
  <ng-template
15
15
  #inlineDeleteTemplateRef
16
16
  let-row
@@ -38,7 +38,7 @@ export class SkyAgGridRowDeleteComponent {
38
38
  </ng-template>
39
39
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: SkyInlineDeleteModule }, { kind: "component", type: i2.λ8, selector: "sky-inline-delete", inputs: ["pending"], outputs: ["cancelTriggered", "deleteTriggered"] }] }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridRowDeleteComponent, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridRowDeleteComponent, decorators: [{
42
42
  type: Component,
43
43
  args: [{
44
44
  standalone: true,
@@ -237,10 +237,10 @@ export class SkyAgGridRowDeleteDirective {
237
237
  });
238
238
  this.#changeDetector.markForCheck();
239
239
  }
240
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridRowDeleteDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
241
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: SkyAgGridRowDeleteDirective, selector: "[skyAgGridRowDelete]", inputs: { rowDeleteIds: "rowDeleteIds" }, outputs: { rowDeleteCancel: "rowDeleteCancel", rowDeleteConfirm: "rowDeleteConfirm", rowDeleteIdsChange: "rowDeleteIdsChange" }, queries: [{ propertyName: "agGrid", first: true, predicate: AgGridAngular, descendants: true }], ngImport: i0 }); }
240
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridRowDeleteDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
241
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: SkyAgGridRowDeleteDirective, selector: "[skyAgGridRowDelete]", inputs: { rowDeleteIds: "rowDeleteIds" }, outputs: { rowDeleteCancel: "rowDeleteCancel", rowDeleteConfirm: "rowDeleteConfirm", rowDeleteIdsChange: "rowDeleteIdsChange" }, queries: [{ propertyName: "agGrid", first: true, predicate: AgGridAngular, descendants: true }], ngImport: i0 }); }
242
242
  }
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridRowDeleteDirective, decorators: [{
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridRowDeleteDirective, decorators: [{
244
244
  type: Directive,
245
245
  args: [{
246
246
  selector: '[skyAgGridRowDelete]',
@@ -272,10 +272,10 @@ export class SkyAgGridWrapperComponent {
272
272
  return false;
273
273
  }
274
274
  }
275
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
276
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.5", type: SkyAgGridWrapperComponent, selector: "sky-ag-grid-wrapper", inputs: { compact: ["compact", "compact", booleanAttribute] }, host: { properties: { "class.sky-ag-grid-layout-normal": "this.isNormalLayout" } }, queries: [{ propertyName: "agGrid", first: true, predicate: AgGridAngular, descendants: true, static: true }], ngImport: i0, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n tabindex=\"0\"\n [class.sky-ag-grid-top-scrollbar]=\"\n agGrid?.gridOptions?.context &&\n agGrid?.gridOptions?.context['enableTopScroll']\n \"\n [ngClass]=\"wrapperClasses$ | async\"\n [id]=\"gridId\"\n [skyViewkeeper]=\"viewkeeperClasses\"\n (keydown)=\"onGridKeydown($event)\"\n (keyup.escape)=\"onKeyUpEscape($event)\"\n>\n <ng-content />\n</div>\n<span\n tabindex=\"0\"\n class=\"nav-anchor\"\n [id]=\"afterAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
275
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
276
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.8", type: SkyAgGridWrapperComponent, selector: "sky-ag-grid-wrapper", inputs: { compact: ["compact", "compact", booleanAttribute] }, host: { properties: { "class.sky-ag-grid-layout-normal": "this.isNormalLayout" } }, queries: [{ propertyName: "agGrid", first: true, predicate: AgGridAngular, descendants: true, static: true }], ngImport: i0, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n tabindex=\"0\"\n [class.sky-ag-grid-top-scrollbar]=\"\n agGrid?.gridOptions?.context &&\n agGrid?.gridOptions?.context['enableTopScroll']\n \"\n [ngClass]=\"wrapperClasses$ | async\"\n [id]=\"gridId\"\n [skyViewkeeper]=\"viewkeeperClasses\"\n (keydown)=\"onGridKeydown($event)\"\n (keyup.escape)=\"onKeyUpEscape($event)\"\n>\n <ng-content />\n</div>\n<span\n tabindex=\"0\"\n class=\"nav-anchor\"\n [id]=\"afterAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
277
277
  }
278
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridWrapperComponent, decorators: [{
278
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridWrapperComponent, decorators: [{
279
279
  type: Component,
280
280
  args: [{ selector: 'sky-ag-grid-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n class=\"nav-anchor\"\n tabindex=\"0\"\n [id]=\"beforeAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n<div\n class=\"sky-ag-grid\"\n tabindex=\"0\"\n [class.sky-ag-grid-top-scrollbar]=\"\n agGrid?.gridOptions?.context &&\n agGrid?.gridOptions?.context['enableTopScroll']\n \"\n [ngClass]=\"wrapperClasses$ | async\"\n [id]=\"gridId\"\n [skyViewkeeper]=\"viewkeeperClasses\"\n (keydown)=\"onGridKeydown($event)\"\n (keyup.escape)=\"onKeyUpEscape($event)\"\n>\n <ng-content />\n</div>\n<span\n tabindex=\"0\"\n class=\"nav-anchor\"\n [id]=\"afterAnchorId\"\n (focusin)=\"onAnchorFocus($event)\"\n>\n</span>\n" }]
281
281
  }], ctorParameters: () => [], propDecorators: { agGrid: [{
@@ -27,8 +27,8 @@ import { SkyAgGridHeaderGroupComponent } from './header/header-group.component';
27
27
  import { SkyAgGridHeaderComponent } from './header/header.component';
28
28
  import * as i0 from "@angular/core";
29
29
  export class SkyAgGridModule {
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
31
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridModule, declarations: [SkyAgGridDataManagerAdapterDirective,
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
31
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridModule, declarations: [SkyAgGridDataManagerAdapterDirective,
32
32
  SkyAgGridHeaderComponent,
33
33
  SkyAgGridHeaderGroupComponent,
34
34
  SkyAgGridRowDeleteDirective,
@@ -58,7 +58,7 @@ export class SkyAgGridModule {
58
58
  SkyAgGridWrapperComponent,
59
59
  SkyAgGridHeaderComponent,
60
60
  SkyAgGridHeaderGroupComponent] }); }
61
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridModule, imports: [AgGridModule,
61
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridModule, imports: [AgGridModule,
62
62
  CommonModule,
63
63
  SkyAgGridCellEditorAutocompleteModule,
64
64
  SkyAgGridCellEditorDatepickerModule,
@@ -80,7 +80,7 @@ export class SkyAgGridModule {
80
80
  SkyViewkeeperModule,
81
81
  SkyThemeModule] }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyAgGridModule, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyAgGridModule, decorators: [{
84
84
  type: NgModule,
85
85
  args: [{
86
86
  declarations: [