barsa-develop-components 1.0.411 → 1.0.413

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.
@@ -281,4 +281,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
281
281
  exports: [...components]
282
282
  }]
283
283
  }], ctorParameters: function () { return [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }]; } });
284
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUEyQixNQUFNLHNCQUFzQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1REFBdUQs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d0JBQ25CLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixXQUFXO3FCQUNkO29CQUNELFNBQVMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDO29CQUNwRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlLCBOT19FUlJPUlNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGdW5kYW1lbnRhbE5neENvcmVNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSwgQmFzZU1vZHVsZSwgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBCYXJzYVNhcFVpTW9kdWxlIH0gZnJvbSAnYmFyc2Etc2FwLXVpJztcbmltcG9ydCB7IEJhcnNhVGlsZXNNb2R1bGUgfSBmcm9tICdiYXJzYS10aWxlcyc7XG5pbXBvcnQgeyBCYXJzYUVjaGFydHNNb2R1bGUgfSBmcm9tICdiYXJzYS1lY2hhcnRzJztcblxuaW1wb3J0IHsgTG9naW5Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IExvZ2luU29jaWFsQ29ubmNldGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2xvZ2luLXNvY2lhbC1jb25uY2V0aW9ucy9sb2dpbi1zb2NpYWwtY29ubmNldGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IFVpUGVyc29uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1wZXJzb24vdWktcGVyc29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVBlcnNvblBpcGUgfSBmcm9tICcuL3VpLXBlcnNvbi91aS1wZXJzb24ucGlwZSc7XG5pbXBvcnQgeyBCYXJjb2RlUmVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJjb2RlLXJlYWRlci9iYXJjb2RlLXJlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyY29kZVJlYWRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vYmFyY29kZS1yZWFkZXItZGlhbG9nL2JhcmNvZGUtcmVhZGVyLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyY29kZVJlYWRlclZpZGVvQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJjb2RlLXJlYWRlci12aWRlby9iYXJjb2RlLXJlYWRlci12aWRlby5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlck1lZGlhQmFzZVNlcnZpY2UsIFdlYkJhcmNvZGVTZXJ2aWNlIH0gZnJvbSAnLi9iYXJjb2RlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2V0dGluZ0Zvcm1Db21wb25lbnQgfSBmcm9tICcuL3NldHRpbmctZm9ybS9zZXR0aW5nLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvUHJvY2Vzc0Zsb3dWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9taWNyby1wcm9jZXNzLWZsb3ctdmlldy9taWNyby1wcm9jZXNzLWZsb3ctdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlFbnVtU2VnbWVudGVkQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1lbnVtLXNlZ21lbnRlZC1idXR0b24vdWktZW51bS1zZWdtZW50ZWQtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJQcm9jZXNzVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGFiLXByb2Nlc3Mtdmlldy90YWItcHJvY2Vzcy12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRleHRGaWVsZFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC1zZWFyY2gvdWktdGV4dC1maWVsZC1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IEJhcmNvZGVGb3JtYXRQaXBlIH0gZnJvbSAnLi9iYXJjb2RlLWZvcm1hdC1waXBlJztcbmltcG9ydCB7IFNlcnZpY2VEZXNrSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENhcmRDb250ZW50SW1hZ2VBbmRUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1jb250ZW50LWltYWdlLWFuZC10aXRsZS9jYXJkLWNvbnRlbnQtaW1hZ2UtYW5kLXRpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkSGVhZGVyTG9nb1RpdGxlU3VidGl0bGVDb21wb25lbnQgfSBmcm9tICcuL2NhcmQtaGVhZGVyLWxvZ28tdGl0bGUtc3VidGl0bGUvY2FyZC1oZWFkZXItbG9nby10aXRsZS1zdWJ0aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUNvbnRlbnRRdWlja1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tY29udGVudC1xdWljay12aWV3L2Zvcm0tY29udGVudC1xdWljay12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXJ2aWNlRGVza1NlcnZjaWVEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL3NlcnZpY2UtZGVzay1zZXJ2Y2llLWRldGFpbC9zZXJ2aWNlLWRlc2stc2VydmNpZS1kZXRhaWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNlcnZpY2VEZXNrVmlld09mU2VydmljZXNDb21wb25lbnQgfSBmcm9tICcuL3NlcnZpY2UtZGVzay12aWV3LW9mLXNlcnZpY2VzL3NlcnZpY2UtZGVzay12aWV3LW9mLXNlcnZpY2VzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXJ2aWNlRGVza0NhcmRDb250ZW50TW9qYXZlemhheUFraHpTaG9kZUNvbXBvbmVudCB9IGZyb20gJy4vc2VydmljZS1kZXNrLWNhcmQtY29udGVudC1tb2phdmV6aGF5LWFraHotc2hvZGUvc2VydmljZS1kZXNrLWNhcmQtY29udGVudC1tb2phdmV6aGF5LWFraHotc2hvZGUuY29tcG9uZW50JztcbmltcG9ydCB7IENhcmRIZWFkZXJCaWdJbWFnZVRpdGxlQW5kU3VidGl0bGVDb21wb25lbnQgfSBmcm9tICcuL2NhcmQtaGVhZGVyLWJpZy1pbWFnZS10aXRsZS1hbmQtc3VidGl0bGUvY2FyZC1oZWFkZXItYmlnLWltYWdlLXRpdGxlLWFuZC1zdWJ0aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VydmljZURlc2tGb3JtTGF5b3V0Q29udGVudE1vamF2ZXpDb21wb25lbnQgfSBmcm9tICcuL3NlcnZpY2UtZGVzay1mb3JtLWxheW91dC1jb250ZW50LW1vamF2ZXovc2VydmljZS1kZXNrLWZvcm0tbGF5b3V0LWNvbnRlbnQtbW9qYXZlei5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVJdGVtU2hvd0ZpbGVDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29udGV4dC1tZW51LWl0ZW0tc2hvdy1maWxlLWNvbnRlbnQvdWx2LWNvbnRleHQtbWVudS1pdGVtLXNob3ctZmlsZS1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNlbmRWZXJpZmljYXRpb25Db2RlQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNlbmQtdmVyaWZpY2F0aW9uLWNvZGUvcmVzZW5kLXZlcmlmaWNhdGlvbi1jb2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGVja2JveEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gtYnV0dG9uL2NoZWNrYm94LWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0VGFiVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXRhYi12aWV3L3JlcG9ydC10YWItdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0TGluZUNoYXJ0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LWxpbmUtY2hhcnQtdmlldy9yZXBvcnQtbGluZS1jaGFydC12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkSGVhZGVyS3BpQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWhlYWRlci1rcGkvY2FyZC1oZWFkZXIta3BpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkQ29udGVudExpbmVDaGFydENvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1jb250ZW50LWxpbmUtY2hhcnQvY2FyZC1jb250ZW50LWxpbmUtY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1DaGFydENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tY2hhcnQtY29udGVudC9mb3JtLWNoYXJ0LWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlVmlld1ZlcnRpY2FsQ29sdW1uc0NvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtdmlldy12ZXJ0aWNhbC1jb2x1bW5zL3RhYmxlLXZpZXctdmVydGljYWwtY29sdW1ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUXVlcnlTdHJpbmdPYnNlcnZhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1zdHJpbmctb2JzZXJ2YWJsZS9xdWVyeS1zdHJpbmctb2JzZXJ2YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUXVlcnlTdHJpbmdGb3JtT2JzZXJ2YWJsZUNvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktc3RyaW5nLWZvcm0tb2JzZXJ2YWJsZS9xdWVyeS1zdHJpbmctZm9ybS1vYnNlcnZhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHNGJEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9nNGItZGV0YWlscy9nNGItZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHNGJFc3RlbGFtQ29tcG9uZW50IH0gZnJvbSAnLi9nNGItZXN0ZWxhbS9nNGItZXN0ZWxhbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGltZXJDb3VudERvd25Db21wb25lbnQgfSBmcm9tICcuL3RpbWVyLWNvdW50LWRvd24vdGltZXItY291bnQtZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQgfSBmcm9tICcuL21vLWluZm8tbWljcm8tcHJvY2Nlc3MtZmxvdy9tby1pbmZvLW1pY3JvLXByb2NjZXNzLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvUHJvY2Nlc3NGbG93Q29tcG9uZW50IH0gZnJvbSAnLi9taWNyby1wcm9jY2Vzcy1mbG93L21pY3JvLXByb2NjZXNzLWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEVudW1JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQgfSBmcm9tICcuL2VudW0taW5mby1taWNyby1wcm9jY2Vzcy1mbG93L2VudW0taW5mby1taWNyby1wcm9jY2Vzcy1mbG93LmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IERhdGFTb3VyY2VUb0Zsb3dJdGVtUGlwZSwgTW9MaXN0VG9GbG93SXRlbVBpcGUgfSBmcm9tICcuL3BpcGVzJztcbmltcG9ydCB7IFVpUGljdHVyZXNDYXJvdXNlbENvbXBvbmVudCB9IGZyb20gJy4vdWktcGljdHVyZXMtY2Fyb3VzZWwvdWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTnVtUmF0ZUNvbXBvbmVudCB9IGZyb20gJy4vdWktbnVtLXJhdGUvdWktbnVtLXJhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1lZGlhRmlsZVVwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9tZWRpYS1maWxlLXVwbG9hZGVyL21lZGlhLWZpbGUtdXBsb2FkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YmZvcm1JblJvd1JlcG9ydENvbXBvbmVudCB9IGZyb20gJy4vc3ViZm9ybS1pbi1yb3ctcmVwb3J0L3N1YmZvcm0taW4tcm93LXJlcG9ydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFzdGVyRGV0YWlsQ2FyZEZvcm1Db21wb25lbnQgfSBmcm9tICcuL21hc3Rlci1kZXRhaWwtY2FyZC1mb3JtL21hc3Rlci1kZXRhaWwtY2FyZC1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRCdXR0b25WaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtYnV0dG9uLXZpZXcvcmVwb3J0LWJ1dHRvbi12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYURvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZG9jdW1lbnRzL2JhcnNhLWRvY3VtZW50cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FEb2N1bWVudExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1kb2N1bWVudC1saXN0LWl0ZW0vYmFyc2EtZG9jdW1lbnQtbGlzdC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY2NlcHRSZWplY3RDb21wb25lbnQgfSBmcm9tICcuL2FjY2VwdC1yZWplY3QvYWNjZXB0LXJlamVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHZW9ncmFwaGljTG9jYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2dlb2dyYXBoaWMtbG9jYXRpb24vZ2VvZ3JhcGhpYy1sb2NhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FHZW9ncmFwaGljTG9jYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWdlb2dyYXBoaWMtbG9jYXRpb24vYmFyc2EtZ2VvZ3JhcGhpYy1sb2NhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9rZW5SZXBvcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90b2tlbi1yZXBvcnQtdmlldy90b2tlbi1yZXBvcnQtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uRm9ybVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLWZvcm0tdmlld2VyL2NvbHVtbi1mb3JtLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhdGZvcm1JbnB1dEdyb3VwTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGb3JtUmVwb3J0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1yZXBvcnQtdmlldy9mb3JtLXJlcG9ydC12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtUmVwb3J0Vmlld0l0ZW1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0tcmVwb3J0LXZpZXctaXRlbS9mb3JtLXJlcG9ydC12aWV3LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1DYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWNhcmQvZm9ybS1jYXJkLmNvbXBvbmVudCc7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgTG9naW5Gb3JtQ29tcG9uZW50LFxuICAgIExvZ2luU29jaWFsQ29ubmNldGlvbnNDb21wb25lbnQsXG4gICAgVWlQZXJzb25Db21wb25lbnQsXG4gICAgQmFyY29kZVJlYWRlckNvbXBvbmVudCxcbiAgICBCYXJjb2RlUmVhZGVyRGlhbG9nQ29tcG9uZW50LFxuICAgIEJhcmNvZGVSZWFkZXJWaWRlb0NvbXBvbmVudCxcbiAgICBTZXR0aW5nRm9ybUNvbXBvbmVudCxcbiAgICBNaWNyb1Byb2Nlc3NGbG93Vmlld0NvbXBvbmVudCxcbiAgICBVaUVudW1TZWdtZW50ZWRCdXR0b25Db21wb25lbnQsXG4gICAgVGFiUHJvY2Vzc1ZpZXdDb21wb25lbnQsXG4gICAgVWlUZXh0RmllbGRTZWFyY2hDb21wb25lbnQsXG4gICAgU2VydmljZURlc2tIZWFkZXJDb21wb25lbnQsXG4gICAgQ2FyZENvbnRlbnRJbWFnZUFuZFRpdGxlQ29tcG9uZW50LFxuICAgIENhcmRIZWFkZXJMb2dvVGl0bGVTdWJ0aXRsZUNvbXBvbmVudCxcbiAgICBGb3JtQ29udGVudFF1aWNrVmlld0NvbXBvbmVudCxcbiAgICBTZXJ2aWNlRGVza1NlcnZjaWVEZXRhaWxDb21wb25lbnQsXG4gICAgU2VydmljZURlc2tWaWV3T2ZTZXJ2aWNlc0NvbXBvbmVudCxcbiAgICBTZXJ2aWNlRGVza0NhcmRDb250ZW50TW9qYXZlemhheUFraHpTaG9kZUNvbXBvbmVudCxcbiAgICBDYXJkSGVhZGVyQmlnSW1hZ2VUaXRsZUFuZFN1YnRpdGxlQ29tcG9uZW50LFxuICAgIFNlcnZpY2VEZXNrRm9ybUxheW91dENvbnRlbnRNb2phdmV6Q29tcG9uZW50LFxuICAgIFVsdkNvbnRleHRNZW51SXRlbVNob3dGaWxlQ29udGVudENvbXBvbmVudCxcbiAgICBSZXNlbmRWZXJpZmljYXRpb25Db2RlQ29tcG9uZW50LFxuICAgIENoZWNrYm94QnV0dG9uQ29tcG9uZW50LFxuICAgIFJlcG9ydFRhYlZpZXdDb21wb25lbnQsXG4gICAgUmVwb3J0TGluZUNoYXJ0Vmlld0NvbXBvbmVudCxcbiAgICBDYXJkSGVhZGVyS3BpQ29tcG9uZW50LFxuICAgIENhcmRDb250ZW50TGluZUNoYXJ0Q29tcG9uZW50LFxuICAgIEZvcm1DaGFydENvbnRlbnRDb21wb25lbnQsXG4gICAgVGFibGVWaWV3VmVydGljYWxDb2x1bW5zQ29tcG9uZW50LFxuICAgIFF1ZXJ5U3RyaW5nT2JzZXJ2YWJsZUNvbXBvbmVudCxcbiAgICBRdWVyeVN0cmluZ0Zvcm1PYnNlcnZhYmxlQ29tcG9uZW50LFxuICAgIEc0YkRldGFpbHNDb21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIEc0YkVzdGVsYW1Db21wb25lbnQsXG4gICAgVGltZXJDb3VudERvd25Db21wb25lbnQsXG4gICAgTW9JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQsXG4gICAgTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQsXG4gICAgRW51bUluZm9NaWNyb1Byb2NjZXNzRmxvd0NvbXBvbmVudCxcbiAgICBVaVBpY3R1cmVzQ2Fyb3VzZWxDb21wb25lbnQsXG4gICAgVWlOdW1SYXRlQ29tcG9uZW50LFxuICAgIE1lZGlhRmlsZVVwbG9hZGVyQ29tcG9uZW50LFxuICAgIFN1YmZvcm1JblJvd1JlcG9ydENvbXBvbmVudCxcbiAgICBNYXN0ZXJEZXRhaWxDYXJkRm9ybUNvbXBvbmVudCxcbiAgICBSZXBvcnRCdXR0b25WaWV3Q29tcG9uZW50LFxuICAgIEJhcnNhRG9jdW1lbnRzQ29tcG9uZW50LFxuICAgIEJhcnNhRG9jdW1lbnRMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBBY2NlcHRSZWplY3RDb21wb25lbnQsXG4gICAgRm9vdGVyQ29tcG9uZW50LFxuICAgIEdlb2dyYXBoaWNMb2NhdGlvbkNvbXBvbmVudCxcbiAgICBCYXJzYUdlb2dyYXBoaWNMb2NhdGlvbkNvbXBvbmVudCxcbiAgICBUb2tlblJlcG9ydFZpZXdDb21wb25lbnQsXG4gICAgQ29sdW1uRm9ybVZpZXdlckNvbXBvbmVudCxcbiAgICBGb3JtUmVwb3J0Vmlld0NvbXBvbmVudCxcbiAgICBGb3JtUmVwb3J0Vmlld0l0ZW1Db21wb25lbnQsXG4gICAgRm9ybUNhcmRDb21wb25lbnRcbl07XG5jb25zdCBwaXBlcyA9IFtVaVBlcnNvblBpcGUsIEJhcmNvZGVGb3JtYXRQaXBlLCBNb0xpc3RUb0Zsb3dJdGVtUGlwZSwgRGF0YVNvdXJjZVRvRmxvd0l0ZW1QaXBlXTtcbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXNdLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBOT19FUlJPUlNfU0NIRU1BXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIEJhcnNhU2FwVWlNb2R1bGUsXG4gICAgICAgIEJhcnNhRWNoYXJ0c01vZHVsZSxcbiAgICAgICAgQmFyc2FUaWxlc01vZHVsZSxcbiAgICAgICAgRnVuZGFtZW50YWxOZ3hDb3JlTW9kdWxlLFxuICAgICAgICBQbGF0Zm9ybUlucHV0R3JvdXBNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtVc2VyTWVkaWFCYXNlU2VydmljZSwgV2ViQmFyY29kZVNlcnZpY2VdLFxuICAgIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYURldmVsb3BDb21wb25lbnRzTW9kdWxlIGV4dGVuZHMgQmFzZU1vZHVsZSB7XG4gICAgcHJvdGVjdGVkIGR5bmFtaWNDb21wb25lbnRzID0gWy4uLmNvbXBvbmVudHNdO1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBkY206IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLCBwcm90ZWN0ZWQgY2ZyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpIHtcbiAgICAgICAgc3VwZXIoZGNtLCBjZnIsICdCYXJzYURldmVsb3BDb21wb25lbnRzTW9kdWxlJyk7XG4gICAgfVxufVxuIl19
284
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUEyQixNQUFNLHNCQUFzQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM1RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUMxSCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQztBQUNuSSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM1RyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsa0RBQWtELEVBQUUsTUFBTSw2R0FBNkcsQ0FBQztBQUNqTCxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSwrRkFBK0YsQ0FBQztBQUM1SixPQUFPLEVBQUUsNENBQTRDLEVBQUUsTUFBTSwrRkFBK0YsQ0FBQztBQUM3SixPQUFPLEVBQUUsMENBQTBDLEVBQUUsTUFBTSw2RkFBNkYsQ0FBQztBQUN6SixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNoSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDdkgsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFFN0gsT0FBTyxFQUFFLHdCQUF3QixFQUFFLG9CQUFvQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQy9HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBRXBFLE1BQU0sVUFBVSxHQUFHO0lBQ2Ysa0JBQWtCO0lBQ2xCLCtCQUErQjtJQUMvQixpQkFBaUI7SUFDakIsc0JBQXNCO0lBQ3RCLDRCQUE0QjtJQUM1QiwyQkFBMkI7SUFDM0Isb0JBQW9CO0lBQ3BCLDZCQUE2QjtJQUM3Qiw4QkFBOEI7SUFDOUIsdUJBQXVCO0lBQ3ZCLDBCQUEwQjtJQUMxQiwwQkFBMEI7SUFDMUIsaUNBQWlDO0lBQ2pDLG9DQUFvQztJQUNwQyw2QkFBNkI7SUFDN0IsaUNBQWlDO0lBQ2pDLGtDQUFrQztJQUNsQyxrREFBa0Q7SUFDbEQsMkNBQTJDO0lBQzNDLDRDQUE0QztJQUM1QywwQ0FBMEM7SUFDMUMsK0JBQStCO0lBQy9CLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsNEJBQTRCO0lBQzVCLHNCQUFzQjtJQUN0Qiw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCLGlDQUFpQztJQUNqQyw4QkFBOEI7SUFDOUIsa0NBQWtDO0lBQ2xDLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixnQ0FBZ0M7SUFDaEMsMEJBQTBCO0lBQzFCLGtDQUFrQztJQUNsQywyQkFBMkI7SUFDM0Isa0JBQWtCO0lBQ2xCLDBCQUEwQjtJQUMxQiwyQkFBMkI7SUFDM0IsNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsOEJBQThCO0lBQzlCLHFCQUFxQjtJQUNyQixlQUFlO0lBQ2YsMkJBQTJCO0lBQzNCLGdDQUFnQztJQUNoQyx3QkFBd0I7SUFDeEIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2QiwyQkFBMkI7SUFDM0IsaUJBQWlCO0NBQ3BCLENBQUM7QUFDRixNQUFNLEtBQUssR0FBRyxDQUFDLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0FBa0JoRyxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsVUFBVTtJQUV4RCxZQUFzQixHQUE0QixFQUFZLEdBQTZCO1FBQ3ZGLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLDhCQUE4QixDQUFDLENBQUM7UUFEOUIsUUFBRyxHQUFILEdBQUcsQ0FBeUI7UUFBWSxRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQURqRixzQkFBaUIsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFHOUMsQ0FBQzs7eUhBSlEsNEJBQTRCOzBIQUE1Qiw0QkFBNEIsaUJBMUVyQyxrQkFBa0I7UUFDbEIsK0JBQStCO1FBQy9CLGlCQUFpQjtRQUNqQixzQkFBc0I7UUFDdEIsNEJBQTRCO1FBQzVCLDJCQUEyQjtRQUMzQixvQkFBb0I7UUFDcEIsNkJBQTZCO1FBQzdCLDhCQUE4QjtRQUM5Qix1QkFBdUI7UUFDdkIsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQixpQ0FBaUM7UUFDakMsb0NBQW9DO1FBQ3BDLDZCQUE2QjtRQUM3QixpQ0FBaUM7UUFDakMsa0NBQWtDO1FBQ2xDLGtEQUFrRDtRQUNsRCwyQ0FBMkM7UUFDM0MsNENBQTRDO1FBQzVDLDBDQUEwQztRQUMxQywrQkFBK0I7UUFDL0IsdUJBQXVCO1FBQ3ZCLHNCQUFzQjtRQUN0Qiw0QkFBNEI7UUFDNUIsc0JBQXNCO1FBQ3RCLDZCQUE2QjtRQUM3Qix5QkFBeUI7UUFDekIsaUNBQWlDO1FBQ2pDLDhCQUE4QjtRQUM5QixrQ0FBa0M7UUFDbEMsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLGdDQUFnQztRQUNoQywwQkFBMEI7UUFDMUIsa0NBQWtDO1FBQ2xDLDJCQUEyQjtRQUMzQixrQkFBa0I7UUFDbEIsMEJBQTBCO1FBQzFCLDJCQUEyQjtRQUMzQiw2QkFBNkI7UUFDN0IseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUN2Qiw4QkFBOEI7UUFDOUIscUJBQXFCO1FBQ3JCLGVBQWU7UUFDZiwyQkFBMkI7UUFDM0IsZ0NBQWdDO1FBQ2hDLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixpQkFBaUIsRUFFTixZQUFZLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsd0JBQXdCLGFBS3RGLFlBQVk7UUFDWix1QkFBdUI7UUFDdkIsbUJBQW1CO1FBQ25CLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsV0FBVyxhQXJFZixrQkFBa0I7UUFDbEIsK0JBQStCO1FBQy9CLGlCQUFpQjtRQUNqQixzQkFBc0I7UUFDdEIsNEJBQTRCO1FBQzVCLDJCQUEyQjtRQUMzQixvQkFBb0I7UUFDcEIsNkJBQTZCO1FBQzdCLDhCQUE4QjtRQUM5Qix1QkFBdUI7UUFDdkIsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQixpQ0FBaUM7UUFDakMsb0NBQW9DO1FBQ3BDLDZCQUE2QjtRQUM3QixpQ0FBaUM7UUFDakMsa0NBQWtDO1FBQ2xDLGtEQUFrRDtRQUNsRCwyQ0FBMkM7UUFDM0MsNENBQTRDO1FBQzVDLDBDQUEwQztRQUMxQywrQkFBK0I7UUFDL0IsdUJBQXVCO1FBQ3ZCLHNCQUFzQjtRQUN0Qiw0QkFBNEI7UUFDNUIsc0JBQXNCO1FBQ3RCLDZCQUE2QjtRQUM3Qix5QkFBeUI7UUFDekIsaUNBQWlDO1FBQ2pDLDhCQUE4QjtRQUM5QixrQ0FBa0M7UUFDbEMsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLGdDQUFnQztRQUNoQywwQkFBMEI7UUFDMUIsa0NBQWtDO1FBQ2xDLDJCQUEyQjtRQUMzQixrQkFBa0I7UUFDbEIsMEJBQTBCO1FBQzFCLDJCQUEyQjtRQUMzQiw2QkFBNkI7UUFDN0IseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUN2Qiw4QkFBOEI7UUFDOUIscUJBQXFCO1FBQ3JCLGVBQWU7UUFDZiwyQkFBMkI7UUFDM0IsZ0NBQWdDO1FBQ2hDLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixpQkFBaUI7MEhBb0JSLDRCQUE0QixhQUgxQixDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDLFlBVmhELFlBQVk7UUFDWix1QkFBdUI7UUFDdkIsbUJBQW1CO1FBQ25CLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsV0FBVzsyRkFLTiw0QkFBNEI7a0JBakJ4QyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxFQUFFLEdBQUcsS0FBSyxDQUFDO29CQUN2QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDbkQsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixXQUFXO3FCQUNkO29CQUNELFNBQVMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDO29CQUNwRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlLCBOT19FUlJPUlNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGdW5kYW1lbnRhbE5neENvcmVNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsIEJhc2VNb2R1bGUsIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBCYXJzYVNhcFVpTW9kdWxlIH0gZnJvbSAnYmFyc2Etc2FwLXVpJztcclxuaW1wb3J0IHsgQmFyc2FUaWxlc01vZHVsZSB9IGZyb20gJ2JhcnNhLXRpbGVzJztcclxuaW1wb3J0IHsgQmFyc2FFY2hhcnRzTW9kdWxlIH0gZnJvbSAnYmFyc2EtZWNoYXJ0cyc7XHJcblxyXG5pbXBvcnQgeyBMb2dpbkZvcm1Db21wb25lbnQgfSBmcm9tICcuL2xvZ2luLWZvcm0vbG9naW4tZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMb2dpblNvY2lhbENvbm5jZXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9sb2dpbi1zb2NpYWwtY29ubmNldGlvbnMvbG9naW4tc29jaWFsLWNvbm5jZXRpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUGVyc29uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1wZXJzb24vdWktcGVyc29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUGVyc29uUGlwZSB9IGZyb20gJy4vdWktcGVyc29uL3VpLXBlcnNvbi5waXBlJztcclxuaW1wb3J0IHsgQmFyY29kZVJlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyY29kZS1yZWFkZXIvYmFyY29kZS1yZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyY29kZVJlYWRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vYmFyY29kZS1yZWFkZXItZGlhbG9nL2JhcmNvZGUtcmVhZGVyLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJjb2RlUmVhZGVyVmlkZW9Db21wb25lbnQgfSBmcm9tICcuL2JhcmNvZGUtcmVhZGVyLXZpZGVvL2JhcmNvZGUtcmVhZGVyLXZpZGVvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJNZWRpYUJhc2VTZXJ2aWNlLCBXZWJCYXJjb2RlU2VydmljZSB9IGZyb20gJy4vYmFyY29kZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2V0dGluZ0Zvcm1Db21wb25lbnQgfSBmcm9tICcuL3NldHRpbmctZm9ybS9zZXR0aW5nLWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWljcm9Qcm9jZXNzRmxvd1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXByb2Nlc3MtZmxvdy12aWV3L21pY3JvLXByb2Nlc3MtZmxvdy12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRW51bVNlZ21lbnRlZEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktZW51bS1zZWdtZW50ZWQtYnV0dG9uL3VpLWVudW0tc2VnbWVudGVkLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJQcm9jZXNzVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGFiLXByb2Nlc3Mtdmlldy90YWItcHJvY2Vzcy12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVGV4dEZpZWxkU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi91aS10ZXh0LWZpZWxkLXNlYXJjaC91aS10ZXh0LWZpZWxkLXNlYXJjaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJjb2RlRm9ybWF0UGlwZSB9IGZyb20gJy4vYmFyY29kZS1mb3JtYXQtcGlwZSc7XHJcbmltcG9ydCB7IFNlcnZpY2VEZXNrSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZENvbnRlbnRJbWFnZUFuZFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWNvbnRlbnQtaW1hZ2UtYW5kLXRpdGxlL2NhcmQtY29udGVudC1pbWFnZS1hbmQtdGl0bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZEhlYWRlckxvZ29UaXRsZVN1YnRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWhlYWRlci1sb2dvLXRpdGxlLXN1YnRpdGxlL2NhcmQtaGVhZGVyLWxvZ28tdGl0bGUtc3VidGl0bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNvbnRlbnRRdWlja1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tY29udGVudC1xdWljay12aWV3L2Zvcm0tY29udGVudC1xdWljay12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlcnZpY2VEZXNrU2VydmNpZURldGFpbENvbXBvbmVudCB9IGZyb20gJy4vc2VydmljZS1kZXNrLXNlcnZjaWUtZGV0YWlsL3NlcnZpY2UtZGVzay1zZXJ2Y2llLWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZXJ2aWNlRGVza1ZpZXdPZlNlcnZpY2VzQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJ2aWNlLWRlc2stdmlldy1vZi1zZXJ2aWNlcy9zZXJ2aWNlLWRlc2stdmlldy1vZi1zZXJ2aWNlcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZXJ2aWNlRGVza0NhcmRDb250ZW50TW9qYXZlemhheUFraHpTaG9kZUNvbXBvbmVudCB9IGZyb20gJy4vc2VydmljZS1kZXNrLWNhcmQtY29udGVudC1tb2phdmV6aGF5LWFraHotc2hvZGUvc2VydmljZS1kZXNrLWNhcmQtY29udGVudC1tb2phdmV6aGF5LWFraHotc2hvZGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZEhlYWRlckJpZ0ltYWdlVGl0bGVBbmRTdWJ0aXRsZUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1oZWFkZXItYmlnLWltYWdlLXRpdGxlLWFuZC1zdWJ0aXRsZS9jYXJkLWhlYWRlci1iaWctaW1hZ2UtdGl0bGUtYW5kLXN1YnRpdGxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlcnZpY2VEZXNrRm9ybUxheW91dENvbnRlbnRNb2phdmV6Q29tcG9uZW50IH0gZnJvbSAnLi9zZXJ2aWNlLWRlc2stZm9ybS1sYXlvdXQtY29udGVudC1tb2phdmV6L3NlcnZpY2UtZGVzay1mb3JtLWxheW91dC1jb250ZW50LW1vamF2ZXouY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVJdGVtU2hvd0ZpbGVDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29udGV4dC1tZW51LWl0ZW0tc2hvdy1maWxlLWNvbnRlbnQvdWx2LWNvbnRleHQtbWVudS1pdGVtLXNob3ctZmlsZS1jb250ZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc2VuZFZlcmlmaWNhdGlvbkNvZGVDb21wb25lbnQgfSBmcm9tICcuL3Jlc2VuZC12ZXJpZmljYXRpb24tY29kZS9yZXNlbmQtdmVyaWZpY2F0aW9uLWNvZGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hlY2tib3hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94LWJ1dHRvbi9jaGVja2JveC1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0VGFiVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXRhYi12aWV3L3JlcG9ydC10YWItdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRMaW5lQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtbGluZS1jaGFydC12aWV3L3JlcG9ydC1saW5lLWNoYXJ0LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZEhlYWRlcktwaUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1oZWFkZXIta3BpL2NhcmQtaGVhZGVyLWtwaS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDYXJkQ29udGVudExpbmVDaGFydENvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1jb250ZW50LWxpbmUtY2hhcnQvY2FyZC1jb250ZW50LWxpbmUtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNoYXJ0Q29udGVudENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1jaGFydC1jb250ZW50L2Zvcm0tY2hhcnQtY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZVZpZXdWZXJ0aWNhbENvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLXZpZXctdmVydGljYWwtY29sdW1ucy90YWJsZS12aWV3LXZlcnRpY2FsLWNvbHVtbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUXVlcnlTdHJpbmdPYnNlcnZhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1zdHJpbmctb2JzZXJ2YWJsZS9xdWVyeS1zdHJpbmctb2JzZXJ2YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBRdWVyeVN0cmluZ0Zvcm1PYnNlcnZhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1zdHJpbmctZm9ybS1vYnNlcnZhYmxlL3F1ZXJ5LXN0cmluZy1mb3JtLW9ic2VydmFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRzRiRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vZzRiLWRldGFpbHMvZzRiLWRldGFpbHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEc0YkVzdGVsYW1Db21wb25lbnQgfSBmcm9tICcuL2c0Yi1lc3RlbGFtL2c0Yi1lc3RlbGFtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRpbWVyQ291bnREb3duQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lci1jb3VudC1kb3duL3RpbWVyLWNvdW50LWRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTW9JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQgfSBmcm9tICcuL21vLWluZm8tbWljcm8tcHJvY2Nlc3MtZmxvdy9tby1pbmZvLW1pY3JvLXByb2NjZXNzLWZsb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXByb2NjZXNzLWZsb3cvbWljcm8tcHJvY2Nlc3MtZmxvdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtSW5mb01pY3JvUHJvY2Nlc3NGbG93Q29tcG9uZW50IH0gZnJvbSAnLi9lbnVtLWluZm8tbWljcm8tcHJvY2Nlc3MtZmxvdy9lbnVtLWluZm8tbWljcm8tcHJvY2Nlc3MtZmxvdy5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgRGF0YVNvdXJjZVRvRmxvd0l0ZW1QaXBlLCBNb0xpc3RUb0Zsb3dJdGVtUGlwZSB9IGZyb20gJy4vcGlwZXMnO1xyXG5pbXBvcnQgeyBVaVBpY3R1cmVzQ2Fyb3VzZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmVzLWNhcm91c2VsL3VpLXBpY3R1cmVzLWNhcm91c2VsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTnVtUmF0ZUNvbXBvbmVudCB9IGZyb20gJy4vdWktbnVtLXJhdGUvdWktbnVtLXJhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVkaWFGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL21lZGlhLWZpbGUtdXBsb2FkZXIvbWVkaWEtZmlsZS11cGxvYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJmb3JtSW5Sb3dSZXBvcnRDb21wb25lbnQgfSBmcm9tICcuL3N1YmZvcm0taW4tcm93LXJlcG9ydC9zdWJmb3JtLWluLXJvdy1yZXBvcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFzdGVyRGV0YWlsQ2FyZEZvcm1Db21wb25lbnQgfSBmcm9tICcuL21hc3Rlci1kZXRhaWwtY2FyZC1mb3JtL21hc3Rlci1kZXRhaWwtY2FyZC1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydEJ1dHRvblZpZXdDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1idXR0b24tdmlldy9yZXBvcnQtYnV0dG9uLXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FEb2N1bWVudHNDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWRvY3VtZW50cy9iYXJzYS1kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FEb2N1bWVudExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1kb2N1bWVudC1saXN0LWl0ZW0vYmFyc2EtZG9jdW1lbnQtbGlzdC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjY2VwdFJlamVjdENvbXBvbmVudCB9IGZyb20gJy4vYWNjZXB0LXJlamVjdC9hY2NlcHQtcmVqZWN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHZW9ncmFwaGljTG9jYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2dlb2dyYXBoaWMtbG9jYXRpb24vZ2VvZ3JhcGhpYy1sb2NhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUdlb2dyYXBoaWNMb2NhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZ2VvZ3JhcGhpYy1sb2NhdGlvbi9iYXJzYS1nZW9ncmFwaGljLWxvY2F0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRva2VuUmVwb3J0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdG9rZW4tcmVwb3J0LXZpZXcvdG9rZW4tcmVwb3J0LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sdW1uRm9ybVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLWZvcm0tdmlld2VyL2NvbHVtbi1mb3JtLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQbGF0Zm9ybUlucHV0R3JvdXBNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtJztcclxuaW1wb3J0IHsgRm9ybVJlcG9ydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tcmVwb3J0LXZpZXcvZm9ybS1yZXBvcnQtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtUmVwb3J0Vmlld0l0ZW1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0tcmVwb3J0LXZpZXctaXRlbS9mb3JtLXJlcG9ydC12aWV3LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tY2FyZC9mb3JtLWNhcmQuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IGNvbXBvbmVudHMgPSBbXHJcbiAgICBMb2dpbkZvcm1Db21wb25lbnQsXHJcbiAgICBMb2dpblNvY2lhbENvbm5jZXRpb25zQ29tcG9uZW50LFxyXG4gICAgVWlQZXJzb25Db21wb25lbnQsXHJcbiAgICBCYXJjb2RlUmVhZGVyQ29tcG9uZW50LFxyXG4gICAgQmFyY29kZVJlYWRlckRpYWxvZ0NvbXBvbmVudCxcclxuICAgIEJhcmNvZGVSZWFkZXJWaWRlb0NvbXBvbmVudCxcclxuICAgIFNldHRpbmdGb3JtQ29tcG9uZW50LFxyXG4gICAgTWljcm9Qcm9jZXNzRmxvd1ZpZXdDb21wb25lbnQsXHJcbiAgICBVaUVudW1TZWdtZW50ZWRCdXR0b25Db21wb25lbnQsXHJcbiAgICBUYWJQcm9jZXNzVmlld0NvbXBvbmVudCxcclxuICAgIFVpVGV4dEZpZWxkU2VhcmNoQ29tcG9uZW50LFxyXG4gICAgU2VydmljZURlc2tIZWFkZXJDb21wb25lbnQsXHJcbiAgICBDYXJkQ29udGVudEltYWdlQW5kVGl0bGVDb21wb25lbnQsXHJcbiAgICBDYXJkSGVhZGVyTG9nb1RpdGxlU3VidGl0bGVDb21wb25lbnQsXHJcbiAgICBGb3JtQ29udGVudFF1aWNrVmlld0NvbXBvbmVudCxcclxuICAgIFNlcnZpY2VEZXNrU2VydmNpZURldGFpbENvbXBvbmVudCxcclxuICAgIFNlcnZpY2VEZXNrVmlld09mU2VydmljZXNDb21wb25lbnQsXHJcbiAgICBTZXJ2aWNlRGVza0NhcmRDb250ZW50TW9qYXZlemhheUFraHpTaG9kZUNvbXBvbmVudCxcclxuICAgIENhcmRIZWFkZXJCaWdJbWFnZVRpdGxlQW5kU3VidGl0bGVDb21wb25lbnQsXHJcbiAgICBTZXJ2aWNlRGVza0Zvcm1MYXlvdXRDb250ZW50TW9qYXZlekNvbXBvbmVudCxcclxuICAgIFVsdkNvbnRleHRNZW51SXRlbVNob3dGaWxlQ29udGVudENvbXBvbmVudCxcclxuICAgIFJlc2VuZFZlcmlmaWNhdGlvbkNvZGVDb21wb25lbnQsXHJcbiAgICBDaGVja2JveEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFJlcG9ydFRhYlZpZXdDb21wb25lbnQsXHJcbiAgICBSZXBvcnRMaW5lQ2hhcnRWaWV3Q29tcG9uZW50LFxyXG4gICAgQ2FyZEhlYWRlcktwaUNvbXBvbmVudCxcclxuICAgIENhcmRDb250ZW50TGluZUNoYXJ0Q29tcG9uZW50LFxyXG4gICAgRm9ybUNoYXJ0Q29udGVudENvbXBvbmVudCxcclxuICAgIFRhYmxlVmlld1ZlcnRpY2FsQ29sdW1uc0NvbXBvbmVudCxcclxuICAgIFF1ZXJ5U3RyaW5nT2JzZXJ2YWJsZUNvbXBvbmVudCxcclxuICAgIFF1ZXJ5U3RyaW5nRm9ybU9ic2VydmFibGVDb21wb25lbnQsXHJcbiAgICBHNGJEZXRhaWxzQ29tcG9uZW50LFxyXG4gICAgQXZhdGFyQ29tcG9uZW50LFxyXG4gICAgRzRiRXN0ZWxhbUNvbXBvbmVudCxcclxuICAgIFRpbWVyQ291bnREb3duQ29tcG9uZW50LFxyXG4gICAgTW9JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQsXHJcbiAgICBNaWNyb1Byb2NjZXNzRmxvd0NvbXBvbmVudCxcclxuICAgIEVudW1JbmZvTWljcm9Qcm9jY2Vzc0Zsb3dDb21wb25lbnQsXHJcbiAgICBVaVBpY3R1cmVzQ2Fyb3VzZWxDb21wb25lbnQsXHJcbiAgICBVaU51bVJhdGVDb21wb25lbnQsXHJcbiAgICBNZWRpYUZpbGVVcGxvYWRlckNvbXBvbmVudCxcclxuICAgIFN1YmZvcm1JblJvd1JlcG9ydENvbXBvbmVudCxcclxuICAgIE1hc3RlckRldGFpbENhcmRGb3JtQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0QnV0dG9uVmlld0NvbXBvbmVudCxcclxuICAgIEJhcnNhRG9jdW1lbnRzQ29tcG9uZW50LFxyXG4gICAgQmFyc2FEb2N1bWVudExpc3RJdGVtQ29tcG9uZW50LFxyXG4gICAgQWNjZXB0UmVqZWN0Q29tcG9uZW50LFxyXG4gICAgRm9vdGVyQ29tcG9uZW50LFxyXG4gICAgR2VvZ3JhcGhpY0xvY2F0aW9uQ29tcG9uZW50LFxyXG4gICAgQmFyc2FHZW9ncmFwaGljTG9jYXRpb25Db21wb25lbnQsXHJcbiAgICBUb2tlblJlcG9ydFZpZXdDb21wb25lbnQsXHJcbiAgICBDb2x1bW5Gb3JtVmlld2VyQ29tcG9uZW50LFxyXG4gICAgRm9ybVJlcG9ydFZpZXdDb21wb25lbnQsXHJcbiAgICBGb3JtUmVwb3J0Vmlld0l0ZW1Db21wb25lbnQsXHJcbiAgICBGb3JtQ2FyZENvbXBvbmVudFxyXG5dO1xyXG5jb25zdCBwaXBlcyA9IFtVaVBlcnNvblBpcGUsIEJhcmNvZGVGb3JtYXRQaXBlLCBNb0xpc3RUb0Zsb3dJdGVtUGlwZSwgRGF0YVNvdXJjZVRvRmxvd0l0ZW1QaXBlXTtcclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIC4uLnBpcGVzXSxcclxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBOT19FUlJPUlNfU0NIRU1BXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsXHJcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgICAgICBCYXJzYVNhcFVpTW9kdWxlLFxyXG4gICAgICAgIEJhcnNhRWNoYXJ0c01vZHVsZSxcclxuICAgICAgICBCYXJzYVRpbGVzTW9kdWxlLFxyXG4gICAgICAgIEZ1bmRhbWVudGFsTmd4Q29yZU1vZHVsZSxcclxuICAgICAgICBQbGF0Zm9ybUlucHV0R3JvdXBNb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGVcclxuICAgIF0sXHJcbiAgICBwcm92aWRlcnM6IFtVc2VyTWVkaWFCYXNlU2VydmljZSwgV2ViQmFyY29kZVNlcnZpY2VdLFxyXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYXJzYURldmVsb3BDb21wb25lbnRzTW9kdWxlIGV4dGVuZHMgQmFzZU1vZHVsZSB7XHJcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0NvbXBvbmVudHMgPSBbLi4uY29tcG9uZW50c107XHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XHJcbiAgICAgICAgc3VwZXIoZGNtLCBjZnIsICdCYXJzYURldmVsb3BDb21wb25lbnRzTW9kdWxlJyk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -21,6 +21,8 @@ export class LoginFormComponent extends FormBaseComponent {
21
21
  this._activatedRoute.queryParams.pipe(takeUntil(this._onDestroy$)).subscribe((params) => {
22
22
  BarsaApi.Bw.SetCultureByDisplayName(params.culture);
23
23
  });
24
+ const root = document.documentElement;
25
+ root.style.setProperty('--absolute-page-top', '0px');
24
26
  super.ngOnInit();
25
27
  this.layout94$.subscribe((layout94) => {
26
28
  this.layout94 = layout94;
@@ -38,12 +40,12 @@ export class LoginFormComponent extends FormBaseComponent {
38
40
  }
39
41
  }
40
42
  LoginFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: LoginFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
41
- LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mo$ | async as mo\">\r\n <bsu-mask *ngIf=\"mo.IsLogging\"></bsu-mask>\r\n <fd-layout-grid *ngIf=\"(size$ | async) === 'sm'; else sideContent\" [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n </fd-layout-grid>\r\n <ng-template #sideContent>\r\n <fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n \r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n <div\r\n *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\"\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId\r\n | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block;background-color:#fff}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:99vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i3.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i3.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i4.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i4.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i4.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i5.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i5.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
+ LoginFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mo$ | async as mo\">\r\n <bsu-mask *ngIf=\"mo.IsLogging\"></bsu-mask>\r\n <fd-layout-grid *ngIf=\"(size$ | async) === 'sm'; else sideContent\" [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n </fd-layout-grid>\r\n <ng-template #sideContent>\r\n <fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n \r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n <div\r\n *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\"\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId\r\n | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block;background-color:#fff}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i3.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i3.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i4.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i4.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i4.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i5.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i5.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: LoginFormComponent, decorators: [{
43
45
  type: Component,
44
- args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"mo$ | async as mo\">\r\n <bsu-mask *ngIf=\"mo.IsLogging\"></bsu-mask>\r\n <fd-layout-grid *ngIf=\"(size$ | async) === 'sm'; else sideContent\" [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n </fd-layout-grid>\r\n <ng-template #sideContent>\r\n <fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n \r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n <div\r\n *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\"\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId\r\n | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block;background-color:#fff}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:99vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
46
+ args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"mo$ | async as mo\">\r\n <bsu-mask *ngIf=\"mo.IsLogging\"></bsu-mask>\r\n <fd-layout-grid *ngIf=\"(size$ | async) === 'sm'; else sideContent\" [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n </fd-layout-grid>\r\n <ng-template #sideContent>\r\n <fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n \r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n <div\r\n *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\"\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId\r\n | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block;background-color:#fff}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
45
47
  }], propDecorators: { onKeyEnter: [{
46
48
  type: HostListener,
47
49
  args: ['keydown.enter', ['$event']]
48
50
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvbG9naW4tZm9ybS9sb2dpbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpGLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBU3JGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUFQekQ7O1FBU0ksZUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFRLEVBQUU7WUFDckIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RSxJQUFJLFVBQVUsRUFBRTtnQkFDWixVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzdEO1FBQ0wsQ0FBQyxDQUFDO0tBd0JMO0lBckJHLFFBQVE7UUFDSixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BGLFFBQVEsQ0FBQyxFQUFFLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDZixRQUFRLFVBQVUsRUFBRTtnQkFDaEIsS0FBSyxHQUFHO29CQUNKLE9BQU8sSUFBSSxDQUFDO2dCQUNoQixLQUFLLEdBQUc7b0JBQ0osT0FBTyxJQUFJLENBQUM7Z0JBQ2hCO29CQUNJLE9BQU8sSUFBSSxDQUFDO2FBQ25CO1FBQ0wsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7OytHQTlCUSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5R0FGaEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENWakMsaXhFQWdEQTsyRkRwQ2Esa0JBQWtCO2tCQVA5QixTQUFTOytCQUNJLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsZ0JBQWdCLENBQUM7OEJBSTdCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBCYXJzYUFwaSwgRm9ybUJhc2VDb21wb25lbnQsIEZvcm1QYW5lbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYmRjLWxvZ2luLWZvcm0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbG9naW4tZm9ybS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Gb3JtQ29tcG9uZW50IGV4dGVuZHMgRm9ybUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lbnRlcicsIFsnJGV2ZW50J10pXHJcbiAgICBvbktleUVudGVyID0gKF8pOiB2b2lkID0+IHtcclxuICAgICAgICBjb25zdCBsYXlvdXRJdGVtID0gdGhpcy5fY29udHJvbFVpUGlwZS50cmFuc2Zvcm0oJyDZiNix2YjYrycsIHRoaXMubGF5b3V0OTQpO1xyXG4gICAgICAgIGlmIChsYXlvdXRJdGVtKSB7XHJcbiAgICAgICAgICAgIGxheW91dEl0ZW0uRmllbGRVaS5maXJlRXZlbnQoJ2NsaWNrJywgbGF5b3V0SXRlbS5GaWVsZFVpKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgc2l6ZSQ6IE9ic2VydmFibGU8J3hsJyB8ICdtZCcgfCAnc20nPjtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9hY3RpdmF0ZWRSb3V0ZS5xdWVyeVBhcmFtcy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcclxuICAgICAgICAgICAgQmFyc2FBcGkuQncuU2V0Q3VsdHVyZUJ5RGlzcGxheU5hbWUocGFyYW1zLmN1bHR1cmUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5sYXlvdXQ5NCQuc3Vic2NyaWJlKChsYXlvdXQ5NCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxheW91dDk0ID0gbGF5b3V0OTQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5zaXplJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQucGlwZShcclxuICAgICAgICAgICAgbWFwKChkZXZpY2VTaXplKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGRldmljZVNpemUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdzJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdzbSc7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnbSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnbWQnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAneGwnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vJCB8IGFzeW5jIGFzIG1vXCI+XHJcbiAgICA8YnN1LW1hc2sgKm5nSWY9XCJtby5Jc0xvZ2dpbmdcIj48L2JzdS1tYXNrPlxyXG4gICAgPGZkLWxheW91dC1ncmlkICpuZ0lmPVwiKHNpemUkIHwgYXN5bmMpID09PSAnc20nOyBlbHNlIHNpZGVDb250ZW50XCIgW2NsYXNzLm1vYmlsZV09XCJpc01vYmlsZVwiPlxyXG4gICAgICAgIDxkaXYgW2ZkTGF5b3V0R3JpZENvbF09XCIxXCI+PC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgW2ZkTGF5b3V0R3JpZENvbF09XCIxMFwiPlxyXG4gICAgICAgICAgICA8YnN1LWx5LWxheW91dC1jb250YWluZXItb2Ytcm9vdFxyXG4gICAgICAgICAgICAgICAgW2NvbmZpZ109XCJsYXlvdXQ5NCQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICBbaXNQYW5lbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICBbaXNSb290XT1cInRydWVcIlxyXG4gICAgICAgICAgICA+PC9ic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFtmZExheW91dEdyaWRDb2xdPVwiMVwiPjwvZGl2PlxyXG4gICAgPC9mZC1sYXlvdXQtZ3JpZD5cclxuICAgIDxuZy10ZW1wbGF0ZSAjc2lkZUNvbnRlbnQ+XHJcbiAgICAgICAgPGZkLWR5bmFtaWMtc2lkZS1jb250ZW50IFtzaXplXT1cIihzaXplJCB8IGFzeW5jKSEhXCI+XHJcbiAgICAgICAgICAgIDxmZC1keW5hbWljLXNpZGUtY29udGVudC1zaWRlPlxyXG4gICAgICAgICAgICAgICAgPGJzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3RcclxuICAgICAgICAgICAgICAgICAgICBbY29uZmlnXT1cImxheW91dDk0JCB8IGFzeW5jXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNQYW5lbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lzUm9vdF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgID48L2JzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3Q+XHJcbiAgICAgICAgICAgIDwvZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQtc2lkZT5cclxuICAgICAgICAgICAgPGZkLWR5bmFtaWMtc2lkZS1jb250ZW50LW1haW4+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCIn2LnaqdizINm+2LMg2LLZhduM2YbZhycgfCBjb250cm9sVWk6IGxheW91dDk0IGFzIGxheW91dENvbmZpZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxic3UtbGF5b3V0LWNvbnRyb2xcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NhcHRpb25dPVwiJ9i52qnYsyDZvtizINiy2YXbjNmG2YcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJsYXlvdXRDb25maWdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2lubGluZUVkaXRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnN1LWxheW91dC1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IC0tPlxyXG4gICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiJ9i52qnYsyDZvtizINiy2YXbjNmG2YcnIHwgY29udHJvbFVpOiBsYXlvdXQ5NCBhcyBsYXlvdXRDb25maWdcIlxyXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiYmdMb2dpblwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRJbWFnZV09XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3VybCgnICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgKG1vLkJhY2tncm91bmQ/LkZpbGVJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwaWNGaWVsZFNyYzogJ1BpY3R1cmVGaWxlSW5mbyc6bnVsbDpsYXlvdXRDb25maWcuRmllbGRVaS5TZXR0aW5nLkZpZWxkRGVmSWQpICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJyknXHJcbiAgICAgICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICAgICAgPC9mZC1keW5hbWljLXNpZGUtY29udGVudC1tYWluPlxyXG4gICAgICAgIDwvZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQ+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvbG9naW4tZm9ybS9sb2dpbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpGLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBU3JGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUFQekQ7O1FBU0ksZUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFRLEVBQUU7WUFDckIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RSxJQUFJLFVBQVUsRUFBRTtnQkFDWixVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzdEO1FBQ0wsQ0FBQyxDQUFDO0tBMEJMO0lBdkJHLFFBQVE7UUFDSixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BGLFFBQVEsQ0FBQyxFQUFFLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUM3QyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUNmLFFBQVEsVUFBVSxFQUFFO2dCQUNoQixLQUFLLEdBQUc7b0JBQ0osT0FBTyxJQUFJLENBQUM7Z0JBQ2hCLEtBQUssR0FBRztvQkFDSixPQUFPLElBQUksQ0FBQztnQkFDaEI7b0JBQ0ksT0FBTyxJQUFJLENBQUM7YUFDbkI7UUFDTCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQzs7K0dBaENRLGtCQUFrQjttR0FBbEIsa0JBQWtCLHlHQUZoQixDQUFDLGdCQUFnQixDQUFDLGlEQ1ZqQyxpeEVBZ0RBOzJGRHBDYSxrQkFBa0I7a0JBUDlCLFNBQVM7K0JBQ0ksZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxnQkFBZ0IsQ0FBQzs4QkFJN0IsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhcnNhQXBpLCBGb3JtQmFzZUNvbXBvbmVudCwgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiZGMtbG9naW4tZm9ybScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xvZ2luLWZvcm0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnQgZXh0ZW5kcyBGb3JtQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lbnRlcicsIFsnJGV2ZW50J10pXG4gICAgb25LZXlFbnRlciA9IChfKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IGxheW91dEl0ZW0gPSB0aGlzLl9jb250cm9sVWlQaXBlLnRyYW5zZm9ybSgnINmI2LHZiNivJywgdGhpcy5sYXlvdXQ5NCk7XG4gICAgICAgIGlmIChsYXlvdXRJdGVtKSB7XG4gICAgICAgICAgICBsYXlvdXRJdGVtLkZpZWxkVWkuZmlyZUV2ZW50KCdjbGljaycsIGxheW91dEl0ZW0uRmllbGRVaSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNpemUkOiBPYnNlcnZhYmxlPCd4bCcgfCAnbWQnIHwgJ3NtJz47XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGUucXVlcnlQYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XG4gICAgICAgICAgICBCYXJzYUFwaS5Cdy5TZXRDdWx0dXJlQnlEaXNwbGF5TmFtZShwYXJhbXMuY3VsdHVyZSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCByb290ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgICByb290LnN0eWxlLnNldFByb3BlcnR5KCctLWFic29sdXRlLXBhZ2UtdG9wJywgJzBweCcpO1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmxheW91dDk0JC5zdWJzY3JpYmUoKGxheW91dDk0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxheW91dDk0ID0gbGF5b3V0OTQ7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKFxuICAgICAgICAgICAgbWFwKChkZXZpY2VTaXplKSA9PiB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChkZXZpY2VTaXplKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ3MnOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdzbSc7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ20nOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdtZCc7XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3hsJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJtbyQgfCBhc3luYyBhcyBtb1wiPlxyXG4gICAgPGJzdS1tYXNrICpuZ0lmPVwibW8uSXNMb2dnaW5nXCI+PC9ic3UtbWFzaz5cclxuICAgIDxmZC1sYXlvdXQtZ3JpZCAqbmdJZj1cIihzaXplJCB8IGFzeW5jKSA9PT0gJ3NtJzsgZWxzZSBzaWRlQ29udGVudFwiIFtjbGFzcy5tb2JpbGVdPVwiaXNNb2JpbGVcIj5cclxuICAgICAgICA8ZGl2IFtmZExheW91dEdyaWRDb2xdPVwiMVwiPjwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFtmZExheW91dEdyaWRDb2xdPVwiMTBcIj5cclxuICAgICAgICAgICAgPGJzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3RcclxuICAgICAgICAgICAgICAgIFtjb25maWddPVwibGF5b3V0OTQkIHwgYXN5bmNcIlxyXG4gICAgICAgICAgICAgICAgW2lzUGFuZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgW2lzUm9vdF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgPjwvYnN1LWx5LWxheW91dC1jb250YWluZXItb2Ytcm9vdD5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBbZmRMYXlvdXRHcmlkQ29sXT1cIjFcIj48L2Rpdj5cclxuICAgIDwvZmQtbGF5b3V0LWdyaWQ+XHJcbiAgICA8bmctdGVtcGxhdGUgI3NpZGVDb250ZW50PlxyXG4gICAgICAgIDxmZC1keW5hbWljLXNpZGUtY29udGVudCBbc2l6ZV09XCIoc2l6ZSQgfCBhc3luYykhIVwiPlxyXG4gICAgICAgICAgICA8ZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQtc2lkZT5cclxuICAgICAgICAgICAgICAgIDxic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290XHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJsYXlvdXQ5NCQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lzUGFuZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc1Jvb3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICA+PC9ic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290PlxyXG4gICAgICAgICAgICA8L2ZkLWR5bmFtaWMtc2lkZS1jb250ZW50LXNpZGU+XHJcbiAgICAgICAgICAgIDxmZC1keW5hbWljLXNpZGUtY29udGVudC1tYWluPlxyXG4gICAgICAgICAgICAgICAgPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiJ9i52qnYsyDZvtizINiy2YXbjNmG2YcnIHwgY29udHJvbFVpOiBsYXlvdXQ5NCBhcyBsYXlvdXRDb25maWdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnN1LWxheW91dC1jb250cm9sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjYXB0aW9uXT1cIifYudqp2LMg2b7YsyDYstmF24zZhtmHJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb25maWddPVwibGF5b3V0Q29uZmlnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbmxpbmVFZGl0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgID48L2JzdS1sYXlvdXQtY29udHJvbD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIifYudqp2LMg2b7YsyDYstmF24zZhtmHJyB8IGNvbnRyb2xVaTogbGF5b3V0OTQgYXMgbGF5b3V0Q29uZmlnXCJcclxuICAgICAgICAgICAgICAgICAgICBpZD1cImJnTG9naW5cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kSW1hZ2VdPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd1cmwoJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChtby5CYWNrZ3JvdW5kPy5GaWxlSWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcGljRmllbGRTcmM6ICdQaWN0dXJlRmlsZUluZm8nOm51bGw6bGF5b3V0Q29uZmlnLkZpZWxkVWkuU2V0dGluZy5GaWVsZERlZklkKSArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICcpJ1xyXG4gICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICA+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQtbWFpbj5cclxuICAgICAgICA8L2ZkLWR5bmFtaWMtc2lkZS1jb250ZW50PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
@@ -191,10 +191,10 @@ export class ServiceDeskHeaderComponent extends TilesViewerContainerComponent {
191
191
  }
192
192
  }
193
193
  ServiceDeskHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ServiceDeskHeaderComponent, deps: [{ token: i1.PortalService }, { token: i2.TilesService }, { token: i2.TilesViewerService }, { token: i0.Renderer2 }, { token: i3.ViewportScroller }, { token: i0.ChangeDetectorRef }, { token: i4.Router }, { token: i4.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
194
- ServiceDeskHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ServiceDeskHeaderComponent, selector: "bdc-service-desk-header", inputs: { settings: "settings" }, providers: [TilesViewerService], viewQueries: [{ propertyName: "headerSpaceHolder", first: true, predicate: ["headerSpaceHolder"], descendants: true, static: true }, { propertyName: "headerGrid", first: true, predicate: ["headerGrid"], descendants: true, static: true }, { propertyName: "aboveSearch", first: true, predicate: ["aboveSearch"], descendants: true, static: true }, { propertyName: "searchHolder", first: true, predicate: ["searchHolder"], descendants: true, static: true }, { propertyName: "navHolder", first: true, predicate: ["navHolder"], descendants: true, static: true }, { propertyName: "aboveContent", first: true, predicate: ["aboveContent"], descendants: true, static: true }, { propertyName: "bgOuterHolder", first: true, predicate: ["bgOuterHolder"], descendants: true, static: true }, { propertyName: "contentAndNav", first: true, predicate: ["contentAndNav"], descendants: true, static: true }, { propertyName: "tilesViewerGroupElList", predicate: TilesViewerGroupComponent, descendants: true, read: ElementRef }, { propertyName: "tabPanelComponents", predicate: TabPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div id=\"headerGrid\" style=\"grid-template-rows: minmax(1px, 15%) 48px 32px 1fr auto 12%; height: 148px\" #headerGrid>\n <div class=\"companyLogoHolder_aboveSearch\" #aboveSearch></div>\n <div id=\"searchHolder\" style=\"grid-row: 2\" #searchHolder>\n <fd-input-group\n [style.display]=\"settings?.HideSearch ? 'none' : null\"\n class=\"input-search\"\n contentDensity=\"cozy\"\n fd-toolbar-item\n type=\"search\"\n glyph=\"search\"\n glyphAriaLabel=\"Search\"\n placeholder=\"Search\"\n [button]=\"true\"\n [disabled]=\"false\"\n [(ngModel)]=\"searchTerm\"\n (addOnButtonClicked)=\"onSearchSubmit()\"\n >\n </fd-input-group>\n </div>\n</div>\n<div id=\"headerSpaceHolder\" #headerSpaceHolder>\n <div id=\"bgOuterHolder\" #bgOuterHolder>\n <div id=\"bgInnerHolder\" style=\"height: 100vh\">\n <div class=\"backgroundImage\" id=\"backgroundImage\">\n <img class=\"picture\" src=\"/assets/back.jpg\" loading=\"lazy\" />\n <span id=\"backgroundImageOverlay\" class=\"overlay\"></span>\n </div>\n </div>\n </div>\n</div>\n<div id=\"contentHolderAndNav\" first=\"true\" #contentAndNav>\n <div class=\"aboveContent\" #aboveContent></div>\n <div id=\"contentHolder\">\n <div class=\"nav\" #navHolder>\n <div class=\"nav-container\">\n <ng-container\n *ngTemplateOutlet=\"renderTabs; context: { $implicit: (appTileGroups$ | async)!! }\"\n ></ng-container>\n </div>\n </div>\n <div class=\"nav_surrogate\" style=\"height: 10px\"></div>\n <div class=\"content-feed\">\n <ng-container\n *ngTemplateOutlet=\"renderGroups; context: { $implicit: (appTileGroups$ | async)!! }\"\n ></ng-container>\n </div>\n </div>\n</div>\n<ng-template #renderTabs let-appTileGroups>\n <fd-tab-list\n [size]=\"tabSize\"\n [collapseOverflow]=\"tabSize === 's' || appTileGroups.length > 5\"\n [expandOverflowText]=\"'More' | bbbTranslate\"\n (selectedTabChange)=\"onSelectedTabChange3($event)\"\n >\n <fd-tab\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\n [id]=\"'' + i\"\n [title]=\"appTileGroup.navigatorTitle\"\n >\n </fd-tab>\n </fd-tab-list>\n</ng-template>\n<ng-template #renderGroups let-appTileGroups>\n <bt-tiles-viewer-group\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\n [attr.index]=\"i\"\n [appTileGroup]=\"appTileGroup\"\n [edit]=\"false\"\n [stackContent]=\"true\"\n [isAppTileSubGroup]=\"false\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n ></bt-tiles-viewer-group>\n</ng-template>\n", styles: ["html{scroll-behavior:smooth}body{overflow-y:auto!important;overflow-x:hidden!important}bt-shellbar{position:fixed;top:10px;width:100%;z-index:6}bt-shellbar .fd-shellbar{background:transparent;box-shadow:none}bt-shellbar .fd-shellbar__product{display:none}bdc-service-desk-header{display:block}bdc-service-desk-header #headerGrid{display:grid;justify-items:center;position:absolute;top:0;width:100%}bdc-service-desk-header #headerSpaceHolder{transition:height .3s ease-out 0s;width:100%}bdc-service-desk-header #searchHolder{z-index:302}bdc-service-desk-header #searchHolder.sticky{position:fixed;top:15px;will-change:transform}bdc-service-desk-header #contentHolderAndNav{align-items:center;background:rgba(0,0,0,.318);display:flex;flex-direction:column;min-height:100vh;position:relative;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list{background-color:transparent!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list fd-tab,bdc-service-desk-header #contentHolderAndNav fd-tab-list .fd-tabs{background-color:transparent!important;box-shadow:none!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav[first=true] span.fd-tabs__tag{color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-tabs__link.is-selected>span.fd-tabs__tag:after{background-color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-layout-panel__title{color:#fff!important}bdc-service-desk-header #contentHolderAndNav.navAndContent_tb{background:rgb(247,247,247)}bdc-service-desk-header #contentHolder{align-items:center;display:flex;flex-direction:column}bdc-service-desk-header .nav-container{align-items:center;display:flex;gap:5px}bdc-service-desk-header .nav-container fd-tab-list{width:100%}bdc-service-desk-header .nav_surrogate{height:1px}bdc-service-desk-header .nav{display:flex;height:50px;justify-content:center;z-index:500;width:100%}bdc-service-desk-header .nav ul{height:auto;overflow:hidden;list-style:none;padding-inline:0px 15px;margin:0;display:inline-flex;align-items:center}bdc-service-desk-header .nav ul li{display:inline;list-style:none;padding:0 16px;color:#fff}bdc-service-desk-header .nav.sticky{background:rgb(247,247,247);position:fixed;will-change:transform}bt-tiles-viewer-group:first-child fd-layout-panel-header{display:none!important}bt-tiles-viewer-group:first-child .fd-panel__content{border-bottom:none}.content-feed{padding:0}.input-search{display:block}@media (max-width: 480px){.nav-container,.content-feed{width:100%}.nav-container .fd-tabs,.content-feed .fd-tabs{padding:0}#searchHolder.sticky{display:none}#searchHolder .input-search{width:250px}}@media (min-width: 481px) and (max-width: 935px){#searchHolder .input-search{width:360px}}@media (min-width: 936px) and (max-width: 1250px){#searchHolder .input-search{width:480px}}@media (min-width: 1251px){#searchHolder .input-search{width:690px}}@media (max-width: 1180){div#searchHolder.sticky .input-search{width:280px!important}}@media (min-width: 480px) and (max-width: 935px){.nav-container,.content-feed{width:860px}}@media (min-width: 1244px){.nav-container,.content-feed{width:1250px}#searchHolder.sticky .input-search{width:690px}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.TilesViewerGroupComponent, selector: "bt-tiles-viewer-group", inputs: ["appTileGroup", "stackContent", "edit", "rtl", "isAppTileSubGroup", "deviceSize"], outputs: ["tilesDropped", "hideAppTileClick", "renameAppTileClick", "toggleGroup", "resetGroup", "deleteGroup"] }, { kind: "component", type: i6.InputGroupComponent, selector: "fd-input-group", inputs: ["inputTemplate", "placement", "required", "inline", "placeholder", "addOnText", "buttonFocusable", "type", "glyph", "button", "disabled", "readonly", "state", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "iconTitle", "ariaLabelledby", "ariaLabelledBy"], outputs: ["addOnButtonClicked", "search"] }, { kind: "component", type: i7.TabListComponent, selector: "fd-tab-list", inputs: ["size", "mode", "collapseOverflow", "maxVisibleTabs", "stackContent", "maxContentHeight", "collapsibleTabs", "expandOverflowText", "defaultTab", "selectDefaultOnTabsChange"], outputs: ["selectedTabChange", "visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i7.TabPanelComponent, selector: "fd-tab", inputs: ["id", "ariaLabel", "ariaLabelledBy", "title", "count", "glyph", "header", "disabled", "tabState"], outputs: ["opened", "closed"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
194
+ ServiceDeskHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ServiceDeskHeaderComponent, selector: "bdc-service-desk-header", inputs: { settings: "settings" }, providers: [TilesViewerService], viewQueries: [{ propertyName: "headerSpaceHolder", first: true, predicate: ["headerSpaceHolder"], descendants: true, static: true }, { propertyName: "headerGrid", first: true, predicate: ["headerGrid"], descendants: true, static: true }, { propertyName: "aboveSearch", first: true, predicate: ["aboveSearch"], descendants: true, static: true }, { propertyName: "searchHolder", first: true, predicate: ["searchHolder"], descendants: true, static: true }, { propertyName: "navHolder", first: true, predicate: ["navHolder"], descendants: true, static: true }, { propertyName: "aboveContent", first: true, predicate: ["aboveContent"], descendants: true, static: true }, { propertyName: "bgOuterHolder", first: true, predicate: ["bgOuterHolder"], descendants: true, static: true }, { propertyName: "contentAndNav", first: true, predicate: ["contentAndNav"], descendants: true, static: true }, { propertyName: "tilesViewerGroupElList", predicate: TilesViewerGroupComponent, descendants: true, read: ElementRef }, { propertyName: "tabPanelComponents", predicate: TabPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div id=\"headerGrid\" style=\"grid-template-rows: minmax(1px, 15%) 48px 32px 1fr auto 12%; height: 148px\" #headerGrid>\r\n <div class=\"companyLogoHolder_aboveSearch\" #aboveSearch></div>\r\n <div id=\"searchHolder\" style=\"grid-row: 2\" #searchHolder>\r\n <fd-input-group\r\n [style.display]=\"settings?.HideSearch ? 'none' : null\"\r\n class=\"input-search\"\r\n contentDensity=\"cozy\"\r\n fd-toolbar-item\r\n type=\"search\"\r\n glyph=\"search\"\r\n glyphAriaLabel=\"Search\"\r\n placeholder=\"Search\"\r\n [button]=\"true\"\r\n [disabled]=\"false\"\r\n [(ngModel)]=\"searchTerm\"\r\n (addOnButtonClicked)=\"onSearchSubmit()\"\r\n >\r\n </fd-input-group>\r\n </div>\r\n</div>\r\n<div id=\"headerSpaceHolder\" #headerSpaceHolder>\r\n <div id=\"bgOuterHolder\" #bgOuterHolder>\r\n <div id=\"bgInnerHolder\" style=\"height: 100vh\">\r\n <div class=\"backgroundImage\" id=\"backgroundImage\">\r\n <img class=\"picture\" src=\"/assets/back.jpg\" loading=\"lazy\" />\r\n <span id=\"backgroundImageOverlay\" class=\"overlay\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div id=\"contentHolderAndNav\" first=\"true\" #contentAndNav>\r\n <div class=\"aboveContent\" #aboveContent></div>\r\n <div id=\"contentHolder\">\r\n <div class=\"nav\" #navHolder>\r\n <div class=\"nav-container\">\r\n <ng-container\r\n *ngTemplateOutlet=\"renderTabs; context: { $implicit: (appTileGroups$ | async)!! }\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n <div class=\"nav_surrogate\" style=\"height: 10px\"></div>\r\n <div class=\"content-feed\">\r\n <ng-container\r\n *ngTemplateOutlet=\"renderGroups; context: { $implicit: (appTileGroups$ | async)!! }\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-template #renderTabs let-appTileGroups>\r\n <fd-tab-list\r\n [size]=\"tabSize\"\r\n [collapseOverflow]=\"tabSize === 's' || appTileGroups.length > 5\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n (selectedTabChange)=\"onSelectedTabChange3($event)\"\r\n >\r\n <fd-tab\r\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\r\n [id]=\"'' + i\"\r\n [title]=\"appTileGroup.navigatorTitle\"\r\n >\r\n </fd-tab>\r\n </fd-tab-list>\r\n</ng-template>\r\n<ng-template #renderGroups let-appTileGroups>\r\n <bt-tiles-viewer-group\r\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\r\n [attr.index]=\"i\"\r\n [appTileGroup]=\"appTileGroup\"\r\n [edit]=\"false\"\r\n [stackContent]=\"true\"\r\n [isAppTileSubGroup]=\"false\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n ></bt-tiles-viewer-group>\r\n</ng-template>\r\n", styles: ["html{scroll-behavior:smooth}body{overflow-y:auto!important;overflow-x:hidden!important}bt-shellbar{position:fixed;top:10px;width:100%;z-index:6}bt-shellbar .fd-shellbar{background:transparent;box-shadow:none}bt-shellbar .fd-shellbar__product{display:none}bdc-service-desk-header{display:block}bdc-service-desk-header #headerGrid{display:grid;justify-items:center;position:absolute;top:0;width:100%}bdc-service-desk-header #headerSpaceHolder{transition:height .3s ease-out 0s;width:100%}bdc-service-desk-header #searchHolder{z-index:302}bdc-service-desk-header #searchHolder.sticky{position:fixed;top:15px;will-change:transform}bdc-service-desk-header #contentHolderAndNav{align-items:center;background:rgba(0,0,0,.318);display:flex;flex-direction:column;min-height:100vh;position:relative;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list{background-color:transparent!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list fd-tab,bdc-service-desk-header #contentHolderAndNav fd-tab-list .fd-tabs{background-color:transparent!important;box-shadow:none!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav[first=true] span.fd-tabs__tag{color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-tabs__link.is-selected>span.fd-tabs__tag:after{background-color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-layout-panel__title{color:#fff!important}bdc-service-desk-header #contentHolderAndNav.navAndContent_tb{background:rgb(247,247,247)}bdc-service-desk-header #contentHolder{align-items:center;display:flex;flex-direction:column}bdc-service-desk-header .nav-container{align-items:center;display:flex;gap:5px}bdc-service-desk-header .nav-container fd-tab-list{width:100%}bdc-service-desk-header .nav_surrogate{height:1px}bdc-service-desk-header .nav{display:flex;height:50px;justify-content:center;z-index:500;width:100%}bdc-service-desk-header .nav ul{height:auto;overflow:hidden;list-style:none;padding-inline:0px 15px;margin:0;display:inline-flex;align-items:center}bdc-service-desk-header .nav ul li{display:inline;list-style:none;padding:0 16px;color:#fff}bdc-service-desk-header .nav.sticky{background:rgb(247,247,247);position:fixed;will-change:transform}bt-tiles-viewer-group:first-child fd-layout-panel-header{display:none!important}bt-tiles-viewer-group:first-child .fd-panel__content{border-bottom:none}.content-feed{padding:0}.input-search{display:block}@media (max-width: 480px){.nav-container,.content-feed{width:100%}.nav-container .fd-tabs,.content-feed .fd-tabs{padding:0}#searchHolder.sticky{display:none}#searchHolder .input-search{width:250px}}@media (min-width: 481px) and (max-width: 935px){#searchHolder .input-search{width:360px}}@media (min-width: 936px) and (max-width: 1250px){#searchHolder .input-search{width:480px}}@media (min-width: 1251px){#searchHolder .input-search{width:690px}}@media (max-width: 1180){div#searchHolder.sticky .input-search{width:280px!important}}@media (min-width: 480px) and (max-width: 935px){.nav-container,.content-feed{width:860px}}@media (min-width: 1244px){.nav-container,.content-feed{width:1250px}#searchHolder.sticky .input-search{width:690px}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.TilesViewerGroupComponent, selector: "bt-tiles-viewer-group", inputs: ["appTileGroup", "stackContent", "edit", "rtl", "isAppTileSubGroup", "deviceSize"], outputs: ["tilesDropped", "hideAppTileClick", "renameAppTileClick", "toggleGroup", "resetGroup", "deleteGroup"] }, { kind: "component", type: i6.InputGroupComponent, selector: "fd-input-group", inputs: ["inputTemplate", "placement", "required", "inline", "placeholder", "addOnText", "buttonFocusable", "type", "glyph", "button", "disabled", "readonly", "state", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "iconTitle", "ariaLabelledby", "ariaLabelledBy"], outputs: ["addOnButtonClicked", "search"] }, { kind: "component", type: i7.TabListComponent, selector: "fd-tab-list", inputs: ["size", "mode", "collapseOverflow", "maxVisibleTabs", "stackContent", "maxContentHeight", "collapsibleTabs", "expandOverflowText", "defaultTab", "selectDefaultOnTabsChange"], outputs: ["selectedTabChange", "visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i7.TabPanelComponent, selector: "fd-tab", inputs: ["id", "ariaLabel", "ariaLabelledBy", "title", "count", "glyph", "header", "disabled", "tabState"], outputs: ["opened", "closed"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
195
195
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ServiceDeskHeaderComponent, decorators: [{
196
196
  type: Component,
197
- args: [{ selector: 'bdc-service-desk-header', providers: [TilesViewerService], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div id=\"headerGrid\" style=\"grid-template-rows: minmax(1px, 15%) 48px 32px 1fr auto 12%; height: 148px\" #headerGrid>\n <div class=\"companyLogoHolder_aboveSearch\" #aboveSearch></div>\n <div id=\"searchHolder\" style=\"grid-row: 2\" #searchHolder>\n <fd-input-group\n [style.display]=\"settings?.HideSearch ? 'none' : null\"\n class=\"input-search\"\n contentDensity=\"cozy\"\n fd-toolbar-item\n type=\"search\"\n glyph=\"search\"\n glyphAriaLabel=\"Search\"\n placeholder=\"Search\"\n [button]=\"true\"\n [disabled]=\"false\"\n [(ngModel)]=\"searchTerm\"\n (addOnButtonClicked)=\"onSearchSubmit()\"\n >\n </fd-input-group>\n </div>\n</div>\n<div id=\"headerSpaceHolder\" #headerSpaceHolder>\n <div id=\"bgOuterHolder\" #bgOuterHolder>\n <div id=\"bgInnerHolder\" style=\"height: 100vh\">\n <div class=\"backgroundImage\" id=\"backgroundImage\">\n <img class=\"picture\" src=\"/assets/back.jpg\" loading=\"lazy\" />\n <span id=\"backgroundImageOverlay\" class=\"overlay\"></span>\n </div>\n </div>\n </div>\n</div>\n<div id=\"contentHolderAndNav\" first=\"true\" #contentAndNav>\n <div class=\"aboveContent\" #aboveContent></div>\n <div id=\"contentHolder\">\n <div class=\"nav\" #navHolder>\n <div class=\"nav-container\">\n <ng-container\n *ngTemplateOutlet=\"renderTabs; context: { $implicit: (appTileGroups$ | async)!! }\"\n ></ng-container>\n </div>\n </div>\n <div class=\"nav_surrogate\" style=\"height: 10px\"></div>\n <div class=\"content-feed\">\n <ng-container\n *ngTemplateOutlet=\"renderGroups; context: { $implicit: (appTileGroups$ | async)!! }\"\n ></ng-container>\n </div>\n </div>\n</div>\n<ng-template #renderTabs let-appTileGroups>\n <fd-tab-list\n [size]=\"tabSize\"\n [collapseOverflow]=\"tabSize === 's' || appTileGroups.length > 5\"\n [expandOverflowText]=\"'More' | bbbTranslate\"\n (selectedTabChange)=\"onSelectedTabChange3($event)\"\n >\n <fd-tab\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\n [id]=\"'' + i\"\n [title]=\"appTileGroup.navigatorTitle\"\n >\n </fd-tab>\n </fd-tab-list>\n</ng-template>\n<ng-template #renderGroups let-appTileGroups>\n <bt-tiles-viewer-group\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\n [attr.index]=\"i\"\n [appTileGroup]=\"appTileGroup\"\n [edit]=\"false\"\n [stackContent]=\"true\"\n [isAppTileSubGroup]=\"false\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n ></bt-tiles-viewer-group>\n</ng-template>\n", styles: ["html{scroll-behavior:smooth}body{overflow-y:auto!important;overflow-x:hidden!important}bt-shellbar{position:fixed;top:10px;width:100%;z-index:6}bt-shellbar .fd-shellbar{background:transparent;box-shadow:none}bt-shellbar .fd-shellbar__product{display:none}bdc-service-desk-header{display:block}bdc-service-desk-header #headerGrid{display:grid;justify-items:center;position:absolute;top:0;width:100%}bdc-service-desk-header #headerSpaceHolder{transition:height .3s ease-out 0s;width:100%}bdc-service-desk-header #searchHolder{z-index:302}bdc-service-desk-header #searchHolder.sticky{position:fixed;top:15px;will-change:transform}bdc-service-desk-header #contentHolderAndNav{align-items:center;background:rgba(0,0,0,.318);display:flex;flex-direction:column;min-height:100vh;position:relative;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list{background-color:transparent!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list fd-tab,bdc-service-desk-header #contentHolderAndNav fd-tab-list .fd-tabs{background-color:transparent!important;box-shadow:none!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav[first=true] span.fd-tabs__tag{color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-tabs__link.is-selected>span.fd-tabs__tag:after{background-color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-layout-panel__title{color:#fff!important}bdc-service-desk-header #contentHolderAndNav.navAndContent_tb{background:rgb(247,247,247)}bdc-service-desk-header #contentHolder{align-items:center;display:flex;flex-direction:column}bdc-service-desk-header .nav-container{align-items:center;display:flex;gap:5px}bdc-service-desk-header .nav-container fd-tab-list{width:100%}bdc-service-desk-header .nav_surrogate{height:1px}bdc-service-desk-header .nav{display:flex;height:50px;justify-content:center;z-index:500;width:100%}bdc-service-desk-header .nav ul{height:auto;overflow:hidden;list-style:none;padding-inline:0px 15px;margin:0;display:inline-flex;align-items:center}bdc-service-desk-header .nav ul li{display:inline;list-style:none;padding:0 16px;color:#fff}bdc-service-desk-header .nav.sticky{background:rgb(247,247,247);position:fixed;will-change:transform}bt-tiles-viewer-group:first-child fd-layout-panel-header{display:none!important}bt-tiles-viewer-group:first-child .fd-panel__content{border-bottom:none}.content-feed{padding:0}.input-search{display:block}@media (max-width: 480px){.nav-container,.content-feed{width:100%}.nav-container .fd-tabs,.content-feed .fd-tabs{padding:0}#searchHolder.sticky{display:none}#searchHolder .input-search{width:250px}}@media (min-width: 481px) and (max-width: 935px){#searchHolder .input-search{width:360px}}@media (min-width: 936px) and (max-width: 1250px){#searchHolder .input-search{width:480px}}@media (min-width: 1251px){#searchHolder .input-search{width:690px}}@media (max-width: 1180){div#searchHolder.sticky .input-search{width:280px!important}}@media (min-width: 480px) and (max-width: 935px){.nav-container,.content-feed{width:860px}}@media (min-width: 1244px){.nav-container,.content-feed{width:1250px}#searchHolder.sticky .input-search{width:690px}}\n"] }]
197
+ args: [{ selector: 'bdc-service-desk-header', providers: [TilesViewerService], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div id=\"headerGrid\" style=\"grid-template-rows: minmax(1px, 15%) 48px 32px 1fr auto 12%; height: 148px\" #headerGrid>\r\n <div class=\"companyLogoHolder_aboveSearch\" #aboveSearch></div>\r\n <div id=\"searchHolder\" style=\"grid-row: 2\" #searchHolder>\r\n <fd-input-group\r\n [style.display]=\"settings?.HideSearch ? 'none' : null\"\r\n class=\"input-search\"\r\n contentDensity=\"cozy\"\r\n fd-toolbar-item\r\n type=\"search\"\r\n glyph=\"search\"\r\n glyphAriaLabel=\"Search\"\r\n placeholder=\"Search\"\r\n [button]=\"true\"\r\n [disabled]=\"false\"\r\n [(ngModel)]=\"searchTerm\"\r\n (addOnButtonClicked)=\"onSearchSubmit()\"\r\n >\r\n </fd-input-group>\r\n </div>\r\n</div>\r\n<div id=\"headerSpaceHolder\" #headerSpaceHolder>\r\n <div id=\"bgOuterHolder\" #bgOuterHolder>\r\n <div id=\"bgInnerHolder\" style=\"height: 100vh\">\r\n <div class=\"backgroundImage\" id=\"backgroundImage\">\r\n <img class=\"picture\" src=\"/assets/back.jpg\" loading=\"lazy\" />\r\n <span id=\"backgroundImageOverlay\" class=\"overlay\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div id=\"contentHolderAndNav\" first=\"true\" #contentAndNav>\r\n <div class=\"aboveContent\" #aboveContent></div>\r\n <div id=\"contentHolder\">\r\n <div class=\"nav\" #navHolder>\r\n <div class=\"nav-container\">\r\n <ng-container\r\n *ngTemplateOutlet=\"renderTabs; context: { $implicit: (appTileGroups$ | async)!! }\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n <div class=\"nav_surrogate\" style=\"height: 10px\"></div>\r\n <div class=\"content-feed\">\r\n <ng-container\r\n *ngTemplateOutlet=\"renderGroups; context: { $implicit: (appTileGroups$ | async)!! }\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-template #renderTabs let-appTileGroups>\r\n <fd-tab-list\r\n [size]=\"tabSize\"\r\n [collapseOverflow]=\"tabSize === 's' || appTileGroups.length > 5\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n (selectedTabChange)=\"onSelectedTabChange3($event)\"\r\n >\r\n <fd-tab\r\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\r\n [id]=\"'' + i\"\r\n [title]=\"appTileGroup.navigatorTitle\"\r\n >\r\n </fd-tab>\r\n </fd-tab-list>\r\n</ng-template>\r\n<ng-template #renderGroups let-appTileGroups>\r\n <bt-tiles-viewer-group\r\n *ngFor=\"let appTileGroup of appTileGroups; let i = index\"\r\n [attr.index]=\"i\"\r\n [appTileGroup]=\"appTileGroup\"\r\n [edit]=\"false\"\r\n [stackContent]=\"true\"\r\n [isAppTileSubGroup]=\"false\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n ></bt-tiles-viewer-group>\r\n</ng-template>\r\n", styles: ["html{scroll-behavior:smooth}body{overflow-y:auto!important;overflow-x:hidden!important}bt-shellbar{position:fixed;top:10px;width:100%;z-index:6}bt-shellbar .fd-shellbar{background:transparent;box-shadow:none}bt-shellbar .fd-shellbar__product{display:none}bdc-service-desk-header{display:block}bdc-service-desk-header #headerGrid{display:grid;justify-items:center;position:absolute;top:0;width:100%}bdc-service-desk-header #headerSpaceHolder{transition:height .3s ease-out 0s;width:100%}bdc-service-desk-header #searchHolder{z-index:302}bdc-service-desk-header #searchHolder.sticky{position:fixed;top:15px;will-change:transform}bdc-service-desk-header #contentHolderAndNav{align-items:center;background:rgba(0,0,0,.318);display:flex;flex-direction:column;min-height:100vh;position:relative;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list{background-color:transparent!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav fd-tab-list fd-tab,bdc-service-desk-header #contentHolderAndNav fd-tab-list .fd-tabs{background-color:transparent!important;box-shadow:none!important;transition:background-color .3s ease-out 0s}bdc-service-desk-header #contentHolderAndNav[first=true] span.fd-tabs__tag{color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-tabs__link.is-selected>span.fd-tabs__tag:after{background-color:#fff!important}bdc-service-desk-header #contentHolderAndNav[first=true] .fd-layout-panel__title{color:#fff!important}bdc-service-desk-header #contentHolderAndNav.navAndContent_tb{background:rgb(247,247,247)}bdc-service-desk-header #contentHolder{align-items:center;display:flex;flex-direction:column}bdc-service-desk-header .nav-container{align-items:center;display:flex;gap:5px}bdc-service-desk-header .nav-container fd-tab-list{width:100%}bdc-service-desk-header .nav_surrogate{height:1px}bdc-service-desk-header .nav{display:flex;height:50px;justify-content:center;z-index:500;width:100%}bdc-service-desk-header .nav ul{height:auto;overflow:hidden;list-style:none;padding-inline:0px 15px;margin:0;display:inline-flex;align-items:center}bdc-service-desk-header .nav ul li{display:inline;list-style:none;padding:0 16px;color:#fff}bdc-service-desk-header .nav.sticky{background:rgb(247,247,247);position:fixed;will-change:transform}bt-tiles-viewer-group:first-child fd-layout-panel-header{display:none!important}bt-tiles-viewer-group:first-child .fd-panel__content{border-bottom:none}.content-feed{padding:0}.input-search{display:block}@media (max-width: 480px){.nav-container,.content-feed{width:100%}.nav-container .fd-tabs,.content-feed .fd-tabs{padding:0}#searchHolder.sticky{display:none}#searchHolder .input-search{width:250px}}@media (min-width: 481px) and (max-width: 935px){#searchHolder .input-search{width:360px}}@media (min-width: 936px) and (max-width: 1250px){#searchHolder .input-search{width:480px}}@media (min-width: 1251px){#searchHolder .input-search{width:690px}}@media (max-width: 1180){div#searchHolder.sticky .input-search{width:280px!important}}@media (min-width: 480px) and (max-width: 935px){.nav-container,.content-feed{width:860px}}@media (min-width: 1244px){.nav-container,.content-feed{width:1250px}#searchHolder.sticky .input-search{width:690px}}\n"] }]
198
198
  }], ctorParameters: function () { return [{ type: i1.PortalService }, { type: i2.TilesService }, { type: i2.TilesViewerService }, { type: i0.Renderer2 }, { type: i3.ViewportScroller }, { type: i0.ChangeDetectorRef }, { type: i4.Router }, { type: i4.ActivatedRoute }]; }, propDecorators: { headerSpaceHolder: [{
199
199
  type: ViewChild,
200
200
  args: ['headerSpaceHolder', { static: true }]
@@ -228,4 +228,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
228
228
  }], settings: [{
229
229
  type: Input
230
230
  }] } });
231
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLWhlYWRlci9zZXJ2aWNlLWRlc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUVqQixVQUFVLEVBQ1YsU0FBUyxFQUVULFlBQVksRUFHWixtQkFBbUIsRUFDbkIsS0FBSyxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFZLE1BQU0sdUJBQXVCLENBQUM7QUFFcEUsT0FBTyxFQUNILDZCQUE2QixFQUM3QixrQkFBa0IsRUFFbEIseUJBQXlCLEVBQzVCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7O0FBVXJCLE1BQU0sT0FBTywwQkFBMkIsU0FBUSw2QkFBNkI7SUEyQnpFLFlBQ2MsY0FBNkIsRUFDN0IsYUFBMkIsRUFDM0IsbUJBQXVDLEVBQ3ZDLFNBQW9CLEVBQ3RCLGlCQUFtQyxFQUNuQyxJQUF1QixFQUN2QixPQUFlLEVBQ2YsZUFBK0I7UUFFdkMsS0FBSyxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQVRoRCxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3QixrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQW9CO1FBQ3ZDLGNB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QUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0csWUFBWTtzQkFBeEQsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNELFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDSyxZQUFZO3NCQUF4RCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0csYUFBYTtzQkFBMUQsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNFLGFBQWE7c0JBQTFELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDbUIsc0JBQXNCO3NCQUFwRixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFHNUIsa0JBQWtCO3NCQUFsRCxZQUFZO3VCQUFDLGlCQUFpQjtnQkFDdEIsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgUXVlcnlMaXN0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIFJlbmRlcmVyU3R5bGVGbGFnczIsXG4gICAgSW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFZpZXdwb3J0U2Nyb2xsZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUYWJQYW5lbENvbXBvbmVudCwgVGFiU2l6ZXMgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgUG9ydGFsU2VydmljZSwgQWJicmV2YXRpb25EZXZpY2VTaXplIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHtcbiAgICBUaWxlc1ZpZXdlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBUaWxlc1ZpZXdlclNlcnZpY2UsXG4gICAgVGlsZXNTZXJ2aWNlLFxuICAgIFRpbGVzVmlld2VyR3JvdXBDb21wb25lbnRcbn0gZnJvbSAnYmFyc2EtdGlsZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JkYy1zZXJ2aWNlLWRlc2staGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1RpbGVzVmlld2VyU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlRGVza0hlYWRlckNvbXBvbmVudCBleHRlbmRzIFRpbGVzVmlld2VyQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKCdoZWFkZXJTcGFjZUhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIGhlYWRlclNwYWNlSG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnaGVhZGVyR3JpZCcsIHsgc3RhdGljOiB0cnVlIH0pIGhlYWRlckdyaWQ6IEVsZW1lbnRSZWY8YW55PjtcbiAgICBAVmlld0NoaWxkKCdhYm92ZVNlYXJjaCcsIHsgc3RhdGljOiB0cnVlIH0pIGFib3ZlU2VhcmNoOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnc2VhcmNoSG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgc2VhcmNoSG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnbmF2SG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgbmF2SG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnYWJvdmVDb250ZW50JywgeyBzdGF0aWM6IHRydWUgfSkgYWJvdmVDb250ZW50OiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnYmdPdXRlckhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIGJnT3V0ZXJIb2xkZXI6IEVsZW1lbnRSZWY8YW55PjtcbiAgICBAVmlld0NoaWxkKCdjb250ZW50QW5kTmF2JywgeyBzdGF0aWM6IHRydWUgfSkgY29udGVudEFuZE5hdjogRWxlbWVudFJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGRyZW4oVGlsZXNWaWV3ZXJHcm91cENvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHRpbGVzVmlld2VyR3JvdXBFbExpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcbiAgICAvLyBASG9zdEJpbmRpbmcoJ2NsYXNzLnBhZ2UtY29udGVudCcpIHBhZ2VDb250ZW50Q2xhc3MgPSB0cnVlO1xuXG4gICAgQFZpZXdDaGlsZHJlbihUYWJQYW5lbENvbXBvbmVudCkgdGFiUGFuZWxDb21wb25lbnRzOiBRdWVyeUxpc3Q8VGFiUGFuZWxDb21wb25lbnQ+O1xuICAgIEBJbnB1dCgpIHNldHRpbmdzOiBTZXJ2aWNlRGVza0hlYWRlclNldHRpbmc7XG4gICAgc2VsZWN0ZWRUYWJJbmRleCA9IDA7XG4gICAgaGVpZ2h0T2ZTcGFjZUhvbGRlciA9IDg4O1xuICAgIHRhYlNpemU6IFRhYlNpemVzO1xuICAgIHNlYXJjaFRlcm0kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgc2VhcmNoVGVybSA9ICcnO1xuICAgIGRldmljZVNpemUkOiBPYnNlcnZhYmxlPEFiYnJldmF0aW9uRGV2aWNlU2l6ZT47XG4gICAgcHJpdmF0ZSBfZW5hYmxlU2Nyb2xsID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfZGlzYWJsZUludGVyc2VjdGlvbjogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9pc0Zvcm1PcGVuZWQ6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfc3RpY2t5VG9wUG9zaXRpb24gPSA2NjtcbiAgICBwcml2YXRlIG9ic2VydmVyTGlzdDogeyBlbDogYW55OyBvYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgfVtdID0gW107XG4gICAgcHJpdmF0ZSBfbGFzdFNjcm9sbFBvczogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1ZpZXdlclNlcnZpY2U6IFRpbGVzVmlld2VyU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIF92aWV3cG9ydFNjcm9sbGVyOiBWaWV3cG9ydFNjcm9sbGVyLFxuICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9wb3J0YWxTZXJ2aWNlLCBfdGlsZXNTZXJ2aWNlLCBfdGlsZXNWaWV3ZXJTZXJ2aWNlKTtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICAgICAgcm9vdC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hYnNvbHV0ZS1wYWdlLXRvcCcsIHRoaXMuX3N0aWNreVRvcFBvc2l0aW9uICsgJ3B4Jyk7XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnNlYXJjaFRlcm0kLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHRlcm0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybSA9IHRlcm07XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzJC5zdWJzY3JpYmUoKGFwcFRpbGVHcm91cHMpID0+XG4gICAgICAgICAgICBhcHBUaWxlR3JvdXBzLmZvckVhY2goKGMpID0+IHRoaXMuX3RpbGVzVmlld2VyU2VydmljZS5sb2FkQXBwR3JvdXAoYykpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMubmF2SG9sZGVyLm5hdGl2ZUVsZW1lbnQsICd0b3AnLCB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbiArICdweCcpO1xuXG4gICAgICAgIHRoaXMuc2V0R3JpZFRlbXBsYXRlUm93cyh0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIpO1xuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIGxldCBuZXdIZWlnaHQgPSB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXI7XG4gICAgICAgICAgICB0aGlzLnRhYlNpemUgPSBjO1xuICAgICAgICAgICAgaWYgKGMgPT09ICdzJykge1xuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDg4O1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnbScpIHtcbiAgICAgICAgICAgICAgICBuZXdIZWlnaHQgPSAyMjA7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICdsJykge1xuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDI1MDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gMzI1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbmV3SGVpZ2h0ID0gODg7XG4gICAgICAgICAgICBpZiAodGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyICE9PSBuZXdIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIgPSBuZXdIZWlnaHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRHcmlkVGVtcGxhdGVSb3dzKG5ld0hlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRldmljZVNpemUgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemU7XG4gICAgICAgIGxldCBzdGlja3lUb3BQb3NpdGlvbiA9IDIwO1xuICAgICAgICBpZiAoZGV2aWNlU2l6ZSA9PT0gJ3MnKSB7XG4gICAgICAgICAgICBzdGlja3lUb3BQb3NpdGlvbiA9IDYwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N0aWNreURvbSh0aGlzLmFib3ZlU2VhcmNoLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsIC1zdGlja3lUb3BQb3NpdGlvbiwgJ3N0aWNreScpO1xuICAgICAgICB0aGlzLl9zdGlja3lEb20oXG4gICAgICAgICAgICB0aGlzLmFib3ZlQ29udGVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgdGhpcy5uYXZIb2xkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICdzdGlja3knXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3N0aWNreURvbShcbiAgICAgICAgICAgIHRoaXMuYWJvdmVDb250ZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLmJnT3V0ZXJIb2xkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICdzdGlja3knLFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuYmdPdXRlckhvbGRlci5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgdGhpcy5fc3RpY2t5VG9wUG9zaXRpb24gKyAncHgnKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5iZ091dGVySG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCAnMTAwJScpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9zdGlja3lEb20oXG4gICAgICAgICAgICB0aGlzLmFib3ZlU2VhcmNoLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC1zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICduYXZBbmRDb250ZW50X3RiJyxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcsICd0cnVlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fZW5hYmxlU2Nyb2xsID0gdHJ1ZTtcbiAgICAgICAgfSwgMTAwMCk7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UubmF2aWdhdGlvblN0YXJ0JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbGFzdFNjcm9sbFBvcyA9IHdpbmRvdy5zY3JvbGxZO1xuICAgICAgICAgICAgaWYgKGV2ZW50ID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGV2ZW50Py51cmwgIT09ICcvaG9tZScgJiYgZXZlbnQ/LnVybCAhPT0gJy8nICYmICF0aGlzLl9kaXNhYmxlSW50ZXJzZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVwYXJlRm9ybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5uYXZpZ2F0aW9uRW5kJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50ICE9PSBudWxsICYmIChldmVudD8udXJsID09PSAnL2hvbWUnIHx8IGV2ZW50Py51cmwgPT09ICcvJykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVuUHJlcGFyZUZvcm0oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG9uU2VhcmNoU3VibWl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGVCeVVybCgnaG9tZS9zZWFyY2g/dGVybT0nICsgdGhpcy5zZWFyY2hUZXJtKTtcbiAgICAgICAgLy8gdmFyIHNlYXJjaE1vID0gQmFyc2FBcGkuQncuUnVuQmxNZXRob2QoJ0dldFNlYXJjaE1vJywgdGhpcy5zZWFyY2hUZXJtKTtcbiAgICAgICAgLy8gQmFyc2FBcGkuQncuRm9ybS5TaG93KHsgTW86IHNlYXJjaE1vIH0pO1xuICAgIH1cbiAgICBwcmVwYXJlRm9ybSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRhY2goKTtcbiAgICAgICAgdGhpcy5kaXNjb25uZWN0SW50ZXJzY3Rpb25PYnNlcnZlckxpc3QoKTtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2hpZGUnKTtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29udGVudChmYWxzZSk7XG4gICAgICAgIGNvbnN0IGZsYWdzID0gUmVuZGVyZXJTdHlsZUZsYWdzMi5JbXBvcnRhbnQ7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmJvZHksICdvdmVyZmxvdycsICdoaWRkZW4nLCBmbGFncyk7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgICB9XG4gICAgdW5QcmVwYXJlRm9ybSgpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5zZXRIZWlnaHRTZWFyY2hIb2xkZXIodGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyKTtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29udGVudCh0cnVlKTtcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xuXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoaWRlJyk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnaGlkZScpO1xuICAgICAgICBjb25zdCBmbGFncyA9IFJlbmRlcmVyU3R5bGVGbGFnczIuSW1wb3J0YW50O1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnLCAnYXV0bycsIGZsYWdzKTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xuICAgICAgICB0aGlzLl9jZHIucmVhdHRhY2goKTtcbiAgICAgICAgdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpO1xuICAgIH1cbiAgICBzZXRIZWlnaHRTZWFyY2hIb2xkZXIoaGVpZ2h0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuaGVhZGVyU3BhY2VIb2xkZXIubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xuICAgIH1cbiAgICB2aXNpYmxlQ29udGVudCh2aXNpYmxlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnZGlzcGxheScsIHZpc2libGUgPyAnZmxleCcgOiAnbm9uZScpO1xuICAgIH1cblxuICAgIHNldEdyaWRUZW1wbGF0ZVJvd3MoaGVpZ2h0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoXG4gICAgICAgICAgICB0aGlzLmhlYWRlckdyaWQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdncmlkLXRlbXBsYXRlLXJvd3MnLFxuICAgICAgICAgICAgYG1pbm1heCg3OHB4LCAxNSUpIDQ2cHggMzJweCAxZnIgYXV0byAxMiU7IGhlaWdodDoke2hlaWdodH1weGBcbiAgICAgICAgKTtcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5oZWFkZXJHcmlkLm5hdGl2ZUVsZW1lbnQsICdiYWNrZ3JvdW5kLWNvbG9yJywgYHJlZGApO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhlYWRlclNwYWNlSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHtoZWlnaHR9cHhgKTtcbiAgICB9XG4gICAgb25TZWxlY3RlZFRhYkNoYW5nZTMoc2VsZWN0ZWRUYWI6IFRhYlBhbmVsQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkVGFiLmlkID09PSAnMCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlbGVtZW50UmVmT2ZzZWxlY3RlZFRpbGVHcm91cDogSFRNTEVsZW1lbnQgPSB0aGlzLnRpbGVzVmlld2VyR3JvdXBFbExpc3QuZ2V0KFxuICAgICAgICAgICAgTnVtYmVyKHNlbGVjdGVkVGFiLmlkKVxuICAgICAgICApPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGVsZW1lbnRSZWZPZnNlbGVjdGVkVGlsZUdyb3VwLnNjcm9sbEludG9WaWV3KHtcbiAgICAgICAgICAgIGJsb2NrOiAnc3RhcnQnXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBwcml2YXRlIHNjcm9sbFRvTGFzdFBvcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmlld3BvcnRTY3JvbGxlci5zY3JvbGxUb1Bvc2l0aW9uKFswLCB0aGlzLl9sYXN0U2Nyb2xsUG9zXSk7XG4gICAgfVxuICAgIHByaXZhdGUgc2Nyb2xsVG9Ub3AoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9lbmFibGVTY3JvbGwpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9Qb3NpdGlvbihbMCwgdGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyIC0gdGhpcy5fc3RpY2t5VG9wUG9zaXRpb25dKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcml2YXRlIGRpc2Nvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QuZm9yRWFjaCgoYykgPT4gYy5vYnNlcnZlci5kaXNjb25uZWN0KCkpO1xuICAgIH1cbiAgICBwcml2YXRlIGNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QuZm9yRWFjaCgoYykgPT4gYy5vYnNlcnZlci5vYnNlcnZlKGMuZWwpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdGlja3lEb20oXG4gICAgICAgIGFib3ZlLFxuICAgICAgICBob2xkZXIsXG4gICAgICAgIG1hcmdpblRvcCxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICB2aXNpYmxlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkLFxuICAgICAgICBoaWRkZW5DYWxsQmFjaz86ICgpID0+IHZvaWRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChlbnRyaWVzKTogdm9pZCA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbikge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghZW50cmllc1swXS5pc0ludGVyc2VjdGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKGhvbGRlciwgY2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZpc2libGVDYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmxlQ2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKGhvbGRlciwgY2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGhpZGRlbkNhbGxCYWNrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbkNhbGxCYWNrKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgcm9vdE1hcmdpbjogYCR7bWFyZ2luVG9wfXB4IDBweCAwcHggMHB4YCxcbiAgICAgICAgICAgIHRocmVzaG9sZDogMC4xXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IHdpbmRvdy5JbnRlcnNlY3Rpb25PYnNlcnZlcihoYW5kbGVyLCBvcHRpb25zKTtcblxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGFib3ZlKTtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QucHVzaCh7IGVsOiBhYm92ZSwgb2JzZXJ2ZXIgfSk7XG4gICAgfVxufVxuXG5pbnRlcmZhY2UgU2VydmljZURlc2tIZWFkZXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgSGlkZVNlYXJjaDogYm9vbGVhbjtcbn1cbiIsIjxkaXYgaWQ9XCJoZWFkZXJHcmlkXCIgc3R5bGU9XCJncmlkLXRlbXBsYXRlLXJvd3M6IG1pbm1heCgxcHgsIDE1JSkgNDhweCAzMnB4IDFmciBhdXRvIDEyJTsgaGVpZ2h0OiAxNDhweFwiICNoZWFkZXJHcmlkPlxuICAgIDxkaXYgY2xhc3M9XCJjb21wYW55TG9nb0hvbGRlcl9hYm92ZVNlYXJjaFwiICNhYm92ZVNlYXJjaD48L2Rpdj5cbiAgICA8ZGl2IGlkPVwic2VhcmNoSG9sZGVyXCIgc3R5bGU9XCJncmlkLXJvdzogMlwiICNzZWFyY2hIb2xkZXI+XG4gICAgICAgIDxmZC1pbnB1dC1ncm91cFxuICAgICAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwic2V0dGluZ3M/LkhpZGVTZWFyY2ggPyAnbm9uZScgOiBudWxsXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtc2VhcmNoXCJcbiAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5PVwiY296eVwiXG4gICAgICAgICAgICBmZC10b29sYmFyLWl0ZW1cbiAgICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAgICAgZ2x5cGg9XCJzZWFyY2hcIlxuICAgICAgICAgICAgZ2x5cGhBcmlhTGFiZWw9XCJTZWFyY2hcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIlxuICAgICAgICAgICAgW2J1dHRvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRlcm1cIlxuICAgICAgICAgICAgKGFkZE9uQnV0dG9uQ2xpY2tlZCk9XCJvblNlYXJjaFN1Ym1pdCgpXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLWlucHV0LWdyb3VwPlxuICAgIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGlkPVwiaGVhZGVyU3BhY2VIb2xkZXJcIiAjaGVhZGVyU3BhY2VIb2xkZXI+XG4gICAgPGRpdiBpZD1cImJnT3V0ZXJIb2xkZXJcIiAjYmdPdXRlckhvbGRlcj5cbiAgICAgICAgPGRpdiBpZD1cImJnSW5uZXJIb2xkZXJcIiBzdHlsZT1cImhlaWdodDogMTAwdmhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWNrZ3JvdW5kSW1hZ2VcIiBpZD1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwaWN0dXJlXCIgc3JjPVwiL2Fzc2V0cy9iYWNrLmpwZ1wiIGxvYWRpbmc9XCJsYXp5XCIgLz5cbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cImJhY2tncm91bmRJbWFnZU92ZXJsYXlcIiBjbGFzcz1cIm92ZXJsYXlcIj48L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgaWQ9XCJjb250ZW50SG9sZGVyQW5kTmF2XCIgZmlyc3Q9XCJ0cnVlXCIgI2NvbnRlbnRBbmROYXY+XG4gICAgPGRpdiBjbGFzcz1cImFib3ZlQ29udGVudFwiICNhYm92ZUNvbnRlbnQ+PC9kaXY+XG4gICAgPGRpdiBpZD1cImNvbnRlbnRIb2xkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdlwiICNuYXZIb2xkZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJUYWJzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGFwcFRpbGVHcm91cHMkIHwgYXN5bmMpISEgfVwiXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2X3N1cnJvZ2F0ZVwiIHN0eWxlPVwiaGVpZ2h0OiAxMHB4XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LWZlZWRcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInJlbmRlckdyb3VwczsgY29udGV4dDogeyAkaW1wbGljaXQ6IChhcHBUaWxlR3JvdXBzJCB8IGFzeW5jKSEhIH1cIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNyZW5kZXJUYWJzIGxldC1hcHBUaWxlR3JvdXBzPlxuICAgIDxmZC10YWItbGlzdFxuICAgICAgICBbc2l6ZV09XCJ0YWJTaXplXCJcbiAgICAgICAgW2NvbGxhcHNlT3ZlcmZsb3ddPVwidGFiU2l6ZSA9PT0gJ3MnIHx8IGFwcFRpbGVHcm91cHMubGVuZ3RoID4gNVwiXG4gICAgICAgIFtleHBhbmRPdmVyZmxvd1RleHRdPVwiJ01vcmUnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgKHNlbGVjdGVkVGFiQ2hhbmdlKT1cIm9uU2VsZWN0ZWRUYWJDaGFuZ2UzKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPGZkLXRhYlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFwcFRpbGVHcm91cCBvZiBhcHBUaWxlR3JvdXBzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgIFtpZF09XCInJyArIGlcIlxuICAgICAgICAgICAgW3RpdGxlXT1cImFwcFRpbGVHcm91cC5uYXZpZ2F0b3JUaXRsZVwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC10YWI+XG4gICAgPC9mZC10YWItbGlzdD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI3JlbmRlckdyb3VwcyBsZXQtYXBwVGlsZUdyb3Vwcz5cbiAgICA8YnQtdGlsZXMtdmlld2VyLWdyb3VwXG4gICAgICAgICpuZ0Zvcj1cImxldCBhcHBUaWxlR3JvdXAgb2YgYXBwVGlsZUdyb3VwczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIFthdHRyLmluZGV4XT1cImlcIlxuICAgICAgICBbYXBwVGlsZUdyb3VwXT1cImFwcFRpbGVHcm91cFwiXG4gICAgICAgIFtlZGl0XT1cImZhbHNlXCJcbiAgICAgICAgW3N0YWNrQ29udGVudF09XCJ0cnVlXCJcbiAgICAgICAgW2lzQXBwVGlsZVN1Ykdyb3VwXT1cImZhbHNlXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiKGRldmljZVNpemUkIHwgYXN5bmMpISFcIlxuICAgID48L2J0LXRpbGVzLXZpZXdlci1ncm91cD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLWhlYWRlci9zZXJ2aWNlLWRlc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUVqQixVQUFVLEVBQ1YsU0FBUyxFQUVULFlBQVksRUFHWixtQkFBbUIsRUFDbkIsS0FBSyxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFZLE1BQU0sdUJBQXVCLENBQUM7QUFFcEUsT0FBTyxFQUNILDZCQUE2QixFQUM3QixrQkFBa0IsRUFFbEIseUJBQXlCLEVBQzVCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7O0FBVXJCLE1BQU0sT0FBTywwQkFBMkIsU0FBUSw2QkFBNkI7SUEyQnpFLFlBQ2MsY0FBNkIsRUFDN0IsYUFBMkIsRUFDM0IsbUJBQXVDLEVBQ3ZDLFNBQW9CLEVBQ3RCLGlCQUFtQyxFQUNuQyxJQUF1QixFQUN2QixPQUFlLEVBQ2YsZUFBK0I7UUFFdkMsS0FBSyxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQVRoRCxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3QixrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQW9CO1FBQ3ZDLGNB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QUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0csWUFBWTtzQkFBeEQsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNELFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDSyxZQUFZO3NCQUF4RCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0csYUFBYTtzQkFBMUQsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNFLGFBQWE7c0JBQTFELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDbUIsc0JBQXNCO3NCQUFwRixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFHNUIsa0JBQWtCO3NCQUFsRCxZQUFZO3VCQUFDLGlCQUFpQjtnQkFDdEIsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgUXVlcnlMaXN0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIFJlbmRlcmVyU3R5bGVGbGFnczIsXG4gICAgSW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFZpZXdwb3J0U2Nyb2xsZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUYWJQYW5lbENvbXBvbmVudCwgVGFiU2l6ZXMgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgUG9ydGFsU2VydmljZSwgQWJicmV2YXRpb25EZXZpY2VTaXplIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHtcbiAgICBUaWxlc1ZpZXdlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBUaWxlc1ZpZXdlclNlcnZpY2UsXG4gICAgVGlsZXNTZXJ2aWNlLFxuICAgIFRpbGVzVmlld2VyR3JvdXBDb21wb25lbnRcbn0gZnJvbSAnYmFyc2EtdGlsZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JkYy1zZXJ2aWNlLWRlc2staGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1RpbGVzVmlld2VyU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlRGVza0hlYWRlckNvbXBvbmVudCBleHRlbmRzIFRpbGVzVmlld2VyQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgICBAVmlld0NoaWxkKCdoZWFkZXJTcGFjZUhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIGhlYWRlclNwYWNlSG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnaGVhZGVyR3JpZCcsIHsgc3RhdGljOiB0cnVlIH0pIGhlYWRlckdyaWQ6IEVsZW1lbnRSZWY8YW55PjtcbiAgICBAVmlld0NoaWxkKCdhYm92ZVNlYXJjaCcsIHsgc3RhdGljOiB0cnVlIH0pIGFib3ZlU2VhcmNoOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnc2VhcmNoSG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgc2VhcmNoSG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnbmF2SG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgbmF2SG9sZGVyOiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnYWJvdmVDb250ZW50JywgeyBzdGF0aWM6IHRydWUgfSkgYWJvdmVDb250ZW50OiBFbGVtZW50UmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnYmdPdXRlckhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIGJnT3V0ZXJIb2xkZXI6IEVsZW1lbnRSZWY8YW55PjtcbiAgICBAVmlld0NoaWxkKCdjb250ZW50QW5kTmF2JywgeyBzdGF0aWM6IHRydWUgfSkgY29udGVudEFuZE5hdjogRWxlbWVudFJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGRyZW4oVGlsZXNWaWV3ZXJHcm91cENvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHRpbGVzVmlld2VyR3JvdXBFbExpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcbiAgICAvLyBASG9zdEJpbmRpbmcoJ2NsYXNzLnBhZ2UtY29udGVudCcpIHBhZ2VDb250ZW50Q2xhc3MgPSB0cnVlO1xuXG4gICAgQFZpZXdDaGlsZHJlbihUYWJQYW5lbENvbXBvbmVudCkgdGFiUGFuZWxDb21wb25lbnRzOiBRdWVyeUxpc3Q8VGFiUGFuZWxDb21wb25lbnQ+O1xuICAgIEBJbnB1dCgpIHNldHRpbmdzOiBTZXJ2aWNlRGVza0hlYWRlclNldHRpbmc7XG4gICAgc2VsZWN0ZWRUYWJJbmRleCA9IDA7XG4gICAgaGVpZ2h0T2ZTcGFjZUhvbGRlciA9IDg4O1xuICAgIHRhYlNpemU6IFRhYlNpemVzO1xuICAgIHNlYXJjaFRlcm0kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgc2VhcmNoVGVybSA9ICcnO1xuICAgIGRldmljZVNpemUkOiBPYnNlcnZhYmxlPEFiYnJldmF0aW9uRGV2aWNlU2l6ZT47XG4gICAgcHJpdmF0ZSBfZW5hYmxlU2Nyb2xsID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfZGlzYWJsZUludGVyc2VjdGlvbjogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9pc0Zvcm1PcGVuZWQ6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfc3RpY2t5VG9wUG9zaXRpb24gPSA2NjtcbiAgICBwcml2YXRlIG9ic2VydmVyTGlzdDogeyBlbDogYW55OyBvYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgfVtdID0gW107XG4gICAgcHJpdmF0ZSBfbGFzdFNjcm9sbFBvczogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1ZpZXdlclNlcnZpY2U6IFRpbGVzVmlld2VyU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIF92aWV3cG9ydFNjcm9sbGVyOiBWaWV3cG9ydFNjcm9sbGVyLFxuICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9wb3J0YWxTZXJ2aWNlLCBfdGlsZXNTZXJ2aWNlLCBfdGlsZXNWaWV3ZXJTZXJ2aWNlKTtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICAgICAgcm9vdC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hYnNvbHV0ZS1wYWdlLXRvcCcsIHRoaXMuX3N0aWNreVRvcFBvc2l0aW9uICsgJ3B4Jyk7XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnNlYXJjaFRlcm0kLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHRlcm0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybSA9IHRlcm07XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzJC5zdWJzY3JpYmUoKGFwcFRpbGVHcm91cHMpID0+XG4gICAgICAgICAgICBhcHBUaWxlR3JvdXBzLmZvckVhY2goKGMpID0+IHRoaXMuX3RpbGVzVmlld2VyU2VydmljZS5sb2FkQXBwR3JvdXAoYykpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMubmF2SG9sZGVyLm5hdGl2ZUVsZW1lbnQsICd0b3AnLCB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbiArICdweCcpO1xuXG4gICAgICAgIHRoaXMuc2V0R3JpZFRlbXBsYXRlUm93cyh0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIpO1xuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIGxldCBuZXdIZWlnaHQgPSB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXI7XG4gICAgICAgICAgICB0aGlzLnRhYlNpemUgPSBjO1xuICAgICAgICAgICAgaWYgKGMgPT09ICdzJykge1xuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDg4O1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnbScpIHtcbiAgICAgICAgICAgICAgICBuZXdIZWlnaHQgPSAyMjA7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICdsJykge1xuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDI1MDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gMzI1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbmV3SGVpZ2h0ID0gODg7XG4gICAgICAgICAgICBpZiAodGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyICE9PSBuZXdIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIgPSBuZXdIZWlnaHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRHcmlkVGVtcGxhdGVSb3dzKG5ld0hlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRldmljZVNpemUgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemU7XG4gICAgICAgIGxldCBzdGlja3lUb3BQb3NpdGlvbiA9IDIwO1xuICAgICAgICBpZiAoZGV2aWNlU2l6ZSA9PT0gJ3MnKSB7XG4gICAgICAgICAgICBzdGlja3lUb3BQb3NpdGlvbiA9IDYwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N0aWNreURvbSh0aGlzLmFib3ZlU2VhcmNoLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsIC1zdGlja3lUb3BQb3NpdGlvbiwgJ3N0aWNreScpO1xuICAgICAgICB0aGlzLl9zdGlja3lEb20oXG4gICAgICAgICAgICB0aGlzLmFib3ZlQ29udGVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgdGhpcy5uYXZIb2xkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICdzdGlja3knXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX3N0aWNreURvbShcbiAgICAgICAgICAgIHRoaXMuYWJvdmVDb250ZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLmJnT3V0ZXJIb2xkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICdzdGlja3knLFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuYmdPdXRlckhvbGRlci5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgdGhpcy5fc3RpY2t5VG9wUG9zaXRpb24gKyAncHgnKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5iZ091dGVySG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCAnMTAwJScpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9zdGlja3lEb20oXG4gICAgICAgICAgICB0aGlzLmFib3ZlU2VhcmNoLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIC1zdGlja3lUb3BQb3NpdGlvbixcbiAgICAgICAgICAgICduYXZBbmRDb250ZW50X3RiJyxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcsICd0cnVlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fZW5hYmxlU2Nyb2xsID0gdHJ1ZTtcbiAgICAgICAgfSwgMTAwMCk7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UubmF2aWdhdGlvblN0YXJ0JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbGFzdFNjcm9sbFBvcyA9IHdpbmRvdy5zY3JvbGxZO1xuICAgICAgICAgICAgaWYgKGV2ZW50ID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGV2ZW50Py51cmwgIT09ICcvaG9tZScgJiYgZXZlbnQ/LnVybCAhPT0gJy8nICYmICF0aGlzLl9kaXNhYmxlSW50ZXJzZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVwYXJlRm9ybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5uYXZpZ2F0aW9uRW5kJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50ICE9PSBudWxsICYmIChldmVudD8udXJsID09PSAnL2hvbWUnIHx8IGV2ZW50Py51cmwgPT09ICcvJykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVuUHJlcGFyZUZvcm0oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG9uU2VhcmNoU3VibWl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGVCeVVybCgnaG9tZS9zZWFyY2g/dGVybT0nICsgdGhpcy5zZWFyY2hUZXJtKTtcbiAgICAgICAgLy8gdmFyIHNlYXJjaE1vID0gQmFyc2FBcGkuQncuUnVuQmxNZXRob2QoJ0dldFNlYXJjaE1vJywgdGhpcy5zZWFyY2hUZXJtKTtcbiAgICAgICAgLy8gQmFyc2FBcGkuQncuRm9ybS5TaG93KHsgTW86IHNlYXJjaE1vIH0pO1xuICAgIH1cbiAgICBwcmVwYXJlRm9ybSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbiA9IHRydWU7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRhY2goKTtcbiAgICAgICAgdGhpcy5kaXNjb25uZWN0SW50ZXJzY3Rpb25PYnNlcnZlckxpc3QoKTtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2hpZGUnKTtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29udGVudChmYWxzZSk7XG4gICAgICAgIGNvbnN0IGZsYWdzID0gUmVuZGVyZXJTdHlsZUZsYWdzMi5JbXBvcnRhbnQ7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmJvZHksICdvdmVyZmxvdycsICdoaWRkZW4nLCBmbGFncyk7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgICB9XG4gICAgdW5QcmVwYXJlRm9ybSgpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5zZXRIZWlnaHRTZWFyY2hIb2xkZXIodGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyKTtcbiAgICAgICAgdGhpcy52aXNpYmxlQ29udGVudCh0cnVlKTtcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xuXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoaWRlJyk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnaGlkZScpO1xuICAgICAgICBjb25zdCBmbGFncyA9IFJlbmRlcmVyU3R5bGVGbGFnczIuSW1wb3J0YW50O1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnLCAnYXV0bycsIGZsYWdzKTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xuICAgICAgICB0aGlzLl9jZHIucmVhdHRhY2goKTtcbiAgICAgICAgdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpO1xuICAgIH1cbiAgICBzZXRIZWlnaHRTZWFyY2hIb2xkZXIoaGVpZ2h0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuaGVhZGVyU3BhY2VIb2xkZXIubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xuICAgIH1cbiAgICB2aXNpYmxlQ29udGVudCh2aXNpYmxlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnZGlzcGxheScsIHZpc2libGUgPyAnZmxleCcgOiAnbm9uZScpO1xuICAgIH1cblxuICAgIHNldEdyaWRUZW1wbGF0ZVJvd3MoaGVpZ2h0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoXG4gICAgICAgICAgICB0aGlzLmhlYWRlckdyaWQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdncmlkLXRlbXBsYXRlLXJvd3MnLFxuICAgICAgICAgICAgYG1pbm1heCg3OHB4LCAxNSUpIDQ2cHggMzJweCAxZnIgYXV0byAxMiU7IGhlaWdodDoke2hlaWdodH1weGBcbiAgICAgICAgKTtcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5oZWFkZXJHcmlkLm5hdGl2ZUVsZW1lbnQsICdiYWNrZ3JvdW5kLWNvbG9yJywgYHJlZGApO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhlYWRlclNwYWNlSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHtoZWlnaHR9cHhgKTtcbiAgICB9XG4gICAgb25TZWxlY3RlZFRhYkNoYW5nZTMoc2VsZWN0ZWRUYWI6IFRhYlBhbmVsQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkVGFiLmlkID09PSAnMCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlbGVtZW50UmVmT2ZzZWxlY3RlZFRpbGVHcm91cDogSFRNTEVsZW1lbnQgPSB0aGlzLnRpbGVzVmlld2VyR3JvdXBFbExpc3QuZ2V0KFxuICAgICAgICAgICAgTnVtYmVyKHNlbGVjdGVkVGFiLmlkKVxuICAgICAgICApPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGVsZW1lbnRSZWZPZnNlbGVjdGVkVGlsZUdyb3VwLnNjcm9sbEludG9WaWV3KHtcbiAgICAgICAgICAgIGJsb2NrOiAnc3RhcnQnXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBwcml2YXRlIHNjcm9sbFRvTGFzdFBvcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmlld3BvcnRTY3JvbGxlci5zY3JvbGxUb1Bvc2l0aW9uKFswLCB0aGlzLl9sYXN0U2Nyb2xsUG9zXSk7XG4gICAgfVxuICAgIHByaXZhdGUgc2Nyb2xsVG9Ub3AoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9lbmFibGVTY3JvbGwpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9Qb3NpdGlvbihbMCwgdGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyIC0gdGhpcy5fc3RpY2t5VG9wUG9zaXRpb25dKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcml2YXRlIGRpc2Nvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QuZm9yRWFjaCgoYykgPT4gYy5vYnNlcnZlci5kaXNjb25uZWN0KCkpO1xuICAgIH1cbiAgICBwcml2YXRlIGNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QuZm9yRWFjaCgoYykgPT4gYy5vYnNlcnZlci5vYnNlcnZlKGMuZWwpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdGlja3lEb20oXG4gICAgICAgIGFib3ZlLFxuICAgICAgICBob2xkZXIsXG4gICAgICAgIG1hcmdpblRvcCxcbiAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICB2aXNpYmxlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkLFxuICAgICAgICBoaWRkZW5DYWxsQmFjaz86ICgpID0+IHZvaWRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChlbnRyaWVzKTogdm9pZCA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbikge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghZW50cmllc1swXS5pc0ludGVyc2VjdGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKGhvbGRlciwgY2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZpc2libGVDYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmxlQ2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKGhvbGRlciwgY2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGhpZGRlbkNhbGxCYWNrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbkNhbGxCYWNrKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgcm9vdE1hcmdpbjogYCR7bWFyZ2luVG9wfXB4IDBweCAwcHggMHB4YCxcbiAgICAgICAgICAgIHRocmVzaG9sZDogMC4xXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IHdpbmRvdy5JbnRlcnNlY3Rpb25PYnNlcnZlcihoYW5kbGVyLCBvcHRpb25zKTtcblxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGFib3ZlKTtcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QucHVzaCh7IGVsOiBhYm92ZSwgb2JzZXJ2ZXIgfSk7XG4gICAgfVxufVxuXG5pbnRlcmZhY2UgU2VydmljZURlc2tIZWFkZXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgSGlkZVNlYXJjaDogYm9vbGVhbjtcbn1cbiIsIjxkaXYgaWQ9XCJoZWFkZXJHcmlkXCIgc3R5bGU9XCJncmlkLXRlbXBsYXRlLXJvd3M6IG1pbm1heCgxcHgsIDE1JSkgNDhweCAzMnB4IDFmciBhdXRvIDEyJTsgaGVpZ2h0OiAxNDhweFwiICNoZWFkZXJHcmlkPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbXBhbnlMb2dvSG9sZGVyX2Fib3ZlU2VhcmNoXCIgI2Fib3ZlU2VhcmNoPjwvZGl2PlxyXG4gICAgPGRpdiBpZD1cInNlYXJjaEhvbGRlclwiIHN0eWxlPVwiZ3JpZC1yb3c6IDJcIiAjc2VhcmNoSG9sZGVyPlxyXG4gICAgICAgIDxmZC1pbnB1dC1ncm91cFxyXG4gICAgICAgICAgICBbc3R5bGUuZGlzcGxheV09XCJzZXR0aW5ncz8uSGlkZVNlYXJjaCA/ICdub25lJyA6IG51bGxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImlucHV0LXNlYXJjaFwiXHJcbiAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5PVwiY296eVwiXHJcbiAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxyXG4gICAgICAgICAgICB0eXBlPVwic2VhcmNoXCJcclxuICAgICAgICAgICAgZ2x5cGg9XCJzZWFyY2hcIlxyXG4gICAgICAgICAgICBnbHlwaEFyaWFMYWJlbD1cIlNlYXJjaFwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoXCJcclxuICAgICAgICAgICAgW2J1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcclxuICAgICAgICAgICAgKGFkZE9uQnV0dG9uQ2xpY2tlZCk9XCJvblNlYXJjaFN1Ym1pdCgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9mZC1pbnB1dC1ncm91cD5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiBpZD1cImhlYWRlclNwYWNlSG9sZGVyXCIgI2hlYWRlclNwYWNlSG9sZGVyPlxyXG4gICAgPGRpdiBpZD1cImJnT3V0ZXJIb2xkZXJcIiAjYmdPdXRlckhvbGRlcj5cclxuICAgICAgICA8ZGl2IGlkPVwiYmdJbm5lckhvbGRlclwiIHN0eWxlPVwiaGVpZ2h0OiAxMDB2aFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFja2dyb3VuZEltYWdlXCIgaWQ9XCJiYWNrZ3JvdW5kSW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwaWN0dXJlXCIgc3JjPVwiL2Fzc2V0cy9iYWNrLmpwZ1wiIGxvYWRpbmc9XCJsYXp5XCIgLz5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiYmFja2dyb3VuZEltYWdlT3ZlcmxheVwiIGNsYXNzPVwib3ZlcmxheVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJjb250ZW50SG9sZGVyQW5kTmF2XCIgZmlyc3Q9XCJ0cnVlXCIgI2NvbnRlbnRBbmROYXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYWJvdmVDb250ZW50XCIgI2Fib3ZlQ29udGVudD48L2Rpdj5cclxuICAgIDxkaXYgaWQ9XCJjb250ZW50SG9sZGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdlwiICNuYXZIb2xkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJUYWJzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGFwcFRpbGVHcm91cHMkIHwgYXN5bmMpISEgfVwiXHJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXZfc3Vycm9nYXRlXCIgc3R5bGU9XCJoZWlnaHQ6IDEwcHhcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1mZWVkXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyR3JvdXBzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGFwcFRpbGVHcm91cHMkIHwgYXN5bmMpISEgfVwiXHJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPG5nLXRlbXBsYXRlICNyZW5kZXJUYWJzIGxldC1hcHBUaWxlR3JvdXBzPlxyXG4gICAgPGZkLXRhYi1saXN0XHJcbiAgICAgICAgW3NpemVdPVwidGFiU2l6ZVwiXHJcbiAgICAgICAgW2NvbGxhcHNlT3ZlcmZsb3ddPVwidGFiU2l6ZSA9PT0gJ3MnIHx8IGFwcFRpbGVHcm91cHMubGVuZ3RoID4gNVwiXHJcbiAgICAgICAgW2V4cGFuZE92ZXJmbG93VGV4dF09XCInTW9yZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgIChzZWxlY3RlZFRhYkNoYW5nZSk9XCJvblNlbGVjdGVkVGFiQ2hhbmdlMygkZXZlbnQpXCJcclxuICAgID5cclxuICAgICAgICA8ZmQtdGFiXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhcHBUaWxlR3JvdXAgb2YgYXBwVGlsZUdyb3VwczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgIFtpZF09XCInJyArIGlcIlxyXG4gICAgICAgICAgICBbdGl0bGVdPVwiYXBwVGlsZUdyb3VwLm5hdmlnYXRvclRpdGxlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9mZC10YWI+XHJcbiAgICA8L2ZkLXRhYi1saXN0PlxyXG48L25nLXRlbXBsYXRlPlxyXG48bmctdGVtcGxhdGUgI3JlbmRlckdyb3VwcyBsZXQtYXBwVGlsZUdyb3Vwcz5cclxuICAgIDxidC10aWxlcy12aWV3ZXItZ3JvdXBcclxuICAgICAgICAqbmdGb3I9XCJsZXQgYXBwVGlsZUdyb3VwIG9mIGFwcFRpbGVHcm91cHM7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgIFthdHRyLmluZGV4XT1cImlcIlxyXG4gICAgICAgIFthcHBUaWxlR3JvdXBdPVwiYXBwVGlsZUdyb3VwXCJcclxuICAgICAgICBbZWRpdF09XCJmYWxzZVwiXHJcbiAgICAgICAgW3N0YWNrQ29udGVudF09XCJ0cnVlXCJcclxuICAgICAgICBbaXNBcHBUaWxlU3ViR3JvdXBdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcclxuICAgID48L2J0LXRpbGVzLXZpZXdlci1ncm91cD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19