@microsoft/windows-admin-center-sdk 2.295.0 → 2.298.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 (147) hide show
  1. package/angular/assets/strings/cs-CZ/strings.json +1 -1
  2. package/angular/assets/strings/de-DE/strings.json +1 -1
  3. package/angular/assets/strings/es-ES/strings.json +1 -1
  4. package/angular/assets/strings/fr-FR/strings.json +1 -1
  5. package/angular/assets/strings/hu-HU/strings.json +1 -1
  6. package/angular/assets/strings/it-IT/strings.json +1 -1
  7. package/angular/assets/strings/ja-JP/strings.json +1 -1
  8. package/angular/assets/strings/ko-KR/strings.json +1 -1
  9. package/angular/assets/strings/nl-NL/strings.json +1 -1
  10. package/angular/assets/strings/pl-PL/strings.json +1 -1
  11. package/angular/assets/strings/pt-BR/strings.json +1 -1
  12. package/angular/assets/strings/pt-PT/strings.json +1 -1
  13. package/angular/assets/strings/ru-RU/strings.json +1 -1
  14. package/angular/assets/strings/strings.json +1 -1
  15. package/angular/assets/strings/sv-SE/strings.json +1 -1
  16. package/angular/assets/strings/tr-TR/strings.json +1 -1
  17. package/angular/assets/strings/zh-CN/strings.json +1 -1
  18. package/angular/assets/strings/zh-TW/strings.json +1 -1
  19. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js +558 -240
  20. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js.map +1 -1
  21. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js +2 -2
  22. package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js.map +1 -1
  23. package/angular/esm2015/src/controls/actions/containers/action-bar/action-bar.component.js +7 -2
  24. package/angular/esm2015/src/controls/alert-bar/alert-bar.component.js +5 -5
  25. package/angular/esm2015/src/controls/common/base.component.js +8 -1
  26. package/angular/esm2015/src/controls/data-table/data-table.component.js +39 -9
  27. package/angular/esm2015/src/controls/form/form-field/checklist/checklist-form-field.component.js +11 -8
  28. package/angular/esm2015/src/controls/form/form-field/combobox/combobox-form-field.component.js +8 -9
  29. package/angular/esm2015/src/controls/form/form-field/file/file-form-field.component.js +14 -2
  30. package/angular/esm2015/src/controls/form/form-field/form-field.component.js +9 -2
  31. package/angular/esm2015/src/controls/layout/layout-definition.component.js +9 -2
  32. package/angular/esm2015/src/controls/layout/layout.component.js +11 -2
  33. package/angular/esm2015/src/controls/master-view/master-view.component.js +32 -5
  34. package/angular/esm2015/src/controls/page-alert-bar/models/index.js +1 -1
  35. package/angular/esm2015/src/controls/pivot/pivot.component.js +11 -5
  36. package/angular/esm2015/src/controls/property-grid/property-grid-item.component.js +50 -2
  37. package/angular/esm2015/src/controls/property-grid/property-grid.component.js +73 -60
  38. package/angular/esm2015/src/controls/property-grid/property-grid.module.js +5 -1
  39. package/angular/esm2015/src/controls/settings/common-settings/common-settings.component.js +151 -70
  40. package/angular/esm2015/src/controls/settings/settings.component.js +48 -8
  41. package/angular/esm2015/src/controls/settings/settings.module.js +21 -9
  42. package/angular/esm2015/src/controls/wizard/wizard.component.js +55 -65
  43. package/angular/esm2015/src/generated/strings.js +1 -1
  44. package/angular/esm2015/src/service/app-context.service.js +3 -1
  45. package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js +535 -240
  46. package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js.map +1 -1
  47. package/angular/package.json +2 -0
  48. package/angular/src/controls/common/base.component.d.ts +5 -0
  49. package/angular/src/controls/data-table/data-table.component.d.ts +15 -0
  50. package/angular/src/controls/form/form-field/checklist/checklist-form-field.component.d.ts +1 -0
  51. package/angular/src/controls/form/form-field/file/file-form-field.component.d.ts +4 -0
  52. package/angular/src/controls/layout/layout-definition.component.d.ts +6 -1
  53. package/angular/src/controls/master-view/master-view.component.d.ts +118 -2
  54. package/angular/src/controls/page-alert-bar/models/index.d.ts +1 -1
  55. package/angular/src/controls/pivot/pivot.component.d.ts +4 -1
  56. package/angular/src/controls/property-grid/property-grid-item.component.d.ts +53 -3
  57. package/angular/src/controls/property-grid/property-grid.component.d.ts +1 -2
  58. package/angular/src/controls/property-grid/property-grid.module.d.ts +4 -3
  59. package/angular/src/controls/settings/common-settings/common-settings.component.d.ts +32 -1
  60. package/angular/src/controls/settings/settings.component.d.ts +18 -1
  61. package/angular/src/controls/settings/settings.module.d.ts +3 -1
  62. package/angular/src/generated/strings.d.ts +3 -0
  63. package/core/base/environment.d.ts +10 -0
  64. package/core/base/environment.js.map +1 -1
  65. package/core/data/gateway-connection.d.ts +34 -0
  66. package/core/data/gateway-connection.js +59 -2
  67. package/core/data/gateway-connection.js.map +1 -1
  68. package/core/data/gateway-status.d.ts +24 -0
  69. package/core/data/gateway-status.js +3 -0
  70. package/core/data/gateway-status.js.map +1 -0
  71. package/core/data/node-connection.d.ts +4 -0
  72. package/core/data/node-connection.js.map +1 -1
  73. package/core/data/powershell.d.ts +4 -0
  74. package/core/data/powershell.js +1 -0
  75. package/core/data/powershell.js.map +1 -1
  76. package/core/data/wdac-operations.d.ts +123 -0
  77. package/core/data/wdac-operations.js +144 -0
  78. package/core/data/wdac-operations.js.map +1 -0
  79. package/core/diagnostics/sme-web-telemetry-models.d.ts +20 -3
  80. package/core/diagnostics/sme-web-telemetry-models.js +6 -2
  81. package/core/diagnostics/sme-web-telemetry-models.js.map +1 -1
  82. package/core/diagnostics/sme-web-telemetry.d.ts +13 -1
  83. package/core/diagnostics/sme-web-telemetry.js +51 -11
  84. package/core/diagnostics/sme-web-telemetry.js.map +1 -1
  85. package/core/generated/powershell-scripts.d.ts +8 -4
  86. package/core/generated/powershell-scripts.js +8 -4
  87. package/core/generated/powershell-scripts.js.map +1 -1
  88. package/core/index.d.ts +2 -0
  89. package/core/index.js +1 -0
  90. package/core/index.js.map +1 -1
  91. package/core/manifest/environment-modules.js +10 -0
  92. package/core/manifest/environment-modules.js.map +1 -1
  93. package/core/notification/powershell-notification.js +1 -1
  94. package/core/notification/powershell-notification.js.map +1 -1
  95. package/core/performance/performance-tracker.d.ts +67 -0
  96. package/core/performance/performance-tracker.js +211 -4
  97. package/core/performance/performance-tracker.js.map +1 -1
  98. package/core/rpc/credssp/rpc-credssp-model.d.ts +27 -2
  99. package/core/rpc/credssp/rpc-credssp-model.js +10 -0
  100. package/core/rpc/credssp/rpc-credssp-model.js.map +1 -1
  101. package/core/security/credssp-manager.d.ts +15 -1
  102. package/core/security/credssp-manager.js +28 -0
  103. package/core/security/credssp-manager.js.map +1 -1
  104. package/core/shared/gateway-inventory/gateway-inventory.d.ts +10 -0
  105. package/core/shared/gateway-inventory/gateway-inventory.js +11 -0
  106. package/core/shared/gateway-inventory/gateway-inventory.js.map +1 -1
  107. package/e2e/assets/strings/cs-CZ/strings.json +1 -1
  108. package/e2e/assets/strings/de-DE/strings.json +1 -1
  109. package/e2e/assets/strings/es-ES/strings.json +1 -1
  110. package/e2e/assets/strings/fr-FR/strings.json +1 -1
  111. package/e2e/assets/strings/hu-HU/strings.json +1 -1
  112. package/e2e/assets/strings/it-IT/strings.json +1 -1
  113. package/e2e/assets/strings/ja-JP/strings.json +1 -1
  114. package/e2e/assets/strings/ko-KR/strings.json +1 -1
  115. package/e2e/assets/strings/nl-NL/strings.json +1 -1
  116. package/e2e/assets/strings/pl-PL/strings.json +1 -1
  117. package/e2e/assets/strings/pt-BR/strings.json +1 -1
  118. package/e2e/assets/strings/pt-PT/strings.json +1 -1
  119. package/e2e/assets/strings/ru-RU/strings.json +1 -1
  120. package/e2e/assets/strings/strings.json +1 -1
  121. package/e2e/assets/strings/sv-SE/strings.json +1 -1
  122. package/e2e/assets/strings/tr-TR/strings.json +1 -1
  123. package/e2e/assets/strings/zh-CN/strings.json +1 -1
  124. package/e2e/assets/strings/zh-TW/strings.json +1 -1
  125. package/package.json +5 -3
  126. package/styles/css/main.css +1 -1
  127. package/tools/module-template/gulpfile.ts/index.ts +1 -1
  128. package/tools/package-lock.json +18081 -4110
  129. package/tools/wac-cli/src/create/main.d.ts +6 -3
  130. package/tools/wac-cli/src/create/main.js +87 -35
  131. package/tools/wac-cli/src/create/main.js.map +1 -1
  132. package/tools/wac-cli/src/index.js +2 -2
  133. package/tools/wac-cli/src/index.js.map +1 -1
  134. package/tools/wac-cli/templates/internal/npmrc.txt +6 -0
  135. package/tools/wac-cli/templates/internal/package.json +101 -0
  136. package/tools/wac-cli/templates/{manifest/solution-manifest.json → solution/manifest.json} +19 -0
  137. package/tools/wac-cli/templates/solution/strings.resjson +16 -0
  138. package/tools/wac-cli/templates/wac-template/angular.json +2 -2
  139. package/tools/wac-cli/templates/wac-template/gulpfile.ts/config-data.ts +1 -1
  140. package/tools/wac-cli/templates/wac-template/package.json +0 -8
  141. package/tools/wac-cli/templates/wac-template/src/app/app-routing.module.ts +1 -1
  142. package/tools/wac-cli/templates/wac-template/src/main.ts +2 -0
  143. package/tools/wac-cli/templates/{manifest/tool-manifest.json → wac-template/src/manifest.json} +0 -0
  144. package/tools/wac-cli/templates/wac-template/src/polyfills.ts +1 -1
  145. package/tools/wac-cli/templates/wac-template/src/test.ts +2 -2
  146. package/tools/wac-cli/templates/wac-template/src/version.ts +3 -0
  147. package/tools/wac-cli/templates/wac-template/version.json +5 -0
@@ -912,6 +912,13 @@ class BaseComponent extends NgLifecycleBaseComponent {
912
912
  getInitialHostClasses() {
913
913
  return [];
914
914
  }
915
+ /**
916
+ * Shortcut to get an attribute on the host element
917
+ * @param name The name of the attribute
918
+ */
919
+ getAttribute(name) {
920
+ return this.hostElement.nativeElement.getAttribute(name);
921
+ }
915
922
  /**
916
923
  * Shortcut to set an attribute on the host element
917
924
  * @param name The name of the attribute
@@ -2613,7 +2620,9 @@ class AppContextService extends AppContext {
2613
2620
  this.azureManagerService.initialize();
2614
2621
  SmeWebTelemetry.init(this).subscribe(loaded => {
2615
2622
  Logging.logDebug('SmeWebTelemetry', loaded ? 'Loaded browser telemetry' : 'Failed to load browser telemetry');
2623
+ PerformanceTracker.tryStartCalculatingTimeToInteractive();
2616
2624
  });
2625
+ PerformanceTracker.initializeLighthouseMetricsTrackers();
2617
2626
  }
2618
2627
  /**
2619
2628
  * Destroy the app context resource from ngDestroy call in AppComponent.
@@ -6564,6 +6573,10 @@ class ActionBarComponent extends ActionContainerComponent {
6564
6573
  else {
6565
6574
  this.dropDown.onToggled.pipe(take(1)).subscribe(open => {
6566
6575
  if (open) {
6576
+ // blur/focus to refresh focus - this will make the tooltip disappear
6577
+ // while menu is open (b/c tooltip will block view)
6578
+ this.dropDownButtonElement.nativeElement.blur();
6579
+ this.dropDownButtonElement.nativeElement.focus();
6567
6580
  this.moreButtonElement = document.activeElement;
6568
6581
  }
6569
6582
  });
@@ -6777,7 +6790,7 @@ class ActionBarComponent extends ActionContainerComponent {
6777
6790
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.dropDown = _t.first);
6778
6791
  } }, hostBindings: function ActionBarComponent_HostBindings(rf, ctx) { if (rf & 1) {
6779
6792
  ɵɵlistener("focusin", function ActionBarComponent_focusin_HostBindingHandler($event) { return ctx.onFocusEvent($event); })("focusout", function ActionBarComponent_focusout_HostBindingHandler($event) { return ctx.onFocusEvent($event); })("keydown", function ActionBarComponent_keydown_HostBindingHandler($event) { return ctx.onToggleKeydown($event); })("mouseenter", function ActionBarComponent_mouseenter_HostBindingHandler($event) { return ctx.onMouseEvent($event); })("mouseleave", function ActionBarComponent_mouseleave_HostBindingHandler($event) { return ctx.onMouseEvent($event); })("resize", function ActionBarComponent_resize_HostBindingHandler() { return ctx.onResize(); }, false, ɵɵresolveWindow);
6780
- } }, outputs: { actionsUpdated: "actionsUpdated" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c3$2, decls: 12, vars: 14, consts: [["role", "menubar", 1, "sme-position-flex-none", "sme-arrange-stack-h"], ["actionBarElement", ""], ["class", "sme-arrange-stack-h sme-arrange-stack-centered sme-arrange-stack-inline", 3, "item", "sme-action-bar-item-no-padding-v", "itemChanged", 4, "ngFor", "ngForOf"], ["role", "presentation", 1, "sme-position-flex-none"], ["dropDown", ""], ["type", "button", "role", "menuitem", "aria-haspopup", "true", "data-uta-id", "action-bar-more", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-button-auto-width", "sme-dropdown-toggle"], ["dropDownButton", ""], [1, "sme-icon", "sme-icon-more", 3, "title"], [1, "sme-screen-reader"], ["role", "menu", 1, "sme-dropdown-content", 3, "actions", "target", "targetChange", "error", "executed"], [1, "sme-arrange-stack-h", "sme-arrange-stack-centered", "sme-arrange-stack-inline", 3, "item", "itemChanged"]], template: function ActionBarComponent_Template(rf, ctx) { if (rf & 1) {
6793
+ } }, outputs: { actionsUpdated: "actionsUpdated" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c3$2, decls: 12, vars: 16, consts: [["role", "menubar", 1, "sme-position-flex-none", "sme-arrange-stack-h"], ["actionBarElement", ""], ["class", "sme-arrange-stack-h sme-arrange-stack-centered sme-arrange-stack-inline", 3, "item", "sme-action-bar-item-no-padding-v", "itemChanged", 4, "ngFor", "ngForOf"], ["role", "presentation", 1, "sme-position-flex-none", 3, "title", "smeTooltipShow"], ["dropDown", ""], ["type", "button", "role", "menuitem", "aria-haspopup", "true", "data-uta-id", "action-bar-more", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-button-auto-width", "sme-dropdown-toggle"], ["dropDownButton", ""], [1, "sme-icon", "sme-icon-more", 3, "title"], [1, "sme-screen-reader"], ["role", "menu", 1, "sme-dropdown-content", 3, "actions", "target", "targetChange", "error", "executed"], [1, "sme-arrange-stack-h", "sme-arrange-stack-centered", "sme-arrange-stack-inline", 3, "item", "itemChanged"]], template: function ActionBarComponent_Template(rf, ctx) { if (rf & 1) {
6781
6794
  ɵɵprojectionDef();
6782
6795
  ɵɵelementStart(0, "div", 0, 1);
6783
6796
  ɵɵtemplate(2, ActionBarComponent_sme_dynamic_action_item_2_Template, 1, 3, "sme-dynamic-action-item", 2);
@@ -6801,6 +6814,7 @@ class ActionBarComponent extends ActionContainerComponent {
6801
6814
  ɵɵproperty("ngForOf", ctx.hiddenFilter(ctx.displayedActions));
6802
6815
  ɵɵadvance(1);
6803
6816
  ɵɵclassProp("sme-layout-hidden", !ctx.compact && ctx.trayActions.length === 0)("sme-layout-none", ctx.compact && ctx.trayActions.length === 0);
6817
+ ɵɵproperty("title", ctx.moreActionsDisplay)("smeTooltipShow", !_r2.isOpen);
6804
6818
  ɵɵadvance(2);
6805
6819
  ɵɵclassProp("sme-toggled", _r2.isOpen);
6806
6820
  ɵɵattribute("aria-label", ctx.moreActionsDisplay)("aria-expanded", _r2.isOpen);
@@ -8394,10 +8408,15 @@ const ɵEditableLayoutItemComponent_BaseFactory = /*@__PURE__*/ ɵɵgetInherited
8394
8408
  class LayoutDefinitionComponent {
8395
8409
  constructor() {
8396
8410
  this.until = Number.MAX_VALUE;
8411
+ /**
8412
+ * Setting addBottomPadding to True will add bottom padding to all layout-items,
8413
+ * otherwise does NOT add bottom padding to any layout-items.
8414
+ */
8415
+ this.addBottomPadding = true;
8397
8416
  }
8398
8417
  }
8399
8418
  /** @nocollapse */ LayoutDefinitionComponent.ɵfac = function LayoutDefinitionComponent_Factory(t) { return new (t || LayoutDefinitionComponent)(); };
8400
- /** @nocollapse */ LayoutDefinitionComponent.ɵcmp = ɵɵdefineComponent({ type: LayoutDefinitionComponent, selectors: [["sme-layout-definition"]], inputs: { until: "until", columns: "columns", name: "name" }, decls: 0, vars: 0, template: function LayoutDefinitionComponent_Template(rf, ctx) { }, encapsulation: 2 });
8419
+ /** @nocollapse */ LayoutDefinitionComponent.ɵcmp = ɵɵdefineComponent({ type: LayoutDefinitionComponent, selectors: [["sme-layout-definition"]], inputs: { until: "until", columns: "columns", name: "name", addBottomPadding: "addBottomPadding" }, decls: 0, vars: 0, template: function LayoutDefinitionComponent_Template(rf, ctx) { }, encapsulation: 2 });
8401
8420
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(LayoutDefinitionComponent, [{
8402
8421
  type: Component,
8403
8422
  args: [{
@@ -8410,6 +8429,8 @@ class LayoutDefinitionComponent {
8410
8429
  type: Input
8411
8430
  }], name: [{
8412
8431
  type: Input
8432
+ }], addBottomPadding: [{
8433
+ type: Input
8413
8434
  }] }); })();
8414
8435
 
8415
8436
  function LayoutItemComponent_div_0_Template(rf, ctx) { if (rf & 1) {
@@ -8584,7 +8605,16 @@ class LayoutComponent extends CoreBaseComponent {
8584
8605
  layoutItems[i].paddingRight = this.itemHorizontalSpace + 'px';
8585
8606
  }
8586
8607
  }
8587
- layoutItems[i].paddingBottom = this.itemVerticalSpace + 'px';
8608
+ if (this.currentLayoutDefinition.addBottomPadding) {
8609
+ layoutItems[i].paddingBottom = this.itemVerticalSpace + 'px';
8610
+ }
8611
+ else {
8612
+ // If bottom padding already exists and currentLayoutDefinition.addBottomPadding is False
8613
+ // Remove the bottom padding.
8614
+ if (layoutItems[i].paddingBottom === this.itemVerticalSpace + 'px') {
8615
+ layoutItems[i].paddingBottom = 0 + 'px';
8616
+ }
8617
+ }
8588
8618
  layoutItems[i].width = percentage + '%';
8589
8619
  layoutItems[i].ready();
8590
8620
  }
@@ -9843,7 +9873,14 @@ class FormFieldComponent extends BaseComponent {
9843
9873
  * The ID is based on the form field name that's set on the ngModel.
9844
9874
  */
9845
9875
  get dataUtaId() {
9846
- return this.utaId ? this.utaId : this.ngModel && this.ngModel.name && this.ngModel.name.toString();
9876
+ // First, get the name from the attribute set in the HTML
9877
+ const formFieldNameAttribute = this.getAttribute('formcontrolname') || this.getAttribute('name');
9878
+ // Then, if no HTML attribute is set, try to get the name from the ngModel
9879
+ const formFieldName = formFieldNameAttribute || this.ngModel && this.ngModel.name && this.ngModel.name.toString();
9880
+ // If none of these are set, then look for the utaId input
9881
+ const formFieldId = formFieldName || this.utaId;
9882
+ // Finally, only set the data-uta-id attribute if neither name nor formcontrolname are set on the HTML already
9883
+ return MsftSme.isNullOrUndefined(formFieldNameAttribute) ? formFieldId : undefined;
9847
9884
  }
9848
9885
  /**
9849
9886
  * Placeholder for the combined disabled state
@@ -12424,8 +12461,8 @@ function ChecklistFormFieldComponent_div_1_div_1_Template(rf, ctx) { if (rf & 1)
12424
12461
  ɵɵtextInterpolate(ctx_r1.getCheckboxCount());
12425
12462
  } }
12426
12463
  function ChecklistFormFieldComponent_div_1_ng_container_2_fieldset_8_Template(rf, ctx) { if (rf & 1) {
12427
- ɵɵelementStart(0, "fieldset", 12);
12428
- ɵɵelement(1, "sme-option-template-loader", 13);
12464
+ ɵɵelementStart(0, "fieldset", 13);
12465
+ ɵɵelement(1, "sme-option-template-loader", 14);
12429
12466
  ɵɵelementEnd();
12430
12467
  } if (rf & 2) {
12431
12468
  const ctx_r9 = ɵɵnextContext();
@@ -12441,7 +12478,7 @@ function ChecklistFormFieldComponent_div_1_ng_container_2_Template(rf, ctx) { if
12441
12478
  ɵɵelementContainerStart(0);
12442
12479
  ɵɵelementStart(1, "div", 10);
12443
12480
  ɵɵelementStart(2, "label");
12444
- ɵɵelementStart(3, "input", 7);
12481
+ ɵɵelementStart(3, "input", 11);
12445
12482
  ɵɵlistener("keydown", function ChecklistFormFieldComponent_div_1_ng_container_2_Template_input_keydown_3_listener($event) { ɵɵrestoreView(_r11); const i_r7 = ctx.index; const ctx_r10 = ɵɵnextContext(2); return ctx_r10.onCheckboxKeydown($event, i_r7); })("change", function ChecklistFormFieldComponent_div_1_ng_container_2_Template_input_change_3_listener() { ɵɵrestoreView(_r11); const option_r6 = ctx.$implicit; const ctx_r12 = ɵɵnextContext(2); return ctx_r12.toggleOption(option_r6, !option_r6.isSelected); });
12446
12483
  ɵɵelementEnd();
12447
12484
  ɵɵelementStart(4, "span", 8);
@@ -12452,7 +12489,7 @@ function ChecklistFormFieldComponent_div_1_ng_container_2_Template(rf, ctx) { if
12452
12489
  ɵɵtext(7);
12453
12490
  ɵɵelementEnd();
12454
12491
  ɵɵelementEnd();
12455
- ɵɵtemplate(8, ChecklistFormFieldComponent_div_1_ng_container_2_fieldset_8_Template, 2, 4, "fieldset", 11);
12492
+ ɵɵtemplate(8, ChecklistFormFieldComponent_div_1_ng_container_2_fieldset_8_Template, 2, 4, "fieldset", 12);
12456
12493
  ɵɵelementContainerEnd();
12457
12494
  } if (rf & 2) {
12458
12495
  const option_r6 = ctx.$implicit;
@@ -12460,7 +12497,7 @@ function ChecklistFormFieldComponent_div_1_ng_container_2_Template(rf, ctx) { if
12460
12497
  const ctx_r2 = ɵɵnextContext(2);
12461
12498
  ɵɵadvance(3);
12462
12499
  ɵɵproperty("id", ctx_r2.idBag.checkbox + i_r7)("checked", option_r6.isSelected)("disabled", ctx_r2.loadingOrDisabled || option_r6.disabled);
12463
- ɵɵattribute("aria-label", option_r6.toString())("aria-describedby", ctx_r2.idBag.checkboxDescription + i_r7)("aria-checked", option_r6.isSelected)("aria-required", ctx_r2.required);
12500
+ ɵɵattribute("aria-label", option_r6.toString())("aria-describedby", ctx_r2.idBag.checkboxDescription + i_r7)("aria-checked", option_r6.isSelected)("aria-required", ctx_r2.required)("data-uta-id", ctx_r2.formatDataUtaId(option_r6.toString()));
12464
12501
  ɵɵadvance(2);
12465
12502
  ɵɵtextInterpolate(option_r6.toString());
12466
12503
  ɵɵadvance(1);
@@ -12473,7 +12510,7 @@ function ChecklistFormFieldComponent_div_1_ng_container_2_Template(rf, ctx) { if
12473
12510
  function ChecklistFormFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
12474
12511
  ɵɵelementStart(0, "div", 3);
12475
12512
  ɵɵtemplate(1, ChecklistFormFieldComponent_div_1_div_1_Template, 7, 10, "div", 4);
12476
- ɵɵtemplate(2, ChecklistFormFieldComponent_div_1_ng_container_2_Template, 9, 11, "ng-container", 5);
12513
+ ɵɵtemplate(2, ChecklistFormFieldComponent_div_1_ng_container_2_Template, 9, 12, "ng-container", 5);
12477
12514
  ɵɵelementEnd();
12478
12515
  } if (rf & 2) {
12479
12516
  const ctx_r0 = ɵɵnextContext();
@@ -12758,6 +12795,9 @@ let ChecklistFormFieldComponent = class ChecklistFormFieldComponent extends SmeI
12758
12795
  detailsSpan: ''
12759
12796
  };
12760
12797
  }
12798
+ formatDataUtaId(option) {
12799
+ return option.toLowerCase().replaceAll(' ', '-');
12800
+ }
12761
12801
  getCheckboxCount(index) {
12762
12802
  let total = this.options.length;
12763
12803
  let currentIndex = MsftSme.isNullOrUndefined(index) ? 0 : index + 1;
@@ -12787,7 +12827,7 @@ let ChecklistFormFieldComponent = class ChecklistFormFieldComponent extends SmeI
12787
12827
  /** @nocollapse */ ChecklistFormFieldComponent.ɵfac = function ChecklistFormFieldComponent_Factory(t) { return new (t || ChecklistFormFieldComponent)(ɵɵdirectiveInject(Injector)); };
12788
12828
  /** @nocollapse */ ChecklistFormFieldComponent.ɵcmp = ɵɵdefineComponent({ type: ChecklistFormFieldComponent, selectors: [["sme-form-field", "type", "checklist"]], hostVars: 1, hostBindings: function ChecklistFormFieldComponent_HostBindings(rf, ctx) { if (rf & 2) {
12789
12829
  ɵɵattribute("aria-label", ctx.ariaLabel);
12790
- } }, inputs: { shouldUseOwnOptionsList: "shouldUseOwnOptionsList" }, features: [ɵɵInheritDefinitionFeature], attrs: _c0$l, decls: 3, vars: 3, consts: [[1, "sme-focus-zone", 3, "formField"], ["role", "group", "class", "sme-form-field-editor sme-form-field-width", 4, "ngIf"], [3, "alert"], ["role", "group", 1, "sme-form-field-editor", "sme-form-field-width"], ["class", "sme-checkbox sme-checkbox-header", 4, "ngIf"], [4, "ngFor", "ngForOf"], [1, "sme-checkbox", "sme-checkbox-header"], ["type", "checkbox", 3, "id", "checked", "disabled", "keydown", "change"], ["aria-hidden", "true"], [1, "sme-screen-reader", 3, "id"], [1, "sme-checkbox", "sme-margin-bottom-xxs"], ["class", "sme-focus-zone", 3, "disabled", 4, "ngIf"], [1, "sme-focus-zone", 3, "disabled"], [3, "template", "data", "optionIndex"]], template: function ChecklistFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
12830
+ } }, inputs: { shouldUseOwnOptionsList: "shouldUseOwnOptionsList" }, features: [ɵɵInheritDefinitionFeature], attrs: _c0$l, decls: 3, vars: 3, consts: [[1, "sme-focus-zone", 3, "formField"], ["role", "group", "class", "sme-form-field-editor sme-form-field-width", 4, "ngIf"], [3, "alert"], ["role", "group", 1, "sme-form-field-editor", "sme-form-field-width"], ["class", "sme-checkbox sme-checkbox-header", 4, "ngIf"], [4, "ngFor", "ngForOf"], [1, "sme-checkbox", "sme-checkbox-header"], ["type", "checkbox", "data-uta-id", "select-all", 3, "id", "checked", "disabled", "keydown", "change"], ["aria-hidden", "true"], [1, "sme-screen-reader", 3, "id"], [1, "sme-checkbox", "sme-margin-bottom-xxs"], ["type", "checkbox", 3, "id", "checked", "disabled", "keydown", "change"], ["class", "sme-focus-zone", 3, "disabled", 4, "ngIf"], [1, "sme-focus-zone", 3, "disabled"], [3, "template", "data", "optionIndex"]], template: function ChecklistFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
12791
12831
  ɵɵelementStart(0, "sme-form-field-layout", 0);
12792
12832
  ɵɵtemplate(1, ChecklistFormFieldComponent_div_1_Template, 3, 2, "div", 1);
12793
12833
  ɵɵelement(2, "sme-validation-alert", 2);
@@ -17621,10 +17661,9 @@ function ComboboxFormFieldComponent_ng_template_18_Template(rf, ctx) { if (rf &
17621
17661
  ɵɵelementStart(2, "input", 28);
17622
17662
  ɵɵlistener("change", function ComboboxFormFieldComponent_ng_template_18_Template_input_change_2_listener() { ɵɵrestoreView(_r27); const option_r25 = ctx.$implicit; const ctx_r26 = ɵɵnextContext(); return ctx_r26.toggleOption(option_r25, !option_r25.isSelected); });
17623
17663
  ɵɵelementEnd();
17624
- ɵɵtext(3, " [disabled]=\"option.disabled\" class=\"sme-layout-absolute sme-position-inset-none\" /> ");
17625
- ɵɵelementStart(4, "span", 29);
17626
- ɵɵelementStart(5, "span", 30);
17627
- ɵɵtext(6);
17664
+ ɵɵelementStart(3, "span", 29);
17665
+ ɵɵelementStart(4, "span", 30);
17666
+ ɵɵtext(5);
17628
17667
  ɵɵelementEnd();
17629
17668
  ɵɵelementEnd();
17630
17669
  ɵɵelementEnd();
@@ -17633,9 +17672,9 @@ function ComboboxFormFieldComponent_ng_template_18_Template(rf, ctx) { if (rf &
17633
17672
  const option_r25 = ctx.$implicit;
17634
17673
  const ctx_r11 = ɵɵnextContext();
17635
17674
  ɵɵadvance(2);
17636
- ɵɵproperty("checked", option_r25.isSelected);
17675
+ ɵɵproperty("checked", option_r25.isSelected)("disabled", option_r25.disabled);
17637
17676
  ɵɵattribute("aria-checked", option_r25.isSelected)("aria-label", option_r25.toString())("data-uta-id", option_r25.utaId ? option_r25.utaId : option_r25.value);
17638
- ɵɵadvance(2);
17677
+ ɵɵadvance(1);
17639
17678
  ɵɵclassProp("sme-combobox-option-wrap", ctx_r11.overflowWrap);
17640
17679
  ɵɵproperty("smeTooltip", option_r25.disabled ? null : option_r25.resolvedTooltipTemplate)("title", option_r25.resolvedTitle)("smeTooltipContext", option_r25.disabled ? null : option_r25.tooltipContext || option_r25);
17641
17680
  ɵɵadvance(1);
@@ -17954,7 +17993,7 @@ let ComboboxFormFieldComponent = class ComboboxFormFieldComponent extends SmeInt
17954
17993
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.multiSelectTemplate = _t.first);
17955
17994
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.listboxElement = _t.first);
17956
17995
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.dropDown = _t.first);
17957
- } }, inputs: { multiple: "multiple", overflowWrap: "overflowWrap", maintainSearch: "maintainSearch", dropdownApplyFormFieldOffsetWidth: "dropdownApplyFormFieldOffsetWidth" }, features: [ɵɵInheritDefinitionFeature], attrs: _c4$1, decls: 20, vars: 30, consts: [[3, "formField"], [1, "sme-combobox", "sme-focus-zone", "sme-form-field-editor", 3, "autoToggle", "disabled", "calculateHeight", "dropdownApplyFormFieldOffsetWidth", "toggled"], ["dropDown", ""], [1, "sme-combobox-header", "sme-dropdown-toggle", 3, "keydown", "keypress"], ["dropdownHeader", ""], ["type", "text", "role", "combobox", "readonly", "", "spellcheck", "false", "autocapitalize", "off", "autocomplete", "off", 3, "value", "placeholder", "click"], ["textInput", ""], ["type", "button", "tabindex", "-1", "role", "presentation", "aria-hidden", "true", 1, "sme-button-trigger", "sme-button-auto-width", 3, "click"], [1, "sme-icon", "sme-icon-chevronDown"], ["role", "listbox", 1, "sme-dropdown-content", "sme-dropdown-content-inherit-container-height", 3, "ngStyle", "id", "keydown"], ["listbox", ""], [3, "sme-padding-squish-v-xs", "keydown", 4, "ngIf"], ["class", "sme-checkbox sme-dropdown-interaction-enabled", "role", "option", 3, "sme-layout-none", 4, "ngIf"], [4, "ngIf"], [3, "alert"], ["singleSelectTemplate", ""], ["multiSelectTemplate", ""], [3, "keydown"], ["name", "searchStringValue", "type", "search", 3, "disableSearchButton", "placeholder", "label", "id", "count", "ngModel", "ngModelChange"], ["role", "option", 1, "sme-checkbox", "sme-dropdown-interaction-enabled"], [1, "sme-position-stretch-h", "sme-arrange-word-break-all"], ["type", "checkbox", "role", "checkbox", 1, "sme-layout-absolute", "sme-position-inset-none", 3, "checked", "change"], ["aria-hidden", "true"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["smeTemplateOutlet", "", 3, "template", "data"], ["type", "button", "role", "option", 3, "disabled", "click"], [3, "smeTooltip", "smeTooltipContext"], [1, "sme-layout-float-left", 3, "title"], ["type", "checkbox", "role", "checkbox", 3, "checked", "change"], ["aria-hidden", "true", 1, "sme-position-stretch-h", "sme-layout-float-left", 3, "smeTooltip", "title", "smeTooltipContext"], [1, "sme-position-stretch-h", "sme-layout-float-left"]], template: function ComboboxFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
17996
+ } }, inputs: { multiple: "multiple", overflowWrap: "overflowWrap", maintainSearch: "maintainSearch", dropdownApplyFormFieldOffsetWidth: "dropdownApplyFormFieldOffsetWidth" }, features: [ɵɵInheritDefinitionFeature], attrs: _c4$1, decls: 20, vars: 30, consts: [[3, "formField"], [1, "sme-combobox", "sme-focus-zone", "sme-form-field-editor", 3, "autoToggle", "disabled", "calculateHeight", "dropdownApplyFormFieldOffsetWidth", "toggled"], ["dropDown", ""], [1, "sme-combobox-header", "sme-dropdown-toggle", 3, "keydown", "keypress"], ["dropdownHeader", ""], ["type", "text", "role", "combobox", "readonly", "", "spellcheck", "false", "autocapitalize", "off", "autocomplete", "off", 3, "value", "placeholder", "click"], ["textInput", ""], ["type", "button", "tabindex", "-1", "role", "presentation", "aria-hidden", "true", 1, "sme-button-trigger", "sme-button-auto-width", 3, "click"], [1, "sme-icon", "sme-icon-chevronDown"], ["role", "listbox", 1, "sme-dropdown-content", "sme-dropdown-content-inherit-container-height", 3, "ngStyle", "id", "keydown"], ["listbox", ""], [3, "sme-padding-squish-v-xs", "keydown", 4, "ngIf"], ["class", "sme-checkbox sme-dropdown-interaction-enabled", "role", "option", 3, "sme-layout-none", 4, "ngIf"], [4, "ngIf"], [3, "alert"], ["singleSelectTemplate", ""], ["multiSelectTemplate", ""], [3, "keydown"], ["name", "searchStringValue", "type", "search", 3, "disableSearchButton", "placeholder", "label", "id", "count", "ngModel", "ngModelChange"], ["role", "option", 1, "sme-checkbox", "sme-dropdown-interaction-enabled"], [1, "sme-position-stretch-h", "sme-arrange-word-break-all"], ["type", "checkbox", "role", "checkbox", 1, "sme-layout-absolute", "sme-position-inset-none", 3, "checked", "change"], ["aria-hidden", "true"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["smeTemplateOutlet", "", 3, "template", "data"], ["type", "button", "role", "option", 3, "disabled", "click"], [3, "smeTooltip", "smeTooltipContext"], [1, "sme-layout-float-left", 3, "title"], ["type", "checkbox", "role", "checkbox", 1, "sme-layout-absolute", "sme-position-inset-none", 3, "checked", "disabled", "change"], ["aria-hidden", "true", 1, "sme-position-stretch-h", "sme-layout-float-left", 3, "smeTooltip", "title", "smeTooltipContext"], [1, "sme-position-stretch-h", "sme-layout-float-left"]], template: function ComboboxFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
17958
17997
  const _r28 = ɵɵgetCurrentView();
17959
17998
  ɵɵelementStart(0, "sme-form-field-layout", 0);
17960
17999
  ɵɵelementStart(1, "sme-dropdown", 1, 2);
@@ -17979,7 +18018,7 @@ let ComboboxFormFieldComponent = class ComboboxFormFieldComponent extends SmeInt
17979
18018
  ɵɵelementEnd();
17980
18019
  ɵɵelement(15, "sme-validation-alert", 14);
17981
18020
  ɵɵtemplate(16, ComboboxFormFieldComponent_ng_template_16_Template, 4, 14, "ng-template", null, 15, ɵɵtemplateRefExtractor);
17982
- ɵɵtemplate(18, ComboboxFormFieldComponent_ng_template_18_Template, 7, 12, "ng-template", null, 16, ɵɵtemplateRefExtractor);
18021
+ ɵɵtemplate(18, ComboboxFormFieldComponent_ng_template_18_Template, 6, 13, "ng-template", null, 16, ɵɵtemplateRefExtractor);
17983
18022
  ɵɵelementEnd();
17984
18023
  } if (rf & 2) {
17985
18024
  const _r0 = ɵɵreference(2);
@@ -19325,6 +19364,17 @@ let FileFormFieldComponent = class FileFormFieldComponent extends SmeInternalFor
19325
19364
  ? this.strings.MsftSmeShell.Angular.Form.File.selectedFilesFormat.multipleEnabled.none
19326
19365
  : this.strings.MsftSmeShell.Angular.Form.File.selectedFilesFormat.none;
19327
19366
  }
19367
+ /**
19368
+ * gets aria-label text
19369
+ */
19370
+ get ariaLabelText() {
19371
+ const labelText = this.buttonLabel || (this.multiple
19372
+ ? this.strings.MsftSmeShell.Angular.Form.File.buttonText.plural
19373
+ : this.strings.MsftSmeShell.Angular.Form.File.buttonText.singular);
19374
+ return this.hasFiles
19375
+ ? this.strings.MsftSmeShell.Angular.Form.File.selectedFilesFormat.plural.format(this.files.length).concat(labelText)
19376
+ : labelText;
19377
+ }
19328
19378
  /**
19329
19379
  * Indicates if there are any files selected
19330
19380
  */
@@ -19497,7 +19547,7 @@ let FileFormFieldComponent = class FileFormFieldComponent extends SmeInternalFor
19497
19547
  } if (rf & 2) {
19498
19548
  let _t;
19499
19549
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.fileInput = _t.first);
19500
- } }, inputs: { multiple: "multiple", fileTypes: "fileTypes", buttonLabel: "buttonLabel" }, features: [ɵɵInheritDefinitionFeature], attrs: _c1$h, decls: 15, vars: 12, consts: [[3, "formField"], [1, "sme-file-drop-zone", "sme-subform-indent-none", "sme-subform-no-bottom-margin"], [1, "sme-padding-inset-xs", "sme-margin-bottom-xs", "sme-arrange-stack-v", 3, "smeDrop"], [1, "sme-file-input", "sme-margin-bottom-xxs"], ["type", "file", 1, "sme-layout-none", 3, "disabled", "change"], ["file", ""], ["type", "button", 1, "sme-button-primary", "sme-button-auto-width", "sme-margin-right-xs", 3, "smeDisabled", "click"], [1, "sme-position-flex-align-center"], [4, "ngIf"], ["aria-live", "polite", 1, "sme-margin-bottom-xs"], [3, "alert"], ["class", "sme-arrange-stack-h sme-margin-bottom-xs", 4, "ngFor", "ngForOf"], [1, "sme-arrange-stack-h", "sme-margin-bottom-xs"], [1, "sme-position-flex-none", "sme-icon", "sme-icon-size-lg"], ["aria-live", "polite", 1, "sme-position-flex-auto", "sme-padding-left-sm", "sme-arrange-stack-v"], [1, "sme-position-flex-auto", "sme-arrange-ellipsis", "sme-padding-inset-none"], ["type", "button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", 3, "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-cancel", "sme-color-red"]], template: function FileFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
19550
+ } }, inputs: { multiple: "multiple", fileTypes: "fileTypes", buttonLabel: "buttonLabel" }, features: [ɵɵInheritDefinitionFeature], attrs: _c1$h, decls: 15, vars: 13, consts: [[3, "formField"], [1, "sme-file-drop-zone", "sme-subform-indent-none", "sme-subform-no-bottom-margin"], [1, "sme-padding-inset-xs", "sme-margin-bottom-xs", "sme-arrange-stack-v", 3, "smeDrop"], [1, "sme-file-input", "sme-margin-bottom-xxs"], ["type", "file", 1, "sme-layout-none", 3, "disabled", "change"], ["file", ""], ["type", "button", 1, "sme-button-primary", "sme-button-auto-width", "sme-margin-right-xs", 3, "smeDisabled", "click"], [1, "sme-position-flex-align-center"], [4, "ngIf"], [1, "sme-margin-bottom-xs"], [3, "alert"], ["class", "sme-arrange-stack-h sme-margin-bottom-xs", 4, "ngFor", "ngForOf"], [1, "sme-arrange-stack-h", "sme-margin-bottom-xs"], [1, "sme-position-flex-none", "sme-icon", "sme-icon-size-lg"], [1, "sme-position-flex-auto", "sme-padding-left-sm", "sme-arrange-stack-v"], [1, "sme-position-flex-auto", "sme-arrange-ellipsis", "sme-padding-inset-none"], ["type", "button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", 3, "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-cancel", "sme-color-red"]], template: function FileFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
19501
19551
  const _r8 = ɵɵgetCurrentView();
19502
19552
  ɵɵelementStart(0, "sme-form-field-layout", 0);
19503
19553
  ɵɵelementStart(1, "fieldset", 1);
@@ -19533,6 +19583,7 @@ let FileFormFieldComponent = class FileFormFieldComponent extends SmeInternalFor
19533
19583
  ɵɵattribute("multiple", ctx.multiple || null)("accept", ctx.accept);
19534
19584
  ɵɵadvance(2);
19535
19585
  ɵɵproperty("smeDisabled", ctx.loadingOrDisabled);
19586
+ ɵɵattribute("aria-label", ctx.ariaLabelText);
19536
19587
  ɵɵadvance(1);
19537
19588
  ɵɵtextInterpolate1(" ", ctx.buttonLabel || (ctx.multiple ? ctx.strings.MsftSmeShell.Angular.Form.File.buttonText.plural : ctx.strings.MsftSmeShell.Angular.Form.File.buttonText.singular), " ");
19538
19589
  ɵɵadvance(2);
@@ -24360,7 +24411,8 @@ function DataTableComponent_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
24360
24411
  ɵɵadvance(2);
24361
24412
  ɵɵtextInterpolate(column_r18.header);
24362
24413
  ɵɵadvance(1);
24363
- ɵɵproperty("ngClass", ɵɵpureFunction2(4, _c12, column_r18.sortMode === ctx_r20.sortModeEnum.Ascend, column_r18.sortMode === ctx_r20.sortModeEnum.Descend));
24414
+ ɵɵproperty("ngClass", ɵɵpureFunction2(5, _c12, column_r18.sortMode === ctx_r20.sortModeEnum.Ascend, column_r18.sortMode === ctx_r20.sortModeEnum.Descend));
24415
+ ɵɵattribute("aria-label", column_r18.sortable ? ctx_r20.getSortLabel(column_r18) : null);
24364
24416
  } }
24365
24417
  function DataTableComponent_div_7_div_2_Template(rf, ctx) { if (rf & 1) {
24366
24418
  ɵɵelementStart(0, "div", 39);
@@ -24376,7 +24428,8 @@ function DataTableComponent_div_7_div_2_Template(rf, ctx) { if (rf & 1) {
24376
24428
  ɵɵadvance(2);
24377
24429
  ɵɵtextInterpolate(column_r18.header);
24378
24430
  ɵɵadvance(1);
24379
- ɵɵproperty("ngClass", ɵɵpureFunction2(3, _c12, column_r18.sortMode === ctx_r21.sortModeEnum.Ascend, column_r18.sortMode === ctx_r21.sortModeEnum.Descend));
24431
+ ɵɵproperty("ngClass", ɵɵpureFunction2(4, _c12, column_r18.sortMode === ctx_r21.sortModeEnum.Ascend, column_r18.sortMode === ctx_r21.sortModeEnum.Descend));
24432
+ ɵɵattribute("aria-label", column_r18.sortable ? ctx_r21.getSortLabel(column_r18) : null);
24380
24433
  } }
24381
24434
  function DataTableComponent_div_7_div_3_Template(rf, ctx) { if (rf & 1) {
24382
24435
  ɵɵelement(0, "div", 40);
@@ -24392,8 +24445,8 @@ function DataTableComponent_div_7_sme_resizer_4_Template(rf, ctx) { if (rf & 1)
24392
24445
  const _c13 = function (a0) { return { "width": a0 }; };
24393
24446
  function DataTableComponent_div_7_Template(rf, ctx) { if (rf & 1) {
24394
24447
  ɵɵelementStart(0, "div", 32);
24395
- ɵɵtemplate(1, DataTableComponent_div_7_div_1_Template, 4, 7, "div", 33);
24396
- ɵɵtemplate(2, DataTableComponent_div_7_div_2_Template, 4, 6, "div", 34);
24448
+ ɵɵtemplate(1, DataTableComponent_div_7_div_1_Template, 4, 8, "div", 33);
24449
+ ɵɵtemplate(2, DataTableComponent_div_7_div_2_Template, 4, 7, "div", 34);
24397
24450
  ɵɵtemplate(3, DataTableComponent_div_7_div_3_Template, 1, 0, "div", 35);
24398
24451
  ɵɵtemplate(4, DataTableComponent_div_7_sme_resizer_4_Template, 1, 2, "sme-resizer", 36);
24399
24452
  ɵɵelementEnd();
@@ -25074,7 +25127,8 @@ function TreeTableComponent_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
25074
25127
  ɵɵadvance(2);
25075
25128
  ɵɵtextInterpolate(column_r18.header);
25076
25129
  ɵɵadvance(1);
25077
- ɵɵproperty("ngClass", ɵɵpureFunction2(4, _c12, column_r18.sortMode === ctx_r20.sortModeEnum.Ascend, column_r18.sortMode === ctx_r20.sortModeEnum.Descend));
25130
+ ɵɵproperty("ngClass", ɵɵpureFunction2(5, _c12, column_r18.sortMode === ctx_r20.sortModeEnum.Ascend, column_r18.sortMode === ctx_r20.sortModeEnum.Descend));
25131
+ ɵɵattribute("aria-label", column_r18.sortable ? ctx_r20.getSortLabel(column_r18) : null);
25078
25132
  } }
25079
25133
  function TreeTableComponent_div_7_div_2_Template(rf, ctx) { if (rf & 1) {
25080
25134
  ɵɵelementStart(0, "div", 39);
@@ -25090,7 +25144,8 @@ function TreeTableComponent_div_7_div_2_Template(rf, ctx) { if (rf & 1) {
25090
25144
  ɵɵadvance(2);
25091
25145
  ɵɵtextInterpolate(column_r18.header);
25092
25146
  ɵɵadvance(1);
25093
- ɵɵproperty("ngClass", ɵɵpureFunction2(3, _c12, column_r18.sortMode === ctx_r21.sortModeEnum.Ascend, column_r18.sortMode === ctx_r21.sortModeEnum.Descend));
25147
+ ɵɵproperty("ngClass", ɵɵpureFunction2(4, _c12, column_r18.sortMode === ctx_r21.sortModeEnum.Ascend, column_r18.sortMode === ctx_r21.sortModeEnum.Descend));
25148
+ ɵɵattribute("aria-label", column_r18.sortable ? ctx_r21.getSortLabel(column_r18) : null);
25094
25149
  } }
25095
25150
  function TreeTableComponent_div_7_div_3_Template(rf, ctx) { if (rf & 1) {
25096
25151
  ɵɵelement(0, "div", 40);
@@ -25105,8 +25160,8 @@ function TreeTableComponent_div_7_sme_resizer_4_Template(rf, ctx) { if (rf & 1)
25105
25160
  } }
25106
25161
  function TreeTableComponent_div_7_Template(rf, ctx) { if (rf & 1) {
25107
25162
  ɵɵelementStart(0, "div", 32);
25108
- ɵɵtemplate(1, TreeTableComponent_div_7_div_1_Template, 4, 7, "div", 33);
25109
- ɵɵtemplate(2, TreeTableComponent_div_7_div_2_Template, 4, 6, "div", 34);
25163
+ ɵɵtemplate(1, TreeTableComponent_div_7_div_1_Template, 4, 8, "div", 33);
25164
+ ɵɵtemplate(2, TreeTableComponent_div_7_div_2_Template, 4, 7, "div", 34);
25110
25165
  ɵɵtemplate(3, TreeTableComponent_div_7_div_3_Template, 1, 0, "div", 35);
25111
25166
  ɵɵtemplate(4, TreeTableComponent_div_7_sme_resizer_4_Template, 1, 2, "sme-resizer", 36);
25112
25167
  ɵɵelementEnd();
@@ -27079,6 +27134,25 @@ class DataTableComponent extends CoreBaseComponent {
27079
27134
  || renderedItem.index === this.hoveredRenderedItemIndex
27080
27135
  || editableDataItem.isNewRow;
27081
27136
  }
27137
+ /**
27138
+ * Retrieves the text that should be associated with the aria-label for column sort order (if sortable).
27139
+ * This label is utilized by screen readers for accessibility.
27140
+ * If the current sort order is Ascending, the label will indicate a button icon is present to Descend order.
27141
+ * If the current sort order is Descending, the label will indicate a button icon is present to Ascend order.
27142
+ * If the current sort order is None, the label is null, and the screen reader will not read anything.
27143
+ * @param column the table column
27144
+ * @returns the text for the aria-label on the sort icon
27145
+ */
27146
+ getSortLabel(column) {
27147
+ switch (column.sortMode) {
27148
+ case DataTableSortMode.Ascend:
27149
+ return this.strings.MsftSmeShell.Angular.DataTable.Aria.Label.descendSortOrderButton;
27150
+ case DataTableSortMode.Descend:
27151
+ return this.strings.MsftSmeShell.Angular.DataTable.Aria.Label.ascendSortOrderButton;
27152
+ case DataTableSortMode.None:
27153
+ return null;
27154
+ }
27155
+ }
27082
27156
  /**
27083
27157
  * It implements the AfterViewInit interface.
27084
27158
  */
@@ -29092,6 +29166,13 @@ class DataTableComponent extends CoreBaseComponent {
29092
29166
  this.processColumns();
29093
29167
  }
29094
29168
  }
29169
+ /**
29170
+ * Get the number of filtered items (if any) within the dataTable.
29171
+ * @returns number of dataTable filtered items, zero if none.
29172
+ */
29173
+ getNumberOfFilteredItems() {
29174
+ return this.filteredItems ? this.filteredItems.length : 0;
29175
+ }
29095
29176
  /**
29096
29177
  * This function is added from upgrading data table to support editable data table
29097
29178
  * The idea is to use the data table's header width to be applied on the data table body columns.
@@ -30289,8 +30370,8 @@ class PivotComponent extends CoreBaseComponent {
30289
30370
  /**
30290
30371
  * Force refresh for the pivot tabs.
30291
30372
  */
30292
- refresh() {
30293
- this.updatePivotTabs();
30373
+ refresh(shouldEmit = false) {
30374
+ this.updatePivotTabs(shouldEmit);
30294
30375
  }
30295
30376
  /**
30296
30377
  * Selects a tab
@@ -30353,7 +30434,10 @@ class PivotComponent extends CoreBaseComponent {
30353
30434
  'sme-pivot'
30354
30435
  ]);
30355
30436
  }
30356
- updatePivotTabs() {
30437
+ /**
30438
+ * Main rendering functionality for the pivot tab
30439
+ */
30440
+ updatePivotTabs(shouldEmit = true) {
30357
30441
  let currentFill = 0;
30358
30442
  this.visibleTabs = [];
30359
30443
  this.trayTabs = [];
@@ -30388,6 +30472,9 @@ class PivotComponent extends CoreBaseComponent {
30388
30472
  currentFill += tabWidth;
30389
30473
  }
30390
30474
  }
30475
+ if (shouldEmit) {
30476
+ this.emitLayoutChanged();
30477
+ }
30391
30478
  }
30392
30479
  }
30393
30480
  /** @nocollapse */ PivotComponent.ɵfac = function PivotComponent_Factory(t) { return new (t || PivotComponent)(ɵɵdirectiveInject(Injector), ɵɵdirectiveInject(SME_LAYOUT_PROVIDER, 12)); };
@@ -30462,7 +30549,7 @@ __decorate([
30462
30549
  __decorate([
30463
30550
  Debounce$1(),
30464
30551
  __metadata("design:type", Function),
30465
- __metadata("design:paramtypes", []),
30552
+ __metadata("design:paramtypes", [Object]),
30466
30553
  __metadata("design:returntype", void 0)
30467
30554
  ], PivotComponent.prototype, "refresh", null);
30468
30555
  __decorate([
@@ -31088,13 +31175,13 @@ function MasterViewComponent_button_14_Template(rf, ctx) { if (rf & 1) {
31088
31175
  function MasterViewComponent_button_15_Template(rf, ctx) { if (rf & 1) {
31089
31176
  const _r17 = ɵɵgetCurrentView();
31090
31177
  ɵɵelementStart(0, "button", 27);
31091
- ɵɵlistener("click", function MasterViewComponent_button_15_Template_button_click_0_listener() { ɵɵrestoreView(_r17); const ctx_r16 = ɵɵnextContext(); return ctx_r16.refresh.next(); });
31178
+ ɵɵlistener("click", function MasterViewComponent_button_15_Template_button_click_0_listener() { ɵɵrestoreView(_r17); const ctx_r16 = ɵɵnextContext(); return ctx_r16.refreshButtonClicked(); });
31092
31179
  ɵɵelement(1, "span", 28);
31093
31180
  ɵɵelementEnd();
31094
31181
  } if (rf & 2) {
31095
31182
  const ctx_r6 = ɵɵnextContext();
31096
- ɵɵproperty("disabled", ctx_r6.disableRefresh)("title", ctx_r6.resourceStrings.refresh.title);
31097
- ɵɵattribute("aria-label", ctx_r6.refreshButtonAriaLabel);
31183
+ ɵɵproperty("title", ctx_r6.resourceStrings.refresh.title);
31184
+ ɵɵattribute("aria-disabled", ctx_r6.disableRefresh)("aria-label", ctx_r6.refreshButtonAriaLabel);
31098
31185
  } }
31099
31186
  function MasterViewComponent_button_16_Template(rf, ctx) { if (rf & 1) {
31100
31187
  const _r19 = ɵɵgetCurrentView();
@@ -31148,6 +31235,7 @@ class MasterViewComponent extends CoreBaseComponent {
31148
31235
  this.pivotComponent = pivotComponent;
31149
31236
  this.isInitialized = false;
31150
31237
  this.resourceStrings = this.strings.MsftSmeShell.Angular.MasterView;
31238
+ this.commonStrings = this.strings.MsftSmeShell.Angular.Common;
31151
31239
  this.noSideMargin = false;
31152
31240
  this.hideHeader = false;
31153
31241
  this.header = '';
@@ -31272,6 +31360,23 @@ class MasterViewComponent extends CoreBaseComponent {
31272
31360
  this.refreshButtonAriaLabel = this.resourceStrings.refresh.ariaLabel.noHeader;
31273
31361
  }
31274
31362
  }
31363
+ // Note: this is a bandaid fix to this bug: https://microsoft.visualstudio.com/OS/_workitems/edit/33031791/.
31364
+ // The screen reader doesn't announce when aria-disabled changes and the exact reason for that is unknown.
31365
+ // It's not best practice to be adjusting the aria-label to achieve the effect but that's the best we came up with.
31366
+ // TODO: fix the real issue why the screen reader doesn't announce the aria-disabled changes
31367
+ ngOnChanges(changes) {
31368
+ var _a;
31369
+ let refreshButtonLabel = this.resourceStrings.refresh.ariaLabel.noHeader;
31370
+ if (this.header) {
31371
+ refreshButtonLabel = this.resourceStrings.refresh.ariaLabel.header.format(this.header);
31372
+ }
31373
+ if (((_a = changes.disableRefresh) === null || _a === void 0 ? void 0 : _a.currentValue) === true) {
31374
+ this.refreshButtonAriaLabel = `${this.commonStrings.disabled} ${refreshButtonLabel}`;
31375
+ }
31376
+ else {
31377
+ this.refreshButtonAriaLabel = `${this.commonStrings.enabled} ${refreshButtonLabel}`;
31378
+ }
31379
+ }
31275
31380
  ngOnDestroy() {
31276
31381
  if (this.splitViewPaneToggledSubscription) {
31277
31382
  this.splitViewPaneToggledSubscription.unsubscribe();
@@ -31325,6 +31430,15 @@ class MasterViewComponent extends CoreBaseComponent {
31325
31430
  this.actionBarComponent.updateActionBar();
31326
31431
  }
31327
31432
  }
31433
+ /**
31434
+ * Handles clicking on the refresh button
31435
+ */
31436
+ refreshButtonClicked() {
31437
+ if (this.disableRefresh) {
31438
+ return;
31439
+ }
31440
+ this.refresh.next();
31441
+ }
31328
31442
  handleDetailPaneExpanding(dataViewControl) {
31329
31443
  if (this.splitView) {
31330
31444
  let newDataSelection = null;
@@ -31403,7 +31517,7 @@ class MasterViewComponent extends CoreBaseComponent {
31403
31517
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.dataView = _t.first);
31404
31518
  } }, hostBindings: function MasterViewComponent_HostBindings(rf, ctx) { if (rf & 1) {
31405
31519
  ɵɵlistener("resize", function MasterViewComponent_resize_HostBindingHandler() { return ctx.updateLayout(); }, false, ɵɵresolveWindow);
31406
- } }, inputs: { noSideMargin: "noSideMargin", hideHeader: "hideHeader", header: "header", total: "total", showSelection: "showSelection", showColumnPicker: "showColumnPicker", columnPickerActive: "columnPickerActive", showRefresh: "showRefresh", disableRefresh: "disableRefresh", dataTableMinWidth: "dataTableMinWidth", showFilter: "showFilter", filterActive: "filterActive", enableQueryEditor: "enableQueryEditor", selection: "selection", requireDataItemUniqueId: "requireDataItemUniqueId", showCustomFilter: "showCustomFilter", groupActive: "groupActive", stretchToAbsolute: "stretchToAbsolute", autoExpandDetailsPane: "autoExpandDetailsPane", showGroup: "showGroup" }, outputs: { selectionChange: "selectionChange", columnPicker: "columnPicker", refresh: "refresh", filter: "filter", group: "group", clearSelection: "clearSelection" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c5$3, decls: 24, vars: 27, consts: [["class", "sme-position-flex-none sme-padding-squish-v-lg sme-arrange-word-wrap-break-word sme-font-h3", 3, "hidden", "id", 4, "ngIf"], [3, "layoutChanged"], ["layout", ""], ["name", "narrow", 3, "until"], ["class", "sme-position-flex-none", 3, "sme-padding-horizontal-sm", 4, "ngIf"], [1, "sme-position-flex-none", "sme-arrange-stack-reversed"], ["container", ""], [1, "sme-position-flex-none", "sme-arrange-stack-h"], [1, "sme-focus-zone", "sme-position-flex-none", "sme-arrange-stack-h", "sme-arrange-ws-nowrap", "sme-scheme-secondary-text"], ["role", "status", 1, "sme-layout-action-bar-item", "sme-padding-horizontal-sm", 3, "id"], ["type", "button", "role", "button", "class", "sme-button-trigger sme-layout-action-bar-item-height sme-scheme-secondary-text sme-button-auto-width", 3, "click", 4, "ngIf"], [1, "sme-focus-zone", "sme-arrange-ws-nowrap"], ["type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", "data-uta-id", "column-picker-button", 3, "title", "sme-toggled", "click", 4, "ngIf"], ["type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", 3, "disabled", "title", "click", 4, "ngIf"], ["type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", 3, "title", "sme-toggled", "click", 4, "ngIf"], [1, "sme-focus-zone"], ["class", "sme-margin-horizontal-sm", 4, "ngIf"], ["style", "position: relative;", 4, "ngIf"], ["dataView", ""], [1, "sme-position-flex-none", "sme-padding-squish-v-lg", "sme-arrange-word-wrap-break-word", "sme-font-h3", 3, "hidden", "id"], [1, "sme-position-flex-none"], ["type", "button", "role", "button", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-scheme-secondary-text", "sme-button-auto-width", 3, "click"], ["aria-hidden", "true"], [1, "sme-screen-reader"], ["aria-hidden", "true", 1, "sme-icon", "sme-icon-clear", "sme-margin-left-xs", 3, "title"], ["type", "button", "role", "button", "data-uta-id", "column-picker-button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-tripleColumn"], ["type", "button", "role", "button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "disabled", "title", "click"], [1, "sme-icon", "sme-icon-refresh"], ["type", "button", "role", "button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-filter"], [1, "sme-icon", "sme-icon-groupedList"], [1, "sme-margin-horizontal-sm"], [2, "position", "relative"], [1, "sme-position-flex-none", "sme-layout-action-bar-item"]], template: function MasterViewComponent_Template(rf, ctx) { if (rf & 1) {
31520
+ } }, inputs: { noSideMargin: "noSideMargin", hideHeader: "hideHeader", header: "header", total: "total", showSelection: "showSelection", showColumnPicker: "showColumnPicker", columnPickerActive: "columnPickerActive", showRefresh: "showRefresh", disableRefresh: "disableRefresh", dataTableMinWidth: "dataTableMinWidth", showFilter: "showFilter", filterActive: "filterActive", enableQueryEditor: "enableQueryEditor", selection: "selection", requireDataItemUniqueId: "requireDataItemUniqueId", showCustomFilter: "showCustomFilter", groupActive: "groupActive", stretchToAbsolute: "stretchToAbsolute", autoExpandDetailsPane: "autoExpandDetailsPane", showGroup: "showGroup" }, outputs: { selectionChange: "selectionChange", columnPicker: "columnPicker", refresh: "refresh", filter: "filter", group: "group", clearSelection: "clearSelection" }, features: [ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], ngContentSelectors: _c5$3, decls: 24, vars: 27, consts: [["class", "sme-position-flex-none sme-padding-squish-v-lg sme-arrange-word-wrap-break-word sme-font-h3", 3, "hidden", "id", 4, "ngIf"], [3, "layoutChanged"], ["layout", ""], ["name", "narrow", 3, "until"], ["class", "sme-position-flex-none", 3, "sme-padding-horizontal-sm", 4, "ngIf"], [1, "sme-position-flex-none", "sme-arrange-stack-reversed"], ["container", ""], [1, "sme-position-flex-none", "sme-arrange-stack-h"], [1, "sme-focus-zone", "sme-position-flex-none", "sme-arrange-stack-h", "sme-arrange-ws-nowrap", "sme-scheme-secondary-text"], ["role", "status", 1, "sme-layout-action-bar-item", "sme-padding-horizontal-sm", 3, "id"], ["type", "button", "role", "button", "class", "sme-button-trigger sme-layout-action-bar-item-height sme-scheme-secondary-text sme-button-auto-width", 3, "click", 4, "ngIf"], [1, "sme-focus-zone", "sme-arrange-ws-nowrap"], ["type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", "data-uta-id", "column-picker-button", 3, "title", "sme-toggled", "click", 4, "ngIf"], ["aria-live", "polite", "type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", 3, "title", "click", 4, "ngIf"], ["type", "button", "role", "button", "class", "sme-layout-action-bar-item-height sme-button-trigger sme-button-auto-width", 3, "title", "sme-toggled", "click", 4, "ngIf"], [1, "sme-focus-zone"], ["class", "sme-margin-horizontal-sm", 4, "ngIf"], ["style", "position: relative;", 4, "ngIf"], ["dataView", ""], [1, "sme-position-flex-none", "sme-padding-squish-v-lg", "sme-arrange-word-wrap-break-word", "sme-font-h3", 3, "hidden", "id"], [1, "sme-position-flex-none"], ["type", "button", "role", "button", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-scheme-secondary-text", "sme-button-auto-width", 3, "click"], ["aria-hidden", "true"], [1, "sme-screen-reader"], ["aria-hidden", "true", 1, "sme-icon", "sme-icon-clear", "sme-margin-left-xs", 3, "title"], ["type", "button", "role", "button", "data-uta-id", "column-picker-button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-tripleColumn"], ["aria-live", "polite", "type", "button", "role", "button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-refresh"], ["type", "button", "role", "button", 1, "sme-layout-action-bar-item-height", "sme-button-trigger", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-filter"], [1, "sme-icon", "sme-icon-groupedList"], [1, "sme-margin-horizontal-sm"], [2, "position", "relative"], [1, "sme-position-flex-none", "sme-layout-action-bar-item"]], template: function MasterViewComponent_Template(rf, ctx) { if (rf & 1) {
31407
31521
  ɵɵprojectionDef(_c4$5);
31408
31522
  ɵɵtemplate(0, MasterViewComponent_h2_0_Template, 2, 3, "h2", 0);
31409
31523
  ɵɵelementStart(1, "sme-layout", 1, 2);
@@ -32478,7 +32592,7 @@ function AlertBarComponent_div_1_label_14_div_1_a_1_Template(rf, ctx) { if (rf &
32478
32592
  } if (rf & 2) {
32479
32593
  const link_r13 = ɵɵnextContext().$implicit;
32480
32594
  ɵɵadvance(1);
32481
- ɵɵtextInterpolate(link_r13.displayText);
32595
+ ɵɵtextInterpolate1(" ", link_r13.displayText, " ");
32482
32596
  } }
32483
32597
  function AlertBarComponent_div_1_label_14_div_1_div_2_a_1_Template(rf, ctx) { if (rf & 1) {
32484
32598
  ɵɵelementStart(0, "a", 27);
@@ -32488,7 +32602,7 @@ function AlertBarComponent_div_1_label_14_div_1_div_2_a_1_Template(rf, ctx) { if
32488
32602
  const link_r13 = ɵɵnextContext(2).$implicit;
32489
32603
  ɵɵproperty("href", link_r13.uri, ɵɵsanitizeUrl);
32490
32604
  ɵɵadvance(1);
32491
- ɵɵtextInterpolate(link_r13.displayText);
32605
+ ɵɵtextInterpolate1(" ", link_r13.displayText, " ");
32492
32606
  } }
32493
32607
  function AlertBarComponent_div_1_label_14_div_1_div_2_a_2_Template(rf, ctx) { if (rf & 1) {
32494
32608
  ɵɵelementStart(0, "a", 28);
@@ -32498,7 +32612,7 @@ function AlertBarComponent_div_1_label_14_div_1_div_2_a_2_Template(rf, ctx) { if
32498
32612
  const link_r13 = ɵɵnextContext(2).$implicit;
32499
32613
  ɵɵproperty("routerLink", link_r13.uri);
32500
32614
  ɵɵadvance(1);
32501
- ɵɵtextInterpolate(link_r13.displayText);
32615
+ ɵɵtextInterpolate1(" ", link_r13.displayText, " ");
32502
32616
  } }
32503
32617
  function AlertBarComponent_div_1_label_14_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
32504
32618
  const _r25 = ɵɵgetCurrentView();
@@ -32753,7 +32867,7 @@ class AlertBarComponent extends CoreBaseComponent {
32753
32867
  }
32754
32868
  }
32755
32869
  /** @nocollapse */ AlertBarComponent.ɵfac = function AlertBarComponent_Factory(t) { return new (t || AlertBarComponent)(ɵɵdirectiveInject(Injector), ɵɵdirectiveInject(AlertBarService), ɵɵdirectiveInject(DialogService)); };
32756
- /** @nocollapse */ AlertBarComponent.ɵcmp = ɵɵdefineComponent({ type: AlertBarComponent, selectors: [["sme-alert-bar"]], inputs: { id: "id" }, features: [ɵɵInheritDefinitionFeature], decls: 2, vars: 1, consts: [[1, "sme-layer-notification", "sme-layout-absolute", "sme-layout-notification-popup-list"], ["tabindex", "0", "class", "sme-layout-notification-popup sme-shadow-notification-popup sme-margin-right-sm sme-margin-top-sm sme-arrange-stack-h\n sme-background-color-alt-5 sme-border-color-alt-5 sme-padding-top-xs sme-padding-left-sm sme-padding-right-xs sme-padding-bottom-xs sme-behavior-hover-trigger", 3, "click", 4, "ngFor", "ngForOf"], ["tabindex", "0", 1, "sme-layout-notification-popup", "sme-shadow-notification-popup", "sme-margin-right-sm", "sme-margin-top-sm", "sme-arrange-stack-h", "sme-background-color-alt-5", "sme-border-color-alt-5", "sme-padding-top-xs", "sme-padding-left-sm", "sme-padding-right-xs", "sme-padding-bottom-xs", "sme-behavior-hover-trigger", 3, "click"], [1, "sme-arrange-stack-v"], ["size", "16px", 1, "sme-padding-right-xs", "sme-padding-top-xxxs", 3, "status", "title"], ["role", "button", "class", "sme-button-trigger sme-button-auto-width sme-position-flex-none sme-padding-inset-none sme-icon sme-padding-top-xxs sme-behavior-hover-target-show", 3, "ngClass", "title", "click", 4, "ngIf"], ["role", "alert", "id", "sme-alert-bar-content", 1, "sme-arrange-stack-v", "sme-arrange-overflow-hide-x", "sme-arrange-word-wrap-break-word", "sme-position-stretch-h"], [1, "sme-layout-notification-message"], [1, "sme-arrange-stack-h"], [1, "sme-screen-reader"], [1, "sme-font-family-bold", "sme-font-label", "sme-margin-inset-none", "sme-padding-top-xxxs", "sme-position-stretch-h", "sme-position-left-inline"], ["class", "sme-font-label", 4, "ngIf"], [4, "ngIf"], [1, "sme-arrange-stack-h", "sme-font-label", "sme-color-base-40"], [1, "sme-position-flex-auto", "sme-arrange-ellipsis"], [1, "sme-position-flex-none", "sme-margin-left-xxs"], ["aria-describedby", "sme-alert-bar-content", 1, "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-padding-inset-none", "sme-padding-left-xxs", "sme-padding-right-xxs", 3, "click"], [1, "sme-icon", "sme-icon-cancel", 3, "title"], ["role", "button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-padding-inset-none", "sme-icon", "sme-padding-top-xxs", "sme-behavior-hover-target-show", 3, "ngClass", "title", "click"], [1, "sme-font-label"], [4, "ngFor", "ngForOf"], ["class", "sme-link", 3, "click", 4, "ngIf"], [3, "click", 4, "ngIf"], [1, "sme-link", 3, "click"], [3, "click"], ["class", "sme-link", "target", "_blank", 3, "href", 4, "ngIf"], ["class", "sme-link", 3, "routerLink", 4, "ngIf"], ["target", "_blank", 1, "sme-link", 3, "href"], [1, "sme-link", 3, "routerLink"]], template: function AlertBarComponent_Template(rf, ctx) { if (rf & 1) {
32870
+ /** @nocollapse */ AlertBarComponent.ɵcmp = ɵɵdefineComponent({ type: AlertBarComponent, selectors: [["sme-alert-bar"]], inputs: { id: "id" }, features: [ɵɵInheritDefinitionFeature], decls: 2, vars: 1, consts: [[1, "sme-layer-notification", "sme-layout-absolute", "sme-layout-notification-popup-list"], ["tabindex", "0", "class", "sme-layout-notification-popup sme-shadow-notification-popup sme-margin-right-sm sme-margin-top-sm sme-arrange-stack-h\n sme-background-color-alt-5 sme-border-color-alt-5 sme-padding-top-xs sme-padding-left-sm sme-padding-right-xs sme-padding-bottom-xs sme-behavior-hover-trigger", 3, "click", 4, "ngFor", "ngForOf"], ["tabindex", "0", 1, "sme-layout-notification-popup", "sme-shadow-notification-popup", "sme-margin-right-sm", "sme-margin-top-sm", "sme-arrange-stack-h", "sme-background-color-alt-5", "sme-border-color-alt-5", "sme-padding-top-xs", "sme-padding-left-sm", "sme-padding-right-xs", "sme-padding-bottom-xs", "sme-behavior-hover-trigger", 3, "click"], [1, "sme-arrange-stack-v"], ["size", "16px", 1, "sme-padding-right-xs", "sme-padding-top-xxxs", 3, "status", "title"], ["role", "button", "class", "sme-button-trigger sme-button-auto-width sme-position-flex-none sme-padding-inset-none sme-icon sme-padding-top-xxs sme-behavior-hover-target-show", 3, "ngClass", "title", "click", 4, "ngIf"], ["role", "alert", "id", "sme-alert-bar-content", 1, "sme-arrange-stack-v", "sme-arrange-overflow-hide-x", "sme-arrange-word-wrap-break-word", "sme-position-stretch-h"], [1, "sme-layout-notification-message"], [1, "sme-arrange-stack-h"], [1, "sme-screen-reader"], [1, "sme-font-family-bold", "sme-font-label", "sme-margin-inset-none", "sme-padding-top-xxxs", "sme-position-stretch-h", "sme-position-left-inline"], ["class", "sme-font-label", 4, "ngIf"], [4, "ngIf"], [1, "sme-arrange-stack-h", "sme-font-label", "sme-color-base-40"], [1, "sme-position-flex-auto", "sme-arrange-ellipsis"], [1, "sme-position-flex-none", "sme-margin-left-xxs"], ["data-uta-id", "cancel-alert", "aria-describedby", "sme-alert-bar-content", 1, "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-padding-inset-none", "sme-padding-left-xxs", "sme-padding-right-xxs", 3, "click"], [1, "sme-icon", "sme-icon-cancel", 3, "title"], ["role", "button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-padding-inset-none", "sme-icon", "sme-padding-top-xxs", "sme-behavior-hover-target-show", 3, "ngClass", "title", "click"], [1, "sme-font-label"], [4, "ngFor", "ngForOf"], ["class", "sme-link", 3, "click", 4, "ngIf"], [3, "click", 4, "ngIf"], [1, "sme-link", 3, "click"], [3, "click"], ["class", "sme-link", "target", "_blank", 3, "href", 4, "ngIf"], ["class", "sme-link", 3, "routerLink", 4, "ngIf"], ["target", "_blank", 1, "sme-link", 3, "href"], [1, "sme-link", 3, "routerLink"]], template: function AlertBarComponent_Template(rf, ctx) { if (rf & 1) {
32757
32871
  ɵɵelementStart(0, "div", 0);
32758
32872
  ɵɵtemplate(1, AlertBarComponent_div_1_Template, 23, 13, "div", 1);
32759
32873
  ɵɵelementEnd();
@@ -39926,8 +40040,38 @@ class PageAlertBarModule {
39926
40040
 
39927
40041
  class PropertyGridItemComponent {
39928
40042
  constructor() {
40043
+ /**
40044
+ * The status for the property grid item.
40045
+ */
39929
40046
  this.status = null;
40047
+ /**
40048
+ * It indicates the column span for the layout.
40049
+ */
39930
40050
  this.columnSpan = 1;
40051
+ /**
40052
+ * It indicates the rendering of loading wheel when data unloaded.
40053
+ */
40054
+ this.isAsync = false;
40055
+ /**
40056
+ * It indicates whether the property grid is loading.
40057
+ * This parameter has to have isAsync set to true to use.
40058
+ */
40059
+ this.loading = true;
40060
+ }
40061
+ /**
40062
+ * The setter for value/context.
40063
+ */
40064
+ set value(input) {
40065
+ if (this.isAsync && this.loading) {
40066
+ this.loading = false;
40067
+ }
40068
+ this.internalValue = input;
40069
+ }
40070
+ /**
40071
+ * The getter for value/context.
40072
+ */
40073
+ get value() {
40074
+ return this.internalValue;
39931
40075
  }
39932
40076
  /**
39933
40077
  * Gets the status class to apply to this components value section
@@ -39956,9 +40100,25 @@ class PropertyGridItemComponent {
39956
40100
  return null;
39957
40101
  }
39958
40102
  }
40103
+ ngOnInit() {
40104
+ // Edge case when the data has been assigned before the UI renders,
40105
+ // the functionality to make sure the data is actually loaded.
40106
+ // Basically in this case the set function will be skipped.
40107
+ if (this.isAsync && this.loading && this.value !== undefined) {
40108
+ this.loading = false;
40109
+ }
40110
+ }
40111
+ /**
40112
+ * Give the ability to reset loading.
40113
+ */
40114
+ resetLoading() {
40115
+ if (!this.loading) {
40116
+ this.loading = true;
40117
+ }
40118
+ }
39959
40119
  }
39960
40120
  /** @nocollapse */ PropertyGridItemComponent.ɵfac = function PropertyGridItemComponent_Factory(t) { return new (t || PropertyGridItemComponent)(); };
39961
- /** @nocollapse */ PropertyGridItemComponent.ɵcmp = ɵɵdefineComponent({ type: PropertyGridItemComponent, selectors: [["sme-property-grid-item"]], inputs: { label: "label", value: "value", action: "action", link: "link", tooltip: "tooltip", isExternalLink: "isExternalLink", iconClass: "iconClass", status: "status", columnSpan: "columnSpan" }, decls: 0, vars: 0, template: function PropertyGridItemComponent_Template(rf, ctx) { }, encapsulation: 2 });
40121
+ /** @nocollapse */ PropertyGridItemComponent.ɵcmp = ɵɵdefineComponent({ type: PropertyGridItemComponent, selectors: [["sme-property-grid-item"]], inputs: { label: "label", value: "value", action: "action", link: "link", tooltip: "tooltip", isExternalLink: "isExternalLink", iconClass: "iconClass", status: "status", columnSpan: "columnSpan", isAsync: "isAsync" }, decls: 0, vars: 0, template: function PropertyGridItemComponent_Template(rf, ctx) { }, encapsulation: 2 });
39962
40122
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(PropertyGridItemComponent, [{
39963
40123
  type: Component,
39964
40124
  args: [{
@@ -39983,6 +40143,8 @@ class PropertyGridItemComponent {
39983
40143
  type: Input
39984
40144
  }], columnSpan: [{
39985
40145
  type: Input
40146
+ }], isAsync: [{
40147
+ type: Input
39986
40148
  }] }); })();
39987
40149
 
39988
40150
  const _c0$1m = ["readonlyTemplate"];
@@ -40040,57 +40202,75 @@ function PropertyGridComponent_sme_layout_item_5_Template(rf, ctx) { if (rf & 1)
40040
40202
  ɵɵadvance(1);
40041
40203
  ɵɵproperty("ngTemplateOutlet", ctx_r3.getTemplate(item_r14))("ngTemplateOutletContext", ɵɵpureFunction2(7, _c4$6, item_r14, i_r15));
40042
40204
  } }
40043
- function PropertyGridComponent_ng_template_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
40205
+ function PropertyGridComponent_ng_template_6_sme_loading_wheel_0_Template(rf, ctx) { if (rf & 1) {
40206
+ ɵɵelement(0, "sme-loading-wheel", 23);
40207
+ } if (rf & 2) {
40208
+ ɵɵproperty("inline", true)("isBackgroundTransparent", true);
40209
+ } }
40210
+ function PropertyGridComponent_ng_template_6_ng_container_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
40044
40211
  ɵɵelementContainer(0);
40045
40212
  } }
40046
- function PropertyGridComponent_ng_template_6_span_2_Template(rf, ctx) { if (rf & 1) {
40213
+ function PropertyGridComponent_ng_template_6_ng_container_1_span_3_Template(rf, ctx) { if (rf & 1) {
40047
40214
  ɵɵelementStart(0, "span");
40048
40215
  ɵɵtext(1);
40049
40216
  ɵɵelementEnd();
40050
40217
  } if (rf & 2) {
40051
- const item_r20 = ɵɵnextContext().$implicit;
40052
- const ctx_r23 = ɵɵnextContext();
40218
+ const item_r20 = ɵɵnextContext(2).$implicit;
40219
+ const ctx_r25 = ɵɵnextContext();
40053
40220
  ɵɵadvance(1);
40054
- ɵɵtextInterpolate(ctx_r23.stringifyValue(item_r20.value));
40221
+ ɵɵtextInterpolate(ctx_r25.stringifyValue(item_r20.value));
40055
40222
  } }
40056
- function PropertyGridComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
40057
- ɵɵelementStart(0, "p", 21);
40058
- ɵɵtemplate(1, PropertyGridComponent_ng_template_6_ng_container_1_Template, 1, 0, "ng-container", 19);
40059
- ɵɵtemplate(2, PropertyGridComponent_ng_template_6_span_2_Template, 2, 1, "span", 22);
40223
+ function PropertyGridComponent_ng_template_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
40224
+ ɵɵelementContainerStart(0);
40225
+ ɵɵelementStart(1, "p", 24);
40226
+ ɵɵtemplate(2, PropertyGridComponent_ng_template_6_ng_container_1_ng_container_2_Template, 1, 0, "ng-container", 19);
40227
+ ɵɵtemplate(3, PropertyGridComponent_ng_template_6_ng_container_1_span_3_Template, 2, 1, "span", 22);
40060
40228
  ɵɵelementEnd();
40229
+ ɵɵelementContainerEnd();
40061
40230
  } if (rf & 2) {
40062
- const item_r20 = ctx.$implicit;
40063
- const i_r21 = ctx.index;
40064
- const ctx_r5 = ɵɵnextContext();
40231
+ const ctx_r27 = ɵɵnextContext();
40232
+ const i_r21 = ctx_r27.index;
40233
+ const item_r20 = ctx_r27.$implicit;
40234
+ const ctx_r23 = ɵɵnextContext();
40065
40235
  const _r12 = ɵɵreference(15);
40066
- ɵɵattribute("aria-labelledby", ctx_r5.idBag.labelSpan + i_r21)("aria-describedby", ctx_r5.idBag.detailsSpan + i_r21);
40236
+ ɵɵadvance(1);
40237
+ ɵɵattribute("aria-labelledby", ctx_r23.idBag.labelSpan + i_r21)("aria-describedby", ctx_r23.idBag.detailsSpan + i_r21);
40067
40238
  ɵɵadvance(1);
40068
40239
  ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(5, _c4$6, item_r20, i_r21));
40069
40240
  ɵɵadvance(1);
40070
40241
  ɵɵproperty("ngIf", !item_r20.link && !item_r20.action);
40071
40242
  } }
40243
+ function PropertyGridComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
40244
+ ɵɵtemplate(0, PropertyGridComponent_ng_template_6_sme_loading_wheel_0_Template, 1, 2, "sme-loading-wheel", 21);
40245
+ ɵɵtemplate(1, PropertyGridComponent_ng_template_6_ng_container_1_Template, 4, 8, "ng-container", 22);
40246
+ } if (rf & 2) {
40247
+ const item_r20 = ctx.$implicit;
40248
+ ɵɵproperty("ngIf", item_r20.loading && item_r20.isAsync);
40249
+ ɵɵadvance(1);
40250
+ ɵɵproperty("ngIf", !item_r20.loading || !item_r20.isAsync);
40251
+ } }
40072
40252
  function PropertyGridComponent_ng_template_8_ng_container_1_Template(rf, ctx) { if (rf & 1) {
40073
40253
  ɵɵelementContainer(0);
40074
40254
  } }
40075
40255
  function PropertyGridComponent_ng_template_8_Template(rf, ctx) { if (rf & 1) {
40076
40256
  ɵɵelementStart(0, "p");
40077
40257
  ɵɵtemplate(1, PropertyGridComponent_ng_template_8_ng_container_1_Template, 1, 0, "ng-container", 19);
40078
- ɵɵelementStart(2, "a", 23);
40079
- ɵɵlistener("click", function PropertyGridComponent_ng_template_8_Template_a_click_2_listener() { const item_r25 = ctx.$implicit; return item_r25.action(item_r25); });
40258
+ ɵɵelementStart(2, "a", 25);
40259
+ ɵɵlistener("click", function PropertyGridComponent_ng_template_8_Template_a_click_2_listener() { const item_r28 = ctx.$implicit; return item_r28.action(item_r28); });
40080
40260
  ɵɵtext(3);
40081
40261
  ɵɵelementEnd();
40082
40262
  ɵɵelementEnd();
40083
40263
  } if (rf & 2) {
40084
- const item_r25 = ctx.$implicit;
40085
- const i_r26 = ctx.index;
40264
+ const item_r28 = ctx.$implicit;
40265
+ const i_r29 = ctx.index;
40086
40266
  const ctx_r7 = ɵɵnextContext();
40087
40267
  const _r12 = ɵɵreference(15);
40088
40268
  ɵɵadvance(1);
40089
- ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(5, _c4$6, item_r25, i_r26));
40269
+ ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(5, _c4$6, item_r28, i_r29));
40090
40270
  ɵɵadvance(1);
40091
- ɵɵattribute("aria-labelledby", ctx_r7.idBag.labelSpan + i_r26 + " " + (ctx_r7.idBag.valueSpan + i_r26))("aria-describedby", ctx_r7.idBag.detailsSpan + i_r26);
40271
+ ɵɵattribute("aria-labelledby", ctx_r7.idBag.labelSpan + i_r29 + " " + (ctx_r7.idBag.valueSpan + i_r29))("aria-describedby", ctx_r7.idBag.detailsSpan + i_r29);
40092
40272
  ɵɵadvance(1);
40093
- ɵɵtextInterpolate(item_r25.value);
40273
+ ɵɵtextInterpolate(item_r28.value);
40094
40274
  } }
40095
40275
  function PropertyGridComponent_ng_template_10_ng_container_1_Template(rf, ctx) { if (rf & 1) {
40096
40276
  ɵɵelementContainer(0);
@@ -40098,22 +40278,22 @@ function PropertyGridComponent_ng_template_10_ng_container_1_Template(rf, ctx) {
40098
40278
  function PropertyGridComponent_ng_template_10_Template(rf, ctx) { if (rf & 1) {
40099
40279
  ɵɵelementStart(0, "p");
40100
40280
  ɵɵtemplate(1, PropertyGridComponent_ng_template_10_ng_container_1_Template, 1, 0, "ng-container", 19);
40101
- ɵɵelementStart(2, "a", 24);
40281
+ ɵɵelementStart(2, "a", 26);
40102
40282
  ɵɵtext(3);
40103
40283
  ɵɵelementEnd();
40104
40284
  ɵɵelementEnd();
40105
40285
  } if (rf & 2) {
40106
- const item_r29 = ctx.$implicit;
40107
- const i_r30 = ctx.index;
40286
+ const item_r32 = ctx.$implicit;
40287
+ const i_r33 = ctx.index;
40108
40288
  const ctx_r9 = ɵɵnextContext();
40109
40289
  const _r12 = ɵɵreference(15);
40110
40290
  ɵɵadvance(1);
40111
- ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(6, _c4$6, item_r29, i_r30));
40291
+ ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(6, _c4$6, item_r32, i_r33));
40112
40292
  ɵɵadvance(1);
40113
- ɵɵproperty("routerLink", item_r29.link);
40114
- ɵɵattribute("aria-labelledby", ctx_r9.idBag.labelSpan + i_r30 + " " + (ctx_r9.idBag.valueSpan + i_r30))("aria-describedby", ctx_r9.idBag.detailsSpan + i_r30);
40293
+ ɵɵproperty("routerLink", item_r32.link);
40294
+ ɵɵattribute("aria-labelledby", ctx_r9.idBag.labelSpan + i_r33 + " " + (ctx_r9.idBag.valueSpan + i_r33))("aria-describedby", ctx_r9.idBag.detailsSpan + i_r33);
40115
40295
  ɵɵadvance(1);
40116
- ɵɵtextInterpolate(item_r29.value);
40296
+ ɵɵtextInterpolate(item_r32.value);
40117
40297
  } }
40118
40298
  function PropertyGridComponent_ng_template_12_ng_container_1_Template(rf, ctx) { if (rf & 1) {
40119
40299
  ɵɵelementContainer(0);
@@ -40121,46 +40301,46 @@ function PropertyGridComponent_ng_template_12_ng_container_1_Template(rf, ctx) {
40121
40301
  function PropertyGridComponent_ng_template_12_Template(rf, ctx) { if (rf & 1) {
40122
40302
  ɵɵelementStart(0, "p");
40123
40303
  ɵɵtemplate(1, PropertyGridComponent_ng_template_12_ng_container_1_Template, 1, 0, "ng-container", 19);
40124
- ɵɵelementStart(2, "a", 25);
40304
+ ɵɵelementStart(2, "a", 27);
40125
40305
  ɵɵelementStart(3, "span");
40126
40306
  ɵɵtext(4);
40127
40307
  ɵɵelementEnd();
40128
- ɵɵelement(5, "span", 26);
40308
+ ɵɵelement(5, "span", 28);
40129
40309
  ɵɵelementEnd();
40130
40310
  ɵɵelementEnd();
40131
40311
  } if (rf & 2) {
40132
- const item_r32 = ctx.$implicit;
40133
- const i_r33 = ctx.index;
40312
+ const item_r35 = ctx.$implicit;
40313
+ const i_r36 = ctx.index;
40134
40314
  const ctx_r11 = ɵɵnextContext();
40135
40315
  const _r12 = ɵɵreference(15);
40136
40316
  ɵɵadvance(1);
40137
- ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(6, _c4$6, item_r32, i_r33));
40317
+ ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", ɵɵpureFunction2(6, _c4$6, item_r35, i_r36));
40138
40318
  ɵɵadvance(1);
40139
- ɵɵproperty("href", item_r32.link, ɵɵsanitizeUrl);
40140
- ɵɵattribute("aria-labelledby", ctx_r11.idBag.labelSpan + i_r33 + " " + (ctx_r11.idBag.valueSpan + i_r33))("aria-describedby", ctx_r11.idBag.detailsSpan + i_r33);
40319
+ ɵɵproperty("href", item_r35.link, ɵɵsanitizeUrl);
40320
+ ɵɵattribute("aria-labelledby", ctx_r11.idBag.labelSpan + i_r36 + " " + (ctx_r11.idBag.valueSpan + i_r36))("aria-describedby", ctx_r11.idBag.detailsSpan + i_r36);
40141
40321
  ɵɵadvance(2);
40142
- ɵɵtextInterpolate(item_r32.value);
40322
+ ɵɵtextInterpolate(item_r35.value);
40143
40323
  } }
40144
40324
  function PropertyGridComponent_ng_template_14_span_0_Template(rf, ctx) { if (rf & 1) {
40145
40325
  ɵɵelement(0, "span");
40146
40326
  } if (rf & 2) {
40147
- const item_r35 = ɵɵnextContext().$implicit;
40148
- ɵɵclassMapInterpolate1("sme-margin-right-xs sme-icon ", item_r35.iconClass, "");
40327
+ const item_r38 = ɵɵnextContext().$implicit;
40328
+ ɵɵclassMapInterpolate1("sme-margin-right-xs sme-icon ", item_r38.iconClass, "");
40149
40329
  } }
40150
40330
  function PropertyGridComponent_ng_template_14_sme_status_icon_1_Template(rf, ctx) { if (rf & 1) {
40151
- ɵɵelement(0, "sme-status-icon", 29);
40331
+ ɵɵelement(0, "sme-status-icon", 31);
40152
40332
  } if (rf & 2) {
40153
- const item_r35 = ɵɵnextContext().$implicit;
40154
- ɵɵproperty("status", item_r35.status);
40333
+ const item_r38 = ɵɵnextContext().$implicit;
40334
+ ɵɵproperty("status", item_r38.status);
40155
40335
  } }
40156
40336
  function PropertyGridComponent_ng_template_14_Template(rf, ctx) { if (rf & 1) {
40157
- ɵɵtemplate(0, PropertyGridComponent_ng_template_14_span_0_Template, 1, 3, "span", 27);
40158
- ɵɵtemplate(1, PropertyGridComponent_ng_template_14_sme_status_icon_1_Template, 1, 1, "sme-status-icon", 28);
40337
+ ɵɵtemplate(0, PropertyGridComponent_ng_template_14_span_0_Template, 1, 3, "span", 29);
40338
+ ɵɵtemplate(1, PropertyGridComponent_ng_template_14_sme_status_icon_1_Template, 1, 1, "sme-status-icon", 30);
40159
40339
  } if (rf & 2) {
40160
- const item_r35 = ctx.$implicit;
40161
- ɵɵproperty("ngIf", !!item_r35.iconClass);
40340
+ const item_r38 = ctx.$implicit;
40341
+ ɵɵproperty("ngIf", !!item_r38.iconClass);
40162
40342
  ɵɵadvance(1);
40163
- ɵɵproperty("ngIf", item_r35.status !== null && !item_r35.iconClass);
40343
+ ɵɵproperty("ngIf", item_r38.status !== null && !item_r38.iconClass);
40164
40344
  } }
40165
40345
  /**
40166
40346
  *
@@ -40204,7 +40384,7 @@ class PropertyGridComponent extends CoreBaseComponent {
40204
40384
  */
40205
40385
  this.layoutItemWidth = 300;
40206
40386
  /**
40207
- * The source name to use for logging
40387
+ * The orientation for the property grid
40208
40388
  */
40209
40389
  this.orientation = 'horizontal';
40210
40390
  /**
@@ -40303,14 +40483,14 @@ class PropertyGridComponent extends CoreBaseComponent {
40303
40483
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.externalLinkTemplate = _t.first);
40304
40484
  } }, inputs: { orientation: "orientation" }, outputs: { layoutChanged: "layoutChanged" }, features: [ɵɵProvidersFeature([
40305
40485
  { provide: SME_LAYOUT_PROVIDER, useExisting: forwardRef((() => PropertyGridComponent)) }
40306
- ]), ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], decls: 16, vars: 6, consts: [[1, "sme-position-inset-none", "sme-position-stretch-h", 3, "padLastItem"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "medium", 3, "until", "columns", 4, "ngIf"], ["name", "wide", 3, "columns", 4, "ngIf"], [3, "columnSpan", "maxWidth", 4, "ngFor", "ngForOf"], ["readonlyTemplate", ""], ["actionLinkTemplate", ""], ["internalLinkTemplate", ""], ["externalLinkTemplate", ""], ["iconTemplate", ""], ["name", "medium", 3, "until", "columns"], ["name", "wide", 3, "columns"], [3, "columnSpan", "maxWidth"], ["smeTooltipZone", "", 1, "sme-property-grid-item"], ["zone", "smeTooltipZone"], [1, "sme-arrange-stack-h"], ["class", "sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs", "aria-hidden", "true", 3, "title", "tooltipZone", 4, "ngIf"], [1, "sme-screen-reader"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["aria-hidden", "true", 1, "sme-position-flex-none", "sme-icon", "sme-icon-info", "sme-info-bubble", "sme-margin-left-xs", 3, "title", "tooltipZone"], [1, "read-only-template"], [4, "ngIf"], ["tabindex", "0", "role", "link", 1, "sme-link", "sme-focus-zone", "action-link-template", 3, "click"], ["role", "link", 1, "sme-link", "sme-focus-zone", 3, "routerLink"], ["role", "link", "target", "_blank", 1, "sme-link", "sme-focus-zone", 3, "href"], [1, "sme-icon", "sme-icon-openInNewWindow", "sme-margin-left-xs"], [3, "class", 4, "ngIf"], ["class", "sme-layout-inline-block sme-margin-right-xs ", "size", "16px", 3, "status", 4, "ngIf"], ["size", "16px", 1, "sme-layout-inline-block", "sme-margin-right-xs", 3, "status"]], template: function PropertyGridComponent_Template(rf, ctx) { if (rf & 1) {
40486
+ ]), ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], decls: 16, vars: 6, consts: [[1, "sme-position-inset-none", "sme-position-stretch-h", 3, "padLastItem"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "medium", 3, "until", "columns", 4, "ngIf"], ["name", "wide", 3, "columns", 4, "ngIf"], [3, "columnSpan", "maxWidth", 4, "ngFor", "ngForOf"], ["readonlyTemplate", ""], ["actionLinkTemplate", ""], ["internalLinkTemplate", ""], ["externalLinkTemplate", ""], ["iconTemplate", ""], ["name", "medium", 3, "until", "columns"], ["name", "wide", 3, "columns"], [3, "columnSpan", "maxWidth"], ["tabindex", "0", "smeTooltipZone", "", 1, "sme-property-grid-item"], ["zone", "smeTooltipZone"], [1, "sme-arrange-stack-h"], ["class", "sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs", "aria-hidden", "true", 3, "title", "tooltipZone", 4, "ngIf"], [1, "sme-screen-reader"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["aria-hidden", "true", 1, "sme-position-flex-none", "sme-icon", "sme-icon-info", "sme-info-bubble", "sme-margin-left-xs", 3, "title", "tooltipZone"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent", 4, "ngIf"], [4, "ngIf"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent"], [1, "read-only-template"], ["tabindex", "0", "role", "link", 1, "sme-link", "sme-focus-zone", "action-link-template", 3, "click"], ["role", "link", 1, "sme-link", "sme-focus-zone", 3, "routerLink"], ["role", "link", "target", "_blank", 1, "sme-link", "sme-focus-zone", 3, "href"], [1, "sme-icon", "sme-icon-openInNewWindow", "sme-margin-left-xs"], [3, "class", 4, "ngIf"], ["class", "sme-layout-inline-block sme-margin-right-xs ", "size", "16px", 3, "status", 4, "ngIf"], ["size", "16px", 1, "sme-layout-inline-block", "sme-margin-right-xs", 3, "status"]], template: function PropertyGridComponent_Template(rf, ctx) { if (rf & 1) {
40307
40487
  ɵɵelementStart(0, "sme-layout", 0, 1);
40308
40488
  ɵɵelement(2, "sme-layout-definition", 2);
40309
40489
  ɵɵtemplate(3, PropertyGridComponent_sme_layout_definition_3_Template, 1, 2, "sme-layout-definition", 3);
40310
40490
  ɵɵtemplate(4, PropertyGridComponent_sme_layout_definition_4_Template, 1, 1, "sme-layout-definition", 4);
40311
40491
  ɵɵtemplate(5, PropertyGridComponent_sme_layout_item_5_Template, 10, 10, "sme-layout-item", 5);
40312
40492
  ɵɵelementEnd();
40313
- ɵɵtemplate(6, PropertyGridComponent_ng_template_6_Template, 3, 8, "ng-template", null, 6, ɵɵtemplateRefExtractor);
40493
+ ɵɵtemplate(6, PropertyGridComponent_ng_template_6_Template, 2, 2, "ng-template", null, 6, ɵɵtemplateRefExtractor);
40314
40494
  ɵɵtemplate(8, PropertyGridComponent_ng_template_8_Template, 4, 8, "ng-template", null, 7, ɵɵtemplateRefExtractor);
40315
40495
  ɵɵtemplate(10, PropertyGridComponent_ng_template_10_Template, 4, 9, "ng-template", null, 8, ɵɵtemplateRefExtractor);
40316
40496
  ɵɵtemplate(12, PropertyGridComponent_ng_template_12_Template, 6, 9, "ng-template", null, 9, ɵɵtemplateRefExtractor);
@@ -40325,11 +40505,7 @@ class PropertyGridComponent extends CoreBaseComponent {
40325
40505
  ɵɵproperty("ngIf", ctx.orientation !== "vertical");
40326
40506
  ɵɵadvance(1);
40327
40507
  ɵɵproperty("ngForOf", ctx.items);
40328
- } }, directives: [LayoutComponent, LayoutDefinitionComponent, NgIf, NgForOf, LayoutItemComponent, TooltipZoneDirective, NgTemplateOutlet, TooltipDirective, RouterLinkWithHref, StatusIconComponent], encapsulation: 2 });
40329
- __decorate([
40330
- SmeInject(ChangeDetectorRef),
40331
- __metadata("design:type", ChangeDetectorRef)
40332
- ], PropertyGridComponent.prototype, "changeDetector", void 0);
40508
+ } }, directives: [LayoutComponent, LayoutDefinitionComponent, NgIf, NgForOf, LayoutItemComponent, TooltipZoneDirective, NgTemplateOutlet, TooltipDirective, LoadingWheelComponent, RouterLinkWithHref, StatusIconComponent], encapsulation: 2 });
40333
40509
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(PropertyGridComponent, [{
40334
40510
  type: Component,
40335
40511
  args: [{
@@ -40365,7 +40541,7 @@ __decorate([
40365
40541
  type: Input
40366
40542
  }], layoutChanged: [{
40367
40543
  type: Output
40368
- }], changeDetector: [] }); })();
40544
+ }] }); })();
40369
40545
 
40370
40546
  class PropertyGridModule {
40371
40547
  }
@@ -40375,6 +40551,7 @@ class PropertyGridModule {
40375
40551
  RouterModule,
40376
40552
  CommonModule,
40377
40553
  LayoutModule,
40554
+ LoadingWheelModule,
40378
40555
  IconModule,
40379
40556
  TooltipModule
40380
40557
  ]] });
@@ -40382,6 +40559,7 @@ class PropertyGridModule {
40382
40559
  PropertyGridItemComponent], imports: [RouterModule,
40383
40560
  CommonModule,
40384
40561
  LayoutModule,
40562
+ LoadingWheelModule,
40385
40563
  IconModule,
40386
40564
  TooltipModule], exports: [PropertyGridComponent,
40387
40565
  PropertyGridItemComponent] }); })();
@@ -40400,6 +40578,7 @@ class PropertyGridModule {
40400
40578
  RouterModule,
40401
40579
  CommonModule,
40402
40580
  LayoutModule,
40581
+ LoadingWheelModule,
40403
40582
  IconModule,
40404
40583
  TooltipModule
40405
40584
  ]
@@ -44496,19 +44675,43 @@ class SettingsFormService {
44496
44675
  type: Injectable
44497
44676
  }], function () { return [{ type: Router }]; }, null); })();
44498
44677
 
44678
+ function SettingsComponent_div_1_span_3_Template(rf, ctx) { if (rf & 1) {
44679
+ ɵɵelementStart(0, "span", 12);
44680
+ ɵɵtext(1);
44681
+ ɵɵelementEnd();
44682
+ } if (rf & 2) {
44683
+ const ctx_r2 = ɵɵnextContext(2);
44684
+ ɵɵadvance(1);
44685
+ ɵɵtextInterpolate(ctx_r2.headerSeparator);
44686
+ } }
44687
+ function SettingsComponent_div_1_span_4_Template(rf, ctx) { if (rf & 1) {
44688
+ ɵɵelementStart(0, "span", 13);
44689
+ ɵɵtext(1);
44690
+ ɵɵelementEnd();
44691
+ } if (rf & 2) {
44692
+ const ctx_r3 = ɵɵnextContext(2);
44693
+ ɵɵadvance(1);
44694
+ ɵɵtextInterpolate(ctx_r3.selectedSettingsTitle);
44695
+ } }
44499
44696
  function SettingsComponent_div_1_Template(rf, ctx) { if (rf & 1) {
44500
44697
  ɵɵelementStart(0, "div", 8);
44501
44698
  ɵɵelementStart(1, "h2", 9);
44502
44699
  ɵɵtext(2);
44700
+ ɵɵtemplate(3, SettingsComponent_div_1_span_3_Template, 2, 1, "span", 10);
44701
+ ɵɵtemplate(4, SettingsComponent_div_1_span_4_Template, 2, 1, "span", 11);
44503
44702
  ɵɵelementEnd();
44504
44703
  ɵɵelementEnd();
44505
44704
  } if (rf & 2) {
44506
44705
  const ctx_r0 = ɵɵnextContext();
44507
44706
  ɵɵadvance(1);
44508
- ɵɵproperty("title", ctx_r0.settingsTitle);
44509
- ɵɵattribute("aria-label", ctx_r0.settingsTitle);
44707
+ ɵɵproperty("title", ctx_r0.fullSettingsTitle);
44708
+ ɵɵattribute("aria-label", ctx_r0.fullSettingsTitle);
44510
44709
  ɵɵadvance(1);
44511
- ɵɵtextInterpolate(ctx_r0.settingsTitle);
44710
+ ɵɵtextInterpolate1("", ctx_r0.settingsTitle, " ");
44711
+ ɵɵadvance(1);
44712
+ ɵɵproperty("ngIf", ctx_r0.selectedSettingsTitle);
44713
+ ɵɵadvance(1);
44714
+ ɵɵproperty("ngIf", ctx_r0.selectedSettingsTitle);
44512
44715
  } }
44513
44716
  const _c0$1u = [[["sme-settings-navigation"]], [["sme-settings-header"]], [["sme-settings-content"]], [["sme-settings-footer"]]];
44514
44717
  const _c1$O = ["sme-settings-navigation", "sme-settings-header", "sme-settings-content", "sme-settings-footer"];
@@ -44544,6 +44747,10 @@ class SettingsComponent extends CoreBaseComponent {
44544
44747
  super(injector);
44545
44748
  this.allForms = [];
44546
44749
  this.autoFocus = true;
44750
+ /**
44751
+ * Separator used in sticky header on top of Settings page
44752
+ */
44753
+ this.headerSeparator = '|';
44547
44754
  }
44548
44755
  /**
44549
44756
  * The source name to use for logging
@@ -44562,6 +44769,7 @@ class SettingsComponent extends CoreBaseComponent {
44562
44769
  // If we have a new form, it means the user navigated so we reset the autofocus
44563
44770
  this.autoFocus = true;
44564
44771
  }), this.settingsForms.formRemoved().subscribe((form) => { MsftSme.remove(this.allForms, form); }));
44772
+ this.fullSettingsTitle = this.settingsTitle;
44565
44773
  }
44566
44774
  ngOnDestroy() {
44567
44775
  super.ngOnDestroy();
@@ -44615,6 +44823,14 @@ class SettingsComponent extends CoreBaseComponent {
44615
44823
  return this.addPadding = this.layoutComponent.currentLayoutDefinition.name === 'narrow';
44616
44824
  }
44617
44825
  }
44826
+ /**
44827
+ * Update this.settingsTitle (header of the setting page) to newly selected setting item
44828
+ */
44829
+ updateSelectedSettingTitle(newSelectedSettingTitle) {
44830
+ this.selectedSettingsTitle = newSelectedSettingTitle;
44831
+ const fullSettingsTitlePostFix = this.selectedSettingsTitle ? this.headerSeparator + ' ' + this.selectedSettingsTitle : '';
44832
+ this.fullSettingsTitle = this.settingsTitle + ' ' + fullSettingsTitlePostFix;
44833
+ }
44618
44834
  }
44619
44835
  /** @nocollapse */ SettingsComponent.ɵfac = function SettingsComponent_Factory(t) { return new (t || SettingsComponent)(ɵɵdirectiveInject(Injector)); };
44620
44836
  /** @nocollapse */ SettingsComponent.ɵcmp = ɵɵdefineComponent({ type: SettingsComponent, selectors: [["sme-settings"]], viewQuery: function SettingsComponent_Query(rf, ctx) { if (rf & 1) {
@@ -44622,10 +44838,10 @@ class SettingsComponent extends CoreBaseComponent {
44622
44838
  } if (rf & 2) {
44623
44839
  let _t;
44624
44840
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.layoutComponent = _t.first);
44625
- } }, inputs: { backRoute: "backRoute", settingsTitle: "settingsTitle" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$O, decls: 12, vars: 8, consts: [[1, "sme-arrange-stack-v", "sme-layout-relative", "sme-arrange-overflow-auto-y", "sme-position-stretch"], ["class", " sme-layout-tool-header sme-position-flex-none sme-arrange-ellipsis", 4, "ngIf"], [1, "sme-position-flex-auto", "sme-arrange-overflow-auto", 3, "padLastItem", "layoutChanged"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "wide", 3, "columns"], [3, "columnSpan"], [3, "columnSpan", "ngClass"], [1, "sme-layout-tool-header", "sme-position-flex-none", "sme-arrange-ellipsis"], [1, "sme-font-h3", 3, "title"]], template: function SettingsComponent_Template(rf, ctx) { if (rf & 1) {
44841
+ } }, inputs: { backRoute: "backRoute", settingsTitle: "settingsTitle", selectedSettingsTitle: "selectedSettingsTitle" }, features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$O, decls: 12, vars: 10, consts: [[1, "sme-arrange-stack-v", "sme-layout-relative", "sme-arrange-overflow-auto-y", "sme-position-stretch"], ["class", "sme-layout-tool-header sme-position-flex-none sme-arrange-ellipsis sme-padding-bottom-none sme-padding-left-md", 4, "ngIf"], [1, "sme-position-flex-auto", "sme-arrange-overflow-auto", 3, "padLastItem", "layoutChanged"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "wide", 3, "columns", "addBottomPadding"], [3, "columnSpan", "ngClass"], [1, "sme-padding-top-xs", 3, "columnSpan", "ngClass"], [1, "sme-layout-tool-header", "sme-position-flex-none", "sme-arrange-ellipsis", "sme-padding-bottom-none", "sme-padding-left-md"], [1, "sme-font-h3", 3, "title"], ["class", "sme-padding-horizontal-sm sme-font-family-normal", 4, "ngIf"], ["class", "sme-font-family-normal", 4, "ngIf"], [1, "sme-padding-horizontal-sm", "sme-font-family-normal"], [1, "sme-font-family-normal"]], template: function SettingsComponent_Template(rf, ctx) { if (rf & 1) {
44626
44842
  ɵɵprojectionDef(_c0$1u);
44627
44843
  ɵɵelementStart(0, "div", 0);
44628
- ɵɵtemplate(1, SettingsComponent_div_1_Template, 3, 3, "div", 1);
44844
+ ɵɵtemplate(1, SettingsComponent_div_1_Template, 5, 5, "div", 1);
44629
44845
  ɵɵelementStart(2, "sme-layout", 2, 3);
44630
44846
  ɵɵlistener("layoutChanged", function SettingsComponent_Template_sme_layout_layoutChanged_2_listener() { return ctx.isPaddingRequired(); });
44631
44847
  ɵɵelement(4, "sme-layout-definition", 4);
@@ -44641,6 +44857,7 @@ class SettingsComponent extends CoreBaseComponent {
44641
44857
  ɵɵelementEnd();
44642
44858
  ɵɵelementEnd();
44643
44859
  } if (rf & 2) {
44860
+ const _r1 = ɵɵreference(3);
44644
44861
  ɵɵadvance(1);
44645
44862
  ɵɵproperty("ngIf", ctx.settingsTitle);
44646
44863
  ɵɵadvance(1);
@@ -44648,9 +44865,9 @@ class SettingsComponent extends CoreBaseComponent {
44648
44865
  ɵɵadvance(2);
44649
44866
  ɵɵproperty("until", 800)("columns", 1);
44650
44867
  ɵɵadvance(1);
44651
- ɵɵproperty("columns", 5);
44868
+ ɵɵproperty("columns", 5)("addBottomPadding", false);
44652
44869
  ɵɵadvance(1);
44653
- ɵɵproperty("columnSpan", 1);
44870
+ ɵɵproperty("columnSpan", 1)("ngClass", _r1.currentLayoutDefinitionName === "narrow" ? "" : "sme-position-stretch-v");
44654
44871
  ɵɵadvance(2);
44655
44872
  ɵɵproperty("columnSpan", 4)("ngClass", ctx.addPadding ? "sme-position-stretch sme-padding-left-xl" : "sme-position-stretch");
44656
44873
  } }, directives: [NgIf, LayoutComponent, LayoutDefinitionComponent, LayoutItemComponent, NgClass, TooltipDirective], encapsulation: 2 });
@@ -44672,14 +44889,17 @@ __decorate([
44672
44889
  type: Input
44673
44890
  }], settingsTitle: [{
44674
44891
  type: Input
44892
+ }], selectedSettingsTitle: [{
44893
+ type: Input
44675
44894
  }], layoutComponent: [{
44676
44895
  type: ViewChild,
44677
44896
  args: [LayoutComponent]
44678
44897
  }], settingsForms: [], dialogService: [] }); })();
44679
44898
 
44899
+ const _c0$1v = ["searchTextBox"];
44680
44900
  function CommonSettingsComponent_header_2_Template(rf, ctx) { if (rf & 1) {
44681
- ɵɵelementStart(0, "header", 7);
44682
- ɵɵelementStart(1, "h2", 8);
44901
+ ɵɵelementStart(0, "header", 12);
44902
+ ɵɵelementStart(1, "h2", 13);
44683
44903
  ɵɵtext(2);
44684
44904
  ɵɵelementEnd();
44685
44905
  ɵɵelementEnd();
@@ -44690,94 +44910,94 @@ function CommonSettingsComponent_header_2_Template(rf, ctx) { if (rf & 1) {
44690
44910
  ɵɵadvance(1);
44691
44911
  ɵɵtextInterpolate(ctx_r0.settingsTitle);
44692
44912
  } }
44693
- function CommonSettingsComponent_li_6_h3_1_Template(rf, ctx) { if (rf & 1) {
44694
- ɵɵelementStart(0, "h3", 12);
44913
+ function CommonSettingsComponent_li_10_h4_1_Template(rf, ctx) { if (rf & 1) {
44914
+ ɵɵelementStart(0, "h4", 17);
44695
44915
  ɵɵtext(1);
44696
44916
  ɵɵelementEnd();
44697
44917
  } if (rf & 2) {
44698
- const ctx_r8 = ɵɵnextContext();
44699
- const j_r5 = ctx_r8.index;
44700
- const group_r4 = ctx_r8.$implicit;
44701
- const ctx_r6 = ɵɵnextContext();
44702
- ɵɵproperty("id", ctx_r6.idBag.group + "-" + j_r5)("title", group_r4.group);
44918
+ const ctx_r9 = ɵɵnextContext();
44919
+ const j_r6 = ctx_r9.index;
44920
+ const group_r5 = ctx_r9.$implicit;
44921
+ const ctx_r7 = ɵɵnextContext();
44922
+ ɵɵproperty("id", ctx_r7.idBag.group + "-" + j_r6)("title", group_r5.group);
44703
44923
  ɵɵadvance(1);
44704
- ɵɵtextInterpolate(group_r4.group);
44924
+ ɵɵtextInterpolate(group_r5.group);
44705
44925
  } }
44706
- function CommonSettingsComponent_li_6_a_2_Template(rf, ctx) { if (rf & 1) {
44707
- const _r12 = ɵɵgetCurrentView();
44708
- ɵɵelementStart(0, "a", 13);
44709
- ɵɵlistener("smeRouterLinkActivated", function CommonSettingsComponent_li_6_a_2_Template_a_smeRouterLinkActivated_0_listener() { ɵɵrestoreView(_r12); const setting_r9 = ctx.$implicit; const ctx_r11 = ɵɵnextContext(2); return ctx_r11.selectedSetting = setting_r9; });
44710
- ɵɵelement(1, "div", 14);
44711
- ɵɵelementStart(2, "div", 15);
44712
- ɵɵelementStart(3, "span", 16);
44926
+ function CommonSettingsComponent_li_10_a_2_Template(rf, ctx) { if (rf & 1) {
44927
+ const _r13 = ɵɵgetCurrentView();
44928
+ ɵɵelementStart(0, "a", 18);
44929
+ ɵɵlistener("smeRouterLinkActivated", function CommonSettingsComponent_li_10_a_2_Template_a_smeRouterLinkActivated_0_listener() { ɵɵrestoreView(_r13); const setting_r10 = ctx.$implicit; const ctx_r12 = ɵɵnextContext(2); return ctx_r12.onSmeRouterLinkActivated(setting_r10); });
44930
+ ɵɵelement(1, "div", 19);
44931
+ ɵɵelementStart(2, "div", 20);
44932
+ ɵɵelementStart(3, "span", 21);
44713
44933
  ɵɵtext(4);
44714
44934
  ɵɵelementEnd();
44715
44935
  ɵɵelementEnd();
44716
44936
  ɵɵelementEnd();
44717
44937
  } if (rf & 2) {
44718
- const setting_r9 = ctx.$implicit;
44719
- const i_r10 = ctx.index;
44720
- const j_r5 = ɵɵnextContext().index;
44721
- const ctx_r7 = ɵɵnextContext();
44722
- ɵɵattributeInterpolate5("aria-labelledby", "", ctx_r7.idBag.option, "-", j_r5, "-", i_r10, " ", ctx_r7.idBag.group, "-", j_r5, "");
44723
- ɵɵproperty("routerLink", setting_r9.routeParams.commands)("preserveFragment", setting_r9.routeParams.extras && setting_r9.routeParams.extras.preserveFragment)("skipLocationChange", setting_r9.routeParams.extras && setting_r9.routeParams.extras.skipLocationChange)("replaceUrl", setting_r9.routeParams.extras && setting_r9.routeParams.extras.replaceUrl)("queryParams", setting_r9.routeParams.extras && setting_r9.routeParams.extras.queryParams)("title", setting_r9.label);
44724
- ɵɵattribute("aria-selected", ctx_r7.selectedSetting === setting_r9);
44938
+ const setting_r10 = ctx.$implicit;
44939
+ const i_r11 = ctx.index;
44940
+ const j_r6 = ɵɵnextContext().index;
44941
+ const ctx_r8 = ɵɵnextContext();
44942
+ ɵɵattributeInterpolate5("aria-labelledby", "", ctx_r8.idBag.option, "-", j_r6, "-", i_r11, " ", ctx_r8.idBag.group, "-", j_r6, "");
44943
+ ɵɵproperty("routerLink", setting_r10.routeParams.commands)("preserveFragment", setting_r10.routeParams.extras && setting_r10.routeParams.extras.preserveFragment)("skipLocationChange", setting_r10.routeParams.extras && setting_r10.routeParams.extras.skipLocationChange)("replaceUrl", setting_r10.routeParams.extras && setting_r10.routeParams.extras.replaceUrl)("queryParams", setting_r10.routeParams.extras && setting_r10.routeParams.extras.queryParams)("title", setting_r10.label);
44944
+ ɵɵattribute("aria-selected", ctx_r8.selectedSetting === setting_r10);
44725
44945
  ɵɵadvance(1);
44726
- ɵɵproperty("ngClass", ctx_r7.getSmeIconClass(setting_r9));
44946
+ ɵɵproperty("ngClass", ctx_r8.getSmeIconClass(setting_r10));
44727
44947
  ɵɵadvance(2);
44728
- ɵɵclassProp("sme-dirty", !!(setting_r9.form && setting_r9.form.dirty))("sme-pristine", !(setting_r9.form && setting_r9.form.dirty));
44729
- ɵɵproperty("id", ctx_r7.idBag.option + "-" + j_r5 + "-" + i_r10);
44948
+ ɵɵclassProp("sme-dirty", !!(setting_r10.form && setting_r10.form.dirty))("sme-pristine", !(setting_r10.form && setting_r10.form.dirty));
44949
+ ɵɵproperty("id", ctx_r8.idBag.option + "-" + j_r6 + "-" + i_r11);
44730
44950
  ɵɵadvance(1);
44731
- ɵɵtextInterpolate(setting_r9.label);
44951
+ ɵɵtextInterpolate(setting_r10.label);
44732
44952
  } }
44733
- function CommonSettingsComponent_li_6_Template(rf, ctx) { if (rf & 1) {
44734
- ɵɵelementStart(0, "li", 9);
44735
- ɵɵtemplate(1, CommonSettingsComponent_li_6_h3_1_Template, 2, 3, "h3", 10);
44736
- ɵɵtemplate(2, CommonSettingsComponent_li_6_a_2_Template, 5, 19, "a", 11);
44953
+ function CommonSettingsComponent_li_10_Template(rf, ctx) { if (rf & 1) {
44954
+ ɵɵelementStart(0, "li", 14);
44955
+ ɵɵtemplate(1, CommonSettingsComponent_li_10_h4_1_Template, 2, 3, "h4", 15);
44956
+ ɵɵtemplate(2, CommonSettingsComponent_li_10_a_2_Template, 5, 19, "a", 16);
44737
44957
  ɵɵelementEnd();
44738
44958
  } if (rf & 2) {
44739
- const group_r4 = ctx.$implicit;
44740
- const ctx_r1 = ɵɵnextContext();
44959
+ const group_r5 = ctx.$implicit;
44960
+ const ctx_r2 = ɵɵnextContext();
44741
44961
  ɵɵadvance(1);
44742
- ɵɵproperty("ngIf", group_r4.group !== ctx_r1.defaultGroup);
44962
+ ɵɵproperty("ngIf", group_r5.group !== ctx_r2.defaultGroup);
44743
44963
  ɵɵadvance(1);
44744
- ɵɵproperty("ngForOf", group_r4.options);
44964
+ ɵɵproperty("ngForOf", group_r5.options);
44745
44965
  } }
44746
- function CommonSettingsComponent_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
44747
- const _r17 = ɵɵgetCurrentView();
44748
- ɵɵelementStart(0, "div", 18);
44749
- ɵɵlistener("click", function CommonSettingsComponent_div_7_div_1_Template_div_click_0_listener() { ɵɵrestoreView(_r17); const layer_r15 = ctx.$implicit; const ctx_r16 = ɵɵnextContext(2); return ctx_r16.onOverlayClick(layer_r15); });
44966
+ function CommonSettingsComponent_div_11_div_1_Template(rf, ctx) { if (rf & 1) {
44967
+ const _r18 = ɵɵgetCurrentView();
44968
+ ɵɵelementStart(0, "div", 23);
44969
+ ɵɵlistener("click", function CommonSettingsComponent_div_11_div_1_Template_div_click_0_listener() { ɵɵrestoreView(_r18); const layer_r16 = ctx.$implicit; const ctx_r17 = ɵɵnextContext(2); return ctx_r17.onOverlayClick(layer_r16); });
44750
44970
  ɵɵelementEnd();
44751
44971
  } }
44752
- function CommonSettingsComponent_div_7_Template(rf, ctx) { if (rf & 1) {
44972
+ function CommonSettingsComponent_div_11_Template(rf, ctx) { if (rf & 1) {
44753
44973
  ɵɵelementStart(0, "div");
44754
- ɵɵtemplate(1, CommonSettingsComponent_div_7_div_1_Template, 1, 0, "div", 17);
44974
+ ɵɵtemplate(1, CommonSettingsComponent_div_11_div_1_Template, 1, 0, "div", 22);
44755
44975
  ɵɵelementEnd();
44756
44976
  } if (rf & 2) {
44757
- const ctx_r2 = ɵɵnextContext();
44977
+ const ctx_r3 = ɵɵnextContext();
44758
44978
  ɵɵadvance(1);
44759
- ɵɵproperty("ngForOf", ctx_r2.layers);
44979
+ ɵɵproperty("ngForOf", ctx_r3.layers);
44760
44980
  } }
44761
- function CommonSettingsComponent_sme_settings_header_8_h3_1_Template(rf, ctx) { if (rf & 1) {
44762
- ɵɵelementStart(0, "h3", 20);
44981
+ function CommonSettingsComponent_sme_settings_header_12_h3_1_Template(rf, ctx) { if (rf & 1) {
44982
+ ɵɵelementStart(0, "h3", 25);
44763
44983
  ɵɵtext(1);
44764
44984
  ɵɵelementEnd();
44765
44985
  } if (rf & 2) {
44766
- const ctx_r18 = ɵɵnextContext(2);
44767
- ɵɵattribute("aria-label", ctx_r18.selectedSetting.label);
44986
+ const ctx_r19 = ɵɵnextContext(2);
44987
+ ɵɵattribute("aria-label", ctx_r19.selectedSetting.label);
44768
44988
  ɵɵadvance(1);
44769
- ɵɵtextInterpolate1(" ", ctx_r18.selectedSetting.label, "");
44989
+ ɵɵtextInterpolate1(" ", ctx_r19.selectedSetting.label, "");
44770
44990
  } }
44771
- function CommonSettingsComponent_sme_settings_header_8_Template(rf, ctx) { if (rf & 1) {
44991
+ function CommonSettingsComponent_sme_settings_header_12_Template(rf, ctx) { if (rf & 1) {
44772
44992
  ɵɵelementStart(0, "sme-settings-header");
44773
- ɵɵtemplate(1, CommonSettingsComponent_sme_settings_header_8_h3_1_Template, 2, 2, "h3", 19);
44993
+ ɵɵtemplate(1, CommonSettingsComponent_sme_settings_header_12_h3_1_Template, 2, 2, "h3", 24);
44774
44994
  ɵɵelementEnd();
44775
44995
  } if (rf & 2) {
44776
- const ctx_r3 = ɵɵnextContext();
44996
+ const ctx_r4 = ɵɵnextContext();
44777
44997
  ɵɵadvance(1);
44778
- ɵɵproperty("ngIf", !!ctx_r3.selectedSetting);
44998
+ ɵɵproperty("ngIf", !!ctx_r4.selectedSetting);
44779
44999
  } }
44780
- const _c0$1v = ["*"];
45000
+ const _c1$P = ["*"];
44781
45001
  /**
44782
45002
  * Container around settings component, handles common settings behavior.
44783
45003
  */
@@ -44791,11 +45011,24 @@ class CommonSettingsComponent extends CoreBaseComponent {
44791
45011
  this.rpcShellService = rpcShellService;
44792
45012
  this.defaultGroup = 'default';
44793
45013
  this.layers = [];
45014
+ /**
45015
+ * Search box related variables
45016
+ */
45017
+ this.filter = '';
45018
+ this.filteredSettings = [];
44794
45019
  this.showHeader = true;
44795
45020
  this.hackShowOverlay = false;
44796
45021
  this.hackToolHeader = false;
45022
+ /**
45023
+ * Controls whether the tab list showing the Settings items is scrollable or not
45024
+ * Default to true. Allowing separate scroll bar for the navbar and the selected Settings.
45025
+ * Set to false for backward compatibility and use previous behavior where there is
45026
+ * only 1 single scroll bar for both navbar and content of the selected Settings item.
45027
+ */
45028
+ this.scrollableSecondaryNav = true;
44797
45029
  this.autofocus = true;
44798
45030
  this.combinedForm = new FormGroup({});
45031
+ this.searchTitle = this.strings.MsftSmeShell.Angular.searchPlaceHolder;
44799
45032
  }
44800
45033
  /**
44801
45034
  * The source name to use for logging
@@ -44856,11 +45089,20 @@ class CommonSettingsComponent extends CoreBaseComponent {
44856
45089
  this.autofocus = false;
44857
45090
  }
44858
45091
  }
45092
+ // Setting Title header is managed by child component this.settingsComponent,
45093
+ // after current view and child view has been rendered, pass along the selectedSetting
45094
+ // string if it exists so child view will render the title
45095
+ if (this.selectedSetting) {
45096
+ this.onSmeRouterLinkActivated(this.selectedSetting);
45097
+ }
44859
45098
  }
44860
45099
  createMenu() {
45100
+ // Before creating the Settings menu, filter the Settings menu to only display
45101
+ // items that matches the filter
45102
+ this.filteredSettings = this.filterSetting();
44861
45103
  const groupTools = [];
44862
45104
  groupTools['default'] = { group: 'default', options: [] };
44863
- this.settings.forEach((setting) => {
45105
+ this.filteredSettings.forEach((setting) => {
44864
45106
  if (!!!setting.group) {
44865
45107
  groupTools['default'].options.push(setting);
44866
45108
  }
@@ -45011,33 +45253,81 @@ class CommonSettingsComponent extends CoreBaseComponent {
45011
45253
  }
45012
45254
  return formControl.value;
45013
45255
  }
45256
+ /**
45257
+ * Update this.selectedSetting to the newly selected Settings item when user navigate to a new Settings item
45258
+ * Also call the child component this.settingsComponent to update the settingsTitle to reflect the title
45259
+ * of the newly selected Settings item
45260
+ *
45261
+ * @param newSetting The newly selected Settings item
45262
+ */
45263
+ onSmeRouterLinkActivated(newSetting) {
45264
+ this.selectedSetting = newSetting;
45265
+ if (this.settingsComponent) {
45266
+ this.settingsComponent.updateSelectedSettingTitle(newSetting.label);
45267
+ }
45268
+ }
45269
+ /**
45270
+ * Callback function for the search field
45271
+ */
45272
+ onSearch() {
45273
+ this.searchTextBox.searching = true;
45274
+ setTimeout(() => {
45275
+ this.createMenu();
45276
+ this.searchTextBox.searching = false;
45277
+ });
45278
+ }
45279
+ /**
45280
+ * Filter out the settings Item based on this.filter string and match the title of Settings Items
45281
+ */
45282
+ filterSetting() {
45283
+ const settings = this.settings;
45284
+ if (!this.filter) {
45285
+ return settings;
45286
+ }
45287
+ const localFilter = this.filter.toLocaleLowerCase();
45288
+ return settings.filter(setting => {
45289
+ if (setting.label.toLocaleLowerCase().indexOf(localFilter) > -1) {
45290
+ return true;
45291
+ }
45292
+ return false;
45293
+ });
45294
+ }
45014
45295
  }
45015
45296
  /** @nocollapse */ CommonSettingsComponent.ɵfac = function CommonSettingsComponent_Factory(t) { return new (t || CommonSettingsComponent)(ɵɵdirectiveInject(Injector), ɵɵdirectiveInject(Router), ɵɵdirectiveInject(SettingsFormService), ɵɵdirectiveInject(IterableDiffers), ɵɵdirectiveInject(AppContextService), ɵɵdirectiveInject(RpcShellService)); };
45016
45297
  /** @nocollapse */ CommonSettingsComponent.ɵcmp = ɵɵdefineComponent({ type: CommonSettingsComponent, selectors: [["sme-common-settings"]], viewQuery: function CommonSettingsComponent_Query(rf, ctx) { if (rf & 1) {
45298
+ ɵɵviewQuery(_c0$1v, 1);
45017
45299
  ɵɵviewQuery(SettingsComponent, 1);
45018
45300
  } if (rf & 2) {
45019
45301
  let _t;
45302
+ ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.searchTextBox = _t.first);
45020
45303
  ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.settingsComponent = _t.first);
45021
- } }, inputs: { settingsTitle: "settingsTitle", settings: "settings", showHeader: "showHeader", hackShowOverlay: "hackShowOverlay", hackToolHeader: "hackToolHeader", backRoute: "backRoute" }, features: [ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], ngContentSelectors: _c0$1v, decls: 13, vars: 6, consts: [[3, "settingsTitle"], ["class", "sme-layout-tool-header", 4, "ngIf"], ["role", "region"], ["role", "tablist", 1, "sme-padding-horizontal-lg", "sme-arrange-stack-v", "sme-focus-zone"], ["role", "presentation", 1, "sme-position-flex-auto", "sme-arrange-stack-v", "sme-arrange-overflow-hide-x", "sme-arrange-overflow-auto-y"], ["class", "sme-margin-inset-none", "role", "presentation", 4, "ngFor", "ngForOf"], [4, "ngIf"], [1, "sme-layout-tool-header"], [1, "sme-position-flex-none", "sme-font-h3"], ["role", "presentation", 1, "sme-margin-inset-none"], ["class", "sme-margin-top-xs sme-font-h5", 3, "id", "title", 4, "ngIf"], ["class", "sme-padding-squish-v-sm sme-arrange-stack-h sme-scheme-nav-item", "role", "tab", "href", "setting.routeParams.extras && setting.routeParams.extras.replaceUrl", "routerLinkActive", "sme-active", 3, "routerLink", "preserveFragment", "skipLocationChange", "replaceUrl", "queryParams", "title", "smeRouterLinkActivated", 4, "ngFor", "ngForOf"], [1, "sme-margin-top-xs", "sme-font-h5", 3, "id", "title"], ["role", "tab", "href", "setting.routeParams.extras && setting.routeParams.extras.replaceUrl", "routerLinkActive", "sme-active", 1, "sme-padding-squish-v-sm", "sme-arrange-stack-h", "sme-scheme-nav-item", 3, "routerLink", "preserveFragment", "skipLocationChange", "replaceUrl", "queryParams", "title", "smeRouterLinkActivated"], [1, "sme-icon", "sme-margin-right-xs", 3, "ngClass"], [1, "sme-position-flex-auto"], [3, "id"], ["class", "sme-layout-absolute sme-position-inset-none sme-layer-above sme-scheme-backdrop-opaque", 3, "click", 4, "ngFor", "ngForOf"], [1, "sme-layout-absolute", "sme-position-inset-none", "sme-layer-above", "sme-scheme-backdrop-opaque", 3, "click"], ["id", "sme-shell-setting-selectedTitle", 4, "ngIf"], ["id", "sme-shell-setting-selectedTitle"]], template: function CommonSettingsComponent_Template(rf, ctx) { if (rf & 1) {
45304
+ } }, inputs: { settingsTitle: "settingsTitle", settings: "settings", showHeader: "showHeader", hackShowOverlay: "hackShowOverlay", hackToolHeader: "hackToolHeader", backRoute: "backRoute", scrollableSecondaryNav: "scrollableSecondaryNav" }, features: [ɵɵInheritDefinitionFeature, ɵɵNgOnChangesFeature], ngContentSelectors: _c1$P, decls: 17, vars: 11, consts: [[3, "settingsTitle"], [1, "sme-position-stretch"], ["class", "sme-layout-tool-header", 4, "ngIf"], ["role", "region", 1, "sme-position-stretch", "sme-arrange-stack-v"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-margin-squish-v-sm"], ["type", "search", "name", "toolsListSearch", 3, "ngModel", "placeholder", "autofocus", "count", "ngModelChange", "search"], ["searchTextBox", ""], ["role", "tablist", 1, "sme-arrange-stack-v", "sme-focus-zone", 3, "ngClass"], ["role", "presentation", 1, "sme-position-flex-auto", "sme-arrange-stack-v", "sme-arrange-overflow-hide-x", "sme-arrange-overflow-auto-y"], ["class", "sme-margin-inset-none", "role", "presentation", 4, "ngFor", "ngForOf"], [4, "ngIf"], [1, "sme-layout-tool-header"], [1, "sme-position-flex-none", "sme-font-h3"], ["role", "presentation", 1, "sme-margin-inset-none"], ["class", "sme-font-h4 sme-font-h4-settings", 3, "id", "title", 4, "ngIf"], ["class", "sme-padding-squish-v-sm sme-arrange-stack-h sme-scheme-nav-list-item", "role", "tab", "href", "setting.routeParams.extras && setting.routeParams.extras.replaceUrl", "routerLinkActive", "sme-active", 3, "routerLink", "preserveFragment", "skipLocationChange", "replaceUrl", "queryParams", "title", "smeRouterLinkActivated", 4, "ngFor", "ngForOf"], [1, "sme-font-h4", "sme-font-h4-settings", 3, "id", "title"], ["role", "tab", "href", "setting.routeParams.extras && setting.routeParams.extras.replaceUrl", "routerLinkActive", "sme-active", 1, "sme-padding-squish-v-sm", "sme-arrange-stack-h", "sme-scheme-nav-list-item", 3, "routerLink", "preserveFragment", "skipLocationChange", "replaceUrl", "queryParams", "title", "smeRouterLinkActivated"], [1, "sme-icon", "sme-margin-right-xs", 3, "ngClass"], [1, "sme-position-flex-auto"], [3, "id"], ["class", "sme-layout-absolute sme-position-inset-none sme-layer-above sme-scheme-backdrop-opaque", 3, "click", 4, "ngFor", "ngForOf"], [1, "sme-layout-absolute", "sme-position-inset-none", "sme-layer-above", "sme-scheme-backdrop-opaque", 3, "click"], ["id", "sme-shell-setting-selectedTitle", 4, "ngIf"], ["id", "sme-shell-setting-selectedTitle"]], template: function CommonSettingsComponent_Template(rf, ctx) { if (rf & 1) {
45022
45305
  ɵɵprojectionDef();
45023
45306
  ɵɵelementStart(0, "sme-settings", 0);
45024
- ɵɵelementStart(1, "sme-settings-navigation");
45025
- ɵɵtemplate(2, CommonSettingsComponent_header_2_Template, 3, 2, "header", 1);
45026
- ɵɵelementStart(3, "div", 2);
45027
- ɵɵelementStart(4, "nav", 3);
45028
- ɵɵelementStart(5, "ul", 4);
45029
- ɵɵtemplate(6, CommonSettingsComponent_li_6_Template, 3, 2, "li", 5);
45307
+ ɵɵelementStart(1, "sme-settings-navigation", 1);
45308
+ ɵɵtemplate(2, CommonSettingsComponent_header_2_Template, 3, 2, "header", 2);
45309
+ ɵɵelementStart(3, "div", 3);
45310
+ ɵɵelementStart(4, "div", 4);
45311
+ ɵɵelementStart(5, "form", 5);
45312
+ ɵɵelementStart(6, "sme-form-field", 6, 7);
45313
+ ɵɵlistener("ngModelChange", function CommonSettingsComponent_Template_sme_form_field_ngModelChange_6_listener($event) { return ctx.filter = $event; })("search", function CommonSettingsComponent_Template_sme_form_field_search_6_listener() { return ctx.onSearch(); });
45314
+ ɵɵelementEnd();
45030
45315
  ɵɵelementEnd();
45031
45316
  ɵɵelementEnd();
45317
+ ɵɵelementStart(8, "nav", 8);
45318
+ ɵɵelementStart(9, "ul", 9);
45319
+ ɵɵtemplate(10, CommonSettingsComponent_li_10_Template, 3, 2, "li", 10);
45032
45320
  ɵɵelementEnd();
45033
- ɵɵtemplate(7, CommonSettingsComponent_div_7_Template, 2, 1, "div", 6);
45034
45321
  ɵɵelementEnd();
45035
- ɵɵtemplate(8, CommonSettingsComponent_sme_settings_header_8_Template, 2, 1, "sme-settings-header", 6);
45036
- ɵɵelementStart(9, "sme-settings-content");
45037
- ɵɵelement(10, "router-outlet");
45038
45322
  ɵɵelementEnd();
45039
- ɵɵelementStart(11, "sme-settings-footer");
45040
- ɵɵprojection(12);
45323
+ ɵɵtemplate(11, CommonSettingsComponent_div_11_Template, 2, 1, "div", 11);
45324
+ ɵɵelementEnd();
45325
+ ɵɵtemplate(12, CommonSettingsComponent_sme_settings_header_12_Template, 2, 1, "sme-settings-header", 11);
45326
+ ɵɵelementStart(13, "sme-settings-content");
45327
+ ɵɵelement(14, "router-outlet");
45328
+ ɵɵelementEnd();
45329
+ ɵɵelementStart(15, "sme-settings-footer");
45330
+ ɵɵprojection(16);
45041
45331
  ɵɵelementEnd();
45042
45332
  ɵɵelementEnd();
45043
45333
  } if (rf & 2) {
@@ -45047,6 +45337,10 @@ class CommonSettingsComponent extends CoreBaseComponent {
45047
45337
  ɵɵadvance(1);
45048
45338
  ɵɵattribute("aria-label", ctx.settingsTitle);
45049
45339
  ɵɵadvance(3);
45340
+ ɵɵproperty("ngModel", ctx.filter)("placeholder", ctx.searchTitle)("autofocus", true)("count", ctx.filteredSettings ? ctx.filteredSettings.length : 0);
45341
+ ɵɵadvance(2);
45342
+ ɵɵproperty("ngClass", ctx.scrollableSecondaryNav ? "sme-position-flex-auto sme-arrange-overflow-auto-y" : "");
45343
+ ɵɵadvance(2);
45050
45344
  ɵɵproperty("ngForOf", ctx.groupTools);
45051
45345
  ɵɵadvance(1);
45052
45346
  ɵɵproperty("ngIf", ctx.hackShowOverlay);
@@ -45059,7 +45353,10 @@ class CommonSettingsComponent extends CoreBaseComponent {
45059
45353
  selector: 'sme-common-settings',
45060
45354
  templateUrl: './common-settings.component.html'
45061
45355
  }]
45062
- }], function () { return [{ type: Injector }, { type: Router }, { type: SettingsFormService }, { type: IterableDiffers }, { type: AppContextService }, { type: RpcShellService }]; }, { settingsTitle: [{
45356
+ }], function () { return [{ type: Injector }, { type: Router }, { type: SettingsFormService }, { type: IterableDiffers }, { type: AppContextService }, { type: RpcShellService }]; }, { searchTextBox: [{
45357
+ type: ViewChild,
45358
+ args: ['searchTextBox']
45359
+ }], settingsTitle: [{
45063
45360
  type: Input
45064
45361
  }], settings: [{
45065
45362
  type: Input
@@ -45071,13 +45368,15 @@ class CommonSettingsComponent extends CoreBaseComponent {
45071
45368
  type: Input
45072
45369
  }], backRoute: [{
45073
45370
  type: Input
45371
+ }], scrollableSecondaryNav: [{
45372
+ type: Input
45074
45373
  }], settingsComponent: [{
45075
45374
  type: ViewChild,
45076
45375
  args: [SettingsComponent]
45077
45376
  }] }); })();
45078
45377
 
45079
45378
  const _c0$1w = [[["sme-settings-header"]], [["sme-settings-content"]], [["sme-settings-footer"]]];
45080
- const _c1$P = ["sme-settings-header", "sme-settings-content", "sme-settings-footer"];
45379
+ const _c1$Q = ["sme-settings-header", "sme-settings-content", "sme-settings-footer"];
45081
45380
  class SettingsPageComponent extends CoreBaseComponent {
45082
45381
  constructor(injector) {
45083
45382
  super(injector);
@@ -45098,7 +45397,7 @@ class SettingsPageComponent extends CoreBaseComponent {
45098
45397
  }
45099
45398
  }
45100
45399
  /** @nocollapse */ SettingsPageComponent.ɵfac = function SettingsPageComponent_Factory(t) { return new (t || SettingsPageComponent)(ɵɵdirectiveInject(Injector)); };
45101
- /** @nocollapse */ SettingsPageComponent.ɵcmp = ɵɵdefineComponent({ type: SettingsPageComponent, selectors: [["sme-settings-page"]], features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$P, decls: 3, vars: 0, template: function SettingsPageComponent_Template(rf, ctx) { if (rf & 1) {
45400
+ /** @nocollapse */ SettingsPageComponent.ɵcmp = ɵɵdefineComponent({ type: SettingsPageComponent, selectors: [["sme-settings-page"]], features: [ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$Q, decls: 3, vars: 0, template: function SettingsPageComponent_Template(rf, ctx) { if (rf & 1) {
45102
45401
  ɵɵprojectionDef(_c0$1w);
45103
45402
  ɵɵprojection(0);
45104
45403
  ɵɵprojection(1, 1);
@@ -45332,7 +45631,9 @@ class SettingsModule {
45332
45631
  CommonModule,
45333
45632
  HeaderModule,
45334
45633
  LayoutModule,
45335
- TooltipModule
45634
+ TooltipModule,
45635
+ FormsModule,
45636
+ SmeFormsModule
45336
45637
  ]] });
45337
45638
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵɵsetNgModuleScope(SettingsModule, { declarations: [SettingsComponent,
45338
45639
  SettingsFormDirective,
@@ -45346,7 +45647,9 @@ class SettingsModule {
45346
45647
  CommonModule,
45347
45648
  HeaderModule,
45348
45649
  LayoutModule,
45349
- TooltipModule], exports: [SettingsComponent,
45650
+ TooltipModule,
45651
+ FormsModule,
45652
+ SmeFormsModule], exports: [SettingsComponent,
45350
45653
  SettingsFormDirective,
45351
45654
  SettingsFooterComponent,
45352
45655
  SettingsHeaderComponent,
@@ -45363,7 +45666,9 @@ class SettingsModule {
45363
45666
  CommonModule,
45364
45667
  HeaderModule,
45365
45668
  LayoutModule,
45366
- TooltipModule
45669
+ TooltipModule,
45670
+ FormsModule,
45671
+ SmeFormsModule
45367
45672
  ],
45368
45673
  exports: [
45369
45674
  SettingsComponent,
@@ -45392,7 +45697,7 @@ class SettingsModule {
45392
45697
  }]
45393
45698
  }], null, null); })();
45394
45699
  ɵɵsetComponentScope(CommonSettingsComponent, [SettingsComponent,
45395
- SettingsNavigationComponent, NgIf, NgForOf, TooltipDirective, RouterLinkWithHref, RouterLinkActive, SmeRouterLinkDirective, NgClass, SettingsHeaderComponent,
45700
+ SettingsNavigationComponent, NgIf, ɵangular_packages_forms_forms_ba, NgControlStatusGroup, NgForm, FormFieldAccessorDirective, FormFieldValidatorDirective, SearchFormFieldComponent, NgControlStatus, NgModel, NgClass, NgForOf, TooltipDirective, RouterLinkWithHref, RouterLinkActive, SmeRouterLinkDirective, SettingsHeaderComponent,
45396
45701
  SettingsContentComponent, RouterOutlet, SettingsFooterComponent], []);
45397
45702
 
45398
45703
  // tslint:disable-next-line: directive-class-suffix
@@ -46292,34 +46597,29 @@ function WizardComponent_div_1_Template(rf, ctx) { if (rf & 1) {
46292
46597
  ɵɵadvance(1);
46293
46598
  ɵɵproperty("ngIf", ctx_r0.isInPreview);
46294
46599
  } }
46295
- const _c0$1E = function (a0, a1, a2, a3) { return { "sme-wizard-stage-completed": a0, "sme-wizard-stage-clicked": a1, "sme-wizard-stage-active": a2, "sme-disabled": a3 }; };
46296
- const _c1$Q = function (a0) { return { "sme-icon sme-icon-accept sme-icon-size-xxs": a0 }; };
46600
+ const _c0$1E = function (a0, a1, a2) { return { "sme-wizard-stage-completed": a0, "sme-wizard-stage-clicked": a1, "sme-wizard-stage-active": a2 }; };
46601
+ const _c1$R = function (a0) { return { "sme-icon sme-icon-accept sme-icon-size-xxs": a0 }; };
46297
46602
  const _c2$m = function (a0, a1, a2) { return { "sme-font-emphasis1 sme-wizard-stage-active": a0, "sme-wizard-stage-completed": a1, "sme-margin-left-xs": a2 }; };
46298
- function WizardComponent_ul_2_li_1_Template(rf, ctx) { if (rf & 1) {
46603
+ function WizardComponent_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
46299
46604
  const _r11 = ɵɵgetCurrentView();
46300
- ɵɵelementStart(0, "li", 16);
46301
- ɵɵlistener("click", function WizardComponent_ul_2_li_1_Template_li_click_0_listener() { ɵɵrestoreView(_r11); const val_r9 = ctx.index; const ctx_r10 = ɵɵnextContext(2); return ctx_r10.onStageClick(val_r9); });
46302
- ɵɵelementStart(1, "button", 17);
46303
- ɵɵelementStart(2, "span", 18);
46304
- ɵɵtext(3);
46305
- ɵɵelementEnd();
46306
- ɵɵelementStart(4, "span", 19);
46307
- ɵɵtext(5);
46605
+ ɵɵelementStart(0, "button", 16);
46606
+ ɵɵlistener("click", function WizardComponent_div_2_button_1_Template_button_click_0_listener() { ɵɵrestoreView(_r11); const val_r9 = ctx.index; const ctx_r10 = ɵɵnextContext(2); return ctx_r10.onStageClick(val_r9); });
46607
+ ɵɵelementStart(1, "span", 17);
46608
+ ɵɵtext(2);
46308
46609
  ɵɵelementEnd();
46610
+ ɵɵelementStart(3, "span", 18);
46611
+ ɵɵtext(4);
46309
46612
  ɵɵelementEnd();
46310
46613
  ɵɵelementEnd();
46311
46614
  } if (rf & 2) {
46312
46615
  const stage_r8 = ctx.$implicit;
46313
46616
  const val_r9 = ctx.index;
46314
46617
  const ctx_r7 = ɵɵnextContext(2);
46315
- ɵɵproperty("ngClass", ɵɵpureFunction4(17, _c0$1E, stage_r8.completed, val_r9 === ctx_r7.stagesArrayIndex, stage_r8.active, val_r9 !== ctx_r7.stagesArrayIndex));
46316
- ɵɵattribute("aria-selected", val_r9 === ctx_r7.stagesArrayIndex);
46317
- ɵɵadvance(1);
46318
- ɵɵclassProp("sme-active", val_r9 === ctx_r7.stagesArrayIndex)("sme-selected", val_r9 === ctx_r7.stagesArrayIndex)("sme-wizard-stage-focus", val_r9 === ctx_r7.stagesArrayIndex);
46319
- ɵɵproperty("smeTelemetryDataBlob", ctx_r7.telemetryData)("smeTelemetryId", "wizardStage" + (val_r9 + 1))("disabled", ctx_r7.stageIndexDisabled(stage_r8, val_r9))("smeTelemetryDisableElement", ctx_r7.stageIndexDisabled(stage_r8, val_r9));
46618
+ ɵɵclassProp("sme-active", val_r9 === ctx_r7.stagesArrayIndex)("sme-selected", val_r9 === ctx_r7.stagesArrayIndex)("aria-selected", val_r9 === ctx_r7.stagesArrayIndex)("sme-wizard-stage-focus", val_r9 === ctx_r7.stagesArrayIndex);
46619
+ ɵɵproperty("smeTelemetryDataBlob", ctx_r7.telemetryData)("smeTelemetryId", "wizardStage" + (val_r9 + 1))("disabled", ctx_r7.stageIndexDisabled(stage_r8, val_r9))("smeTelemetryDisableElement", ctx_r7.stageIndexDisabled(stage_r8, val_r9))("ngClass", ɵɵpureFunction3(18, _c0$1E, stage_r8.completed, val_r9 === ctx_r7.stagesArrayIndex, stage_r8.active));
46320
46620
  ɵɵattribute("aria-label", stage_r8.name);
46321
46621
  ɵɵadvance(1);
46322
- ɵɵproperty("ngClass", ɵɵpureFunction1(22, _c1$Q, stage_r8.completed));
46622
+ ɵɵproperty("ngClass", ɵɵpureFunction1(22, _c1$R, stage_r8.completed));
46323
46623
  ɵɵadvance(1);
46324
46624
  ɵɵtextInterpolate1(" ", !stage_r8.completed ? val_r9 + 1 : "", " ");
46325
46625
  ɵɵadvance(1);
@@ -46327,17 +46627,17 @@ function WizardComponent_ul_2_li_1_Template(rf, ctx) { if (rf & 1) {
46327
46627
  ɵɵadvance(1);
46328
46628
  ɵɵtextInterpolate1(" ", stage_r8.name, " ");
46329
46629
  } }
46330
- function WizardComponent_ul_2_Template(rf, ctx) { if (rf & 1) {
46331
- ɵɵelementStart(0, "ul", 14);
46332
- ɵɵtemplate(1, WizardComponent_ul_2_li_1_Template, 6, 28, "li", 15);
46630
+ function WizardComponent_div_2_Template(rf, ctx) { if (rf & 1) {
46631
+ ɵɵelementStart(0, "div", 14);
46632
+ ɵɵtemplate(1, WizardComponent_div_2_button_1_Template, 5, 28, "button", 15);
46333
46633
  ɵɵelementEnd();
46334
46634
  } if (rf & 2) {
46335
46635
  const ctx_r1 = ɵɵnextContext();
46336
46636
  ɵɵadvance(1);
46337
46637
  ɵɵproperty("ngForOf", ctx_r1.stages);
46338
46638
  } }
46339
- function WizardComponent_div_4_ul_1_li_1_span_4_Template(rf, ctx) { if (rf & 1) {
46340
- ɵɵelementStart(0, "span", 31);
46639
+ function WizardComponent_div_4_div_1_button_1_span_3_Template(rf, ctx) { if (rf & 1) {
46640
+ ɵɵelementStart(0, "span", 29);
46341
46641
  ɵɵtext(1);
46342
46642
  ɵɵelementEnd();
46343
46643
  } if (rf & 2) {
@@ -46345,52 +46645,47 @@ function WizardComponent_div_4_ul_1_li_1_span_4_Template(rf, ctx) { if (rf & 1)
46345
46645
  ɵɵadvance(1);
46346
46646
  ɵɵtextInterpolate(step_r14.name);
46347
46647
  } }
46348
- const _c3$c = function (a0) { return { "sme-scheme-nav-list-item sme-active sme-color-base-5": a0 }; };
46349
- const _c4$8 = function (a0) { return { "sme-step-active": a0 }; };
46350
- function WizardComponent_div_4_ul_1_li_1_Template(rf, ctx) { if (rf & 1) {
46648
+ const _c3$c = function (a0) { return { "sme-step-active sme-scheme-nav-list-item sme-active sme-color-base-5": a0 }; };
46649
+ function WizardComponent_div_4_div_1_button_1_Template(rf, ctx) { if (rf & 1) {
46351
46650
  const _r19 = ɵɵgetCurrentView();
46352
- ɵɵelementStart(0, "li", 27);
46353
- ɵɵlistener("click", function WizardComponent_div_4_ul_1_li_1_Template_li_click_0_listener() { ɵɵrestoreView(_r19); const index_r15 = ctx.index; const ctx_r18 = ɵɵnextContext(3); return ctx_r18.onStepClick(index_r15); });
46354
- ɵɵelementStart(1, "button", 28);
46355
- ɵɵelementStart(2, "span", 29);
46356
- ɵɵtext(3);
46357
- ɵɵelementEnd();
46358
- ɵɵtemplate(4, WizardComponent_div_4_ul_1_li_1_span_4_Template, 2, 1, "span", 30);
46651
+ ɵɵelementStart(0, "button", 26);
46652
+ ɵɵlistener("click", function WizardComponent_div_4_div_1_button_1_Template_button_click_0_listener() { ɵɵrestoreView(_r19); const index_r15 = ctx.index; const ctx_r18 = ɵɵnextContext(3); return ctx_r18.onStepClick(index_r15); });
46653
+ ɵɵelementStart(1, "span", 27);
46654
+ ɵɵtext(2);
46359
46655
  ɵɵelementEnd();
46656
+ ɵɵtemplate(3, WizardComponent_div_4_div_1_button_1_span_3_Template, 2, 1, "span", 28);
46360
46657
  ɵɵelementEnd();
46361
46658
  } if (rf & 2) {
46362
46659
  const step_r14 = ctx.$implicit;
46363
46660
  const index_r15 = ctx.index;
46364
46661
  const ctx_r13 = ɵɵnextContext(3);
46365
- ɵɵproperty("ngClass", ɵɵpureFunction1(12, _c3$c, index_r15 === ctx_r13.stepIndex))("title", ctx_r13.isExpanded ? null : step_r14.name);
46366
- ɵɵattribute("aria-selected", index_r15 === ctx_r13.stepIndex)("aria-label", ctx_r13.isExpanded ? null : step_r14.name);
46367
- ɵɵadvance(1);
46368
- ɵɵproperty("ngClass", ɵɵpureFunction1(14, _c4$8, index_r15 === ctx_r13.stepIndex))("disabled", ctx_r13.stepIndexDisabled(step_r14, index_r15))("smeTelemetryDisableElement", ctx_r13.stepIndexDisabled(step_r14, index_r15))("smeTelemetryDataBlob", ctx_r13.telemetryData)("smeTelemetryId", "wizardStep" + (index_r15 + 1));
46662
+ ɵɵproperty("ngClass", ɵɵpureFunction1(10, _c3$c, index_r15 === ctx_r13.stepIndex))("disabled", ctx_r13.stepIndexDisabled(step_r14, index_r15))("smeTelemetryDisableElement", ctx_r13.stepIndexDisabled(step_r14, index_r15))("smeTelemetryDataBlob", ctx_r13.telemetryData)("smeTelemetryId", "wizardStep" + (index_r15 + 1))("title", ctx_r13.isExpanded ? null : step_r14.name);
46663
+ ɵɵattribute("aria-label", ctx_r13.isExpanded ? null : step_r14.name);
46369
46664
  ɵɵadvance(2);
46370
46665
  ɵɵtextInterpolate2("", ctx_r13.stagesArrayIndex + 1, ".", index_r15 + 1, "");
46371
46666
  ɵɵadvance(1);
46372
46667
  ɵɵproperty("ngIf", ctx_r13.isExpanded);
46373
46668
  } }
46374
- const _c5$4 = function (a0) { return { "sme-layout-minwidth-sm": a0 }; };
46375
- function WizardComponent_div_4_ul_1_Template(rf, ctx) { if (rf & 1) {
46376
- ɵɵelementStart(0, "ul", 25);
46377
- ɵɵtemplate(1, WizardComponent_div_4_ul_1_li_1_Template, 5, 16, "li", 26);
46669
+ const _c4$8 = function (a0) { return { "sme-layout-minwidth-sm": a0 }; };
46670
+ function WizardComponent_div_4_div_1_Template(rf, ctx) { if (rf & 1) {
46671
+ ɵɵelementStart(0, "div", 24);
46672
+ ɵɵtemplate(1, WizardComponent_div_4_div_1_button_1_Template, 4, 12, "button", 25);
46378
46673
  ɵɵelementEnd();
46379
46674
  } if (rf & 2) {
46380
46675
  const ctx_r12 = ɵɵnextContext(2);
46381
- ɵɵproperty("ngClass", ɵɵpureFunction1(2, _c5$4, ctx_r12.isExpanded));
46676
+ ɵɵproperty("ngClass", ɵɵpureFunction1(2, _c4$8, ctx_r12.isExpanded));
46382
46677
  ɵɵadvance(1);
46383
46678
  ɵɵproperty("ngForOf", ctx_r12.getStepsForStage());
46384
46679
  } }
46385
- const _c6$3 = function (a0, a1) { return { "sme-icon-chevronLeft": a0, "sme-icon-chevronRight": a1 }; };
46680
+ const _c5$4 = function (a0, a1) { return { "sme-icon-chevronLeft": a0, "sme-icon-chevronRight": a1 }; };
46386
46681
  function WizardComponent_div_4_Template(rf, ctx) { if (rf & 1) {
46387
46682
  const _r21 = ɵɵgetCurrentView();
46388
- ɵɵelementStart(0, "div", 20);
46389
- ɵɵtemplate(1, WizardComponent_div_4_ul_1_Template, 2, 4, "ul", 21);
46390
- ɵɵelementStart(2, "div", 22);
46391
- ɵɵelementStart(3, "button", 23);
46683
+ ɵɵelementStart(0, "div", 19);
46684
+ ɵɵtemplate(1, WizardComponent_div_4_div_1_Template, 2, 4, "div", 20);
46685
+ ɵɵelementStart(2, "div", 21);
46686
+ ɵɵelementStart(3, "button", 22);
46392
46687
  ɵɵlistener("click", function WizardComponent_div_4_Template_button_click_3_listener() { ɵɵrestoreView(_r21); const ctx_r20 = ɵɵnextContext(); return ctx_r20.togglePane(); });
46393
- ɵɵelement(4, "span", 24);
46688
+ ɵɵelement(4, "span", 23);
46394
46689
  ɵɵelementEnd();
46395
46690
  ɵɵelementEnd();
46396
46691
  ɵɵelementEnd();
@@ -46402,11 +46697,11 @@ function WizardComponent_div_4_Template(rf, ctx) { if (rf & 1) {
46402
46697
  ɵɵproperty("title", ctx_r2.isExpanded ? ctx_r2.strings.MsftSmeShell.Angular.Wizard.collapseStepsList : ctx_r2.strings.MsftSmeShell.Angular.Wizard.expandStepsList);
46403
46698
  ɵɵattribute("aria-expanded", ctx_r2.isExpanded)("aria-label", ctx_r2.isExpanded ? ctx_r2.strings.MsftSmeShell.Angular.Wizard.collapseStepsList : ctx_r2.strings.MsftSmeShell.Angular.Wizard.expandStepsList);
46404
46699
  ɵɵadvance(1);
46405
- ɵɵproperty("ngClass", ɵɵpureFunction2(5, _c6$3, ctx_r2.isExpanded, !ctx_r2.isExpanded));
46700
+ ɵɵproperty("ngClass", ɵɵpureFunction2(5, _c5$4, ctx_r2.isExpanded, !ctx_r2.isExpanded));
46406
46701
  } }
46407
46702
  function WizardComponent_div_6_Template(rf, ctx) { if (rf & 1) {
46408
46703
  ɵɵelementStart(0, "div");
46409
- ɵɵelement(1, "sme-page-alert-bar", 32);
46704
+ ɵɵelement(1, "sme-page-alert-bar", 30);
46410
46705
  ɵɵelementEnd();
46411
46706
  } if (rf & 2) {
46412
46707
  const ctx_r3 = ɵɵnextContext();
@@ -46414,29 +46709,29 @@ function WizardComponent_div_6_Template(rf, ctx) { if (rf & 1) {
46414
46709
  ɵɵproperty("alert", ctx_r3.alert);
46415
46710
  } }
46416
46711
  function WizardComponent_div_9_div_6_Template(rf, ctx) { if (rf & 1) {
46417
- ɵɵelementStart(0, "div", 40);
46418
- ɵɵelement(1, "sme-loading-wheel", 41);
46712
+ ɵɵelementStart(0, "div", 38);
46713
+ ɵɵelement(1, "sme-loading-wheel", 39);
46419
46714
  ɵɵelementEnd();
46420
46715
  } }
46421
46716
  function WizardComponent_div_9_Template(rf, ctx) { if (rf & 1) {
46422
46717
  const _r24 = ɵɵgetCurrentView();
46423
- ɵɵelementStart(0, "div", 33);
46424
- ɵɵelementStart(1, "div", 34);
46425
- ɵɵelementStart(2, "button", 35);
46718
+ ɵɵelementStart(0, "div", 31);
46719
+ ɵɵelementStart(1, "div", 32);
46720
+ ɵɵelementStart(2, "button", 33);
46426
46721
  ɵɵlistener("click", function WizardComponent_div_9_Template_button_click_2_listener() { ɵɵrestoreView(_r24); const ctx_r23 = ɵɵnextContext(); return ctx_r23.onBackClick(); });
46427
46722
  ɵɵtext(3);
46428
46723
  ɵɵelementEnd();
46429
- ɵɵelementStart(4, "button", 36);
46724
+ ɵɵelementStart(4, "button", 34);
46430
46725
  ɵɵlistener("click", function WizardComponent_div_9_Template_button_click_4_listener() { ɵɵrestoreView(_r24); const ctx_r25 = ɵɵnextContext(); return ctx_r25.onNextClick(); });
46431
46726
  ɵɵtext(5);
46432
46727
  ɵɵelementEnd();
46433
- ɵɵtemplate(6, WizardComponent_div_9_div_6_Template, 2, 0, "div", 37);
46728
+ ɵɵtemplate(6, WizardComponent_div_9_div_6_Template, 2, 0, "div", 35);
46434
46729
  ɵɵelementEnd();
46435
- ɵɵelementStart(7, "button", 38);
46730
+ ɵɵelementStart(7, "button", 36);
46436
46731
  ɵɵlistener("click", function WizardComponent_div_9_Template_button_click_7_listener() { ɵɵrestoreView(_r24); const ctx_r26 = ɵɵnextContext(); return ctx_r26.onSkipClick(); });
46437
46732
  ɵɵtext(8);
46438
46733
  ɵɵelementEnd();
46439
- ɵɵelementStart(9, "button", 39);
46734
+ ɵɵelementStart(9, "button", 37);
46440
46735
  ɵɵlistener("click", function WizardComponent_div_9_Template_button_click_9_listener() { ɵɵrestoreView(_r24); const ctx_r27 = ɵɵnextContext(); return ctx_r27.onExitClick(); });
46441
46736
  ɵɵtext(10);
46442
46737
  ɵɵelementEnd();
@@ -46466,7 +46761,7 @@ function WizardComponent_div_9_Template(rf, ctx) { if (rf & 1) {
46466
46761
  ɵɵadvance(1);
46467
46762
  ɵɵtextInterpolate(ctx_r5.exitButtonText());
46468
46763
  } }
46469
- const _c7$2 = function (a0) { return { "sme-padding-inset-lg": a0 }; };
46764
+ const _c6$3 = function (a0) { return { "sme-padding-inset-lg": a0 }; };
46470
46765
  /**
46471
46766
  * Whatever state the wizard is in
46472
46767
  */
@@ -47143,10 +47438,10 @@ class WizardComponent extends DynamicComponentBase {
47143
47438
  }
47144
47439
  }
47145
47440
  /** @nocollapse */ WizardComponent.ɵfac = function WizardComponent_Factory(t) { return new (t || WizardComponent)(ɵɵdirectiveInject(AppContextService), ɵɵdirectiveInject(ChangeDetectorRef), ɵɵdirectiveInject(ComponentFactoryResolver)); };
47146
- /** @nocollapse */ WizardComponent.ɵcmp = ɵɵdefineComponent({ type: WizardComponent, selectors: [["sme-wizard"]], inputs: { model: "model", wizardBuilder: "wizardBuilder" }, outputs: { modelChange: "modelChange", exit: "exit", stepSubmitted: "stepSubmitted", stepChanged: "stepChanged", stepInvalidated: "stepInvalidated", finished: "finished" }, features: [ɵɵInheritDefinitionFeature], decls: 10, vars: 8, consts: [["smeTelemetryId", "sme-wizard", "smeTelemetryArea", "WizardComponent", 1, "sme-wizard", "sme-layout-absolute", "sme-arrange-stack-v", "sme-position-inset-none"], ["class", "sme-arrange-stack-h sme-position-flex-none sme-padding-vertical-sm sme-padding-horizontal-lg sme-border-bottom-sm sme-border-bottom-color-base-80", 4, "ngIf"], ["role", "tablist", "class", "sme-arrange-stack-h sme-position-flex-none sme-padding-horizontal-lg sme-border-bottom-sm sme-border-bottom-color-base-80 sme-focus-zone", 4, "ngIf"], [1, "sme-arrange-stack-h", "sme-arrange-overflow-auto", "sme-position-flex-auto"], ["class", "sme-arrange-stack-v sme-position-flex-none sme-focus-zone\n sme-border-right-sm sme-border-right-color-base-80", 4, "ngIf"], [1, "sme-focus-zone", "sme-layout-relative", "sme-position-stretch", "sme-arrange-overflow-auto", 3, "ngClass"], [4, "ngIf"], ["id", "dynamic-content-container"], ["container", ""], ["class", "sme-layout-relative sme-position-flex-none sme-border-top-sm sme-border-top-color-base-80 sme-padding-vertical-sm sme-padding-horizontal-lg sme-focus-zone", 4, "ngIf"], [1, "sme-arrange-stack-h", "sme-position-flex-none", "sme-padding-vertical-sm", "sme-padding-horizontal-lg", "sme-border-bottom-sm", "sme-border-bottom-color-base-80"], ["id", "sme-shell-wizard-heading-id"], ["type", "preview", "class", "sme-margin-left-xs", 4, "ngIf"], ["type", "preview", 1, "sme-margin-left-xs"], ["role", "tablist", 1, "sme-arrange-stack-h", "sme-position-flex-none", "sme-padding-horizontal-lg", "sme-border-bottom-sm", "sme-border-bottom-color-base-80", "sme-focus-zone"], ["class", "sme-wizard-stage sme-arrange-stack-h sme-margin-right-md", "role", "tab", 3, "ngClass", "click", 4, "ngFor", "ngForOf"], ["role", "tab", 1, "sme-wizard-stage", "sme-arrange-stack-h", "sme-margin-right-md", 3, "ngClass", "click"], ["tabindex", "0", "aria-live", "polite", "type", "button", 1, "sme-button-trigger", "sme-wizard-button-item", "sme-padding-vertical-sm", "sme-padding-horizontal-none", "sme-button-auto-width", 3, "smeTelemetryDataBlob", "smeTelemetryId", "disabled", "smeTelemetryDisableElement"], [1, "sme-wizard-stage-index", "sme-position-flex-none", 3, "ngClass"], [1, "sme-position-flex-auto", "sme-font-body", 3, "ngClass"], [1, "sme-arrange-stack-v", "sme-position-flex-none", "sme-focus-zone", "sme-border-right-sm", "sme-border-right-color-base-80"], ["role", "tablist", "class", "sme-padding-vertical-sm sme-position-flex-auto", 3, "ngClass", 4, "ngIf"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "split-view-toggle", "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-layout-float-right", 3, "title", "click"], [1, "sme-icon", 3, "ngClass"], ["role", "tablist", 1, "sme-padding-vertical-sm", "sme-position-flex-auto", 3, "ngClass"], ["role", "tab", "tabindex", "0", "class", "sme-arrange-stack-h sme-padding-left-lg sme-padding-right-xs", "aria-live", "polite", 3, "ngClass", "title", "click", 4, "ngFor", "ngForOf"], ["role", "tab", "tabindex", "0", "aria-live", "polite", 1, "sme-arrange-stack-h", "sme-padding-left-lg", "sme-padding-right-xs", 3, "ngClass", "title", "click"], ["type", "button", 1, "sme-wizard-step", "sme-button-trigger", "sme-wizard-button-item", "sme-padding-horizontal-none", "sme-padding-vertical-xs", "sme-button-auto-width", 3, "ngClass", "disabled", "smeTelemetryDisableElement", "smeTelemetryDataBlob", "smeTelemetryId"], [1, "sme-position-flex-none", "sme-margin-right-xs"], ["class", "sme-position-flex-none", 4, "ngIf"], [1, "sme-position-flex-none"], [3, "alert"], [1, "sme-layout-relative", "sme-position-flex-none", "sme-border-top-sm", "sme-border-top-color-base-80", "sme-padding-vertical-sm", "sme-padding-horizontal-lg", "sme-focus-zone"], [1, "sme-layout-float-left"], ["type", "button", "smeTelemetryId", "wizardPrev", 1, "sme-focus-zone", 3, "smeTelemetryDataBlob", "disabled", "click"], ["type", "button", "smeTelemetryId", "wizardNext", 1, "sme-focus-zone", "sme-button-primary", 3, "smeTelemetryDataBlob", "disabled", "smeTelemetryDisableElement", "click"], ["class", "sme-layout-relative sme-layout-float-right sme-padding-left-xl sme-padding-top-md", 4, "ngIf"], ["type", "button", "smeTelemetryId", "wizardSkip", 1, "sme-focus-zone", 3, "smeTelemetryDataBlob", "click"], ["type", "button", "smeTelemetryId", "wizardExit", 1, "sme-focus-zone", "sme-layout-float-right", 3, "smeTelemetryDataBlob", "click"], [1, "sme-layout-relative", "sme-layout-float-right", "sme-padding-left-xl", "sme-padding-top-md"], ["size", "small"]], template: function WizardComponent_Template(rf, ctx) { if (rf & 1) {
47441
+ /** @nocollapse */ WizardComponent.ɵcmp = ɵɵdefineComponent({ type: WizardComponent, selectors: [["sme-wizard"]], inputs: { model: "model", wizardBuilder: "wizardBuilder" }, outputs: { modelChange: "modelChange", exit: "exit", stepSubmitted: "stepSubmitted", stepChanged: "stepChanged", stepInvalidated: "stepInvalidated", finished: "finished" }, features: [ɵɵInheritDefinitionFeature], decls: 10, vars: 8, consts: [[1, "sme-wizard", "sme-layout-absolute", "sme-arrange-stack-v", "sme-position-inset-none"], ["class", "sme-arrange-stack-h sme-position-flex-none sme-padding-vertical-sm sme-padding-horizontal-lg sme-border-bottom-sm sme-border-bottom-color-base-80", 4, "ngIf"], ["role", "tablist", "class", "sme-arrange-stack-h sme-position-flex-none sme-padding-horizontal-lg sme-border-bottom-sm sme-border-bottom-color-base-80 sme-focus-zone", 4, "ngIf"], [1, "sme-arrange-stack-h", "sme-arrange-overflow-auto", "sme-position-flex-auto"], ["class", "sme-arrange-stack-v sme-position-flex-none sme-focus-zone\n sme-border-right-sm sme-border-right-color-base-80", 4, "ngIf"], [1, "sme-focus-zone", "sme-layout-relative", "sme-position-stretch", "sme-arrange-overflow-auto", 3, "ngClass"], [4, "ngIf"], ["id", "dynamic-content-container"], ["container", ""], ["class", "sme-layout-relative sme-position-flex-none sme-border-top-sm sme-border-top-color-base-80 sme-padding-vertical-sm sme-padding-horizontal-lg sme-focus-zone", 4, "ngIf"], [1, "sme-arrange-stack-h", "sme-position-flex-none", "sme-padding-vertical-sm", "sme-padding-horizontal-lg", "sme-border-bottom-sm", "sme-border-bottom-color-base-80"], ["id", "sme-shell-wizard-heading-id"], ["type", "preview", "class", "sme-margin-left-xs", 4, "ngIf"], ["type", "preview", 1, "sme-margin-left-xs"], ["role", "tablist", 1, "sme-arrange-stack-h", "sme-position-flex-none", "sme-padding-horizontal-lg", "sme-border-bottom-sm", "sme-border-bottom-color-base-80", "sme-focus-zone"], ["role", "tab", "tabindex", "0", "aria-live", "polite", "type", "button", "class", "sme-wizard-stage sme-button-trigger sme-wizard-button-item sme-padding-vertical-sm sme-padding-horizontal-none sme-button-auto-width sme-margin-right-md", 3, "smeTelemetryDataBlob", "smeTelemetryId", "sme-active", "sme-selected", "aria-selected", "sme-wizard-stage-focus", "disabled", "smeTelemetryDisableElement", "ngClass", "click", 4, "ngFor", "ngForOf"], ["role", "tab", "tabindex", "0", "aria-live", "polite", "type", "button", 1, "sme-wizard-stage", "sme-button-trigger", "sme-wizard-button-item", "sme-padding-vertical-sm", "sme-padding-horizontal-none", "sme-button-auto-width", "sme-margin-right-md", 3, "smeTelemetryDataBlob", "smeTelemetryId", "disabled", "smeTelemetryDisableElement", "ngClass", "click"], [1, "sme-wizard-stage-index", "sme-position-flex-none", 3, "ngClass"], [1, "sme-position-flex-auto", "sme-font-body", 3, "ngClass"], [1, "sme-arrange-stack-v", "sme-position-flex-none", "sme-focus-zone", "sme-border-right-sm", "sme-border-right-color-base-80"], ["role", "tablist", "class", "sme-padding-vertical-sm sme-position-flex-auto", 3, "ngClass", 4, "ngIf"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "split-view-toggle", "sme-button-trigger", "sme-button-auto-width", "sme-position-flex-none", "sme-layout-float-right", 3, "title", "click"], [1, "sme-icon", 3, "ngClass"], ["role", "tablist", 1, "sme-padding-vertical-sm", "sme-position-flex-auto", 3, "ngClass"], ["role", "tab", "type", "button", "class", "sme-arrange-stack-h sme-wizard-step sme-button-trigger sme-wizard-button-item sme-padding-horizontal-none\n sme-position-stretch-h sme-padding-vertical-xs sme-button-auto-width sme-padding-left-lg sme-padding-right-xs", "aria-live", "polite", 3, "ngClass", "disabled", "smeTelemetryDisableElement", "smeTelemetryDataBlob", "smeTelemetryId", "title", "click", 4, "ngFor", "ngForOf"], ["role", "tab", "type", "button", "aria-live", "polite", 1, "sme-arrange-stack-h", "sme-wizard-step", "sme-button-trigger", "sme-wizard-button-item", "sme-padding-horizontal-none", "sme-position-stretch-h", "sme-padding-vertical-xs", "sme-button-auto-width", "sme-padding-left-lg", "sme-padding-right-xs", 3, "ngClass", "disabled", "smeTelemetryDisableElement", "smeTelemetryDataBlob", "smeTelemetryId", "title", "click"], [1, "sme-position-flex-none", "sme-margin-right-xs"], ["class", "sme-position-flex-none", 4, "ngIf"], [1, "sme-position-flex-none"], [3, "alert"], [1, "sme-layout-relative", "sme-position-flex-none", "sme-border-top-sm", "sme-border-top-color-base-80", "sme-padding-vertical-sm", "sme-padding-horizontal-lg", "sme-focus-zone"], [1, "sme-layout-float-left"], ["type", "button", "smeTelemetryId", "wizardPrev", 1, "sme-focus-zone", 3, "smeTelemetryDataBlob", "disabled", "click"], ["type", "button", "smeTelemetryId", "wizardNext", 1, "sme-focus-zone", "sme-button-primary", 3, "smeTelemetryDataBlob", "disabled", "smeTelemetryDisableElement", "click"], ["class", "sme-layout-relative sme-layout-float-right sme-padding-left-xl sme-padding-top-md", 4, "ngIf"], ["type", "button", "smeTelemetryId", "wizardSkip", 1, "sme-focus-zone", 3, "smeTelemetryDataBlob", "click"], ["type", "button", "smeTelemetryId", "wizardExit", 1, "sme-focus-zone", "sme-layout-float-right", 3, "smeTelemetryDataBlob", "click"], [1, "sme-layout-relative", "sme-layout-float-right", "sme-padding-left-xl", "sme-padding-top-md"], ["size", "small"]], template: function WizardComponent_Template(rf, ctx) { if (rf & 1) {
47147
47442
  ɵɵelementStart(0, "div", 0);
47148
47443
  ɵɵtemplate(1, WizardComponent_div_1_Template, 4, 3, "div", 1);
47149
- ɵɵtemplate(2, WizardComponent_ul_2_Template, 2, 1, "ul", 2);
47444
+ ɵɵtemplate(2, WizardComponent_div_2_Template, 2, 1, "div", 2);
47150
47445
  ɵɵelementStart(3, "div", 3);
47151
47446
  ɵɵtemplate(4, WizardComponent_div_4_Template, 5, 8, "div", 4);
47152
47447
  ɵɵelementStart(5, "div", 5);
@@ -47164,12 +47459,12 @@ class WizardComponent extends DynamicComponentBase {
47164
47459
  ɵɵadvance(2);
47165
47460
  ɵɵproperty("ngIf", !ctx.wizardIsFinished && !ctx.hideStepsListSidePane);
47166
47461
  ɵɵadvance(1);
47167
- ɵɵproperty("ngClass", ɵɵpureFunction1(6, _c7$2, ctx.currentStepComponent.padContents));
47462
+ ɵɵproperty("ngClass", ɵɵpureFunction1(6, _c6$3, ctx.currentStepComponent.padContents));
47168
47463
  ɵɵadvance(1);
47169
47464
  ɵɵproperty("ngIf", ctx.currentStepComponent.disabled);
47170
47465
  ɵɵadvance(3);
47171
47466
  ɵɵproperty("ngIf", !ctx.wizardIsFinished);
47172
- } }, directives: [TelemetryDirective, NgIf, NgClass, PreviewBadgeComponent, NgForOf, TooltipDirective, PageAlertBarComponent, LoadingWheelComponent], encapsulation: 2 });
47467
+ } }, directives: [NgIf, NgClass, PreviewBadgeComponent, NgForOf, TelemetryDirective, TooltipDirective, PageAlertBarComponent, LoadingWheelComponent], encapsulation: 2 });
47173
47468
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(WizardComponent, [{
47174
47469
  type: Component,
47175
47470
  args: [{