UNPKG

@alfresco/adf-content-services

Version:
165 lines 15 kB
/*! * @license * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { Component, ViewChild } from '@angular/core'; import { SearchComponent } from '../search/components/search.component'; import { ResultSetPaging, ResultSetRowEntry, ContentInfo, UserInfo, ResultNode } from '@alfresco/js-api'; import { SearchModule } from '../search'; import { CommonModule } from '@angular/common'; import * as i0 from "@angular/core"; import * as i1 from "../search/components/search.component"; import * as i2 from "@angular/common"; const entryItem = new ResultSetRowEntry({ entry: new ResultNode({ id: '123', name: 'MyDoc', isFile: true, content: new ContentInfo({ mimeType: 'text/plain' }), createdByUser: new UserInfo({ displayName: 'John Doe' }), modifiedByUser: new UserInfo({ displayName: 'John Doe' }) }) }); const entryDifferentItem = new ResultSetRowEntry({ entry: new ResultNode({ id: '999', name: 'TEST_DOC', isFile: true, content: new ContentInfo({ mimeType: 'text/plain' }), createdByUser: new UserInfo({ displayName: 'John TEST' }), modifiedByUser: new UserInfo({ displayName: 'John TEST' }) }) }); export const result = new ResultSetPaging({ list: { entries: [entryItem] } }); export const differentResult = new ResultSetPaging({ list: { entries: [entryDifferentItem] } }); export const results = { list: { entries: [entryItem, entryItem, entryItem] } }; export const noResult = { list: { entries: [] } }; export class SimpleSearchTestComponent { constructor() { this.message = ''; this.searchedWord = ''; this.maxResults = 5; } showSearchResult(event) { this.message = event; } elementClicked() { this.message = 'element clicked'; } setSearchWordTo(str) { this.searchedWord = str; } setSearchNodeTo(searchNode) { this.searchNode = searchNode; } changeMaxResultTo(newMax) { this.maxResults = newMax; } forceHidePanel() { this.search.hidePanel(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SimpleSearchTestComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: SimpleSearchTestComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, static: true }], ngImport: i0, template: ` <adf-search [searchTerm]="searchedWord" [maxResults]="maxResults" (error)="showSearchResult('ERROR')" (success)="showSearchResult('success')" #search > <ng-template let-data> <ul id="autocomplete-search-result-list"> <li *ngFor="let item of data?.list?.entries; let idx = index" (click)="elementClicked()" tabindex="0" role="button" (keyup.enter)="elementClicked()" > <div id="result_option_{{ idx }}"> <span>{{ item?.entry.name }}</span> </div> </li> </ul> </ng-template> </adf-search> <span id="component-result-message">{{ message }}</span> `, isInline: true, dependencies: [{ kind: "ngmodule", type: SearchModule }, { kind: "component", type: i1.SearchComponent, selector: "adf-search", inputs: ["displayWith", "maxResults", "skipResults", "searchTerm", "class"], outputs: ["resultLoaded", "error"], exportAs: ["searchAutocomplete"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SimpleSearchTestComponent, decorators: [{ type: Component, args: [{ template: ` <adf-search [searchTerm]="searchedWord" [maxResults]="maxResults" (error)="showSearchResult('ERROR')" (success)="showSearchResult('success')" #search > <ng-template let-data> <ul id="autocomplete-search-result-list"> <li *ngFor="let item of data?.list?.entries; let idx = index" (click)="elementClicked()" tabindex="0" role="button" (keyup.enter)="elementClicked()" > <div id="result_option_{{ idx }}"> <span>{{ item?.entry.name }}</span> </div> </li> </ul> </ng-template> </adf-search> <span id="component-result-message">{{ message }}</span> `, standalone: true, imports: [SearchModule, CommonModule] }] }], ctorParameters: () => [], propDecorators: { search: [{ type: ViewChild, args: ['search', { static: true }] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5tb2NrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi9tb2NrL3NlYXJjaC5jb21wb25lbnQubW9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDeEUsT0FBTyxFQUFpQixlQUFlLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUUvQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGlCQUFpQixDQUFDO0lBQ3BDLEtBQUssRUFBRSxJQUFJLFVBQVUsQ0FBQztRQUNsQixFQUFFLEVBQUUsS0FBSztRQUNULElBQUksRUFBRSxPQUFPO1FBQ2IsTUFBTSxFQUFFLElBQUk7UUFDWixPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7WUFDckIsUUFBUSxFQUFFLFlBQVk7U0FDekIsQ0FBQztRQUNGLGFBQWEsRUFBRSxJQUFJLFFBQVEsQ0FBQztZQUN4QixXQUFXLEVBQUUsVUFBVTtTQUMxQixDQUFDO1FBQ0YsY0FBYyxFQUFFLElBQUksUUFBUSxDQUFDO1lBQ3pCLFdBQVcsRUFBRSxVQUFVO1NBQzFCLENBQUM7S0FDTCxDQUFDO0NBQ0wsQ0FBQyxDQUFDO0FBRUgsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGlCQUFpQixDQUFDO0lBQzdDLEtBQUssRUFBRSxJQUFJLFVBQVUsQ0FBQztRQUNsQixFQUFFLEVBQUUsS0FBSztRQUNULElBQUksRUFBRSxVQUFVO1FBQ2hCLE1BQU0sRUFBRSxJQUFJO1FBQ1osT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO1lBQ3JCLFFBQVEsRUFBRSxZQUFZO1NBQ3pCLENBQUM7UUFDRixhQUFhLEVBQUUsSUFBSSxRQUFRLENBQUM7WUFDeEIsV0FBVyxFQUFFLFdBQVc7U0FDM0IsQ0FBQztRQUNGLGNBQWMsRUFBRSxJQUFJLFFBQVEsQ0FBQztZQUN6QixXQUFXLEVBQUUsV0FBVztTQUMzQixDQUFDO0tBQ0wsQ0FBQztDQUNMLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQztJQUN0QyxJQUFJLEVBQUU7UUFDRixPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUM7S0FDdkI7Q0FDSixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUM7SUFDL0MsSUFBSSxFQUFFO1FBQ0YsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7S0FDaEM7Q0FDSixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDbkIsSUFBSSxFQUFFO1FBQ0YsT0FBTyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7S0FDN0M7Q0FDSixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3BCLElBQUksRUFBRTtRQUNGLE9BQU8sRUFBRSxFQUFFO0tBQ2Q7Q0FDSixDQUFDO0FBZ0NGLE1BQU0sT0FBTyx5QkFBeUI7SUFTbEM7UUFMQSxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBQ3JCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGVBQVUsR0FBVyxDQUFDLENBQUM7SUFHUixDQUFDO0lBRWhCLGdCQUFnQixDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUVELGNBQWM7UUFDVixJQUFJLENBQUMsT0FBTyxHQUFHLGlCQUFpQixDQUFDO0lBQ3JDLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVztRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQztJQUM1QixDQUFDO0lBRUQsZUFBZSxDQUFDLFVBQXlCO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFjO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM1QixDQUFDOzhHQWpDUSx5QkFBeUI7a0dBQXpCLHlCQUF5Qix3TEE3QnhCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBeUJULDJEQUVTLFlBQVksMFBBQUUsWUFBWTs7MkZBRTNCLHlCQUF5QjtrQkE5QnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBeUJUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDO2lCQUN4Qzt3REFHRyxNQUFNO3NCQURMLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4uL3NlYXJjaC9jb21wb25lbnRzL3NlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoUmVxdWVzdCwgUmVzdWx0U2V0UGFnaW5nLCBSZXN1bHRTZXRSb3dFbnRyeSwgQ29udGVudEluZm8sIFVzZXJJbmZvLCBSZXN1bHROb2RlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBTZWFyY2hNb2R1bGUgfSBmcm9tICcuLi9zZWFyY2gnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuY29uc3QgZW50cnlJdGVtID0gbmV3IFJlc3VsdFNldFJvd0VudHJ5KHtcbiAgICBlbnRyeTogbmV3IFJlc3VsdE5vZGUoe1xuICAgICAgICBpZDogJzEyMycsXG4gICAgICAgIG5hbWU6ICdNeURvYycsXG4gICAgICAgIGlzRmlsZTogdHJ1ZSxcbiAgICAgICAgY29udGVudDogbmV3IENvbnRlbnRJbmZvKHtcbiAgICAgICAgICAgIG1pbWVUeXBlOiAndGV4dC9wbGFpbidcbiAgICAgICAgfSksXG4gICAgICAgIGNyZWF0ZWRCeVVzZXI6IG5ldyBVc2VySW5mbyh7XG4gICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0pvaG4gRG9lJ1xuICAgICAgICB9KSxcbiAgICAgICAgbW9kaWZpZWRCeVVzZXI6IG5ldyBVc2VySW5mbyh7XG4gICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0pvaG4gRG9lJ1xuICAgICAgICB9KVxuICAgIH0pXG59KTtcblxuY29uc3QgZW50cnlEaWZmZXJlbnRJdGVtID0gbmV3IFJlc3VsdFNldFJvd0VudHJ5KHtcbiAgICBlbnRyeTogbmV3IFJlc3VsdE5vZGUoe1xuICAgICAgICBpZDogJzk5OScsXG4gICAgICAgIG5hbWU6ICdURVNUX0RPQycsXG4gICAgICAgIGlzRmlsZTogdHJ1ZSxcbiAgICAgICAgY29udGVudDogbmV3IENvbnRlbnRJbmZvKHtcbiAgICAgICAgICAgIG1pbWVUeXBlOiAndGV4dC9wbGFpbidcbiAgICAgICAgfSksXG4gICAgICAgIGNyZWF0ZWRCeVVzZXI6IG5ldyBVc2VySW5mbyh7XG4gICAgICAgICAgICBkaXNwbGF5TmFtZTogJ0pvaG4gVEVTVCdcbiAgICAgICAgfSksXG4gICAgICAgIG1vZGlmaWVkQnlVc2VyOiBuZXcgVXNlckluZm8oe1xuICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdKb2huIFRFU1QnXG4gICAgICAgIH0pXG4gICAgfSlcbn0pO1xuXG5leHBvcnQgY29uc3QgcmVzdWx0ID0gbmV3IFJlc3VsdFNldFBhZ2luZyh7XG4gICAgbGlzdDoge1xuICAgICAgICBlbnRyaWVzOiBbZW50cnlJdGVtXVxuICAgIH1cbn0pO1xuXG5leHBvcnQgY29uc3QgZGlmZmVyZW50UmVzdWx0ID0gbmV3IFJlc3VsdFNldFBhZ2luZyh7XG4gICAgbGlzdDoge1xuICAgICAgICBlbnRyaWVzOiBbZW50cnlEaWZmZXJlbnRJdGVtXVxuICAgIH1cbn0pO1xuXG5leHBvcnQgY29uc3QgcmVzdWx0cyA9IHtcbiAgICBsaXN0OiB7XG4gICAgICAgIGVudHJpZXM6IFtlbnRyeUl0ZW0sIGVudHJ5SXRlbSwgZW50cnlJdGVtXVxuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBub1Jlc3VsdCA9IHtcbiAgICBsaXN0OiB7XG4gICAgICAgIGVudHJpZXM6IFtdXG4gICAgfVxufTtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGFkZi1zZWFyY2hcbiAgICAgICAgICAgIFtzZWFyY2hUZXJtXT1cInNlYXJjaGVkV29yZFwiXG4gICAgICAgICAgICBbbWF4UmVzdWx0c109XCJtYXhSZXN1bHRzXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJzaG93U2VhcmNoUmVzdWx0KCdFUlJPUicpXCJcbiAgICAgICAgICAgIChzdWNjZXNzKT1cInNob3dTZWFyY2hSZXN1bHQoJ3N1Y2Nlc3MnKVwiXG4gICAgICAgICAgICAjc2VhcmNoXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtZGF0YT5cbiAgICAgICAgICAgICAgICA8dWwgaWQ9XCJhdXRvY29tcGxldGUtc2VhcmNoLXJlc3VsdC1saXN0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YT8ubGlzdD8uZW50cmllczsgbGV0IGlkeCA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJlbGVtZW50Q2xpY2tlZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJlbGVtZW50Q2xpY2tlZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInJlc3VsdF9vcHRpb25fe3sgaWR4IH19XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgaXRlbT8uZW50cnkubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2FkZi1zZWFyY2g+XG4gICAgICAgIDxzcGFuIGlkPVwiY29tcG9uZW50LXJlc3VsdC1tZXNzYWdlXCI+e3sgbWVzc2FnZSB9fTwvc3Bhbj5cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1NlYXJjaE1vZHVsZSwgQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hUZXN0Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKCdzZWFyY2gnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIHNlYXJjaDogU2VhcmNoQ29tcG9uZW50O1xuXG4gICAgbWVzc2FnZTogc3RyaW5nID0gJyc7XG4gICAgc2VhcmNoZWRXb3JkID0gJyc7XG4gICAgbWF4UmVzdWx0czogbnVtYmVyID0gNTtcbiAgICBzZWFyY2hOb2RlOiBTZWFyY2hSZXF1ZXN0O1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgc2hvd1NlYXJjaFJlc3VsdChldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMubWVzc2FnZSA9IGV2ZW50O1xuICAgIH1cblxuICAgIGVsZW1lbnRDbGlja2VkKCkge1xuICAgICAgICB0aGlzLm1lc3NhZ2UgPSAnZWxlbWVudCBjbGlja2VkJztcbiAgICB9XG5cbiAgICBzZXRTZWFyY2hXb3JkVG8oc3RyOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zZWFyY2hlZFdvcmQgPSBzdHI7XG4gICAgfVxuXG4gICAgc2V0U2VhcmNoTm9kZVRvKHNlYXJjaE5vZGU6IFNlYXJjaFJlcXVlc3QpIHtcbiAgICAgICAgdGhpcy5zZWFyY2hOb2RlID0gc2VhcmNoTm9kZTtcbiAgICB9XG5cbiAgICBjaGFuZ2VNYXhSZXN1bHRUbyhuZXdNYXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLm1heFJlc3VsdHMgPSBuZXdNYXg7XG4gICAgfVxuXG4gICAgZm9yY2VIaWRlUGFuZWwoKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoLmhpZGVQYW5lbCgpO1xuICAgIH1cbn1cbiJdfQ==