@skyux/list-builder-view-grids 13.11.5 → 13.12.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-list-builder-view-grids-testing.mjs","sources":["../tmp-esm2022/testing/legacy/list-view-grid-fixture.js","../tmp-esm2022/testing/skyux-list-builder-view-grids-testing.js"],"sourcesContent":["import { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n/**\n * Allows interaction with a SKY UX list view grid component.\n * @deprecated\n * @internal\n */\nexport class SkyListViewGridFixture {\n constructor(fixture, skyTestId) {\n this.debugEl = SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-list-view-grid');\n }\n /**\n * Gets the row at the specified index.\n * @param index The row's index.\n */\n getRow(index) {\n const rowEl = this.getRowEl(index);\n const cellEls = this.getCellEls(rowEl);\n const rowCells = cellEls.map((cellEl) => {\n return {\n el: cellEl,\n textContent: SkyAppTestUtility.getText(cellEl),\n };\n });\n return {\n cells: rowCells,\n };\n }\n getRowCount() {\n return this.getRowEls().length;\n }\n /**\n * Gets the header at the specified index.\n * @param columnIndex The index of the column to which the header belongs.\n */\n getHeader(columnIndex) {\n const headerEls = this.getHeaderEls();\n const headerEl = headerEls[columnIndex];\n if (!headerEl) {\n throw new Error(`No column exists at index ${columnIndex}.`);\n }\n return {\n locked: headerEl.nativeElement.classList.contains('sky-grid-header-locked'),\n textContent: SkyAppTestUtility.getText(headerEl),\n };\n }\n getHeaderCount() {\n return this.getHeaderEls().length;\n }\n getRowEls() {\n return this.debugEl.queryAll(By.css('.sky-grid-row'));\n }\n getRowEl(index) {\n const rowEls = this.getRowEls();\n const rowEl = rowEls[index];\n if (!rowEl) {\n throw new Error(`No row exists at index ${index}.`);\n }\n return rowEl;\n }\n getHeaderEls() {\n return this.debugEl.queryAll(By.css('th.sky-grid-heading > div'));\n }\n getCellEls(rowEl) {\n return rowEl.queryAll(By.css('.sky-grid-cell sky-grid-cell'));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3LWdyaWQtZml4dHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy90ZXN0aW5nL3NyYy9sZWdhY3kvbGlzdC12aWV3LWdyaWQtZml4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFNdkQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUFHakMsWUFBWSxPQUE4QixFQUFFLFNBQWlCO1FBQzNELElBQUksQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLENBQUMsdUJBQXVCLENBQ3RELE9BQU8sRUFDUCxTQUFTLEVBQ1Qsb0JBQW9CLENBQ3JCLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLEtBQWE7UUFDekIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDLE1BQU0sUUFBUSxHQUFpQyxPQUFPLENBQUMsR0FBRyxDQUN4RCxDQUFDLE1BQW9CLEVBQUUsRUFBRTtZQUN2QixPQUFPO2dCQUNMLEVBQUUsRUFBRSxNQUFNO2dCQUNWLFdBQVcsRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2FBQy9DLENBQUM7UUFDSixDQUFDLENBQ0YsQ0FBQztRQUVGLE9BQU87WUFDTCxLQUFLLEVBQUUsUUFBUTtTQUNoQixDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsV0FBbUI7UUFDbEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXRDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV4QyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FDL0Msd0JBQXdCLENBQ3pCO1lBQ0QsV0FBVyxFQUFFLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDakQsQ0FBQztJQUNKLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQztJQUNwQyxDQUFDO0lBRU8sU0FBUztRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTyxRQUFRLENBQUMsS0FBYTtRQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFaEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFlBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQW1CO1FBQ3BDLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWJ1Z0VsZW1lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudEZpeHR1cmUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgQnkgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IFNreUFwcFRlc3RVdGlsaXR5IH0gZnJvbSAnQHNreXV4LXNkay90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5TGlzdFZpZXdHcmlkRml4dHVyZUNlbGwgfSBmcm9tICcuL2xpc3Qtdmlldy1ncmlkLWZpeHR1cmUtY2VsbCc7XG5pbXBvcnQgeyBTa3lMaXN0Vmlld0dyaWRGaXh0dXJlSGVhZGVyIH0gZnJvbSAnLi9saXN0LXZpZXctZ3JpZC1maXh0dXJlLWhlYWRlcic7XG5pbXBvcnQgeyBTa3lMaXN0Vmlld0dyaWRGaXh0dXJlUm93IH0gZnJvbSAnLi9saXN0LXZpZXctZ3JpZC1maXh0dXJlLXJvdyc7XG5cbi8qKlxuICogQWxsb3dzIGludGVyYWN0aW9uIHdpdGggYSBTS1kgVVggbGlzdCB2aWV3IGdyaWQgY29tcG9uZW50LlxuICogQGRlcHJlY2F0ZWRcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgU2t5TGlzdFZpZXdHcmlkRml4dHVyZSB7XG4gIHByaXZhdGUgZGVidWdFbDogRGVidWdFbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKGZpeHR1cmU6IENvbXBvbmVudEZpeHR1cmU8YW55Piwgc2t5VGVzdElkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRlYnVnRWwgPSBTa3lBcHBUZXN0VXRpbGl0eS5nZXREZWJ1Z0VsZW1lbnRCeVRlc3RJZChcbiAgICAgIGZpeHR1cmUsXG4gICAgICBza3lUZXN0SWQsXG4gICAgICAnc2t5LWxpc3Qtdmlldy1ncmlkJyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHJvdyBhdCB0aGUgc3BlY2lmaWVkIGluZGV4LlxuICAgKiBAcGFyYW0gaW5kZXggVGhlIHJvdydzIGluZGV4LlxuICAgKi9cbiAgcHVibGljIGdldFJvdyhpbmRleDogbnVtYmVyKTogU2t5TGlzdFZpZXdHcmlkRml4dHVyZVJvdyB7XG4gICAgY29uc3Qgcm93RWwgPSB0aGlzLmdldFJvd0VsKGluZGV4KTtcbiAgICBjb25zdCBjZWxsRWxzID0gdGhpcy5nZXRDZWxsRWxzKHJvd0VsKTtcblxuICAgIGNvbnN0IHJvd0NlbGxzOiBTa3lMaXN0Vmlld0dyaWRGaXh0dXJlQ2VsbFtdID0gY2VsbEVscy5tYXAoXG4gICAgICAoY2VsbEVsOiBEZWJ1Z0VsZW1lbnQpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBlbDogY2VsbEVsLFxuICAgICAgICAgIHRleHRDb250ZW50OiBTa3lBcHBUZXN0VXRpbGl0eS5nZXRUZXh0KGNlbGxFbCksXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY2VsbHM6IHJvd0NlbGxzLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0Um93Q291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRSb3dFbHMoKS5sZW5ndGg7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaGVhZGVyIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXguXG4gICAqIEBwYXJhbSBjb2x1bW5JbmRleCBUaGUgaW5kZXggb2YgdGhlIGNvbHVtbiB0byB3aGljaCB0aGUgaGVhZGVyIGJlbG9uZ3MuXG4gICAqL1xuICBwdWJsaWMgZ2V0SGVhZGVyKGNvbHVtbkluZGV4OiBudW1iZXIpOiBTa3lMaXN0Vmlld0dyaWRGaXh0dXJlSGVhZGVyIHtcbiAgICBjb25zdCBoZWFkZXJFbHMgPSB0aGlzLmdldEhlYWRlckVscygpO1xuXG4gICAgY29uc3QgaGVhZGVyRWwgPSBoZWFkZXJFbHNbY29sdW1uSW5kZXhdO1xuXG4gICAgaWYgKCFoZWFkZXJFbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBjb2x1bW4gZXhpc3RzIGF0IGluZGV4ICR7Y29sdW1uSW5kZXh9LmApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBsb2NrZWQ6IGhlYWRlckVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKFxuICAgICAgICAnc2t5LWdyaWQtaGVhZGVyLWxvY2tlZCcsXG4gICAgICApLFxuICAgICAgdGV4dENvbnRlbnQ6IFNreUFwcFRlc3RVdGlsaXR5LmdldFRleHQoaGVhZGVyRWwpLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0SGVhZGVyQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRIZWFkZXJFbHMoKS5sZW5ndGg7XG4gIH1cblxuICBwcml2YXRlIGdldFJvd0VscygpOiBEZWJ1Z0VsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuZGVidWdFbC5xdWVyeUFsbChCeS5jc3MoJy5za3ktZ3JpZC1yb3cnKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFJvd0VsKGluZGV4OiBudW1iZXIpOiBEZWJ1Z0VsZW1lbnQge1xuICAgIGNvbnN0IHJvd0VscyA9IHRoaXMuZ2V0Um93RWxzKCk7XG5cbiAgICBjb25zdCByb3dFbCA9IHJvd0Vsc1tpbmRleF07XG5cbiAgICBpZiAoIXJvd0VsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHJvdyBleGlzdHMgYXQgaW5kZXggJHtpbmRleH0uYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvd0VsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRIZWFkZXJFbHMoKTogRGVidWdFbGVtZW50W10ge1xuICAgIHJldHVybiB0aGlzLmRlYnVnRWwucXVlcnlBbGwoQnkuY3NzKCd0aC5za3ktZ3JpZC1oZWFkaW5nID4gZGl2JykpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDZWxsRWxzKHJvd0VsOiBEZWJ1Z0VsZW1lbnQpOiBEZWJ1Z0VsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHJvd0VsLnF1ZXJ5QWxsKEJ5LmNzcygnLnNreS1ncmlkLWNlbGwgc2t5LWdyaWQtY2VsbCcpKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMtdGVzdGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy90ZXN0aW5nL3NyYy9za3l1eC1saXN0LWJ1aWxkZXItdmlldy1ncmlkcy10ZXN0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":";;;AAEA;AACA;AACA;AACA;AACA;AACO,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE;AACpC,QAAQ,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,oBAAoB,CAAC;AAC1G,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI,MAAM,CAAC,KAAK,EAAE;AAClB,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC1C,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;AAC9C,QAAQ,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK;AACjD,YAAY,OAAO;AACnB,gBAAgB,EAAE,EAAE,MAAM;AAC1B,gBAAgB,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;AAC9D,aAAa;AACb,QAAQ,CAAC,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,KAAK,EAAE,QAAQ;AAC3B,SAAS;AACT,IAAI;AACJ,IAAI,WAAW,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM;AACtC,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI,SAAS,CAAC,WAAW,EAAE;AAC3B,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE;AAC7C,QAAQ,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC;AAC/C,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACvB,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;AACxE,QAAQ;AACR,QAAQ,OAAO;AACf,YAAY,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC;AACvF,YAAY,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC5D,SAAS;AACT,IAAI;AACJ,IAAI,cAAc,GAAG;AACrB,QAAQ,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM;AACzC,IAAI;AACJ,IAAI,SAAS,GAAG;AAChB,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC7D,IAAI;AACJ,IAAI,QAAQ,CAAC,KAAK,EAAE;AACpB,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AACvC,QAAQ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;AACnC,QAAQ,IAAI,CAAC,KAAK,EAAE;AACpB,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAC/D,QAAQ;AACR,QAAQ,OAAO,KAAK;AACpB,IAAI;AACJ,IAAI,YAAY,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AACzE,IAAI;AACJ,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,QAAQ,OAAO,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;AACrE,IAAI;AACJ;;AClEA;AACA;AACA;;;;"}
|
|
1
|
+
{"version":3,"file":"skyux-list-builder-view-grids-testing.mjs","sources":["../../../../../libs/components/list-builder-view-grids/testing/src/legacy/list-view-grid-fixture.ts","../../../../../libs/components/list-builder-view-grids/testing/src/skyux-list-builder-view-grids-testing.ts"],"sourcesContent":["import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyListViewGridFixtureCell } from './list-view-grid-fixture-cell';\nimport { SkyListViewGridFixtureHeader } from './list-view-grid-fixture-header';\nimport { SkyListViewGridFixtureRow } from './list-view-grid-fixture-row';\n\n/**\n * Allows interaction with a SKY UX list view grid component.\n * @deprecated\n * @internal\n */\nexport class SkyListViewGridFixture {\n private debugEl: DebugElement;\n\n constructor(fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-list-view-grid',\n );\n }\n\n /**\n * Gets the row at the specified index.\n * @param index The row's index.\n */\n public getRow(index: number): SkyListViewGridFixtureRow {\n const rowEl = this.getRowEl(index);\n const cellEls = this.getCellEls(rowEl);\n\n const rowCells: SkyListViewGridFixtureCell[] = cellEls.map(\n (cellEl: DebugElement) => {\n return {\n el: cellEl,\n textContent: SkyAppTestUtility.getText(cellEl),\n };\n },\n );\n\n return {\n cells: rowCells,\n };\n }\n\n public getRowCount(): number {\n return this.getRowEls().length;\n }\n\n /**\n * Gets the header at the specified index.\n * @param columnIndex The index of the column to which the header belongs.\n */\n public getHeader(columnIndex: number): SkyListViewGridFixtureHeader {\n const headerEls = this.getHeaderEls();\n\n const headerEl = headerEls[columnIndex];\n\n if (!headerEl) {\n throw new Error(`No column exists at index ${columnIndex}.`);\n }\n\n return {\n locked: headerEl.nativeElement.classList.contains(\n 'sky-grid-header-locked',\n ),\n textContent: SkyAppTestUtility.getText(headerEl),\n };\n }\n\n public getHeaderCount(): number {\n return this.getHeaderEls().length;\n }\n\n private getRowEls(): DebugElement[] {\n return this.debugEl.queryAll(By.css('.sky-grid-row'));\n }\n\n private getRowEl(index: number): DebugElement {\n const rowEls = this.getRowEls();\n\n const rowEl = rowEls[index];\n\n if (!rowEl) {\n throw new Error(`No row exists at index ${index}.`);\n }\n\n return rowEl;\n }\n\n private getHeaderEls(): DebugElement[] {\n return this.debugEl.queryAll(By.css('th.sky-grid-heading > div'));\n }\n\n private getCellEls(rowEl: DebugElement): DebugElement[] {\n return rowEl.queryAll(By.css('.sky-grid-cell sky-grid-cell'));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AASA;;;;AAIG;MACU,sBAAsB,CAAA;IAGjC,WAAA,CAAY,OAA8B,EAAE,SAAiB,EAAA;AAC3D,QAAA,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC,uBAAuB,CACtD,OAAO,EACP,SAAS,EACT,oBAAoB,CACrB;IACH;AAEA;;;AAGG;AACI,IAAA,MAAM,CAAC,KAAa,EAAA;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAEtC,MAAM,QAAQ,GAAiC,OAAO,CAAC,GAAG,CACxD,CAAC,MAAoB,KAAI;YACvB,OAAO;AACL,gBAAA,EAAE,EAAE,MAAM;AACV,gBAAA,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;aAC/C;AACH,QAAA,CAAC,CACF;QAED,OAAO;AACL,YAAA,KAAK,EAAE,QAAQ;SAChB;IACH;IAEO,WAAW,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM;IAChC;AAEA;;;AAGG;AACI,IAAA,SAAS,CAAC,WAAmB,EAAA;AAClC,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE;AAErC,QAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC;QAEvC,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,WAAW,CAAA,CAAA,CAAG,CAAC;QAC9D;QAEA,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAC/C,wBAAwB,CACzB;AACD,YAAA,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;SACjD;IACH;IAEO,cAAc,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM;IACnC;IAEQ,SAAS,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACvD;AAEQ,IAAA,QAAQ,CAAC,KAAa,EAAA;AAC5B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AAE/B,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE3B,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAA,CAAA,CAAG,CAAC;QACrD;AAEA,QAAA,OAAO,KAAK;IACd;IAEQ,YAAY,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACnE;AAEQ,IAAA,UAAU,CAAC,KAAmB,EAAA;QACpC,OAAO,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC/D;AACD;;ACnGD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-list-builder-view-grids.mjs","sources":["../tmp-esm2022/lib/modules/column-selector/column-selector-context.js","../tmp-esm2022/lib/modules/shared/sky-list-builder-view-grids-resources.module.js","../tmp-esm2022/lib/modules/column-selector/column-selector-modal.component.js","../tmp-esm2022/lib/modules/column-selector/column-selector-modal.module.js","../tmp-esm2022/lib/modules/list-view-grid/state/displayed-columns/load.action.js","../tmp-esm2022/lib/modules/list-column-selector-action/list-column-selector-button.component.js","../tmp-esm2022/lib/modules/list-column-selector-action/list-column-selector-action.component.js","../tmp-esm2022/lib/modules/list-column-selector-action/list-column-selector-action.module.js","../tmp-esm2022/lib/modules/list-view-grid/state/columns/load.action.js","../tmp-esm2022/lib/modules/list-view-grid/state/grid-state.model.js","../tmp-esm2022/lib/modules/list-view-grid/state/grid-state.rxstate.js","../tmp-esm2022/lib/modules/list-view-grid/state/columns/columns.orchestrator.js","../tmp-esm2022/lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.js","../tmp-esm2022/lib/modules/list-view-grid/state/grid-state.state-node.js","../tmp-esm2022/lib/modules/list-view-grid/types/list-view-grid-message-type.js","../tmp-esm2022/lib/modules/list-view-grid/list-view-grid.component.js","../tmp-esm2022/lib/modules/list-view-grid/list-view-grid.module.js","../tmp-esm2022/skyux-list-builder-view-grids.js"],"sourcesContent":["/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\n/**\n * @deprecated\n */\nexport class SkyColumnSelectorContext {\n}\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\n/**\n * @deprecated\n */\nexport class SkyColumnSelectorModel {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXNlbGVjdG9yLWNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2NvbHVtbi1zZWxlY3Rvci9jb2x1bW4tc2VsZWN0b3ItY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwQkFBMEI7QUFDMUIsaUVBQWlFO0FBQ2pFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtDQUdwQztBQUVELDBCQUEwQjtBQUMxQixpRUFBaUU7QUFDakU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0NBSWxDIiwic291cmNlc0NvbnRlbnQiOlsiLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbi8qIENvZGUgY292ZXJhZ2UgaGF2aW5nIHByb2JsZW1zIHdpdGggbm8gc3RhdGVtZW50cyBpbiBjbGFzc2VzICovXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lDb2x1bW5TZWxlY3RvckNvbnRleHQge1xuICBwdWJsaWMgY29sdW1uczogU2t5Q29sdW1uU2VsZWN0b3JNb2RlbFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRDb2x1bW5JZHM6IHN0cmluZ1tdO1xufVxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuLyogQ29kZSBjb3ZlcmFnZSBoYXZpbmcgcHJvYmxlbXMgd2l0aCBubyBzdGF0ZW1lbnRzIGluIGNsYXNzZXMgKi9cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUNvbHVtblNlbGVjdG9yTW9kZWwge1xuICBwdWJsaWMgaWQ6IHN0cmluZztcbiAgcHVibGljIGhlYWRpbmc6IHN0cmluZztcbiAgcHVibGljIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG4iXX0=","/* istanbul ignore file */\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-list-builder-view-grids' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport { SkyI18nModule, SkyLibResourcesService, } from '@skyux/i18n';\nimport * as i0 from \"@angular/core\";\nconst RESOURCES = {\n 'EN-US': {\n skyux_grid_column_picker_cancel: { message: 'Cancel' },\n skyux_grid_column_picker_header: {\n message: 'Choose columns to show in the list',\n },\n skyux_grid_column_picker_search_placeholder: {\n message: 'Search for columns',\n },\n skyux_grid_column_picker_submit: { message: 'Apply changes' },\n skyux_grid_columns_button: { message: 'Choose columns' },\n skyux_grid_columns_toolbar_button: { message: 'Columns' },\n },\n};\nSkyLibResourcesService.addResources(RESOURCES);\n/**\n * Import into any component library module that needs to use resource strings.\n */\nexport class SkyListBuilderViewGridsResourcesModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListBuilderViewGridsResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListBuilderViewGridsResourcesModule, exports: [SkyI18nModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListBuilderViewGridsResourcesModule, imports: [SkyI18nModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListBuilderViewGridsResourcesModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [SkyI18nModule],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LWxpc3QtYnVpbGRlci12aWV3LWdyaWRzLXJlc291cmNlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL3NoYXJlZC9za3ktbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMtcmVzb3VyY2VzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwQkFBMEI7QUFDMUI7Ozs7O0dBS0c7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxhQUFhLEVBRWIsc0JBQXNCLEdBQ3ZCLE1BQU0sYUFBYSxDQUFDOztBQUVyQixNQUFNLFNBQVMsR0FBb0M7SUFDakQsT0FBTyxFQUFFO1FBQ1AsK0JBQStCLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQ3RELCtCQUErQixFQUFFO1lBQy9CLE9BQU8sRUFBRSxvQ0FBb0M7U0FDOUM7UUFDRCwyQ0FBMkMsRUFBRTtZQUMzQyxPQUFPLEVBQUUsb0JBQW9CO1NBQzlCO1FBQ0QsK0JBQStCLEVBQUUsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFO1FBQzdELHlCQUF5QixFQUFFLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFO1FBQ3hELGlDQUFpQyxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRTtLQUMxRDtDQUNGLENBQUM7QUFFRixzQkFBc0IsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFL0M7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0NBQXNDOytHQUF0QyxzQ0FBc0M7Z0hBQXRDLHNDQUFzQyxZQUZ2QyxhQUFhO2dIQUVaLHNDQUFzQyxZQUZ2QyxhQUFhOzs0RkFFWixzQ0FBc0M7a0JBSGxELFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO2lCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG4vKipcbiAqIE5PVElDRTogRE8gTk9UIE1PRElGWSBUSElTIEZJTEUhXG4gKiBUaGUgY29udGVudHMgb2YgdGhpcyBmaWxlIHdlcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnlcbiAqIHRoZSAnbmcgZ2VuZXJhdGUgQHNreXV4L2kxOG46bGliLXJlc291cmNlcy1tb2R1bGUgbGliL21vZHVsZXMvc2hhcmVkL3NreS1saXN0LWJ1aWxkZXItdmlldy1ncmlkcycgc2NoZW1hdGljLlxuICogVG8gdXBkYXRlIHRoaXMgZmlsZSwgc2ltcGx5IHJlcnVuIHRoZSBjb21tYW5kLlxuICovXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU2t5STE4bk1vZHVsZSxcbiAgU2t5TGliUmVzb3VyY2VzLFxuICBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmNvbnN0IFJFU09VUkNFUzogUmVjb3JkPHN0cmluZywgU2t5TGliUmVzb3VyY2VzPiA9IHtcbiAgJ0VOLVVTJzoge1xuICAgIHNreXV4X2dyaWRfY29sdW1uX3BpY2tlcl9jYW5jZWw6IHsgbWVzc2FnZTogJ0NhbmNlbCcgfSxcbiAgICBza3l1eF9ncmlkX2NvbHVtbl9waWNrZXJfaGVhZGVyOiB7XG4gICAgICBtZXNzYWdlOiAnQ2hvb3NlIGNvbHVtbnMgdG8gc2hvdyBpbiB0aGUgbGlzdCcsXG4gICAgfSxcbiAgICBza3l1eF9ncmlkX2NvbHVtbl9waWNrZXJfc2VhcmNoX3BsYWNlaG9sZGVyOiB7XG4gICAgICBtZXNzYWdlOiAnU2VhcmNoIGZvciBjb2x1bW5zJyxcbiAgICB9LFxuICAgIHNreXV4X2dyaWRfY29sdW1uX3BpY2tlcl9zdWJtaXQ6IHsgbWVzc2FnZTogJ0FwcGx5IGNoYW5nZXMnIH0sXG4gICAgc2t5dXhfZ3JpZF9jb2x1bW5zX2J1dHRvbjogeyBtZXNzYWdlOiAnQ2hvb3NlIGNvbHVtbnMnIH0sXG4gICAgc2t5dXhfZ3JpZF9jb2x1bW5zX3Rvb2xiYXJfYnV0dG9uOiB7IG1lc3NhZ2U6ICdDb2x1bW5zJyB9LFxuICB9LFxufTtcblxuU2t5TGliUmVzb3VyY2VzU2VydmljZS5hZGRSZXNvdXJjZXMoUkVTT1VSQ0VTKTtcblxuLyoqXG4gKiBJbXBvcnQgaW50byBhbnkgY29tcG9uZW50IGxpYnJhcnkgbW9kdWxlIHRoYXQgbmVlZHMgdG8gdXNlIHJlc291cmNlIHN0cmluZ3MuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtTa3lJMThuTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdEJ1aWxkZXJWaWV3R3JpZHNSZXNvdXJjZXNNb2R1bGUge31cbiJdfQ==","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./column-selector-context\";\nimport * as i2 from \"@skyux/modals\";\nimport * as i3 from \"@skyux/list-builder\";\nimport * as i4 from \"@skyux/list-builder-view-checklist\";\nimport * as i5 from \"@skyux/i18n\";\nexport class SkyColumnSelectorComponent {\n constructor(context, instance) {\n this.context = context;\n this.instance = instance;\n this.newSelectedColumnIds = [];\n this.newSelectedColumnIds = context.selectedColumnIds;\n }\n selectedColumnsChange(selectedMap) {\n this.newSelectedColumnIds = [];\n selectedMap.forEach((value, key) => {\n if (value) {\n this.newSelectedColumnIds.push(key);\n }\n });\n }\n cancelChanges() {\n this.instance.cancel();\n }\n applyChanges() {\n this.instance.save(this.newSelectedColumnIds);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorComponent, deps: [{ token: i1.SkyColumnSelectorContext }, { token: i2.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.15\", type: SkyColumnSelectorComponent, isStandalone: false, selector: \"sky-column-selector\", ngImport: i0, template: \"<sky-modal>\\n <sky-modal-header>\\n {{ 'skyux_grid_column_picker_header' | skyLibResources }}\\n </sky-modal-header>\\n <sky-modal-content>\\n <sky-list\\n #list\\n [data]=\\\"context.columns\\\"\\n [selectedIds]=\\\"context.selectedColumnIds\\\"\\n (selectedIdsChange)=\\\"selectedColumnsChange($event)\\\"\\n >\\n <sky-list-toolbar\\n [placeholder]=\\\"\\n 'skyux_grid_column_picker_search_placeholder' | skyLibResources\\n \\\"\\n />\\n\\n <sky-list-view-checklist label=\\\"heading\\\" description=\\\"description\\\" />\\n </sky-list>\\n </sky-modal-content>\\n <sky-modal-footer>\\n <button\\n sky-cmp-id=\\\"apply-changes\\\"\\n class=\\\"sky-btn sky-btn-primary\\\"\\n type=\\\"button\\\"\\n (click)=\\\"applyChanges()\\\"\\n >\\n {{ 'skyux_grid_column_picker_submit' | skyLibResources }}\\n </button>\\n <button\\n sky-cmp-id=\\\"cancel\\\"\\n class=\\\"sky-btn sky-btn-link\\\"\\n type=\\\"button\\\"\\n (click)=\\\"cancelChanges()\\\"\\n >\\n {{ 'skyux_grid_column_picker_cancel' | skyLibResources }}\\n </button>\\n </sky-modal-footer>\\n</sky-modal>\\n\", dependencies: [{ kind: \"component\", type: i2.λ5, selector: \"sky-modal\", inputs: [\"formErrors\", \"headingText\", \"helpKey\", \"helpPopoverContent\", \"helpPopoverTitle\", \"ariaRole\", \"tiledBody\", \"ariaDescribedBy\", \"ariaLabelledBy\", \"layout\"] }, { kind: \"component\", type: i2.λ2, selector: \"sky-modal-content\" }, { kind: \"component\", type: i2.λ3, selector: \"sky-modal-footer\" }, { kind: \"component\", type: i2.λ4, selector: \"sky-modal-header\" }, { kind: \"component\", type: i3.SkyListComponent, selector: \"sky-list\", inputs: [\"data\", \"dataProvider\", \"defaultView\", \"initialTotal\", \"selectedIds\", \"sortFields\", \"appliedFilters\", \"search\"], outputs: [\"selectedIdsChange\", \"appliedFiltersChange\"] }, { kind: \"component\", type: i3.SkyListToolbarComponent, selector: \"sky-list-toolbar\", inputs: [\"inMemorySearchEnabled\", \"placeholder\", \"searchEnabled\", \"sortSelectorEnabled\", \"toolbarType\", \"searchText\"] }, { kind: \"component\", type: i4.SkyListViewChecklistComponent, selector: \"sky-list-view-checklist\", inputs: [\"name\", \"search\", \"label\", \"description\", \"selectMode\", \"showOnlySelected\"] }, { kind: \"pipe\", type: i5.SkyLibResourcesPipe, name: \"skyLibResources\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-column-selector', standalone: false, template: \"<sky-modal>\\n <sky-modal-header>\\n {{ 'skyux_grid_column_picker_header' | skyLibResources }}\\n </sky-modal-header>\\n <sky-modal-content>\\n <sky-list\\n #list\\n [data]=\\\"context.columns\\\"\\n [selectedIds]=\\\"context.selectedColumnIds\\\"\\n (selectedIdsChange)=\\\"selectedColumnsChange($event)\\\"\\n >\\n <sky-list-toolbar\\n [placeholder]=\\\"\\n 'skyux_grid_column_picker_search_placeholder' | skyLibResources\\n \\\"\\n />\\n\\n <sky-list-view-checklist label=\\\"heading\\\" description=\\\"description\\\" />\\n </sky-list>\\n </sky-modal-content>\\n <sky-modal-footer>\\n <button\\n sky-cmp-id=\\\"apply-changes\\\"\\n class=\\\"sky-btn sky-btn-primary\\\"\\n type=\\\"button\\\"\\n (click)=\\\"applyChanges()\\\"\\n >\\n {{ 'skyux_grid_column_picker_submit' | skyLibResources }}\\n </button>\\n <button\\n sky-cmp-id=\\\"cancel\\\"\\n class=\\\"sky-btn sky-btn-link\\\"\\n type=\\\"button\\\"\\n (click)=\\\"cancelChanges()\\\"\\n >\\n {{ 'skyux_grid_column_picker_cancel' | skyLibResources }}\\n </button>\\n </sky-modal-footer>\\n</sky-modal>\\n\" }]\n }], ctorParameters: () => [{ type: i1.SkyColumnSelectorContext }, { type: i2.SkyModalInstance }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXNlbGVjdG9yLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvY29sdW1uLXNlbGVjdG9yL2NvbHVtbi1zZWxlY3Rvci1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2NvbHVtbi1zZWxlY3Rvci9jb2x1bW4tc2VsZWN0b3ItbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVUxQyxNQUFNLE9BQU8sMEJBQTBCO0lBR3JDLFlBQ1MsT0FBaUMsRUFDakMsUUFBMEI7UUFEMUIsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFDakMsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFKNUIseUJBQW9CLEdBQWEsRUFBRSxDQUFDO1FBTXpDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUM7SUFDeEQsQ0FBQztJQUVNLHFCQUFxQixDQUFDLFdBQWlDO1FBQzVELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDL0IsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUNqQyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNWLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNoRCxDQUFDOytHQXpCVSwwQkFBMEI7bUdBQTFCLDBCQUEwQixnRkNWdkMsNmxDQXVDQTs7NEZEN0JhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSxxQkFBcUIsY0FFbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TW9kYWxJbnN0YW5jZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTa3lDb2x1bW5TZWxlY3RvckNvbnRleHQgfSBmcm9tICcuL2NvbHVtbi1zZWxlY3Rvci1jb250ZXh0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWNvbHVtbi1zZWxlY3RvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4tc2VsZWN0b3ItbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Q29sdW1uU2VsZWN0b3JDb21wb25lbnQge1xuICBwdWJsaWMgbmV3U2VsZWN0ZWRDb2x1bW5JZHM6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNvbnRleHQ6IFNreUNvbHVtblNlbGVjdG9yQ29udGV4dCxcbiAgICBwdWJsaWMgaW5zdGFuY2U6IFNreU1vZGFsSW5zdGFuY2UsXG4gICkge1xuICAgIHRoaXMubmV3U2VsZWN0ZWRDb2x1bW5JZHMgPSBjb250ZXh0LnNlbGVjdGVkQ29sdW1uSWRzO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdGVkQ29sdW1uc0NoYW5nZShzZWxlY3RlZE1hcDogTWFwPHN0cmluZywgYm9vbGVhbj4pOiB2b2lkIHtcbiAgICB0aGlzLm5ld1NlbGVjdGVkQ29sdW1uSWRzID0gW107XG4gICAgc2VsZWN0ZWRNYXAuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHRoaXMubmV3U2VsZWN0ZWRDb2x1bW5JZHMucHVzaChrZXkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGNhbmNlbENoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0YW5jZS5jYW5jZWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBhcHBseUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0YW5jZS5zYXZlKHRoaXMubmV3U2VsZWN0ZWRDb2x1bW5JZHMpO1xuICB9XG59XG4iLCI8c2t5LW1vZGFsPlxuICA8c2t5LW1vZGFsLWhlYWRlcj5cbiAgICB7eyAnc2t5dXhfZ3JpZF9jb2x1bW5fcGlja2VyX2hlYWRlcicgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgPC9za3ktbW9kYWwtaGVhZGVyPlxuICA8c2t5LW1vZGFsLWNvbnRlbnQ+XG4gICAgPHNreS1saXN0XG4gICAgICAjbGlzdFxuICAgICAgW2RhdGFdPVwiY29udGV4dC5jb2x1bW5zXCJcbiAgICAgIFtzZWxlY3RlZElkc109XCJjb250ZXh0LnNlbGVjdGVkQ29sdW1uSWRzXCJcbiAgICAgIChzZWxlY3RlZElkc0NoYW5nZSk9XCJzZWxlY3RlZENvbHVtbnNDaGFuZ2UoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPHNreS1saXN0LXRvb2xiYXJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxuICAgICAgICAgICdza3l1eF9ncmlkX2NvbHVtbl9waWNrZXJfc2VhcmNoX3BsYWNlaG9sZGVyJyB8IHNreUxpYlJlc291cmNlc1xuICAgICAgICBcIlxuICAgICAgLz5cblxuICAgICAgPHNreS1saXN0LXZpZXctY2hlY2tsaXN0IGxhYmVsPVwiaGVhZGluZ1wiIGRlc2NyaXB0aW9uPVwiZGVzY3JpcHRpb25cIiAvPlxuICAgIDwvc2t5LWxpc3Q+XG4gIDwvc2t5LW1vZGFsLWNvbnRlbnQ+XG4gIDxza3ktbW9kYWwtZm9vdGVyPlxuICAgIDxidXR0b25cbiAgICAgIHNreS1jbXAtaWQ9XCJhcHBseS1jaGFuZ2VzXCJcbiAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLXByaW1hcnlcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwiYXBwbHlDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9ncmlkX2NvbHVtbl9waWNrZXJfc3VibWl0JyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIHNreS1jbXAtaWQ9XCJjYW5jZWxcIlxuICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGlua1wiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJjYW5jZWxDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9ncmlkX2NvbHVtbl9waWNrZXJfY2FuY2VsJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgIDwvYnV0dG9uPlxuICA8L3NreS1tb2RhbC1mb290ZXI+XG48L3NreS1tb2RhbD5cbiJdfQ==","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyListModule, SkyListToolbarModule } from '@skyux/list-builder';\nimport { SkyListViewChecklistModule } from '@skyux/list-builder-view-checklist';\nimport { SkyModalModule } from '@skyux/modals';\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\nimport { SkyColumnSelectorComponent } from './column-selector-modal.component';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\nexport class SkyColumnSelectorModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorModule, declarations: [SkyColumnSelectorComponent], imports: [CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListModule,\n SkyListToolbarModule,\n SkyListViewChecklistModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorModule, imports: [CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListModule,\n SkyListToolbarModule,\n SkyListViewChecklistModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyColumnSelectorModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [SkyColumnSelectorComponent],\n imports: [\n CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListModule,\n SkyListToolbarModule,\n SkyListViewChecklistModule,\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXNlbGVjdG9yLW1vZGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvY29sdW1uLXNlbGVjdG9yL2NvbHVtbi1zZWxlY3Rvci1tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFaEgsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBRS9FOztHQUVHO0FBWUgsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO2dIQUF2Qix1QkFBdUIsaUJBVm5CLDBCQUEwQixhQUV2QyxZQUFZO1lBQ1osY0FBYztZQUNkLHNDQUFzQztZQUN0QyxhQUFhO1lBQ2Isb0JBQW9CO1lBQ3BCLDBCQUEwQjtnSEFHakIsdUJBQXVCLFlBUmhDLFlBQVk7WUFDWixjQUFjO1lBQ2Qsc0NBQXNDO1lBQ3RDLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsMEJBQTBCOzs0RkFHakIsdUJBQXVCO2tCQVhuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUMxQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLHNDQUFzQzt3QkFDdEMsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLDBCQUEwQjtxQkFDM0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUxpc3RNb2R1bGUsIFNreUxpc3RUb29sYmFyTW9kdWxlIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlcic7XG5pbXBvcnQgeyBTa3lMaXN0Vmlld0NoZWNrbGlzdE1vZHVsZSB9IGZyb20gJ0Bza3l1eC9saXN0LWJ1aWxkZXItdmlldy1jaGVja2xpc3QnO1xuaW1wb3J0IHsgU2t5TW9kYWxNb2R1bGUgfSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuaW1wb3J0IHsgU2t5TGlzdEJ1aWxkZXJWaWV3R3JpZHNSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWxpc3QtYnVpbGRlci12aWV3LWdyaWRzLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lDb2x1bW5TZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLXNlbGVjdG9yLW1vZGFsLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgTGlzdCBidWlsZGVyIHZpZXcgZ3JpZCBhbmQgaXRzIGZlYXR1cmVzIGFyZSBkZXByZWNhdGVkLiBVc2UgZGF0YSBlbnRyeSBncmlkIGluc3RlYWQuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2RhdGEtZW50cnktZ3JpZC5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5Q29sdW1uU2VsZWN0b3JDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNreU1vZGFsTW9kdWxlLFxuICAgIFNreUxpc3RCdWlsZGVyVmlld0dyaWRzUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreUxpc3RNb2R1bGUsXG4gICAgU2t5TGlzdFRvb2xiYXJNb2R1bGUsXG4gICAgU2t5TGlzdFZpZXdDaGVja2xpc3RNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUNvbHVtblNlbGVjdG9yTW9kdWxlIHt9XG4iXX0=","/**\n * @internal\n * @deprecated\n */\nexport class ListViewDisplayedGridColumnsLoadAction {\n constructor(columns, refresh = false) {\n this.columns = columns;\n this.refresh = refresh;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3Qtdmlldy1ncmlkL3N0YXRlL2Rpc3BsYXllZC1jb2x1bW5zL2xvYWQuYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxzQ0FBc0M7SUFDakQsWUFDUyxPQUE2QixFQUM3QixVQUFVLEtBQUs7UUFEZixZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQUM3QixZQUFPLEdBQVAsT0FBTyxDQUFRO0lBQ3JCLENBQUM7Q0FDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUdyaWRDb2x1bW5Nb2RlbCB9IGZyb20gJ0Bza3l1eC9ncmlkcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY2xhc3MgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc0xvYWRBY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgY29sdW1uczogU2t5R3JpZENvbHVtbk1vZGVsW10sXG4gICAgcHVibGljIHJlZnJlc2ggPSBmYWxzZSxcbiAgKSB7fVxufVxuIl19","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@skyux/icon\";\nimport * as i2 from \"@skyux/i18n\";\nexport class SkyListColumnSelectorButtonComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.15\", type: SkyListColumnSelectorButtonComponent, isStandalone: false, selector: \"sky-list-column-selector-button\", ngImport: i0, template: \"<button\\n class=\\\"sky-btn sky-btn-default\\\"\\n type=\\\"button\\\"\\n [attr.aria-label]=\\\"'skyux_grid_columns_button' | skyLibResources\\\"\\n [title]=\\\"'skyux_grid_columns_button' | skyLibResources\\\"\\n>\\n <sky-icon iconName=\\\"layout-column-three\\\" />\\n <span class=\\\"sky-column-selector-action-btn-text\\\">\\n {{ 'skyux_grid_columns_toolbar_button' | skyLibResources }}\\n </span>\\n</button>\\n\", styles: [\":host .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:inline}\\n\"], dependencies: [{ kind: \"component\", type: i1.λ1, selector: \"sky-icon\", inputs: [\"iconName\", \"variant\", \"iconSize\"] }, { kind: \"pipe\", type: i2.SkyLibResourcesPipe, name: \"skyLibResources\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-list-column-selector-button', standalone: false, template: \"<button\\n class=\\\"sky-btn sky-btn-default\\\"\\n type=\\\"button\\\"\\n [attr.aria-label]=\\\"'skyux_grid_columns_button' | skyLibResources\\\"\\n [title]=\\\"'skyux_grid_columns_button' | skyLibResources\\\"\\n>\\n <sky-icon iconName=\\\"layout-column-three\\\" />\\n <span class=\\\"sky-column-selector-action-btn-text\\\">\\n {{ 'skyux_grid_columns_toolbar_button' | skyLibResources }}\\n </span>\\n</button>\\n\", styles: [\":host .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:inline}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1jb2x1bW4tc2VsZWN0b3ItYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvbGlzdC1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uL2xpc3QtY29sdW1uLXNlbGVjdG9yLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi9saXN0LWNvbHVtbi1zZWxlY3Rvci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVExQyxNQUFNLE9BQU8sb0NBQW9DOytHQUFwQyxvQ0FBb0M7bUdBQXBDLG9DQUFvQyw0RkNSakQsMFlBV0E7OzRGREhhLG9DQUFvQztrQkFOaEQsU0FBUzsrQkFDRSxpQ0FBaUMsY0FHL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktbGlzdC1jb2x1bW4tc2VsZWN0b3ItYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtY29sdW1uLXNlbGVjdG9yLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpc3QtY29sdW1uLXNlbGVjdG9yLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdENvbHVtblNlbGVjdG9yQnV0dG9uQ29tcG9uZW50IHt9XG4iLCI8YnV0dG9uXG4gIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWRlZmF1bHRcIlxuICB0eXBlPVwiYnV0dG9uXCJcbiAgW2F0dHIuYXJpYS1sYWJlbF09XCInc2t5dXhfZ3JpZF9jb2x1bW5zX2J1dHRvbicgfCBza3lMaWJSZXNvdXJjZXNcIlxuICBbdGl0bGVdPVwiJ3NreXV4X2dyaWRfY29sdW1uc19idXR0b24nIHwgc2t5TGliUmVzb3VyY2VzXCJcbj5cbiAgPHNreS1pY29uIGljb25OYW1lPVwibGF5b3V0LWNvbHVtbi10aHJlZVwiIC8+XG4gIDxzcGFuIGNsYXNzPVwic2t5LWNvbHVtbi1zZWxlY3Rvci1hY3Rpb24tYnRuLXRleHRcIj5cbiAgICB7eyAnc2t5dXhfZ3JpZF9jb2x1bW5zX3Rvb2xiYXJfYnV0dG9uJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICA8L3NwYW4+XG48L2J1dHRvbj5cbiJdfQ==","import { Component, EventEmitter, Input, Optional, Output, ViewChild, } from '@angular/core';\nimport { ListToolbarItemModel, } from '@skyux/list-builder';\nimport { distinctUntilChanged, map as observableMap, take, } from 'rxjs/operators';\nimport { SkyColumnSelectorContext, } from '../column-selector/column-selector-context';\nimport { SkyColumnSelectorComponent } from '../column-selector/column-selector-modal.component';\nimport { ListViewDisplayedGridColumnsLoadAction } from '../list-view-grid/state/displayed-columns/load.action';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@skyux/list-builder\";\nimport * as i2 from \"@skyux/modals\";\nimport * as i3 from \"./list-column-selector-button.component\";\nimport * as i4 from \"@angular/common\";\nimport * as i5 from \"@skyux/i18n\";\n/**\n * Provides a column selector modal for a list grid view when placed in a\n * [list toolbar](https://developer.blackbaud.com/skyux/components/list-toolbar).\n */\nexport class SkyListColumnSelectorActionComponent {\n constructor(listState, modalService, dispatcher, secondaryActions) {\n this.listState = listState;\n this.modalService = modalService;\n this.dispatcher = dispatcher;\n this.secondaryActions = secondaryActions;\n /**\n * Fires when users click the help button and broadcasts the `helpKey`.\n */\n this.helpOpened = new EventEmitter();\n this.columnSelectorActionItemToolbarIndex = 7000;\n }\n ngAfterContentInit() {\n if (!this.secondaryActions) {\n const columnChooserItem = new ListToolbarItemModel({\n id: 'column-chooser',\n template: this.columnChooserTemplate,\n location: 'left',\n });\n this.dispatcher.toolbarAddItems([columnChooserItem], this.columnSelectorActionItemToolbarIndex);\n }\n }\n get isInGridView() {\n return this.listState.pipe(observableMap((s) => s.views.active), observableMap((activeView) => {\n return this.gridView && activeView === this.gridView.id;\n }), distinctUntilChanged());\n }\n get isInGridViewAndSecondary() {\n return this.listState.pipe(observableMap((s) => s.views.active), observableMap((activeView) => {\n return (this.secondaryActions &&\n this.gridView &&\n activeView === this.gridView.id);\n }), distinctUntilChanged());\n }\n openColumnSelector() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.gridView) {\n let columns = [];\n let selectedColumnIds = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state) => {\n columns = state.columns.items\n .filter((item) => {\n return !item.locked;\n })\n .map((item) => {\n return {\n id: item.id,\n heading: item.heading,\n description: item.description,\n };\n });\n selectedColumnIds = state.displayedColumns.items\n .filter((item) => {\n return !item.locked;\n })\n .map((item) => {\n return item.id;\n });\n });\n const modalInstance = this.modalService.open(SkyColumnSelectorComponent, {\n providers: [\n {\n provide: SkyColumnSelectorContext,\n useValue: {\n columns,\n selectedColumnIds,\n },\n },\n ],\n helpKey: this.helpKey,\n });\n modalInstance.helpOpened.subscribe((helpKey) => {\n this.helpOpened.emit(helpKey);\n this.helpOpened.complete();\n });\n modalInstance.closed.subscribe((result) => {\n if (result.reason === 'save' && result.data) {\n const newSelectedIds = result.data;\n let newDisplayedColumns = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state) => {\n newDisplayedColumns = state.columns.items.filter((item) => {\n return newSelectedIds.indexOf(item.id) > -1 || item.locked;\n });\n });\n this.gridView.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(newDisplayedColumns, true));\n }\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionComponent, deps: [{ token: i1.ListState }, { token: i2.SkyModalService }, { token: i1.ListStateDispatcher }, { token: i1.SkyListSecondaryActionsComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.15\", type: SkyListColumnSelectorActionComponent, isStandalone: false, selector: \"sky-list-column-selector-action\", inputs: { gridView: \"gridView\", helpKey: \"helpKey\" }, outputs: { helpOpened: \"helpOpened\" }, viewQueries: [{ propertyName: \"columnChooserTemplate\", first: true, predicate: [\"columnChooser\"], descendants: true, static: true }], ngImport: i0, template: \"@if (isInGridViewAndSecondary | async) {\\n <sky-list-secondary-action>\\n <button type=\\\"button\\\" (click)=\\\"openColumnSelector()\\\">\\n {{ 'skyux_grid_columns_button' | skyLibResources }}\\n </button>\\n </sky-list-secondary-action>\\n}\\n\\n<ng-template #columnChooser>\\n @if (isInGridView | async) {\\n <sky-list-column-selector-button (click)=\\\"openColumnSelector()\\\" />\\n }\\n</ng-template>\\n\", dependencies: [{ kind: \"component\", type: i1.λ6, selector: \"sky-list-secondary-action\" }, { kind: \"component\", type: i3.SkyListColumnSelectorButtonComponent, selector: \"sky-list-column-selector-button\" }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.SkyLibResourcesPipe, name: \"skyLibResources\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-list-column-selector-action', standalone: false, template: \"@if (isInGridViewAndSecondary | async) {\\n <sky-list-secondary-action>\\n <button type=\\\"button\\\" (click)=\\\"openColumnSelector()\\\">\\n {{ 'skyux_grid_columns_button' | skyLibResources }}\\n </button>\\n </sky-list-secondary-action>\\n}\\n\\n<ng-template #columnChooser>\\n @if (isInGridView | async) {\\n <sky-list-column-selector-button (click)=\\\"openColumnSelector()\\\" />\\n }\\n</ng-template>\\n\" }]\n }], ctorParameters: () => [{ type: i1.ListState }, { type: i2.SkyModalService }, { type: i1.ListStateDispatcher }, { type: i1.SkyListSecondaryActionsComponent, decorators: [{\n type: Optional\n }] }], propDecorators: { gridView: [{\n type: Input\n }], helpKey: [{\n type: Input\n }], helpOpened: [{\n type: Output\n }], columnChooserTemplate: [{\n type: ViewChild,\n args: ['columnChooser', {\n static: true,\n }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvbGlzdC1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi9saXN0LWNvbHVtbi1zZWxlY3Rvci1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFHTCxvQkFBb0IsR0FFckIsTUFBTSxxQkFBcUIsQ0FBQztBQUk3QixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLEdBQUcsSUFBSSxhQUFhLEVBQ3BCLElBQUksR0FDTCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCx3QkFBd0IsR0FFekIsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUVoRyxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7Ozs7OztBQUcvRzs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sb0NBQW9DO0lBNEIvQyxZQUNTLFNBQW9CLEVBQ25CLFlBQTZCLEVBQzdCLFVBQStCLEVBQ3BCLGdCQUFrRDtRQUg5RCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ25CLGlCQUFZ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QUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQzt3QkFDN0QsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUMvQixJQUFJLHNDQUFzQyxDQUN4QyxtQkFBbUIsRUFDbkIsSUFBSSxDQUNMLENBQ0YsQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzsrR0E3SVUsb0NBQW9DO21HQUFwQyxvQ0FBb0MsK1RDNUNqRCxzWkFhQTs7NEZEK0JhLG9DQUFvQztrQkFMaEQsU0FBUzsrQkFDRSxpQ0FBaUMsY0FFL0IsS0FBSzs7MEJBa0NkLFFBQVE7O3NCQTNCVixLQUFLOztzQkFPTCxLQUFLOztzQkFNTCxNQUFNOztzQkFHTixTQUFTO3VCQUFDLGVBQWUsRUFBRTt3QkFDMUIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5R3JpZENvbHVtbk1vZGVsIH0gZnJvbSAnQHNreXV4L2dyaWRzJztcbmltcG9ydCB7XG4gIExpc3RTdGF0ZSxcbiAgTGlzdFN0YXRlRGlzcGF0Y2hlcixcbiAgTGlzdFRvb2xiYXJJdGVtTW9kZWwsXG4gIFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zQ29tcG9uZW50LFxufSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyJztcbmltcG9ydCB7IFNreU1vZGFsQ2xvc2VBcmdzLCBTa3lNb2RhbFNlcnZpY2UgfSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCBhcyBvYnNlcnZhYmxlTWFwLFxuICB0YWtlLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIFNreUNvbHVtblNlbGVjdG9yQ29udGV4dCxcbiAgU2t5Q29sdW1uU2VsZWN0b3JNb2RlbCxcbn0gZnJvbSAnLi4vY29sdW1uLXNlbGVjdG9yL2NvbHVtbi1zZWxlY3Rvci1jb250ZXh0JztcbmltcG9ydCB7IFNreUNvbHVtblNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vY29sdW1uLXNlbGVjdG9yL2NvbHVtbi1zZWxlY3Rvci1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TGlzdFZpZXdHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi4vbGlzdC12aWV3LWdyaWQvbGlzdC12aWV3LWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RWaWV3RGlzcGxheWVkR3JpZENvbHVtbnNMb2FkQWN0aW9uIH0gZnJvbSAnLi4vbGlzdC12aWV3LWdyaWQvc3RhdGUvZGlzcGxheWVkLWNvbHVtbnMvbG9hZC5hY3Rpb24nO1xuaW1wb3J0IHsgR3JpZFN0YXRlTW9kZWwgfSBmcm9tICcuLi9saXN0LXZpZXctZ3JpZC9zdGF0ZS9ncmlkLXN0YXRlLm1vZGVsJztcblxuLyoqXG4gKiBQcm92aWRlcyBhIGNvbHVtbiBzZWxlY3RvciBtb2RhbCBmb3IgYSBsaXN0IGdyaWQgdmlldyB3aGVuIHBsYWNlZCBpbiBhXG4gKiBbbGlzdCB0b29sYmFyXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvbGlzdC10b29sYmFyKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWxpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LWNvbHVtbi1zZWxlY3Rvci1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdENvbHVtblNlbGVjdG9yQWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIC8qKlxuICAgKiBFbmFibGVzIHRoZSBjb2x1bW4gc2VsZWN0b3IgaW4gdGhlIGxpc3QgdG9vbGJhci4gU2V0IHRoaXMgYXR0cmlidXRlIHRvIHRoZSBpbnN0YW5jZSBvZlxuICAgKiB0aGUgYHNreS1ncmlkLXZpZXdgIGNvbXBvbmVudCB1c2luZyB0aGUgY29tcG9uZW50J3MgdGVtcGxhdGUgcmVmZXJlbmNlIHZhcmlhYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdyaWRWaWV3OiBTa3lMaXN0Vmlld0dyaWRDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBgaGVscEtleWAgc3RyaW5nIHRvIGFzc29jaWF0ZSB3aXRoIGEgaGVscCBidXR0b24gaW4gdGhlIGdyaWQgaGVhZGVyLiBXaGVuIHVzZXJzIHNlbGVjdFxuICAgKiB0aGUgYnV0dG9uLCB0aGUgYGhlbHBPcGVuZWRgIGV2ZW50IGJyb2FkY2FzdHMgdGhlIGBoZWxwS2V5YCBwYXJhbWV0ZXIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGVscEtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHVzZXJzIGNsaWNrIHRoZSBoZWxwIGJ1dHRvbiBhbmQgYnJvYWRjYXN0cyB0aGUgYGhlbHBLZXlgLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBoZWxwT3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQFZpZXdDaGlsZCgnY29sdW1uQ2hvb3NlcicsIHtcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHByaXZhdGUgY29sdW1uQ2hvb3NlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBwcml2YXRlIGNvbHVtblNlbGVjdG9yQWN0aW9uSXRlbVRvb2xiYXJJbmRleCA9IDcwMDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGxpc3RTdGF0ZTogTGlzdFN0YXRlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBTa3lNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkaXNwYXRjaGVyOiBMaXN0U3RhdGVEaXNwYXRjaGVyLFxuICAgIEBPcHRpb25hbCgpIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25zOiBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uc0NvbXBvbmVudCxcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlY29uZGFyeUFjdGlvbnMpIHtcbiAgICAgIGNvbnN0IGNvbHVtbkNob29zZXJJdGVtID0gbmV3IExpc3RUb29sYmFySXRlbU1vZGVsKHtcbiAgICAgICAgaWQ6ICdjb2x1bW4tY2hvb3NlcicsXG4gICAgICAgIHRlbXBsYXRlOiB0aGlzLmNvbHVtbkNob29zZXJUZW1wbGF0ZSxcbiAgICAgICAgbG9jYXRpb246ICdsZWZ0JyxcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLmRpc3BhdGNoZXIudG9vbGJhckFkZEl0ZW1zKFxuICAgICAgICBbY29sdW1uQ2hvb3Nlckl0ZW1dLFxuICAgICAgICB0aGlzLmNvbHVtblNlbGVjdG9yQWN0aW9uSXRlbVRvb2xiYXJJbmRleCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpc0luR3JpZFZpZXcoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdFN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnZpZXdzLmFjdGl2ZSksXG4gICAgICBvYnNlcnZhYmxlTWFwKChhY3RpdmVWaWV3KSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRWaWV3ICYmIGFjdGl2ZVZpZXcgPT09IHRoaXMuZ3JpZFZpZXcuaWQ7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNJbkdyaWRWaWV3QW5kU2Vjb25kYXJ5KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmxpc3RTdGF0ZS5waXBlKFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4gcy52aWV3cy5hY3RpdmUpLFxuICAgICAgb2JzZXJ2YWJsZU1hcCgoYWN0aXZlVmlldykgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIHRoaXMuc2Vjb25kYXJ5QWN0aW9ucyAmJlxuICAgICAgICAgIHRoaXMuZ3JpZFZpZXcgJiZcbiAgICAgICAgICBhY3RpdmVWaWV3ID09PSB0aGlzLmdyaWRWaWV3LmlkXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuQ29sdW1uU2VsZWN0b3IoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICBpZiAodGhpcy5ncmlkVmlldykge1xuICAgICAgbGV0IGNvbHVtbnM6IFNreUNvbHVtblNlbGVjdG9yTW9kZWxbXSA9IFtdO1xuICAgICAgbGV0IHNlbGVjdGVkQ29sdW1uSWRzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgdGhpcy5ncmlkVmlldy5ncmlkU3RhdGVcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IEdyaWRTdGF0ZU1vZGVsKSA9PiB7XG4gICAgICAgICAgY29sdW1ucyA9IHN0YXRlLmNvbHVtbnMuaXRlbXNcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0ZW06IFNreUdyaWRDb2x1bW5Nb2RlbCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gIWl0ZW0ubG9ja2VkO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5tYXAoKGl0ZW06IFNreUdyaWRDb2x1bW5Nb2RlbCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlkOiBpdGVtLmlkLFxuICAgICAgICAgICAgICAgIGhlYWRpbmc6IGl0ZW0uaGVhZGluZyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogaXRlbS5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIHNlbGVjdGVkQ29sdW1uSWRzID0gc3RhdGUuZGlzcGxheWVkQ29sdW1ucy5pdGVtc1xuICAgICAgICAgICAgLmZpbHRlcigoaXRlbTogU2t5R3JpZENvbHVtbk1vZGVsKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiAhaXRlbS5sb2NrZWQ7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLm1hcCgoaXRlbTogU2t5R3JpZENvbHVtbk1vZGVsKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBpdGVtLmlkO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICBjb25zdCBtb2RhbEluc3RhbmNlID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihTa3lDb2x1bW5TZWxlY3RvckNvbXBvbmVudCwge1xuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBTa3lDb2x1bW5TZWxlY3RvckNvbnRleHQsXG4gICAgICAgICAgICB1c2VWYWx1ZToge1xuICAgICAgICAgICAgICBjb2x1bW5zLFxuICAgICAgICAgICAgICBzZWxlY3RlZENvbHVtbklkcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgaGVscEtleTogdGhpcy5oZWxwS2V5LFxuICAgICAgfSk7XG5cbiAgICAgIG1vZGFsSW5zdGFuY2UuaGVscE9wZW5lZC5zdWJzY3JpYmUoKGhlbHBLZXk6IHN0cmluZykgPT4ge1xuICAgICAgICB0aGlzLmhlbHBPcGVuZWQuZW1pdChoZWxwS2V5KTtcbiAgICAgICAgdGhpcy5oZWxwT3BlbmVkLmNvbXBsZXRlKCk7XG4gICAgICB9KTtcblxuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKChyZXN1bHQ6IFNreU1vZGFsQ2xvc2VBcmdzKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScgJiYgcmVzdWx0LmRhdGEpIHtcbiAgICAgICAgICBjb25zdCBuZXdTZWxlY3RlZElkcyA9IHJlc3VsdC5kYXRhO1xuICAgICAgICAgIGxldCBuZXdEaXNwbGF5ZWRDb2x1bW5zOiBTa3lHcmlkQ29sdW1uTW9kZWxbXSA9IFtdO1xuICAgICAgICAgIHRoaXMuZ3JpZFZpZXcuZ3JpZFN0YXRlXG4gICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IEdyaWRTdGF0ZU1vZGVsKSA9PiB7XG4gICAgICAgICAgICAgIG5ld0Rpc3BsYXllZENvbHVtbnMgPSBzdGF0ZS5jb2x1bW5zLml0ZW1zLmZpbHRlcigoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXdTZWxlY3RlZElkcy5pbmRleE9mKGl0ZW0uaWQpID4gLTEgfHwgaXRlbS5sb2NrZWQ7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5ncmlkVmlldy5ncmlkRGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICAgICAgbmV3IExpc3RWaWV3RGlzcGxheWVkR3JpZENvbHVtbnNMb2FkQWN0aW9uKFxuICAgICAgICAgICAgICBuZXdEaXNwbGF5ZWRDb2x1bW5zLFxuICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpZiAoaXNJbkdyaWRWaWV3QW5kU2Vjb25kYXJ5IHwgYXN5bmMpIHtcbiAgPHNreS1saXN0LXNlY29uZGFyeS1hY3Rpb24+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5Db2x1bW5TZWxlY3RvcigpXCI+XG4gICAgICB7eyAnc2t5dXhfZ3JpZF9jb2x1bW5zX2J1dHRvbicgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9za3ktbGlzdC1zZWNvbmRhcnktYWN0aW9uPlxufVxuXG48bmctdGVtcGxhdGUgI2NvbHVtbkNob29zZXI+XG4gIEBpZiAoaXNJbkdyaWRWaWV3IHwgYXN5bmMpIHtcbiAgICA8c2t5LWxpc3QtY29sdW1uLXNlbGVjdG9yLWJ1dHRvbiAoY2xpY2spPVwib3BlbkNvbHVtblNlbGVjdG9yKClcIiAvPlxuICB9XG48L25nLXRlbXBsYXRlPlxuIl19","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyListSecondaryActionsModule, SkyListToolbarModule, } from '@skyux/list-builder';\nimport { SkyModalModule } from '@skyux/modals';\nimport { SkyColumnSelectorModule } from '../column-selector/column-selector-modal.module';\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\nimport { SkyListColumnSelectorActionComponent } from './list-column-selector-action.component';\nimport { SkyListColumnSelectorButtonComponent } from './list-column-selector-button.component';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\nexport class SkyListColumnSelectorActionModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionModule, declarations: [SkyListColumnSelectorActionComponent,\n SkyListColumnSelectorButtonComponent], imports: [CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n SkyIconModule], exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionModule, imports: [CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n SkyIconModule, SkyColumnSelectorModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListColumnSelectorActionModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [\n SkyListColumnSelectorActionComponent,\n SkyListColumnSelectorButtonComponent,\n ],\n imports: [\n CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n SkyIconModule,\n ],\n exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvbGlzdC1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLG9CQUFvQixHQUNyQixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFaEgsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBRS9GOztHQUVHO0FBZ0JILE1BQU0sT0FBTyxpQ0FBaUM7K0dBQWpDLGlDQUFpQztnSEFBakMsaUNBQWlDLGlCQWIxQyxvQ0FBb0M7WUFDcEMsb0NBQW9DLGFBR3BDLFlBQVk7WUFDWixjQUFjO1lBQ2Qsc0NBQXNDO1lBQ3RDLDZCQUE2QjtZQUM3QixvQkFBb0I7WUFDcEIsYUFBYSxhQUVMLG9DQUFvQyxFQUFFLHVCQUF1QjtnSEFFNUQsaUNBQWlDLFlBVDFDLFlBQVk7WUFDWixjQUFjO1lBQ2Qsc0NBQXNDO1lBQ3RDLDZCQUE2QjtZQUM3QixvQkFBb0I7WUFDcEIsYUFBYSxFQUVpQyx1QkFBdUI7OzRGQUU1RCxpQ0FBaUM7a0JBZjdDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG9DQUFvQzt3QkFDcEMsb0NBQW9DO3FCQUNyQztvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLHNDQUFzQzt3QkFDdEMsNkJBQTZCO3dCQUM3QixvQkFBb0I7d0JBQ3BCLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsb0NBQW9DLEVBQUUsdUJBQXVCLENBQUM7aUJBQ3pFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lJY29uTW9kdWxlIH0gZnJvbSAnQHNreXV4L2ljb24nO1xuaW1wb3J0IHtcbiAgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNNb2R1bGUsXG4gIFNreUxpc3RUb29sYmFyTW9kdWxlLFxufSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyJztcbmltcG9ydCB7IFNreU1vZGFsTW9kdWxlIH0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7IFNreUNvbHVtblNlbGVjdG9yTW9kdWxlIH0gZnJvbSAnLi4vY29sdW1uLXNlbGVjdG9yL2NvbHVtbi1zZWxlY3Rvci1tb2RhbC5tb2R1bGUnO1xuaW1wb3J0IHsgU2t5TGlzdEJ1aWxkZXJWaWV3R3JpZHNSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWxpc3QtYnVpbGRlci12aWV3LWdyaWRzLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lMaXN0Q29sdW1uU2VsZWN0b3JBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TGlzdENvbHVtblNlbGVjdG9yQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LWNvbHVtbi1zZWxlY3Rvci1idXR0b24uY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBMaXN0IGJ1aWxkZXIgdmlldyBncmlkIGFuZCBpdHMgZmVhdHVyZXMgYXJlIGRlcHJlY2F0ZWQuIFVzZSBkYXRhIGVudHJ5IGdyaWQgaW5zdGVhZC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvZGF0YS1lbnRyeS1ncmlkLlxuICovXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lMaXN0Q29sdW1uU2VsZWN0b3JBY3Rpb25Db21wb25lbnQsXG4gICAgU2t5TGlzdENvbHVtblNlbGVjdG9yQnV0dG9uQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNreU1vZGFsTW9kdWxlLFxuICAgIFNreUxpc3RCdWlsZGVyVmlld0dyaWRzUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zTW9kdWxlLFxuICAgIFNreUxpc3RUb29sYmFyTW9kdWxlLFxuICAgIFNreUljb25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtTa3lMaXN0Q29sdW1uU2VsZWN0b3JBY3Rpb25Db21wb25lbnQsIFNreUNvbHVtblNlbGVjdG9yTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdENvbHVtblNlbGVjdG9yQWN0aW9uTW9kdWxlIHt9XG4iXX0=","/**\n * @internal\n * @deprecated\n */\nexport class ListViewGridColumnsLoadAction {\n constructor(columns, refresh = false) {\n this.columns = columns;\n this.refresh = refresh;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3Qtdmlldy1ncmlkL3N0YXRlL2NvbHVtbnMvbG9hZC5hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxZQUNTLE9BQTZCLEVBQzdCLFVBQVUsS0FBSztRQURmLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVE7SUFDckIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5R3JpZENvbHVtbk1vZGVsIH0gZnJvbSAnQHNreXV4L2dyaWRzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0Vmlld0dyaWRDb2x1bW5zTG9hZEFjdGlvbiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjb2x1bW5zOiBTa3lHcmlkQ29sdW1uTW9kZWxbXSxcbiAgICBwdWJsaWMgcmVmcmVzaCA9IGZhbHNlLFxuICApIHt9XG59XG4iXX0=","import { AsyncList } from '@skyux/list-builder-common';\n/**\n * @internal\n * @deprecated\n */\nexport class GridStateModel {\n constructor() {\n this.columns = new AsyncList();\n this.displayedColumns = new AsyncList();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXItdmlldy1ncmlkcy9zcmMvbGliL21vZHVsZXMvbGlzdC12aWV3LWdyaWQvc3RhdGUvZ3JpZC1zdGF0ZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFBM0I7UUFDUyxZQUFPLEdBQ1osSUFBSSxTQUFTLEVBQXNCLENBQUM7UUFDL0IscUJBQWdCLEdBQ3JCLElBQUksU0FBUyxFQUFzQixDQUFDO0lBQ3hDLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUdyaWRDb2x1bW5Nb2RlbCB9IGZyb20gJ0Bza3l1eC9ncmlkcyc7XG5pbXBvcnQgeyBBc3luY0xpc3QgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY2xhc3MgR3JpZFN0YXRlTW9kZWwge1xuICBwdWJsaWMgY29sdW1uczogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4gPVxuICAgIG5ldyBBc3luY0xpc3Q8U2t5R3JpZENvbHVtbk1vZGVsPigpO1xuICBwdWJsaWMgZGlzcGxheWVkQ29sdW1uczogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4gPVxuICAgIG5ldyBBc3luY0xpc3Q8U2t5R3JpZENvbHVtbk1vZGVsPigpO1xufVxuIl19","import { Injectable } from '@angular/core';\nimport { StateDispatcher, StateOrchestrator } from '@skyux/list-builder-common';\nimport * as i0 from \"@angular/core\";\n/**\n * @internal\n * @deprecated\n */\nexport class GridStateDispatcher extends StateDispatcher {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridStateDispatcher, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridStateDispatcher }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridStateDispatcher, decorators: [{\n type: Injectable\n }] });\n/**\n * @internal\n */\nexport class GridStateOrchestrator extends StateOrchestrator {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zdGF0ZS5yeHN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC9zdGF0ZS9ncmlkLXN0YXRlLnJ4c3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBSWhGOzs7R0FHRztBQUVILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxlQUFnQzsrR0FBNUQsbUJBQW1CO21IQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVU7O0FBR1g7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXlCLFNBQVEsaUJBRzdDO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGF0ZURpc3BhdGNoZXIsIFN0YXRlT3JjaGVzdHJhdG9yIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBHcmlkU3RhdGVBY3Rpb24gfSBmcm9tICcuL2dyaWQtc3RhdGUtYWN0aW9uLnR5cGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICogQGRlcHJlY2F0ZWRcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdyaWRTdGF0ZURpc3BhdGNoZXIgZXh0ZW5kcyBTdGF0ZURpc3BhdGNoZXI8R3JpZFN0YXRlQWN0aW9uPiB7fVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgR3JpZFN0YXRlT3JjaGVzdHJhdG9yPFQ+IGV4dGVuZHMgU3RhdGVPcmNoZXN0cmF0b3I8XG4gIFQsXG4gIEdyaWRTdGF0ZUFjdGlvblxuPiB7fVxuIl19","import { SkyGridColumnModel } from '@skyux/grids';\nimport { AsyncList } from '@skyux/list-builder-common';\nimport { GridStateOrchestrator } from '../grid-state.rxstate';\nimport { ListViewGridColumnsLoadAction } from './load.action';\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewGridColumnsOrchestrator extends GridStateOrchestrator {\n /* istanbul ignore next */\n constructor() {\n super();\n this.register(ListViewGridColumnsLoadAction, this.load);\n }\n load(state, action) {\n const newColumns = action.columns.map((g) => new SkyGridColumnModel(g.template, g));\n if (action.refresh) {\n return new AsyncList([...newColumns], new Date());\n }\n return new AsyncList([...state.items, ...newColumns], new Date());\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy5vcmNoZXN0cmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3Qtdmlldy1ncmlkL3N0YXRlL2NvbHVtbnMvY29sdW1ucy5vcmNoZXN0cmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLHFCQUVwRDtJQUNDLDBCQUEwQjtJQUMxQjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVPLElBQUksQ0FDVixLQUFvQyxFQUNwQyxNQUFxQztRQUVyQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FDbkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksa0JBQWtCLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FDN0MsQ0FBQztRQUVGLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ25CLE9BQU8sSUFBSSxTQUFTLENBQXFCLENBQUMsR0FBRyxVQUFVLENBQUMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDeEUsQ0FBQztRQUVELE9BQU8sSUFBSSxTQUFTLENBQ2xCLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDLEVBQy9CLElBQUksSUFBSSxFQUFFLENBQ1gsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUdyaWRDb2x1bW5Nb2RlbCB9IGZyb20gJ0Bza3l1eC9ncmlkcyc7XG5pbXBvcnQgeyBBc3luY0xpc3QgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IEdyaWRTdGF0ZU9yY2hlc3RyYXRvciB9IGZyb20gJy4uL2dyaWQtc3RhdGUucnhzdGF0ZSc7XG5cbmltcG9ydCB7IExpc3RWaWV3R3JpZENvbHVtbnNMb2FkQWN0aW9uIH0gZnJvbSAnLi9sb2FkLmFjdGlvbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY2xhc3MgTGlzdFZpZXdHcmlkQ29sdW1uc09yY2hlc3RyYXRvciBleHRlbmRzIEdyaWRTdGF0ZU9yY2hlc3RyYXRvcjxcbiAgQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD5cbj4ge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5yZWdpc3RlcihMaXN0Vmlld0dyaWRDb2x1bW5zTG9hZEFjdGlvbiwgdGhpcy5sb2FkKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZChcbiAgICBzdGF0ZTogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4sXG4gICAgYWN0aW9uOiBMaXN0Vmlld0dyaWRDb2x1bW5zTG9hZEFjdGlvbixcbiAgKTogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4ge1xuICAgIGNvbnN0IG5ld0NvbHVtbnMgPSBhY3Rpb24uY29sdW1ucy5tYXAoXG4gICAgICAoZykgPT4gbmV3IFNreUdyaWRDb2x1bW5Nb2RlbChnLnRlbXBsYXRlLCBnKSxcbiAgICApO1xuXG4gICAgaWYgKGFjdGlvbi5yZWZyZXNoKSB7XG4gICAgICByZXR1cm4gbmV3IEFzeW5jTGlzdDxTa3lHcmlkQ29sdW1uTW9kZWw+KFsuLi5uZXdDb2x1bW5zXSwgbmV3IERhdGUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBBc3luY0xpc3Q8U2t5R3JpZENvbHVtbk1vZGVsPihcbiAgICAgIFsuLi5zdGF0ZS5pdGVtcywgLi4ubmV3Q29sdW1uc10sXG4gICAgICBuZXcgRGF0ZSgpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { SkyGridColumnModel } from '@skyux/grids';\nimport { AsyncList } from '@skyux/list-builder-common';\nimport { GridStateOrchestrator } from '../grid-state.rxstate';\nimport { ListViewDisplayedGridColumnsLoadAction } from './load.action';\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewDisplayedGridColumnsOrchestrator extends GridStateOrchestrator {\n /* istanbul ignore next */\n constructor() {\n super();\n this.register(ListViewDisplayedGridColumnsLoadAction, this.load);\n }\n load(state, action) {\n const newColumns = action.columns.map((g) => new SkyGridColumnModel(g.template, g));\n if (action.refresh) {\n return new AsyncList([...newColumns], new Date());\n }\n return new AsyncList([...state.items, ...newColumns], new Date());\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheWVkLWNvbHVtbnMub3JjaGVzdHJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC9zdGF0ZS9kaXNwbGF5ZWQtY29sdW1ucy9kaXNwbGF5ZWQtY29sdW1ucy5vcmNoZXN0cmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkU7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLHFCQUU3RDtJQUNDLDBCQUEwQjtJQUMxQjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxzQ0FBc0MsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVPLElBQUksQ0FDVixLQUFvQyxFQUNwQyxNQUE4QztRQUU5QyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FDbkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksa0JBQWtCLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FDN0MsQ0FBQztRQUVGLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ25CLE9BQU8sSUFBSSxTQUFTLENBQXFCLENBQUMsR0FBRyxVQUFVLENBQUMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDeEUsQ0FBQztRQUVELE9BQU8sSUFBSSxTQUFTLENBQ2xCLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDLEVBQy9CLElBQUksSUFBSSxFQUFFLENBQ1gsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUdyaWRDb2x1bW5Nb2RlbCB9IGZyb20gJ0Bza3l1eC9ncmlkcyc7XG5pbXBvcnQgeyBBc3luY0xpc3QgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IEdyaWRTdGF0ZU9yY2hlc3RyYXRvciB9IGZyb20gJy4uL2dyaWQtc3RhdGUucnhzdGF0ZSc7XG5cbmltcG9ydCB7IExpc3RWaWV3RGlzcGxheWVkR3JpZENvbHVtbnNMb2FkQWN0aW9uIH0gZnJvbSAnLi9sb2FkLmFjdGlvbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY2xhc3MgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc09yY2hlc3RyYXRvciBleHRlbmRzIEdyaWRTdGF0ZU9yY2hlc3RyYXRvcjxcbiAgQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD5cbj4ge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5yZWdpc3RlcihMaXN0Vmlld0Rpc3BsYXllZEdyaWRDb2x1bW5zTG9hZEFjdGlvbiwgdGhpcy5sb2FkKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZChcbiAgICBzdGF0ZTogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4sXG4gICAgYWN0aW9uOiBMaXN0Vmlld0Rpc3BsYXllZEdyaWRDb2x1bW5zTG9hZEFjdGlvbixcbiAgKTogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4ge1xuICAgIGNvbnN0IG5ld0NvbHVtbnMgPSBhY3Rpb24uY29sdW1ucy5tYXAoXG4gICAgICAoZykgPT4gbmV3IFNreUdyaWRDb2x1bW5Nb2RlbChnLnRlbXBsYXRlLCBnKSxcbiAgICApO1xuXG4gICAgaWYgKGFjdGlvbi5yZWZyZXNoKSB7XG4gICAgICByZXR1cm4gbmV3IEFzeW5jTGlzdDxTa3lHcmlkQ29sdW1uTW9kZWw+KFsuLi5uZXdDb2x1bW5zXSwgbmV3IERhdGUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBBc3luY0xpc3Q8U2t5R3JpZENvbHVtbk1vZGVsPihcbiAgICAgIFsuLi5zdGF0ZS5pdGVtcywgLi4ubmV3Q29sdW1uc10sXG4gICAgICBuZXcgRGF0ZSgpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Injectable } from '@angular/core';\nimport { StateNode } from '@skyux/list-builder-common';\nimport { ListViewGridColumnsOrchestrator } from './columns/columns.orchestrator';\nimport { ListViewDisplayedGridColumnsOrchestrator } from './displayed-columns/displayed-columns.orchestrator';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./grid-state.model\";\nimport * as i2 from \"./grid-state.rxstate\";\n/**\n * @internal\n * @deprecated\n */\nexport class GridState extends StateNode {\n /* istanbul ignore next */\n constructor(initialState, dispatcher) {\n super(initialState, dispatcher);\n this.register('columns', ListViewGridColumnsOrchestrator)\n .register('displayedColumns', ListViewDisplayedGridColumnsOrchestrator)\n .begin();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridState, deps: [{ token: i1.GridStateModel }, { token: i2.GridStateDispatcher }], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridState }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: GridState, decorators: [{\n type: Injectable\n }], ctorParameters: () => [{ type: i1.GridStateModel }, { type: i2.GridStateDispatcher }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zdGF0ZS5zdGF0ZS1ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC9zdGF0ZS9ncmlkLXN0YXRlLnN0YXRlLW5vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakYsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sb0RBQW9ELENBQUM7Ozs7QUFJOUc7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFNBQVUsU0FBUSxTQUF5QjtJQUN0RCwwQkFBMEI7SUFDMUIsWUFBWSxZQUE0QixFQUFFLFVBQStCO1FBQ3ZFLEtBQUssQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsK0JBQStCLENBQUM7YUFDdEQsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHdDQUF3QyxDQUFDO2FBQ3RFLEtBQUssRUFBRSxDQUFDO0lBQ2IsQ0FBQzsrR0FSVSxTQUFTO21IQUFULFNBQVM7OzRGQUFULFNBQVM7a0JBRHJCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGF0ZU5vZGUgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IExpc3RWaWV3R3JpZENvbHVtbnNPcmNoZXN0cmF0b3IgfSBmcm9tICcuL2NvbHVtbnMvY29sdW1ucy5vcmNoZXN0cmF0b3InO1xuaW1wb3J0IHsgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc09yY2hlc3RyYXRvciB9IGZyb20gJy4vZGlzcGxheWVkLWNvbHVtbnMvZGlzcGxheWVkLWNvbHVtbnMub3JjaGVzdHJhdG9yJztcbmltcG9ydCB7IEdyaWRTdGF0ZU1vZGVsIH0gZnJvbSAnLi9ncmlkLXN0YXRlLm1vZGVsJztcbmltcG9ydCB7IEdyaWRTdGF0ZURpc3BhdGNoZXIgfSBmcm9tICcuL2dyaWQtc3RhdGUucnhzdGF0ZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZGVwcmVjYXRlZFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR3JpZFN0YXRlIGV4dGVuZHMgU3RhdGVOb2RlPEdyaWRTdGF0ZU1vZGVsPiB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGNvbnN0cnVjdG9yKGluaXRpYWxTdGF0ZTogR3JpZFN0YXRlTW9kZWwsIGRpc3BhdGNoZXI6IEdyaWRTdGF0ZURpc3BhdGNoZXIpIHtcbiAgICBzdXBlcihpbml0aWFsU3RhdGUsIGRpc3BhdGNoZXIpO1xuXG4gICAgdGhpcy5yZWdpc3RlcignY29sdW1ucycsIExpc3RWaWV3R3JpZENvbHVtbnNPcmNoZXN0cmF0b3IpXG4gICAgICAucmVnaXN0ZXIoJ2Rpc3BsYXllZENvbHVtbnMnLCBMaXN0Vmlld0Rpc3BsYXllZEdyaWRDb2x1bW5zT3JjaGVzdHJhdG9yKVxuICAgICAgLmJlZ2luKCk7XG4gIH1cbn1cbiJdfQ==","/**\n * The command for the list view grid to respond to.\n * @deprecated\n */\nexport var SkyListViewGridMessageType;\n(function (SkyListViewGridMessageType) {\n /**\n * Deletes of a row in the list view grid.\n */\n SkyListViewGridMessageType[SkyListViewGridMessageType[\"PromptDeleteRow\"] = 0] = \"PromptDeleteRow\";\n /**\n * Cancels the deletion of a row in the list view grid.\n */\n SkyListViewGridMessageType[SkyListViewGridMessageType[\"AbortDeleteRow\"] = 1] = \"AbortDeleteRow\";\n})(SkyListViewGridMessageType || (SkyListViewGridMessageType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3LWdyaWQtbWVzc2FnZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC90eXBlcy9saXN0LXZpZXctZ3JpZC1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxDQUFOLElBQVksMEJBVVg7QUFWRCxXQUFZLDBCQUEwQjtJQUNwQzs7T0FFRztJQUNILGlHQUFtQixDQUFBO0lBRW5COztPQUVHO0lBQ0gsK0ZBQWtCLENBQUE7QUFDcEIsQ0FBQyxFQVZXLDBCQUEwQixLQUExQiwwQkFBMEIsUUFVckMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBjb21tYW5kIGZvciB0aGUgbGlzdCB2aWV3IGdyaWQgdG8gcmVzcG9uZCB0by5cbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBlbnVtIFNreUxpc3RWaWV3R3JpZE1lc3NhZ2VUeXBlIHtcbiAgLyoqXG4gICAqIERlbGV0ZXMgb2YgYSByb3cgaW4gdGhlIGxpc3QgdmlldyBncmlkLlxuICAgKi9cbiAgUHJvbXB0RGVsZXRlUm93ID0gMCxcblxuICAvKipcbiAgICogQ2FuY2VscyB0aGUgZGVsZXRpb24gb2YgYSByb3cgaW4gdGhlIGxpc3QgdmlldyBncmlkLlxuICAgKi9cbiAgQWJvcnREZWxldGVSb3cgPSAxLFxufVxuIl19","import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, Output, ViewChild, forwardRef, } from '@angular/core';\nimport { SkyGridColumnComponent, SkyGridColumnModel, SkyGridComponent, SkyGridMessageType, SkyGridSelectedRowsSource, } from '@skyux/grids';\nimport { ListSearchModel, ListViewComponent, } from '@skyux/list-builder';\nimport { getData, getValue, isObservable, } from '@skyux/list-builder-common';\nimport { Subject, of as observableOf } from 'rxjs';\nimport { distinctUntilChanged, map as observableMap, scan, take, takeUntil, } from 'rxjs/operators';\nimport { ListViewGridColumnsLoadAction } from './state/columns/load.action';\nimport { ListViewDisplayedGridColumnsLoadAction } from './state/displayed-columns/load.action';\nimport { GridStateModel } from './state/grid-state.model';\nimport { GridStateDispatcher } from './state/grid-state.rxstate';\nimport { GridState } from './state/grid-state.state-node';\nimport { SkyListViewGridMessageType } from './types/list-view-grid-message-type';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@skyux/list-builder\";\nimport * as i2 from \"./state/grid-state.state-node\";\nimport * as i3 from \"./state/grid-state.rxstate\";\nimport * as i4 from \"@skyux/core\";\nimport * as i5 from \"@skyux/indicators\";\nimport * as i6 from \"@skyux/grids\";\nimport * as i7 from \"@angular/common\";\n/**\n * Displays a grid for a\n * [SKY UX-themed list of data](https://developer.blackbaud.com/skyux/components/list-overview)\n * using the [grid component](https://developer.blackbaud.com/skyux/components/grid).\n * You must install `SkyListModule` as a dependency.\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\nexport class SkyListViewGridComponent extends ListViewComponent {\n /**\n * The name of the view.\n * @required\n */\n set name(value) {\n this.viewName = value;\n }\n /**\n * The observable to send commands to the grid.\n * The commands should respect the `SkyListViewGridMessage` type.\n */\n set messageStream(stream) {\n /* istanbul ignore else */\n if (this._messageStream) {\n this._messageStream.unsubscribe();\n }\n this._messageStream = stream;\n this.initInlineDeleteMessages();\n }\n get messageStream() {\n return this._messageStream;\n }\n get gridHeight() {\n /* istanbul ignore next */\n return typeof this.height === 'number'\n ? observableOf(this.height)\n : this.height;\n }\n get gridWidth() {\n /* istanbul ignore next */\n return typeof this.width === 'number'\n ? observableOf(this.width)\n : this.width;\n }\n constructor(state, dispatcher, gridState, gridDispatcher, logger) {\n super(state, 'Grid View');\n this.dispatcher = dispatcher;\n this.gridState = gridState;\n this.gridDispatcher = gridDispatcher;\n /**\n * How the grid fits to its parent. `\"width\"` fits the grid to the parent's full\n * width, and `\"scroll\"` allows the grid to exceed the parent's width. If the grid does not have\n * enough columns to fill the parent's width, it always stretches to the parent's full width.\n * @default \"width\"\n */\n this.fit = 'width';\n /**\n * Whether to highlight search text within the grid.\n * @default true\n */\n this.highlightSearchText = true;\n /**\n * Whether to enable the multiselect feature to display a column of checkboxes\n * on the left side of the grid. Multiselect also displays an action bar with buttons to\n * select and clear all checkboxes. Multiselect defaults to the `id` property on the list's\n * `data` object.\n * @default false\n */\n this.enableMultiselect = false;\n /**\n * Fires when users cancel the deletion of a row.\n */\n this.rowDeleteCancel = new EventEmitter();\n /**\n * Fires when users confirm the deletion of a row.\n */\n this.rowDeleteConfirm = new EventEmitter();\n /**\n * Fires when columns change. This includes changes to the displayed columns and changes\n * to the order of columns. The event emits an array of IDs for the displayed columns that\n * reflects the column order.\n */\n this.selectedColumnIdsChange = new EventEmitter();\n /**\n * Message stream for communicating with the internal grid instance\n * @internal\n */\n this.gridMessageStream = new Subject();\n this.multiselectSelectedIds = [];\n this.ngUnsubscribe = new Subject();\n this._messageStream = new Subject();\n logger.deprecated('SkyListViewGridComponent', {\n deprecationMajorVersion: 6,\n moreInfoUrl: 'https://developer.blackbaud.com/skyux/components/data-entry-grid',\n replacementRecommendation: 'Use data entry grid instead.',\n });\n }\n ngAfterContentInit() {\n // Watch for selection changes and update multiselectSelectedIds for local comparison.\n this.state\n .pipe(observableMap((s) => s.selected.item), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.selectedMapEqual))\n .subscribe((items) => {\n const selectedIds = [];\n items.selectedIdMap.forEach((isSelected, id) => {\n if (items.selectedIdMap.get(id) === true) {\n selectedIds.push(id);\n }\n });\n this.multiselectSelectedIds = selectedIds;\n });\n /* istanbul ignore next */\n if (this.columnComponents.length === 0) {\n throw new Error('Grid view requires at least one sky-grid-column to render.');\n }\n const columnModels = this.columnComponents.map((columnComponent) => {\n return new SkyGridColumnModel(columnComponent.template, columnComponent);\n });\n if (this.width && !isObservable(this.width)) {\n this.width = observableOf(this.width);\n }\n if (this.height && !isObservable(this.height)) {\n this.height = observableOf(this.height);\n }\n // Setup Observables for template\n this.columns = this.gridState.pipe(observableMap((s) => s.columns.items), distinctUntilChanged(this.arraysEqual), takeUntil(this.ngUnsubscribe));\n this.selectedColumnIds = this.getSelectedIds();\n this.items = this.getGridItems();\n this.loading = this.state.pipe(observableMap((s) => {\n return s.items.loading;\n }), distinctUntilChanged(), takeUntil(this.ngUnsubscribe));\n this.sortField = this.state.pipe(observableMap((s) => {\n /* istanbul ignore else */\n /* sanity check */\n if (s.sort && s.sort.fieldSelectors) {\n return s.sort.fieldSelectors[0];\n }\n /* istanbul ignore next */\n /* sanity check */\n return undefined;\n }), distinctUntilChanged(), takeUntil(this.ngUnsubscribe));\n this.gridState\n .pipe(observableMap((s) => s.columns.items), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.arraysEqual))\n .subscribe((columns) => {\n /* istanbul ignore else */\n if (this.hiddenColumns) {\n getValue(this.hiddenColumns, (hiddenColumns) => {\n this.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(columns.filter((x) => {\n /* istanbul ignore next */\n /* sanity check */\n const id = x.id || x.field;\n return hiddenColumns.indexOf(id) === -1;\n }), true));\n });\n }\n else if (this.displayedColumns) {\n /* istanbul ignore next */\n getValue(this.displayedColumns, (displayedColumns) => {\n this.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(columns.filter((x) => displayedColumns.indexOf(x.id || x.field) !== -1), true));\n });\n }\n else {\n this.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(columns.filter((x) => !x.hidden), true));\n }\n });\n this.currentSearchText = this.state.pipe(observableMap((s) => s.search.searchText), distinctUntilChanged(), takeUntil(this.ngUnsubscribe));\n this.gridDispatcher.next(new ListViewGridColumnsLoadAction(columnModels, true));\n this.handleColumnChange();\n if (this.enableMultiselect) {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n }\n this.initInlineDeleteMessages();\n }\n ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n /**\n * If user makes selection, tell list-builder to update the list state.\n * This logic should only run on user interaction - NOT programmatic updates.\n */\n onMultiselectSelectionChange(event) {\n if (event.source === SkyGridSelectedRowsSource.CheckboxChange ||\n event.source === SkyGridSelectedRowsSource.RowClick) {\n this.state\n .pipe(observableMap((s) => s.items.items), take(1))\n .subscribe((items) => {\n const newItemIds = this.arrayIntersection(items.map((i) => i.id), this.multiselectSelectedIds);\n const newIds = items.filter((i) => i.isSelected).map((i) => i.id);\n // Check for deselected ids & send message to dispatcher.\n const deselectedIds = this.arrayDiff(newItemIds, newIds);\n if (deselectedIds.length > 0) {\n this.dispatcher.setSelected(deselectedIds, false);\n }\n // Check for selected ids & send message to dispatcher.\n const selectedIds = this.arrayDiff(newIds, newItemIds);\n if (selectedIds.length > 0) {\n this.dispatcher.setSelected(selectedIds, true);\n }\n });\n }\n }\n columnIdsChanged(selectedColumnIds) {\n this.selectedColumnIds.pipe(take(1)).subscribe((currentIds) => {\n if (!this.arraysEqual(selectedColumnIds, currentIds)) {\n this.gridState\n .pipe(observableMap((s) => s.columns.items), take(1))\n .subscribe((columns) => {\n const displayedColumns = selectedColumnIds.map((columnId) => columns.filter((c) => c.id === columnId)[0]);\n this.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(displayedColumns, true));\n });\n }\n });\n }\n cancelRowDelete(args) {\n this.rowDeleteCancel.emit(args);\n }\n confirmRowDelete(args) {\n this.rowDeleteConfirm.emit(args);\n }\n sortFieldChanged(sortField) {\n this.dispatcher.sortSetFieldSelectors([sortField]);\n }\n onViewActive() {\n /*\n Ran into problem where state updates were consumed out of order. For example, on search text\n update, the searchText update was consumed after the resulting list item update. Scanning the\n previous value of items lastUpdate ensures that we only receive the latest items.\n */\n this.gridState\n .pipe(takeUntil(this.ngUnsubscribe), scan((previousValue, newValue) => {\n if (previousValue.displayedColumns.lastUpdate >\n newValue.displayedColumns.lastUpdate) {\n return previousValue;\n }\n else {\n return newValue;\n }\n }), observableMap((s) => s.displayedColumns.items), distinctUntilChanged(this.arraysEqual))\n .subscribe((displayedColumns) => {\n const setFunctions = this.searchFunction !== undefined\n ? [this.searchFunction]\n : displayedColumns\n .map((column) => (data, searchText) => column.searchFunction(getData(data, column.field), searchText))\n .filter((c) => c !== undefined);\n this.state.pipe(take(1)).subscribe((s) => {\n this.dispatcher.searchSetOptions(new ListSearchModel({\n searchText: s.search.searchText,\n functions: setFunctions,\n fieldSelectors: displayedColumns.map((d) => d.field),\n }));\n });\n });\n }\n initInlineDeleteMessages() {\n /* istanbul ignore next */\n if (this.messageStream) {\n this.messageStream.subscribe((message) => {\n if (message.type === SkyListViewGridMessageType.AbortDeleteRow) {\n this.gridMessageStream.next({\n type: SkyGridMessageType.AbortDeleteRow,\n data: {\n abortDeleteRow: message.data.abortDeleteRow,\n },\n });\n }\n else if (message.type === SkyListViewGridMessageType.PromptDeleteRow) {\n this.gridMessageStream.next({\n type: SkyGridMessageType.PromptDeleteRow,\n data: {\n promptDeleteRow: message.data.promptDeleteRow,\n },\n });\n }\n });\n }\n }\n handleColumnChange() {\n // watch for changes in column components\n this.columnComponents.changes\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((columnComponents) => {\n const columnModels = this.columnComponents.map((column) => {\n return new SkyGridColumnModel(column.template, column);\n });\n this.gridDispatcher.next(new ListViewGridColumnsLoadAction(columnModels, true));\n });\n // Watch for column heading changes:\n this.columnComponents.forEach((comp) => {\n comp.headingModelChanges\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n this.gridComponent.updateColumnHeading(change);\n });\n comp.descriptionModelChanges\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n this.gridComponent.updateColumnDescription(change);\n });\n });\n }\n getGridItems() {\n /*\n Same problem as above. We should move from having a state object observable with a bunch of\n static properties to a static state object with observable properties that you can subscribe\n to.\n */\n return this.state.pipe(observableMap((s) => {\n return s.items;\n }), scan((previousValue, newValue) => {\n if (previousValue.lastUpdate > newValue.lastUpdate) {\n return previousValue;\n }\n else {\n return newValue;\n }\n }), observableMap((result) => {\n return result.items;\n }), distinctUntilChanged());\n }\n getSelectedIds() {\n /*\n Same problem as above. We should move from having a state object observable with a bunch of\n static properties to a static state object with observable properties that you can subscribe\n to.\n */\n return this.gridState.pipe(observableMap((s) => s.displayedColumns), scan((previousValue, newValue) => {\n if (previousValue.lastUpdate > newValue.lastUpdate) {\n return previousValue;\n }\n else {\n return newValue;\n }\n }), observableMap((result) => {\n /* istanbul ignore next */\n /* sanity check */\n return result.items.map((column) => {\n return column.id || column.field;\n });\n }), distinctUntilChanged((previousValue, newValue) => {\n return this.haveColumnIdsChanged(previousValue, newValue);\n }));\n }\n haveColumnIdsChanged(previousValue, newValue) {\n if (previousValue.length !== newValue.length) {\n this.selectedColumnIdsChange.emit(newValue);\n return false;\n }\n for (let i = 0; i < previousValue.length; i++) {\n /* istanbul ignore if */\n if (previousValue[i] !== newValue[i]) {\n this.selectedColumnIdsChange.emit(newValue);\n return false;\n }\n }\n return true;\n }\n selectedMapEqual(prev, next) {\n if (prev.selectedIdMap.size !== next.selectedIdMap.size) {\n return false;\n }\n const keys = [];\n next.selectedIdMap.forEach((value, key) => {\n keys.push(key);\n });\n for (const key of keys) {\n const value = next.selectedIdMap.get(key);\n if (value !== prev.selectedIdMap.get(key)) {\n return false;\n }\n }\n return true;\n }\n arrayDiff(arrA, arrB) {\n return arrA.filter((i) => arrB.indexOf(i) < 0);\n }\n arrayIntersection(arrA, arrB) {\n return arrA.filter((value) => -1 !== arrB.indexOf(value));\n }\n arraysEqual(arrayA, arrayB) {\n return (arrayA.length === arrayB.length &&\n arrayA.every((value, index) => value === arrayB[index]));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridComponent, deps: [{ token: i1.ListState }, { token: i1.ListStateDispatcher }, { token: i2.GridState }, { token: i3.GridStateDispatcher }, { token: i4.SkyLogService }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.15\", type: SkyListViewGridComponent, isStandalone: false, selector: \"sky-list-view-grid\", inputs: { name: \"name\", displayedColumns: \"displayedColumns\", hiddenColumns: \"hiddenColumns\", fit: \"fit\", width: \"width\", height: \"height\", highlightSearchText: \"highlightSearchText\", messageStream: \"messageStream\", rowHighlightedId: \"rowHighlightedId\", enableMultiselect: \"enableMultiselect\", settingsKey: \"settingsKey\", searchFunction: [\"search\", \"searchFunction\"] }, outputs: { rowDeleteCancel: \"rowDeleteCancel\", rowDeleteConfirm: \"rowDeleteConfirm\", selectedColumnIdsChange: \"selectedColumnIdsChange\" }, providers: [\n {\n provide: ListViewComponent,\n useExisting: forwardRef(() => SkyListViewGridComponent),\n },\n GridState,\n GridStateDispatcher,\n GridStateModel,\n ], queries: [{ propertyName: \"columnComponents\", predicate: SkyGridColumnComponent }], viewQueries: [{ propertyName: \"gridComponent\", first: true, predicate: SkyGridComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: \"@if (active | async) {\\n <div>\\n <sky-grid\\n #skyGrid\\n [columns]=\\\"columns | async\\\"\\n [data]=\\\"items | async\\\"\\n [enableMultiselect]=\\\"enableMultiselect\\\"\\n [fit]=\\\"fit\\\"\\n [height]=\\\"gridHeight | async\\\"\\n [highlightText]=\\\"\\n highlightSearchText ? (currentSearchText | async) : undefined\\n \\\"\\n [rowHighlightedId]=\\\"rowHighlightedId\\\"\\n [messageStream]=\\\"gridMessageStream\\\"\\n [selectedColumnIds]=\\\"selectedColumnIds | async\\\"\\n [selectedRowIds]=\\\"multiselectSelectedIds\\\"\\n [settingsKey]=\\\"settingsKey\\\"\\n [sortField]=\\\"sortField | async\\\"\\n [width]=\\\"gridWidth | async\\\"\\n (multiselectSelectionChange)=\\\"onMultiselectSelectionChange($event)\\\"\\n (rowDeleteCancel)=\\\"cancelRowDelete($event)\\\"\\n (rowDeleteConfirm)=\\\"confirmRowDelete($event)\\\"\\n (selectedColumnIdsChange)=\\\"columnIdsChanged($event)\\\"\\n (sortFieldChange)=\\\"sortFieldChanged($event)\\\"\\n />\\n <sky-wait [isWaiting]=\\\"loading | async\\\" />\\n </div>\\n}\\n\", styles: [\":host ::ng-deep .sky-grid-heading{border-top:0!important}\\n\"], dependencies: [{ kind: \"component\", type: i5.λ14, selector: \"sky-wait\", inputs: [\"ariaLabel\", \"isWaiting\", \"isFullPage\", \"isNonBlocking\", \"screenReaderCompletedText\"] }, { kind: \"component\", type: i6.SkyGridComponent, selector: \"sky-grid\", inputs: [\"columns\", \"data\", \"enableMultiselect\", \"fit\", \"hasToolbar\", \"height\", \"highlightText\", \"messageStream\", \"multiselectRowId\", \"rowHighlightedId\", \"selectedColumnIds\", \"selectedRowIds\", \"settingsKey\", \"sortField\", \"width\"], outputs: [\"columnWidthChange\", \"multiselectSelectionChange\", \"rowDeleteCancel\", \"rowDeleteConfirm\", \"selectedColumnIdsChange\", \"sortFieldChange\"] }, { kind: \"pipe\", type: i7.AsyncPipe, name: \"async\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-list-view-grid', providers: [\n {\n provide: ListViewComponent,\n useExisting: forwardRef(() => SkyListViewGridComponent),\n },\n GridState,\n GridStateDispatcher,\n GridStateModel,\n ], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: \"@if (active | async) {\\n <div>\\n <sky-grid\\n #skyGrid\\n [columns]=\\\"columns | async\\\"\\n [data]=\\\"items | async\\\"\\n [enableMultiselect]=\\\"enableMultiselect\\\"\\n [fit]=\\\"fit\\\"\\n [height]=\\\"gridHeight | async\\\"\\n [highlightText]=\\\"\\n highlightSearchText ? (currentSearchText | async) : undefined\\n \\\"\\n [rowHighlightedId]=\\\"rowHighlightedId\\\"\\n [messageStream]=\\\"gridMessageStream\\\"\\n [selectedColumnIds]=\\\"selectedColumnIds | async\\\"\\n [selectedRowIds]=\\\"multiselectSelectedIds\\\"\\n [settingsKey]=\\\"settingsKey\\\"\\n [sortField]=\\\"sortField | async\\\"\\n [width]=\\\"gridWidth | async\\\"\\n (multiselectSelectionChange)=\\\"onMultiselectSelectionChange($event)\\\"\\n (rowDeleteCancel)=\\\"cancelRowDelete($event)\\\"\\n (rowDeleteConfirm)=\\\"confirmRowDelete($event)\\\"\\n (selectedColumnIdsChange)=\\\"columnIdsChanged($event)\\\"\\n (sortFieldChange)=\\\"sortFieldChanged($event)\\\"\\n />\\n <sky-wait [isWaiting]=\\\"loading | async\\\" />\\n </div>\\n}\\n\", styles: [\":host ::ng-deep .sky-grid-heading{border-top:0!important}\\n\"] }]\n }], ctorParameters: () => [{ type: i1.ListState }, { type: i1.ListStateDispatcher }, { type: i2.GridState }, { type: i3.GridStateDispatcher }, { type: i4.SkyLogService }], propDecorators: { name: [{\n type: Input\n }], displayedColumns: [{\n type: Input\n }], hiddenColumns: [{\n type: Input\n }], fit: [{\n type: Input\n }], width: [{\n type: Input\n }], height: [{\n type: Input\n }], highlightSearchText: [{\n type: Input\n }], messageStream: [{\n type: Input\n }], rowHighlightedId: [{\n type: Input\n }], enableMultiselect: [{\n type: Input\n }], settingsKey: [{\n type: Input\n }], rowDeleteCancel: [{\n type: Output\n }], rowDeleteConfirm: [{\n type: Output\n }], selectedColumnIdsChange: [{\n type: Output\n }], gridComponent: [{\n type: ViewChild,\n args: [SkyGridComponent]\n }], searchFunction: [{\n type: Input,\n args: ['search']\n }], columnComponents: [{\n type: ContentChildren,\n args: [SkyGridColumnComponent]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3LWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC9saXN0LXZpZXctZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL2xpYi9tb2R1bGVzL2xpc3Qtdmlldy1ncmlkL2xpc3Qtdmlldy1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxzQkFBc0IsRUFHdEIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUVoQixrQkFBa0IsRUFFbEIseUJBQXlCLEdBQzFCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFDTCxlQUFlLEVBSWYsaUJBQWlCLEdBQ2xCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUlMLE9BQU8sRUFDUCxRQUFRLEVBQ1IsWUFBWSxHQUNiLE1BQU0sNEJBQTRCLENBQUM7QUFFcEMsT0FBTyxFQUFjLE9BQU8sRUFBRSxFQUFFLElBQUksWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsR0FBRyxJQUFJLGFBQWEsRUFDcEIsSUFBSSxFQUNKLElBQUksRUFDSixTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUs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OUMsT0FBTyxDQUNMLE1BQU0sQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLE1BQU07WUFDL0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDeEQsQ0FBQztJQUNKLENBQUM7K0dBbG5CVSx3QkFBd0I7bUdBQXhCLHdCQUF3QiwrakJBWnhCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzthQUN4RDtZQUNELFNBQVM7WUFDVCxtQkFBbUI7WUFDbkIsY0FBYztTQUNmLDJEQTZLZ0Isc0JBQXNCLDRFQTlDNUIsZ0JBQWdCLHVFQzlNN0IsOGdDQTRCQTs7NEZEdURhLHdCQUF3QjtrQkFoQnBDLFNBQVM7K0JBQ0Usb0JBQW9CLGFBR25CO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDO3lCQUN4RDt3QkFDRCxTQUFTO3dCQUNULG1CQUFtQjt3QkFDbkIsY0FBYztxQkFDZixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxLQUFLOztzQkFVaEIsS0FBSzs7c0JBUUwsS0FBSzs7c0JBTUwsS0FBSzs7c0JBU0wsS0FBSzs7c0JBTUwsS0FBSzs7c0JBTUwsS0FBSzs7c0JBT0wsS0FBSzs7c0JBT0wsS0FBSzs7c0JBc0JMLEtBQUs7O3NCQVVMLEtBQUs7O3NCQVNMLEtBQUs7O3NCQU1MLE1BQU07O3NCQU9OLE1BQU07O3NCQVNOLE1BQU07O3NCQUdOLFNBQVM7dUJBQUMsZ0JBQWdCOztzQkEyQzFCLEtBQUs7dUJBQUMsUUFBUTs7c0JBR2QsZUFBZTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lMb2dTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHtcbiAgU2t5R3JpZENvbHVtbkNvbXBvbmVudCxcbiAgU2t5R3JpZENvbHVtbkRlc2NyaXB0aW9uTW9kZWxDaGFuZ2UsXG4gIFNreUdyaWRDb2x1bW5IZWFkaW5nTW9kZWxDaGFuZ2UsXG4gIFNreUdyaWRDb2x1bW5Nb2RlbCxcbiAgU2t5R3JpZENvbXBvbmVudCxcbiAgU2t5R3JpZE1lc3NhZ2UsXG4gIFNreUdyaWRNZXNzYWdlVHlwZSxcbiAgU2t5R3JpZFNlbGVjdGVkUm93c01vZGVsQ2hhbmdlLFxuICBTa3lHcmlkU2VsZWN0ZWRSb3dzU291cmNlLFxufSBmcm9tICdAc2t5dXgvZ3JpZHMnO1xuaW1wb3J0IHtcbiAgTGlzdFNlYXJjaE1vZGVsLFxuICBMaXN0U2VsZWN0ZWRNb2RlbCxcbiAgTGlzdFN0YXRlLFxuICBMaXN0U3RhdGVEaXNwYXRjaGVyLFxuICBMaXN0Vmlld0NvbXBvbmVudCxcbn0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlcic7XG5pbXBvcnQge1xuICBBc3luY0xpc3QsXG4gIExpc3RJdGVtTW9kZWwsXG4gIExpc3RTb3J0RmllbGRTZWxlY3Rvck1vZGVsLFxuICBnZXREYXRhLFxuICBnZXRWYWx1ZSxcbiAgaXNPYnNlcnZhYmxlLFxufSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIG9mIGFzIG9ic2VydmFibGVPZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCBhcyBvYnNlcnZhYmxlTWFwLFxuICBzY2FuLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGlzdFZpZXdHcmlkQ29sdW1uc0xvYWRBY3Rpb24gfSBmcm9tICcuL3N0YXRlL2NvbHVtbnMvbG9hZC5hY3Rpb24nO1xuaW1wb3J0IHsgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc0xvYWRBY3Rpb24gfSBmcm9tICcuL3N0YXRlL2Rpc3BsYXllZC1jb2x1bW5zL2xvYWQuYWN0aW9uJztcbmltcG9ydCB7IEdyaWRTdGF0ZU1vZGVsIH0gZnJvbSAnLi9zdGF0ZS9ncmlkLXN0YXRlLm1vZGVsJztcbmltcG9ydCB7IEdyaWRTdGF0ZURpc3BhdGNoZXIgfSBmcm9tICcuL3N0YXRlL2dyaWQtc3RhdGUucnhzdGF0ZSc7XG5pbXBvcnQgeyBHcmlkU3RhdGUgfSBmcm9tICcuL3N0YXRlL2dyaWQtc3RhdGUuc3RhdGUtbm9kZSc7XG5pbXBvcnQgeyBTa3lMaXN0Vmlld0dyaWRNZXNzYWdlIH0gZnJvbSAnLi90eXBlcy9saXN0LXZpZXctZ3JpZC1tZXNzYWdlJztcbmltcG9ydCB7IFNreUxpc3RWaWV3R3JpZE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcy9saXN0LXZpZXctZ3JpZC1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5TGlzdFZpZXdHcmlkUm93RGVsZXRlQ2FuY2VsQXJncyB9IGZyb20gJy4vdHlwZXMvbGlzdC12aWV3LWdyaWQtcm93LWRlbGV0ZS1jYW5jZWwtYXJncyc7XG5pbXBvcnQgeyBTa3lMaXN0Vmlld0dyaWRSb3dEZWxldGVDb25maXJtQXJncyB9IGZyb20gJy4vdHlwZXMvbGlzdC12aWV3LWdyaWQtcm93LWRlbGV0ZS1jb25maXJtLWFyZ3MnO1xuXG4vKipcbiAqIERpc3BsYXlzIGEgZ3JpZCBmb3IgYVxuICogW1NLWSBVWC10aGVtZWQgbGlzdCBvZiBkYXRhXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvbGlzdC1vdmVydmlldylcbiAqIHVzaW5nIHRoZSBbZ3JpZCBjb21wb25lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9ncmlkKS5cbiAqIFlvdSBtdXN0IGluc3RhbGwgYFNreUxpc3RNb2R1bGVgIGFzIGEgZGVwZW5kZW5jeS5cbiAqIEBkZXByZWNhdGVkIExpc3QgYnVpbGRlciB2aWV3IGdyaWQgYW5kIGl0cyBmZWF0dXJlcyBhcmUgZGVwcmVjYXRlZC4gVXNlIGRhdGEgZW50cnkgZ3JpZCBpbnN0ZWFkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9kYXRhLWVudHJ5LWdyaWQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LXZpZXctZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXZpZXctZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpc3Qtdmlldy1ncmlkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IExpc3RWaWV3Q29tcG9uZW50LFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2t5TGlzdFZpZXdHcmlkQ29tcG9uZW50KSxcbiAgICB9LFxuICAgIEdyaWRTdGF0ZSxcbiAgICBHcmlkU3RhdGVEaXNwYXRjaGVyLFxuICAgIEdyaWRTdGF0ZU1vZGVsLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RWaWV3R3JpZENvbXBvbmVudFxuICBleHRlbmRzIExpc3RWaWV3Q29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95XG57XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgdmlldy5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmlld05hbWUgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29sdW1ucyB0byBkaXNwbGF5IGJ5IGRlZmF1bHQgYmFzZWQgb24gdGhlIElEIG9yIGZpZWxkIG9mIHRoZSBpdGVtLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdIHwgT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG5cbiAgLyoqXG4gICAqIFRoZSBjb2x1bW5zIHRvIGhpZGUgYnkgZGVmYXVsdCBiYXNlZCBvbiB0aGUgSUQgb3IgZmllbGQgb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGlkZGVuQ29sdW1uczogc3RyaW5nW10gfCBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcblxuICAvKipcbiAgICogSG93IHRoZSBncmlkIGZpdHMgdG8gaXRzIHBhcmVudC4gYFwid2lkdGhcImAgZml0cyB0aGUgZ3JpZCB0byB0aGUgcGFyZW50J3MgZnVsbFxuICAgKiB3aWR0aCwgYW5kIGBcInNjcm9sbFwiYCBhbGxvd3MgdGhlIGdyaWQgdG8gZXhjZWVkIHRoZSBwYXJlbnQncyB3aWR0aC4gSWYgdGhlIGdyaWQgZG9lcyBub3QgaGF2ZVxuICAgKiBlbm91Z2ggY29sdW1ucyB0byBmaWxsIHRoZSBwYXJlbnQncyB3aWR0aCwgaXQgYWx3YXlzIHN0cmV0Y2hlcyB0byB0aGUgcGFyZW50J3MgZnVsbCB3aWR0aC5cbiAgICogQGRlZmF1bHQgXCJ3aWR0aFwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZml0ID0gJ3dpZHRoJztcblxuICAvKipcbiAgICogVGhlIHdpZHRoIG9mIHRoZSBncmlkLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHdpZHRoOiBudW1iZXIgfCBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIFRoZSBoZWlnaHQgb2YgdGhlIGdyaWQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGVpZ2h0OiBudW1iZXIgfCBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gaGlnaGxpZ2h0IHNlYXJjaCB0ZXh0IHdpdGhpbiB0aGUgZ3JpZC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGhpZ2hsaWdodFNlYXJjaFRleHQgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUaGUgb2JzZXJ2YWJsZSB0byBzZW5kIGNvbW1hbmRzIHRvIHRoZSBncmlkLlxuICAgKiBUaGUgY29tbWFuZHMgc2hvdWxkIHJlc3BlY3QgdGhlIGBTa3lMaXN0Vmlld0dyaWRNZXNzYWdlYCB0eXBlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBtZXNzYWdlU3RyZWFtKHN0cmVhbTogU3ViamVjdDxTa3lMaXN0Vmlld0dyaWRNZXNzYWdlPikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuX21lc3NhZ2VTdHJlYW0pIHtcbiAgICAgIHRoaXMuX21lc3NhZ2VTdHJlYW0udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9tZXNzYWdlU3RyZWFtID0gc3RyZWFtO1xuXG4gICAgdGhpcy5pbml0SW5saW5lRGVsZXRlTWVzc2FnZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWVzc2FnZVN0cmVhbSgpOiBTdWJqZWN0PFNreUxpc3RWaWV3R3JpZE1lc3NhZ2U+IHtcbiAgICByZXR1cm4gdGhpcy5fbWVzc2FnZVN0cmVhbTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIHJvdyB0byBoaWdobGlnaHQuIFRoZSBJRCBtYXRjaGVzIHRoZSBgaWRgIHByb3BlcnR5IG9mXG4gICAqIHRoZSBgZGF0YWAgb2JqZWN0LiBUeXBpY2FsbHksIHRoaXMgcHJvcGVydHkgaXMgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZVxuICAgKiBbZmx5b3V0IGNvbXBvbmVudF0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2ZseW91dCkgdG9cbiAgICogaW5kaWNhdGUgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCByb3cuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcm93SGlnaGxpZ2h0ZWRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSB0aGUgbXVsdGlzZWxlY3QgZmVhdHVyZSB0byBkaXNwbGF5IGEgY29sdW1uIG9mIGNoZWNrYm94ZXNcbiAgICogb24gdGhlIGxlZnQgc2lkZSBvZiB0aGUgZ3JpZC4gTXVsdGlzZWxlY3QgYWxzbyBkaXNwbGF5cyBhbiBhY3Rpb24gYmFyIHdpdGggYnV0dG9ucyB0b1xuICAgKiBzZWxlY3QgYW5kIGNsZWFyIGFsbCBjaGVja2JveGVzLiBNdWx0aXNlbGVjdCBkZWZhdWx0cyB0byB0aGUgYGlkYCBwcm9wZXJ0eSBvbiB0aGUgbGlzdCdzXG4gICAqIGBkYXRhYCBvYmplY3QuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZW5hYmxlTXVsdGlzZWxlY3QgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIHVuaXF1ZSBrZXkgZm9yIHRoZSBVSSBDb25maWcgU2VydmljZSB0aGF0IHJldHJpZXZlcyBzdG9yZWQgc2V0dGluZ3MgZnJvbVxuICAgKiBhIGRhdGFiYXNlLiBUaGUgc2VydmljZSBzYXZlcyBjb25maWd1cmF0aW9uIHNldHRpbmdzIGZvciB1c2VycyBhbmQgcmV0dXJucyBgc2VsZWN0ZWRDb2x1bW5JZHNgXG4gICAqIGZvciB0aGUgY29sdW1ucyB0byBkaXNwbGF5IGFuZCB0aGUgcHJlZmVycmVkIGNvbHVtbiBvcmRlci4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGVcbiAgICogW3N0aWNreSBzZXR0aW5ncyBkb2N1bWVudGF0aW9uXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2RldmVsb3Avc3RpY2t5LXNldHRpbmdzL292ZXJ2aWV3KS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXR0aW5nc0tleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHVzZXJzIGNhbmNlbCB0aGUgZGVsZXRpb24gb2YgYSByb3cuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHJvd0RlbGV0ZUNhbmNlbCA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxTa3lMaXN0Vmlld0dyaWRSb3dEZWxldGVDYW5jZWxBcmdzPigpO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHVzZXJzIGNvbmZpcm0gdGhlIGRlbGV0aW9uIG9mIGEgcm93LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByb3dEZWxldGVDb25maXJtID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPFNreUxpc3RWaWV3R3JpZFJvd0RlbGV0ZUNvbmZpcm1BcmdzPigpO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIGNvbHVtbnMgY2hhbmdlLiBUaGlzIGluY2x1ZGVzIGNoYW5nZXMgdG8gdGhlIGRpc3BsYXllZCBjb2x1bW5zIGFuZCBjaGFuZ2VzXG4gICAqIHRvIHRoZSBvcmRlciBvZiBjb2x1bW5zLiBUaGUgZXZlbnQgZW1pdHMgYW4gYXJyYXkgb2YgSURzIGZvciB0aGUgZGlzcGxheWVkIGNvbHVtbnMgdGhhdFxuICAgKiByZWZsZWN0cyB0aGUgY29sdW1uIG9yZGVyLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZENvbHVtbklkc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgQFZpZXdDaGlsZChTa3lHcmlkQ29tcG9uZW50KVxuICBwdWJsaWMgZ3JpZENvbXBvbmVudDogU2t5R3JpZENvbXBvbmVudDtcblxuICBwdWJsaWMgZ2V0IGdyaWRIZWlnaHQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIHJldHVybiB0eXBlb2YgdGhpcy5oZWlnaHQgPT09ICdudW1iZXInXG4gICAgICA/IG9ic2VydmFibGVPZih0aGlzLmhlaWdodClcbiAgICAgIDogdGhpcy5oZWlnaHQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGdyaWRXaWR0aCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLndpZHRoID09PSAnbnVtYmVyJ1xuICAgICAgPyBvYnNlcnZhYmxlT2YodGhpcy53aWR0aClcbiAgICAgIDogdGhpcy53aWR0aDtcbiAgfVxuXG4gIHB1YmxpYyBjb2x1bW5zOiBPYnNlcnZhYmxlPFNreUdyaWRDb2x1bW5Nb2RlbFtdPjtcblxuICBwdWJsaWMgc2VsZWN0ZWRDb2x1bW5JZHM6IE9ic2VydmFibGU8c3RyaW5nW10+O1xuXG4gIHB1YmxpYyBpdGVtczogT2JzZXJ2YWJsZTxMaXN0SXRlbU1vZGVsW10+O1xuXG4gIC8qKlxuICAgKiBNZXNzYWdlIHN0cmVhbSBmb3IgY29tbXVuaWNhdGluZyB3aXRoIHRoZSBpbnRlcm5hbCBncmlkIGluc3RhbmNlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdyaWRNZXNzYWdlU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5R3JpZE1lc3NhZ2U+KCk7XG5cbiAgcHVibGljIGxvYWRpbmc6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHVibGljIHNvcnRGaWVsZDogT2JzZXJ2YWJsZTxMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbD47XG5cbiAgcHVibGljIGN1cnJlbnRTZWFyY2hUZXh0OiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgcHVibGljIG11bHRpc2VsZWN0U2VsZWN0ZWRJZHM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqXG4gICAqIFRoZSBzZWFyY2ggZnVuY3Rpb24gdG8gYXBwbHkgb24gdGhlIHZpZXcgZGF0YS5cbiAgICogQHBhcmFtIGRhdGEgU3BlY2lmaWVzIHRoZSBkYXRhIHRvIHNlYXJjaC5cbiAgICogQHBhcmFtIHNlYXJjaFRleHQgU3BlY2lmaWVzIGEgdGV4dCBzdHJpbmcgdG8gc2VhcmNoIGZvci5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnc2VhcmNoJylcbiAgcHVibGljIHNlYXJjaEZ1bmN0aW9uOiAoZGF0YTogYW55LCBzZWFyY2hUZXh0OiBzdHJpbmcpID0+IGJvb2xlYW47XG5cbiAgQENvbnRlbnRDaGlsZHJlbihTa3lHcmlkQ29sdW1uQ29tcG9uZW50KVxuICBwcml2YXRlIGNvbHVtbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxTa3lHcmlkQ29sdW1uQ29tcG9uZW50PjtcblxuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgX21lc3NhZ2VTdHJlYW0gPSBuZXcgU3ViamVjdDxTa3lMaXN0Vmlld0dyaWRNZXNzYWdlPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHN0YXRlOiBMaXN0U3RhdGUsXG4gICAgcHJpdmF0ZSBkaXNwYXRjaGVyOiBMaXN0U3RhdGVEaXNwYXRjaGVyLFxuICAgIHB1YmxpYyBncmlkU3RhdGU6IEdyaWRTdGF0ZSxcbiAgICBwdWJsaWMgZ3JpZERpc3BhdGNoZXI6IEdyaWRTdGF0ZURpc3BhdGNoZXIsXG4gICAgbG9nZ2VyOiBTa3lMb2dTZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcihzdGF0ZSwgJ0dyaWQgVmlldycpO1xuXG4gICAgbG9nZ2VyLmRlcHJlY2F0ZWQoJ1NreUxpc3RWaWV3R3JpZENvbXBvbmVudCcsIHtcbiAgICAgIGRlcHJlY2F0aW9uTWFqb3JWZXJzaW9uOiA2LFxuICAgICAgbW9yZUluZm9Vcmw6XG4gICAgICAgICdodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2NvbXBvbmVudHMvZGF0YS1lbnRyeS1ncmlkJyxcbiAgICAgIHJlcGxhY2VtZW50UmVjb21tZW5kYXRpb246ICdVc2UgZGF0YSBlbnRyeSBncmlkIGluc3RlYWQuJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgLy8gV2F0Y2ggZm9yIHNlbGVjdGlvbiBjaGFuZ2VzIGFuZCB1cGRhdGUgbXVsdGlzZWxlY3RTZWxlY3RlZElkcyBmb3IgbG9jYWwgY29tcGFyaXNvbi5cbiAgICB0aGlzLnN0YXRlXG4gICAgICAucGlwZShcbiAgICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4gcy5zZWxlY3RlZC5pdGVtKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMuc2VsZWN0ZWRNYXBFcXVhbCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChpdGVtczogTGlzdFNlbGVjdGVkTW9kZWwpID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJZHM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgICAgaXRlbXMuc2VsZWN0ZWRJZE1hcC5mb3JFYWNoKChpc1NlbGVjdGVkLCBpZCkgPT4ge1xuICAgICAgICAgIGlmIChpdGVtcy5zZWxlY3RlZElkTWFwLmdldChpZCkgPT09IHRydWUpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkSWRzLnB1c2goaWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5tdWx0aXNlbGVjdFNlbGVjdGVkSWRzID0gc2VsZWN0ZWRJZHM7XG4gICAgICB9KTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKHRoaXMuY29sdW1uQ29tcG9uZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0dyaWQgdmlldyByZXF1aXJlcyBhdCBsZWFzdCBvbmUgc2t5LWdyaWQtY29sdW1uIHRvIHJlbmRlci4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb2x1bW5Nb2RlbHMgPSB0aGlzLmNvbHVtbkNvbXBvbmVudHMubWFwKChjb2x1bW5Db21wb25lbnQpID0+IHtcbiAgICAgIHJldHVybiBuZXcgU2t5R3JpZENvbHVtbk1vZGVsKGNvbHVtbkNvbXBvbmVudC50ZW1wbGF0ZSwgY29sdW1uQ29tcG9uZW50KTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLndpZHRoICYmICFpc09ic2VydmFibGUodGhpcy53aWR0aCkpIHtcbiAgICAgIHRoaXMud2lkdGggPSBvYnNlcnZhYmxlT2YodGhpcy53aWR0aCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaGVpZ2h0ICYmICFpc09ic2VydmFibGUodGhpcy5oZWlnaHQpKSB7XG4gICAgICB0aGlzLmhlaWdodCA9IG9ic2VydmFibGVPZih0aGlzLmhlaWdodCk7XG4gICAgfVxuXG4gICAgLy8gU2V0dXAgT2JzZXJ2YWJsZXMgZm9yIHRlbXBsYXRlXG4gICAgdGhpcy5jb2x1bW5zID0gdGhpcy5ncmlkU3RhdGUucGlwZShcbiAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMuY29sdW1ucy5pdGVtcyksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCh0aGlzLmFycmF5c0VxdWFsKSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICk7XG5cbiAgICB0aGlzLnNlbGVjdGVkQ29sdW1uSWRzID0gdGhpcy5nZXRTZWxlY3RlZElkcygpO1xuXG4gICAgdGhpcy5pdGVtcyA9IHRoaXMuZ2V0R3JpZEl0ZW1zKCk7XG5cbiAgICB0aGlzLmxvYWRpbmcgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiB7XG4gICAgICAgIHJldHVybiBzLml0ZW1zLmxvYWRpbmc7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICApO1xuXG4gICAgdGhpcy5zb3J0RmllbGQgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgICBpZiAocy5zb3J0ICYmIHMuc29ydC5maWVsZFNlbGVjdG9ycykge1xuICAgICAgICAgIHJldHVybiBzLnNvcnQuZmllbGRTZWxlY3RvcnNbMF07XG4gICAgICAgIH1cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICApO1xuXG4gICAgdGhpcy5ncmlkU3RhdGVcbiAgICAgIC5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLmNvbHVtbnMuaXRlbXMpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQodGhpcy5hcnJheXNFcXVhbCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChjb2x1bW5zKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICh0aGlzLmhpZGRlbkNvbHVtbnMpIHtcbiAgICAgICAgICBnZXRWYWx1ZSh0aGlzLmhpZGRlbkNvbHVtbnMsIChoaWRkZW5Db2x1bW5zOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ncmlkRGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICAgICAgICBuZXcgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc0xvYWRBY3Rpb24oXG4gICAgICAgICAgICAgICAgY29sdW1ucy5maWx0ZXIoKHgpID0+IHtcbiAgICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgICAgICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGlkID0geC5pZCB8fCB4LmZpZWxkO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGhpZGRlbkNvbHVtbnMuaW5kZXhPZihpZCkgPT09IC0xO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGlzcGxheWVkQ29sdW1ucykge1xuICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgZ2V0VmFsdWUodGhpcy5kaXNwbGF5ZWRDb2x1bW5zLCAoZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZ3JpZERpc3BhdGNoZXIubmV4dChcbiAgICAgICAgICAgICAgbmV3IExpc3RWaWV3RGlzcGxheWVkR3JpZENvbHVtbnNMb2FkQWN0aW9uKFxuICAgICAgICAgICAgICAgIGNvbHVtbnMuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgKHgpID0+IGRpc3BsYXllZENvbHVtbnMuaW5kZXhPZih4LmlkIHx8IHguZmllbGQpICE9PSAtMSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZ3JpZERpc3BhdGNoZXIubmV4dChcbiAgICAgICAgICAgIG5ldyBMaXN0Vmlld0Rpc3BsYXllZEdyaWRDb2x1bW5zTG9hZEFjdGlvbihcbiAgICAgICAgICAgICAgY29sdW1ucy5maWx0ZXIoKHgpID0+ICF4LmhpZGRlbiksXG4gICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jdXJyZW50U2VhcmNoVGV4dCA9IHRoaXMuc3RhdGUucGlwZShcbiAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMuc2VhcmNoLnNlYXJjaFRleHQpLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICk7XG5cbiAgICB0aGlzLmdyaWREaXNwYXRjaGVyLm5leHQoXG4gICAgICBuZXcgTGlzdFZpZXdHcmlkQ29sdW1uc0xvYWRBY3Rpb24oY29sdW1uTW9kZWxzLCB0cnVlKSxcbiAgICApO1xuXG4gICAgdGhpcy5oYW5kbGVDb2x1bW5DaGFuZ2UoKTtcblxuICAgIGlmICh0aGlzLmVuYWJsZU11bHRpc2VsZWN0KSB7XG4gICAgICB0aGlzLmRpc3BhdGNoZXIudG9vbGJhclNob3dNdWx0aXNlbGVjdFRvb2xiYXIodHJ1ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5pbml0SW5saW5lRGVsZXRlTWVzc2FnZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHVzZXIgbWFrZXMgc2VsZWN0aW9uLCB0ZWxsIGxpc3QtYnVpbGRlciB0byB1cGRhdGUgdGhlIGxpc3Qgc3RhdGUuXG4gICAqIFRoaXMgbG9naWMgc2hvdWxkIG9ubHkgcnVuIG9uIHVzZXIgaW50ZXJhY3Rpb24gLSBOT1QgcHJvZ3JhbW1hdGljIHVwZGF0ZXMuXG4gICAqL1xuICBwdWJsaWMgb25NdWx0aXNlbGVjdFNlbGVjdGlvbkNoYW5nZShcbiAgICBldmVudDogU2t5R3JpZFNlbGVjdGVkUm93c01vZGVsQ2hhbmdlLFxuICApOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBldmVudC5zb3VyY2UgPT09IFNreUdyaWRTZWxlY3RlZFJvd3NTb3VyY2UuQ2hlY2tib3hDaGFuZ2UgfHxcbiAgICAgIGV2ZW50LnNvdXJjZSA9PT0gU2t5R3JpZFNlbGVjdGVkUm93c1NvdXJjZS5Sb3dDbGlja1xuICAgICkge1xuICAgICAgdGhpcy5zdGF0ZVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLml0ZW1zLml0ZW1zKSxcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKGl0ZW1zOiBMaXN0SXRlbU1vZGVsW10pID0+IHtcbiAgICAgICAgICBjb25zdCBuZXdJdGVtSWRzID0gdGhpcy5hcnJheUludGVyc2VjdGlvbihcbiAgICAgICAgICAgIGl0ZW1zLm1hcCgoaSkgPT4gaS5pZCksXG4gICAgICAgICAgICB0aGlzLm11bHRpc2VsZWN0U2VsZWN0ZWRJZHMsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25zdCBuZXdJZHMgPSBpdGVtcy5maWx0ZXIoKGkpID0+IGkuaXNTZWxlY3RlZCkubWFwKChpKSA9PiBpLmlkKTtcblxuICAgICAgICAgIC8vIENoZWNrIGZvciBkZXNlbGVjdGVkIGlkcyAmIHNlbmQgbWVzc2FnZSB0byBkaXNwYXRjaGVyLlxuICAgICAgICAgIGNvbnN0IGRlc2VsZWN0ZWRJZHMgPSB0aGlzLmFycmF5RGlmZihuZXdJdGVtSWRzLCBuZXdJZHMpO1xuICAgICAgICAgIGlmIChkZXNlbGVjdGVkSWRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5zZXRTZWxlY3RlZChkZXNlbGVjdGVkSWRzLCBmYWxzZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gQ2hlY2sgZm9yIHNlbGVjdGVkIGlkcyAmIHNlbmQgbWVzc2FnZSB0byBkaXNwYXRjaGVyLlxuICAgICAgICAgIGNvbnN0IHNlbGVjdGVkSWRzID0gdGhpcy5hcnJheURpZmYobmV3SWRzLCBuZXdJdGVtSWRzKTtcbiAgICAgICAgICBpZiAoc2VsZWN0ZWRJZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5kaXNwYXRjaGVyLnNldFNlbGVjdGVkKHNlbGVjdGVkSWRzLCB0cnVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjb2x1bW5JZHNDaGFuZ2VkKHNlbGVjdGVkQ29sdW1uSWRzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0ZWRDb2x1bW5JZHMucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGN1cnJlbnRJZHMpID0+IHtcbiAgICAgIGlmICghdGhpcy5hcnJheXNFcXVhbChzZWxlY3RlZENvbHVtbklkcywgY3VycmVudElkcykpIHtcbiAgICAgICAgdGhpcy5ncmlkU3RhdGVcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMuY29sdW1ucy5pdGVtcyksXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKChjb2x1bW5zKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkaXNwbGF5ZWRDb2x1bW5zID0gc2VsZWN0ZWRDb2x1bW5JZHMubWFwKFxuICAgICAgICAgICAgICAoY29sdW1uSWQpID0+IGNvbHVtbnMuZmlsdGVyKChjKSA9PiBjLmlkID09PSBjb2x1bW5JZClbMF0sXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5ncmlkRGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICAgICAgICBuZXcgTGlzdFZpZXdEaXNwbGF5ZWRHcmlkQ29sdW1uc0xvYWRBY3Rpb24oXG4gICAgICAgICAgICAgICAgZGlzcGxheWVkQ29sdW1ucyxcbiAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWxSb3dEZWxldGUoYXJnczogU2t5TGlzdFZpZXdHcmlkUm93RGVsZXRlQ2FuY2VsQXJncyk6IHZvaWQge1xuICAgIHRoaXMucm93RGVsZXRlQ2FuY2VsLmVtaXQoYXJncyk7XG4gIH1cblxuICBwdWJsaWMgY29uZmlybVJvd0RlbGV0ZShhcmdzOiBTa3lMaXN0Vmlld0dyaWRSb3dEZWxldGVDb25maXJtQXJncyk6IHZvaWQge1xuICAgIHRoaXMucm93RGVsZXRlQ29uZmlybS5lbWl0KGFyZ3MpO1xuICB9XG5cbiAgcHVibGljIHNvcnRGaWVsZENoYW5nZWQoc29ydEZpZWxkOiBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGF0Y2hlci5zb3J0U2V0RmllbGRTZWxlY3RvcnMoW3NvcnRGaWVsZF0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uVmlld0FjdGl2ZSgpOiB2b2lkIHtcbiAgICAvKlxuICAgICAgUmFuIGludG8gcHJvYmxlbSB3aGVyZSBzdGF0ZSB1cGRhdGVzIHdlcmUgY29uc3VtZWQgb3V0IG9mIG9yZGVyLiBGb3IgZXhhbXBsZSwgb24gc2VhcmNoIHRleHRcbiAgICAgIHVwZGF0ZSwgdGhlIHNlYXJjaFRleHQgdXBkYXRlIHdhcyBjb25zdW1lZCBhZnRlciB0aGUgcmVzdWx0aW5nIGxpc3QgaXRlbSB1cGRhdGUuIFNjYW5uaW5nIHRoZVxuICAgICAgcHJldmlvdXMgdmFsdWUgb2YgaXRlbXMgbGFzdFVwZGF0ZSBlbnN1cmVzIHRoYXQgd2Ugb25seSByZWNlaXZlIHRoZSBsYXRlc3QgaXRlbXMuXG4gICAgKi9cbiAgICB0aGlzLmdyaWRTdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICBzY2FuKChwcmV2aW91c1ZhbHVlOiBHcmlkU3RhdGVNb2RlbCwgbmV3VmFsdWU6IEdyaWRTdGF0ZU1vZGVsKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgcHJldmlvdXNWYWx1ZS5kaXNwbGF5ZWRDb2x1bW5zLmxhc3RVcGRhdGUgPlxuICAgICAgICAgICAgbmV3VmFsdWUuZGlzcGxheWVkQ29sdW1ucy5sYXN0VXBkYXRlXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJldmlvdXNWYWx1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMuZGlzcGxheWVkQ29sdW1ucy5pdGVtcyksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMuYXJyYXlzRXF1YWwpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZGlzcGxheWVkQ29sdW1ucykgPT4ge1xuICAgICAgICBjb25zdCBzZXRGdW5jdGlvbnMgPVxuICAgICAgICAgIHRoaXMuc2VhcmNoRnVuY3Rpb24gIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyBbdGhpcy5zZWFyY2hGdW5jdGlvbl1cbiAgICAgICAgICAgIDogZGlzcGxheWVkQ29sdW1uc1xuICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAoY29sdW1uKSA9PlxuICAgICAgICAgICAgICAgICAgICAoZGF0YTogYW55LCBzZWFyY2hUZXh0OiBzdHJpbmcpOiBhbnkgPT5cbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uc2VhcmNoRnVuY3Rpb24oXG4gICAgICAgICAgICAgICAgICAgICAgICBnZXREYXRhKGRhdGEsIGNvbHVtbi5maWVsZCksXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hUZXh0LFxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKGMpID0+IGMgIT09IHVuZGVmaW5lZCk7XG5cbiAgICAgICAgdGhpcy5zdGF0ZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgocykgPT4ge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5zZWFyY2hTZXRPcHRpb25zKFxuICAgICAgICAgICAgbmV3IExpc3RTZWFyY2hNb2RlbCh7XG4gICAgICAgICAgICAgIHNlYXJjaFRleHQ6IHMuc2VhcmNoLnNlYXJjaFRleHQsXG4gICAgICAgICAgICAgIGZ1bmN0aW9uczogc2V0RnVuY3Rpb25zLFxuICAgICAgICAgICAgICBmaWVsZFNlbGVjdG9yczogZGlzcGxheWVkQ29sdW1ucy5tYXAoKGQpID0+IGQuZmllbGQpLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdElubGluZURlbGV0ZU1lc3NhZ2VzKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKHRoaXMubWVzc2FnZVN0cmVhbSkge1xuICAgICAgdGhpcy5tZXNzYWdlU3RyZWFtLnN1YnNjcmliZSgobWVzc2FnZTogU2t5TGlzdFZpZXdHcmlkTWVzc2FnZSkgPT4ge1xuICAgICAgICBpZiAobWVzc2FnZS50eXBlID09PSBTa3lMaXN0Vmlld0dyaWRNZXNzYWdlVHlwZS5BYm9ydERlbGV0ZVJvdykge1xuICAgICAgICAgIHRoaXMuZ3JpZE1lc3NhZ2VTdHJlYW0ubmV4dCh7XG4gICAgICAgICAgICB0eXBlOiBTa3lHcmlkTWVzc2FnZVR5cGUuQWJvcnREZWxldGVSb3csXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgIGFib3J0RGVsZXRlUm93OiBtZXNzYWdlLmRhdGEuYWJvcnREZWxldGVSb3csXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgIG1lc3NhZ2UudHlwZSA9PT0gU2t5TGlzdFZpZXdHcmlkTWVzc2FnZVR5cGUuUHJvbXB0RGVsZXRlUm93XG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMuZ3JpZE1lc3NhZ2VTdHJlYW0ubmV4dCh7XG4gICAgICAgICAgICB0eXBlOiBTa3lHcmlkTWVzc2FnZVR5cGUuUHJvbXB0RGVsZXRlUm93LFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICBwcm9tcHREZWxldGVSb3c6IG1lc3NhZ2UuZGF0YS5wcm9tcHREZWxldGVSb3csXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUNvbHVtbkNoYW5nZSgpOiB2b2lkIHtcbiAgICAvLyB3YXRjaCBmb3IgY2hhbmdlcyBpbiBjb2x1bW4gY29tcG9uZW50c1xuICAgIHRoaXMuY29sdW1uQ29tcG9uZW50cy5jaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGNvbHVtbkNvbXBvbmVudHMpID0+IHtcbiAgICAgICAgY29uc3QgY29sdW1uTW9kZWxzID0gdGhpcy5jb2x1bW5Db21wb25lbnRzLm1hcCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBTa3lHcmlkQ29sdW1uTW9kZWwoY29sdW1uLnRlbXBsYXRlLCBjb2x1bW4pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5ncmlkRGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICAgIG5ldyBMaXN0Vmlld0dyaWRDb2x1bW5zTG9hZEFjdGlvbihjb2x1bW5Nb2RlbHMsIHRydWUpLFxuICAgICAgICApO1xuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3IgY29sdW1uIGhlYWRpbmcgY2hhbmdlczpcbiAgICB0aGlzLmNvbHVtbkNvbXBvbmVudHMuZm9yRWFjaCgoY29tcCkgPT4ge1xuICAgICAgY29tcC5oZWFkaW5nTW9kZWxDaGFuZ2VzXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChjaGFuZ2U6IFNreUdyaWRDb2x1bW5IZWFkaW5nTW9kZWxDaGFuZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLmdyaWRDb21wb25lbnQudXBkYXRlQ29sdW1uSGVhZGluZyhjaGFuZ2UpO1xuICAgICAgICB9KTtcbiAgICAgIGNvbXAuZGVzY3JpcHRpb25Nb2RlbENoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGNoYW5nZTogU2t5R3JpZENvbHVtbkRlc2NyaXB0aW9uTW9kZWxDaGFuZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLmdyaWRDb21wb25lbnQudXBkYXRlQ29sdW1uRGVzY3JpcHRpb24oY2hhbmdlKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEdyaWRJdGVtcygpOiBPYnNlcnZhYmxlPExpc3RJdGVtTW9kZWxbXT4ge1xuICAgIC8qXG4gICAgICBTYW1lIHByb2JsZW0gYXMgYWJvdmUuIFdlIHNob3VsZCBtb3ZlIGZyb20gaGF2aW5nIGEgc3RhdGUgb2JqZWN0IG9ic2VydmFibGUgd2l0aCBhIGJ1bmNoIG9mXG4gICAgICBzdGF0aWMgcHJvcGVydGllcyB0byBhIHN0YXRpYyBzdGF0ZSBvYmplY3Qgd2l0aCBvYnNlcnZhYmxlIHByb3BlcnRpZXMgdGhhdCB5b3UgY2FuIHN1YnNjcmliZVxuICAgICAgdG8uXG4gICAgKi9cbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4ge1xuICAgICAgICByZXR1cm4gcy5pdGVtcztcbiAgICAgIH0pLFxuICAgICAgc2NhbihcbiAgICAgICAgKFxuICAgICAgICAgIHByZXZpb3VzVmFsdWU6IEFzeW5jTGlzdDxMaXN0SXRlbU1vZGVsPixcbiAgICAgICAgICBuZXdWYWx1ZTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+LFxuICAgICAgICApID0+IHtcbiAgICAgICAgICBpZiAocHJldmlvdXNWYWx1ZS5sYXN0VXBkYXRlID4gbmV3VmFsdWUubGFzdFVwZGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzVmFsdWU7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXdWYWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICApLFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocmVzdWx0OiBBc3luY0xpc3Q8TGlzdEl0ZW1Nb2RlbD4pID0+IHtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5pdGVtcztcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTZWxlY3RlZElkcygpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgLypcbiAgICAgIFNhbWUgcHJvYmxlbSBhcyBhYm92ZS4gV2Ugc2hvdWxkIG1vdmUgZnJvbSBoYXZpbmcgYSBzdGF0ZSBvYmplY3Qgb2JzZXJ2YWJsZSB3aXRoIGEgYnVuY2ggb2ZcbiAgICAgIHN0YXRpYyBwcm9wZXJ0aWVzIHRvIGEgc3RhdGljIHN0YXRlIG9iamVjdCB3aXRoIG9ic2VydmFibGUgcHJvcGVydGllcyB0aGF0IHlvdSBjYW4gc3Vic2NyaWJlXG4gICAgICB0by5cbiAgICAqL1xuICAgIHJldHVybiB0aGlzLmdyaWRTdGF0ZS5waXBlKFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4gcy5kaXNwbGF5ZWRDb2x1bW5zKSxcbiAgICAgIHNjYW4oXG4gICAgICAgIChcbiAgICAgICAgICBwcmV2aW91c1ZhbHVlOiBBc3luY0xpc3Q8U2t5R3JpZENvbHVtbk1vZGVsPixcbiAgICAgICAgICBuZXdWYWx1ZTogQXN5bmNMaXN0PFNreUdyaWRDb2x1bW5Nb2RlbD4sXG4gICAgICAgICkgPT4ge1xuICAgICAgICAgIGlmIChwcmV2aW91c1ZhbHVlLmxhc3RVcGRhdGUgPiBuZXdWYWx1ZS5sYXN0VXBkYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJldmlvdXNWYWx1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICksXG4gICAgICBvYnNlcnZhYmxlTWFwKChyZXN1bHQ6IEFzeW5jTGlzdDxTa3lHcmlkQ29sdW1uTW9kZWw+KSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgICByZXR1cm4gcmVzdWx0Lml0ZW1zLm1hcCgoY29sdW1uOiBTa3lHcmlkQ29sdW1uTW9kZWwpID0+IHtcbiAgICAgICAgICByZXR1cm4gY29sdW1uLmlkIHx8IGNvbHVtbi5maWVsZDtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChwcmV2aW91c1ZhbHVlOiBzdHJpbmdbXSwgbmV3VmFsdWU6IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhdmVDb2x1bW5JZHNDaGFuZ2VkKHByZXZpb3VzVmFsdWUsIG5ld1ZhbHVlKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhdmVDb2x1bW5JZHNDaGFuZ2VkKFxuICAgIHByZXZpb3VzVmFsdWU6IHN0cmluZ1tdLFxuICAgIG5ld1ZhbHVlOiBzdHJpbmdbXSxcbiAgKTogYm9vbGVhbiB7XG4gICAgaWYgKHByZXZpb3VzVmFsdWUubGVuZ3RoICE9PSBuZXdWYWx1ZS5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDb2x1bW5JZHNDaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcmV2aW91c1ZhbHVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgIGlmIChwcmV2aW91c1ZhbHVlW2ldICE9PSBuZXdWYWx1ZVtpXSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ29sdW1uSWRzQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RlZE1hcEVxdWFsKFxuICAgIHByZXY6IExpc3RTZWxlY3RlZE1vZGVsLFxuICAgIG5leHQ6IExpc3RTZWxlY3RlZE1vZGVsLFxuICApOiBib29sZWFuIHtcbiAgICBpZiAocHJldi5zZWxlY3RlZElkTWFwLnNpemUgIT09IG5leHQuc2VsZWN0ZWRJZE1hcC5zaXplKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3Qga2V5czogc3RyaW5nW10gPSBbXTtcbiAgICBuZXh0LnNlbGVjdGVkSWRNYXAuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IG5leHQuc2VsZWN0ZWRJZE1hcC5nZXQoa2V5KTtcbiAgICAgIGlmICh2YWx1ZSAhPT0gcHJldi5zZWxlY3RlZElkTWFwLmdldChrZXkpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgYXJyYXlEaWZmKGFyckE6IGFueVtdLCBhcnJCOiBhbnlbXSk6IGFueVtdIHtcbiAgICByZXR1cm4gYXJyQS5maWx0ZXIoKGkpID0+IGFyckIuaW5kZXhPZihpKSA8IDApO1xuICB9XG5cbiAgcHJpdmF0ZSBhcnJheUludGVyc2VjdGlvbihhcnJBOiBhbnlbXSwgYXJyQjogYW55W10pOiBhbnlbXSB7XG4gICAgcmV0dXJuIGFyckEuZmlsdGVyKCh2YWx1ZSkgPT4gLTEgIT09IGFyckIuaW5kZXhPZih2YWx1ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBhcnJheXNFcXVhbChhcnJheUE6IGFueVtdLCBhcnJheUI6IGFueVtdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGFycmF5QS5sZW5ndGggPT09IGFycmF5Qi5sZW5ndGggJiZcbiAgICAgIGFycmF5QS5ldmVyeSgodmFsdWUsIGluZGV4KSA9PiB2YWx1ZSA9PT0gYXJyYXlCW2luZGV4XSlcbiAgICApO1xuICB9XG59XG4iLCJAaWYgKGFjdGl2ZSB8IGFzeW5jKSB7XG4gIDxkaXY+XG4gICAgPHNreS1ncmlkXG4gICAgICAjc2t5R3JpZFxuICAgICAgW2NvbHVtbnNdPVwiY29sdW1ucyB8IGFzeW5jXCJcbiAgICAgIFtkYXRhXT1cIml0ZW1zIHwgYXN5bmNcIlxuICAgICAgW2VuYWJsZU11bHRpc2VsZWN0XT1cImVuYWJsZU11bHRpc2VsZWN0XCJcbiAgICAgIFtmaXRdPVwiZml0XCJcbiAgICAgIFtoZWlnaHRdPVwiZ3JpZEhlaWdodCB8IGFzeW5jXCJcbiAgICAgIFtoaWdobGlnaHRUZXh0XT1cIlxuICAgICAgICBoaWdobGlnaHRTZWFyY2hUZXh0ID8gKGN1cnJlbnRTZWFyY2hUZXh0IHwgYXN5bmMpIDogdW5kZWZpbmVkXG4gICAgICBcIlxuICAgICAgW3Jvd0hpZ2hsaWdodGVkSWRdPVwicm93SGlnaGxpZ2h0ZWRJZFwiXG4gICAgICBbbWVzc2FnZVN0cmVhbV09XCJncmlkTWVzc2FnZVN0cmVhbVwiXG4gICAgICBbc2VsZWN0ZWRDb2x1bW5JZHNdPVwic2VsZWN0ZWRDb2x1bW5JZHMgfCBhc3luY1wiXG4gICAgICBbc2VsZWN0ZWRSb3dJZHNdPVwibXVsdGlzZWxlY3RTZWxlY3RlZElkc1wiXG4gICAgICBbc2V0dGluZ3NLZXldPVwic2V0dGluZ3NLZXlcIlxuICAgICAgW3NvcnRGaWVsZF09XCJzb3J0RmllbGQgfCBhc3luY1wiXG4gICAgICBbd2lkdGhdPVwiZ3JpZFdpZHRoIHwgYXN5bmNcIlxuICAgICAgKG11bHRpc2VsZWN0U2VsZWN0aW9uQ2hhbmdlKT1cIm9uTXVsdGlzZWxlY3RTZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAocm93RGVsZXRlQ2FuY2VsKT1cImNhbmNlbFJvd0RlbGV0ZSgkZXZlbnQpXCJcbiAgICAgIChyb3dEZWxldGVDb25maXJtKT1cImNvbmZpcm1Sb3dEZWxldGUoJGV2ZW50KVwiXG4gICAgICAoc2VsZWN0ZWRDb2x1bW5JZHNDaGFuZ2UpPVwiY29sdW1uSWRzQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIChzb3J0RmllbGRDaGFuZ2UpPVwic29ydEZpZWxkQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxza3ktd2FpdCBbaXNXYWl0aW5nXT1cImxvYWRpbmcgfCBhc3luY1wiIC8+XG4gIDwvZGl2PlxufVxuIl19","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyGridModule } from '@skyux/grids';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyListColumnSelectorActionModule } from '../list-column-selector-action/list-column-selector-action.module';\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\nimport { SkyListViewGridComponent } from './list-view-grid.component';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\nexport class SkyListViewGridModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridModule, declarations: [SkyListViewGridComponent], imports: [CommonModule,\n SkyWaitModule,\n SkyGridModule,\n SkyListBuilderViewGridsResourcesModule], exports: [SkyListViewGridComponent,\n SkyListColumnSelectorActionModule,\n SkyGridModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridModule, imports: [CommonModule,\n SkyWaitModule,\n SkyGridModule,\n SkyListBuilderViewGridsResourcesModule, SkyListColumnSelectorActionModule,\n SkyGridModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.15\", ngImport: i0, type: SkyListViewGridModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [SkyListViewGridComponent],\n imports: [\n CommonModule,\n SkyWaitModule,\n SkyGridModule,\n SkyListBuilderViewGridsResourcesModule,\n ],\n exports: [\n SkyListViewGridComponent,\n SkyListColumnSelectorActionModule,\n SkyGridModule,\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3LWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci12aWV3LWdyaWRzL3NyYy9saWIvbW9kdWxlcy9saXN0LXZpZXctZ3JpZC9saXN0LXZpZXctZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDdEgsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFaEgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRXRFOztHQUVHO0FBZUgsTUFBTSxPQUFPLHFCQUFxQjsrR0FBckIscUJBQXFCO2dIQUFyQixxQkFBcUIsaUJBYmpCLHdCQUF3QixhQUVyQyxZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYixzQ0FBc0MsYUFHdEMsd0JBQXdCO1lBQ3hCLGlDQUFpQztZQUNqQyxhQUFhO2dIQUdKLHFCQUFxQixZQVg5QixZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYixzQ0FBc0MsRUFJdEMsaUNBQWlDO1lBQ2pDLGFBQWE7OzRGQUdKLHFCQUFxQjtrQkFkakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDeEMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLHNDQUFzQztxQkFDdkM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHdCQUF3Qjt3QkFDeEIsaUNBQWlDO3dCQUNqQyxhQUFhO3FCQUNkO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lHcmlkTW9kdWxlIH0gZnJvbSAnQHNreXV4L2dyaWRzJztcbmltcG9ydCB7IFNreVdhaXRNb2R1bGUgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycyc7XG5cbmltcG9ydCB7IFNreUxpc3RDb2x1bW5TZWxlY3RvckFjdGlvbk1vZHVsZSB9IGZyb20gJy4uL2xpc3QtY29sdW1uLXNlbGVjdG9yLWFjdGlvbi9saXN0LWNvbHVtbi1zZWxlY3Rvci1hY3Rpb24ubW9kdWxlJztcbmltcG9ydCB7IFNreUxpc3RCdWlsZGVyVmlld0dyaWRzUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1saXN0LWJ1aWxkZXItdmlldy1ncmlkcy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5TGlzdFZpZXdHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LXZpZXctZ3JpZC5jb21wb25lbnQnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIExpc3QgYnVpbGRlciB2aWV3IGdyaWQgYW5kIGl0cyBmZWF0dXJlcyBhcmUgZGVwcmVjYXRlZC4gVXNlIGRhdGEgZW50cnkgZ3JpZCBpbnN0ZWFkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9kYXRhLWVudHJ5LWdyaWQuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NreUxpc3RWaWV3R3JpZENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5V2FpdE1vZHVsZSxcbiAgICBTa3lHcmlkTW9kdWxlLFxuICAgIFNreUxpc3RCdWlsZGVyVmlld0dyaWRzUmVzb3VyY2VzTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5TGlzdFZpZXdHcmlkQ29tcG9uZW50LFxuICAgIFNreUxpc3RDb2x1bW5TZWxlY3RvckFjdGlvbk1vZHVsZSxcbiAgICBTa3lHcmlkTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0Vmlld0dyaWRNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyLXZpZXctZ3JpZHMvc3JjL3NreXV4LWxpc3QtYnVpbGRlci12aWV3LWdyaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1.SkyColumnSelectorContext","i3","i1","i2","observableMap","i3.SkyListColumnSelectorButtonComponent","i4","i1.GridStateModel","i2.GridStateDispatcher","observableOf","i2.GridState","i3.GridStateDispatcher","i5","i7"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-list-builder-view-grids.mjs","sources":["../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-context.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/shared/sky-list-builder-view-grids-resources.module.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.component.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.component.html","../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.module.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/displayed-columns/load.action.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-button.component.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-button.component.html","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.component.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.component.html","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.module.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/columns/load.action.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/grid-state.model.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/grid-state.rxstate.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/columns/columns.orchestrator.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/state/grid-state.state-node.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/types/list-view-grid-message-type.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/list-view-grid.component.ts","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/list-view-grid.component.html","../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-view-grid/list-view-grid.module.ts","../../../../../libs/components/list-builder-view-grids/src/skyux-list-builder-view-grids.ts"],"sourcesContent":["/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\n/**\n * @deprecated\n */\nexport class SkyColumnSelectorContext {\n public columns: SkyColumnSelectorModel[];\n public selectedColumnIds: string[];\n}\n\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\n/**\n * @deprecated\n */\nexport class SkyColumnSelectorModel {\n public id: string;\n public heading: string;\n public description: string;\n}\n","/* istanbul ignore file */\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-list-builder-view-grids' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n skyux_grid_column_picker_cancel: { message: 'Cancel' },\n skyux_grid_column_picker_header: {\n message: 'Choose columns to show in the list',\n },\n skyux_grid_column_picker_search_placeholder: {\n message: 'Search for columns',\n },\n skyux_grid_column_picker_submit: { message: 'Apply changes' },\n skyux_grid_columns_button: { message: 'Choose columns' },\n skyux_grid_columns_toolbar_button: { message: 'Columns' },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyListBuilderViewGridsResourcesModule {}\n","import { Component } from '@angular/core';\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { SkyColumnSelectorContext } from './column-selector-context';\n\n@Component({\n selector: 'sky-column-selector',\n templateUrl: './column-selector-modal.component.html',\n standalone: false,\n})\nexport class SkyColumnSelectorComponent {\n public newSelectedColumnIds: string[] = [];\n\n constructor(\n public context: SkyColumnSelectorContext,\n public instance: SkyModalInstance,\n ) {\n this.newSelectedColumnIds = context.selectedColumnIds;\n }\n\n public selectedColumnsChange(selectedMap: Map<string, boolean>): void {\n this.newSelectedColumnIds = [];\n selectedMap.forEach((value, key) => {\n if (value) {\n this.newSelectedColumnIds.push(key);\n }\n });\n }\n\n public cancelChanges(): void {\n this.instance.cancel();\n }\n\n public applyChanges(): void {\n this.instance.save(this.newSelectedColumnIds);\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_grid_column_picker_header' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-list\n #list\n [data]=\"context.columns\"\n [selectedIds]=\"context.selectedColumnIds\"\n (selectedIdsChange)=\"selectedColumnsChange($event)\"\n >\n <sky-list-toolbar\n [placeholder]=\"\n 'skyux_grid_column_picker_search_placeholder' | skyLibResources\n \"\n />\n\n <sky-list-view-checklist label=\"heading\" description=\"description\" />\n </sky-list>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_grid_column_picker_submit' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_grid_column_picker_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyListModule, SkyListToolbarModule } from '@skyux/list-builder';\nimport { SkyListViewChecklistModule } from '@skyux/list-builder-view-checklist';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\n\nimport { SkyColumnSelectorComponent } from './column-selector-modal.component';\n\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\n@NgModule({\n declarations: [SkyColumnSelectorComponent],\n imports: [\n CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListModule,\n SkyListToolbarModule,\n SkyListViewChecklistModule,\n ],\n})\nexport class SkyColumnSelectorModule {}\n","import { SkyGridColumnModel } from '@skyux/grids';\n\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewDisplayedGridColumnsLoadAction {\n constructor(\n public columns: SkyGridColumnModel[],\n public refresh = false,\n ) {}\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'sky-list-column-selector-button',\n templateUrl: './list-column-selector-button.component.html',\n styleUrls: ['./list-column-selector-button.component.scss'],\n standalone: false,\n})\nexport class SkyListColumnSelectorButtonComponent {}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_grid_columns_button' | skyLibResources\"\n [title]=\"'skyux_grid_columns_button' | skyLibResources\"\n>\n <sky-icon iconName=\"layout-column-three\" />\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_grid_columns_toolbar_button' | skyLibResources }}\n </span>\n</button>\n","import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n Optional,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { SkyGridColumnModel } from '@skyux/grids';\nimport {\n ListState,\n ListStateDispatcher,\n ListToolbarItemModel,\n SkyListSecondaryActionsComponent,\n} from '@skyux/list-builder';\nimport { SkyModalCloseArgs, SkyModalService } from '@skyux/modals';\n\nimport { Observable } from 'rxjs';\nimport {\n distinctUntilChanged,\n map as observableMap,\n take,\n} from 'rxjs/operators';\n\nimport {\n SkyColumnSelectorContext,\n SkyColumnSelectorModel,\n} from '../column-selector/column-selector-context';\nimport { SkyColumnSelectorComponent } from '../column-selector/column-selector-modal.component';\nimport { SkyListViewGridComponent } from '../list-view-grid/list-view-grid.component';\nimport { ListViewDisplayedGridColumnsLoadAction } from '../list-view-grid/state/displayed-columns/load.action';\nimport { GridStateModel } from '../list-view-grid/state/grid-state.model';\n\n/**\n * Provides a column selector modal for a list grid view when placed in a\n * [list toolbar](https://developer.blackbaud.com/skyux/components/list-toolbar).\n */\n@Component({\n selector: 'sky-list-column-selector-action',\n templateUrl: './list-column-selector-action.component.html',\n standalone: false,\n})\nexport class SkyListColumnSelectorActionComponent implements AfterContentInit {\n /**\n * Enables the column selector in the list toolbar. Set this attribute to the instance of\n * the `sky-grid-view` component using the component's template reference variable.\n */\n @Input()\n public gridView: SkyListViewGridComponent;\n\n /**\n * The `helpKey` string to associate with a help button in the grid header. When users select\n * the button, the `helpOpened` event broadcasts the `helpKey` parameter.\n */\n @Input()\n public helpKey: string;\n\n /**\n * Fires when users click the help button and broadcasts the `helpKey`.\n */\n @Output()\n public helpOpened = new EventEmitter<string>();\n\n @ViewChild('columnChooser', {\n static: true,\n })\n private columnChooserTemplate: TemplateRef<unknown>;\n\n private columnSelectorActionItemToolbarIndex = 7000;\n\n constructor(\n public listState: ListState,\n private modalService: SkyModalService,\n private dispatcher: ListStateDispatcher,\n @Optional() public secondaryActions: SkyListSecondaryActionsComponent,\n ) {}\n\n public ngAfterContentInit(): void {\n if (!this.secondaryActions) {\n const columnChooserItem = new ListToolbarItemModel({\n id: 'column-chooser',\n template: this.columnChooserTemplate,\n location: 'left',\n });\n\n this.dispatcher.toolbarAddItems(\n [columnChooserItem],\n this.columnSelectorActionItemToolbarIndex,\n );\n }\n }\n\n public get isInGridView(): Observable<boolean> {\n return this.listState.pipe(\n observableMap((s) => s.views.active),\n observableMap((activeView) => {\n return this.gridView && activeView === this.gridView.id;\n }),\n distinctUntilChanged(),\n );\n }\n\n public get isInGridViewAndSecondary(): Observable<boolean> {\n return this.listState.pipe(\n observableMap((s) => s.views.active),\n observableMap((activeView) => {\n return (\n this.secondaryActions &&\n this.gridView &&\n activeView === this.gridView.id\n );\n }),\n distinctUntilChanged(),\n );\n }\n\n public openColumnSelector(): void {\n /* istanbul ignore else */\n /* sanity check */\n if (this.gridView) {\n let columns: SkyColumnSelectorModel[] = [];\n let selectedColumnIds: string[] = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state: GridStateModel) => {\n columns = state.columns.items\n .filter((item: SkyGridColumnModel) => {\n return !item.locked;\n })\n .map((item: SkyGridColumnModel) => {\n return {\n id: item.id,\n heading: item.heading,\n description: item.description,\n };\n });\n selectedColumnIds = state.displayedColumns.items\n .filter((item: SkyGridColumnModel) => {\n return !item.locked;\n })\n .map((item: SkyGridColumnModel) => {\n return item.id;\n });\n });\n\n const modalInstance = this.modalService.open(SkyColumnSelectorComponent, {\n providers: [\n {\n provide: SkyColumnSelectorContext,\n useValue: {\n columns,\n selectedColumnIds,\n },\n },\n ],\n helpKey: this.helpKey,\n });\n\n modalInstance.helpOpened.subscribe((helpKey: string) => {\n this.helpOpened.emit(helpKey);\n this.helpOpened.complete();\n });\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save' && result.data) {\n const newSelectedIds = result.data;\n let newDisplayedColumns: SkyGridColumnModel[] = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state: GridStateModel) => {\n newDisplayedColumns = state.columns.items.filter((item) => {\n return newSelectedIds.indexOf(item.id) > -1 || item.locked;\n });\n });\n this.gridView.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n newDisplayedColumns,\n true,\n ),\n );\n }\n });\n }\n }\n}\n","@if (isInGridViewAndSecondary | async) {\n <sky-list-secondary-action>\n <button type=\"button\" (click)=\"openColumnSelector()\">\n {{ 'skyux_grid_columns_button' | skyLibResources }}\n </button>\n </sky-list-secondary-action>\n}\n\n<ng-template #columnChooser>\n @if (isInGridView | async) {\n <sky-list-column-selector-button (click)=\"openColumnSelector()\" />\n }\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n} from '@skyux/list-builder';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyColumnSelectorModule } from '../column-selector/column-selector-modal.module';\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\n\nimport { SkyListColumnSelectorActionComponent } from './list-column-selector-action.component';\nimport { SkyListColumnSelectorButtonComponent } from './list-column-selector-button.component';\n\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\n@NgModule({\n declarations: [\n SkyListColumnSelectorActionComponent,\n SkyListColumnSelectorButtonComponent,\n ],\n imports: [\n CommonModule,\n SkyModalModule,\n SkyListBuilderViewGridsResourcesModule,\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n SkyIconModule,\n ],\n exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule],\n})\nexport class SkyListColumnSelectorActionModule {}\n","import { SkyGridColumnModel } from '@skyux/grids';\n\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewGridColumnsLoadAction {\n constructor(\n public columns: SkyGridColumnModel[],\n public refresh = false,\n ) {}\n}\n","import { SkyGridColumnModel } from '@skyux/grids';\nimport { AsyncList } from '@skyux/list-builder-common';\n\n/**\n * @internal\n * @deprecated\n */\nexport class GridStateModel {\n public columns: AsyncList<SkyGridColumnModel> =\n new AsyncList<SkyGridColumnModel>();\n public displayedColumns: AsyncList<SkyGridColumnModel> =\n new AsyncList<SkyGridColumnModel>();\n}\n","import { Injectable } from '@angular/core';\nimport { StateDispatcher, StateOrchestrator } from '@skyux/list-builder-common';\n\nimport { GridStateAction } from './grid-state-action.type';\n\n/**\n * @internal\n * @deprecated\n */\n@Injectable()\nexport class GridStateDispatcher extends StateDispatcher<GridStateAction> {}\n\n/**\n * @internal\n */\nexport class GridStateOrchestrator<T> extends StateOrchestrator<\n T,\n GridStateAction\n> {}\n","import { SkyGridColumnModel } from '@skyux/grids';\nimport { AsyncList } from '@skyux/list-builder-common';\n\nimport { GridStateOrchestrator } from '../grid-state.rxstate';\n\nimport { ListViewGridColumnsLoadAction } from './load.action';\n\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewGridColumnsOrchestrator extends GridStateOrchestrator<\n AsyncList<SkyGridColumnModel>\n> {\n /* istanbul ignore next */\n constructor() {\n super();\n\n this.register(ListViewGridColumnsLoadAction, this.load);\n }\n\n private load(\n state: AsyncList<SkyGridColumnModel>,\n action: ListViewGridColumnsLoadAction,\n ): AsyncList<SkyGridColumnModel> {\n const newColumns = action.columns.map(\n (g) => new SkyGridColumnModel(g.template, g),\n );\n\n if (action.refresh) {\n return new AsyncList<SkyGridColumnModel>([...newColumns], new Date());\n }\n\n return new AsyncList<SkyGridColumnModel>(\n [...state.items, ...newColumns],\n new Date(),\n );\n }\n}\n","import { SkyGridColumnModel } from '@skyux/grids';\nimport { AsyncList } from '@skyux/list-builder-common';\n\nimport { GridStateOrchestrator } from '../grid-state.rxstate';\n\nimport { ListViewDisplayedGridColumnsLoadAction } from './load.action';\n\n/**\n * @internal\n * @deprecated\n */\nexport class ListViewDisplayedGridColumnsOrchestrator extends GridStateOrchestrator<\n AsyncList<SkyGridColumnModel>\n> {\n /* istanbul ignore next */\n constructor() {\n super();\n\n this.register(ListViewDisplayedGridColumnsLoadAction, this.load);\n }\n\n private load(\n state: AsyncList<SkyGridColumnModel>,\n action: ListViewDisplayedGridColumnsLoadAction,\n ): AsyncList<SkyGridColumnModel> {\n const newColumns = action.columns.map(\n (g) => new SkyGridColumnModel(g.template, g),\n );\n\n if (action.refresh) {\n return new AsyncList<SkyGridColumnModel>([...newColumns], new Date());\n }\n\n return new AsyncList<SkyGridColumnModel>(\n [...state.items, ...newColumns],\n new Date(),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { StateNode } from '@skyux/list-builder-common';\n\nimport { ListViewGridColumnsOrchestrator } from './columns/columns.orchestrator';\nimport { ListViewDisplayedGridColumnsOrchestrator } from './displayed-columns/displayed-columns.orchestrator';\nimport { GridStateModel } from './grid-state.model';\nimport { GridStateDispatcher } from './grid-state.rxstate';\n\n/**\n * @internal\n * @deprecated\n */\n@Injectable()\nexport class GridState extends StateNode<GridStateModel> {\n /* istanbul ignore next */\n constructor(initialState: GridStateModel, dispatcher: GridStateDispatcher) {\n super(initialState, dispatcher);\n\n this.register('columns', ListViewGridColumnsOrchestrator)\n .register('displayedColumns', ListViewDisplayedGridColumnsOrchestrator)\n .begin();\n }\n}\n","/**\n * The command for the list view grid to respond to.\n * @deprecated\n */\nexport enum SkyListViewGridMessageType {\n /**\n * Deletes of a row in the list view grid.\n */\n PromptDeleteRow = 0,\n\n /**\n * Cancels the deletion of a row in the list view grid.\n */\n AbortDeleteRow = 1,\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewChild,\n forwardRef,\n} from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport {\n SkyGridColumnComponent,\n SkyGridColumnDescriptionModelChange,\n SkyGridColumnHeadingModelChange,\n SkyGridColumnModel,\n SkyGridComponent,\n SkyGridMessage,\n SkyGridMessageType,\n SkyGridSelectedRowsModelChange,\n SkyGridSelectedRowsSource,\n} from '@skyux/grids';\nimport {\n ListSearchModel,\n ListSelectedModel,\n ListState,\n ListStateDispatcher,\n ListViewComponent,\n} from '@skyux/list-builder';\nimport {\n AsyncList,\n ListItemModel,\n ListSortFieldSelectorModel,\n getData,\n getValue,\n isObservable,\n} from '@skyux/list-builder-common';\n\nimport { Observable, Subject, of as observableOf } from 'rxjs';\nimport {\n distinctUntilChanged,\n map as observableMap,\n scan,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { ListViewGridColumnsLoadAction } from './state/columns/load.action';\nimport { ListViewDisplayedGridColumnsLoadAction } from './state/displayed-columns/load.action';\nimport { GridStateModel } from './state/grid-state.model';\nimport { GridStateDispatcher } from './state/grid-state.rxstate';\nimport { GridState } from './state/grid-state.state-node';\nimport { SkyListViewGridMessage } from './types/list-view-grid-message';\nimport { SkyListViewGridMessageType } from './types/list-view-grid-message-type';\nimport { SkyListViewGridRowDeleteCancelArgs } from './types/list-view-grid-row-delete-cancel-args';\nimport { SkyListViewGridRowDeleteConfirmArgs } from './types/list-view-grid-row-delete-confirm-args';\n\n/**\n * Displays a grid for a\n * [SKY UX-themed list of data](https://developer.blackbaud.com/skyux/components/list-overview)\n * using the [grid component](https://developer.blackbaud.com/skyux/components/grid).\n * You must install `SkyListModule` as a dependency.\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\n@Component({\n selector: 'sky-list-view-grid',\n templateUrl: './list-view-grid.component.html',\n styleUrls: ['./list-view-grid.component.scss'],\n providers: [\n {\n provide: ListViewComponent,\n useExisting: forwardRef(() => SkyListViewGridComponent),\n },\n GridState,\n GridStateDispatcher,\n GridStateModel,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyListViewGridComponent\n extends ListViewComponent\n implements AfterContentInit, OnDestroy\n{\n /**\n * The name of the view.\n * @required\n */\n @Input()\n public set name(value: string) {\n this.viewName = value;\n }\n\n /**\n * The columns to display by default based on the ID or field of the item.\n */\n @Input()\n public displayedColumns: string[] | Observable<string[]>;\n\n /**\n * The columns to hide by default based on the ID or field of the item.\n */\n @Input()\n public hiddenColumns: string[] | Observable<string[]>;\n\n /**\n * How the grid fits to its parent. `\"width\"` fits the grid to the parent's full\n * width, and `\"scroll\"` allows the grid to exceed the parent's width. If the grid does not have\n * enough columns to fill the parent's width, it always stretches to the parent's full width.\n * @default \"width\"\n */\n @Input()\n public fit = 'width';\n\n /**\n * The width of the grid.\n */\n @Input()\n public width: number | Observable<number>;\n\n /**\n * The height of the grid.\n */\n @Input()\n public height: number | Observable<number>;\n\n /**\n * Whether to highlight search text within the grid.\n * @default true\n */\n @Input()\n public highlightSearchText = true;\n\n /**\n * The observable to send commands to the grid.\n * The commands should respect the `SkyListViewGridMessage` type.\n */\n @Input()\n public set messageStream(stream: Subject<SkyListViewGridMessage>) {\n /* istanbul ignore else */\n if (this._messageStream) {\n this._messageStream.unsubscribe();\n }\n\n this._messageStream = stream;\n\n this.initInlineDeleteMessages();\n }\n\n public get messageStream(): Subject<SkyListViewGridMessage> {\n return this._messageStream;\n }\n\n /**\n * The ID of the row to highlight. The ID matches the `id` property of\n * the `data` object. Typically, this property is used in conjunction with the\n * [flyout component](https://developer.blackbaud.com/skyux/components/flyout) to\n * indicate the currently selected row.\n */\n @Input()\n public rowHighlightedId: string;\n\n /**\n * Whether to enable the multiselect feature to display a column of checkboxes\n * on the left side of the grid. Multiselect also displays an action bar with buttons to\n * select and clear all checkboxes. Multiselect defaults to the `id` property on the list's\n * `data` object.\n * @default false\n */\n @Input()\n public enableMultiselect = false;\n\n /**\n * The unique key for the UI Config Service that retrieves stored settings from\n * a database. The service saves configuration settings for users and returns `selectedColumnIds`\n * for the columns to display and the preferred column order. For more information, see the\n * [sticky settings documentation](https://developer.blackbaud.com/skyux/learn/develop/sticky-settings/overview).\n */\n @Input()\n public settingsKey: string;\n\n /**\n * Fires when users cancel the deletion of a row.\n */\n @Output()\n public rowDeleteCancel =\n new EventEmitter<SkyListViewGridRowDeleteCancelArgs>();\n\n /**\n * Fires when users confirm the deletion of a row.\n */\n @Output()\n public rowDeleteConfirm =\n new EventEmitter<SkyListViewGridRowDeleteConfirmArgs>();\n\n /**\n * Fires when columns change. This includes changes to the displayed columns and changes\n * to the order of columns. The event emits an array of IDs for the displayed columns that\n * reflects the column order.\n */\n @Output()\n public selectedColumnIdsChange = new EventEmitter<string[]>();\n\n @ViewChild(SkyGridComponent)\n public gridComponent: SkyGridComponent;\n\n public get gridHeight(): Observable<number> {\n /* istanbul ignore next */\n return typeof this.height === 'number'\n ? observableOf(this.height)\n : this.height;\n }\n\n public get gridWidth(): Observable<number> {\n /* istanbul ignore next */\n return typeof this.width === 'number'\n ? observableOf(this.width)\n : this.width;\n }\n\n public columns: Observable<SkyGridColumnModel[]>;\n\n public selectedColumnIds: Observable<string[]>;\n\n public items: Observable<ListItemModel[]>;\n\n /**\n * Message stream for communicating with the internal grid instance\n * @internal\n */\n public gridMessageStream = new Subject<SkyGridMessage>();\n\n public loading: Observable<boolean>;\n\n public sortField: Observable<ListSortFieldSelectorModel>;\n\n public currentSearchText: Observable<string>;\n\n public multiselectSelectedIds: string[] = [];\n\n /**\n * The search function to apply on the view data.\n * @param data Specifies the data to search.\n * @param searchText Specifies a text string to search for.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('search')\n public searchFunction: (data: any, searchText: string) => boolean;\n\n @ContentChildren(SkyGridColumnComponent)\n private columnComponents: QueryList<SkyGridColumnComponent>;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _messageStream = new Subject<SkyListViewGridMessage>();\n\n constructor(\n state: ListState,\n private dispatcher: ListStateDispatcher,\n public gridState: GridState,\n public gridDispatcher: GridStateDispatcher,\n logger: SkyLogService,\n ) {\n super(state, 'Grid View');\n\n logger.deprecated('SkyListViewGridComponent', {\n deprecationMajorVersion: 6,\n moreInfoUrl:\n 'https://developer.blackbaud.com/skyux/components/data-entry-grid',\n replacementRecommendation: 'Use data entry grid instead.',\n });\n }\n\n public ngAfterContentInit(): void {\n // Watch for selection changes and update multiselectSelectedIds for local comparison.\n this.state\n .pipe(\n observableMap((s) => s.selected.item),\n takeUntil(this.ngUnsubscribe),\n distinctUntilChanged(this.selectedMapEqual),\n )\n .subscribe((items: ListSelectedModel) => {\n const selectedIds: string[] = [];\n\n items.selectedIdMap.forEach((isSelected, id) => {\n if (items.selectedIdMap.get(id) === true) {\n selectedIds.push(id);\n }\n });\n\n this.multiselectSelectedIds = selectedIds;\n });\n\n /* istanbul ignore next */\n if (this.columnComponents.length === 0) {\n throw new Error(\n 'Grid view requires at least one sky-grid-column to render.',\n );\n }\n\n const columnModels = this.columnComponents.map((columnComponent) => {\n return new SkyGridColumnModel(columnComponent.template, columnComponent);\n });\n\n if (this.width && !isObservable(this.width)) {\n this.width = observableOf(this.width);\n }\n\n if (this.height && !isObservable(this.height)) {\n this.height = observableOf(this.height);\n }\n\n // Setup Observables for template\n this.columns = this.gridState.pipe(\n observableMap((s) => s.columns.items),\n distinctUntilChanged(this.arraysEqual),\n takeUntil(this.ngUnsubscribe),\n );\n\n this.selectedColumnIds = this.getSelectedIds();\n\n this.items = this.getGridItems();\n\n this.loading = this.state.pipe(\n observableMap((s) => {\n return s.items.loading;\n }),\n distinctUntilChanged(),\n takeUntil(this.ngUnsubscribe),\n );\n\n this.sortField = this.state.pipe(\n observableMap((s) => {\n /* istanbul ignore else */\n /* sanity check */\n if (s.sort && s.sort.fieldSelectors) {\n return s.sort.fieldSelectors[0];\n }\n /* istanbul ignore next */\n /* sanity check */\n return undefined;\n }),\n distinctUntilChanged(),\n takeUntil(this.ngUnsubscribe),\n );\n\n this.gridState\n .pipe(\n observableMap((s) => s.columns.items),\n takeUntil(this.ngUnsubscribe),\n distinctUntilChanged(this.arraysEqual),\n )\n .subscribe((columns) => {\n /* istanbul ignore else */\n if (this.hiddenColumns) {\n getValue(this.hiddenColumns, (hiddenColumns: string[]) => {\n this.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n columns.filter((x) => {\n /* istanbul ignore next */\n /* sanity check */\n const id = x.id || x.field;\n return hiddenColumns.indexOf(id) === -1;\n }),\n true,\n ),\n );\n });\n } else if (this.displayedColumns) {\n /* istanbul ignore next */\n getValue(this.displayedColumns, (displayedColumns: string[]) => {\n this.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n columns.filter(\n (x) => displayedColumns.indexOf(x.id || x.field) !== -1,\n ),\n true,\n ),\n );\n });\n } else {\n this.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n columns.filter((x) => !x.hidden),\n true,\n ),\n );\n }\n });\n\n this.currentSearchText = this.state.pipe(\n observableMap((s) => s.search.searchText),\n distinctUntilChanged(),\n takeUntil(this.ngUnsubscribe),\n );\n\n this.gridDispatcher.next(\n new ListViewGridColumnsLoadAction(columnModels, true),\n );\n\n this.handleColumnChange();\n\n if (this.enableMultiselect) {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n }\n\n this.initInlineDeleteMessages();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n /**\n * If user makes selection, tell list-builder to update the list state.\n * This logic should only run on user interaction - NOT programmatic updates.\n */\n public onMultiselectSelectionChange(\n event: SkyGridSelectedRowsModelChange,\n ): void {\n if (\n event.source === SkyGridSelectedRowsSource.CheckboxChange ||\n event.source === SkyGridSelectedRowsSource.RowClick\n ) {\n this.state\n .pipe(\n observableMap((s) => s.items.items),\n take(1),\n )\n .subscribe((items: ListItemModel[]) => {\n const newItemIds = this.arrayIntersection(\n items.map((i) => i.id),\n this.multiselectSelectedIds,\n );\n const newIds = items.filter((i) => i.isSelected).map((i) => i.id);\n\n // Check for deselected ids & send message to dispatcher.\n const deselectedIds = this.arrayDiff(newItemIds, newIds);\n if (deselectedIds.length > 0) {\n this.dispatcher.setSelected(deselectedIds, false);\n }\n\n // Check for selected ids & send message to dispatcher.\n const selectedIds = this.arrayDiff(newIds, newItemIds);\n if (selectedIds.length > 0) {\n this.dispatcher.setSelected(selectedIds, true);\n }\n });\n }\n }\n\n public columnIdsChanged(selectedColumnIds: string[]): void {\n this.selectedColumnIds.pipe(take(1)).subscribe((currentIds) => {\n if (!this.arraysEqual(selectedColumnIds, currentIds)) {\n this.gridState\n .pipe(\n observableMap((s) => s.columns.items),\n take(1),\n )\n .subscribe((columns) => {\n const displayedColumns = selectedColumnIds.map(\n (columnId) => columns.filter((c) => c.id === columnId)[0],\n );\n this.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n displayedColumns,\n true,\n ),\n );\n });\n }\n });\n }\n\n public cancelRowDelete(args: SkyListViewGridRowDeleteCancelArgs): void {\n this.rowDeleteCancel.emit(args);\n }\n\n public confirmRowDelete(args: SkyListViewGridRowDeleteConfirmArgs): void {\n this.rowDeleteConfirm.emit(args);\n }\n\n public sortFieldChanged(sortField: ListSortFieldSelectorModel): void {\n this.dispatcher.sortSetFieldSelectors([sortField]);\n }\n\n public override onViewActive(): void {\n /*\n Ran into problem where state updates were consumed out of order. For example, on search text\n update, the searchText update was consumed after the resulting list item update. Scanning the\n previous value of items lastUpdate ensures that we only receive the latest items.\n */\n this.gridState\n .pipe(\n takeUntil(this.ngUnsubscribe),\n scan((previousValue: GridStateModel, newValue: GridStateModel) => {\n if (\n previousValue.displayedColumns.lastUpdate >\n newValue.displayedColumns.lastUpdate\n ) {\n return previousValue;\n } else {\n return newValue;\n }\n }),\n observableMap((s) => s.displayedColumns.items),\n distinctUntilChanged(this.arraysEqual),\n )\n .subscribe((displayedColumns) => {\n const setFunctions =\n this.searchFunction !== undefined\n ? [this.searchFunction]\n : displayedColumns\n .map(\n (column) =>\n (data: any, searchText: string): any =>\n column.searchFunction(\n getData(data, column.field),\n searchText,\n ),\n )\n .filter((c) => c !== undefined);\n\n this.state.pipe(take(1)).subscribe((s) => {\n this.dispatcher.searchSetOptions(\n new ListSearchModel({\n searchText: s.search.searchText,\n functions: setFunctions,\n fieldSelectors: displayedColumns.map((d) => d.field),\n }),\n );\n });\n });\n }\n\n private initInlineDeleteMessages(): void {\n /* istanbul ignore next */\n if (this.messageStream) {\n this.messageStream.subscribe((message: SkyListViewGridMessage) => {\n if (message.type === SkyListViewGridMessageType.AbortDeleteRow) {\n this.gridMessageStream.next({\n type: SkyGridMessageType.AbortDeleteRow,\n data: {\n abortDeleteRow: message.data.abortDeleteRow,\n },\n });\n } else if (\n message.type === SkyListViewGridMessageType.PromptDeleteRow\n ) {\n this.gridMessageStream.next({\n type: SkyGridMessageType.PromptDeleteRow,\n data: {\n promptDeleteRow: message.data.promptDeleteRow,\n },\n });\n }\n });\n }\n }\n\n private handleColumnChange(): void {\n // watch for changes in column components\n this.columnComponents.changes\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((columnComponents) => {\n const columnModels = this.columnComponents.map((column) => {\n return new SkyGridColumnModel(column.template, column);\n });\n this.gridDispatcher.next(\n new ListViewGridColumnsLoadAction(columnModels, true),\n );\n });\n\n // Watch for column heading changes:\n this.columnComponents.forEach((comp) => {\n comp.headingModelChanges\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change: SkyGridColumnHeadingModelChange) => {\n this.gridComponent.updateColumnHeading(change);\n });\n comp.descriptionModelChanges\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change: SkyGridColumnDescriptionModelChange) => {\n this.gridComponent.updateColumnDescription(change);\n });\n });\n }\n\n private getGridItems(): Observable<ListItemModel[]> {\n /*\n Same problem as above. We should move from having a state object observable with a bunch of\n static properties to a static state object with observable properties that you can subscribe\n to.\n */\n return this.state.pipe(\n observableMap((s) => {\n return s.items;\n }),\n scan(\n (\n previousValue: AsyncList<ListItemModel>,\n newValue: AsyncList<ListItemModel>,\n ) => {\n if (previousValue.lastUpdate > newValue.lastUpdate) {\n return previousValue;\n } else {\n return newValue;\n }\n },\n ),\n observableMap((result: AsyncList<ListItemModel>) => {\n return result.items;\n }),\n distinctUntilChanged(),\n );\n }\n\n private getSelectedIds(): Observable<string[]> {\n /*\n Same problem as above. We should move from having a state object observable with a bunch of\n static properties to a static state object with observable properties that you can subscribe\n to.\n */\n return this.gridState.pipe(\n observableMap((s) => s.displayedColumns),\n scan(\n (\n previousValue: AsyncList<SkyGridColumnModel>,\n newValue: AsyncList<SkyGridColumnModel>,\n ) => {\n if (previousValue.lastUpdate > newValue.lastUpdate) {\n return previousValue;\n } else {\n return newValue;\n }\n },\n ),\n observableMap((result: AsyncList<SkyGridColumnModel>) => {\n /* istanbul ignore next */\n /* sanity check */\n return result.items.map((column: SkyGridColumnModel) => {\n return column.id || column.field;\n });\n }),\n distinctUntilChanged((previousValue: string[], newValue: string[]) => {\n return this.haveColumnIdsChanged(previousValue, newValue);\n }),\n );\n }\n\n private haveColumnIdsChanged(\n previousValue: string[],\n newValue: string[],\n ): boolean {\n if (previousValue.length !== newValue.length) {\n this.selectedColumnIdsChange.emit(newValue);\n return false;\n }\n\n for (let i = 0; i < previousValue.length; i++) {\n /* istanbul ignore if */\n if (previousValue[i] !== newValue[i]) {\n this.selectedColumnIdsChange.emit(newValue);\n return false;\n }\n }\n return true;\n }\n\n private selectedMapEqual(\n prev: ListSelectedModel,\n next: ListSelectedModel,\n ): boolean {\n if (prev.selectedIdMap.size !== next.selectedIdMap.size) {\n return false;\n }\n\n const keys: string[] = [];\n next.selectedIdMap.forEach((value, key) => {\n keys.push(key);\n });\n\n for (const key of keys) {\n const value = next.selectedIdMap.get(key);\n if (value !== prev.selectedIdMap.get(key)) {\n return false;\n }\n }\n\n return true;\n }\n\n private arrayDiff(arrA: any[], arrB: any[]): any[] {\n return arrA.filter((i) => arrB.indexOf(i) < 0);\n }\n\n private arrayIntersection(arrA: any[], arrB: any[]): any[] {\n return arrA.filter((value) => -1 !== arrB.indexOf(value));\n }\n\n private arraysEqual(arrayA: any[], arrayB: any[]): boolean {\n return (\n arrayA.length === arrayB.length &&\n arrayA.every((value, index) => value === arrayB[index])\n );\n }\n}\n","@if (active | async) {\n <div>\n <sky-grid\n #skyGrid\n [columns]=\"columns | async\"\n [data]=\"items | async\"\n [enableMultiselect]=\"enableMultiselect\"\n [fit]=\"fit\"\n [height]=\"gridHeight | async\"\n [highlightText]=\"\n highlightSearchText ? (currentSearchText | async) : undefined\n \"\n [rowHighlightedId]=\"rowHighlightedId\"\n [messageStream]=\"gridMessageStream\"\n [selectedColumnIds]=\"selectedColumnIds | async\"\n [selectedRowIds]=\"multiselectSelectedIds\"\n [settingsKey]=\"settingsKey\"\n [sortField]=\"sortField | async\"\n [width]=\"gridWidth | async\"\n (multiselectSelectionChange)=\"onMultiselectSelectionChange($event)\"\n (rowDeleteCancel)=\"cancelRowDelete($event)\"\n (rowDeleteConfirm)=\"confirmRowDelete($event)\"\n (selectedColumnIdsChange)=\"columnIdsChanged($event)\"\n (sortFieldChange)=\"sortFieldChanged($event)\"\n />\n <sky-wait [isWaiting]=\"loading | async\" />\n </div>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyGridModule } from '@skyux/grids';\nimport { SkyWaitModule } from '@skyux/indicators';\n\nimport { SkyListColumnSelectorActionModule } from '../list-column-selector-action/list-column-selector-action.module';\nimport { SkyListBuilderViewGridsResourcesModule } from '../shared/sky-list-builder-view-grids-resources.module';\n\nimport { SkyListViewGridComponent } from './list-view-grid.component';\n\n/**\n * @deprecated List builder view grid and its features are deprecated. Use data entry grid instead. For more information, see https://developer.blackbaud.com/skyux/components/data-entry-grid.\n */\n@NgModule({\n declarations: [SkyListViewGridComponent],\n imports: [\n CommonModule,\n SkyWaitModule,\n SkyGridModule,\n SkyListBuilderViewGridsResourcesModule,\n ],\n exports: [\n SkyListViewGridComponent,\n SkyListColumnSelectorActionModule,\n SkyGridModule,\n ],\n})\nexport class SkyListViewGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyColumnSelectorContext","i3","i1","i2","observableMap","i3.SkyListColumnSelectorButtonComponent","i4","i1.GridStateModel","i2.GridStateDispatcher","observableOf","i2.GridState","i3.GridStateDispatcher","i5","i7"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;;AAEG;MACU,wBAAwB,CAAA;AAGpC;AAED;AACA;AACA;;AAEG;MACU,sBAAsB,CAAA;AAIlC;;ACnBD;AACA;;;;;AAKG;AAQH,MAAM,SAAS,GAAoC;AACjD,IAAA,OAAO,EAAE;AACP,QAAA,+BAA+B,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;AACtD,QAAA,+BAA+B,EAAE;AAC/B,YAAA,OAAO,EAAE,oCAAoC;AAC9C,SAAA;AACD,QAAA,2CAA2C,EAAE;AAC3C,YAAA,OAAO,EAAE,oBAAoB;AAC9B,SAAA;AACD,QAAA,+BAA+B,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;AAC7D,QAAA,yBAAyB,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;AACxD,QAAA,iCAAiC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;AAC1D,KAAA;CACF;AAED,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC;AAE9C;;AAEG;MAIU,sCAAsC,CAAA;+GAAtC,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAtC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sCAAsC,YAFvC,aAAa,CAAA,EAAA,CAAA,CAAA;AAEZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sCAAsC,YAFvC,aAAa,CAAA,EAAA,CAAA,CAAA;;4FAEZ,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBAHlD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACzB,iBAAA;;;MC1BY,0BAA0B,CAAA;IAGrC,WAAA,CACS,OAAiC,EACjC,QAA0B,EAAA;QAD1B,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAJV,IAAA,CAAA,oBAAoB,GAAa,EAAE;AAMxC,QAAA,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,iBAAiB;IACvD;AAEO,IAAA,qBAAqB,CAAC,WAAiC,EAAA;AAC5D,QAAA,IAAI,CAAC,oBAAoB,GAAG,EAAE;QAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;YACjC,IAAI,KAAK,EAAE;AACT,gBAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC;YACrC;AACF,QAAA,CAAC,CAAC;IACJ;IAEO,aAAa,GAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;IACxB;IAEO,YAAY,GAAA;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;IAC/C;+GAzBW,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,gFCVvC,6lCAuCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,aAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,aAAA,EAAA,cAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,6BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,aAAA,EAAA,YAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FD7Ba,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,cAEnB,KAAK,EAAA,QAAA,EAAA,6lCAAA,EAAA;;;AEEnB;;AAEG;MAYU,uBAAuB,CAAA;+GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAvB,uBAAuB,EAAA,YAAA,EAAA,CAVnB,0BAA0B,CAAA,EAAA,OAAA,EAAA,CAEvC,YAAY;YACZ,cAAc;YACd,sCAAsC;YACtC,aAAa;YACb,oBAAoB;YACpB,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAGjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YARhC,YAAY;YACZ,cAAc;YACd,sCAAsC;YACtC,aAAa;YACb,oBAAoB;YACpB,0BAA0B,CAAA,EAAA,CAAA,CAAA;;4FAGjB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAXnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,0BAA0B,CAAC;AAC1C,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,sCAAsC;wBACtC,aAAa;wBACb,oBAAoB;wBACpB,0BAA0B;AAC3B,qBAAA;AACF,iBAAA;;;ACrBD;;;AAGG;MACU,sCAAsC,CAAA;IACjD,WAAA,CACS,OAA6B,EAC7B,OAAA,GAAU,KAAK,EAAA;QADf,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,OAAO,GAAP,OAAO;IACb;AACJ;;MCHY,oCAAoC,CAAA;+GAApC,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oCAAoC,4FCRjD,0YAWA,EAAA,MAAA,EAAA,CAAA,ouBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDHa,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBANhD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iCAAiC,cAG/B,KAAK,EAAA,QAAA,EAAA,0YAAA,EAAA,MAAA,EAAA,CAAA,ouBAAA,CAAA,EAAA;;;AE6BnB;;;AAGG;MAMU,oCAAoC,CAAA;AA4B/C,IAAA,WAAA,CACS,SAAoB,EACnB,YAA6B,EAC7B,UAA+B,EACpB,gBAAkD,EAAA;QAH9D,IAAA,CAAA,SAAS,GAAT,SAAS;QACR,IAAA,CAAA,YAAY,GAAZ,YAAY;QACZ,IAAA,CAAA,UAAU,GAAV,UAAU;QACC,IAAA,CAAA,gBAAgB,GAAhB,gBAAgB;AAjBrC;;AAEG;AAEI,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAU;QAOtC,IAAA,CAAA,oCAAoC,GAAG,IAAI;IAOhD;IAEI,kBAAkB,GAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAC1B,YAAA,MAAM,iBAAiB,GAAG,IAAI,oBAAoB,CAAC;AACjD,gBAAA,EAAE,EAAE,gBAAgB;gBACpB,QAAQ,EAAE,IAAI,CAAC,qBAAqB;AACpC,gBAAA,QAAQ,EAAE,MAAM;AACjB,aAAA,CAAC;AAEF,YAAA,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,CAAC,iBAAiB,CAAC,EACnB,IAAI,CAAC,oCAAoC,CAC1C;QACH;IACF;AAEA,IAAA,IAAW,YAAY,GAAA;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CACxBC,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACpCA,GAAa,CAAC,CAAC,UAAU,KAAI;YAC3B,OAAO,IAAI,CAAC,QAAQ,IAAI,UAAU,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE;AACzD,QAAA,CAAC,CAAC,EACF,oBAAoB,EAAE,CACvB;IACH;AAEA,IAAA,IAAW,wBAAwB,GAAA;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CACxBA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACpCA,GAAa,CAAC,CAAC,UAAU,KAAI;YAC3B,QACE,IAAI,CAAC,gBAAgB;AACrB,gBAAA,IAAI,CAAC,QAAQ;AACb,gBAAA,UAAU,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE;AAEnC,QAAA,CAAC,CAAC,EACF,oBAAoB,EAAE,CACvB;IACH;IAEO,kBAAkB,GAAA;;;AAGvB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,OAAO,GAA6B,EAAE;YAC1C,IAAI,iBAAiB,GAAa,EAAE;YACpC,IAAI,CAAC,QAAQ,CAAC;AACX,iBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACZ,iBAAA,SAAS,CAAC,CAAC,KAAqB,KAAI;AACnC,gBAAA,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AACrB,qBAAA,MAAM,CAAC,CAAC,IAAwB,KAAI;AACnC,oBAAA,OAAO,CAAC,IAAI,CAAC,MAAM;AACrB,gBAAA,CAAC;AACA,qBAAA,GAAG,CAAC,CAAC,IAAwB,KAAI;oBAChC,OAAO;wBACL,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,WAAW,EAAE,IAAI,CAAC,WAAW;qBAC9B;AACH,gBAAA,CAAC,CAAC;AACJ,gBAAA,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC;AACxC,qBAAA,MAAM,CAAC,CAAC,IAAwB,KAAI;AACnC,oBAAA,OAAO,CAAC,IAAI,CAAC,MAAM;AACrB,gBAAA,CAAC;AACA,qBAAA,GAAG,CAAC,CAAC,IAAwB,KAAI;oBAChC,OAAO,IAAI,CAAC,EAAE;AAChB,gBAAA,CAAC,CAAC;AACN,YAAA,CAAC,CAAC;YAEJ,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,0BAA0B,EAAE;AACvE,gBAAA,SAAS,EAAE;AACT,oBAAA;AACE,wBAAA,OAAO,EAAE,wBAAwB;AACjC,wBAAA,QAAQ,EAAE;4BACR,OAAO;4BACP,iBAAiB;AAClB,yBAAA;AACF,qBAAA;AACF,iBAAA;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;AACtB,aAAA,CAAC;YAEF,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,OAAe,KAAI;AACrD,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;AAC7B,gBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;AAC5B,YAAA,CAAC,CAAC;YAEF,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAyB,KAAI;gBAC3D,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE;AAC3C,oBAAA,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI;oBAClC,IAAI,mBAAmB,GAAyB,EAAE;oBAClD,IAAI,CAAC,QAAQ,CAAC;AACX,yBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACZ,yBAAA,SAAS,CAAC,CAAC,KAAqB,KAAI;AACnC,wBAAA,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;AACxD,4BAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM;AAC5D,wBAAA,CAAC,CAAC;AACJ,oBAAA,CAAC,CAAC;AACJ,oBAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAC/B,IAAI,sCAAsC,CACxC,mBAAmB,EACnB,IAAI,CACL,CACF;gBACH;AACF,YAAA,CAAC,CAAC;QACJ;IACF;+GA7IW,oCAAoC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gCAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oCAAoC,+TC5CjD,sZAaA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oCAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FD+Ba,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBALhD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iCAAiC,cAE/B,KAAK,EAAA,QAAA,EAAA,sZAAA,EAAA;;0BAkCd;;sBA3BF;;sBAOA;;sBAMA;;sBAGA,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,eAAe,EAAE;AAC1B,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA;;;AEpDH;;AAEG;MAgBU,iCAAiC,CAAA;+GAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iCAAiC,iBAb1C,oCAAoC;AACpC,YAAA,oCAAoC,aAGpC,YAAY;YACZ,cAAc;YACd,sCAAsC;YACtC,6BAA6B;YAC7B,oBAAoB;YACpB,aAAa,CAAA,EAAA,OAAA,EAAA,CAEL,oCAAoC,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAE5D,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iCAAiC,YAT1C,YAAY;YACZ,cAAc;YACd,sCAAsC;YACtC,6BAA6B;YAC7B,oBAAoB;AACpB,YAAA,aAAa,EAEiC,uBAAuB,CAAA,EAAA,CAAA,CAAA;;4FAE5D,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAf7C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oCAAoC;wBACpC,oCAAoC;AACrC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,cAAc;wBACd,sCAAsC;wBACtC,6BAA6B;wBAC7B,oBAAoB;wBACpB,aAAa;AACd,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,oCAAoC,EAAE,uBAAuB,CAAC;AACzE,iBAAA;;;AC9BD;;;AAGG;MACU,6BAA6B,CAAA;IACxC,WAAA,CACS,OAA6B,EAC7B,OAAA,GAAU,KAAK,EAAA;QADf,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,OAAO,GAAP,OAAO;IACb;AACJ;;ACRD;;;AAGG;MACU,cAAc,CAAA;AAA3B,IAAA,WAAA,GAAA;AACS,QAAA,IAAA,CAAA,OAAO,GACZ,IAAI,SAAS,EAAsB;AAC9B,QAAA,IAAA,CAAA,gBAAgB,GACrB,IAAI,SAAS,EAAsB;IACvC;AAAC;;ACPD;;;AAGG;AAEG,MAAO,mBAAoB,SAAQ,eAAgC,CAAA;+GAA5D,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAnB,mBAAmB,EAAA,CAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B;;AAGD;;AAEG;AACG,MAAO,qBAAyB,SAAQ,iBAG7C,CAAA;AAAG;;ACXJ;;;AAGG;AACG,MAAO,+BAAgC,SAAQ,qBAEpD,CAAA;;AAEC,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QAEP,IAAI,CAAC,QAAQ,CAAC,6BAA6B,EAAE,IAAI,CAAC,IAAI,CAAC;IACzD;IAEQ,IAAI,CACV,KAAoC,EACpC,MAAqC,EAAA;QAErC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CACnC,CAAC,CAAC,KAAK,IAAI,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC7C;AAED,QAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AAClB,YAAA,OAAO,IAAI,SAAS,CAAqB,CAAC,GAAG,UAAU,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;QACvE;AAEA,QAAA,OAAO,IAAI,SAAS,CAClB,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,UAAU,CAAC,EAC/B,IAAI,IAAI,EAAE,CACX;IACH;AACD;;AC/BD;;;AAGG;AACG,MAAO,wCAAyC,SAAQ,qBAE7D,CAAA;;AAEC,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QAEP,IAAI,CAAC,QAAQ,CAAC,sCAAsC,EAAE,IAAI,CAAC,IAAI,CAAC;IAClE;IAEQ,IAAI,CACV,KAAoC,EACpC,MAA8C,EAAA;QAE9C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CACnC,CAAC,CAAC,KAAK,IAAI,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC7C;AAED,QAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AAClB,YAAA,OAAO,IAAI,SAAS,CAAqB,CAAC,GAAG,UAAU,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;QACvE;AAEA,QAAA,OAAO,IAAI,SAAS,CAClB,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,UAAU,CAAC,EAC/B,IAAI,IAAI,EAAE,CACX;IACH;AACD;;AC9BD;;;AAGG;AAEG,MAAO,SAAU,SAAQ,SAAyB,CAAA;;IAEtD,WAAA,CAAY,YAA4B,EAAE,UAA+B,EAAA;AACvE,QAAA,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC;AAE/B,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,+BAA+B;AACrD,aAAA,QAAQ,CAAC,kBAAkB,EAAE,wCAAwC;AACrE,aAAA,KAAK,EAAE;IACZ;+GARW,SAAS,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,mBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAT,SAAS,EAAA,CAAA,CAAA;;4FAAT,SAAS,EAAA,UAAA,EAAA,CAAA;kBADrB;;;ACZD;;;AAGG;IACS;AAAZ,CAAA,UAAY,0BAA0B,EAAA;AACpC;;AAEG;AACH,IAAA,0BAAA,CAAA,0BAAA,CAAA,iBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,iBAAmB;AAEnB;;AAEG;AACH,IAAA,0BAAA,CAAA,0BAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,gBAAkB;AACpB,CAAC,EAVW,0BAA0B,KAA1B,0BAA0B,GAAA,EAAA,CAAA,CAAA;;ACwDtC;;;;;;AAMG;AAiBG,MAAO,wBACX,SAAQ,iBAAiB,CAAA;AAGzB;;;AAGG;IACH,IACW,IAAI,CAAC,KAAa,EAAA;AAC3B,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;IACvB;AA0CA;;;AAGG;IACH,IACW,aAAa,CAAC,MAAuC,EAAA;;AAE9D,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE;QACnC;AAEA,QAAA,IAAI,CAAC,cAAc,GAAG,MAAM;QAE5B,IAAI,CAAC,wBAAwB,EAAE;IACjC;AAEA,IAAA,IAAW,aAAa,GAAA;QACtB,OAAO,IAAI,CAAC,cAAc;IAC5B;AAuDA,IAAA,IAAW,UAAU,GAAA;;AAEnB,QAAA,OAAO,OAAO,IAAI,CAAC,MAAM,KAAK;AAC5B,cAAEC,EAAY,CAAC,IAAI,CAAC,MAAM;AAC1B,cAAE,IAAI,CAAC,MAAM;IACjB;AAEA,IAAA,IAAW,SAAS,GAAA;;AAElB,QAAA,OAAO,OAAO,IAAI,CAAC,KAAK,KAAK;AAC3B,cAAEA,EAAY,CAAC,IAAI,CAAC,KAAK;AACzB,cAAE,IAAI,CAAC,KAAK;IAChB;IAsCA,WAAA,CACE,KAAgB,EACR,UAA+B,EAChC,SAAoB,EACpB,cAAmC,EAC1C,MAAqB,EAAA;AAErB,QAAA,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC;QALjB,IAAA,CAAA,UAAU,GAAV,UAAU;QACX,IAAA,CAAA,SAAS,GAAT,SAAS;QACT,IAAA,CAAA,cAAc,GAAd,cAAc;AA3JvB;;;;;AAKG;QAEI,IAAA,CAAA,GAAG,GAAG,OAAO;AAcpB;;;AAGG;QAEI,IAAA,CAAA,mBAAmB,GAAG,IAAI;AA+BjC;;;;;;AAMG;QAEI,IAAA,CAAA,iBAAiB,GAAG,KAAK;AAWhC;;AAEG;AAEI,QAAA,IAAA,CAAA,eAAe,GACpB,IAAI,YAAY,EAAsC;AAExD;;AAEG;AAEI,QAAA,IAAA,CAAA,gBAAgB,GACrB,IAAI,YAAY,EAAuC;AAEzD;;;;AAIG;AAEI,QAAA,IAAA,CAAA,uBAAuB,GAAG,IAAI,YAAY,EAAY;AAyB7D;;;AAGG;AACI,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,OAAO,EAAkB;QAQjD,IAAA,CAAA,sBAAsB,GAAa,EAAE;AAcpC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ;AAEnC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAA0B;AAW5D,QAAA,MAAM,CAAC,UAAU,CAAC,0BAA0B,EAAE;AAC5C,YAAA,uBAAuB,EAAE,CAAC;AAC1B,YAAA,WAAW,EACT,kEAAkE;AACpE,YAAA,yBAAyB,EAAE,8BAA8B;AAC1D,SAAA,CAAC;IACJ;IAEO,kBAAkB,GAAA;;AAEvB,QAAA,IAAI,CAAC;AACF,aAAA,IAAI,CACHL,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EACrC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAE5C,aAAA,SAAS,CAAC,CAAC,KAAwB,KAAI;YACtC,MAAM,WAAW,GAAa,EAAE;YAEhC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,KAAI;gBAC7C,IAAI,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;AACxC,oBAAA,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB;AACF,YAAA,CAAC,CAAC;AAEF,YAAA,IAAI,CAAC,sBAAsB,GAAG,WAAW;AAC3C,QAAA,CAAC,CAAC;;QAGJ,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE;AACtC,YAAA,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D;QACH;QAEA,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,eAAe,KAAI;YACjE,OAAO,IAAI,kBAAkB,CAAC,eAAe,CAAC,QAAQ,EAAE,eAAe,CAAC;AAC1E,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC3C,IAAI,CAAC,KAAK,GAAGK,EAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACvC;AAEA,QAAA,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC7C,IAAI,CAAC,MAAM,GAAGA,EAAY,CAAC,IAAI,CAAC,MAAM,CAAC;QACzC;;AAGA,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAChCL,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EACrC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,EACtC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;AAED,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,EAAE;AAE9C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE;AAEhC,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC5BA,GAAa,CAAC,CAAC,CAAC,KAAI;AAClB,YAAA,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO;AACxB,QAAA,CAAC,CAAC,EACF,oBAAoB,EAAE,EACtB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;AAED,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC9BA,GAAa,CAAC,CAAC,CAAC,KAAI;;;YAGlB,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE;gBACnC,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YACjC;;;AAGA,YAAA,OAAO,SAAS;AAClB,QAAA,CAAC,CAAC,EACF,oBAAoB,EAAE,EACtB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;AAED,QAAA,IAAI,CAAC;AACF,aAAA,IAAI,CACHA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EACrC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;AAEvC,aAAA,SAAS,CAAC,CAAC,OAAO,KAAI;;AAErB,YAAA,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,aAAuB,KAAI;AACvD,oBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,sCAAsC,CACxC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI;;;wBAGnB,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK;wBAC1B,OAAO,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AACzC,oBAAA,CAAC,CAAC,EACF,IAAI,CACL,CACF;AACH,gBAAA,CAAC,CAAC;YACJ;AAAO,iBAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;;gBAEhC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,gBAA0B,KAAI;AAC7D,oBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,sCAAsC,CACxC,OAAO,CAAC,MAAM,CACZ,CAAC,CAAC,KAAK,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CACxD,EACD,IAAI,CACL,CACF;AACH,gBAAA,CAAC,CAAC;YACJ;iBAAO;gBACL,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,sCAAsC,CACxC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAChC,IAAI,CACL,CACF;YACH;AACF,QAAA,CAAC,CAAC;AAEJ,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CACtCA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EACzC,oBAAoB,EAAE,EACtB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;AAED,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,CACtD;QAED,IAAI,CAAC,kBAAkB,EAAE;AAEzB,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC;QACrD;QAEA,IAAI,CAAC,wBAAwB,EAAE;IACjC;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;IAC/B;AAEA;;;AAGG;AACI,IAAA,4BAA4B,CACjC,KAAqC,EAAA;AAErC,QAAA,IACE,KAAK,CAAC,MAAM,KAAK,yBAAyB,CAAC,cAAc;AACzD,YAAA,KAAK,CAAC,MAAM,KAAK,yBAAyB,CAAC,QAAQ,EACnD;AACA,YAAA,IAAI,CAAC;AACF,iBAAA,IAAI,CACHA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EACnC,IAAI,CAAC,CAAC,CAAC;AAER,iBAAA,SAAS,CAAC,CAAC,KAAsB,KAAI;gBACpC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CACvC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,CAAC,sBAAsB,CAC5B;gBACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;;gBAGjE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;AACxD,gBAAA,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC;gBACnD;;gBAGA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;AACtD,gBAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC1B,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC;gBAChD;AACF,YAAA,CAAC,CAAC;QACN;IACF;AAEO,IAAA,gBAAgB,CAAC,iBAA2B,EAAA;AACjD,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,KAAI;YAC5D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE;AACpD,gBAAA,IAAI,CAAC;AACF,qBAAA,IAAI,CACHA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EACrC,IAAI,CAAC,CAAC,CAAC;AAER,qBAAA,SAAS,CAAC,CAAC,OAAO,KAAI;AACrB,oBAAA,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAC5C,CAAC,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAC1D;AACD,oBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,sCAAsC,CACxC,gBAAgB,EAChB,IAAI,CACL,CACF;AACH,gBAAA,CAAC,CAAC;YACN;AACF,QAAA,CAAC,CAAC;IACJ;AAEO,IAAA,eAAe,CAAC,IAAwC,EAAA;AAC7D,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;IACjC;AAEO,IAAA,gBAAgB,CAAC,IAAyC,EAAA;AAC/D,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;IAClC;AAEO,IAAA,gBAAgB,CAAC,SAAqC,EAAA;QAC3D,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,CAAC;IACpD;IAEgB,YAAY,GAAA;AAC1B;;;;AAIE;AACF,QAAA,IAAI,CAAC;AACF,aAAA,IAAI,CACH,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,IAAI,CAAC,CAAC,aAA6B,EAAE,QAAwB,KAAI;AAC/D,YAAA,IACE,aAAa,CAAC,gBAAgB,CAAC,UAAU;AACzC,gBAAA,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EACpC;AACA,gBAAA,OAAO,aAAa;YACtB;iBAAO;AACL,gBAAA,OAAO,QAAQ;YACjB;QACF,CAAC,CAAC,EACFA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAC9C,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;AAEvC,aAAA,SAAS,CAAC,CAAC,gBAAgB,KAAI;AAC9B,YAAA,MAAM,YAAY,GAChB,IAAI,CAAC,cAAc,KAAK;AACtB,kBAAE,CAAC,IAAI,CAAC,cAAc;AACtB,kBAAE;AACG,qBAAA,GAAG,CACF,CAAC,MAAM,KACL,CAAC,IAAS,EAAE,UAAkB,KAC5B,MAAM,CAAC,cAAc,CACnB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAC3B,UAAU,CACX;qBAEN,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;AAEvC,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AACvC,gBAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAC9B,IAAI,eAAe,CAAC;AAClB,oBAAA,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU;AAC/B,oBAAA,SAAS,EAAE,YAAY;AACvB,oBAAA,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AACrD,iBAAA,CAAC,CACH;AACH,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACN;IAEQ,wBAAwB,GAAA;;AAE9B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,OAA+B,KAAI;gBAC/D,IAAI,OAAO,CAAC,IAAI,KAAK,0BAA0B,CAAC,cAAc,EAAE;AAC9D,oBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;wBAC1B,IAAI,EAAE,kBAAkB,CAAC,cAAc;AACvC,wBAAA,IAAI,EAAE;AACJ,4BAAA,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc;AAC5C,yBAAA;AACF,qBAAA,CAAC;gBACJ;qBAAO,IACL,OAAO,CAAC,IAAI,KAAK,0BAA0B,CAAC,eAAe,EAC3D;AACA,oBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;wBAC1B,IAAI,EAAE,kBAAkB,CAAC,eAAe;AACxC,wBAAA,IAAI,EAAE;AACJ,4BAAA,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe;AAC9C,yBAAA;AACF,qBAAA,CAAC;gBACJ;AACF,YAAA,CAAC,CAAC;QACJ;IACF;IAEQ,kBAAkB,GAAA;;QAExB,IAAI,CAAC,gBAAgB,CAAC;AACnB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;AAClC,aAAA,SAAS,CAAC,CAAC,gBAAgB,KAAI;YAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;gBACxD,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;AACxD,YAAA,CAAC,CAAC;AACF,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,CACtD;AACH,QAAA,CAAC,CAAC;;QAGJ,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACrC,YAAA,IAAI,CAAC;AACF,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;AAClC,iBAAA,SAAS,CAAC,CAAC,MAAuC,KAAI;AACrD,gBAAA,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,MAAM,CAAC;AAChD,YAAA,CAAC,CAAC;AACJ,YAAA,IAAI,CAAC;AACF,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;AAClC,iBAAA,SAAS,CAAC,CAAC,MAA2C,KAAI;AACzD,gBAAA,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,MAAM,CAAC;AACpD,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACJ;IAEQ,YAAY,GAAA;AAClB;;;;AAIE;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpBA,GAAa,CAAC,CAAC,CAAC,KAAI;YAClB,OAAO,CAAC,CAAC,KAAK;QAChB,CAAC,CAAC,EACF,IAAI,CACF,CACE,aAAuC,EACvC,QAAkC,KAChC;YACF,IAAI,aAAa,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE;AAClD,gBAAA,OAAO,aAAa;YACtB;iBAAO;AACL,gBAAA,OAAO,QAAQ;YACjB;AACF,QAAA,CAAC,CACF,EACDA,GAAa,CAAC,CAAC,MAAgC,KAAI;YACjD,OAAO,MAAM,CAAC,KAAK;AACrB,QAAA,CAAC,CAAC,EACF,oBAAoB,EAAE,CACvB;IACH;IAEQ,cAAc,GAAA;AACpB;;;;AAIE;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CACxBA,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,EACxC,IAAI,CACF,CACE,aAA4C,EAC5C,QAAuC,KACrC;YACF,IAAI,aAAa,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE;AAClD,gBAAA,OAAO,aAAa;YACtB;iBAAO;AACL,gBAAA,OAAO,QAAQ;YACjB;AACF,QAAA,CAAC,CACF,EACDA,GAAa,CAAC,CAAC,MAAqC,KAAI;;;YAGtD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAA0B,KAAI;AACrD,gBAAA,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK;AAClC,YAAA,CAAC,CAAC;QACJ,CAAC,CAAC,EACF,oBAAoB,CAAC,CAAC,aAAuB,EAAE,QAAkB,KAAI;YACnE,OAAO,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,QAAQ,CAAC;QAC3D,CAAC,CAAC,CACH;IACH;IAEQ,oBAAoB,CAC1B,aAAuB,EACvB,QAAkB,EAAA;QAElB,IAAI,aAAa,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE;AAC5C,YAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC3C,YAAA,OAAO,KAAK;QACd;AAEA,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;;YAE7C,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE;AACpC,gBAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC3C,gBAAA,OAAO,KAAK;YACd;QACF;AACA,QAAA,OAAO,IAAI;IACb;IAEQ,gBAAgB,CACtB,IAAuB,EACvB,IAAuB,EAAA;AAEvB,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;AACvD,YAAA,OAAO,KAAK;QACd;QAEA,MAAM,IAAI,GAAa,EAAE;QACzB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;AACxC,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAChB,QAAA,CAAC,CAAC;AAEF,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;YACzC,IAAI,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACzC,gBAAA,OAAO,KAAK;YACd;QACF;AAEA,QAAA,OAAO,IAAI;IACb;IAEQ,SAAS,CAAC,IAAW,EAAE,IAAW,EAAA;AACxC,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChD;IAEQ,iBAAiB,CAAC,IAAW,EAAE,IAAW,EAAA;AAChD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3D;IAEQ,WAAW,CAAC,MAAa,EAAE,MAAa,EAAA;AAC9C,QAAA,QACE,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC;IAE3D;+GAlnBW,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAAM,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAAL,IAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,GAAA,EAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,CAAA,QAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,EAAA,SAAA,EAZxB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB,CAAC;AACxD,aAAA;YACD,SAAS;YACT,mBAAmB;YACnB,cAAc;AACf,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,SAAA,EA6KgB,sBAAsB,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EA9C5B,gBAAgB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9M7B,8gCA4BA,EAAA,MAAA,EAAA,CAAA,6DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,EAAA,4BAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,yBAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FDuDa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAhBpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EAAA,SAAA,EAGnB;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B,CAAC;AACxD,yBAAA;wBACD,SAAS;wBACT,mBAAmB;wBACnB,cAAc;AACf,qBAAA,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,KAAK,EAAA,QAAA,EAAA,8gCAAA,EAAA,MAAA,EAAA,CAAA,6DAAA,CAAA,EAAA;;sBAUhB;;sBAQA;;sBAMA;;sBASA;;sBAMA;;sBAMA;;sBAOA;;sBAOA;;sBAsBA;;sBAUA;;sBASA;;sBAMA;;sBAOA;;sBASA;;sBAGA,SAAS;uBAAC,gBAAgB;;sBA2C1B,KAAK;uBAAC,QAAQ;;sBAGd,eAAe;uBAAC,sBAAsB;;;AElPzC;;AAEG;MAeU,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAArB,qBAAqB,EAAA,YAAA,EAAA,CAbjB,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAErC,YAAY;YACZ,aAAa;YACb,aAAa;AACb,YAAA,sCAAsC,aAGtC,wBAAwB;YACxB,iCAAiC;YACjC,aAAa,CAAA,EAAA,CAAA,CAAA;AAGJ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAX9B,YAAY;YACZ,aAAa;YACb,aAAa;AACb,YAAA,sCAAsC,EAItC,iCAAiC;YACjC,aAAa,CAAA,EAAA,CAAA,CAAA;;4FAGJ,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAdjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,wBAAwB,CAAC;AACxC,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,aAAa;wBACb,aAAa;wBACb,sCAAsC;AACvC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,wBAAwB;wBACxB,iCAAiC;wBACjC,aAAa;AACd,qBAAA;AACF,iBAAA;;;AC1BD;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyux/list-builder-view-grids",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.12.0",
|
|
4
4
|
"author": "Blackbaud, Inc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"blackbaud",
|
|
@@ -19,16 +19,16 @@
|
|
|
19
19
|
"@angular/common": "^20.3.15",
|
|
20
20
|
"@angular/core": "^20.3.15",
|
|
21
21
|
"@angular/platform-browser": "^20.3.15",
|
|
22
|
-
"@skyux-sdk/testing": "13.
|
|
23
|
-
"@skyux/core": "13.
|
|
24
|
-
"@skyux/grids": "13.
|
|
25
|
-
"@skyux/i18n": "13.
|
|
26
|
-
"@skyux/icon": "13.
|
|
27
|
-
"@skyux/indicators": "13.
|
|
28
|
-
"@skyux/list-builder": "13.
|
|
29
|
-
"@skyux/list-builder-common": "13.
|
|
30
|
-
"@skyux/list-builder-view-checklist": "13.
|
|
31
|
-
"@skyux/modals": "13.
|
|
22
|
+
"@skyux-sdk/testing": "13.12.0",
|
|
23
|
+
"@skyux/core": "13.12.0",
|
|
24
|
+
"@skyux/grids": "13.12.0",
|
|
25
|
+
"@skyux/i18n": "13.12.0",
|
|
26
|
+
"@skyux/icon": "13.12.0",
|
|
27
|
+
"@skyux/indicators": "13.12.0",
|
|
28
|
+
"@skyux/list-builder": "13.12.0",
|
|
29
|
+
"@skyux/list-builder-common": "13.12.0",
|
|
30
|
+
"@skyux/list-builder-view-checklist": "13.12.0",
|
|
31
|
+
"@skyux/modals": "13.12.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"tslib": "^2.8.1"
|