@microsoft/windows-admin-center-sdk 2.523.1 → 2.538.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js +88 -41
  2. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js.map +1 -1
  3. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js +1 -1
  4. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js.map +1 -1
  5. package/angular/esm2015/src/controls/data-table/data-table.component.js +6 -2
  6. package/angular/esm2015/src/controls/dialog/dialog.component.js +11 -11
  7. package/angular/esm2015/src/controls/dialog/extension-dialog/extension-dialog.component.js +7 -7
  8. package/angular/esm2015/src/controls/header/header.component.js +52 -14
  9. package/angular/esm2015/src/controls/layout/layout-config.js +1 -2
  10. package/angular/esm2015/src/controls/query-editor/query-editor.component.js +4 -4
  11. package/angular/esm2015/src/controls/snap-in-extension/snap-in-extension.component.js +1 -1
  12. package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js +75 -34
  13. package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js.map +1 -1
  14. package/angular/src/controls/header/header.component.d.ts +14 -1
  15. package/angular/src/controls/query-editor/query-editor.component.d.ts +1 -1
  16. package/core/data/active-directory/active-directory.js +2 -2
  17. package/core/data/active-directory/active-directory.js.map +1 -1
  18. package/core/data/powershell.d.ts +2 -2
  19. package/core/data/powershell.js +2 -2
  20. package/core/data/powershell.js.map +1 -1
  21. package/core/notification/notification-manager.d.ts +18 -0
  22. package/core/notification/notification-manager.js +55 -10
  23. package/core/notification/notification-manager.js.map +1 -1
  24. package/core/notification/notification-message.d.ts +41 -0
  25. package/core/notification/notification-message.js +3 -0
  26. package/core/notification/notification-message.js.map +1 -0
  27. package/core/notification/notification.d.ts +10 -1
  28. package/core/notification/notification.js +30 -33
  29. package/core/notification/notification.js.map +1 -1
  30. package/core/notification/powershell-notification.d.ts +15 -15
  31. package/core/notification/powershell-notification.js +19 -8
  32. package/core/notification/powershell-notification.js.map +1 -1
  33. package/core/notification/socket-signalr.d.ts +8 -14
  34. package/core/notification/socket-signalr.js +18 -19
  35. package/core/notification/socket-signalr.js.map +1 -1
  36. package/core/notification/work-item-manager.d.ts +4 -0
  37. package/core/notification/work-item-manager.js +76 -20
  38. package/core/notification/work-item-manager.js.map +1 -1
  39. package/e2e/assets/strings/cs-CZ/strings.json +1 -1
  40. package/e2e/assets/strings/de-DE/strings.json +1 -1
  41. package/e2e/assets/strings/es-ES/strings.json +1 -1
  42. package/e2e/assets/strings/fr-FR/strings.json +1 -1
  43. package/e2e/assets/strings/hu-HU/strings.json +1 -1
  44. package/e2e/assets/strings/id-ID/strings.json +1 -1
  45. package/e2e/assets/strings/it-IT/strings.json +1 -1
  46. package/e2e/assets/strings/ja-JP/strings.json +1 -1
  47. package/e2e/assets/strings/ko-KR/strings.json +1 -1
  48. package/e2e/assets/strings/nl-NL/strings.json +1 -1
  49. package/e2e/assets/strings/pl-PL/strings.json +1 -1
  50. package/e2e/assets/strings/pt-BR/strings.json +1 -1
  51. package/e2e/assets/strings/pt-PT/strings.json +1 -1
  52. package/e2e/assets/strings/ru-RU/strings.json +1 -1
  53. package/e2e/assets/strings/strings.json +1 -1
  54. package/e2e/assets/strings/sv-SE/strings.json +1 -1
  55. package/e2e/assets/strings/tr-TR/strings.json +1 -1
  56. package/e2e/assets/strings/zh-CN/strings.json +1 -1
  57. package/e2e/assets/strings/zh-TW/strings.json +1 -1
  58. package/package.json +3 -6
  59. package/styles/css/main-v2.css +1 -1
  60. package/tools/test-runner/index.js +12 -2
  61. package/tools/test-runner/index.js.map +1 -1
  62. package/tools/wac-cli/templates/internal/package.json +0 -4
  63. package/tools/wac-cli/templates/library/angular.json +0 -3
  64. package/tools/wac-cli/templates/library/tsconfig.lib.json +1 -1
  65. package/tools/wac-cli/templates/wac-template/angular.json +0 -3
  66. package/tools/wac-cli/templates/wac-template/package.json +0 -4
  67. package/tools/wac-cli/templates/wac-template/tsconfig.base.json +23 -24
@@ -179,4 +179,4 @@ __decorate([
179
179
  type: HostListener,
180
180
  args: ['window:scroll']
181
181
  }], onLayoutChanged: [] }); })();
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvc25hcC1pbi1leHRlbnNpb24vc25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvc25hcC1pbi1leHRlbnNpb24vc25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDWSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUM5RyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFJakcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3RFLE9BQU8sRUFBVSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0lDWDdELG9DQUF1RDs7QURpQnpELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxpQkFBaUI7SUF1QzNELFlBQVksUUFBa0IsRUFBVSxzQkFBOEM7UUFDbEYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRG9CLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFyQi9FLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQU8s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O1NBQzdDO1FBRUQsSUFBSSxLQUFLLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxFQUFFO1lBQ2xDLE1BQU0sTUFBTSxHQUFHLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7WUFDaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDO1NBQzdDO0lBRUwsQ0FBQzs7bUhBcEtRLHdCQUF3QjtnRkFBeEIsd0JBQXdCOzs7Ozs7dUdBQXhCLGNBQVU7O1FDbEJ2QixpQ0FBd0U7UUFDdEUscUdBQXVEO1FBQ3pELGlCQUFNOztRQURnQixlQUFhO1FBQWIsa0NBQWE7O0FEdUIvQjtJQURDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs7d0RBQzVCO0FBOEV2QjtJQURDLEtBQUssRUFBRTs7OzsrREFvQ1A7dUZBdkhRLHdCQUF3QjtjQUpwQyxTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsV0FBVyxFQUFFLG9DQUFvQzthQUNwRDtnR0FPVyxNQUFNLE1BR1AsV0FBVztrQkFEakIsU0FBUzttQkFBQyxhQUFhO1lBSWpCLFdBQVc7a0JBRGpCLEtBQUs7WUFJQyxLQUFLO2tCQURYLEtBQUs7WUFJQyxNQUFNO2tCQURaLE1BQU07WUFXd0IsUUFBUTtrQkFBdEMsWUFBWTttQkFBQyxlQUFlO1lBd0RyQixlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFlpZWxkIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9iYXNlL2RlY29yYXRvcnMveWllbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHsgU25hcEluRXh0ZW5zaW9uSW5zdGFuY2UgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvZXh0ZW5zaW9uLWJyb2tlci9tb2RlbC9leHRlbnNpb24taW5zdGFuY2UnO1xyXG5pbXBvcnQgeyBFeHRlbnNpb25SZWN0IH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kYXRhL2V4dGVuc2lvbi1icm9rZXIvbW9kZWwvZXh0ZW5zaW9uLXJlY3QnO1xyXG5pbXBvcnQgeyBTbmFwSW5PdXRwdXQgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvZXh0ZW5zaW9uLWJyb2tlci9zbmFwLWluLWxpc3RlbmVyJztcclxuaW1wb3J0IHsgRG9tIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kb20vZG9tJztcclxuaW1wb3J0IHsgbWVyZ2VNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEV4dGVuc2lvbkJyb2tlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2V4dGVuc2lvbi1icm9rZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENvcmVCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbW9uL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU21lSW5qZWN0IH0gZnJvbSAnLi4vY29tbW9uL2RlY29yYXRvcnMvaW5qZWN0aW9uLmRlY29yYXRvcnMnO1xyXG5pbXBvcnQgeyBMYXlvdXQsIFNNRV9MQVlPVVRfUFJPVklERVIgfSBmcm9tICcuLi9jb21tb24vbGF5b3V0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtc25hcC1pbi1leHRlbnNpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NuYXAtaW4tZXh0ZW5zaW9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU25hcEluRXh0ZW5zaW9uQ29tcG9uZW50IGV4dGVuZHMgQ29yZUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAqIEluamVjdGVkIEBzZWUgTGF5b3V0IHBhcmVudCBpbnN0YW5jZSBib3VuZCB0byB0aGlzIGNvbXBvbmVudC5cclxuICAgICovXHJcbiAgICBAU21lSW5qZWN0KFNNRV9MQVlPVVRfUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfSlcclxuICAgIHByaXZhdGUgbGF5b3V0OiBMYXlvdXQ7XHJcblxyXG4gICAgQFZpZXdDaGlsZCgncGxhY2Vob2xkZXInKVxyXG4gICAgcHVibGljIHBsYWNlaG9sZGVyOiBhbnk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBleHRlbnNpb25JZDogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgaW5wdXQ6IGFueTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBvdXRwdXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gICAgcHVibGljIGluc3RhbmNlOiBTbmFwSW5FeHRlbnNpb25JbnN0YW5jZTtcclxuXHJcbiAgICBwdWJsaWMgbG9hZGluZzogYm9vbGVhbjtcclxuXHJcbiAgICBwdWJsaWMgb3ZlcmZsb3dFbGVtZW50OiBIVE1MRWxlbWVudDtcclxuXHJcbiAgICBwdWJsaWMgc2Nyb2xsRXZlbnRIYW5kbGVyOiAoKSA9PiB2b2lkO1xyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnKSBvblNjcm9sbCgpIHtcclxuICAgICAgICB0aGlzLm9uTGF5b3V0Q2hhbmdlZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHNvdXJjZSBuYW1lIHRvIHVzZSBmb3IgbG9nZ2luZ1xyXG4gICAgICovXHJcbiAgICBwcm90ZWN0ZWQgZ2V0IGxvZ1NvdXJjZU5hbWUoKSB7XHJcbiAgICAgICAgcmV0dXJuICdTbmFwSW5FeHRlbnNpb25Db21wb25lbnQnO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBleHRlbnNpb25Ccm9rZXJTZXJ2aWNlOiBFeHRlbnNpb25Ccm9rZXJTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGhpcy5leHRlbnNpb25Ccm9rZXJTZXJ2aWNlLmNyZWF0ZVNuYXBJbih0aGlzLmV4dGVuc2lvbklkKS5waXBlKFxyXG4gICAgICAgICAgICBtZXJnZU1hcCgoaW5zdGFuY2U6IFNuYXBJbkV4dGVuc2lvbkluc3RhbmNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlID0gaW5zdGFuY2U7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5wdXQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlLmNhbGwoJ2lucHV0JywgMCwgW3RoaXMuaW5wdXRdKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgLy8gVE9ETzogZmlndXJlIG91dCBpZiB3ZSBuZWVkIHRoZSB0aW1lb3V0XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkxheW91dENoYW5nZWQoKSxcclxuICAgICAgICAgICAgICAgICAgICAyMDBcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlciA9IHRoaXMub25MYXlvdXRDaGFuZ2VkLmJpbmQodGhpcyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLmxheW91dC5sYXlvdXRDaGFuZ2VkLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uTGF5b3V0Q2hhbmdlZCgpKSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZS5saXN0ZW4oJ291dHB1dCcpO1xyXG4gICAgICAgICAgICB9KSkuc3Vic2NyaWJlKG91dHB1dCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAob3V0cHV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzRXZlbnRPdXRwdXQob3V0cHV0LmRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3V0cHV0LmVtaXQob3V0cHV0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApKTtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZS5kZXN0cm95KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPbiBsYXlvdXQgY2hhbmdlZCBldmVudCBoYW5kbGVyLCBvY2N1cnMgZXZlcnkgdGltZSB0aGUgbGF5b3V0IGhhcyBiZWVuIGNoYW5nZWQuXHJcbiAgICAgKi9cclxuICAgIEBZaWVsZCgpXHJcbiAgICBwcml2YXRlIG9uTGF5b3V0Q2hhbmdlZCgpIHtcclxuICAgICAgICBpZiAodGhpcy5pbnN0YW5jZSkge1xyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMub3ZlcmZsb3dFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgZWxlbWVudCA9IDxIVE1MRWxlbWVudD50aGlzLnBsYWNlaG9sZGVyLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyUmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgICAgIGNvbnN0IGV4dGVuc2lvblJlY3Q6IEV4dGVuc2lvblJlY3QgPSB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IHBsYWNlaG9sZGVyUmVjdC5ib3R0b20sXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHBsYWNlaG9sZGVyUmVjdC5oZWlnaHQsXHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBwbGFjZWhvbGRlclJlY3QubGVmdCxcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBwbGFjZWhvbGRlclJlY3QucmlnaHQsXHJcbiAgICAgICAgICAgICAgICB0b3A6IHBsYWNlaG9sZGVyUmVjdC50b3AsXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcGxhY2Vob2xkZXJSZWN0LndpZHRoXHJcbiAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICBjb25zdCBvdmVyZmxvd1BhcmVudCA9IERvbS5nZXRPdmVyZmxvd0FuY2VzdG9yKGVsZW1lbnQpO1xyXG4gICAgICAgICAgICBpZiAob3ZlcmZsb3dQYXJlbnQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG92ZXJmbG93UGFyZW50UmVjdCA9IG92ZXJmbG93UGFyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICAgICAgZXh0ZW5zaW9uUmVjdC5vdmVyZmxvd1BhcmVudCA9IHtcclxuICAgICAgICAgICAgICAgICAgICBzY3JvbGxIZWlnaHQ6IG92ZXJmbG93UGFyZW50LnNjcm9sbEhlaWdodCxcclxuICAgICAgICAgICAgICAgICAgICBzY3JvbGxXaWR0aDogb3ZlcmZsb3dQYXJlbnQuc2Nyb2xsV2lkdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgY2xpZW50SGVpZ2h0OiBvdmVyZmxvd1BhcmVudC5jbGllbnRIZWlnaHQsXHJcbiAgICAgICAgICAgICAgICAgICAgY2xpZW50V2lkdGg6IG92ZXJmbG93UGFyZW50LmNsaWVudFdpZHRoLFxyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogb3ZlcmZsb3dQYXJlbnRSZWN0LnRvcCxcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogb3ZlcmZsb3dQYXJlbnRSZWN0LnJpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogb3ZlcmZsb3dQYXJlbnRSZWN0LmJvdHRvbSxcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBvdmVyZmxvd1BhcmVudFJlY3QubGVmdFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50ID0gb3ZlcmZsb3dQYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZS5tb3ZlKGV4dGVuc2lvblJlY3QpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBwcm9jZXNzRXZlbnRPdXRwdXQob3V0cHV0RGF0YTogU25hcEluT3V0cHV0KSB7XHJcbiAgICAgICAgaWYgKG91dHB1dERhdGEpIHtcclxuICAgICAgICAgICAgaWYgKG91dHB1dERhdGEuZGVsdGFZKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudC5zY3JvbGxUb3AgKz0gb3V0cHV0RGF0YS5kZWx0YVk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAob3V0cHV0RGF0YS5mb2N1c2VkRWxlbWVudFJlY3QpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRm9jdXNFdmVudChvdXRwdXREYXRhLmZvY3VzZWRFbGVtZW50UmVjdCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVGb2N1c0V2ZW50KGZvY3VzZWRSZWN0OiBET01SZWN0KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IDxIVE1MRWxlbWVudD50aGlzLnBsYWNlaG9sZGVyLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3QgcGxhY2Vob2xkZXJSZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICBjb25zdCBvdmVyZmxvd1BhcmVudFJlY3QgPSB0aGlzLm92ZXJmbG93RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHJcbiAgICAgICAgLy8gZ2V0IHRoZSBmb2N1c2VkIGVsZW1lbnRzIGxvY2F0aW9uIHJlbGF0aXZlIHRvIHRoZSBwbGFjZWhvbGRlcidzIGZyYW1lXHJcbiAgICAgICAgY29uc3QgdG9wID0gcGxhY2Vob2xkZXJSZWN0LnRvcCArIGZvY3VzZWRSZWN0LnRvcDtcclxuICAgICAgICBjb25zdCBib3R0b20gPSBwbGFjZWhvbGRlclJlY3QudG9wICsgZm9jdXNlZFJlY3QuYm90dG9tO1xyXG4gICAgICAgIGNvbnN0IGxlZnQgPSBwbGFjZWhvbGRlclJlY3QubGVmdCArIGZvY3VzZWRSZWN0LmxlZnQ7XHJcbiAgICAgICAgY29uc3QgcmlnaHQgPSBwbGFjZWhvbGRlclJlY3QubGVmdCArIGZvY3VzZWRSZWN0LnJpZ2h0O1xyXG5cclxuICAgICAgICAvLyBUT0RPOiBlZGdlIGNhc2VzIGZvciB0aGVzZSBmb3IgZXhhbXBsZSwgZm9jdXNSZWN0IGlzIGJpZ2dlciB0aGFuIG92ZXJmbG93UGFyZW50XHJcbiAgICAgICAgaWYgKHRvcCA8IG92ZXJmbG93UGFyZW50UmVjdC50b3ApIHtcclxuICAgICAgICAgICAgLy8gYWJvdmUgdmlld3BvcnQsIG1vdmUgdG8gYmUgdW5kZXIgdmlldyBwb3J0XHJcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhWSA9IHRvcCAtIG92ZXJmbG93UGFyZW50UmVjdC50b3A7XHJcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50LnNjcm9sbFRvcCArPSBkZWx0YVk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoYm90dG9tID4gb3ZlcmZsb3dQYXJlbnRSZWN0LmJvdHRvbSkge1xyXG4gICAgICAgICAgICAvLyBiZWxvdyB2aWV3cG9ydFxyXG4gICAgICAgICAgICBjb25zdCBkZWx0YVkgPSBib3R0b20gLSBvdmVyZmxvd1BhcmVudFJlY3QuYm90dG9tO1xyXG4gICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudC5zY3JvbGxUb3AgKz0gZGVsdGFZO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGxlZnQgPCBvdmVyZmxvd1BhcmVudFJlY3QubGVmdCkge1xyXG4gICAgICAgICAgICBjb25zdCBkZWx0YVggPSBsZWZ0IC0gb3ZlcmZsb3dQYXJlbnRSZWN0LmxlZnQ7XHJcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50LnNjcm9sbExlZnQgKz0gZGVsdGFYO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJpZ2h0ID4gb3ZlcmZsb3dQYXJlbnRSZWN0LnJpZ2h0KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhWCA9IHJpZ2h0IC0gb3ZlcmZsb3dQYXJlbnRSZWN0LnJpZ2h0O1xyXG4gICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudC5zY3JvbGxMZWZ0ICs9IGRlbHRhWDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgI3BsYWNlaG9sZGVyIGNsYXNzPVwic21lLXBvc2l0aW9uLXN0cmV0Y2gtdiBzbWUtcG9zaXRpb24tc3RyZXRjaC1oXCI+XHJcbiAgPHNtZS1sb2FkaW5nLXdoZWVsICpuZ0lmPVwibG9hZGluZ1wiPjwvc21lLWxvYWRpbmctd2hlZWw+XHJcbjwvZGl2PlxyXG4iXX0=
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvc25hcC1pbi1leHRlbnNpb24vc25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvc25hcC1pbi1leHRlbnNpb24vc25hcC1pbi1leHRlbnNpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDWSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUM5RyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFJakcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3RFLE9BQU8sRUFBVSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0lDWDdELG9DQUF1RDs7QURpQnpELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxpQkFBaUI7SUFzQzNELFlBQVksUUFBa0IsRUFBVSxzQkFBOEM7UUFDbEYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRG9CLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFyQi9FLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQU8s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O1NBQzdDO1FBRUQsSUFBSSxLQUFLLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxFQUFFO1lBQ2xDLE1BQU0sTUFBTSxHQUFHLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7WUFDaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDO1NBQzdDO0lBQ0wsQ0FBQzs7bUhBbEtRLHdCQUF3QjtnRkFBeEIsd0JBQXdCOzs7Ozs7dUdBQXhCLGNBQVU7O1FDbEJ2QixpQ0FBd0U7UUFDdEUscUdBQXVEO1FBQ3pELGlCQUFNOztRQURnQixlQUFhO1FBQWIsa0NBQWE7O0FEc0IvQjtJQURDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs7d0RBQzVCO0FBNkV2QjtJQURDLEtBQUssRUFBRTs7OzsrREFvQ1A7dUZBckhRLHdCQUF3QjtjQUpwQyxTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsV0FBVyxFQUFFLG9DQUFvQzthQUNwRDtnR0FNVyxNQUFNLE1BR1AsV0FBVztrQkFEakIsU0FBUzttQkFBQyxhQUFhO1lBSWpCLFdBQVc7a0JBRGpCLEtBQUs7WUFJQyxLQUFLO2tCQURYLEtBQUs7WUFJQyxNQUFNO2tCQURaLE1BQU07WUFXd0IsUUFBUTtrQkFBdEMsWUFBWTttQkFBQyxlQUFlO1lBdURyQixlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFlpZWxkIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9iYXNlL2RlY29yYXRvcnMveWllbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHsgU25hcEluRXh0ZW5zaW9uSW5zdGFuY2UgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvZXh0ZW5zaW9uLWJyb2tlci9tb2RlbC9leHRlbnNpb24taW5zdGFuY2UnO1xyXG5pbXBvcnQgeyBFeHRlbnNpb25SZWN0IH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kYXRhL2V4dGVuc2lvbi1icm9rZXIvbW9kZWwvZXh0ZW5zaW9uLXJlY3QnO1xyXG5pbXBvcnQgeyBTbmFwSW5PdXRwdXQgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvZXh0ZW5zaW9uLWJyb2tlci9zbmFwLWluLWxpc3RlbmVyJztcclxuaW1wb3J0IHsgRG9tIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kb20vZG9tJztcclxuaW1wb3J0IHsgbWVyZ2VNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEV4dGVuc2lvbkJyb2tlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2V4dGVuc2lvbi1icm9rZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENvcmVCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbW9uL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU21lSW5qZWN0IH0gZnJvbSAnLi4vY29tbW9uL2RlY29yYXRvcnMvaW5qZWN0aW9uLmRlY29yYXRvcnMnO1xyXG5pbXBvcnQgeyBMYXlvdXQsIFNNRV9MQVlPVVRfUFJPVklERVIgfSBmcm9tICcuLi9jb21tb24vbGF5b3V0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtc25hcC1pbi1leHRlbnNpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NuYXAtaW4tZXh0ZW5zaW9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU25hcEluRXh0ZW5zaW9uQ29tcG9uZW50IGV4dGVuZHMgQ29yZUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCB7XHJcbiAgICAvKipcclxuICAgICogSW5qZWN0ZWQgQHNlZSBMYXlvdXQgcGFyZW50IGluc3RhbmNlIGJvdW5kIHRvIHRoaXMgY29tcG9uZW50LlxyXG4gICAgKi9cclxuICAgIEBTbWVJbmplY3QoU01FX0xBWU9VVF9QUk9WSURFUiwgeyBvcHRpb25hbDogdHJ1ZSB9KVxyXG4gICAgcHJpdmF0ZSBsYXlvdXQ6IExheW91dDtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdwbGFjZWhvbGRlcicpXHJcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI6IGFueTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGV4dGVuc2lvbklkOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBpbnB1dDogYW55O1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIG91dHB1dDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBwdWJsaWMgaW5zdGFuY2U6IFNuYXBJbkV4dGVuc2lvbkluc3RhbmNlO1xyXG5cclxuICAgIHB1YmxpYyBsb2FkaW5nOiBib29sZWFuO1xyXG5cclxuICAgIHB1YmxpYyBvdmVyZmxvd0VsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG5cclxuICAgIHB1YmxpYyBzY3JvbGxFdmVudEhhbmRsZXI6ICgpID0+IHZvaWQ7XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcpIG9uU2Nyb2xsKCkge1xyXG4gICAgICAgIHRoaXMub25MYXlvdXRDaGFuZ2VkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgc291cmNlIG5hbWUgdG8gdXNlIGZvciBsb2dnaW5nXHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBnZXQgbG9nU291cmNlTmFtZSgpIHtcclxuICAgICAgICByZXR1cm4gJ1NuYXBJbkV4dGVuc2lvbkNvbXBvbmVudCc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yLCBwcml2YXRlIGV4dGVuc2lvbkJyb2tlclNlcnZpY2U6IEV4dGVuc2lvbkJyb2tlclNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuZXh0ZW5zaW9uQnJva2VyU2VydmljZS5jcmVhdGVTbmFwSW4odGhpcy5leHRlbnNpb25JZCkucGlwZShcclxuICAgICAgICAgICAgbWVyZ2VNYXAoKGluc3RhbmNlOiBTbmFwSW5FeHRlbnNpb25JbnN0YW5jZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSA9IGluc3RhbmNlO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlucHV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZS5jYWxsKCdpbnB1dCcsIDAsIFt0aGlzLmlucHV0XSkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIC8vIFRPRE86IGZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0aGUgdGltZW91dFxyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25MYXlvdXRDaGFuZ2VkKCksXHJcbiAgICAgICAgICAgICAgICAgICAgMjAwXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxFdmVudEhhbmRsZXIgPSB0aGlzLm9uTGF5b3V0Q2hhbmdlZC5iaW5kKHRoaXMpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGhpcy5sYXlvdXQubGF5b3V0Q2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkxheW91dENoYW5nZWQoKSkpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5zdGFuY2UubGlzdGVuKCdvdXRwdXQnKTtcclxuICAgICAgICAgICAgfSkpLnN1YnNjcmliZShvdXRwdXQgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKG91dHB1dCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2Vzc0V2ZW50T3V0cHV0KG91dHB1dC5kYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm91dHB1dC5lbWl0KG91dHB1dCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKSk7XHJcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmluc3RhbmNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UuZGVzdHJveSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gbGF5b3V0IGNoYW5nZWQgZXZlbnQgaGFuZGxlciwgb2NjdXJzIGV2ZXJ5IHRpbWUgdGhlIGxheW91dCBoYXMgYmVlbiBjaGFuZ2VkLlxyXG4gICAgICovXHJcbiAgICBAWWllbGQoKVxyXG4gICAgcHJpdmF0ZSBvbkxheW91dENoYW5nZWQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLm92ZXJmbG93RWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vdmVyZmxvd0VsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5zY3JvbGxFdmVudEhhbmRsZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+dGhpcy5wbGFjZWhvbGRlci5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgICAgICBjb25zdCBwbGFjZWhvbGRlclJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICBjb25zdCBleHRlbnNpb25SZWN0OiBFeHRlbnNpb25SZWN0ID0ge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiBwbGFjZWhvbGRlclJlY3QuYm90dG9tLFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBwbGFjZWhvbGRlclJlY3QuaGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgbGVmdDogcGxhY2Vob2xkZXJSZWN0LmxlZnQsXHJcbiAgICAgICAgICAgICAgICByaWdodDogcGxhY2Vob2xkZXJSZWN0LnJpZ2h0LFxyXG4gICAgICAgICAgICAgICAgdG9wOiBwbGFjZWhvbGRlclJlY3QudG9wLFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHBsYWNlaG9sZGVyUmVjdC53aWR0aFxyXG4gICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgb3ZlcmZsb3dQYXJlbnQgPSBEb20uZ2V0T3ZlcmZsb3dBbmNlc3RvcihlbGVtZW50KTtcclxuICAgICAgICAgICAgaWYgKG92ZXJmbG93UGFyZW50KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBvdmVyZmxvd1BhcmVudFJlY3QgPSBvdmVyZmxvd1BhcmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICAgICAgICAgIGV4dGVuc2lvblJlY3Qub3ZlcmZsb3dQYXJlbnQgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsSGVpZ2h0OiBvdmVyZmxvd1BhcmVudC5zY3JvbGxIZWlnaHQsXHJcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsV2lkdGg6IG92ZXJmbG93UGFyZW50LnNjcm9sbFdpZHRoLFxyXG4gICAgICAgICAgICAgICAgICAgIGNsaWVudEhlaWdodDogb3ZlcmZsb3dQYXJlbnQuY2xpZW50SGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICAgIGNsaWVudFdpZHRoOiBvdmVyZmxvd1BhcmVudC5jbGllbnRXaWR0aCxcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IG92ZXJmbG93UGFyZW50UmVjdC50b3AsXHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IG92ZXJmbG93UGFyZW50UmVjdC5yaWdodCxcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IG92ZXJmbG93UGFyZW50UmVjdC5ib3R0b20sXHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogb3ZlcmZsb3dQYXJlbnRSZWN0LmxlZnRcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93RWxlbWVudCA9IG92ZXJmbG93UGFyZW50O1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vdmVyZmxvd0VsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5zY3JvbGxFdmVudEhhbmRsZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UubW92ZShleHRlbnNpb25SZWN0KS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHByb2Nlc3NFdmVudE91dHB1dChvdXRwdXREYXRhOiBTbmFwSW5PdXRwdXQpIHtcclxuICAgICAgICBpZiAob3V0cHV0RGF0YSkge1xyXG4gICAgICAgICAgICBpZiAob3V0cHV0RGF0YS5kZWx0YVkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50LnNjcm9sbFRvcCArPSBvdXRwdXREYXRhLmRlbHRhWTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChvdXRwdXREYXRhLmZvY3VzZWRFbGVtZW50UmVjdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVGb2N1c0V2ZW50KG91dHB1dERhdGEuZm9jdXNlZEVsZW1lbnRSZWN0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZUZvY3VzRXZlbnQoZm9jdXNlZFJlY3Q6IERPTVJlY3QpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBlbGVtZW50ID0gPEhUTUxFbGVtZW50PnRoaXMucGxhY2Vob2xkZXIubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCBwbGFjZWhvbGRlclJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgIGNvbnN0IG92ZXJmbG93UGFyZW50UmVjdCA9IHRoaXMub3ZlcmZsb3dFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cclxuICAgICAgICAvLyBnZXQgdGhlIGZvY3VzZWQgZWxlbWVudHMgbG9jYXRpb24gcmVsYXRpdmUgdG8gdGhlIHBsYWNlaG9sZGVyJ3MgZnJhbWVcclxuICAgICAgICBjb25zdCB0b3AgPSBwbGFjZWhvbGRlclJlY3QudG9wICsgZm9jdXNlZFJlY3QudG9wO1xyXG4gICAgICAgIGNvbnN0IGJvdHRvbSA9IHBsYWNlaG9sZGVyUmVjdC50b3AgKyBmb2N1c2VkUmVjdC5ib3R0b207XHJcbiAgICAgICAgY29uc3QgbGVmdCA9IHBsYWNlaG9sZGVyUmVjdC5sZWZ0ICsgZm9jdXNlZFJlY3QubGVmdDtcclxuICAgICAgICBjb25zdCByaWdodCA9IHBsYWNlaG9sZGVyUmVjdC5sZWZ0ICsgZm9jdXNlZFJlY3QucmlnaHQ7XHJcblxyXG4gICAgICAgIC8vIFRPRE86IGVkZ2UgY2FzZXMgZm9yIHRoZXNlIGZvciBleGFtcGxlLCBmb2N1c1JlY3QgaXMgYmlnZ2VyIHRoYW4gb3ZlcmZsb3dQYXJlbnRcclxuICAgICAgICBpZiAodG9wIDwgb3ZlcmZsb3dQYXJlbnRSZWN0LnRvcCkge1xyXG4gICAgICAgICAgICAvLyBhYm92ZSB2aWV3cG9ydCwgbW92ZSB0byBiZSB1bmRlciB2aWV3IHBvcnRcclxuICAgICAgICAgICAgY29uc3QgZGVsdGFZID0gdG9wIC0gb3ZlcmZsb3dQYXJlbnRSZWN0LnRvcDtcclxuICAgICAgICAgICAgdGhpcy5vdmVyZmxvd0VsZW1lbnQuc2Nyb2xsVG9wICs9IGRlbHRhWTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChib3R0b20gPiBvdmVyZmxvd1BhcmVudFJlY3QuYm90dG9tKSB7XHJcbiAgICAgICAgICAgIC8vIGJlbG93IHZpZXdwb3J0XHJcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhWSA9IGJvdHRvbSAtIG92ZXJmbG93UGFyZW50UmVjdC5ib3R0b207XHJcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50LnNjcm9sbFRvcCArPSBkZWx0YVk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAobGVmdCA8IG92ZXJmbG93UGFyZW50UmVjdC5sZWZ0KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhWCA9IGxlZnQgLSBvdmVyZmxvd1BhcmVudFJlY3QubGVmdDtcclxuICAgICAgICAgICAgdGhpcy5vdmVyZmxvd0VsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YVg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmlnaHQgPiBvdmVyZmxvd1BhcmVudFJlY3QucmlnaHQpIHtcclxuICAgICAgICAgICAgY29uc3QgZGVsdGFYID0gcmlnaHQgLSBvdmVyZmxvd1BhcmVudFJlY3QucmlnaHQ7XHJcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dFbGVtZW50LnNjcm9sbExlZnQgKz0gZGVsdGFYO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8ZGl2ICNwbGFjZWhvbGRlciBjbGFzcz1cInNtZS1wb3NpdGlvbi1zdHJldGNoLXYgc21lLXBvc2l0aW9uLXN0cmV0Y2gtaFwiPlxyXG4gIDxzbWUtbG9hZGluZy13aGVlbCAqbmdJZj1cImxvYWRpbmdcIj48L3NtZS1sb2FkaW5nLXdoZWVsPlxyXG48L2Rpdj5cclxuIl19
@@ -8917,7 +8917,6 @@ class LayoutConfigGenerator {
8917
8917
  this.parseConfig(layoutConfig, phoneUp, SmeResponsiveWindowBreakpoints.PhoneUp);
8918
8918
  this.parseConfig(layoutConfig, phoneDown, SmeResponsiveWindowBreakpoints.PhoneDown);
8919
8919
  this.parseConfig(layoutConfig, reflow, SmeResponsiveWindowBreakpoints.Reflow);
8920
- console.log(layoutConfig);
8921
8920
  return layoutConfig;
8922
8921
  }
8923
8922
  parseConfig(layoutConfig, config, smeResponsiveWindowBreakpoints) {
@@ -14325,9 +14324,9 @@ const ɵDataOnlyFormFieldLoaderComponent_BaseFactory = /*@__PURE__*/ ɵɵgetInhe
14325
14324
  const _c0$o = ["*"];
14326
14325
  function DialogComponent_sme_backdrop_0_button_2_Template(rf, ctx) { if (rf & 1) {
14327
14326
  const _r5 = ɵɵgetCurrentView();
14328
- ɵɵelementStart(0, "button", 7);
14327
+ ɵɵelementStart(0, "button", 8);
14329
14328
  ɵɵlistener("click", function DialogComponent_sme_backdrop_0_button_2_Template_button_click_0_listener() { ɵɵrestoreView(_r5); const ctx_r4 = ɵɵnextContext(2); return ctx_r4.onCloseClicked(); });
14330
- ɵɵelement(1, "span", 8);
14329
+ ɵɵelement(1, "span", 9);
14331
14330
  ɵɵelementEnd();
14332
14331
  } if (rf & 2) {
14333
14332
  const ctx_r1 = ɵɵnextContext(2);
@@ -14335,7 +14334,7 @@ function DialogComponent_sme_backdrop_0_button_2_Template(rf, ctx) { if (rf & 1)
14335
14334
  ɵɵattribute("aria-label", ctx_r1.strings.MsftSmeShell.Angular.Common.close);
14336
14335
  } }
14337
14336
  function DialogComponent_sme_backdrop_0_span_9_Template(rf, ctx) { if (rf & 1) {
14338
- ɵɵelementStart(0, "span", 9);
14337
+ ɵɵelementStart(0, "span", 10);
14339
14338
  ɵɵtext(1);
14340
14339
  ɵɵelementEnd();
14341
14340
  } if (rf & 2) {
@@ -14345,7 +14344,7 @@ function DialogComponent_sme_backdrop_0_span_9_Template(rf, ctx) { if (rf & 1) {
14345
14344
  ɵɵtextInterpolate(ctx_r2.ariaLabel);
14346
14345
  } }
14347
14346
  function DialogComponent_sme_backdrop_0_span_10_Template(rf, ctx) { if (rf & 1) {
14348
- ɵɵelementStart(0, "span", 9);
14347
+ ɵɵelementStart(0, "span", 10);
14349
14348
  ɵɵtext(1);
14350
14349
  ɵɵelementEnd();
14351
14350
  } if (rf & 2) {
@@ -14366,12 +14365,12 @@ function DialogComponent_sme_backdrop_0_Template(rf, ctx) { if (rf & 1) {
14366
14365
  ɵɵelementStart(5, "div", 5);
14367
14366
  ɵɵprojection(6, 1);
14368
14367
  ɵɵelementEnd();
14369
- ɵɵelementStart(7, "div", 4);
14368
+ ɵɵelementStart(7, "div", 6);
14370
14369
  ɵɵprojection(8, 2);
14371
14370
  ɵɵelementEnd();
14372
14371
  ɵɵelementEnd();
14373
- ɵɵtemplate(9, DialogComponent_sme_backdrop_0_span_9_Template, 2, 2, "span", 6);
14374
- ɵɵtemplate(10, DialogComponent_sme_backdrop_0_span_10_Template, 2, 2, "span", 6);
14372
+ ɵɵtemplate(9, DialogComponent_sme_backdrop_0_span_9_Template, 2, 2, "span", 7);
14373
+ ɵɵtemplate(10, DialogComponent_sme_backdrop_0_span_10_Template, 2, 2, "span", 7);
14375
14374
  ɵɵelementEnd();
14376
14375
  } if (rf & 2) {
14377
14376
  const ctx_r0 = ɵɵnextContext();
@@ -14441,7 +14440,7 @@ class DialogContentComponent {
14441
14440
  class DialogFooterComponent {
14442
14441
  }
14443
14442
  /** @nocollapse */ DialogFooterComponent.ɵfac = function DialogFooterComponent_Factory(t) { return new (t || DialogFooterComponent)(); };
14444
- /** @nocollapse */ DialogFooterComponent.ɵcmp = ɵɵdefineComponent({ type: DialogFooterComponent, selectors: [["sme-dialog-footer"]], ngContentSelectors: _c0$o, decls: 2, vars: 0, consts: [[1, "sme-layout-float-right", "sme-position-right-inline", "sme-padding-spread-h-xs", "sme-layout-dialog-footer"]], template: function DialogFooterComponent_Template(rf, ctx) { if (rf & 1) {
14443
+ /** @nocollapse */ DialogFooterComponent.ɵcmp = ɵɵdefineComponent({ type: DialogFooterComponent, selectors: [["sme-dialog-footer"]], ngContentSelectors: _c0$o, decls: 2, vars: 0, consts: [[1, "sme-layout-dialog-footer"]], template: function DialogFooterComponent_Template(rf, ctx) { if (rf & 1) {
14445
14444
  ɵɵprojectionDef();
14446
14445
  ɵɵelementStart(0, "div", 0);
14447
14446
  ɵɵprojection(1);
@@ -14451,7 +14450,7 @@ class DialogFooterComponent {
14451
14450
  type: Component,
14452
14451
  args: [{
14453
14452
  selector: 'sme-dialog-footer',
14454
- template: `<div class="sme-layout-float-right sme-position-right-inline sme-padding-spread-h-xs sme-layout-dialog-footer">
14453
+ template: `<div class="sme-layout-dialog-footer">
14455
14454
  <ng-content></ng-content></div>`
14456
14455
  }]
14457
14456
  }], null, null); })();
@@ -14692,7 +14691,7 @@ DialogComponent.nextDialogId = 0;
14692
14691
  /** @nocollapse */ DialogComponent.ɵfac = function DialogComponent_Factory(t) { return new (t || DialogComponent)(ɵɵdirectiveInject(ElementRef), ɵɵdirectiveInject(ChangeDetectorRef), ɵɵdirectiveInject(Injector)); };
14693
14692
  /** @nocollapse */ DialogComponent.ɵcmp = ɵɵdefineComponent({ type: DialogComponent, selectors: [["sme-dialog"]], hostBindings: function DialogComponent_HostBindings(rf, ctx) { if (rf & 1) {
14694
14693
  ɵɵlistener("keyup.escape", function DialogComponent_keyup_escape_HostBindingHandler() { return ctx.onKeyUp(); }, false, ɵɵresolveDocument);
14695
- } }, inputs: { allowBackgroundInteraction: "allowBackgroundInteraction", showBackdrop: "showBackdrop", clickBackdrop: "clickBackdrop", ariaLabel: "ariaLabel", ariaDescription: "ariaDescription", actionPane: "actionPane", dialogMode: "dialogMode", dialogType: "dialogType", closeButton: "closeButton", compactFullHeight: "compactFullHeight" }, features: [ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], ngContentSelectors: _c2$6, decls: 1, vars: 1, consts: [["class", "sme-layout-absolute sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked", 4, "ngIf"], [1, "sme-layout-absolute", "sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked"], ["aria-modal", "true", 3, "ngClass"], ["class", "sme-button-trigger sme-button-auto-width sme-dialog-close-button", 3, "title", "click", 4, "ngIf"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-layout-relative", "sme-position-flex-auto", "sme-padding-horizontal-lg", "sme-arrange-overflow-auto-y", "sme-arrange-overflow-hide-x", "sme-focus-zone", "sme-layout-responsive-zone-xs", "sme-dialog-content-wrapper"], ["class", "sme-screen-reader", 3, "id", 4, "ngIf"], [1, "sme-button-trigger", "sme-button-auto-width", "sme-dialog-close-button", 3, "title", "click"], [1, "sme-icon", "sme-icon-cancel"], [1, "sme-screen-reader", 3, "id"]], template: function DialogComponent_Template(rf, ctx) { if (rf & 1) {
14694
+ } }, inputs: { allowBackgroundInteraction: "allowBackgroundInteraction", showBackdrop: "showBackdrop", clickBackdrop: "clickBackdrop", ariaLabel: "ariaLabel", ariaDescription: "ariaDescription", actionPane: "actionPane", dialogMode: "dialogMode", dialogType: "dialogType", closeButton: "closeButton", compactFullHeight: "compactFullHeight" }, features: [ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], ngContentSelectors: _c2$6, decls: 1, vars: 1, consts: [["class", "sme-layout-absolute sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked", 4, "ngIf"], [1, "sme-layout-absolute", "sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked"], ["aria-modal", "true", 3, "ngClass"], ["class", "sme-button-trigger sme-button-auto-width sme-dialog-close-button", 3, "title", "click", 4, "ngIf"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-layout-relative", "sme-position-flex-auto", "sme-padding-horizontal-lg", "sme-arrange-overflow-auto-y", "sme-arrange-overflow-hide-x", "sme-focus-zone", "sme-layout-responsive-zone-xs", "sme-dialog-content-wrapper"], [1, "sme-position-flex-none", "sme-focus-zone", "sme-padding-horizontal-lg", "sme-padding-vertical-xs"], ["class", "sme-screen-reader", 3, "id", 4, "ngIf"], [1, "sme-button-trigger", "sme-button-auto-width", "sme-dialog-close-button", 3, "title", "click"], [1, "sme-icon", "sme-icon-cancel"], [1, "sme-screen-reader", 3, "id"]], template: function DialogComponent_Template(rf, ctx) { if (rf & 1) {
14696
14695
  ɵɵprojectionDef(_c1$a);
14697
14696
  ɵɵtemplate(0, DialogComponent_sme_backdrop_0_Template, 11, 11, "sme-backdrop", 0);
14698
14697
  } if (rf & 2) {
@@ -30525,6 +30524,7 @@ class DataTableComponent extends CoreBaseComponent {
30525
30524
  });
30526
30525
  }
30527
30526
  onElementFocusing(event) {
30527
+ var _a;
30528
30528
  if (event.targetZone === this.contentElement.nativeElement) {
30529
30529
  if (!this.contentAreaHasFocus) {
30530
30530
  event.preventDefaultFocusBehavior();
@@ -30537,7 +30537,10 @@ class DataTableComponent extends CoreBaseComponent {
30537
30537
  else if (event.targetElement && event.targetElement.hasAttribute('data-sme-last-focusable-shadow-element')
30538
30538
  && event.targetElement === this.lastFocusableShadowElement.nativeElement) {
30539
30539
  event.preventDefaultFocusBehavior();
30540
- if (event.sourceZone === this.contentElement.nativeElement || event.sourceZone === this.headerElement.nativeElement) {
30540
+ // The third condition is added to fix keyboard focus being trapped in the data table
30541
+ // when the last focusable element doesn't meet the first 2 conditions (ex: the last focusable element is a link).
30542
+ if (event.sourceZone === this.contentElement.nativeElement || event.sourceZone === this.headerElement.nativeElement ||
30543
+ ((_a = (event.targetElement.attributes.getNamedItem('tabindex'))) === null || _a === void 0 ? void 0 : _a.value) >= '0') {
30541
30544
  const nextFocusableElement = Dom.getNextZoneElement(event.targetElement);
30542
30545
  if (!nextFocusableElement) {
30543
30546
  event.targetElement.focus();
@@ -39071,7 +39074,7 @@ class ConfirmationListDialogComponent extends BaseDialogComponent {
39071
39074
  }], function () { return [{ type: DialogService }]; }, null); })();
39072
39075
 
39073
39076
  function ExtensionDialogComponent_span_7_Template(rf, ctx) { if (rf & 1) {
39074
- ɵɵelementStart(0, "span", 4);
39077
+ ɵɵelementStart(0, "span", 5);
39075
39078
  ɵɵtext(1);
39076
39079
  ɵɵelementEnd();
39077
39080
  } if (rf & 2) {
@@ -39081,7 +39084,7 @@ function ExtensionDialogComponent_span_7_Template(rf, ctx) { if (rf & 1) {
39081
39084
  ɵɵtextInterpolate(ctx_r0.ariaLabel);
39082
39085
  } }
39083
39086
  function ExtensionDialogComponent_span_8_Template(rf, ctx) { if (rf & 1) {
39084
- ɵɵelementStart(0, "span", 4);
39087
+ ɵɵelementStart(0, "span", 5);
39085
39088
  ɵɵtext(1);
39086
39089
  ɵɵelementEnd();
39087
39090
  } if (rf & 2) {
@@ -39095,7 +39098,7 @@ const _c1$G = ["sme-dialog-header", "sme-dialog-content", "sme-dialog-footer"];
39095
39098
  class ExtensionDialogComponent extends DialogComponent {
39096
39099
  }
39097
39100
  /** @nocollapse */ ExtensionDialogComponent.ɵfac = function ExtensionDialogComponent_Factory(t) { return ɵExtensionDialogComponent_BaseFactory(t || ExtensionDialogComponent); };
39098
- /** @nocollapse */ ExtensionDialogComponent.ɵcmp = ɵɵdefineComponent({ type: ExtensionDialogComponent, selectors: [["sme-extension-dialog"]], features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$G, decls: 9, vars: 6, consts: [["aria-modal", "true", 1, "sme-position-stretch-h", "sme-position-stretch-v", 3, "ngClass"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-layout-relative", "sme-position-flex-auto", "sme-padding-horizontal-lg", "sme-arrange-overflow-auto-y", "sme-arrange-overflow-hide-x", "sme-focus-zone", "sme-layout-responsive-zone-xs"], ["class", "sme-screen-reader", 3, "id", 4, "ngIf"], [1, "sme-screen-reader", 3, "id"]], template: function ExtensionDialogComponent_Template(rf, ctx) { if (rf & 1) {
39101
+ /** @nocollapse */ ExtensionDialogComponent.ɵcmp = ɵɵdefineComponent({ type: ExtensionDialogComponent, selectors: [["sme-extension-dialog"]], features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$G, decls: 9, vars: 6, consts: [["aria-modal", "true", 1, "sme-position-stretch-h", "sme-position-stretch-v", 3, "ngClass"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-layout-relative", "sme-position-flex-auto", "sme-padding-horizontal-lg", "sme-arrange-overflow-auto-y", "sme-arrange-overflow-hide-x", "sme-focus-zone", "sme-layout-responsive-zone-xs"], [1, "sme-position-flex-none", "sme-focus-zone", "sme-padding-horizontal-lg", "sme-padding-vertical-xs"], ["class", "sme-screen-reader", 3, "id", 4, "ngIf"], [1, "sme-screen-reader", 3, "id"]], template: function ExtensionDialogComponent_Template(rf, ctx) { if (rf & 1) {
39099
39102
  ɵɵprojectionDef(_c0$1c);
39100
39103
  ɵɵelementStart(0, "div", 0);
39101
39104
  ɵɵelementStart(1, "div", 1);
@@ -39104,11 +39107,11 @@ class ExtensionDialogComponent extends DialogComponent {
39104
39107
  ɵɵelementStart(3, "div", 2);
39105
39108
  ɵɵprojection(4, 1);
39106
39109
  ɵɵelementEnd();
39107
- ɵɵelementStart(5, "div", 1);
39110
+ ɵɵelementStart(5, "div", 3);
39108
39111
  ɵɵprojection(6, 2);
39109
39112
  ɵɵelementEnd();
39110
- ɵɵtemplate(7, ExtensionDialogComponent_span_7_Template, 2, 2, "span", 3);
39111
- ɵɵtemplate(8, ExtensionDialogComponent_span_8_Template, 2, 2, "span", 3);
39113
+ ɵɵtemplate(7, ExtensionDialogComponent_span_7_Template, 2, 2, "span", 4);
39114
+ ɵɵtemplate(8, ExtensionDialogComponent_span_8_Template, 2, 2, "span", 4);
39112
39115
  ɵɵelementEnd();
39113
39116
  } if (rf & 2) {
39114
39117
  ɵɵproperty("ngClass", ctx.dialogClasses);
@@ -39330,17 +39333,43 @@ class DialogModule {
39330
39333
  ɵɵsetComponentScope(DialogComponent, [NgIf, BackdropComponent, NgClass, TooltipDirective], []);
39331
39334
 
39332
39335
  function HeaderComponent_div_0_span_2_Template(rf, ctx) { if (rf & 1) {
39333
- ɵɵelement(0, "span", 11);
39336
+ ɵɵelement(0, "span", 12);
39334
39337
  } if (rf & 2) {
39335
39338
  const ctx_r5 = ɵɵnextContext(2);
39336
39339
  ɵɵclassMap(ctx_r5.smeIconClassName ? ctx_r5.smeIconClassName : "");
39337
39340
  } }
39338
39341
  function HeaderComponent_div_0_span_3_Template(rf, ctx) { if (rf & 1) {
39339
- ɵɵelement(0, "span", 12);
39342
+ ɵɵelement(0, "span", 13);
39340
39343
  } if (rf & 2) {
39341
39344
  const ctx_r6 = ɵɵnextContext(2);
39342
39345
  ɵɵstyleProp("background-image", ctx_r6.urlIcon);
39343
39346
  } }
39347
+ function HeaderComponent_div_0_span_4_Template(rf, ctx) { if (rf & 1) {
39348
+ ɵɵelementStart(0, "span", 14);
39349
+ ɵɵtext(1);
39350
+ ɵɵelementEnd();
39351
+ } if (rf & 2) {
39352
+ const ctx_r7 = ɵɵnextContext(2);
39353
+ ɵɵadvance(1);
39354
+ ɵɵtextInterpolate(ctx_r7.text);
39355
+ } }
39356
+ function HeaderComponent_div_0_div_5_Template(rf, ctx) { if (rf & 1) {
39357
+ ɵɵelementStart(0, "div", 15);
39358
+ ɵɵelementStart(1, "div");
39359
+ ɵɵtext(2);
39360
+ ɵɵelementEnd();
39361
+ ɵɵelementStart(3, "div", 16);
39362
+ ɵɵtext(4);
39363
+ ɵɵelementEnd();
39364
+ ɵɵelementEnd();
39365
+ } if (rf & 2) {
39366
+ const ctx_r8 = ɵɵnextContext(2);
39367
+ ɵɵclassProp("sme-padding-left-xs", ctx_r8.urlIcon || ctx_r8.smeIconClassName);
39368
+ ɵɵadvance(2);
39369
+ ɵɵtextInterpolate(ctx_r8.text);
39370
+ ɵɵadvance(2);
39371
+ ɵɵtextInterpolate(ctx_r8.subtitle);
39372
+ } }
39344
39373
  function HeaderComponent_div_0_ng_container_6_Template(rf, ctx) { if (rf & 1) {
39345
39374
  ɵɵelementContainer(0);
39346
39375
  } }
@@ -39349,11 +39378,10 @@ function HeaderComponent_div_0_Template(rf, ctx) { if (rf & 1) {
39349
39378
  ɵɵelementStart(1, "span", 6);
39350
39379
  ɵɵtemplate(2, HeaderComponent_div_0_span_2_Template, 1, 2, "span", 7);
39351
39380
  ɵɵtemplate(3, HeaderComponent_div_0_span_3_Template, 1, 2, "span", 8);
39352
- ɵɵelementStart(4, "span", 9);
39353
- ɵɵtext(5);
39354
- ɵɵelementEnd();
39381
+ ɵɵtemplate(4, HeaderComponent_div_0_span_4_Template, 2, 1, "span", 9);
39382
+ ɵɵtemplate(5, HeaderComponent_div_0_div_5_Template, 5, 4, "div", 10);
39355
39383
  ɵɵelementEnd();
39356
- ɵɵtemplate(6, HeaderComponent_div_0_ng_container_6_Template, 1, 0, "ng-container", 10);
39384
+ ɵɵtemplate(6, HeaderComponent_div_0_ng_container_6_Template, 1, 0, "ng-container", 11);
39357
39385
  ɵɵelementEnd();
39358
39386
  } if (rf & 2) {
39359
39387
  const ctx_r0 = ɵɵnextContext();
@@ -39364,13 +39392,15 @@ function HeaderComponent_div_0_Template(rf, ctx) { if (rf & 1) {
39364
39392
  ɵɵproperty("ngIf", ctx_r0.smeIconClassName);
39365
39393
  ɵɵadvance(1);
39366
39394
  ɵɵproperty("ngIf", ctx_r0.urlIcon);
39367
- ɵɵadvance(2);
39368
- ɵɵtextInterpolate(ctx_r0.text);
39395
+ ɵɵadvance(1);
39396
+ ɵɵproperty("ngIf", !ctx_r0.subtitle);
39397
+ ɵɵadvance(1);
39398
+ ɵɵproperty("ngIf", ctx_r0.subtitle);
39369
39399
  ɵɵadvance(1);
39370
39400
  ɵɵproperty("ngTemplateOutlet", _r3);
39371
39401
  } }
39372
39402
  function HeaderComponent_h2_1_Template(rf, ctx) { if (rf & 1) {
39373
- ɵɵelementStart(0, "h2", 13);
39403
+ ɵɵelementStart(0, "h2", 17);
39374
39404
  ɵɵtext(1);
39375
39405
  ɵɵelementEnd();
39376
39406
  } if (rf & 2) {
@@ -39383,11 +39413,11 @@ function HeaderComponent_div_2_ng_container_3_Template(rf, ctx) { if (rf & 1) {
39383
39413
  ɵɵelementContainer(0);
39384
39414
  } }
39385
39415
  function HeaderComponent_div_2_Template(rf, ctx) { if (rf & 1) {
39386
- ɵɵelementStart(0, "div", 14);
39416
+ ɵɵelementStart(0, "div", 18);
39387
39417
  ɵɵelementStart(1, "h3", 6);
39388
39418
  ɵɵtext(2);
39389
39419
  ɵɵelementEnd();
39390
- ɵɵtemplate(3, HeaderComponent_div_2_ng_container_3_Template, 1, 0, "ng-container", 10);
39420
+ ɵɵtemplate(3, HeaderComponent_div_2_ng_container_3_Template, 1, 0, "ng-container", 11);
39391
39421
  ɵɵelementEnd();
39392
39422
  } if (rf & 2) {
39393
39423
  const ctx_r2 = ɵɵnextContext();
@@ -39419,8 +39449,17 @@ class HeaderComponent extends CoreBaseComponent {
39419
39449
  constructor(injector) {
39420
39450
  super(injector);
39421
39451
  this.styleTo = '';
39452
+ /**
39453
+ * The header type
39454
+ */
39422
39455
  this.type = HeaderComponent.tool;
39456
+ /**
39457
+ * The font text for the main header
39458
+ */
39423
39459
  this.text = '';
39460
+ /**
39461
+ * The font size level for the main header
39462
+ */
39424
39463
  this.level = '';
39425
39464
  if (this.smeIconClassName && this.urlIcon) {
39426
39465
  Logging.log({
@@ -39469,9 +39508,9 @@ HeaderComponent.h2style = 'sme-font-h2';
39469
39508
  HeaderComponent.h3style = 'sme-font-h3';
39470
39509
  HeaderComponent.h4style = 'sme-font-h4 sme-font-h4-no-spacing';
39471
39510
  /** @nocollapse */ HeaderComponent.ɵfac = function HeaderComponent_Factory(t) { return new (t || HeaderComponent)(ɵɵdirectiveInject(Injector)); };
39472
- /** @nocollapse */ HeaderComponent.ɵcmp = ɵɵdefineComponent({ type: HeaderComponent, selectors: [["sme-header"]], inputs: { type: "type", text: "text", level: "level", smeIconClassName: "smeIconClassName", urlIcon: "urlIcon" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$1d, decls: 5, vars: 3, consts: [["class", "sme-layout-flex sme-position-flex-align-center sme-layout-tool-header", 4, "ngIf"], ["id", "sme-dialog-title", 3, "ngClass", 4, "ngIf"], ["class", "sme-position-flex-none sme-layout-settings-header", 4, "ngIf"], ["class", "sme-padding-left-xs"], ["contentTemplate", ""], [1, "sme-layout-flex", "sme-position-flex-align-center", "sme-layout-tool-header"], [3, "ngClass"], ["class", "sme-position-align-v-inline-middle sme-icon", 3, "class", 4, "ngIf"], ["class", "sme-position-align-v-inline-middle sme-url-icon", 3, "background-image", 4, "ngIf"], [1, "sme-position-align-v-inline-middle"], [4, "ngTemplateOutlet"], [1, "sme-position-align-v-inline-middle", "sme-icon"], [1, "sme-position-align-v-inline-middle", "sme-url-icon"], ["id", "sme-dialog-title", 3, "ngClass"], [1, "sme-position-flex-none", "sme-layout-settings-header"]], template: function HeaderComponent_Template(rf, ctx) { if (rf & 1) {
39511
+ /** @nocollapse */ HeaderComponent.ɵcmp = ɵɵdefineComponent({ type: HeaderComponent, selectors: [["sme-header"]], inputs: { type: "type", text: "text", level: "level", smeIconClassName: "smeIconClassName", urlIcon: "urlIcon", subtitle: "subtitle" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$1d, decls: 5, vars: 3, consts: [["class", "sme-layout-flex sme-position-flex-align-center sme-layout-tool-header", 4, "ngIf"], ["id", "sme-dialog-title", 3, "ngClass", 4, "ngIf"], ["class", "sme-position-flex-none sme-layout-settings-header", 4, "ngIf"], ["class", "sme-padding-left-xs"], ["contentTemplate", ""], [1, "sme-layout-flex", "sme-position-flex-align-center", "sme-layout-tool-header"], [3, "ngClass"], ["class", "sme-position-align-v-inline-middle sme-icon", 3, "class", 4, "ngIf"], ["class", "sme-position-align-v-inline-middle sme-url-icon", 3, "background-image", 4, "ngIf"], ["class", "sme-position-align-v-inline-middle", 4, "ngIf"], ["class", "sme-arrange-stack-v sme-layout-inline-block", 3, "sme-padding-left-xs", 4, "ngIf"], [4, "ngTemplateOutlet"], [1, "sme-position-align-v-inline-middle", "sme-icon"], [1, "sme-position-align-v-inline-middle", "sme-url-icon"], [1, "sme-position-align-v-inline-middle"], [1, "sme-arrange-stack-v", "sme-layout-inline-block"], [1, "sme-font-label"], ["id", "sme-dialog-title", 3, "ngClass"], [1, "sme-position-flex-none", "sme-layout-settings-header"]], template: function HeaderComponent_Template(rf, ctx) { if (rf & 1) {
39473
39512
  ɵɵprojectionDef();
39474
- ɵɵtemplate(0, HeaderComponent_div_0_Template, 7, 5, "div", 0);
39513
+ ɵɵtemplate(0, HeaderComponent_div_0_Template, 7, 6, "div", 0);
39475
39514
  ɵɵtemplate(1, HeaderComponent_h2_1_Template, 2, 2, "h2", 1);
39476
39515
  ɵɵtemplate(2, HeaderComponent_div_2_Template, 4, 3, "div", 2);
39477
39516
  ɵɵtemplate(3, HeaderComponent_ng_template_3_Template, 1, 0, "ng-template", 3, 4, ɵɵtemplateRefExtractor);
@@ -39498,6 +39537,8 @@ HeaderComponent.h4style = 'sme-font-h4 sme-font-h4-no-spacing';
39498
39537
  type: Input
39499
39538
  }], urlIcon: [{
39500
39539
  type: Input
39540
+ }], subtitle: [{
39541
+ type: Input
39501
39542
  }] }); })();
39502
39543
 
39503
39544
  class HeaderModule {
@@ -43536,9 +43577,8 @@ function QueryEditorComponent_ng_container_0_ng_container_1_div_1_form_4_ng_cont
43536
43577
  function QueryEditorComponent_ng_container_0_ng_container_1_div_1_form_4_ng_container_5_sme_form_field_3_sme_option_1_Template(rf, ctx) { if (rf & 1) {
43537
43578
  ɵɵelement(0, "sme-option", 32);
43538
43579
  } if (rf & 2) {
43539
- const option_r64 = ctx.$implicit;
43540
- const ctx_r63 = ɵɵnextContext(7);
43541
- ɵɵproperty("value", ctx_r63.queryDataOperand[option_r64])("label", ctx_r63.queryDataOperand[option_r64]);
43580
+ const operand_r64 = ctx.$implicit;
43581
+ ɵɵproperty("value", operand_r64.value)("label", operand_r64.value);
43542
43582
  } }
43543
43583
  function QueryEditorComponent_ng_container_0_ng_container_1_div_1_form_4_ng_container_5_sme_form_field_3_Template(rf, ctx) { if (rf & 1) {
43544
43584
  const _r67 = ɵɵgetCurrentView();
@@ -43802,6 +43842,7 @@ function QueryEditorComponent_ng_template_8_Template(rf, ctx) { if (rf & 1) {
43802
43842
  class QueryEditorComponent extends CoreBaseComponent {
43803
43843
  constructor() {
43804
43844
  super(...arguments);
43845
+ this.operands = [];
43805
43846
  this.columnsDropdownData = [];
43806
43847
  this.columnDropdownData = [];
43807
43848
  this.resourceStrings = MsftSme.getStrings().MsftSmeShell.Angular.QueryEditor;