@tuki-io/tuki-widgets 0.0.148 → 0.0.150

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/esm2020/contact-center/cc-readiness/cc-readiness.module.mjs +1 -1
  2. package/esm2020/contact-center/cc-readiness/cc-readiness.service.mjs +1 -1
  3. package/esm2020/contact-center/cc-readiness/widgets/licences-requirement/licences-requirement.component.mjs +3 -3
  4. package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +3 -3
  5. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +2 -2
  6. package/esm2020/user-device-manage/src/app.constants.mjs +1 -1
  7. package/esm2020/user-device-manage/src/classes/deviceProfile.mjs +1 -1
  8. package/esm2020/user-device-manage/src/device-info/device-info.component.mjs +3 -3
  9. package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  10. package/esm2020/user-device-manage/src/pipes/mac-address.pipe.mjs +1 -1
  11. package/esm2020/user-device-manage/src/services/user.service.mjs +1 -1
  12. package/esm2020/user-device-manage/src/shared/tk-page-section/page-section.component.mjs +1 -1
  13. package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +3 -3
  14. package/esm2020/user-manage/src/app.constants.mjs +1 -1
  15. package/esm2020/user-manage/src/classes/line-association-interface.mjs +1 -1
  16. package/esm2020/user-manage/src/classes/line-directory.mjs +1 -1
  17. package/esm2020/user-manage/src/classes/line.mjs +1 -1
  18. package/esm2020/user-manage/src/classes/pagination.mjs +1 -1
  19. package/esm2020/user-manage/src/classes/simplified-user.mjs +1 -1
  20. package/esm2020/user-manage/src/device-list/device-list.component.mjs +3 -3
  21. package/esm2020/user-manage/src/device-list/device-row/device-row.component.mjs +3 -3
  22. package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  23. package/esm2020/user-manage/src/services/user.service.mjs +1 -1
  24. package/esm2020/user-manage/src/user-info/user-info.component.mjs +5 -3
  25. package/esm2020/user-manage/src/user-manage-widget.component.mjs +3 -3
  26. package/esm2020/user-manage/src/user-manage.module.mjs +1 -1
  27. package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +3 -3
  28. package/esm2020/users-list/src/classes/move-user.mjs +1 -1
  29. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.mjs +8 -5
  30. package/esm2020/users-list/src/users-list.component.mjs +3 -3
  31. package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +3 -3
  32. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  33. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  34. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +4 -4
  35. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  36. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +6 -6
  37. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  38. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +14 -12
  39. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  40. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +11 -9
  41. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  42. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  43. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  44. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +4 -4
  45. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  46. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +6 -6
  47. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  48. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +14 -12
  49. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  50. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +11 -8
  51. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  52. package/package.json +1 -1
  53. package/user-manage/src/user-info/user-info.component.d.ts +2 -1
  54. package/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.d.ts +1 -1
@@ -68,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
68
68
  ]
69
69
  }]
70
70
  }] });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2MtcmVhZGluZXNzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9jb250YWN0LWNlbnRlci9jYy1yZWFkaW5lc3MvY2MtcmVhZGluZXNzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUE0QnpELE1BQU0sT0FBTyxpQkFBaUI7OytHQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixpQkF0QjFCLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIsYUFBYSxhQUdiLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixlQUFlLGFBR2YsNEJBQTRCO1FBQzVCLG9CQUFvQjtnSEFHWCxpQkFBaUIsWUFqQjFCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixlQUFlOzRGQU9OLGlCQUFpQjtrQkF4QjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCw0QkFBNEI7d0JBQzVCLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBMaWNlbmNlc1JlcXVpcmVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2xpY2VuY2VzLXJlcXVpcmVtZW50L2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdW1tYXJ5R3JpZENvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9zdW1tYXJ5LWdyaWQvc3VtbWFyeS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhcmQvY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdBcGV4Y2hhcnRzTW9kdWxlIH0gZnJvbSAnbmctYXBleGNoYXJ0cyc7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9tYXRlcmlhbC5tb2R1bGUnO1xuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBMaWNlbmNlc1JlcXVpcmVtZW50Q29tcG9uZW50LFxuICAgIFN1bW1hcnlHcmlkQ29tcG9uZW50LFxuICAgIENhcmRDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIE5nQXBleGNoYXJ0c01vZHVsZSxcbiAgICBNYXRUYWJsZU1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0UGFnaW5hdG9yTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTGljZW5jZXNSZXF1aXJlbWVudENvbXBvbmVudCxcbiAgICBTdW1tYXJ5R3JpZENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIENjUmVhZGluZXNzTW9kdWxlIHsgfVxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2MtcmVhZGluZXNzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9jb250YWN0LWNlbnRlci9jYy1yZWFkaW5lc3MvY2MtcmVhZGluZXNzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUE0QnpELE1BQU0sT0FBTyxpQkFBaUI7OytHQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixpQkF0QjFCLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIsYUFBYSxhQUdiLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixlQUFlLGFBR2YsNEJBQTRCO1FBQzVCLG9CQUFvQjtnSEFHWCxpQkFBaUIsWUFqQjFCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZix3QkFBd0I7UUFDeEIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixlQUFlOzRGQU9OLGlCQUFpQjtrQkF4QjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCw0QkFBNEI7d0JBQzVCLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBMaWNlbmNlc1JlcXVpcmVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2xpY2VuY2VzLXJlcXVpcmVtZW50L2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN1bW1hcnlHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL3N1bW1hcnktZ3JpZC9zdW1tYXJ5LWdyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTmdBcGV4Y2hhcnRzTW9kdWxlIH0gZnJvbSAnbmctYXBleGNoYXJ0cyc7XHJcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL21hdGVyaWFsLm1vZHVsZSc7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcblxyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBMaWNlbmNlc1JlcXVpcmVtZW50Q29tcG9uZW50LFxyXG4gICAgU3VtbWFyeUdyaWRDb21wb25lbnQsXHJcbiAgICBDYXJkQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxyXG4gICAgTmdBcGV4Y2hhcnRzTW9kdWxlLFxyXG4gICAgTWF0VGFibGVNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcclxuICAgIE1hdE9wdGlvbk1vZHVsZSxcclxuICAgIE1hdFBhZ2luYXRvck1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTGljZW5jZXNSZXF1aXJlbWVudENvbXBvbmVudCxcclxuICAgIFN1bW1hcnlHcmlkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2NSZWFkaW5lc3NNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
32
32
  providedIn: 'root'
33
33
  }]
34
34
  }], ctorParameters: function () { return []; } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2MtcmVhZGluZXNzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvY29udGFjdC1jZW50ZXIvY2MtcmVhZGluZXNzL2NjLXJlYWRpbmVzcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQVUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUMsT0FBTyxFQUFjLEdBQUcsRUFBMEIsTUFBTSxNQUFNLENBQUM7O0FBSy9ELE1BQU0sT0FBTyxrQkFBa0I7SUFHN0I7UUFGaUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUUxQixDQUFDO0lBRWpCLDBCQUEwQixDQUFDLFVBQWtCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN0RSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBOEIsRUFBRSxFQUFFO1lBQzNDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ25CLGFBQWE7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxVQUFrQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7O2dIQXRCVSxrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBVY2N4U2VydmVyRW50aXR5U3RhdHMsIFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeSB9IGZyb20gJy4vdHlwZXMvY2MtcmVhZGluZXNzJztcbmltcG9ydCB7IEFQSSB9IGZyb20gJy4uL3NoYXJlZC9hcGkuZW5kcG9pbnRzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDY1JlYWRpbmVzc1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaSA9IGluamVjdChBUElTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIGZldGNoVWNjeFNlcnZlckVudGl0eVN0YXRzKGN1c3RvbWVySWQ6IG51bWJlcik6IE9ic2VydmFibGU8VWNjeFNlcnZlckVudGl0eVN0YXRzW10+IHtcbiAgICByZXR1cm4gdGhpcy5hcGkuZmV0Y2goQVBJLlJFQURJTkVTUy5VQ0NYX1NFUlZFUl9FTlRJVFlfU1RBVFMoY3VzdG9tZXJJZCkpXG4gICAgICAucGlwZShtYXAoKHN0YXRzOiBVY2N4U2VydmVyRW50aXR5U3RhdHNbXSkgPT4ge1xuICAgICAgICBzdGF0cy5mb3JFYWNoKHN0YXQgPT4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBkZWxldGUgc3RhdC5jb3VudHMucmVhc29uQ29kZXM7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gc3RhdHM7XG4gICAgICB9KSk7XG4gIH1cblxuICBmZXRjaFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeShjdXN0b21lcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuYXBpLmZldGNoKEFQSS5SRUFESU5FU1MuTElDRU5TRV9VU0FHRV9TVU1NQVJZKGN1c3RvbWVySWQpKTtcbiAgfVxuXG4gIHNldFRva2VuKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmFwaS50b2tlbiA9IHRva2VuO1xuICB9XG59Il19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2MtcmVhZGluZXNzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvY29udGFjdC1jZW50ZXIvY2MtcmVhZGluZXNzL2NjLXJlYWRpbmVzcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQVUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUMsT0FBTyxFQUFjLEdBQUcsRUFBMEIsTUFBTSxNQUFNLENBQUM7O0FBSy9ELE1BQU0sT0FBTyxrQkFBa0I7SUFHN0I7UUFGaUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUUxQixDQUFDO0lBRWpCLDBCQUEwQixDQUFDLFVBQWtCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN0RSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBOEIsRUFBRSxFQUFFO1lBQzNDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ25CLGFBQWE7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxVQUFrQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7O2dIQXRCVSxrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBUElTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVWNjeFNlcnZlckVudGl0eVN0YXRzLCBXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnkgfSBmcm9tICcuL3R5cGVzL2NjLXJlYWRpbmVzcyc7XHJcbmltcG9ydCB7IEFQSSB9IGZyb20gJy4uL3NoYXJlZC9hcGkuZW5kcG9pbnRzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDY1JlYWRpbmVzc1NlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpID0gaW5qZWN0KEFQSVNlcnZpY2UpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBmZXRjaFVjY3hTZXJ2ZXJFbnRpdHlTdGF0cyhjdXN0b21lcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFVjY3hTZXJ2ZXJFbnRpdHlTdGF0c1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGkuZmV0Y2goQVBJLlJFQURJTkVTUy5VQ0NYX1NFUlZFUl9FTlRJVFlfU1RBVFMoY3VzdG9tZXJJZCkpXHJcbiAgICAgIC5waXBlKG1hcCgoc3RhdHM6IFVjY3hTZXJ2ZXJFbnRpdHlTdGF0c1tdKSA9PiB7XHJcbiAgICAgICAgc3RhdHMuZm9yRWFjaChzdGF0ID0+IHtcclxuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgIGRlbGV0ZSBzdGF0LmNvdW50cy5yZWFzb25Db2RlcztcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gc3RhdHM7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIGZldGNoV2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5KGN1c3RvbWVySWQ6IG51bWJlcik6IE9ic2VydmFibGU8V2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5W10+IHtcclxuICAgIHJldHVybiB0aGlzLmFwaS5mZXRjaChBUEkuUkVBRElORVNTLkxJQ0VOU0VfVVNBR0VfU1VNTUFSWShjdXN0b21lcklkKSk7XHJcbiAgfVxyXG5cclxuICBzZXRUb2tlbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwaS50b2tlbiA9IHRva2VuO1xyXG4gIH1cclxufSJdfQ==
@@ -179,13 +179,13 @@ export class LicencesRequirementComponent {
179
179
  }
180
180
  }
181
181
  LicencesRequirementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LicencesRequirementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
182
- LicencesRequirementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: LicencesRequirementComponent, selector: "cc-licenses-requirement", inputs: { customerId: "customerId", token: "token" }, usesOnChanges: true, ngImport: i0, template: "<tk-card title=\"Licenses requirement\">\n <ng-container ngProjectAs=\"card-content\">\n <div\n class=\"widget-body\"\n *ngIf=\"!loading && !error && viewModel; else widgetState\"\n >\n <div class=\"left-section\">\n <mat-select\n [(value)]=\"selectedSummaryIndex\"\n (selectionChange)=\"onFilterChange($event.value)\"\n class=\"filter-select\"\n >\n <mat-option *ngFor=\"let option of filters; index as i\" [value]=\"i\">\n {{ option }}\n </mat-option>\n </mat-select>\n\n <div class=\"chart-section\">\n <div class=\"chart-wrapper\">\n <apx-chart\n [series]=\"viewModel.chartOptions.series\"\n [chart]=\"viewModel.chartOptions.chart\"\n [labels]=\"viewModel.chartOptions.labels\"\n [colors]=\"viewModel.chartOptions.colors\"\n [legend]=\"viewModel.chartOptions.legend\"\n [plotOptions]=\"viewModel.chartOptions.plotOptions\"\n [dataLabels]=\"viewModel.chartOptions.dataLabels\"\n [tooltip]=\"viewModel.chartOptions.tooltip\"\n >\n </apx-chart>\n </div>\n <div class=\"legend\">\n <div class=\"legend-item\" *ngFor=\"let item of viewModel.legendItems\">\n <span\n class=\"legend-marker\"\n [style.backgroundColor]=\"item.color\"\n ></span>\n <span class=\"legend-label\">{{ item.label }}</span>\n <span class=\"legend-value\">{{ item.count | number }}</span>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"divider\" aria-hidden=\"true\"></div>\n\n <div class=\"table-section\">\n <div class=\"lic-table-header\">\n <span>License</span>\n <span>Required</span>\n </div>\n <div class=\"table-row\" *ngFor=\"let row of viewModel.rows\">\n <span>{{ row.label }}</span>\n <span>{{ row.value | number }}</span>\n </div>\n <div class=\"table-row total-row\">\n <span>Total</span>\n <span>{{ viewModel.totalRequired | number }}</span>\n </div>\n </div>\n </div>\n\n <ng-template #widgetState>\n <div class=\"state-message\" *ngIf=\"loading\">\n Loading license requirements\u2026\n </div>\n <div class=\"state-message error\" *ngIf=\"!loading && error\">\n Unable to load license requirements.\n </div>\n <div class=\"state-message\" *ngIf=\"!loading && !error && !viewModel\">\n No license data available.\n </div>\n </ng-template>\n </ng-container>\n</tk-card>\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";:host{display:block;width:100%;box-sizing:border-box}.filter-select{font-family:Inter,Inter,sans-serif;font-size:14px;min-width:140px;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;background-color:#fff}.filter-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select{border:1px solid #e5e7eb;border-radius:.5rem;background-color:#fff}:host ::ng-deep .filter-select.mat-mdc-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select.mat-focused{border-color:#16a693}:host ::ng-deep .filter-select .mat-mdc-select-trigger{font-size:14px;padding:.5rem .75rem}:host ::ng-deep .filter-select .mat-mdc-select-value{color:#111827}:host ::ng-deep .filter-select .mat-mdc-select-arrow-wrapper{padding-left:.5rem}.widget-body{display:flex;gap:2.5rem;align-items:flex-start}.left-section{flex:2;display:flex;flex-direction:column;gap:1rem}.chart-section{display:flex;gap:1.5rem;align-items:center}.chart-wrapper{width:220px;min-height:220px;flex-shrink:0}.chart-wrapper apx-chart{width:220px!important;height:220px!important}.legend{display:flex;flex-direction:column;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:Inter,Inter,sans-serif;font-size:14px}.legend-marker{width:14px;height:14px;border-radius:50%;display:inline-flex}.legend-label{color:#4b5563}.legend-value{margin-left:auto;font-weight:600;color:#111827}.divider{width:1px;min-height:200px;align-self:stretch;background:#e5e7eb}.table-section{flex:3;display:flex;flex-direction:column;gap:.75rem;font-family:Inter,Inter,sans-serif}.lic-table-header,.table-row{display:flex;justify-content:space-between;font-size:14px}.lic-table-header{font-weight:600;color:#6b7280;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.table-row{color:#111827}.total-row{font-weight:700;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.state-message{font-family:Inter,Inter,sans-serif;font-size:14px;color:#6b7280}.state-message.error{color:#b91c1c}@media (max-width: 960px){.widget-body{flex-direction:column}.divider{display:none}.chart-section{justify-content:space-between}}:host ::ng-deep .apexcharts-legend{display:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ChartComponent, selector: "apx-chart", inputs: ["chart", "annotations", "colors", "dataLabels", "series", "stroke", "labels", "legend", "markers", "noData", "fill", "tooltip", "plotOptions", "responsive", "xaxis", "yaxis", "forecastDataPoints", "grid", "states", "title", "subtitle", "theme", "autoUpdateSeries"] }, { kind: "component", type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i5.CardComponent, selector: "tk-card", inputs: ["title"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }] });
182
+ LicencesRequirementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: LicencesRequirementComponent, selector: "cc-licenses-requirement", inputs: { customerId: "customerId", token: "token" }, usesOnChanges: true, ngImport: i0, template: "<tk-card title=\"Licenses requirement\">\r\n <ng-container ngProjectAs=\"card-content\">\r\n <div\r\n class=\"widget-body\"\r\n *ngIf=\"!loading && !error && viewModel; else widgetState\"\r\n >\r\n <div class=\"left-section\">\r\n <mat-select\r\n [(value)]=\"selectedSummaryIndex\"\r\n (selectionChange)=\"onFilterChange($event.value)\"\r\n class=\"filter-select\"\r\n >\r\n <mat-option *ngFor=\"let option of filters; index as i\" [value]=\"i\">\r\n {{ option }}\r\n </mat-option>\r\n </mat-select>\r\n\r\n <div class=\"chart-section\">\r\n <div class=\"chart-wrapper\">\r\n <apx-chart\r\n [series]=\"viewModel.chartOptions.series\"\r\n [chart]=\"viewModel.chartOptions.chart\"\r\n [labels]=\"viewModel.chartOptions.labels\"\r\n [colors]=\"viewModel.chartOptions.colors\"\r\n [legend]=\"viewModel.chartOptions.legend\"\r\n [plotOptions]=\"viewModel.chartOptions.plotOptions\"\r\n [dataLabels]=\"viewModel.chartOptions.dataLabels\"\r\n [tooltip]=\"viewModel.chartOptions.tooltip\"\r\n >\r\n </apx-chart>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"legend-item\" *ngFor=\"let item of viewModel.legendItems\">\r\n <span\r\n class=\"legend-marker\"\r\n [style.backgroundColor]=\"item.color\"\r\n ></span>\r\n <span class=\"legend-label\">{{ item.label }}</span>\r\n <span class=\"legend-value\">{{ item.count | number }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"divider\" aria-hidden=\"true\"></div>\r\n\r\n <div class=\"table-section\">\r\n <div class=\"lic-table-header\">\r\n <span>License</span>\r\n <span>Required</span>\r\n </div>\r\n <div class=\"table-row\" *ngFor=\"let row of viewModel.rows\">\r\n <span>{{ row.label }}</span>\r\n <span>{{ row.value | number }}</span>\r\n </div>\r\n <div class=\"table-row total-row\">\r\n <span>Total</span>\r\n <span>{{ viewModel.totalRequired | number }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-template #widgetState>\r\n <div class=\"state-message\" *ngIf=\"loading\">\r\n Loading license requirements\u2026\r\n </div>\r\n <div class=\"state-message error\" *ngIf=\"!loading && error\">\r\n Unable to load license requirements.\r\n </div>\r\n <div class=\"state-message\" *ngIf=\"!loading && !error && !viewModel\">\r\n No license data available.\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</tk-card>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";:host{display:block;width:100%;box-sizing:border-box}.filter-select{font-family:Inter,Inter,sans-serif;font-size:14px;min-width:140px;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;background-color:#fff}.filter-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select{border:1px solid #e5e7eb;border-radius:.5rem;background-color:#fff}:host ::ng-deep .filter-select.mat-mdc-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select.mat-focused{border-color:#16a693}:host ::ng-deep .filter-select .mat-mdc-select-trigger{font-size:14px;padding:.5rem .75rem}:host ::ng-deep .filter-select .mat-mdc-select-value{color:#111827}:host ::ng-deep .filter-select .mat-mdc-select-arrow-wrapper{padding-left:.5rem}.widget-body{display:flex;gap:2.5rem;align-items:flex-start}.left-section{flex:2;display:flex;flex-direction:column;gap:1rem}.chart-section{display:flex;gap:1.5rem;align-items:center}.chart-wrapper{width:220px;min-height:220px;flex-shrink:0}.chart-wrapper apx-chart{width:220px!important;height:220px!important}.legend{display:flex;flex-direction:column;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:Inter,Inter,sans-serif;font-size:14px}.legend-marker{width:14px;height:14px;border-radius:50%;display:inline-flex}.legend-label{color:#4b5563}.legend-value{margin-left:auto;font-weight:600;color:#111827}.divider{width:1px;min-height:200px;align-self:stretch;background:#e5e7eb}.table-section{flex:3;display:flex;flex-direction:column;gap:.75rem;font-family:Inter,Inter,sans-serif}.lic-table-header,.table-row{display:flex;justify-content:space-between;font-size:14px}.lic-table-header{font-weight:600;color:#6b7280;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.table-row{color:#111827}.total-row{font-weight:700;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.state-message{font-family:Inter,Inter,sans-serif;font-size:14px;color:#6b7280}.state-message.error{color:#b91c1c}@media (max-width: 960px){.widget-body{flex-direction:column}.divider{display:none}.chart-section{justify-content:space-between}}:host ::ng-deep .apexcharts-legend{display:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ChartComponent, selector: "apx-chart", inputs: ["chart", "annotations", "colors", "dataLabels", "series", "stroke", "labels", "legend", "markers", "noData", "fill", "tooltip", "plotOptions", "responsive", "xaxis", "yaxis", "forecastDataPoints", "grid", "states", "title", "subtitle", "theme", "autoUpdateSeries"] }, { kind: "component", type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i5.CardComponent, selector: "tk-card", inputs: ["title"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }] });
183
183
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LicencesRequirementComponent, decorators: [{
184
184
  type: Component,
185
- args: [{ selector: 'cc-licenses-requirement', template: "<tk-card title=\"Licenses requirement\">\n <ng-container ngProjectAs=\"card-content\">\n <div\n class=\"widget-body\"\n *ngIf=\"!loading && !error && viewModel; else widgetState\"\n >\n <div class=\"left-section\">\n <mat-select\n [(value)]=\"selectedSummaryIndex\"\n (selectionChange)=\"onFilterChange($event.value)\"\n class=\"filter-select\"\n >\n <mat-option *ngFor=\"let option of filters; index as i\" [value]=\"i\">\n {{ option }}\n </mat-option>\n </mat-select>\n\n <div class=\"chart-section\">\n <div class=\"chart-wrapper\">\n <apx-chart\n [series]=\"viewModel.chartOptions.series\"\n [chart]=\"viewModel.chartOptions.chart\"\n [labels]=\"viewModel.chartOptions.labels\"\n [colors]=\"viewModel.chartOptions.colors\"\n [legend]=\"viewModel.chartOptions.legend\"\n [plotOptions]=\"viewModel.chartOptions.plotOptions\"\n [dataLabels]=\"viewModel.chartOptions.dataLabels\"\n [tooltip]=\"viewModel.chartOptions.tooltip\"\n >\n </apx-chart>\n </div>\n <div class=\"legend\">\n <div class=\"legend-item\" *ngFor=\"let item of viewModel.legendItems\">\n <span\n class=\"legend-marker\"\n [style.backgroundColor]=\"item.color\"\n ></span>\n <span class=\"legend-label\">{{ item.label }}</span>\n <span class=\"legend-value\">{{ item.count | number }}</span>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"divider\" aria-hidden=\"true\"></div>\n\n <div class=\"table-section\">\n <div class=\"lic-table-header\">\n <span>License</span>\n <span>Required</span>\n </div>\n <div class=\"table-row\" *ngFor=\"let row of viewModel.rows\">\n <span>{{ row.label }}</span>\n <span>{{ row.value | number }}</span>\n </div>\n <div class=\"table-row total-row\">\n <span>Total</span>\n <span>{{ viewModel.totalRequired | number }}</span>\n </div>\n </div>\n </div>\n\n <ng-template #widgetState>\n <div class=\"state-message\" *ngIf=\"loading\">\n Loading license requirements\u2026\n </div>\n <div class=\"state-message error\" *ngIf=\"!loading && error\">\n Unable to load license requirements.\n </div>\n <div class=\"state-message\" *ngIf=\"!loading && !error && !viewModel\">\n No license data available.\n </div>\n </ng-template>\n </ng-container>\n</tk-card>\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";:host{display:block;width:100%;box-sizing:border-box}.filter-select{font-family:Inter,Inter,sans-serif;font-size:14px;min-width:140px;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;background-color:#fff}.filter-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select{border:1px solid #e5e7eb;border-radius:.5rem;background-color:#fff}:host ::ng-deep .filter-select.mat-mdc-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select.mat-focused{border-color:#16a693}:host ::ng-deep .filter-select .mat-mdc-select-trigger{font-size:14px;padding:.5rem .75rem}:host ::ng-deep .filter-select .mat-mdc-select-value{color:#111827}:host ::ng-deep .filter-select .mat-mdc-select-arrow-wrapper{padding-left:.5rem}.widget-body{display:flex;gap:2.5rem;align-items:flex-start}.left-section{flex:2;display:flex;flex-direction:column;gap:1rem}.chart-section{display:flex;gap:1.5rem;align-items:center}.chart-wrapper{width:220px;min-height:220px;flex-shrink:0}.chart-wrapper apx-chart{width:220px!important;height:220px!important}.legend{display:flex;flex-direction:column;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:Inter,Inter,sans-serif;font-size:14px}.legend-marker{width:14px;height:14px;border-radius:50%;display:inline-flex}.legend-label{color:#4b5563}.legend-value{margin-left:auto;font-weight:600;color:#111827}.divider{width:1px;min-height:200px;align-self:stretch;background:#e5e7eb}.table-section{flex:3;display:flex;flex-direction:column;gap:.75rem;font-family:Inter,Inter,sans-serif}.lic-table-header,.table-row{display:flex;justify-content:space-between;font-size:14px}.lic-table-header{font-weight:600;color:#6b7280;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.table-row{color:#111827}.total-row{font-weight:700;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.state-message{font-family:Inter,Inter,sans-serif;font-size:14px;color:#6b7280}.state-message.error{color:#b91c1c}@media (max-width: 960px){.widget-body{flex-direction:column}.divider{display:none}.chart-section{justify-content:space-between}}:host ::ng-deep .apexcharts-legend{display:none!important}\n"] }]
185
+ args: [{ selector: 'cc-licenses-requirement', template: "<tk-card title=\"Licenses requirement\">\r\n <ng-container ngProjectAs=\"card-content\">\r\n <div\r\n class=\"widget-body\"\r\n *ngIf=\"!loading && !error && viewModel; else widgetState\"\r\n >\r\n <div class=\"left-section\">\r\n <mat-select\r\n [(value)]=\"selectedSummaryIndex\"\r\n (selectionChange)=\"onFilterChange($event.value)\"\r\n class=\"filter-select\"\r\n >\r\n <mat-option *ngFor=\"let option of filters; index as i\" [value]=\"i\">\r\n {{ option }}\r\n </mat-option>\r\n </mat-select>\r\n\r\n <div class=\"chart-section\">\r\n <div class=\"chart-wrapper\">\r\n <apx-chart\r\n [series]=\"viewModel.chartOptions.series\"\r\n [chart]=\"viewModel.chartOptions.chart\"\r\n [labels]=\"viewModel.chartOptions.labels\"\r\n [colors]=\"viewModel.chartOptions.colors\"\r\n [legend]=\"viewModel.chartOptions.legend\"\r\n [plotOptions]=\"viewModel.chartOptions.plotOptions\"\r\n [dataLabels]=\"viewModel.chartOptions.dataLabels\"\r\n [tooltip]=\"viewModel.chartOptions.tooltip\"\r\n >\r\n </apx-chart>\r\n </div>\r\n <div class=\"legend\">\r\n <div class=\"legend-item\" *ngFor=\"let item of viewModel.legendItems\">\r\n <span\r\n class=\"legend-marker\"\r\n [style.backgroundColor]=\"item.color\"\r\n ></span>\r\n <span class=\"legend-label\">{{ item.label }}</span>\r\n <span class=\"legend-value\">{{ item.count | number }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"divider\" aria-hidden=\"true\"></div>\r\n\r\n <div class=\"table-section\">\r\n <div class=\"lic-table-header\">\r\n <span>License</span>\r\n <span>Required</span>\r\n </div>\r\n <div class=\"table-row\" *ngFor=\"let row of viewModel.rows\">\r\n <span>{{ row.label }}</span>\r\n <span>{{ row.value | number }}</span>\r\n </div>\r\n <div class=\"table-row total-row\">\r\n <span>Total</span>\r\n <span>{{ viewModel.totalRequired | number }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-template #widgetState>\r\n <div class=\"state-message\" *ngIf=\"loading\">\r\n Loading license requirements\u2026\r\n </div>\r\n <div class=\"state-message error\" *ngIf=\"!loading && error\">\r\n Unable to load license requirements.\r\n </div>\r\n <div class=\"state-message\" *ngIf=\"!loading && !error && !viewModel\">\r\n No license data available.\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</tk-card>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";:host{display:block;width:100%;box-sizing:border-box}.filter-select{font-family:Inter,Inter,sans-serif;font-size:14px;min-width:140px;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;background-color:#fff}.filter-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select{border:1px solid #e5e7eb;border-radius:.5rem;background-color:#fff}:host ::ng-deep .filter-select.mat-mdc-select:hover{border-color:#d1d5db}:host ::ng-deep .filter-select.mat-mdc-select.mat-focused{border-color:#16a693}:host ::ng-deep .filter-select .mat-mdc-select-trigger{font-size:14px;padding:.5rem .75rem}:host ::ng-deep .filter-select .mat-mdc-select-value{color:#111827}:host ::ng-deep .filter-select .mat-mdc-select-arrow-wrapper{padding-left:.5rem}.widget-body{display:flex;gap:2.5rem;align-items:flex-start}.left-section{flex:2;display:flex;flex-direction:column;gap:1rem}.chart-section{display:flex;gap:1.5rem;align-items:center}.chart-wrapper{width:220px;min-height:220px;flex-shrink:0}.chart-wrapper apx-chart{width:220px!important;height:220px!important}.legend{display:flex;flex-direction:column;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:Inter,Inter,sans-serif;font-size:14px}.legend-marker{width:14px;height:14px;border-radius:50%;display:inline-flex}.legend-label{color:#4b5563}.legend-value{margin-left:auto;font-weight:600;color:#111827}.divider{width:1px;min-height:200px;align-self:stretch;background:#e5e7eb}.table-section{flex:3;display:flex;flex-direction:column;gap:.75rem;font-family:Inter,Inter,sans-serif}.lic-table-header,.table-row{display:flex;justify-content:space-between;font-size:14px}.lic-table-header{font-weight:600;color:#6b7280;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.table-row{color:#111827}.total-row{font-weight:700;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.state-message{font-family:Inter,Inter,sans-serif;font-size:14px;color:#6b7280}.state-message.error{color:#b91c1c}@media (max-width: 960px){.widget-body{flex-direction:column}.divider{display:none}.chart-section{justify-content:space-between}}:host ::ng-deep .apexcharts-legend{display:none!important}\n"] }]
186
186
  }], propDecorators: { customerId: [{
187
187
  type: Input
188
188
  }], token: [{
189
189
  type: Input
190
190
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGljZW5jZXMtcmVxdWlyZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL2NvbnRhY3QtY2VudGVyL2NjLXJlYWRpbmVzcy93aWRnZXRzL2xpY2VuY2VzLXJlcXVpcmVtZW50L2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9jb250YWN0LWNlbnRlci9jYy1yZWFkaW5lc3Mvd2lkZ2V0cy9saWNlbmNlcy1yZXF1aXJlbWVudC9saWNlbmNlcy1yZXF1aXJlbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXRHLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFpQ2hFLE1BQU0sYUFBYSxHQUFHO0lBQ3BCLFFBQVEsRUFBRSxTQUFTO0lBQ25CLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLEtBQUssRUFBRSxTQUFTO0NBQ2pCLENBQUM7QUFPRixNQUFNLE9BQU8sNEJBQTRCO0lBTHpDO1FBU21CLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBR2pFLGNBQVMsR0FBdUMsSUFBSSxDQUFDO1FBQ3JELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUVkLFlBQU8sR0FBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLHlCQUFvQixHQUFHLENBQUMsQ0FBQztRQUVqQixZQUFPLEdBQW9DLElBQUksQ0FBQztL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V0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRixPQUFPO1lBQ0wsTUFBTTtZQUNOLEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsT0FBTztnQkFDYixNQUFNLEVBQUUsR0FBRzthQUNaO1lBQ0QsTUFBTTtZQUNOLE1BQU07WUFDTixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLEtBQUs7YUFDWjtZQUNELFdBQVcsRUFBRTtnQkFDWCxHQUFHLEVBQUU7b0JBQ0gsS0FBSyxFQUFFO3dCQUNMLElBQUksRUFBRSxLQUFLO3FCQUNaO2lCQUNGO2FBQ0Y7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsT0FBTyxFQUFFLEtBQUs7YUFDZjtZQUNELE9BQU8sRUFBRTtnQkFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFPO2FBQ2xCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxLQUFhO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELGdEQUFnRDtRQUNoRCxNQUFNLFVBQVUsR0FBRyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzFDLENBQUM7OzBIQS9MVSw0QkFBNEI7OEdBQTVCLDRCQUE0QiwwSUMvQ3pDLDRxRkEyRUE7NEZENUJhLDRCQUE0QjtrQkFMeEMsU0FBUzsrQkFDRSx5QkFBeUI7OEJBSzFCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGV4Q2hhcnQsIEFwZXhEYXRhTGFiZWxzLCBBcGV4TGVnZW5kLCBBcGV4Tm9uQXhpc0NoYXJ0U2VyaWVzLCBBcGV4UGxvdE9wdGlvbnMsIEFwZXhUb29sdGlwIH0gZnJvbSAnbmctYXBleGNoYXJ0cyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaW5hbGl6ZSwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2NSZWFkaW5lc3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2MtcmVhZGluZXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgV2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5IH0gZnJvbSAnLi4vLi4vdHlwZXMvY2MtcmVhZGluZXNzJztcblxuaW50ZXJmYWNlIExpY2Vuc2VMZWdlbmRJdGVtIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgY291bnQ6IG51bWJlcjtcbiAgcGVyY2VudGFnZTogbnVtYmVyO1xuICBjb2xvcjogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgTGljZW5zZVRhYmxlUm93IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIExpY2Vuc2VDaGFydE9wdGlvbnMge1xuICBzZXJpZXM6IEFwZXhOb25BeGlzQ2hhcnRTZXJpZXM7XG4gIGNoYXJ0OiBBcGV4Q2hhcnQ7XG4gIGxhYmVsczogc3RyaW5nW107XG4gIGNvbG9yczogc3RyaW5nW107XG4gIGxlZ2VuZDogQXBleExlZ2VuZDtcbiAgcGxvdE9wdGlvbnM6IEFwZXhQbG90T3B0aW9ucztcbiAgZGF0YUxhYmVsczogQXBleERhdGFMYWJlbHM7XG4gIHRvb2x0aXA6IEFwZXhUb29sdGlwO1xufVxuXG5pbnRlcmZhY2UgTGljZW5zZVJlcXVpcmVtZW50Vmlld01vZGVsIHtcbiAgY2hhcnRPcHRpb25zOiBMaWNlbnNlQ2hhcnRPcHRpb25zO1xuICBsZWdlbmRJdGVtczogTGljZW5zZUxlZ2VuZEl0ZW1bXTtcbiAgcm93czogTGljZW5zZVRhYmxlUm93W107XG4gIHRvdGFsUmVxdWlyZWQ6IG51bWJlcjtcbn1cblxuY29uc3QgTEVHRU5EX0NPTE9SUyA9IHtcbiAgZXhpc3Rpbmc6ICcjMTZBNjkzJyxcbiAgbWlzc2luZzogJyM4MDgwODAnLFxuICBlbXB0eTogJyNFMEUwRTAnXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjYy1saWNlbnNlcy1yZXF1aXJlbWVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9saWNlbmNlcy1yZXF1aXJlbWVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTGljZW5jZXNSZXF1aXJlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBjdXN0b21lcklkITogbnVtYmVyO1xuICBASW5wdXQoKSB0b2tlbiE6IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IGNjUmVhZGluZXNzU2VydmljZSA9IGluamVjdChDY1JlYWRpbmVzc1NlcnZpY2UpO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICB2aWV3TW9kZWw6IExpY2Vuc2VSZXF1aXJlbWVudFZpZXdNb2RlbCB8IG51bGwgPSBudWxsO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGVycm9yID0gZmFsc2U7XG5cbiAgZmlsdGVyczogc3RyaW5nW10gPSBbJ0FsbCddO1xuICBzZWxlY3RlZFN1bW1hcnlJbmRleCA9IDA7XG5cbiAgcHJpdmF0ZSBzdW1tYXJ5OiBXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnkgfCBudWxsID0gbnVsbDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRTdW1tYXJpZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICgoY2hhbmdlc1snY3VzdG9tZXJJZCddICYmICFjaGFuZ2VzWydjdXN0b21lcklkJ10uZmlyc3RDaGFuZ2UpIHx8XG4gICAgICAoY2hhbmdlc1sndG9rZW4nXSAmJiAhY2hhbmdlc1sndG9rZW4nXS5maXJzdENoYW5nZSkpIHtcbiAgICAgIHRoaXMubG9hZFN1bW1hcmllcygpO1xuICAgIH1cbiAgfVxuXG4gIG9uRmlsdGVyQ2hhbmdlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIWlzTmFOKGluZGV4KSAmJiBpbmRleCA+PSAwICYmIGluZGV4IDwgdGhpcy5maWx0ZXJzLmxlbmd0aCkge1xuICAgICAgdGhpcy5zZWxlY3RGaWx0ZXIoaW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9hZFN1bW1hcmllcygpOiB2b2lkIHtcbiAgICBjb25zdCBudW1lcmljQ3VzdG9tZXJJZCA9IE51bWJlcih0aGlzLmN1c3RvbWVySWQpO1xuICAgIGlmICghbnVtZXJpY0N1c3RvbWVySWQgfHwgIXRoaXMudG9rZW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuZXJyb3IgPSBmYWxzZTtcbiAgICB0aGlzLnZpZXdNb2RlbCA9IG51bGw7XG4gICAgdGhpcy5zZWxlY3RlZFN1bW1hcnlJbmRleCA9IDA7XG5cbiAgICB0aGlzLmNjUmVhZGluZXNzU2VydmljZS5zZXRUb2tlbih0aGlzLnRva2VuKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY2NSZWFkaW5lc3NTZXJ2aWNlLmZldGNoV2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5KG51bWVyaWNDdXN0b21lcklkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1VuYWJsZSB0byBsb2FkIFdlYmV4IGxpY2Vuc2UgdXNhZ2Ugc3VtbWFyeScsIGVycm9yKTtcbiAgICAgICAgICB0aGlzLmVycm9yID0gdHJ1ZTtcbiAgICAgICAgICByZXR1cm4gb2Y8V2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5W10+KFtdKTtcbiAgICAgICAgfSksXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMubG9hZGluZyA9IGZhbHNlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShpdGVtcyA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdSYXcgQVBJIHJlc3BvbnNlOicsIGl0ZW1zKTtcbiAgICAgICAgLy8gSGFuZGxlIGJvdGggYXJyYXkgYW5kIHNpbmdsZSBvYmplY3QgcmVzcG9uc2VzXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW1zKSAmJiBpdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgdGhpcy5zdW1tYXJ5ID0gaXRlbXNbMF07XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbXMgJiYgdHlwZW9mIGl0ZW1zID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShpdGVtcykpIHtcbiAgICAgICAgICAvLyBJZiBzaW5nbGUgb2JqZWN0IHJldHVybmVkLCB1c2UgaXQgZGlyZWN0bHlcbiAgICAgICAgICB0aGlzLnN1bW1hcnkgPSBpdGVtcyBhcyB1bmtub3duIGFzIFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnN1bW1hcnkgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQnVpbGQgZmlsdGVycyBkeW5hbWljYWxseSBmcm9tIGxpY2Vuc2UgbmFtZXNcbiAgICAgICAgaWYgKHRoaXMuc3VtbWFyeT8ubGljZW5zZXM/Lmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuZmlsdGVycyA9IFsnQWxsJywgLi4udGhpcy5zdW1tYXJ5LmxpY2Vuc2VzLm1hcChsID0+IGwubmFtZSldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZmlsdGVycyA9IFsnQWxsJ107XG4gICAgICAgIH1cblxuICAgICAgICBjb25zb2xlLmxvZygnUHJvY2Vzc2VkIHN1bW1hcnk6JywgdGhpcy5zdW1tYXJ5KTtcbiAgICAgICAgdGhpcy5zZWxlY3RGaWx0ZXIoMCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2VsZWN0RmlsdGVyKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkU3VtbWFyeUluZGV4ID0gaW5kZXg7XG4gICAgaWYgKCF0aGlzLnN1bW1hcnkpIHtcbiAgICAgIHRoaXMudmlld01vZGVsID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy52aWV3TW9kZWwgPSB0aGlzLm1hcFN1bW1hcnlUb1ZpZXdNb2RlbCh0aGlzLnN1bW1hcnksIGluZGV4KTtcbiAgICBjb25zb2xlLmxvZygnQ3JlYXRlZCB2aWV3TW9kZWwgZm9yIGZpbHRlciBpbmRleCcsIGluZGV4LCAnOicsIHRoaXMudmlld01vZGVsKTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwU3VtbWFyeVRvVmlld01vZGVsKHN1bW1hcnk6IFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeSwgZmlsdGVySW5kZXg6IG51bWJlcik6IExpY2Vuc2VSZXF1aXJlbWVudFZpZXdNb2RlbCB7XG4gICAgY29uc29sZS5sb2coJ01hcHBpbmcgc3VtbWFyeSB0byB2aWV3TW9kZWw6Jywgc3VtbWFyeSwgJ2ZpbHRlckluZGV4OicsIGZpbHRlckluZGV4KTtcblxuICAgIGNvbnN0IGxpY2Vuc2VzID0gc3VtbWFyeS5saWNlbnNlcyB8fCBbXTtcblxuICAgIGxldCBleGlzdGluZ0NvdW50OiBudW1iZXI7XG4gICAgbGV0IG1pc3NpbmdDb3VudDogbnVtYmVyO1xuICAgIGxldCByb3dzOiBMaWNlbnNlVGFibGVSb3dbXTtcblxuICAgIGlmIChmaWx0ZXJJbmRleCA9PT0gMCkge1xuICAgICAgLy8gXCJBbGxcIiBmaWx0ZXI6IHNob3cgdG90YWxFeGlzdGluZ0xpY2Vuc2VzIHZzIHRvdGFsIGNvbnN1bWVkVW5pdHNcbiAgICAgIGV4aXN0aW5nQ291bnQgPSBzdW1tYXJ5LnRvdGFsRXhpc3RpbmdMaWNlbnNlcyA/PyAwO1xuICAgICAgbWlzc2luZ0NvdW50ID0gbGljZW5zZXMucmVkdWNlKChhY2MsIGwpID0+IGFjYyArIGwuY29uc3VtZWRVbml0cywgMCk7XG4gICAgICByb3dzID0gbGljZW5zZXMubWFwKGwgPT4gKHtcbiAgICAgICAgbGFiZWw6IGwubmFtZSxcbiAgICAgICAgdmFsdWU6IGwuY29uc3VtZWRVbml0c1xuICAgICAgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTcGVjaWZpYyBsaWNlbnNlIGZpbHRlcjogc2hvdyAwIGV4aXN0aW5nIHZzIGNvbnN1bWVkVW5pdHMgZm9yIHRoYXQgbGljZW5zZVxuICAgICAgY29uc3Qgc2VsZWN0ZWRMaWNlbnNlID0gbGljZW5zZXNbZmlsdGVySW5kZXggLSAxXTtcbiAgICAgIGV4aXN0aW5nQ291bnQgPSAwO1xuICAgICAgbWlzc2luZ0NvdW50ID0gc2VsZWN0ZWRMaWNlbnNlPy5jb25zdW1lZFVuaXRzID8/IDA7XG4gICAgICByb3dzID0gc2VsZWN0ZWRMaWNlbnNlID8gW3sgbGFiZWw6IHNlbGVjdGVkTGljZW5zZS5uYW1lLCB2YWx1ZTogc2VsZWN0ZWRMaWNlbnNlLmNvbnN1bWVkVW5pdHMgfV0gOiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCB0b3RhbExpY2Vuc2VzID0gZXhpc3RpbmdDb3VudCArIG1pc3NpbmdDb3VudDtcblxuICAgIGNvbnN0IGxlZ2VuZEl0ZW1zOiBMaWNlbnNlTGVnZW5kSXRlbVtdID0gW1xuICAgICAge1xuICAgICAgICBsYWJlbDogJ0V4aXN0aW5nIGxpY2Vuc2VzJyxcbiAgICAgICAgY291bnQ6IGV4aXN0aW5nQ291bnQsXG4gICAgICAgIHBlcmNlbnRhZ2U6IHRvdGFsTGljZW5zZXMgPiAwID8gKGV4aXN0aW5nQ291bnQgLyB0b3RhbExpY2Vuc2VzKSAqIDEwMCA6IDAsXG4gICAgICAgIGNvbG9yOiBMRUdFTkRfQ09MT1JTLmV4aXN0aW5nXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBsYWJlbDogJ01pc3NpbmcgbGljZW5zZXMnLFxuICAgICAgICBjb3VudDogbWlzc2luZ0NvdW50LFxuICAgICAgICBwZXJjZW50YWdlOiB0b3RhbExpY2Vuc2VzID4gMCA/IChtaXNzaW5nQ291bnQgLyB0b3RhbExpY2Vuc2VzKSAqIDEwMCA6IDAsXG4gICAgICAgIGNvbG9yOiBMRUdFTkRfQ09MT1JTLm1pc3NpbmdcbiAgICAgIH1cbiAgICBdO1xuXG4gICAgY29uc29sZS5sb2coJ0xlZ2VuZCBpdGVtczonLCBsZWdlbmRJdGVtcyk7XG4gICAgY29uc29sZS5sb2coJ1RhYmxlIHJvd3M6Jywgcm93cyk7XG5cbiAgICBjb25zdCB0b3RhbFJlcXVpcmVkID0gZXhpc3RpbmdDb3VudCArIG1pc3NpbmdDb3VudDtcblxuICAgIHJldHVybiB7XG4gICAgICBjaGFydE9wdGlvbnM6IHRoaXMuYnVpbGRDaGFydE9wdGlvbnMobGVnZW5kSXRlbXMpLFxuICAgICAgbGVnZW5kSXRlbXMsXG4gICAgICByb3dzLFxuICAgICAgdG90YWxSZXF1aXJlZFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ2hhcnRPcHRpb25zKGxlZ2VuZEl0ZW1zOiBMaWNlbnNlTGVnZW5kSXRlbVtdKTogTGljZW5zZUNoYXJ0T3B0aW9ucyB7XG4gICAgY29uc3QgdG90YWxDb3VudCA9IGxlZ2VuZEl0ZW1zLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiBhY2MgKyBpdGVtLmNvdW50LCAwKTtcbiAgICBjb25zdCBpc0VtcHR5ID0gdG90YWxDb3VudCA9PT0gMDtcblxuICAgIC8vIEZvciBlbXB0eSBjaGFydCwgc2hvdyBhIGZ1bGwgbGlnaHQgZ3JheSBkb251dFxuICAgIGNvbnN0IHNlcmllcyA9IGlzRW1wdHkgPyBbMV0gOiBsZWdlbmRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmNvdW50KTtcbiAgICBjb25zdCBsYWJlbHMgPSBpc0VtcHR5ID8gWydObyBkYXRhJ10gOiBsZWdlbmRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmxhYmVsKTtcbiAgICBjb25zdCBjb2xvcnMgPSBpc0VtcHR5ID8gW0xFR0VORF9DT0xPUlMuZW1wdHldIDogbGVnZW5kSXRlbXMubWFwKGl0ZW0gPT4gaXRlbS5jb2xvcik7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2VyaWVzLFxuICAgICAgY2hhcnQ6IHtcbiAgICAgICAgdHlwZTogJ2RvbnV0JyxcbiAgICAgICAgaGVpZ2h0OiAyMjBcbiAgICAgIH0sXG4gICAgICBsYWJlbHMsXG4gICAgICBjb2xvcnMsXG4gICAgICBsZWdlbmQ6IHtcbiAgICAgICAgc2hvdzogZmFsc2VcbiAgICAgIH0sXG4gICAgICBwbG90T3B0aW9uczoge1xuICAgICAgICBwaWU6IHtcbiAgICAgICAgICBkb251dDoge1xuICAgICAgICAgICAgc2l6ZTogJzc1JSdcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBkYXRhTGFiZWxzOiB7XG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlXG4gICAgICB9LFxuICAgICAgdG9vbHRpcDoge1xuICAgICAgICBlbmFibGVkOiAhaXNFbXB0eVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZVBlcmNlbnRhZ2UodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKCFpc0Zpbml0ZSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICAvLyBDb252ZXJ0IGRlY2ltYWwgdG8gcGVyY2VudGFnZSAoMC45NDg3IOKGkiA5NC45KVxuICAgIGNvbnN0IHBlcmNlbnRhZ2UgPSB2YWx1ZSAqIDEwMDtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChwZXJjZW50YWdlICogMTApIC8gMTA7XG4gIH1cbn1cbiIsIjx0ay1jYXJkIHRpdGxlPVwiTGljZW5zZXMgcmVxdWlyZW1lbnRcIj5cbiAgPG5nLWNvbnRhaW5lciBuZ1Byb2plY3RBcz1cImNhcmQtY29udGVudFwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwid2lkZ2V0LWJvZHlcIlxuICAgICAgKm5nSWY9XCIhbG9hZGluZyAmJiAhZXJyb3IgJiYgdmlld01vZGVsOyBlbHNlIHdpZGdldFN0YXRlXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwibGVmdC1zZWN0aW9uXCI+XG4gICAgICAgIDxtYXQtc2VsZWN0XG4gICAgICAgICAgWyh2YWx1ZSldPVwic2VsZWN0ZWRTdW1tYXJ5SW5kZXhcIlxuICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoJGV2ZW50LnZhbHVlKVwiXG4gICAgICAgICAgY2xhc3M9XCJmaWx0ZXItc2VsZWN0XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyczsgaW5kZXggYXMgaVwiIFt2YWx1ZV09XCJpXCI+XG4gICAgICAgICAgICB7eyBvcHRpb24gfX1cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LXNlbGVjdD5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhcnQtc2VjdGlvblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGFydC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8YXB4LWNoYXJ0XG4gICAgICAgICAgICAgIFtzZXJpZXNdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy5zZXJpZXNcIlxuICAgICAgICAgICAgICBbY2hhcnRdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy5jaGFydFwiXG4gICAgICAgICAgICAgIFtsYWJlbHNdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy5sYWJlbHNcIlxuICAgICAgICAgICAgICBbY29sb3JzXT1cInZpZXdNb2RlbC5jaGFydE9wdGlvbnMuY29sb3JzXCJcbiAgICAgICAgICAgICAgW2xlZ2VuZF09XCJ2aWV3TW9kZWwuY2hhcnRPcHRpb25zLmxlZ2VuZFwiXG4gICAgICAgICAgICAgIFtwbG90T3B0aW9uc109XCJ2aWV3TW9kZWwuY2hhcnRPcHRpb25zLnBsb3RPcHRpb25zXCJcbiAgICAgICAgICAgICAgW2RhdGFMYWJlbHNdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy5kYXRhTGFiZWxzXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy50b29sdGlwXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvYXB4LWNoYXJ0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmQtaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZpZXdNb2RlbC5sZWdlbmRJdGVtc1wiPlxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwibGVnZW5kLW1hcmtlclwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJpdGVtLmNvbG9yXCJcbiAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWdlbmQtbGFiZWxcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZ2VuZC12YWx1ZVwiPnt7IGl0ZW0uY291bnQgfCBudW1iZXIgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXNlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpYy10YWJsZS1oZWFkZXJcIj5cbiAgICAgICAgICA8c3Bhbj5MaWNlbnNlPC9zcGFuPlxuICAgICAgICAgIDxzcGFuPlJlcXVpcmVkPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJvd1wiICpuZ0Zvcj1cImxldCByb3cgb2Ygdmlld01vZGVsLnJvd3NcIj5cbiAgICAgICAgICA8c3Bhbj57eyByb3cubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4+e3sgcm93LnZhbHVlIHwgbnVtYmVyIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJvdyB0b3RhbC1yb3dcIj5cbiAgICAgICAgICA8c3Bhbj5Ub3RhbDwvc3Bhbj5cbiAgICAgICAgICA8c3Bhbj57eyB2aWV3TW9kZWwudG90YWxSZXF1aXJlZCB8IG51bWJlciB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjd2lkZ2V0U3RhdGU+XG4gICAgICA8ZGl2IGNsYXNzPVwic3RhdGUtbWVzc2FnZVwiICpuZ0lmPVwibG9hZGluZ1wiPlxuICAgICAgICBMb2FkaW5nIGxpY2Vuc2UgcmVxdWlyZW1lbnRz4oCmXG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdGF0ZS1tZXNzYWdlIGVycm9yXCIgKm5nSWY9XCIhbG9hZGluZyAmJiBlcnJvclwiPlxuICAgICAgICBVbmFibGUgdG8gbG9hZCBsaWNlbnNlIHJlcXVpcmVtZW50cy5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInN0YXRlLW1lc3NhZ2VcIiAqbmdJZj1cIiFsb2FkaW5nICYmICFlcnJvciAmJiAhdmlld01vZGVsXCI+XG4gICAgICAgIE5vIGxpY2Vuc2UgZGF0YSBhdmFpbGFibGUuXG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvdGstY2FyZD5cbiJdfQ==
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGljZW5jZXMtcmVxdWlyZW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL2NvbnRhY3QtY2VudGVyL2NjLXJlYWRpbmVzcy93aWRnZXRzL2xpY2VuY2VzLXJlcXVpcmVtZW50L2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9jb250YWN0LWNlbnRlci9jYy1yZWFkaW5lc3Mvd2lkZ2V0cy9saWNlbmNlcy1yZXF1aXJlbWVudC9saWNlbmNlcy1yZXF1aXJlbWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXRHLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFpQ2hFLE1BQU0sYUFBYSxHQUFHO0lBQ3BCLFFBQVEsRUFBRSxTQUFTO0lBQ25CLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLEtBQUssRUFBRSxTQUFTO0NBQ2pCLENBQUM7QUFPRixNQUFNLE9BQU8sNEJBQTRCO0lBTHpDO1FBU21CLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBR2pFLGNBQVMsR0FBdUMsSUFBSSxDQUFDO1FBQ3JELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUVkLFlBQU8sR0FBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLHlCQUFvQixHQUFHLENBQUMsQ0FBQztRQUVqQixZQUFPLEdBQW9DLElBQUksQ0FBQztL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V0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRixPQUFPO1lBQ0wsTUFBTTtZQUNOLEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsT0FBTztnQkFDYixNQUFNLEVBQUUsR0FBRzthQUNaO1lBQ0QsTUFBTTtZQUNOLE1BQU07WUFDTixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLEtBQUs7YUFDWjtZQUNELFdBQVcsRUFBRTtnQkFDWCxHQUFHLEVBQUU7b0JBQ0gsS0FBSyxFQUFFO3dCQUNMLElBQUksRUFBRSxLQUFLO3FCQUNaO2lCQUNGO2FBQ0Y7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsT0FBTyxFQUFFLEtBQUs7YUFDZjtZQUNELE9BQU8sRUFBRTtnQkFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFPO2FBQ2xCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxLQUFhO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELGdEQUFnRDtRQUNoRCxNQUFNLFVBQVUsR0FBRyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzFDLENBQUM7OzBIQS9MVSw0QkFBNEI7OEdBQTVCLDRCQUE0QiwwSUMvQ3pDLGswRkEyRUE7NEZENUJhLDRCQUE0QjtrQkFMeEMsU0FBUzsrQkFDRSx5QkFBeUI7OEJBSzFCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwZXhDaGFydCwgQXBleERhdGFMYWJlbHMsIEFwZXhMZWdlbmQsIEFwZXhOb25BeGlzQ2hhcnRTZXJpZXMsIEFwZXhQbG90T3B0aW9ucywgQXBleFRvb2x0aXAgfSBmcm9tICduZy1hcGV4Y2hhcnRzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUsIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ2NSZWFkaW5lc3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2MtcmVhZGluZXNzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnkgfSBmcm9tICcuLi8uLi90eXBlcy9jYy1yZWFkaW5lc3MnO1xyXG5cclxuaW50ZXJmYWNlIExpY2Vuc2VMZWdlbmRJdGVtIHtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNvdW50OiBudW1iZXI7XHJcbiAgcGVyY2VudGFnZTogbnVtYmVyO1xyXG4gIGNvbG9yOiBzdHJpbmc7XHJcbn1cclxuXHJcbmludGVyZmFjZSBMaWNlbnNlVGFibGVSb3cge1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgdmFsdWU6IG51bWJlcjtcclxufVxyXG5cclxuaW50ZXJmYWNlIExpY2Vuc2VDaGFydE9wdGlvbnMge1xyXG4gIHNlcmllczogQXBleE5vbkF4aXNDaGFydFNlcmllcztcclxuICBjaGFydDogQXBleENoYXJ0O1xyXG4gIGxhYmVsczogc3RyaW5nW107XHJcbiAgY29sb3JzOiBzdHJpbmdbXTtcclxuICBsZWdlbmQ6IEFwZXhMZWdlbmQ7XHJcbiAgcGxvdE9wdGlvbnM6IEFwZXhQbG90T3B0aW9ucztcclxuICBkYXRhTGFiZWxzOiBBcGV4RGF0YUxhYmVscztcclxuICB0b29sdGlwOiBBcGV4VG9vbHRpcDtcclxufVxyXG5cclxuaW50ZXJmYWNlIExpY2Vuc2VSZXF1aXJlbWVudFZpZXdNb2RlbCB7XHJcbiAgY2hhcnRPcHRpb25zOiBMaWNlbnNlQ2hhcnRPcHRpb25zO1xyXG4gIGxlZ2VuZEl0ZW1zOiBMaWNlbnNlTGVnZW5kSXRlbVtdO1xyXG4gIHJvd3M6IExpY2Vuc2VUYWJsZVJvd1tdO1xyXG4gIHRvdGFsUmVxdWlyZWQ6IG51bWJlcjtcclxufVxyXG5cclxuY29uc3QgTEVHRU5EX0NPTE9SUyA9IHtcclxuICBleGlzdGluZzogJyMxNkE2OTMnLFxyXG4gIG1pc3Npbmc6ICcjODA4MDgwJyxcclxuICBlbXB0eTogJyNFMEUwRTAnXHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NjLWxpY2Vuc2VzLXJlcXVpcmVtZW50JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGljZW5jZXMtcmVxdWlyZW1lbnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xpY2VuY2VzLXJlcXVpcmVtZW50LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIExpY2VuY2VzUmVxdWlyZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBjdXN0b21lcklkITogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHRva2VuITogc3RyaW5nO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGNjUmVhZGluZXNzU2VydmljZSA9IGluamVjdChDY1JlYWRpbmVzc1NlcnZpY2UpO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG5cclxuICB2aWV3TW9kZWw6IExpY2Vuc2VSZXF1aXJlbWVudFZpZXdNb2RlbCB8IG51bGwgPSBudWxsO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuICBlcnJvciA9IGZhbHNlO1xyXG5cclxuICBmaWx0ZXJzOiBzdHJpbmdbXSA9IFsnQWxsJ107XHJcbiAgc2VsZWN0ZWRTdW1tYXJ5SW5kZXggPSAwO1xyXG5cclxuICBwcml2YXRlIHN1bW1hcnk6IFdlYmV4TGljZW5zZVVzYWdlU3VtbWFyeSB8IG51bGwgPSBudWxsO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZFN1bW1hcmllcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICgoY2hhbmdlc1snY3VzdG9tZXJJZCddICYmICFjaGFuZ2VzWydjdXN0b21lcklkJ10uZmlyc3RDaGFuZ2UpIHx8XHJcbiAgICAgIChjaGFuZ2VzWyd0b2tlbiddICYmICFjaGFuZ2VzWyd0b2tlbiddLmZpcnN0Q2hhbmdlKSkge1xyXG4gICAgICB0aGlzLmxvYWRTdW1tYXJpZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRmlsdGVyQ2hhbmdlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGlmICghaXNOYU4oaW5kZXgpICYmIGluZGV4ID49IDAgJiYgaW5kZXggPCB0aGlzLmZpbHRlcnMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0RmlsdGVyKGluZGV4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9hZFN1bW1hcmllcygpOiB2b2lkIHtcclxuICAgIGNvbnN0IG51bWVyaWNDdXN0b21lcklkID0gTnVtYmVyKHRoaXMuY3VzdG9tZXJJZCk7XHJcbiAgICBpZiAoIW51bWVyaWNDdXN0b21lcklkIHx8ICF0aGlzLnRva2VuKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmVycm9yID0gZmFsc2U7XHJcbiAgICB0aGlzLnZpZXdNb2RlbCA9IG51bGw7XHJcbiAgICB0aGlzLnNlbGVjdGVkU3VtbWFyeUluZGV4ID0gMDtcclxuXHJcbiAgICB0aGlzLmNjUmVhZGluZXNzU2VydmljZS5zZXRUb2tlbih0aGlzLnRva2VuKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5jY1JlYWRpbmVzc1NlcnZpY2UuZmV0Y2hXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnkobnVtZXJpY0N1c3RvbWVySWQpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcignVW5hYmxlIHRvIGxvYWQgV2ViZXggbGljZW5zZSB1c2FnZSBzdW1tYXJ5JywgZXJyb3IpO1xyXG4gICAgICAgICAgdGhpcy5lcnJvciA9IHRydWU7XHJcbiAgICAgICAgICByZXR1cm4gb2Y8V2ViZXhMaWNlbnNlVXNhZ2VTdW1tYXJ5W10+KFtdKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLmxvYWRpbmcgPSBmYWxzZSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKGl0ZW1zID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZygnUmF3IEFQSSByZXNwb25zZTonLCBpdGVtcyk7XHJcbiAgICAgICAgLy8gSGFuZGxlIGJvdGggYXJyYXkgYW5kIHNpbmdsZSBvYmplY3QgcmVzcG9uc2VzXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbXMpICYmIGl0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc3VtbWFyeSA9IGl0ZW1zWzBdO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbXMgJiYgdHlwZW9mIGl0ZW1zID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShpdGVtcykpIHtcclxuICAgICAgICAgIC8vIElmIHNpbmdsZSBvYmplY3QgcmV0dXJuZWQsIHVzZSBpdCBkaXJlY3RseVxyXG4gICAgICAgICAgdGhpcy5zdW1tYXJ5ID0gaXRlbXMgYXMgdW5rbm93biBhcyBXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc3VtbWFyeSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBCdWlsZCBmaWx0ZXJzIGR5bmFtaWNhbGx5IGZyb20gbGljZW5zZSBuYW1lc1xyXG4gICAgICAgIGlmICh0aGlzLnN1bW1hcnk/LmxpY2Vuc2VzPy5sZW5ndGgpIHtcclxuICAgICAgICAgIHRoaXMuZmlsdGVycyA9IFsnQWxsJywgLi4udGhpcy5zdW1tYXJ5LmxpY2Vuc2VzLm1hcChsID0+IGwubmFtZSldO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlcnMgPSBbJ0FsbCddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc29sZS5sb2coJ1Byb2Nlc3NlZCBzdW1tYXJ5OicsIHRoaXMuc3VtbWFyeSk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RGaWx0ZXIoMCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZWxlY3RGaWx0ZXIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZFN1bW1hcnlJbmRleCA9IGluZGV4O1xyXG4gICAgaWYgKCF0aGlzLnN1bW1hcnkpIHtcclxuICAgICAgdGhpcy52aWV3TW9kZWwgPSBudWxsO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnZpZXdNb2RlbCA9IHRoaXMubWFwU3VtbWFyeVRvVmlld01vZGVsKHRoaXMuc3VtbWFyeSwgaW5kZXgpO1xyXG4gICAgY29uc29sZS5sb2coJ0NyZWF0ZWQgdmlld01vZGVsIGZvciBmaWx0ZXIgaW5kZXgnLCBpbmRleCwgJzonLCB0aGlzLnZpZXdNb2RlbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG1hcFN1bW1hcnlUb1ZpZXdNb2RlbChzdW1tYXJ5OiBXZWJleExpY2Vuc2VVc2FnZVN1bW1hcnksIGZpbHRlckluZGV4OiBudW1iZXIpOiBMaWNlbnNlUmVxdWlyZW1lbnRWaWV3TW9kZWwge1xyXG4gICAgY29uc29sZS5sb2coJ01hcHBpbmcgc3VtbWFyeSB0byB2aWV3TW9kZWw6Jywgc3VtbWFyeSwgJ2ZpbHRlckluZGV4OicsIGZpbHRlckluZGV4KTtcclxuXHJcbiAgICBjb25zdCBsaWNlbnNlcyA9IHN1bW1hcnkubGljZW5zZXMgfHwgW107XHJcblxyXG4gICAgbGV0IGV4aXN0aW5nQ291bnQ6IG51bWJlcjtcclxuICAgIGxldCBtaXNzaW5nQ291bnQ6IG51bWJlcjtcclxuICAgIGxldCByb3dzOiBMaWNlbnNlVGFibGVSb3dbXTtcclxuXHJcbiAgICBpZiAoZmlsdGVySW5kZXggPT09IDApIHtcclxuICAgICAgLy8gXCJBbGxcIiBmaWx0ZXI6IHNob3cgdG90YWxFeGlzdGluZ0xpY2Vuc2VzIHZzIHRvdGFsIGNvbnN1bWVkVW5pdHNcclxuICAgICAgZXhpc3RpbmdDb3VudCA9IHN1bW1hcnkudG90YWxFeGlzdGluZ0xpY2Vuc2VzID8/IDA7XHJcbiAgICAgIG1pc3NpbmdDb3VudCA9IGxpY2Vuc2VzLnJlZHVjZSgoYWNjLCBsKSA9PiBhY2MgKyBsLmNvbnN1bWVkVW5pdHMsIDApO1xyXG4gICAgICByb3dzID0gbGljZW5zZXMubWFwKGwgPT4gKHtcclxuICAgICAgICBsYWJlbDogbC5uYW1lLFxyXG4gICAgICAgIHZhbHVlOiBsLmNvbnN1bWVkVW5pdHNcclxuICAgICAgfSkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gU3BlY2lmaWMgbGljZW5zZSBmaWx0ZXI6IHNob3cgMCBleGlzdGluZyB2cyBjb25zdW1lZFVuaXRzIGZvciB0aGF0IGxpY2Vuc2VcclxuICAgICAgY29uc3Qgc2VsZWN0ZWRMaWNlbnNlID0gbGljZW5zZXNbZmlsdGVySW5kZXggLSAxXTtcclxuICAgICAgZXhpc3RpbmdDb3VudCA9IDA7XHJcbiAgICAgIG1pc3NpbmdDb3VudCA9IHNlbGVjdGVkTGljZW5zZT8uY29uc3VtZWRVbml0cyA/PyAwO1xyXG4gICAgICByb3dzID0gc2VsZWN0ZWRMaWNlbnNlID8gW3sgbGFiZWw6IHNlbGVjdGVkTGljZW5zZS5uYW1lLCB2YWx1ZTogc2VsZWN0ZWRMaWNlbnNlLmNvbnN1bWVkVW5pdHMgfV0gOiBbXTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB0b3RhbExpY2Vuc2VzID0gZXhpc3RpbmdDb3VudCArIG1pc3NpbmdDb3VudDtcclxuXHJcbiAgICBjb25zdCBsZWdlbmRJdGVtczogTGljZW5zZUxlZ2VuZEl0ZW1bXSA9IFtcclxuICAgICAge1xyXG4gICAgICAgIGxhYmVsOiAnRXhpc3RpbmcgbGljZW5zZXMnLFxyXG4gICAgICAgIGNvdW50OiBleGlzdGluZ0NvdW50LFxyXG4gICAgICAgIHBlcmNlbnRhZ2U6IHRvdGFsTGljZW5zZXMgPiAwID8gKGV4aXN0aW5nQ291bnQgLyB0b3RhbExpY2Vuc2VzKSAqIDEwMCA6IDAsXHJcbiAgICAgICAgY29sb3I6IExFR0VORF9DT0xPUlMuZXhpc3RpbmdcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGxhYmVsOiAnTWlzc2luZyBsaWNlbnNlcycsXHJcbiAgICAgICAgY291bnQ6IG1pc3NpbmdDb3VudCxcclxuICAgICAgICBwZXJjZW50YWdlOiB0b3RhbExpY2Vuc2VzID4gMCA/IChtaXNzaW5nQ291bnQgLyB0b3RhbExpY2Vuc2VzKSAqIDEwMCA6IDAsXHJcbiAgICAgICAgY29sb3I6IExFR0VORF9DT0xPUlMubWlzc2luZ1xyXG4gICAgICB9XHJcbiAgICBdO1xyXG5cclxuICAgIGNvbnNvbGUubG9nKCdMZWdlbmQgaXRlbXM6JywgbGVnZW5kSXRlbXMpO1xyXG4gICAgY29uc29sZS5sb2coJ1RhYmxlIHJvd3M6Jywgcm93cyk7XHJcblxyXG4gICAgY29uc3QgdG90YWxSZXF1aXJlZCA9IGV4aXN0aW5nQ291bnQgKyBtaXNzaW5nQ291bnQ7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2hhcnRPcHRpb25zOiB0aGlzLmJ1aWxkQ2hhcnRPcHRpb25zKGxlZ2VuZEl0ZW1zKSxcclxuICAgICAgbGVnZW5kSXRlbXMsXHJcbiAgICAgIHJvd3MsXHJcbiAgICAgIHRvdGFsUmVxdWlyZWRcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkQ2hhcnRPcHRpb25zKGxlZ2VuZEl0ZW1zOiBMaWNlbnNlTGVnZW5kSXRlbVtdKTogTGljZW5zZUNoYXJ0T3B0aW9ucyB7XHJcbiAgICBjb25zdCB0b3RhbENvdW50ID0gbGVnZW5kSXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+IGFjYyArIGl0ZW0uY291bnQsIDApO1xyXG4gICAgY29uc3QgaXNFbXB0eSA9IHRvdGFsQ291bnQgPT09IDA7XHJcblxyXG4gICAgLy8gRm9yIGVtcHR5IGNoYXJ0LCBzaG93IGEgZnVsbCBsaWdodCBncmF5IGRvbnV0XHJcbiAgICBjb25zdCBzZXJpZXMgPSBpc0VtcHR5ID8gWzFdIDogbGVnZW5kSXRlbXMubWFwKGl0ZW0gPT4gaXRlbS5jb3VudCk7XHJcbiAgICBjb25zdCBsYWJlbHMgPSBpc0VtcHR5ID8gWydObyBkYXRhJ10gOiBsZWdlbmRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmxhYmVsKTtcclxuICAgIGNvbnN0IGNvbG9ycyA9IGlzRW1wdHkgPyBbTEVHRU5EX0NPTE9SUy5lbXB0eV0gOiBsZWdlbmRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmNvbG9yKTtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBzZXJpZXMsXHJcbiAgICAgIGNoYXJ0OiB7XHJcbiAgICAgICAgdHlwZTogJ2RvbnV0JyxcclxuICAgICAgICBoZWlnaHQ6IDIyMFxyXG4gICAgICB9LFxyXG4gICAgICBsYWJlbHMsXHJcbiAgICAgIGNvbG9ycyxcclxuICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgc2hvdzogZmFsc2VcclxuICAgICAgfSxcclxuICAgICAgcGxvdE9wdGlvbnM6IHtcclxuICAgICAgICBwaWU6IHtcclxuICAgICAgICAgIGRvbnV0OiB7XHJcbiAgICAgICAgICAgIHNpemU6ICc3NSUnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBkYXRhTGFiZWxzOiB7XHJcbiAgICAgICAgZW5hYmxlZDogZmFsc2VcclxuICAgICAgfSxcclxuICAgICAgdG9vbHRpcDoge1xyXG4gICAgICAgIGVuYWJsZWQ6ICFpc0VtcHR5XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG5vcm1hbGl6ZVBlcmNlbnRhZ2UodmFsdWU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBpZiAoIWlzRmluaXRlKHZhbHVlKSkge1xyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH1cclxuICAgIC8vIENvbnZlcnQgZGVjaW1hbCB0byBwZXJjZW50YWdlICgwLjk0ODcg4oaSIDk0LjkpXHJcbiAgICBjb25zdCBwZXJjZW50YWdlID0gdmFsdWUgKiAxMDA7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZChwZXJjZW50YWdlICogMTApIC8gMTA7XHJcbiAgfVxyXG59XHJcbiIsIjx0ay1jYXJkIHRpdGxlPVwiTGljZW5zZXMgcmVxdWlyZW1lbnRcIj5cclxuICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwiY2FyZC1jb250ZW50XCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwid2lkZ2V0LWJvZHlcIlxyXG4gICAgICAqbmdJZj1cIiFsb2FkaW5nICYmICFlcnJvciAmJiB2aWV3TW9kZWw7IGVsc2Ugd2lkZ2V0U3RhdGVcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibGVmdC1zZWN0aW9uXCI+XHJcbiAgICAgICAgPG1hdC1zZWxlY3RcclxuICAgICAgICAgIFsodmFsdWUpXT1cInNlbGVjdGVkU3VtbWFyeUluZGV4XCJcclxuICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoJGV2ZW50LnZhbHVlKVwiXHJcbiAgICAgICAgICBjbGFzcz1cImZpbHRlci1zZWxlY3RcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyczsgaW5kZXggYXMgaVwiIFt2YWx1ZV09XCJpXCI+XHJcbiAgICAgICAgICAgIHt7IG9wdGlvbiB9fVxyXG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDwvbWF0LXNlbGVjdD5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNoYXJ0LXNlY3Rpb25cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGFydC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxhcHgtY2hhcnRcclxuICAgICAgICAgICAgICBbc2VyaWVzXT1cInZpZXdNb2RlbC5jaGFydE9wdGlvbnMuc2VyaWVzXCJcclxuICAgICAgICAgICAgICBbY2hhcnRdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy5jaGFydFwiXHJcbiAgICAgICAgICAgICAgW2xhYmVsc109XCJ2aWV3TW9kZWwuY2hhcnRPcHRpb25zLmxhYmVsc1wiXHJcbiAgICAgICAgICAgICAgW2NvbG9yc109XCJ2aWV3TW9kZWwuY2hhcnRPcHRpb25zLmNvbG9yc1wiXHJcbiAgICAgICAgICAgICAgW2xlZ2VuZF09XCJ2aWV3TW9kZWwuY2hhcnRPcHRpb25zLmxlZ2VuZFwiXHJcbiAgICAgICAgICAgICAgW3Bsb3RPcHRpb25zXT1cInZpZXdNb2RlbC5jaGFydE9wdGlvbnMucGxvdE9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgIFtkYXRhTGFiZWxzXT1cInZpZXdNb2RlbC5jaGFydE9wdGlvbnMuZGF0YUxhYmVsc1wiXHJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBdPVwidmlld01vZGVsLmNoYXJ0T3B0aW9ucy50b29sdGlwXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L2FweC1jaGFydD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxlZ2VuZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kLWl0ZW1cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiB2aWV3TW9kZWwubGVnZW5kSXRlbXNcIj5cclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJsZWdlbmQtbWFya2VyXCJcclxuICAgICAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiaXRlbS5jb2xvclwiXHJcbiAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZ2VuZC1sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWdlbmQtdmFsdWVcIj57eyBpdGVtLmNvdW50IHwgbnVtYmVyIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGFibGUtc2VjdGlvblwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaWMtdGFibGUtaGVhZGVyXCI+XHJcbiAgICAgICAgICA8c3Bhbj5MaWNlbnNlPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4+UmVxdWlyZWQ8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJvd1wiICpuZ0Zvcj1cImxldCByb3cgb2Ygdmlld01vZGVsLnJvd3NcIj5cclxuICAgICAgICAgIDxzcGFuPnt7IHJvdy5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuPnt7IHJvdy52YWx1ZSB8IG51bWJlciB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcm93IHRvdGFsLXJvd1wiPlxyXG4gICAgICAgICAgPHNwYW4+VG90YWw8L3NwYW4+XHJcbiAgICAgICAgICA8c3Bhbj57eyB2aWV3TW9kZWwudG90YWxSZXF1aXJlZCB8IG51bWJlciB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI3dpZGdldFN0YXRlPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3RhdGUtbWVzc2FnZVwiICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgIExvYWRpbmcgbGljZW5zZSByZXF1aXJlbWVudHPigKZcclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdGF0ZS1tZXNzYWdlIGVycm9yXCIgKm5nSWY9XCIhbG9hZGluZyAmJiBlcnJvclwiPlxyXG4gICAgICAgIFVuYWJsZSB0byBsb2FkIGxpY2Vuc2UgcmVxdWlyZW1lbnRzLlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInN0YXRlLW1lc3NhZ2VcIiAqbmdJZj1cIiFsb2FkaW5nICYmICFlcnJvciAmJiAhdmlld01vZGVsXCI+XHJcbiAgICAgICAgTm8gbGljZW5zZSBkYXRhIGF2YWlsYWJsZS5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L3RrLWNhcmQ+XHJcbiJdfQ==
@@ -26,13 +26,13 @@ export class ProgressBarComponent {
26
26
  }
27
27
  }
28
28
  ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ProgressBarComponent, selector: "app-progress-bar", inputs: { isAvailable: "isAvailable", progress: "progress" }, ngImport: i0, template: "<!--<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\n <div class=\"progress-bar {{color}}\" [ngStyle]=\"{'width': progress + '%'}\"></div>\n</div>-->\n<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\n <div class=\"progress-bar\" [ngClass]=\"color\" [style.width.%]=\"progress\"></div>\n</div>\n", styles: [".progress-bar-container{background-color:#e5e5e5;border-radius:20px;width:100%}.progress-bar{height:7px;width:0;border-radius:15px;text-align:center}.progress-percent{font-weight:600}.progress-bar.green{background-color:#94d326}.progress-bar.red{background-color:#ed4364}.progress-bar.yellow{background-color:#fed200}.progress-bar{height:8px;border-radius:4px;transition:width .25s ease,background-color .25s ease}.progress-bar.red{background-color:#e53935}.progress-bar.yellow{background-color:#fbc02d}.progress-bar.darkblue{background-color:#1e3a8a}.progress-bar.lightblue{background-color:#60a5fa}.progress-bar.green{background-color:#22c55e}.progress-bar.grey{background-color:#9ca3af}.progress-bar.darkblue{background-color:#2c355d}.progress-bar.lightblue{background-color:#2299d9}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
29
+ ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ProgressBarComponent, selector: "app-progress-bar", inputs: { isAvailable: "isAvailable", progress: "progress" }, ngImport: i0, template: "<!--<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\r\n <div class=\"progress-bar {{color}}\" [ngStyle]=\"{'width': progress + '%'}\"></div>\r\n</div>-->\r\n<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\r\n <div class=\"progress-bar\" [ngClass]=\"color\" [style.width.%]=\"progress\"></div>\r\n</div>\r\n", styles: [".progress-bar-container{background-color:#e5e5e5;border-radius:20px;width:100%}.progress-bar{height:7px;width:0;border-radius:15px;text-align:center}.progress-percent{font-weight:600}.progress-bar.green{background-color:#94d326}.progress-bar.red{background-color:#ed4364}.progress-bar.yellow{background-color:#fed200}.progress-bar{height:8px;border-radius:4px;transition:width .25s ease,background-color .25s ease}.progress-bar.red{background-color:#e53935}.progress-bar.yellow{background-color:#fbc02d}.progress-bar.darkblue{background-color:#1e3a8a}.progress-bar.lightblue{background-color:#60a5fa}.progress-bar.green{background-color:#22c55e}.progress-bar.grey{background-color:#9ca3af}.progress-bar.darkblue{background-color:#2c355d}.progress-bar.lightblue{background-color:#2299d9}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
30
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ProgressBarComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: 'app-progress-bar', template: "<!--<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\n <div class=\"progress-bar {{color}}\" [ngStyle]=\"{'width': progress + '%'}\"></div>\n</div>-->\n<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\n <div class=\"progress-bar\" [ngClass]=\"color\" [style.width.%]=\"progress\"></div>\n</div>\n", styles: [".progress-bar-container{background-color:#e5e5e5;border-radius:20px;width:100%}.progress-bar{height:7px;width:0;border-radius:15px;text-align:center}.progress-percent{font-weight:600}.progress-bar.green{background-color:#94d326}.progress-bar.red{background-color:#ed4364}.progress-bar.yellow{background-color:#fed200}.progress-bar{height:8px;border-radius:4px;transition:width .25s ease,background-color .25s ease}.progress-bar.red{background-color:#e53935}.progress-bar.yellow{background-color:#fbc02d}.progress-bar.darkblue{background-color:#1e3a8a}.progress-bar.lightblue{background-color:#60a5fa}.progress-bar.green{background-color:#22c55e}.progress-bar.grey{background-color:#9ca3af}.progress-bar.darkblue{background-color:#2c355d}.progress-bar.lightblue{background-color:#2299d9}\n"] }]
32
+ args: [{ selector: 'app-progress-bar', template: "<!--<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\r\n <div class=\"progress-bar {{color}}\" [ngStyle]=\"{'width': progress + '%'}\"></div>\r\n</div>-->\r\n<div *ngIf=\"isAvailable\" class=\"progress-bar-container\">\r\n <div class=\"progress-bar\" [ngClass]=\"color\" [style.width.%]=\"progress\"></div>\r\n</div>\r\n", styles: [".progress-bar-container{background-color:#e5e5e5;border-radius:20px;width:100%}.progress-bar{height:7px;width:0;border-radius:15px;text-align:center}.progress-percent{font-weight:600}.progress-bar.green{background-color:#94d326}.progress-bar.red{background-color:#ed4364}.progress-bar.yellow{background-color:#fed200}.progress-bar{height:8px;border-radius:4px;transition:width .25s ease,background-color .25s ease}.progress-bar.red{background-color:#e53935}.progress-bar.yellow{background-color:#fbc02d}.progress-bar.darkblue{background-color:#1e3a8a}.progress-bar.lightblue{background-color:#60a5fa}.progress-bar.green{background-color:#22c55e}.progress-bar.grey{background-color:#9ca3af}.progress-bar.darkblue{background-color:#2c355d}.progress-bar.lightblue{background-color:#2299d9}\n"] }]
33
33
  }], propDecorators: { isAvailable: [{
34
34
  type: Input
35
35
  }], progress: [{
36
36
  type: Input
37
37
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9kaTJtdC93aWRnZXRzL3NpdGUtdXBncmFkZS9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9kaTJtdC93aWRnZXRzL3NpdGUtdXBncmFkZS9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPakQsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU1XLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXJCLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFPdEIsVUFBSyxHQUFXLE1BQU0sQ0FBQztLQVN4QjtJQWZDLElBQWEsUUFBUSxDQUFDLEtBQWE7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUlqQyxRQUFRLENBQUMsQ0FBUztRQUN4QixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQVEsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7YUFDakMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO2FBQ3BDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFBRyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQzthQUN0QyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7O1lBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO0lBQzFDLENBQUM7O2tIQWxCVSxvQkFBb0I7c0dBQXBCLG9CQUFvQixzSENQakMsb1VBTUE7NEZEQ2Esb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFLbkIsV0FBVztzQkFBbkIsS0FBSztnQkFHTyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZ3Jlc3MtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2dyZXNzLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQmFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaXNBdmFpbGFibGUgPSBmYWxzZTtcblxuICBwcml2YXRlIF9wcm9ncmVzcyA9IDA7XG4gIEBJbnB1dCgpIHNldCBwcm9ncmVzcyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcHJvZ3Jlc3MgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxMDAsIE51bWJlcih2YWx1ZSkgfHwgMCkpO1xuICAgIHRoaXMuc2V0Q29sb3IodGhpcy5fcHJvZ3Jlc3MpO1xuICB9XG4gIGdldCBwcm9ncmVzcygpIHsgcmV0dXJuIHRoaXMuX3Byb2dyZXNzOyB9XG5cbiAgY29sb3I6IHN0cmluZyA9ICdncmV5JztcblxuICBwcml2YXRlIHNldENvbG9yKHA6IG51bWJlcik6IHZvaWQge1xuICAgIGlmIChwIDw9IDIwKSAgICAgICB0aGlzLmNvbG9yID0gJ3JlZCc7XG4gICAgZWxzZSBpZiAocCA8PSA0MCkgIHRoaXMuY29sb3IgPSAneWVsbG93JztcbiAgICBlbHNlIGlmIChwIDw9IDYwKSAgdGhpcy5jb2xvciA9ICdkYXJrYmx1ZSc7XG4gICAgZWxzZSBpZiAocCA8PSA4MCkgIHRoaXMuY29sb3IgPSAnbGlnaHRibHVlJztcbiAgICBlbHNlICAgICAgICAgICAgICAgdGhpcy5jb2xvciA9ICdncmVlbic7XG4gIH1cbn1cbiIsIjwhLS08ZGl2ICpuZ0lmPVwiaXNBdmFpbGFibGVcIiBjbGFzcz1cInByb2dyZXNzLWJhci1jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cInByb2dyZXNzLWJhciB7e2NvbG9yfX1cIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogcHJvZ3Jlc3MgKyAnJSd9XCI+PC9kaXY+XG48L2Rpdj4tLT5cbjxkaXYgKm5nSWY9XCJpc0F2YWlsYWJsZVwiIGNsYXNzPVwicHJvZ3Jlc3MtYmFyLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtYmFyXCIgW25nQ2xhc3NdPVwiY29sb3JcIiBbc3R5bGUud2lkdGguJV09XCJwcm9ncmVzc1wiPjwvZGl2PlxuPC9kaXY+XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9kaTJtdC93aWRnZXRzL3NpdGUtdXBncmFkZS9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy9kaTJtdC93aWRnZXRzL3NpdGUtdXBncmFkZS9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPakQsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU1XLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXJCLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFPdEIsVUFBSyxHQUFXLE1BQU0sQ0FBQztLQVN4QjtJQWZDLElBQWEsUUFBUSxDQUFDLEtBQWE7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUlqQyxRQUFRLENBQUMsQ0FBUztRQUN4QixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQVEsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7YUFDakMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO2FBQ3BDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFBRyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQzthQUN0QyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7O1lBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO0lBQzFDLENBQUM7O2tIQWxCVSxvQkFBb0I7c0dBQXBCLG9CQUFvQixzSENQakMsZ1ZBTUE7NEZEQ2Esb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFLbkIsV0FBVztzQkFBbkIsS0FBSztnQkFHTyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZ3Jlc3MtYmFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3NCYXJDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGlzQXZhaWxhYmxlID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3Byb2dyZXNzID0gMDtcclxuICBASW5wdXQoKSBzZXQgcHJvZ3Jlc3ModmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fcHJvZ3Jlc3MgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxMDAsIE51bWJlcih2YWx1ZSkgfHwgMCkpO1xyXG4gICAgdGhpcy5zZXRDb2xvcih0aGlzLl9wcm9ncmVzcyk7XHJcbiAgfVxyXG4gIGdldCBwcm9ncmVzcygpIHsgcmV0dXJuIHRoaXMuX3Byb2dyZXNzOyB9XHJcblxyXG4gIGNvbG9yOiBzdHJpbmcgPSAnZ3JleSc7XHJcblxyXG4gIHByaXZhdGUgc2V0Q29sb3IocDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAocCA8PSAyMCkgICAgICAgdGhpcy5jb2xvciA9ICdyZWQnO1xyXG4gICAgZWxzZSBpZiAocCA8PSA0MCkgIHRoaXMuY29sb3IgPSAneWVsbG93JztcclxuICAgIGVsc2UgaWYgKHAgPD0gNjApICB0aGlzLmNvbG9yID0gJ2RhcmtibHVlJztcclxuICAgIGVsc2UgaWYgKHAgPD0gODApICB0aGlzLmNvbG9yID0gJ2xpZ2h0Ymx1ZSc7XHJcbiAgICBlbHNlICAgICAgICAgICAgICAgdGhpcy5jb2xvciA9ICdncmVlbic7XHJcbiAgfVxyXG59XHJcbiIsIjwhLS08ZGl2ICpuZ0lmPVwiaXNBdmFpbGFibGVcIiBjbGFzcz1cInByb2dyZXNzLWJhci1jb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtYmFyIHt7Y29sb3J9fVwiIFtuZ1N0eWxlXT1cInsnd2lkdGgnOiBwcm9ncmVzcyArICclJ31cIj48L2Rpdj5cclxuPC9kaXY+LS0+XHJcbjxkaXYgKm5nSWY9XCJpc0F2YWlsYWJsZVwiIGNsYXNzPVwicHJvZ3Jlc3MtYmFyLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy1iYXJcIiBbbmdDbGFzc109XCJjb2xvclwiIFtzdHlsZS53aWR0aC4lXT1cInByb2dyZXNzXCI+PC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -421,10 +421,10 @@ export class SiteUpgradeDataTableComponent {
421
421
  }
422
422
  }
423
423
  SiteUpgradeDataTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SiteUpgradeDataTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
424
- SiteUpgradeDataTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SiteUpgradeDataTableComponent, selector: "tk-site-upgrade-data-table", inputs: { token: "token", customerId: "customerId" }, ngImport: i0, template: "<div *ngIf=\"dataPending\" class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n\r\n<div id=\"siteUpgradeTable\" class=\"wrapper\">\r\n <div class=\"site-upgrade-status-wrapper\">\r\n <tk-summary-card [description]=\"'Sites are ready to upgrade'\" [value]=\"statusCounts['Ready']\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites are not ready'\" [value]=\"statusCounts['Not Ready']\"\r\n [status]=\"'Not Ready'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites failed to upgrade'\" [value]=\"statusCounts['Failed']\"\r\n [status]=\"'Failed'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Successfully upgraded'\" [value]=\"statusCounts['Completed']\"\r\n [status]=\"'Completed'\"></tk-summary-card>\r\n </div>\r\n <div class=\"table-action-panel\">\r\n <tk-table-filters *ngIf=\"filters.length > 0\" [filters]=\"filters\" (filter)=\"onFilter($event)\"></tk-table-filters>\r\n <div class=\"action-wrapper\">\r\n <span>{{ filteredDataCount }} Sites</span>\r\n </div>\r\n </div>\r\n <table mat-table [dataSource]=\"data\" class=\"site-upgrade-table\">\r\n\r\n <!-- Site Column -->\r\n <ng-container matColumnDef=\"site\">\r\n <th mat-header-cell *matHeaderCellDef>Site</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"site-info\">\r\n {{ element.siteName }}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Ready Users Column -->\r\n <ng-container matColumnDef=\"ready users\">\r\n <th mat-header-cell *matHeaderCellDef>Ready Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalReadyUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Ready/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Upgraded Users Column -->\r\n <ng-container matColumnDef=\"upgraded users\">\r\n <th mat-header-cell *matHeaderCellDef>Upgraded Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalUpgradedUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Upgraded/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Location Mapping Column -->\r\n <ng-container matColumnDef=\"location mapping\">\r\n <th mat-header-cell *matHeaderCellDef>Location Mapping</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.locationMapping\" src=\"assets/icons/check2_icon.png\" alt=\"Location Mapping Enabled\"/>\r\n <img *ngIf=\"!element.locationMapping\" src=\"assets/icons/issue_icon.png\" alt=\"Location Mapping Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- PSTN Trunk Column -->\r\n <ng-container matColumnDef=\"pstn trunk\">\r\n <th mat-header-cell *matHeaderCellDef>PSTN Trunk</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.PSTNTrunk\" src=\"assets/icons/check2_icon.png\" alt=\"PSTN Trunk Enabled\"/>\r\n <img *ngIf=\"!element.PSTNTrunk\" src=\"assets/icons/issue_icon.png\" alt=\"PSTN Trunk Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Site Upgrade Status Column -->\r\n <ng-container matColumnDef=\"site upgrade status\">\r\n <th mat-header-cell *matHeaderCellDef>Site Upgrade Status</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"upgrade-status-cell\">\r\n <ng-container *ngIf=\"element.upgradeStatus === 'READY'; else statusBlock\">\r\n <button mat-button color=\"primary\" class=\"upgrade-button\" (click)=\"onSiteMigration(element)\">Upgrade</button>\r\n </ng-container>\r\n <ng-template #statusBlock>\r\n <div class=\"status-info\">\r\n <span class=\"status-indicator\" [ngClass]=\"getSiteUpgradeStatusClass(element.upgradeStatus)\"></span>\r\n <span>{{ STATUS_ENTRIES[element.upgradeStatus] }}</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"progressBar\">\r\n <th class=\"header\" mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"app-progress-bar-container\">\r\n <app-progress-bar\r\n [isAvailable]=\"element.isProgressBarAvailable\"\r\n [progress]=\"element.progress\"\r\n #progressBars>\r\n </app-progress-bar>\r\n </div>\r\n <span *ngIf=\"element.isProgressBarAvailable\" class=\"progress-percents\">\r\n {{ element.progress }} %\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Action Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef>Actions</th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"progress-spinner-td\">\r\n <div class=\"flex-container\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"defaultBatchMenu\">\r\n <span style=\"font-size: 17px;\">\u22EE</span>\r\n </button>\r\n </div>\r\n\r\n <mat-menu\r\n #defaultBatchMenu=\"matMenu\"\r\n xPosition=\"after\"\r\n class=\"webex-action-menu\">\r\n\r\n <div class=\"webex-action-menu-row\"\r\n [ngClass]=\"{ 'webex-action-menu-row-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED' }\"\r\n (click)=\"element.pending || element.migrationFormStatus === 'NOT_PREPARED' ? $event.stopPropagation() : onCollect(element)\">\r\n <span\r\n class=\"webex-details-icon webex-icon\"\r\n [ngClass]=\"{ 'migration-action-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED'}\">\r\n </span>\r\n <span class=\"webex-action-menu-title\">Collect</span>\r\n </div>\r\n </mat-menu>\r\n\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"userUpgradeLoader\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td class=\"mat-progress-spinner-td\" mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-progress-spinner\r\n *ngIf=\"element.pending\"\r\n class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\">\r\n </mat-progress-spinner>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap\";.webex-action-menu{box-shadow:0 4px 40px #0000001a!important;border-radius:0!important;width:258px;box-sizing:content-box;cursor:pointer}.webex-action-menu-row-disabled{cursor:default!important;opacity:.4}.webex-action-menu-row-disabled .webex-action-menu-title{color:#bababa!important;line-height:23px}.app-progress-bar-container{margin:7px 20px 0 0}.progress-bar-container{min-width:40px}.webex-action-menu-row:hover{background:#f5f5f5}.webex-icon{display:inline-block;height:25px;width:25px;margin:0 7px 0 0}.webex-details-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M16.2115 19.5H17.0961V16H16.2115V19.5ZM16.6538 15.0865C16.7743 15.0929 16.8782 15.0509 16.9653 14.9606C17.0525 14.8702 17.0961 14.7647 17.0961 14.6442C17.0961 14.5237 17.0509 14.4199 16.9605 14.3327C16.8701 14.2455 16.7679 14.2019 16.6538 14.2019C16.5333 14.2019 16.4294 14.2455 16.3422 14.3327C16.2551 14.4199 16.2115 14.5237 16.2115 14.6442C16.2115 14.7583 16.2551 14.8606 16.3422 14.951C16.4294 15.0413 16.5333 15.0865 16.6538 15.0865ZM4.99997 3.99998V10.1827V10.1538V20V3.99998ZM7.25 13.75H10.7231C10.8679 13.4692 11.0307 13.2038 11.2115 12.9538C11.3923 12.7038 11.591 12.4692 11.8077 12.25H7.25V13.75ZM7.25 17.75H10.0173C9.98009 17.5 9.9615 17.2516 9.9615 17.0048C9.9615 16.758 9.97688 16.5064 10.0076 16.25H7.25V17.75ZM5.3077 21.5C4.80257 21.5 4.375 21.325 4.025 20.975C3.675 20.625 3.5 20.1974 3.5 19.6923V4.3077C3.5 3.80257 3.675 3.375 4.025 3.025C4.375 2.675 4.80257 2.5 5.3077 2.5H13.25L18.5 7.74995V10.425C18.2538 10.3506 18.0073 10.2933 17.7605 10.2529C17.5137 10.2125 17.2602 10.1891 17 10.1827V8.49995H12.5V3.99998H5.3077C5.23077 3.99998 5.16024 4.03203 5.09612 4.09613C5.03202 4.16024 4.99997 4.23077 4.99997 4.3077V19.6923C4.99997 19.7692 5.03202 19.8397 5.09612 19.9038C5.16024 19.9679 5.23077 20 5.3077 20H10.7615C10.9064 20.2871 11.0692 20.5557 11.25 20.8057C11.4307 21.0557 11.6327 21.2871 11.8557 21.5H5.3077ZM16.6538 12.3462C17.9025 12.3462 18.9647 12.784 19.8403 13.6596C20.7159 14.5352 21.1538 15.5974 21.1538 16.8461C21.1538 18.0948 20.7159 19.157 19.8403 20.0326C18.9647 20.9083 17.9025 21.3461 16.6538 21.3461C15.4051 21.3461 14.3429 20.9083 13.4673 20.0326C12.5916 19.157 12.1538 18.0948 12.1538 16.8461C12.1538 15.5974 12.5916 14.5352 13.4673 13.6596C14.3429 12.784 15.4051 12.3462 16.6538 12.3462Z%22 fill%3D%22%232C355D%22%2F%3E%3C%2Fsvg%3E\")}.webex-action-menu-row{padding:5px 15px;display:flex;justify-content:flex-start}.webex-action-menu-row .webex-action-menu-title{line-height:23px}.mat-menu-content:not(:empty){padding-top:0!important}.mat-menu-panel{min-height:auto!important}#siteUpgradeTable{font-family:Inter,sans-serif!important}.wrapper{display:flex;flex-direction:column;gap:1rem}.overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff6;z-index:200}.mat-progress-spinner{position:absolute;top:50%;left:50%;margin-top:-20px;margin-left:-25px;width:50px;height:40px;text-align:center;font-size:10px}.mat-progress-spinner-td{position:relative}.mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0;position:absolute}.progress-percents{font-weight:500;font-size:12px}:host ::ng-deep .mat-progress-spinner-td{position:relative}:host ::ng-deep #siteUpgradeTable .mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0}.site-upgrade-status-wrapper{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;align-items:stretch}.site-upgrade-table{width:100%;background:white;border-radius:8px;overflow:hidden;font-size:14px}.site-upgrade-table .mat-header-row{font-size:12px;height:35px}.site-upgrade-table .mat-cell{border-bottom:1px solid #d6d6d6;font-family:Inter,sans-serif!important}.site-upgrade-table .mat-header-cell{border-bottom:1px solid #afafaf;font-family:Inter,sans-serif!important}.site-upgrade-table .site-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .site-info .site-indicator{width:8px;height:8px;border-radius:50%;background-color:#1170cf}.site-upgrade-table .indicator-status-ready{color:#1170cf!important}.site-upgrade-table .device-info{display:flex;align-items:center;gap:12px}.site-upgrade-table .device-info .device-name-wrapper{display:flex;align-items:center;gap:4px}.site-upgrade-table .device-info .device-name-wrapper .device-name{font-weight:500;color:#212121}.site-upgrade-table .device-info .device-name-wrapper .device-indicator{width:8px;height:8px;border-radius:50%;background-color:#f8cd00}.site-upgrade-table .device-info .device-model{font-size:12px;color:#757575}.site-upgrade-table .status-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .status-info .status-indicator{width:8px;height:8px;border-radius:50%}.site-upgrade-table .status-info .status-indicator.ready{background-color:#1170cf}.site-upgrade-table .status-info .status-indicator.partial-ready{background-color:#f8cd00}.site-upgrade-table .status-info .status-indicator.not-ready{background-color:#9e9e9e}.site-upgrade-table .status-info .status-indicator.completed{background-color:#1d805f}.site-upgrade-table .status-info .status-indicator.failed{background-color:#f23933}.site-upgrade-table .dependencies-text{font-size:12px;background-color:#ffe9e9;padding:.25rem .5rem;border-radius:3px;color:#000}.site-upgrade-table .upgrade-status-cell{display:flex;align-items:center;justify-content:flex-start}.site-upgrade-table .flex-container{display:flex}.site-upgrade-table .upgrade-button{font-weight:400!important;border:1px solid rgb(0,0,0)!important;color:#fff!important;background:rgb(0,0,0)!important;border-radius:20px!important;font-size:14px!important;font-style:normal!important;font-weight:500!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important}.site-upgrade-table .upgrade-button:hover{background-color:#000000b0!important}.site-upgrade-table .user-count-info .user-count{font-weight:500;color:#212121}.site-upgrade-table .user-count-info .user-label{font-size:12px;color:#757575}.site-upgrade-table .status-icon-cell,.site-upgrade-table .collect-icon-cell{display:flex;align-items:center}.site-upgrade-table .icon-play{width:24px;height:24px;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2218%22 height%3D%2219%22 viewBox%3D%220 0 18 19%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M8.09567 11.7427L11.3625 9.64421C11.523 9.54226 11.6033 9.40067 11.6033 9.21945C11.6033 9.03821 11.523 8.89615 11.3625 8.79326L8.09567 6.69472C7.92739 6.57933 7.75479 6.5701 7.57787 6.66701C7.40096 6.76391 7.3125 6.91497 7.3125 7.12019V11.3173C7.3125 11.5225 7.40096 11.6736 7.57787 11.7705C7.75479 11.8674 7.92739 11.8581 8.09567 11.7427ZM9.00124 16.3437C8.01579 16.3437 7.08951 16.1567 6.22241 15.7827C5.3553 15.4087 4.60104 14.9012 3.95963 14.26C3.3182 13.6189 2.81041 12.865 2.43624 11.9982C2.06208 11.1315 1.875 10.2054 1.875 9.21999C1.875 8.23454 2.062 7.30826 2.436 6.44116C2.81 5.57405 3.31756 4.81979 3.95869 4.17838C4.59983 3.53695 5.35376 3.02916 6.22048 2.65499C7.08719 2.28083 8.01328 2.09375 8.99873 2.09375C9.98418 2.09375 10.9105 2.28075 11.7776 2.65475C12.6447 3.02875 13.3989 3.53631 14.0403 4.17744C14.6818 4.81858 15.1896 5.57251 15.5637 6.43923C15.9379 7.30594 16.125 8.23203 16.125 9.21748C16.125 10.2029 15.938 11.1292 15.564 11.9963C15.19 12.8634 14.6824 13.6177 14.0413 14.2591C13.4001 14.9005 12.6462 15.4083 11.7795 15.7825C10.9128 16.1566 9.98669 16.3437 9.00124 16.3437ZM8.99998 15.2187C10.675 15.2187 12.0937 14.6375 13.2562 13.475C14.4187 12.3125 15 10.8937 15 9.21873C15 7.54373 14.4187 6.12498 13.2562 4.96248C12.0937 3.79998 10.675 3.21873 8.99998 3.21873C7.32498 3.21873 5.90623 3.79998 4.74373 4.96248C3.58123 6.12498 2.99998 7.54373 2.99998 9.21873C2.99998 10.8937 3.58123 12.3125 4.74373 13.475C5.90623 14.6375 7.32498 15.2187 8.99998 15.2187Z%22 fill%3D%22%232C355D%22%2F%3E%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position:center;background-size:contain}.site-upgrade-table .collect-icon-cell{cursor:pointer}:host ::ng-deep .action-wrapper{display:flex;align-items:center;flex:1;justify-content:space-between;gap:1rem;color:#555}.table-action-panel{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:1rem}.pay-button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #2c355d;background-color:#fff;cursor:pointer;transition:all .3s ease;position:relative}.pay-button-icon:after{content:\"\";width:0;height:0;border-left:6px solid #2c355d;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-left:2px}.pay-button-icon:hover{border-color:#2c355d;background-color:#f8fafc;transform:scale(1.05)}.pay-button-icon:hover:after{border-left-color:#2c355d}.pay-button-icon:active{transform:scale(.95);background-color:#e2e8f0}.pay-button-icon:disabled,.pay-button-icon.disabled{opacity:.5;cursor:not-allowed}.pay-button-icon:disabled:hover,.pay-button-icon.disabled:hover{transform:none;border-color:#d1d5db;background-color:#fff}.pay-button-icon:disabled:hover:after,.pay-button-icon.disabled:hover:after{border-left-color:#2c355d}.pay-button-icon.small{width:32px;height:32px;border-width:1.5px}.pay-button-icon.small:after{border-left-width:6px;border-top-width:5px;border-bottom-width:5px;margin-left:1px}.pay-button-icon.large{width:48px;height:48px;border-width:2.5px}.pay-button-icon.large:after{border-left-width:10px;border-top-width:7px;border-bottom-width:7px;margin-left:3px}.pay-button-icon.xl{width:56px;height:56px;border-width:3px}.pay-button-icon.xl:after{border-left-width:12px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}.pay-button-icon.loading:after{display:none}.pay-button-icon.loading:before{content:\"\";width:16px;height:16px;border:2px solid #2c355d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pay-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#2c355d;transition:color .3s ease}.pay-button .pay-button-icon{margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.SummaryCardComponent, selector: "tk-summary-card", inputs: ["value", "status", "description"] }, { kind: "component", type: i5.TableFiltersComponent, selector: "tk-table-filters", inputs: ["filters"], outputs: ["filter"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.ProgressBarComponent, selector: "app-progress-bar", inputs: ["isAvailable", "progress"] }], encapsulation: i0.ViewEncapsulation.None });
424
+ SiteUpgradeDataTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SiteUpgradeDataTableComponent, selector: "tk-site-upgrade-data-table", inputs: { token: "token", customerId: "customerId" }, ngImport: i0, template: "<div *ngIf=\"dataPending\" class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n\r\n<div id=\"siteUpgradeTable\" class=\"wrapper\">\r\n <div class=\"site-upgrade-status-wrapper\">\r\n <tk-summary-card [description]=\"'Sites are ready to upgrade'\" [value]=\"statusCounts['Ready']\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites are not ready'\" [value]=\"statusCounts['Not Ready']\"\r\n [status]=\"'Not Ready'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites failed to upgrade'\" [value]=\"statusCounts['Failed']\"\r\n [status]=\"'Failed'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Successfully upgraded'\" [value]=\"statusCounts['Completed']\"\r\n [status]=\"'Completed'\"></tk-summary-card>\r\n </div>\r\n <div class=\"table-action-panel\">\r\n <tk-table-filters *ngIf=\"filters.length > 0\" [filters]=\"filters\" (filter)=\"onFilter($event)\"></tk-table-filters>\r\n <div class=\"action-wrapper\">\r\n <span>{{ filteredDataCount }} Sites</span>\r\n </div>\r\n </div>\r\n <table mat-table [dataSource]=\"data\" class=\"site-upgrade-table\">\r\n\r\n <!-- Site Column -->\r\n <ng-container matColumnDef=\"site\">\r\n <th mat-header-cell *matHeaderCellDef>Site</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"site-info\">\r\n {{ element.siteName }}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Ready Users Column -->\r\n <ng-container matColumnDef=\"ready users\">\r\n <th mat-header-cell *matHeaderCellDef>Ready Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalReadyUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Ready/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Upgraded Users Column -->\r\n <ng-container matColumnDef=\"upgraded users\">\r\n <th mat-header-cell *matHeaderCellDef>Upgraded Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalUpgradedUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Upgraded/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Location Mapping Column -->\r\n <ng-container matColumnDef=\"location mapping\">\r\n <th mat-header-cell *matHeaderCellDef>Location Mapping</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.locationMapping\" src=\"assets/icons/check2_icon.png\" alt=\"Location Mapping Enabled\"/>\r\n <img *ngIf=\"!element.locationMapping\" src=\"assets/icons/issue_icon.png\" alt=\"Location Mapping Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- PSTN Trunk Column -->\r\n <ng-container matColumnDef=\"pstn trunk\">\r\n <th mat-header-cell *matHeaderCellDef>PSTN Trunk</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.PSTNTrunk\" src=\"assets/icons/check2_icon.png\" alt=\"PSTN Trunk Enabled\"/>\r\n <img *ngIf=\"!element.PSTNTrunk\" src=\"assets/icons/issue_icon.png\" alt=\"PSTN Trunk Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Site Upgrade Status Column -->\r\n <ng-container matColumnDef=\"site upgrade status\">\r\n <th mat-header-cell *matHeaderCellDef>Site Upgrade Status</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"upgrade-status-cell\">\r\n <ng-container *ngIf=\"element.upgradeStatus === 'READY'; else statusBlock\">\r\n <button mat-button color=\"primary\" class=\"upgrade-button\" (click)=\"onSiteMigration(element)\">Upgrade</button>\r\n </ng-container>\r\n <ng-template #statusBlock>\r\n <div class=\"status-info\">\r\n <span class=\"status-indicator\" [ngClass]=\"getSiteUpgradeStatusClass(element.upgradeStatus)\"></span>\r\n <span>{{ STATUS_ENTRIES[element.upgradeStatus] }}</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"progressBar\">\r\n <th class=\"header\" mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"app-progress-bar-container\">\r\n <app-progress-bar\r\n [isAvailable]=\"element.isProgressBarAvailable\"\r\n [progress]=\"element.progress\"\r\n #progressBars>\r\n </app-progress-bar>\r\n </div>\r\n <span *ngIf=\"element.isProgressBarAvailable\" class=\"progress-percents\">\r\n {{ element.progress }} %\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Action Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef>Actions</th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"progress-spinner-td\">\r\n <div class=\"flex-container\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"defaultBatchMenu\">\r\n <span style=\"font-size: 17px;\">\u22EE</span>\r\n </button>\r\n </div>\r\n\r\n <mat-menu\r\n #defaultBatchMenu=\"matMenu\"\r\n xPosition=\"after\"\r\n class=\"webex-action-menu\">\r\n\r\n <div class=\"webex-action-menu-row\"\r\n [ngClass]=\"{ 'webex-action-menu-row-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED' }\"\r\n (click)=\"element.pending || element.migrationFormStatus === 'NOT_PREPARED' ? $event.stopPropagation() : onCollect(element)\">\r\n <span\r\n class=\"webex-details-icon webex-icon\"\r\n [ngClass]=\"{ 'migration-action-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED'}\">\r\n </span>\r\n <span class=\"webex-action-menu-title\">Collect</span>\r\n </div>\r\n </mat-menu>\r\n\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"userUpgradeLoader\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td class=\"mat-progress-spinner-td\" mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-progress-spinner\r\n *ngIf=\"element.pending\"\r\n class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\">\r\n </mat-progress-spinner>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap\";.webex-action-menu{box-shadow:0 4px 40px #0000001a!important;border-radius:0!important;width:258px;box-sizing:content-box;cursor:pointer}.webex-action-menu-row-disabled{cursor:default!important;opacity:.4}.webex-action-menu-row-disabled .webex-action-menu-title{color:#bababa!important;line-height:23px}.app-progress-bar-container{margin:7px 20px 0 0}.progress-bar-container{min-width:40px}.webex-action-menu-row:hover{background:#f5f5f5}.webex-icon{display:inline-block;height:25px;width:25px;margin:0 7px 0 0}.webex-details-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M16.2115 19.5H17.0961V16H16.2115V19.5ZM16.6538 15.0865C16.7743 15.0929 16.8782 15.0509 16.9653 14.9606C17.0525 14.8702 17.0961 14.7647 17.0961 14.6442C17.0961 14.5237 17.0509 14.4199 16.9605 14.3327C16.8701 14.2455 16.7679 14.2019 16.6538 14.2019C16.5333 14.2019 16.4294 14.2455 16.3422 14.3327C16.2551 14.4199 16.2115 14.5237 16.2115 14.6442C16.2115 14.7583 16.2551 14.8606 16.3422 14.951C16.4294 15.0413 16.5333 15.0865 16.6538 15.0865ZM4.99997 3.99998V10.1827V10.1538V20V3.99998ZM7.25 13.75H10.7231C10.8679 13.4692 11.0307 13.2038 11.2115 12.9538C11.3923 12.7038 11.591 12.4692 11.8077 12.25H7.25V13.75ZM7.25 17.75H10.0173C9.98009 17.5 9.9615 17.2516 9.9615 17.0048C9.9615 16.758 9.97688 16.5064 10.0076 16.25H7.25V17.75ZM5.3077 21.5C4.80257 21.5 4.375 21.325 4.025 20.975C3.675 20.625 3.5 20.1974 3.5 19.6923V4.3077C3.5 3.80257 3.675 3.375 4.025 3.025C4.375 2.675 4.80257 2.5 5.3077 2.5H13.25L18.5 7.74995V10.425C18.2538 10.3506 18.0073 10.2933 17.7605 10.2529C17.5137 10.2125 17.2602 10.1891 17 10.1827V8.49995H12.5V3.99998H5.3077C5.23077 3.99998 5.16024 4.03203 5.09612 4.09613C5.03202 4.16024 4.99997 4.23077 4.99997 4.3077V19.6923C4.99997 19.7692 5.03202 19.8397 5.09612 19.9038C5.16024 19.9679 5.23077 20 5.3077 20H10.7615C10.9064 20.2871 11.0692 20.5557 11.25 20.8057C11.4307 21.0557 11.6327 21.2871 11.8557 21.5H5.3077ZM16.6538 12.3462C17.9025 12.3462 18.9647 12.784 19.8403 13.6596C20.7159 14.5352 21.1538 15.5974 21.1538 16.8461C21.1538 18.0948 20.7159 19.157 19.8403 20.0326C18.9647 20.9083 17.9025 21.3461 16.6538 21.3461C15.4051 21.3461 14.3429 20.9083 13.4673 20.0326C12.5916 19.157 12.1538 18.0948 12.1538 16.8461C12.1538 15.5974 12.5916 14.5352 13.4673 13.6596C14.3429 12.784 15.4051 12.3462 16.6538 12.3462Z%22 fill%3D%22%232C355D%22%2F%3E%0D%3C%2Fsvg%3E%0D\")}.webex-action-menu-row{padding:5px 15px;display:flex;justify-content:flex-start}.webex-action-menu-row .webex-action-menu-title{line-height:23px}.mat-menu-content:not(:empty){padding-top:0!important}.mat-menu-panel{min-height:auto!important}#siteUpgradeTable{font-family:Inter,sans-serif!important}.wrapper{display:flex;flex-direction:column;gap:1rem}.overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff6;z-index:200}.mat-progress-spinner{position:absolute;top:50%;left:50%;margin-top:-20px;margin-left:-25px;width:50px;height:40px;text-align:center;font-size:10px}.mat-progress-spinner-td{position:relative}.mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0;position:absolute}.progress-percents{font-weight:500;font-size:12px}:host ::ng-deep .mat-progress-spinner-td{position:relative}:host ::ng-deep #siteUpgradeTable .mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0}.site-upgrade-status-wrapper{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;align-items:stretch}.site-upgrade-table{width:100%;background:white;border-radius:8px;overflow:hidden;font-size:14px}.site-upgrade-table .mat-header-row{font-size:12px;height:35px}.site-upgrade-table .mat-cell{border-bottom:1px solid #d6d6d6;font-family:Inter,sans-serif!important}.site-upgrade-table .mat-header-cell{border-bottom:1px solid #afafaf;font-family:Inter,sans-serif!important}.site-upgrade-table .site-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .site-info .site-indicator{width:8px;height:8px;border-radius:50%;background-color:#1170cf}.site-upgrade-table .indicator-status-ready{color:#1170cf!important}.site-upgrade-table .device-info{display:flex;align-items:center;gap:12px}.site-upgrade-table .device-info .device-name-wrapper{display:flex;align-items:center;gap:4px}.site-upgrade-table .device-info .device-name-wrapper .device-name{font-weight:500;color:#212121}.site-upgrade-table .device-info .device-name-wrapper .device-indicator{width:8px;height:8px;border-radius:50%;background-color:#f8cd00}.site-upgrade-table .device-info .device-model{font-size:12px;color:#757575}.site-upgrade-table .status-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .status-info .status-indicator{width:8px;height:8px;border-radius:50%}.site-upgrade-table .status-info .status-indicator.ready{background-color:#1170cf}.site-upgrade-table .status-info .status-indicator.partial-ready{background-color:#f8cd00}.site-upgrade-table .status-info .status-indicator.not-ready{background-color:#9e9e9e}.site-upgrade-table .status-info .status-indicator.completed{background-color:#1d805f}.site-upgrade-table .status-info .status-indicator.failed{background-color:#f23933}.site-upgrade-table .dependencies-text{font-size:12px;background-color:#ffe9e9;padding:.25rem .5rem;border-radius:3px;color:#000}.site-upgrade-table .upgrade-status-cell{display:flex;align-items:center;justify-content:flex-start}.site-upgrade-table .flex-container{display:flex}.site-upgrade-table .upgrade-button{font-weight:400!important;border:1px solid rgb(0,0,0)!important;color:#fff!important;background:rgb(0,0,0)!important;border-radius:20px!important;font-size:14px!important;font-style:normal!important;font-weight:500!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important}.site-upgrade-table .upgrade-button:hover{background-color:#000000b0!important}.site-upgrade-table .user-count-info .user-count{font-weight:500;color:#212121}.site-upgrade-table .user-count-info .user-label{font-size:12px;color:#757575}.site-upgrade-table .status-icon-cell,.site-upgrade-table .collect-icon-cell{display:flex;align-items:center}.site-upgrade-table .icon-play{width:24px;height:24px;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2218%22 height%3D%2219%22 viewBox%3D%220 0 18 19%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M8.09567 11.7427L11.3625 9.64421C11.523 9.54226 11.6033 9.40067 11.6033 9.21945C11.6033 9.03821 11.523 8.89615 11.3625 8.79326L8.09567 6.69472C7.92739 6.57933 7.75479 6.5701 7.57787 6.66701C7.40096 6.76391 7.3125 6.91497 7.3125 7.12019V11.3173C7.3125 11.5225 7.40096 11.6736 7.57787 11.7705C7.75479 11.8674 7.92739 11.8581 8.09567 11.7427ZM9.00124 16.3437C8.01579 16.3437 7.08951 16.1567 6.22241 15.7827C5.3553 15.4087 4.60104 14.9012 3.95963 14.26C3.3182 13.6189 2.81041 12.865 2.43624 11.9982C2.06208 11.1315 1.875 10.2054 1.875 9.21999C1.875 8.23454 2.062 7.30826 2.436 6.44116C2.81 5.57405 3.31756 4.81979 3.95869 4.17838C4.59983 3.53695 5.35376 3.02916 6.22048 2.65499C7.08719 2.28083 8.01328 2.09375 8.99873 2.09375C9.98418 2.09375 10.9105 2.28075 11.7776 2.65475C12.6447 3.02875 13.3989 3.53631 14.0403 4.17744C14.6818 4.81858 15.1896 5.57251 15.5637 6.43923C15.9379 7.30594 16.125 8.23203 16.125 9.21748C16.125 10.2029 15.938 11.1292 15.564 11.9963C15.19 12.8634 14.6824 13.6177 14.0413 14.2591C13.4001 14.9005 12.6462 15.4083 11.7795 15.7825C10.9128 16.1566 9.98669 16.3437 9.00124 16.3437ZM8.99998 15.2187C10.675 15.2187 12.0937 14.6375 13.2562 13.475C14.4187 12.3125 15 10.8937 15 9.21873C15 7.54373 14.4187 6.12498 13.2562 4.96248C12.0937 3.79998 10.675 3.21873 8.99998 3.21873C7.32498 3.21873 5.90623 3.79998 4.74373 4.96248C3.58123 6.12498 2.99998 7.54373 2.99998 9.21873C2.99998 10.8937 3.58123 12.3125 4.74373 13.475C5.90623 14.6375 7.32498 15.2187 8.99998 15.2187Z%22 fill%3D%22%232C355D%22%2F%3E%0D%3C%2Fsvg%3E%0D\");background-repeat:no-repeat;background-position:center;background-size:contain}.site-upgrade-table .collect-icon-cell{cursor:pointer}:host ::ng-deep .action-wrapper{display:flex;align-items:center;flex:1;justify-content:space-between;gap:1rem;color:#555}.table-action-panel{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:1rem}.pay-button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #2c355d;background-color:#fff;cursor:pointer;transition:all .3s ease;position:relative}.pay-button-icon:after{content:\"\";width:0;height:0;border-left:6px solid #2c355d;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-left:2px}.pay-button-icon:hover{border-color:#2c355d;background-color:#f8fafc;transform:scale(1.05)}.pay-button-icon:hover:after{border-left-color:#2c355d}.pay-button-icon:active{transform:scale(.95);background-color:#e2e8f0}.pay-button-icon:disabled,.pay-button-icon.disabled{opacity:.5;cursor:not-allowed}.pay-button-icon:disabled:hover,.pay-button-icon.disabled:hover{transform:none;border-color:#d1d5db;background-color:#fff}.pay-button-icon:disabled:hover:after,.pay-button-icon.disabled:hover:after{border-left-color:#2c355d}.pay-button-icon.small{width:32px;height:32px;border-width:1.5px}.pay-button-icon.small:after{border-left-width:6px;border-top-width:5px;border-bottom-width:5px;margin-left:1px}.pay-button-icon.large{width:48px;height:48px;border-width:2.5px}.pay-button-icon.large:after{border-left-width:10px;border-top-width:7px;border-bottom-width:7px;margin-left:3px}.pay-button-icon.xl{width:56px;height:56px;border-width:3px}.pay-button-icon.xl:after{border-left-width:12px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}.pay-button-icon.loading:after{display:none}.pay-button-icon.loading:before{content:\"\";width:16px;height:16px;border:2px solid #2c355d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pay-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#2c355d;transition:color .3s ease}.pay-button .pay-button-icon{margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.SummaryCardComponent, selector: "tk-summary-card", inputs: ["value", "status", "description"] }, { kind: "component", type: i5.TableFiltersComponent, selector: "tk-table-filters", inputs: ["filters"], outputs: ["filter"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.ProgressBarComponent, selector: "app-progress-bar", inputs: ["isAvailable", "progress"] }], encapsulation: i0.ViewEncapsulation.None });
425
425
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SiteUpgradeDataTableComponent, decorators: [{
426
426
  type: Component,
427
- args: [{ selector: 'tk-site-upgrade-data-table', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"dataPending\" class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n\r\n<div id=\"siteUpgradeTable\" class=\"wrapper\">\r\n <div class=\"site-upgrade-status-wrapper\">\r\n <tk-summary-card [description]=\"'Sites are ready to upgrade'\" [value]=\"statusCounts['Ready']\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites are not ready'\" [value]=\"statusCounts['Not Ready']\"\r\n [status]=\"'Not Ready'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites failed to upgrade'\" [value]=\"statusCounts['Failed']\"\r\n [status]=\"'Failed'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Successfully upgraded'\" [value]=\"statusCounts['Completed']\"\r\n [status]=\"'Completed'\"></tk-summary-card>\r\n </div>\r\n <div class=\"table-action-panel\">\r\n <tk-table-filters *ngIf=\"filters.length > 0\" [filters]=\"filters\" (filter)=\"onFilter($event)\"></tk-table-filters>\r\n <div class=\"action-wrapper\">\r\n <span>{{ filteredDataCount }} Sites</span>\r\n </div>\r\n </div>\r\n <table mat-table [dataSource]=\"data\" class=\"site-upgrade-table\">\r\n\r\n <!-- Site Column -->\r\n <ng-container matColumnDef=\"site\">\r\n <th mat-header-cell *matHeaderCellDef>Site</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"site-info\">\r\n {{ element.siteName }}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Ready Users Column -->\r\n <ng-container matColumnDef=\"ready users\">\r\n <th mat-header-cell *matHeaderCellDef>Ready Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalReadyUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Ready/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Upgraded Users Column -->\r\n <ng-container matColumnDef=\"upgraded users\">\r\n <th mat-header-cell *matHeaderCellDef>Upgraded Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalUpgradedUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Upgraded/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Location Mapping Column -->\r\n <ng-container matColumnDef=\"location mapping\">\r\n <th mat-header-cell *matHeaderCellDef>Location Mapping</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.locationMapping\" src=\"assets/icons/check2_icon.png\" alt=\"Location Mapping Enabled\"/>\r\n <img *ngIf=\"!element.locationMapping\" src=\"assets/icons/issue_icon.png\" alt=\"Location Mapping Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- PSTN Trunk Column -->\r\n <ng-container matColumnDef=\"pstn trunk\">\r\n <th mat-header-cell *matHeaderCellDef>PSTN Trunk</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.PSTNTrunk\" src=\"assets/icons/check2_icon.png\" alt=\"PSTN Trunk Enabled\"/>\r\n <img *ngIf=\"!element.PSTNTrunk\" src=\"assets/icons/issue_icon.png\" alt=\"PSTN Trunk Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Site Upgrade Status Column -->\r\n <ng-container matColumnDef=\"site upgrade status\">\r\n <th mat-header-cell *matHeaderCellDef>Site Upgrade Status</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"upgrade-status-cell\">\r\n <ng-container *ngIf=\"element.upgradeStatus === 'READY'; else statusBlock\">\r\n <button mat-button color=\"primary\" class=\"upgrade-button\" (click)=\"onSiteMigration(element)\">Upgrade</button>\r\n </ng-container>\r\n <ng-template #statusBlock>\r\n <div class=\"status-info\">\r\n <span class=\"status-indicator\" [ngClass]=\"getSiteUpgradeStatusClass(element.upgradeStatus)\"></span>\r\n <span>{{ STATUS_ENTRIES[element.upgradeStatus] }}</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"progressBar\">\r\n <th class=\"header\" mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"app-progress-bar-container\">\r\n <app-progress-bar\r\n [isAvailable]=\"element.isProgressBarAvailable\"\r\n [progress]=\"element.progress\"\r\n #progressBars>\r\n </app-progress-bar>\r\n </div>\r\n <span *ngIf=\"element.isProgressBarAvailable\" class=\"progress-percents\">\r\n {{ element.progress }} %\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Action Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef>Actions</th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"progress-spinner-td\">\r\n <div class=\"flex-container\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"defaultBatchMenu\">\r\n <span style=\"font-size: 17px;\">\u22EE</span>\r\n </button>\r\n </div>\r\n\r\n <mat-menu\r\n #defaultBatchMenu=\"matMenu\"\r\n xPosition=\"after\"\r\n class=\"webex-action-menu\">\r\n\r\n <div class=\"webex-action-menu-row\"\r\n [ngClass]=\"{ 'webex-action-menu-row-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED' }\"\r\n (click)=\"element.pending || element.migrationFormStatus === 'NOT_PREPARED' ? $event.stopPropagation() : onCollect(element)\">\r\n <span\r\n class=\"webex-details-icon webex-icon\"\r\n [ngClass]=\"{ 'migration-action-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED'}\">\r\n </span>\r\n <span class=\"webex-action-menu-title\">Collect</span>\r\n </div>\r\n </mat-menu>\r\n\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"userUpgradeLoader\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td class=\"mat-progress-spinner-td\" mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-progress-spinner\r\n *ngIf=\"element.pending\"\r\n class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\">\r\n </mat-progress-spinner>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap\";.webex-action-menu{box-shadow:0 4px 40px #0000001a!important;border-radius:0!important;width:258px;box-sizing:content-box;cursor:pointer}.webex-action-menu-row-disabled{cursor:default!important;opacity:.4}.webex-action-menu-row-disabled .webex-action-menu-title{color:#bababa!important;line-height:23px}.app-progress-bar-container{margin:7px 20px 0 0}.progress-bar-container{min-width:40px}.webex-action-menu-row:hover{background:#f5f5f5}.webex-icon{display:inline-block;height:25px;width:25px;margin:0 7px 0 0}.webex-details-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M16.2115 19.5H17.0961V16H16.2115V19.5ZM16.6538 15.0865C16.7743 15.0929 16.8782 15.0509 16.9653 14.9606C17.0525 14.8702 17.0961 14.7647 17.0961 14.6442C17.0961 14.5237 17.0509 14.4199 16.9605 14.3327C16.8701 14.2455 16.7679 14.2019 16.6538 14.2019C16.5333 14.2019 16.4294 14.2455 16.3422 14.3327C16.2551 14.4199 16.2115 14.5237 16.2115 14.6442C16.2115 14.7583 16.2551 14.8606 16.3422 14.951C16.4294 15.0413 16.5333 15.0865 16.6538 15.0865ZM4.99997 3.99998V10.1827V10.1538V20V3.99998ZM7.25 13.75H10.7231C10.8679 13.4692 11.0307 13.2038 11.2115 12.9538C11.3923 12.7038 11.591 12.4692 11.8077 12.25H7.25V13.75ZM7.25 17.75H10.0173C9.98009 17.5 9.9615 17.2516 9.9615 17.0048C9.9615 16.758 9.97688 16.5064 10.0076 16.25H7.25V17.75ZM5.3077 21.5C4.80257 21.5 4.375 21.325 4.025 20.975C3.675 20.625 3.5 20.1974 3.5 19.6923V4.3077C3.5 3.80257 3.675 3.375 4.025 3.025C4.375 2.675 4.80257 2.5 5.3077 2.5H13.25L18.5 7.74995V10.425C18.2538 10.3506 18.0073 10.2933 17.7605 10.2529C17.5137 10.2125 17.2602 10.1891 17 10.1827V8.49995H12.5V3.99998H5.3077C5.23077 3.99998 5.16024 4.03203 5.09612 4.09613C5.03202 4.16024 4.99997 4.23077 4.99997 4.3077V19.6923C4.99997 19.7692 5.03202 19.8397 5.09612 19.9038C5.16024 19.9679 5.23077 20 5.3077 20H10.7615C10.9064 20.2871 11.0692 20.5557 11.25 20.8057C11.4307 21.0557 11.6327 21.2871 11.8557 21.5H5.3077ZM16.6538 12.3462C17.9025 12.3462 18.9647 12.784 19.8403 13.6596C20.7159 14.5352 21.1538 15.5974 21.1538 16.8461C21.1538 18.0948 20.7159 19.157 19.8403 20.0326C18.9647 20.9083 17.9025 21.3461 16.6538 21.3461C15.4051 21.3461 14.3429 20.9083 13.4673 20.0326C12.5916 19.157 12.1538 18.0948 12.1538 16.8461C12.1538 15.5974 12.5916 14.5352 13.4673 13.6596C14.3429 12.784 15.4051 12.3462 16.6538 12.3462Z%22 fill%3D%22%232C355D%22%2F%3E%3C%2Fsvg%3E\")}.webex-action-menu-row{padding:5px 15px;display:flex;justify-content:flex-start}.webex-action-menu-row .webex-action-menu-title{line-height:23px}.mat-menu-content:not(:empty){padding-top:0!important}.mat-menu-panel{min-height:auto!important}#siteUpgradeTable{font-family:Inter,sans-serif!important}.wrapper{display:flex;flex-direction:column;gap:1rem}.overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff6;z-index:200}.mat-progress-spinner{position:absolute;top:50%;left:50%;margin-top:-20px;margin-left:-25px;width:50px;height:40px;text-align:center;font-size:10px}.mat-progress-spinner-td{position:relative}.mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0;position:absolute}.progress-percents{font-weight:500;font-size:12px}:host ::ng-deep .mat-progress-spinner-td{position:relative}:host ::ng-deep #siteUpgradeTable .mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0}.site-upgrade-status-wrapper{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;align-items:stretch}.site-upgrade-table{width:100%;background:white;border-radius:8px;overflow:hidden;font-size:14px}.site-upgrade-table .mat-header-row{font-size:12px;height:35px}.site-upgrade-table .mat-cell{border-bottom:1px solid #d6d6d6;font-family:Inter,sans-serif!important}.site-upgrade-table .mat-header-cell{border-bottom:1px solid #afafaf;font-family:Inter,sans-serif!important}.site-upgrade-table .site-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .site-info .site-indicator{width:8px;height:8px;border-radius:50%;background-color:#1170cf}.site-upgrade-table .indicator-status-ready{color:#1170cf!important}.site-upgrade-table .device-info{display:flex;align-items:center;gap:12px}.site-upgrade-table .device-info .device-name-wrapper{display:flex;align-items:center;gap:4px}.site-upgrade-table .device-info .device-name-wrapper .device-name{font-weight:500;color:#212121}.site-upgrade-table .device-info .device-name-wrapper .device-indicator{width:8px;height:8px;border-radius:50%;background-color:#f8cd00}.site-upgrade-table .device-info .device-model{font-size:12px;color:#757575}.site-upgrade-table .status-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .status-info .status-indicator{width:8px;height:8px;border-radius:50%}.site-upgrade-table .status-info .status-indicator.ready{background-color:#1170cf}.site-upgrade-table .status-info .status-indicator.partial-ready{background-color:#f8cd00}.site-upgrade-table .status-info .status-indicator.not-ready{background-color:#9e9e9e}.site-upgrade-table .status-info .status-indicator.completed{background-color:#1d805f}.site-upgrade-table .status-info .status-indicator.failed{background-color:#f23933}.site-upgrade-table .dependencies-text{font-size:12px;background-color:#ffe9e9;padding:.25rem .5rem;border-radius:3px;color:#000}.site-upgrade-table .upgrade-status-cell{display:flex;align-items:center;justify-content:flex-start}.site-upgrade-table .flex-container{display:flex}.site-upgrade-table .upgrade-button{font-weight:400!important;border:1px solid rgb(0,0,0)!important;color:#fff!important;background:rgb(0,0,0)!important;border-radius:20px!important;font-size:14px!important;font-style:normal!important;font-weight:500!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important}.site-upgrade-table .upgrade-button:hover{background-color:#000000b0!important}.site-upgrade-table .user-count-info .user-count{font-weight:500;color:#212121}.site-upgrade-table .user-count-info .user-label{font-size:12px;color:#757575}.site-upgrade-table .status-icon-cell,.site-upgrade-table .collect-icon-cell{display:flex;align-items:center}.site-upgrade-table .icon-play{width:24px;height:24px;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2218%22 height%3D%2219%22 viewBox%3D%220 0 18 19%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M8.09567 11.7427L11.3625 9.64421C11.523 9.54226 11.6033 9.40067 11.6033 9.21945C11.6033 9.03821 11.523 8.89615 11.3625 8.79326L8.09567 6.69472C7.92739 6.57933 7.75479 6.5701 7.57787 6.66701C7.40096 6.76391 7.3125 6.91497 7.3125 7.12019V11.3173C7.3125 11.5225 7.40096 11.6736 7.57787 11.7705C7.75479 11.8674 7.92739 11.8581 8.09567 11.7427ZM9.00124 16.3437C8.01579 16.3437 7.08951 16.1567 6.22241 15.7827C5.3553 15.4087 4.60104 14.9012 3.95963 14.26C3.3182 13.6189 2.81041 12.865 2.43624 11.9982C2.06208 11.1315 1.875 10.2054 1.875 9.21999C1.875 8.23454 2.062 7.30826 2.436 6.44116C2.81 5.57405 3.31756 4.81979 3.95869 4.17838C4.59983 3.53695 5.35376 3.02916 6.22048 2.65499C7.08719 2.28083 8.01328 2.09375 8.99873 2.09375C9.98418 2.09375 10.9105 2.28075 11.7776 2.65475C12.6447 3.02875 13.3989 3.53631 14.0403 4.17744C14.6818 4.81858 15.1896 5.57251 15.5637 6.43923C15.9379 7.30594 16.125 8.23203 16.125 9.21748C16.125 10.2029 15.938 11.1292 15.564 11.9963C15.19 12.8634 14.6824 13.6177 14.0413 14.2591C13.4001 14.9005 12.6462 15.4083 11.7795 15.7825C10.9128 16.1566 9.98669 16.3437 9.00124 16.3437ZM8.99998 15.2187C10.675 15.2187 12.0937 14.6375 13.2562 13.475C14.4187 12.3125 15 10.8937 15 9.21873C15 7.54373 14.4187 6.12498 13.2562 4.96248C12.0937 3.79998 10.675 3.21873 8.99998 3.21873C7.32498 3.21873 5.90623 3.79998 4.74373 4.96248C3.58123 6.12498 2.99998 7.54373 2.99998 9.21873C2.99998 10.8937 3.58123 12.3125 4.74373 13.475C5.90623 14.6375 7.32498 15.2187 8.99998 15.2187Z%22 fill%3D%22%232C355D%22%2F%3E%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position:center;background-size:contain}.site-upgrade-table .collect-icon-cell{cursor:pointer}:host ::ng-deep .action-wrapper{display:flex;align-items:center;flex:1;justify-content:space-between;gap:1rem;color:#555}.table-action-panel{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:1rem}.pay-button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #2c355d;background-color:#fff;cursor:pointer;transition:all .3s ease;position:relative}.pay-button-icon:after{content:\"\";width:0;height:0;border-left:6px solid #2c355d;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-left:2px}.pay-button-icon:hover{border-color:#2c355d;background-color:#f8fafc;transform:scale(1.05)}.pay-button-icon:hover:after{border-left-color:#2c355d}.pay-button-icon:active{transform:scale(.95);background-color:#e2e8f0}.pay-button-icon:disabled,.pay-button-icon.disabled{opacity:.5;cursor:not-allowed}.pay-button-icon:disabled:hover,.pay-button-icon.disabled:hover{transform:none;border-color:#d1d5db;background-color:#fff}.pay-button-icon:disabled:hover:after,.pay-button-icon.disabled:hover:after{border-left-color:#2c355d}.pay-button-icon.small{width:32px;height:32px;border-width:1.5px}.pay-button-icon.small:after{border-left-width:6px;border-top-width:5px;border-bottom-width:5px;margin-left:1px}.pay-button-icon.large{width:48px;height:48px;border-width:2.5px}.pay-button-icon.large:after{border-left-width:10px;border-top-width:7px;border-bottom-width:7px;margin-left:3px}.pay-button-icon.xl{width:56px;height:56px;border-width:3px}.pay-button-icon.xl:after{border-left-width:12px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}.pay-button-icon.loading:after{display:none}.pay-button-icon.loading:before{content:\"\";width:16px;height:16px;border:2px solid #2c355d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pay-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#2c355d;transition:color .3s ease}.pay-button .pay-button-icon{margin:0}\n"] }]
427
+ args: [{ selector: 'tk-site-upgrade-data-table', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"dataPending\" class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n\r\n<div id=\"siteUpgradeTable\" class=\"wrapper\">\r\n <div class=\"site-upgrade-status-wrapper\">\r\n <tk-summary-card [description]=\"'Sites are ready to upgrade'\" [value]=\"statusCounts['Ready']\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites are not ready'\" [value]=\"statusCounts['Not Ready']\"\r\n [status]=\"'Not Ready'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Sites failed to upgrade'\" [value]=\"statusCounts['Failed']\"\r\n [status]=\"'Failed'\"></tk-summary-card>\r\n <tk-summary-card [description]=\"'Successfully upgraded'\" [value]=\"statusCounts['Completed']\"\r\n [status]=\"'Completed'\"></tk-summary-card>\r\n </div>\r\n <div class=\"table-action-panel\">\r\n <tk-table-filters *ngIf=\"filters.length > 0\" [filters]=\"filters\" (filter)=\"onFilter($event)\"></tk-table-filters>\r\n <div class=\"action-wrapper\">\r\n <span>{{ filteredDataCount }} Sites</span>\r\n </div>\r\n </div>\r\n <table mat-table [dataSource]=\"data\" class=\"site-upgrade-table\">\r\n\r\n <!-- Site Column -->\r\n <ng-container matColumnDef=\"site\">\r\n <th mat-header-cell *matHeaderCellDef>Site</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"site-info\">\r\n {{ element.siteName }}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Ready Users Column -->\r\n <ng-container matColumnDef=\"ready users\">\r\n <th mat-header-cell *matHeaderCellDef>Ready Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalReadyUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Ready/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Upgraded Users Column -->\r\n <ng-container matColumnDef=\"upgraded users\">\r\n <th mat-header-cell *matHeaderCellDef>Upgraded Users</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"user-count-info\">\r\n <div class=\"user-count\">{{ element.totalUpgradedUsers }}/{{ element.totalUsers }}</div>\r\n <div class=\"user-label\">Upgraded/Total</div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Location Mapping Column -->\r\n <ng-container matColumnDef=\"location mapping\">\r\n <th mat-header-cell *matHeaderCellDef>Location Mapping</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.locationMapping\" src=\"assets/icons/check2_icon.png\" alt=\"Location Mapping Enabled\"/>\r\n <img *ngIf=\"!element.locationMapping\" src=\"assets/icons/issue_icon.png\" alt=\"Location Mapping Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- PSTN Trunk Column -->\r\n <ng-container matColumnDef=\"pstn trunk\">\r\n <th mat-header-cell *matHeaderCellDef>PSTN Trunk</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"status-icon-cell\">\r\n <img *ngIf=\"element.PSTNTrunk\" src=\"assets/icons/check2_icon.png\" alt=\"PSTN Trunk Enabled\"/>\r\n <img *ngIf=\"!element.PSTNTrunk\" src=\"assets/icons/issue_icon.png\" alt=\"PSTN Trunk Disabled\"/>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Site Upgrade Status Column -->\r\n <ng-container matColumnDef=\"site upgrade status\">\r\n <th mat-header-cell *matHeaderCellDef>Site Upgrade Status</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"upgrade-status-cell\">\r\n <ng-container *ngIf=\"element.upgradeStatus === 'READY'; else statusBlock\">\r\n <button mat-button color=\"primary\" class=\"upgrade-button\" (click)=\"onSiteMigration(element)\">Upgrade</button>\r\n </ng-container>\r\n <ng-template #statusBlock>\r\n <div class=\"status-info\">\r\n <span class=\"status-indicator\" [ngClass]=\"getSiteUpgradeStatusClass(element.upgradeStatus)\"></span>\r\n <span>{{ STATUS_ENTRIES[element.upgradeStatus] }}</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"progressBar\">\r\n <th class=\"header\" mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <div class=\"app-progress-bar-container\">\r\n <app-progress-bar\r\n [isAvailable]=\"element.isProgressBarAvailable\"\r\n [progress]=\"element.progress\"\r\n #progressBars>\r\n </app-progress-bar>\r\n </div>\r\n <span *ngIf=\"element.isProgressBarAvailable\" class=\"progress-percents\">\r\n {{ element.progress }} %\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Action Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef>Actions</th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"progress-spinner-td\">\r\n <div class=\"flex-container\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"defaultBatchMenu\">\r\n <span style=\"font-size: 17px;\">\u22EE</span>\r\n </button>\r\n </div>\r\n\r\n <mat-menu\r\n #defaultBatchMenu=\"matMenu\"\r\n xPosition=\"after\"\r\n class=\"webex-action-menu\">\r\n\r\n <div class=\"webex-action-menu-row\"\r\n [ngClass]=\"{ 'webex-action-menu-row-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED' }\"\r\n (click)=\"element.pending || element.migrationFormStatus === 'NOT_PREPARED' ? $event.stopPropagation() : onCollect(element)\">\r\n <span\r\n class=\"webex-details-icon webex-icon\"\r\n [ngClass]=\"{ 'migration-action-disabled': element.pending || element.migrationFormStatus === 'NOT_PREPARED'}\">\r\n </span>\r\n <span class=\"webex-action-menu-title\">Collect</span>\r\n </div>\r\n </mat-menu>\r\n\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"userUpgradeLoader\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td class=\"mat-progress-spinner-td\" mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-progress-spinner\r\n *ngIf=\"element.pending\"\r\n class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\">\r\n </mat-progress-spinner>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap\";.webex-action-menu{box-shadow:0 4px 40px #0000001a!important;border-radius:0!important;width:258px;box-sizing:content-box;cursor:pointer}.webex-action-menu-row-disabled{cursor:default!important;opacity:.4}.webex-action-menu-row-disabled .webex-action-menu-title{color:#bababa!important;line-height:23px}.app-progress-bar-container{margin:7px 20px 0 0}.progress-bar-container{min-width:40px}.webex-action-menu-row:hover{background:#f5f5f5}.webex-icon{display:inline-block;height:25px;width:25px;margin:0 7px 0 0}.webex-details-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M16.2115 19.5H17.0961V16H16.2115V19.5ZM16.6538 15.0865C16.7743 15.0929 16.8782 15.0509 16.9653 14.9606C17.0525 14.8702 17.0961 14.7647 17.0961 14.6442C17.0961 14.5237 17.0509 14.4199 16.9605 14.3327C16.8701 14.2455 16.7679 14.2019 16.6538 14.2019C16.5333 14.2019 16.4294 14.2455 16.3422 14.3327C16.2551 14.4199 16.2115 14.5237 16.2115 14.6442C16.2115 14.7583 16.2551 14.8606 16.3422 14.951C16.4294 15.0413 16.5333 15.0865 16.6538 15.0865ZM4.99997 3.99998V10.1827V10.1538V20V3.99998ZM7.25 13.75H10.7231C10.8679 13.4692 11.0307 13.2038 11.2115 12.9538C11.3923 12.7038 11.591 12.4692 11.8077 12.25H7.25V13.75ZM7.25 17.75H10.0173C9.98009 17.5 9.9615 17.2516 9.9615 17.0048C9.9615 16.758 9.97688 16.5064 10.0076 16.25H7.25V17.75ZM5.3077 21.5C4.80257 21.5 4.375 21.325 4.025 20.975C3.675 20.625 3.5 20.1974 3.5 19.6923V4.3077C3.5 3.80257 3.675 3.375 4.025 3.025C4.375 2.675 4.80257 2.5 5.3077 2.5H13.25L18.5 7.74995V10.425C18.2538 10.3506 18.0073 10.2933 17.7605 10.2529C17.5137 10.2125 17.2602 10.1891 17 10.1827V8.49995H12.5V3.99998H5.3077C5.23077 3.99998 5.16024 4.03203 5.09612 4.09613C5.03202 4.16024 4.99997 4.23077 4.99997 4.3077V19.6923C4.99997 19.7692 5.03202 19.8397 5.09612 19.9038C5.16024 19.9679 5.23077 20 5.3077 20H10.7615C10.9064 20.2871 11.0692 20.5557 11.25 20.8057C11.4307 21.0557 11.6327 21.2871 11.8557 21.5H5.3077ZM16.6538 12.3462C17.9025 12.3462 18.9647 12.784 19.8403 13.6596C20.7159 14.5352 21.1538 15.5974 21.1538 16.8461C21.1538 18.0948 20.7159 19.157 19.8403 20.0326C18.9647 20.9083 17.9025 21.3461 16.6538 21.3461C15.4051 21.3461 14.3429 20.9083 13.4673 20.0326C12.5916 19.157 12.1538 18.0948 12.1538 16.8461C12.1538 15.5974 12.5916 14.5352 13.4673 13.6596C14.3429 12.784 15.4051 12.3462 16.6538 12.3462Z%22 fill%3D%22%232C355D%22%2F%3E%0D%3C%2Fsvg%3E%0D\")}.webex-action-menu-row{padding:5px 15px;display:flex;justify-content:flex-start}.webex-action-menu-row .webex-action-menu-title{line-height:23px}.mat-menu-content:not(:empty){padding-top:0!important}.mat-menu-panel{min-height:auto!important}#siteUpgradeTable{font-family:Inter,sans-serif!important}.wrapper{display:flex;flex-direction:column;gap:1rem}.overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff6;z-index:200}.mat-progress-spinner{position:absolute;top:50%;left:50%;margin-top:-20px;margin-left:-25px;width:50px;height:40px;text-align:center;font-size:10px}.mat-progress-spinner-td{position:relative}.mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0;position:absolute}.progress-percents{font-weight:500;font-size:12px}:host ::ng-deep .mat-progress-spinner-td{position:relative}:host ::ng-deep #siteUpgradeTable .mat-progress-spinner-td .mat-progress-spinner{top:28%;left:0;margin:0}.site-upgrade-status-wrapper{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;align-items:stretch}.site-upgrade-table{width:100%;background:white;border-radius:8px;overflow:hidden;font-size:14px}.site-upgrade-table .mat-header-row{font-size:12px;height:35px}.site-upgrade-table .mat-cell{border-bottom:1px solid #d6d6d6;font-family:Inter,sans-serif!important}.site-upgrade-table .mat-header-cell{border-bottom:1px solid #afafaf;font-family:Inter,sans-serif!important}.site-upgrade-table .site-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .site-info .site-indicator{width:8px;height:8px;border-radius:50%;background-color:#1170cf}.site-upgrade-table .indicator-status-ready{color:#1170cf!important}.site-upgrade-table .device-info{display:flex;align-items:center;gap:12px}.site-upgrade-table .device-info .device-name-wrapper{display:flex;align-items:center;gap:4px}.site-upgrade-table .device-info .device-name-wrapper .device-name{font-weight:500;color:#212121}.site-upgrade-table .device-info .device-name-wrapper .device-indicator{width:8px;height:8px;border-radius:50%;background-color:#f8cd00}.site-upgrade-table .device-info .device-model{font-size:12px;color:#757575}.site-upgrade-table .status-info{display:flex;align-items:center;gap:8px}.site-upgrade-table .status-info .status-indicator{width:8px;height:8px;border-radius:50%}.site-upgrade-table .status-info .status-indicator.ready{background-color:#1170cf}.site-upgrade-table .status-info .status-indicator.partial-ready{background-color:#f8cd00}.site-upgrade-table .status-info .status-indicator.not-ready{background-color:#9e9e9e}.site-upgrade-table .status-info .status-indicator.completed{background-color:#1d805f}.site-upgrade-table .status-info .status-indicator.failed{background-color:#f23933}.site-upgrade-table .dependencies-text{font-size:12px;background-color:#ffe9e9;padding:.25rem .5rem;border-radius:3px;color:#000}.site-upgrade-table .upgrade-status-cell{display:flex;align-items:center;justify-content:flex-start}.site-upgrade-table .flex-container{display:flex}.site-upgrade-table .upgrade-button{font-weight:400!important;border:1px solid rgb(0,0,0)!important;color:#fff!important;background:rgb(0,0,0)!important;border-radius:20px!important;font-size:14px!important;font-style:normal!important;font-weight:500!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important}.site-upgrade-table .upgrade-button:hover{background-color:#000000b0!important}.site-upgrade-table .user-count-info .user-count{font-weight:500;color:#212121}.site-upgrade-table .user-count-info .user-label{font-size:12px;color:#757575}.site-upgrade-table .status-icon-cell,.site-upgrade-table .collect-icon-cell{display:flex;align-items:center}.site-upgrade-table .icon-play{width:24px;height:24px;background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2218%22 height%3D%2219%22 viewBox%3D%220 0 18 19%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M8.09567 11.7427L11.3625 9.64421C11.523 9.54226 11.6033 9.40067 11.6033 9.21945C11.6033 9.03821 11.523 8.89615 11.3625 8.79326L8.09567 6.69472C7.92739 6.57933 7.75479 6.5701 7.57787 6.66701C7.40096 6.76391 7.3125 6.91497 7.3125 7.12019V11.3173C7.3125 11.5225 7.40096 11.6736 7.57787 11.7705C7.75479 11.8674 7.92739 11.8581 8.09567 11.7427ZM9.00124 16.3437C8.01579 16.3437 7.08951 16.1567 6.22241 15.7827C5.3553 15.4087 4.60104 14.9012 3.95963 14.26C3.3182 13.6189 2.81041 12.865 2.43624 11.9982C2.06208 11.1315 1.875 10.2054 1.875 9.21999C1.875 8.23454 2.062 7.30826 2.436 6.44116C2.81 5.57405 3.31756 4.81979 3.95869 4.17838C4.59983 3.53695 5.35376 3.02916 6.22048 2.65499C7.08719 2.28083 8.01328 2.09375 8.99873 2.09375C9.98418 2.09375 10.9105 2.28075 11.7776 2.65475C12.6447 3.02875 13.3989 3.53631 14.0403 4.17744C14.6818 4.81858 15.1896 5.57251 15.5637 6.43923C15.9379 7.30594 16.125 8.23203 16.125 9.21748C16.125 10.2029 15.938 11.1292 15.564 11.9963C15.19 12.8634 14.6824 13.6177 14.0413 14.2591C13.4001 14.9005 12.6462 15.4083 11.7795 15.7825C10.9128 16.1566 9.98669 16.3437 9.00124 16.3437ZM8.99998 15.2187C10.675 15.2187 12.0937 14.6375 13.2562 13.475C14.4187 12.3125 15 10.8937 15 9.21873C15 7.54373 14.4187 6.12498 13.2562 4.96248C12.0937 3.79998 10.675 3.21873 8.99998 3.21873C7.32498 3.21873 5.90623 3.79998 4.74373 4.96248C3.58123 6.12498 2.99998 7.54373 2.99998 9.21873C2.99998 10.8937 3.58123 12.3125 4.74373 13.475C5.90623 14.6375 7.32498 15.2187 8.99998 15.2187Z%22 fill%3D%22%232C355D%22%2F%3E%0D%3C%2Fsvg%3E%0D\");background-repeat:no-repeat;background-position:center;background-size:contain}.site-upgrade-table .collect-icon-cell{cursor:pointer}:host ::ng-deep .action-wrapper{display:flex;align-items:center;flex:1;justify-content:space-between;gap:1rem;color:#555}.table-action-panel{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:1rem}.pay-button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #2c355d;background-color:#fff;cursor:pointer;transition:all .3s ease;position:relative}.pay-button-icon:after{content:\"\";width:0;height:0;border-left:6px solid #2c355d;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-left:2px}.pay-button-icon:hover{border-color:#2c355d;background-color:#f8fafc;transform:scale(1.05)}.pay-button-icon:hover:after{border-left-color:#2c355d}.pay-button-icon:active{transform:scale(.95);background-color:#e2e8f0}.pay-button-icon:disabled,.pay-button-icon.disabled{opacity:.5;cursor:not-allowed}.pay-button-icon:disabled:hover,.pay-button-icon.disabled:hover{transform:none;border-color:#d1d5db;background-color:#fff}.pay-button-icon:disabled:hover:after,.pay-button-icon.disabled:hover:after{border-left-color:#2c355d}.pay-button-icon.small{width:32px;height:32px;border-width:1.5px}.pay-button-icon.small:after{border-left-width:6px;border-top-width:5px;border-bottom-width:5px;margin-left:1px}.pay-button-icon.large{width:48px;height:48px;border-width:2.5px}.pay-button-icon.large:after{border-left-width:10px;border-top-width:7px;border-bottom-width:7px;margin-left:3px}.pay-button-icon.xl{width:56px;height:56px;border-width:3px}.pay-button-icon.xl:after{border-left-width:12px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}.pay-button-icon.loading:after{display:none}.pay-button-icon.loading:before{content:\"\";width:16px;height:16px;border:2px solid #2c355d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pay-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#2c355d;transition:color .3s ease}.pay-button .pay-button-icon{margin:0}\n"] }]
428
428
  }], ctorParameters: function () { return []; }, propDecorators: { token: [{
429
429
  type: Input
430
430
  }], customerId: [{
@@ -94,4 +94,4 @@ export const TOGGLE_TYPES = {
94
94
  TABS: 'TABS',
95
95
  ASSOCIATED_LINE_ONLY: 'ASSOCIATED_LINE_ONLY'
96
96
  };
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL2FwcC5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHO0lBQ2pCLFVBQVUsRUFBRSw0Q0FBNEM7SUFDeEQsa0JBQWtCLEVBQUUsMENBQTBDO0lBQzlELGtCQUFrQixFQUFFLHdDQUF3QztJQUM1RCxVQUFVLEVBQUUsc0NBQXNDO0lBQ2xELGtCQUFrQixFQUFFLHdCQUF3QjtJQUM1QyxRQUFRLEVBQUUsMENBQTBDO0lBQ3BELFlBQVksRUFBRSw0Q0FBNEM7SUFDMUQsYUFBYSxFQUFFLDZDQUE2QztJQUM1RCxpQkFBaUIsRUFBRSxrREFBa0Q7SUFDckUsc0JBQXNCLEVBQUUsMkNBQTJDO0lBQ25FLFdBQVcsRUFBRSxnREFBZ0Q7SUFDN0QsaUJBQWlCLEVBQUUsMkVBQTJFO0lBQzlGLGlCQUFpQixFQUFFLDBDQUEwQztJQUM3RCxjQUFjLEVBQUUsaUVBQWlFO0lBQ2pGLHdCQUF3QixFQUFFLGlDQUFpQztJQUMzRCxrQkFBa0IsRUFBRSxnREFBZ0Q7SUFDcEUsb0JBQW9CLEVBQUUsd0RBQXdEO0lBQzlFLGlCQUFpQixFQUFFLGlEQUFpRDtJQUNwRSxhQUFhLEVBQUUsNkJBQTZCO0lBQzVDLFVBQVUsRUFBRSx1Q0FBdUM7SUFDbkQsNEJBQTRCLEVBQUUsK0RBQStEO0lBQzdGLG9DQUFvQyxFQUFFLCtEQUErRDtJQUNyRyxrQ0FBa0MsRUFBRSxtRkFBbUY7SUFDdkgsZ0NBQWdDLEVBQUUsMkRBQTJEO0lBQzdGLHVCQUF1QixFQUFFLG1EQUFtRDtJQUM1RSxnQkFBZ0IsRUFBRSxxRUFBcUU7SUFDdkYsa0JBQWtCLEVBQUUsNkVBQTZFO0NBQ2xHLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7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eEYsWUFBWSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDO0lBQzlDLGNBQWMsRUFBRSxDQUFDLG1CQUFtQixFQUFFLG9CQUFvQixDQUFDO0lBQzNELHVCQUF1QixFQUFFLENBQUMsMkJBQTJCLEVBQUUsb0NBQW9DLEVBQUUscUJBQXFCLENBQUM7SUFDbkgsWUFBWSxFQUFFLENBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLG1DQUFtQyxFQUFFLGNBQWMsQ0FBQztJQUNsRyxrQkFBa0IsRUFBRSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUM7SUFDOUQscUJBQXFCLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsY0FBYyxDQUFFO0lBQzdGLG1CQUFtQixFQUFFLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLENBQUM7SUFDakssU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSwwQkFBMEIsQ0FBQztJQUM5RCxZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUNyQyw0QkFBNEIsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDdEUsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixJQUFJLEVBQUUsTUFBTTtJQUNaLG9CQUFvQixFQUFFLHNCQUFzQjtDQUM3QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFQSSA9IHtcbiAgVVNFUl9UT0tFTjogJy9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvdXNlcnMvOnVzZXJJZC90b2tlbicsXG4gIFVQREFURV9VU0VSX0ZJRUxEUzogJy9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvdXNlckZpZWxkcy86dG9rZW4nLFxuICBQRVJTSVNUX1VTRVJfQ0FDSEU6ICcvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL3NhdmVVc2VyLzp0b2tlbicsXG4gIFVTRVJfQllfSUQ6ICcvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL3VzZXJzLzp1c2VySWQnLFxuICBRVUlDS19VU0VSU19TRUFSQ0g6IFwiL2FwaS9zZWFyY2gvcXVpY2t1c2Vyc1wiLFxuICBMT0NBVElPTjogXCIvYXBpL3Byb3Zpc2lvbi9vcHRpb25zLzpzaXRlSWQvbG9jYXRpb25zXCIsXG4gIFVTRVJfTE9DQUxFUzogXCIvYXBpL3Byb3Zpc2lvbi9vcHRpb25zLzpzaXRlSWQvdXNlcmxvY2FsZXNcIixcbiAgVVNFUl9QUk9GSUxFUzogXCIvYXBpL3Byb3Zpc2lvbi9vcHRpb25zLzpzaXRlSWQvdXNlcnByb2ZpbGVzXCIsXG4gIFJFQ09SRElOR19QUk9GSUxFOiBcIi9hcGkvcHJvdmlzaW9uL29wdGlvbnMvOnNpdGVJZC9yZWNvcmRpbmdwcm9maWxlc1wiLFxuICBBVkFJTEFCTEVfRE5fSU5fUkFOR0VTOiBcIi9hcGkvc2l0ZXMvOnNpdGVJZC9hdmFpbGFibGUtZG4taW4tcmFuZ2VzXCIsXG4gIERFTEVURV9MSU5FOiBcIi9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvZGVsZXRlTGluZS86cGtpZC86dG9rZW5cIixcbiAgRElTQVNTT0NJQVRFX0xJTkU6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC86ZGV2aWNlTmFtZS9kZWxldGVMaW5lQXNzb2NpYXRpb24vOmxpbmVQa2lkLzp0b2tlblwiLFxuICBDSEVDS19ERUxFVEVfTElORTogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2NoZWNrbGluZWRlbGV0aW9uXCIsXG4gIEFTU09DSUFURV9MSU5FOiBcIi9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvOmRldmljZU5hbWUvY3JlYXRlTGluZUFzc29jaWF0aW9uLzp0b2tlblwiLFxuICBDSEVDS19ERVNUSU5BVElPTl9OVU1CRVI6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9jaGVjay1kblwiLFxuICBVUERBVEVfTElORV9GSUVMRFM6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9saW5lRmllbGRzLzpwa2lkLzp0b2tlblwiLFxuICBVUERBVEVfREVWSUNFX0ZJRUxEUzogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2RldmljZUZpZWxkcy86ZGV2aWNlTmFtZS86dG9rZW5cIixcbiAgU09GVEtFWV9URU1QTEFURVM6IFwiL2FwaS9wcm92aXNpb24vb3B0aW9ucy86c2l0ZUlkL3NvZnRrZXl0ZW1wbGF0ZXNcIixcbiAgU0lURV9TRVRUSU5HUzogXCIvYXBpL3NpdGVzLzpzaXRlSWQvc2V0dGluZ3NcIixcbiAgTElORV9TTE9UUzogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2J1dHRvbnRlbXBsYXRlXCIsXG4gIExFQU5fVVNFUl9DT05WRVJTQVRJT05fU1RBUlQ6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9sZWFuVXNlcnMvOnVzZXJJZC9sZWFuVXNlckRldGFpbHNUb2tlblwiLFxuICBMRUFOX1VTRVJfREVWSUNFU19DT05WRVJTQVRJT05fU1RBUlQ6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9sZWFuVXNlcnMvOnVzZXJJZC9sZWFuVXNlckRldmljZXNUb2tlblwiLFxuICBMRUFOX1VTRVJfTElORVNfQ09OVkVSU0FUSU9OX1NUQVJUOiBcIi9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvbGVhblVzZXJzLzp1c2VySWQvOmxlYW5Vc2VyRGV2aWNlc1Rva2VuL2xlYW5Vc2VyTGluZXNUb2tlblwiLFxuICBMRUFOX1VTRVJfU05SX0NPTlZFUlNBVElPTl9TVEFSVDogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2xlYW5Vc2Vycy86dXNlcklkL2xlYW5Vc2VyU05SVG9rZW5cIixcbiAgREVWSUNFX0xJTkVfTU9OSVRPUl9DU1M6IFwiL2FwaS9wcm92aXNpb24vb3B0aW9ucy86c2l0ZUlkL2NhbGxpbmdTZWFyY2hTcGFjZVwiLFxuICBXRUJFWF9VU0VSX1RPS0VOOiAnL3dlYmV4L2FwaS93ZWJleC9wcm92aXNpb25pbmcvY3VzdG9tZXJzLzpjdXN0b21lcklkL3BlcnNvbnMvOnVzZXJJZCcsXG4gIFdFQkVYX1VTRVJfREVWSUNFUzogXCIvd2ViZXgvYXBpL3dlYmV4L3Byb3Zpc2lvbmluZy9jdXN0b21lcnMvOmN1c3RvbWVySWQvcGVyc29ucy86dXNlcklkL2RldmljZXNcIixcbn07XG5leHBvcnQgY29uc3QgUkVHRVhfUEFUVEVSTiA9IHtcbiAgRU1BSUw6ICdeKChbXjw+KClcXFxcW1xcXFxdXFxcXFxcXFwuLDs6XFxcXHNAXCJdKyhcXFxcLltePD4oKVxcXFxbXFxcXF1cXFxcXFxcXC4sOzpcXFxcc0BcIl0rKSopfChcIi4rXCIpKScgK1xuICAgICdAW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2Mn1bYS16QS1aMC05XSknICtcbiAgICAnPyg/OlxcXFwuW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2Mn1bYS16QS1aMC05XSk/KSokJ1xufTtcblxuZXhwb3J0IGNvbnN0IFBBR0lOQVRJT05fREVGQVVMVFMgPSB7XG4gIFNJWkU6IDEwLFxuICBJTkRFWDogMFxufVxuZXhwb3J0IGNvbnN0IFBBR0lOQVRJT05fU0laRV9PUFRJT05TID0gW1xuICAxMCxcbiAgNTAsXG4gIDEwMCxcbiAgNTAwXG5dO1xuZXhwb3J0IGNvbnN0IENVQ1NfVE9fSUdOT1JFID0gW1xuICAxODksXG4gIDE5NCxcbiAgMTkxLFxuICAxOTBcbl07XG5leHBvcnQgY29uc3QgQ1VDTVNfVE9fSUdOT1JFID0gW1xuICAyNDksXG4gIDI1NSxcbiAgMjUxLFxuICAyNTBcbl07XG5leHBvcnQgY29uc3QgUkVDT1JESU5HX01FRElBX1NPVVJDRSA9IFtcbiAgXCJHYXRld2F5IFByZWZlcnJlZFwiLFxuICBcIlBob25lIFByZWZlcnJlZFwiXG5dO1xuZXhwb3J0IGNvbnN0IFNUQVRJQ19PUFRJT05TID0ge1xuICBDQUxMX1BJQ0tVUF9HUk9VUF9BVURJT19TRVRUSU5HX1BIT05FX0FDVElWRTogWydVc2UgU3lzdGVtIERlZmF1bHQnLCAnRGlzYWJsZScsICdCZWVwIE9ubHknXSxcbiAgQ0FMTF9QSUNLVVBfR1JPVVBfQVVESU9fU0VUVElOR19QSE9ORV9JRExFOiBbJ1VzZSBTeXN0ZW0gRGVmYXVsdCcsICdEaXNhYmxlJywgJ1JpbmcgT25jZSddLFxuICBDT05GX0FDQ0VTU19NT0RFOiBbJ0ZpeGVkJywgJ1ZhcmlhYmxlJ10sXG4gIERFRkFVTFRfT05fT0ZGOiBbJ0RlZmF1bHQnLCAnT24nLCAnT2ZmJ10sXG4gIERFRkFVTFRfRU5fRElTOiBbJ0RlZmF1bHQnLCAnRW5hYmxlZCcsICdEaXNhYmxlZCddLFxuICBETkQ6IFsnVXNlIENvbW1vbiBQaG9uZSBQcm9maWxlIFNldHRpbmcnLCAnQ2FsbCBSZWplY3QnLCAnUmluZ2VyIE9mZiddLFxuICBETkRfSU5DT01JTkdfQ0FMTF9BTExFUlQ6IFsnRGlzYWJsZScsICdGbGFzaCBPbmx5JywgJ0JlZXAgT25seSddLFxuICBMQVRFTlRfQ0FQQUJJTElUWTogWydHYXRld2F5IENvbnRyb2xsZWQnLCAnTW9kZW0gUmVsYXknLCAnTW9kZW0gUGFzc3Rocm91Z2gnLCAnTW9kZW0gUmVsYXkgYW5kIFBhc3N0aHJvdWdoJywgJ05vbmUnXSxcbiAgTElORV9NT0RFOiBbJ1Nlc3Npb24gTGluZSBtb2RlJywgJ0VuaGFuY2VkIExpbmUgbW9kZSddLFxuICBBQ1RJT05BQkxFX0FMRVJUOiBbJ0Rpc2FibGVkJywgJ1Nob3cgZm9yIGFsbCBJbmNvbWluZyBDYWxsJywgJ1Nob3cgZm9yIEludmlzaWJsZSBJbmNvbWluZyBDYWxsJ10sXG4gIE1MUFBfUFJFRU1QVElPTjogWydEZWZhdWx0JywgJ0ZvcmNlZnVsJywgJ0Rpc2FibGVkJ10sXG4gIFBBQ0tFVF9DQVBUVVJFX01PREU6IFsnTm9uZScsICdCYXRjaCBQcm9jZXNzaW5nIE1vZGUnXSxcbiAgUklOR19WT0xVTUU6IFsnMC1TaWxlbnQnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsICc4JywgJzknLCAnMTAnLCAnMTEnLCAnMTInLCAnMTMnLCAnMTQnLCAnMTUnXSxcbiAgUE9SVF9ESVJFQ1RJT046IFsnQm90aHdheXMnLCAnSW5ib3VuZCcsICdPdXRib3VuZCddLFxuICBSSU5HX1NFVFRJTkdfSURMRTogWydVc2UgU3lzdGVtIERlZmF1bHQnLCAnRGlzYWJsZScgLCAnRmxhc2ggT25seScgLCAnUmluZyBPbmNlJyAsICdSaW5nJ10sXG4gIFJJTkdfU0VUVElOR19BQ1RJVkU6IFsnVXNlIFN5c3RlbSBEZWZhdWx0JywgJ0Rpc2FibGUnICwgJ0ZsYXNoIE9ubHknICwgJ1JpbmcgT25jZScgLCAnUmluZycsICdCZWVwIE9ubHknXSxcbiAgU0VSVklDRV9QUk9WSVNJT05JTkc6IFsnRGVmYXVsdCcsICdJbnRlcm5hbCcsICdFeHRlcm5hbCBVUkwnLCAnQm90aCddLFxuICBTRVRUSU5HU19BQ0NFUzogWydFbmFibGVkJywgJ0Rpc2FibGVkJywgJ1Jlc3RyaWN0ZWQnXSxcbiAgVklTVUFMX01XSTogWydVc2UgU3lzdGVtIFBvbGljeScsICdMaWdodCBhbmQgUHJvbXB0JyAsICdQcm9tcHQgT25seScgLCAnTGlnaHQgT25seScgLCAnTm9uZSddLFxuICBXRUVLREFZUzogWydTdW5kYXknLCAnTW9uZGF5JywgJ1R1ZXNkYXknLCAnV2VkbmVzZGF5JywgJ1RodXJzZGF5JywgJ0ZyaWRheScsICdTYXR1cmRheSddLFxuICBCVUlMRF9CUklER0U6IFsnTm9uZScsICdPbicsICdPZmYnLCAnRGVmYXVsdCddLFxuICBUUkFOU0ZFUl9UWVBFUzogWydSZWxlYXNlIHRvIFN3aXRjaCcsICdTdXBlcnZpc2UgVHJhbnNmZXInXSxcbiAgRVhURU5TSU9OX0lTX0JVU1lfVFlQRVM6IFsnU2VuZCBDYWxsZXJzIHRvIFZvaWNlbWFpbCcsICdQdXQgQ2FsbGVycyBvbiBIb2xkIFdpdGhvdXQgQXNraW5nJywgJ0FzayBDYWxsZXJzIHRvIEhvbGQnXSxcbiAgQ0FMTF9BQ1RJT05TOiBbJ0hhbmcgVXAnLCAnUmVzdGFydCBHcmVldGluZycsICdSb3V0ZSBGcm9tIE5leHQgQ2FsbCBSb3V0aW5nIFJ1bGUnLCAnVGFrZSBNZXNzYWdlJ10sXG4gIEFVVEhFTlRJQ0FUSU9OXzgwMjogWydVc2VyIGNvbnRyb2xsZWQnLCAnRGlzYWJsZWQnLCAnRW5hYmxlZCddLFxuICBDRVJUSUZJQ0FURV9PUEVSQVRJT046IFsnTm8gUGVuZGluZyBPcGVyYXRpb24nLCAnSW5zdGFsbC9VcGdyYWRlJywgJ0RlbGV0ZScsICdUcm91Ymxlc2hvb3QnIF0sXG4gIEFVVEhFTlRJQ0FUSU9OX01PREU6IFsnQnkgQXV0aGVudGljYXRpb24gU3RyaW5nJywgJ0J5IE51bGwgU3RyaW5nJywgJ0J5IEV4aXN0aW5nIENlcnRpZmljYXRlIChwcmVjZWRlbmNlIHRvIExTQyknLCAnQnkgRXhpc3RpbmcgQ2VydGlmaWNhdGUgKHByZWNlZGVuY2UgdG8gTUlDKSddLFxuICBLRVlfT1JERVI6IFsnUlNBIE9ubHknLCAnRUMgT25seScsICdFQyBQcmVmZXJyZWQsIFJTQSBCYWNrdXAnXSxcbiAgUlNBX0tFWV9TSVpFOiBbJzUxMicsICcxMDI0JywgJzIwNDgnXSxcbiAgUlNBX0tFWV9TSVpFX1NQRUNJRklDX0RFVklDRTogWyc1MTInLCAnMTAyNCcsICcyMDQ4JywgJzMwNzInLCAnNDA5NiddXG59O1xuXG5leHBvcnQgY29uc3QgVE9HR0xFX1RZUEVTID0ge1xuICBUQUJTOiAnVEFCUycsXG4gIEFTU09DSUFURURfTElORV9PTkxZOiAnQVNTT0NJQVRFRF9MSU5FX09OTFknXG59XG4iXX0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL2FwcC5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHO0lBQ2pCLFVBQVUsRUFBRSw0Q0FBNEM7SUFDeEQsa0JBQWtCLEVBQUUsMENBQTBDO0lBQzlELGtCQUFrQixFQUFFLHdDQUF3QztJQUM1RCxVQUFVLEVBQUUsc0NBQXNDO0lBQ2xELGtCQUFrQixFQUFFLHdCQUF3QjtJQUM1QyxRQUFRLEVBQUUsMENBQTBDO0lBQ3BELFlBQVksRUFBRSw0Q0FBNEM7SUFDMUQsYUFBYSxFQUFFLDZDQUE2QztJQUM1RCxpQkFBaUIsRUFBRSxrREFBa0Q7SUFDckUsc0JBQXNCLEVBQUUsMkNBQTJDO0lBQ25FLFdBQVcsRUFBRSxnREFBZ0Q7SUFDN0QsaUJBQWlCLEVBQUUsMkVBQTJFO0lBQzlGLGlCQUFpQixFQUFFLDBDQUEwQztJQUM3RCxjQUFjLEVBQUUsaUVBQWlFO0lBQ2pGLHdCQUF3QixFQUFFLGlDQUFpQztJQUMzRCxrQkFBa0IsRUFBRSxnREFBZ0Q7SUFDcEUsb0JBQW9CLEVBQUUsd0RBQXdEO0lBQzlFLGlCQUFpQixFQUFFLGlEQUFpRDtJQUNwRSxhQUFhLEVBQUUsNkJBQTZCO0lBQzVDLFVBQVUsRUFBRSx1Q0FBdUM7SUFDbkQsNEJBQTRCLEVBQUUsK0RBQStEO0lBQzdGLG9DQUFvQyxFQUFFLCtEQUErRDtJQUNyRyxrQ0FBa0MsRUFBRSxtRkFBbUY7SUFDdkgsZ0NBQWdDLEVBQUUsMkRBQTJEO0lBQzdGLHVCQUF1QixFQUFFLG1EQUFtRDtJQUM1RSxnQkFBZ0IsRUFBRSxxRUFBcUU7SUFDdkYsa0JBQWtCLEVBQUUsNkVBQTZFO0NBQ2xHLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7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eEYsWUFBWSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDO0lBQzlDLGNBQWMsRUFBRSxDQUFDLG1CQUFtQixFQUFFLG9CQUFvQixDQUFDO0lBQzNELHVCQUF1QixFQUFFLENBQUMsMkJBQTJCLEVBQUUsb0NBQW9DLEVBQUUscUJBQXFCLENBQUM7SUFDbkgsWUFBWSxFQUFFLENBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLG1DQUFtQyxFQUFFLGNBQWMsQ0FBQztJQUNsRyxrQkFBa0IsRUFBRSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUM7SUFDOUQscUJBQXFCLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsY0FBYyxDQUFFO0lBQzdGLG1CQUFtQixFQUFFLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLENBQUM7SUFDakssU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSwwQkFBMEIsQ0FBQztJQUM5RCxZQUFZLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUNyQyw0QkFBNEIsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDdEUsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixJQUFJLEVBQUUsTUFBTTtJQUNaLG9CQUFvQixFQUFFLHNCQUFzQjtDQUM3QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFQSSA9IHtcclxuICBVU0VSX1RPS0VOOiAnL2FwaS9wcm92aXNpb24vOnNpdGVJZC91c2Vycy86dXNlcklkL3Rva2VuJyxcclxuICBVUERBVEVfVVNFUl9GSUVMRFM6ICcvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL3VzZXJGaWVsZHMvOnRva2VuJyxcclxuICBQRVJTSVNUX1VTRVJfQ0FDSEU6ICcvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL3NhdmVVc2VyLzp0b2tlbicsXHJcbiAgVVNFUl9CWV9JRDogJy9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvdXNlcnMvOnVzZXJJZCcsXHJcbiAgUVVJQ0tfVVNFUlNfU0VBUkNIOiBcIi9hcGkvc2VhcmNoL3F1aWNrdXNlcnNcIixcclxuICBMT0NBVElPTjogXCIvYXBpL3Byb3Zpc2lvbi9vcHRpb25zLzpzaXRlSWQvbG9jYXRpb25zXCIsXHJcbiAgVVNFUl9MT0NBTEVTOiBcIi9hcGkvcHJvdmlzaW9uL29wdGlvbnMvOnNpdGVJZC91c2VybG9jYWxlc1wiLFxyXG4gIFVTRVJfUFJPRklMRVM6IFwiL2FwaS9wcm92aXNpb24vb3B0aW9ucy86c2l0ZUlkL3VzZXJwcm9maWxlc1wiLFxyXG4gIFJFQ09SRElOR19QUk9GSUxFOiBcIi9hcGkvcHJvdmlzaW9uL29wdGlvbnMvOnNpdGVJZC9yZWNvcmRpbmdwcm9maWxlc1wiLFxyXG4gIEFWQUlMQUJMRV9ETl9JTl9SQU5HRVM6IFwiL2FwaS9zaXRlcy86c2l0ZUlkL2F2YWlsYWJsZS1kbi1pbi1yYW5nZXNcIixcclxuICBERUxFVEVfTElORTogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2RlbGV0ZUxpbmUvOnBraWQvOnRva2VuXCIsXHJcbiAgRElTQVNTT0NJQVRFX0xJTkU6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC86ZGV2aWNlTmFtZS9kZWxldGVMaW5lQXNzb2NpYXRpb24vOmxpbmVQa2lkLzp0b2tlblwiLFxyXG4gIENIRUNLX0RFTEVURV9MSU5FOiBcIi9hcGkvcHJvdmlzaW9uLzpzaXRlSWQvY2hlY2tsaW5lZGVsZXRpb25cIixcclxuICBBU1NPQ0lBVEVfTElORTogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkLzpkZXZpY2VOYW1lL2NyZWF0ZUxpbmVBc3NvY2lhdGlvbi86dG9rZW5cIixcclxuICBDSEVDS19ERVNUSU5BVElPTl9OVU1CRVI6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9jaGVjay1kblwiLFxyXG4gIFVQREFURV9MSU5FX0ZJRUxEUzogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2xpbmVGaWVsZHMvOnBraWQvOnRva2VuXCIsXHJcbiAgVVBEQVRFX0RFVklDRV9GSUVMRFM6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9kZXZpY2VGaWVsZHMvOmRldmljZU5hbWUvOnRva2VuXCIsXHJcbiAgU09GVEtFWV9URU1QTEFURVM6IFwiL2FwaS9wcm92aXNpb24vb3B0aW9ucy86c2l0ZUlkL3NvZnRrZXl0ZW1wbGF0ZXNcIixcclxuICBTSVRFX1NFVFRJTkdTOiBcIi9hcGkvc2l0ZXMvOnNpdGVJZC9zZXR0aW5nc1wiLFxyXG4gIExJTkVfU0xPVFM6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9idXR0b250ZW1wbGF0ZVwiLFxyXG4gIExFQU5fVVNFUl9DT05WRVJTQVRJT05fU1RBUlQ6IFwiL2FwaS9wcm92aXNpb24vOnNpdGVJZC9sZWFuVXNlcnMvOnVzZXJJZC9sZWFuVXNlckRldGFpbHNUb2tlblwiLFxyXG4gIExFQU5fVVNFUl9ERVZJQ0VTX0NPTlZFUlNBVElPTl9TVEFSVDogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2xlYW5Vc2Vycy86dXNlcklkL2xlYW5Vc2VyRGV2aWNlc1Rva2VuXCIsXHJcbiAgTEVBTl9VU0VSX0xJTkVTX0NPTlZFUlNBVElPTl9TVEFSVDogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2xlYW5Vc2Vycy86dXNlcklkLzpsZWFuVXNlckRldmljZXNUb2tlbi9sZWFuVXNlckxpbmVzVG9rZW5cIixcclxuICBMRUFOX1VTRVJfU05SX0NPTlZFUlNBVElPTl9TVEFSVDogXCIvYXBpL3Byb3Zpc2lvbi86c2l0ZUlkL2xlYW5Vc2Vycy86dXNlcklkL2xlYW5Vc2VyU05SVG9rZW5cIixcclxuICBERVZJQ0VfTElORV9NT05JVE9SX0NTUzogXCIvYXBpL3Byb3Zpc2lvbi9vcHRpb25zLzpzaXRlSWQvY2FsbGluZ1NlYXJjaFNwYWNlXCIsXHJcbiAgV0VCRVhfVVNFUl9UT0tFTjogJy93ZWJleC9hcGkvd2ViZXgvcHJvdmlzaW9uaW5nL2N1c3RvbWVycy86Y3VzdG9tZXJJZC9wZXJzb25zLzp1c2VySWQnLFxyXG4gIFdFQkVYX1VTRVJfREVWSUNFUzogXCIvd2ViZXgvYXBpL3dlYmV4L3Byb3Zpc2lvbmluZy9jdXN0b21lcnMvOmN1c3RvbWVySWQvcGVyc29ucy86dXNlcklkL2RldmljZXNcIixcclxufTtcclxuZXhwb3J0IGNvbnN0IFJFR0VYX1BBVFRFUk4gPSB7XHJcbiAgRU1BSUw6ICdeKChbXjw+KClcXFxcW1xcXFxdXFxcXFxcXFwuLDs6XFxcXHNAXCJdKyhcXFxcLltePD4oKVxcXFxbXFxcXF1cXFxcXFxcXC4sOzpcXFxcc0BcIl0rKSopfChcIi4rXCIpKScgK1xyXG4gICAgJ0BbYS16QS1aMC05XSg/OlthLXpBLVowLTktXXswLDYyfVthLXpBLVowLTldKScgK1xyXG4gICAgJz8oPzpcXFxcLlthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjJ9W2EtekEtWjAtOV0pPykqJCdcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBQQUdJTkFUSU9OX0RFRkFVTFRTID0ge1xyXG4gIFNJWkU6IDEwLFxyXG4gIElOREVYOiAwXHJcbn1cclxuZXhwb3J0IGNvbnN0IFBBR0lOQVRJT05fU0laRV9PUFRJT05TID0gW1xyXG4gIDEwLFxyXG4gIDUwLFxyXG4gIDEwMCxcclxuICA1MDBcclxuXTtcclxuZXhwb3J0IGNvbnN0IENVQ1NfVE9fSUdOT1JFID0gW1xyXG4gIDE4OSxcclxuICAxOTQsXHJcbiAgMTkxLFxyXG4gIDE5MFxyXG5dO1xyXG5leHBvcnQgY29uc3QgQ1VDTVNfVE9fSUdOT1JFID0gW1xyXG4gIDI0OSxcclxuICAyNTUsXHJcbiAgMjUxLFxyXG4gIDI1MFxyXG5dO1xyXG5leHBvcnQgY29uc3QgUkVDT1JESU5HX01FRElBX1NPVVJDRSA9IFtcclxuICBcIkdhdGV3YXkgUHJlZmVycmVkXCIsXHJcbiAgXCJQaG9uZSBQcmVmZXJyZWRcIlxyXG5dO1xyXG5leHBvcnQgY29uc3QgU1RBVElDX09QVElPTlMgPSB7XHJcbiAgQ0FMTF9QSUNLVVBfR1JPVVBfQVVESU9fU0VUVElOR19QSE9ORV9BQ1RJVkU6IFsnVXNlIFN5c3RlbSBEZWZhdWx0JywgJ0Rpc2FibGUnLCAnQmVlcCBPbmx5J10sXHJcbiAgQ0FMTF9QSUNLVVBfR1JPVVBfQVVESU9fU0VUVElOR19QSE9ORV9JRExFOiBbJ1VzZSBTeXN0ZW0gRGVmYXVsdCcsICdEaXNhYmxlJywgJ1JpbmcgT25jZSddLFxyXG4gIENPTkZfQUNDRVNTX01PREU6IFsnRml4ZWQnLCAnVmFyaWFibGUnXSxcclxuICBERUZBVUxUX09OX09GRjogWydEZWZhdWx0JywgJ09uJywgJ09mZiddLFxyXG4gIERFRkFVTFRfRU5fRElTOiBbJ0RlZmF1bHQnLCAnRW5hYmxlZCcsICdEaXNhYmxlZCddLFxyXG4gIERORDogWydVc2UgQ29tbW9uIFBob25lIFByb2ZpbGUgU2V0dGluZycsICdDYWxsIFJlamVjdCcsICdSaW5nZXIgT2ZmJ10sXHJcbiAgRE5EX0lOQ09NSU5HX0NBTExfQUxMRVJUOiBbJ0Rpc2FibGUnLCAnRmxhc2ggT25seScsICdCZWVwIE9ubHknXSxcclxuICBMQVRFTlRfQ0FQQUJJTElUWTogWydHYXRld2F5IENvbnRyb2xsZWQnLCAnTW9kZW0gUmVsYXknLCAnTW9kZW0gUGFzc3Rocm91Z2gnLCAnTW9kZW0gUmVsYXkgYW5kIFBhc3N0aHJvdWdoJywgJ05vbmUnXSxcclxuICBMSU5FX01PREU6IFsnU2Vzc2lvbiBMaW5lIG1vZGUnLCAnRW5oYW5jZWQgTGluZSBtb2RlJ10sXHJcbiAgQUNUSU9OQUJMRV9BTEVSVDogWydEaXNhYmxlZCcsICdTaG93IGZvciBhbGwgSW5jb21pbmcgQ2FsbCcsICdTaG93IGZvciBJbnZpc2libGUgSW5jb21pbmcgQ2FsbCddLFxyXG4gIE1MUFBfUFJFRU1QVElPTjogWydEZWZhdWx0JywgJ0ZvcmNlZnVsJywgJ0Rpc2FibGVkJ10sXHJcbiAgUEFDS0VUX0NBUFRVUkVfTU9ERTogWydOb25lJywgJ0JhdGNoIFByb2Nlc3NpbmcgTW9kZSddLFxyXG4gIFJJTkdfVk9MVU1FOiBbJzAtU2lsZW50JywgJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JywgJzcnLCAnOCcsICc5JywgJzEwJywgJzExJywgJzEyJywgJzEzJywgJzE0JywgJzE1J10sXHJcbiAgUE9SVF9ESVJFQ1RJT046IFsnQm90aHdheXMnLCAnSW5ib3VuZCcsICdPdXRib3VuZCddLFxyXG4gIFJJTkdfU0VUVElOR19JRExFOiBbJ1VzZSBTeXN0ZW0gRGVmYXVsdCcsICdEaXNhYmxlJyAsICdGbGFzaCBPbmx5JyAsICdSaW5nIE9uY2UnICwgJ1JpbmcnXSxcclxuICBSSU5HX1NFVFRJTkdfQUNUSVZFOiBbJ1VzZSBTeXN0ZW0gRGVmYXVsdCcsICdEaXNhYmxlJyAsICdGbGFzaCBPbmx5JyAsICdSaW5nIE9uY2UnICwgJ1JpbmcnLCAnQmVlcCBPbmx5J10sXHJcbiAgU0VSVklDRV9QUk9WSVNJT05JTkc6IFsnRGVmYXVsdCcsICdJbnRlcm5hbCcsICdFeHRlcm5hbCBVUkwnLCAnQm90aCddLFxyXG4gIFNFVFRJTkdTX0FDQ0VTOiBbJ0VuYWJsZWQnLCAnRGlzYWJsZWQnLCAnUmVzdHJpY3RlZCddLFxyXG4gIFZJU1VBTF9NV0k6IFsnVXNlIFN5c3RlbSBQb2xpY3knLCAnTGlnaHQgYW5kIFByb21wdCcgLCAnUHJvbXB0IE9ubHknICwgJ0xpZ2h0IE9ubHknICwgJ05vbmUnXSxcclxuICBXRUVLREFZUzogWydTdW5kYXknLCAnTW9uZGF5JywgJ1R1ZXNkYXknLCAnV2VkbmVzZGF5JywgJ1RodXJzZGF5JywgJ0ZyaWRheScsICdTYXR1cmRheSddLFxyXG4gIEJVSUxEX0JSSURHRTogWydOb25lJywgJ09uJywgJ09mZicsICdEZWZhdWx0J10sXHJcbiAgVFJBTlNGRVJfVFlQRVM6IFsnUmVsZWFzZSB0byBTd2l0Y2gnLCAnU3VwZXJ2aXNlIFRyYW5zZmVyJ10sXHJcbiAgRVhURU5TSU9OX0lTX0JVU1lfVFlQRVM6IFsnU2VuZCBDYWxsZXJzIHRvIFZvaWNlbWFpbCcsICdQdXQgQ2FsbGVycyBvbiBIb2xkIFdpdGhvdXQgQXNraW5nJywgJ0FzayBDYWxsZXJzIHRvIEhvbGQnXSxcclxuICBDQUxMX0FDVElPTlM6IFsnSGFuZyBVcCcsICdSZXN0YXJ0IEdyZWV0aW5nJywgJ1JvdXRlIEZyb20gTmV4dCBDYWxsIFJvdXRpbmcgUnVsZScsICdUYWtlIE1lc3NhZ2UnXSxcclxuICBBVVRIRU5USUNBVElPTl84MDI6IFsnVXNlciBjb250cm9sbGVkJywgJ0Rpc2FibGVkJywgJ0VuYWJsZWQnXSxcclxuICBDRVJUSUZJQ0FURV9PUEVSQVRJT046IFsnTm8gUGVuZGluZyBPcGVyYXRpb24nLCAnSW5zdGFsbC9VcGdyYWRlJywgJ0RlbGV0ZScsICdUcm91Ymxlc2hvb3QnIF0sXHJcbiAgQVVUSEVOVElDQVRJT05fTU9ERTogWydCeSBBdXRoZW50aWNhdGlvbiBTdHJpbmcnLCAnQnkgTnVsbCBTdHJpbmcnLCAnQnkgRXhpc3RpbmcgQ2VydGlmaWNhdGUgKHByZWNlZGVuY2UgdG8gTFNDKScsICdCeSBFeGlzdGluZyBDZXJ0aWZpY2F0ZSAocHJlY2VkZW5jZSB0byBNSUMpJ10sXHJcbiAgS0VZX09SREVSOiBbJ1JTQSBPbmx5JywgJ0VDIE9ubHknLCAnRUMgUHJlZmVycmVkLCBSU0EgQmFja3VwJ10sXHJcbiAgUlNBX0tFWV9TSVpFOiBbJzUxMicsICcxMDI0JywgJzIwNDgnXSxcclxuICBSU0FfS0VZX1NJWkVfU1BFQ0lGSUNfREVWSUNFOiBbJzUxMicsICcxMDI0JywgJzIwNDgnLCAnMzA3MicsICc0MDk2J11cclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBUT0dHTEVfVFlQRVMgPSB7XHJcbiAgVEFCUzogJ1RBQlMnLFxyXG4gIEFTU09DSUFURURfTElORV9PTkxZOiAnQVNTT0NJQVRFRF9MSU5FX09OTFknXHJcbn1cclxuIl19
@@ -32,4 +32,4 @@ export class DeviceProfile {
32
32
  this.form = formBuilder.group(formSettings);
33
33
  }
34
34
  }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlUHJvZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL2NsYXNzZXMvZGV2aWNlUHJvZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEYsTUFBTSxPQUFPLGFBQWE7SUF1QnRCLFlBQVksTUFBcUI7UUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQXFCO1FBQzFCLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDdEMsTUFBTSxZQUFZLEdBQUc7WUFDakIsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUNwRixRQUFRLEVBQUUsSUFBSSxTQUFTLENBQUM7Z0JBQ3BCLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxLQUFLLENBQUM7Z0JBQzVELGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGFBQWEsSUFBSSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO2dCQUNqRyxlQUFlLEVBQUUsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxlQUFlLElBQUksU0FBUyxDQUFDO2FBQ25GLENBQUM7WUFDRixZQUFZLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFlBQVksSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ3hGLEtBQUssRUFBRSxJQUFJLFNBQVMsQ0FDaEIsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUN4QixPQUFPLElBQUksU0FBUyxDQUFDO29CQUNqQixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO29CQUN2RSxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO29CQUNqRixNQUFNLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO2lCQUNqRixDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDWjtZQUNELGVBQWUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7WUFDMUYsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUMxRSxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ2xGLGVBQWUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7WUFDOUYsZUFBZSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxlQUFlLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUM5RixlQUFlLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLGVBQWUsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQzlGLElBQUksRUFBRSxJQUFJLFNBQVMsQ0FDZixDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUMzRDtTQUNKLENBQUM7UUFDRixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuXG5leHBvcnQgY2xhc3MgRGV2aWNlUHJvZmlsZSB7XG4gICAgbWFjQWRkcmVzcz86IHN0cmluZztcbiAgICBob3RlbGluZz86IHtcbiAgICAgICAgZW5hYmxlZD86IGJvb2xlYW4sIFxuICAgICAgICBsaW1pdEd1ZXN0VXNlPzogYm9vbGVhbiwgXG4gICAgICAgIGd1ZXN0SG91cnNMaW1pdD86IG51bWJlcixcbiAgICB9O1xuICAgIG1heExpbmVDb3VudD86IG51bWJlcjtcbiAgICBsaW5lcz86IEFycmF5PHtcbiAgICAgICAgbmFtZT86IHN0cmluZztcbiAgICAgICAgZXh0ZW5zaW9uPzogc3RyaW5nO1xuICAgICAgICBudW1iZXI/OiBzdHJpbmc7XG4gICAgfT47XG4gICAgYWN0aXZhdGlvblN0YXRlPzogYm9vbGVhbjtcbiAgICBtb2RlbD86IHN0cmluZztcbiAgICBpcEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgcmVtb3RlSXBBZGRyZXNzPzogc3RyaW5nO1xuICAgIHNvZnR3YXJlVmVyc2lvbj86IHN0cmluZztcbiAgICBzb2Z0d2FyZUNoYW5uZWw/OiBzdHJpbmc7XG4gICAgdGFncz86IHN0cmluZ1tdO1xuXG4gICAgZm9ybSE6IEZvcm1Hcm91cDtcblxuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogRGV2aWNlUHJvZmlsZSkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbmZpZyk7XG4gICAgICAgIHRoaXMuaW5pdEZvcm0oY29uZmlnKTtcbiAgICB9XG5cbiAgICBpbml0Rm9ybShjb25maWc6IERldmljZVByb2ZpbGUpIHtcbiAgICAgICAgY29uc3QgZm9ybUJ1aWxkZXIgPSBuZXcgRm9ybUJ1aWxkZXIoKTtcbiAgICAgICAgY29uc3QgZm9ybVNldHRpbmdzID0ge1xuICAgICAgICAgICAgbWFjQWRkcmVzczogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLm1hY0FkZHJlc3MgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgaG90ZWxpbmc6IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICAgICAgICAgIGVuYWJsZWQ6IG5ldyBGb3JtQ29udHJvbChjb25maWc/LmhvdGVsaW5nPy5lbmFibGVkIHx8IGZhbHNlKSxcbiAgICAgICAgICAgICAgICBsaW1pdEd1ZXN0VXNlOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBjb25maWc/LmhvdGVsaW5nPy5saW1pdEd1ZXN0VXNlIHx8IGZhbHNlLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgIGd1ZXN0SG91cnNMaW1pdDogbmV3IEZvcm1Db250cm9sKGNvbmZpZz8uaG90ZWxpbmc/Lmd1ZXN0SG91cnNMaW1pdCB8fCB1bmRlZmluZWQpLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXhMaW5lQ291bnQ6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGNvbmZpZy5tYXhMaW5lQ291bnQgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgbGluZXM6IG5ldyBGb3JtQXJyYXkoXG4gICAgICAgICAgICAgICAgKGNvbmZpZy5saW5lcz8ubWFwKChsaW5lKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGxpbmU/Lm5hbWUgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgZXh0ZW5zaW9uOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBsaW5lPy5leHRlbnNpb24gfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBsaW5lPy5leHRlbnNpb24gfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KSA/PyBbXSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBhY3RpdmF0aW9uU3RhdGU6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGNvbmZpZy5hY3RpdmF0aW9uU3RhdGUgfHwgZmFsc2UsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgICAgICAgICBtb2RlbDogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLm1vZGVsIHx8IHVuZGVmaW5lZCwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgICAgICAgICAgIGlwQWRkcmVzczogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLmlwQWRkcmVzcyB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgICAgICAgICByZW1vdGVJcEFkZHJlc3M6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGNvbmZpZy5yZW1vdGVJcEFkZHJlc3MgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgICAgICAgc29mdHdhcmVWZXJzaW9uOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBjb25maWcuc29mdHdhcmVWZXJzaW9uIHx8IHVuZGVmaW5lZCwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgICAgICAgICAgIHNvZnR3YXJlQ2hhbm5lbDogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLnNvZnR3YXJlQ2hhbm5lbCB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXG4gICAgICAgICAgICB0YWdzOiBuZXcgRm9ybUFycmF5KFxuICAgICAgICAgICAgICAgIChjb25maWc/LnRhZ3M/Lm1hcCgodGFnKSA9PiBuZXcgRm9ybUNvbnRyb2wodGFnKSkgPz8gW10pXG4gICAgICAgICAgICApXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuZm9ybSA9IGZvcm1CdWlsZGVyLmdyb3VwKGZvcm1TZXR0aW5ncyk7XG4gICAgICB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlUHJvZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL2NsYXNzZXMvZGV2aWNlUHJvZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEYsTUFBTSxPQUFPLGFBQWE7SUF1QnRCLFlBQVksTUFBcUI7UUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQXFCO1FBQzFCLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDdEMsTUFBTSxZQUFZLEdBQUc7WUFDakIsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxVQUFVLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUNwRixRQUFRLEVBQUUsSUFBSSxTQUFTLENBQUM7Z0JBQ3BCLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxLQUFLLENBQUM7Z0JBQzVELGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGFBQWEsSUFBSSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO2dCQUNqRyxlQUFlLEVBQUUsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxlQUFlLElBQUksU0FBUyxDQUFDO2FBQ25GLENBQUM7WUFDRixZQUFZLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFlBQVksSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ3hGLEtBQUssRUFBRSxJQUFJLFNBQVMsQ0FDaEIsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUN4QixPQUFPLElBQUksU0FBUyxDQUFDO29CQUNqQixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO29CQUN2RSxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO29CQUNqRixNQUFNLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO2lCQUNqRixDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDWjtZQUNELGVBQWUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7WUFDMUYsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUMxRSxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVMsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ2xGLGVBQWUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7WUFDOUYsZUFBZSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxlQUFlLElBQUksU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztZQUM5RixlQUFlLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLGVBQWUsSUFBSSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQzlGLElBQUksRUFBRSxJQUFJLFNBQVMsQ0FDZixDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUMzRDtTQUNKLENBQUM7UUFDRixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIERldmljZVByb2ZpbGUge1xyXG4gICAgbWFjQWRkcmVzcz86IHN0cmluZztcclxuICAgIGhvdGVsaW5nPzoge1xyXG4gICAgICAgIGVuYWJsZWQ/OiBib29sZWFuLCBcclxuICAgICAgICBsaW1pdEd1ZXN0VXNlPzogYm9vbGVhbiwgXHJcbiAgICAgICAgZ3Vlc3RIb3Vyc0xpbWl0PzogbnVtYmVyLFxyXG4gICAgfTtcclxuICAgIG1heExpbmVDb3VudD86IG51bWJlcjtcclxuICAgIGxpbmVzPzogQXJyYXk8e1xyXG4gICAgICAgIG5hbWU/OiBzdHJpbmc7XHJcbiAgICAgICAgZXh0ZW5zaW9uPzogc3RyaW5nO1xyXG4gICAgICAgIG51bWJlcj86IHN0cmluZztcclxuICAgIH0+O1xyXG4gICAgYWN0aXZhdGlvblN0YXRlPzogYm9vbGVhbjtcclxuICAgIG1vZGVsPzogc3RyaW5nO1xyXG4gICAgaXBBZGRyZXNzPzogc3RyaW5nO1xyXG4gICAgcmVtb3RlSXBBZGRyZXNzPzogc3RyaW5nO1xyXG4gICAgc29mdHdhcmVWZXJzaW9uPzogc3RyaW5nO1xyXG4gICAgc29mdHdhcmVDaGFubmVsPzogc3RyaW5nO1xyXG4gICAgdGFncz86IHN0cmluZ1tdO1xyXG5cclxuICAgIGZvcm0hOiBGb3JtR3JvdXA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBEZXZpY2VQcm9maWxlKSB7XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBjb25maWcpO1xyXG4gICAgICAgIHRoaXMuaW5pdEZvcm0oY29uZmlnKTtcclxuICAgIH1cclxuXHJcbiAgICBpbml0Rm9ybShjb25maWc6IERldmljZVByb2ZpbGUpIHtcclxuICAgICAgICBjb25zdCBmb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xyXG4gICAgICAgIGNvbnN0IGZvcm1TZXR0aW5ncyA9IHtcclxuICAgICAgICAgICAgbWFjQWRkcmVzczogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLm1hY0FkZHJlc3MgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxyXG4gICAgICAgICAgICBob3RlbGluZzogbmV3IEZvcm1Hcm91cCh7XHJcbiAgICAgICAgICAgICAgICBlbmFibGVkOiBuZXcgRm9ybUNvbnRyb2woY29uZmlnPy5ob3RlbGluZz8uZW5hYmxlZCB8fCBmYWxzZSksXHJcbiAgICAgICAgICAgICAgICBsaW1pdEd1ZXN0VXNlOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBjb25maWc/LmhvdGVsaW5nPy5saW1pdEd1ZXN0VXNlIHx8IGZhbHNlLCBkaXNhYmxlZDogdHJ1ZX0pLFxyXG4gICAgICAgICAgICAgICAgZ3Vlc3RIb3Vyc0xpbWl0OiBuZXcgRm9ybUNvbnRyb2woY29uZmlnPy5ob3RlbGluZz8uZ3Vlc3RIb3Vyc0xpbWl0IHx8IHVuZGVmaW5lZCksXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICBtYXhMaW5lQ291bnQ6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGNvbmZpZy5tYXhMaW5lQ291bnQgfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxyXG4gICAgICAgICAgICBsaW5lczogbmV3IEZvcm1BcnJheShcclxuICAgICAgICAgICAgICAgIChjb25maWcubGluZXM/Lm1hcCgobGluZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogbGluZT8ubmFtZSB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVuc2lvbjogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogbGluZT8uZXh0ZW5zaW9uIHx8IHVuZGVmaW5lZCwgZGlzYWJsZWQ6IHRydWV9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBsaW5lPy5leHRlbnNpb24gfHwgdW5kZWZpbmVkLCBkaXNhYmxlZDogdHJ1ZX0pLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSkgPz8gW10pXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgIGFjdGl2YXRpb25TdGF0ZTogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLmFjdGl2YXRpb25TdGF0ZSB8fCBmYWxzZSwgZGlzYWJsZWQ6IHRydWV9KSxcclxuICAgICAgICAgICAgbW9kZWw6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IGNvbmZpZy5tb2RlbCB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgIGlwQWRkcmVzczogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLmlwQWRkcmVzcyB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgIHJlbW90ZUlwQWRkcmVzczogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLnJlbW90ZUlwQWRkcmVzcyB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgIHNvZnR3YXJlVmVyc2lvbjogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLnNvZnR3YXJlVmVyc2lvbiB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgIHNvZnR3YXJlQ2hhbm5lbDogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogY29uZmlnLnNvZnR3YXJlQ2hhbm5lbCB8fCB1bmRlZmluZWQsIGRpc2FibGVkOiB0cnVlfSksXHJcbiAgICAgICAgICAgIHRhZ3M6IG5ldyBGb3JtQXJyYXkoXHJcbiAgICAgICAgICAgICAgICAoY29uZmlnPy50YWdzPy5tYXAoKHRhZykgPT4gbmV3IEZvcm1Db250cm9sKHRhZykpID8/IFtdKVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmZvcm0gPSBmb3JtQnVpbGRlci5ncm91cChmb3JtU2V0dGluZ3MpO1xyXG4gICAgICB9XHJcbn1cclxuIl19