@wavemaker/app-ng-runtime 11.11.6-rc.6191 → 11.11.7-rc.6211

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 (48) hide show
  1. package/build-task/bundles/index.umd.js +1 -1
  2. package/build-task/esm2022/input/default/checkbox/checkbox.build.mjs +2 -2
  3. package/build-task/fesm2022/index.mjs +1 -1
  4. package/build-task/fesm2022/index.mjs.map +1 -1
  5. package/components/base/bundles/index.umd.js +21 -3
  6. package/components/base/components.module.d.ts +1 -1
  7. package/components/base/esm2022/components.module.mjs +8 -5
  8. package/components/base/esm2022/pipes/custom-pipes.mjs +16 -2
  9. package/components/base/esm2022/public_api.mjs +2 -2
  10. package/components/base/fesm2022/index.mjs +24 -7
  11. package/components/base/fesm2022/index.mjs.map +1 -1
  12. package/components/base/pipes/custom-pipes.d.ts +5 -0
  13. package/components/base/public_api.d.ts +1 -1
  14. package/components/basic/default/bundles/index.umd.js +8 -1
  15. package/components/basic/default/esm2022/label/label.directive.mjs +9 -2
  16. package/components/basic/default/fesm2022/index.mjs +8 -1
  17. package/components/basic/default/fesm2022/index.mjs.map +1 -1
  18. package/components/basic/search/bundles/index.umd.js +19 -4
  19. package/components/basic/search/esm2022/search.component.mjs +20 -5
  20. package/components/basic/search/fesm2022/index.mjs +19 -4
  21. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  22. package/components/basic/search/search.component.d.ts +1 -0
  23. package/components/containers/wizard/bundles/index.umd.js +135 -5
  24. package/components/containers/wizard/esm2022/wizard.component.mjs +137 -7
  25. package/components/containers/wizard/fesm2022/index.mjs +136 -6
  26. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  27. package/components/containers/wizard/wizard.component.d.ts +7 -0
  28. package/components/input/chips/bundles/index.umd.js +5 -2
  29. package/components/input/chips/esm2022/chips.component.mjs +6 -3
  30. package/components/input/chips/fesm2022/index.mjs +5 -2
  31. package/components/input/chips/fesm2022/index.mjs.map +1 -1
  32. package/components/input/default/bundles/index.umd.js +14 -2
  33. package/components/input/default/esm2022/base-form.component.mjs +15 -3
  34. package/components/input/default/fesm2022/index.mjs +14 -2
  35. package/components/input/default/fesm2022/index.mjs.map +1 -1
  36. package/components/input/epoch/bundles/index.umd.js +15 -4
  37. package/components/input/epoch/esm2022/base-date-time.component.mjs +16 -5
  38. package/components/input/epoch/fesm2022/index.mjs +15 -4
  39. package/components/input/epoch/fesm2022/index.mjs.map +1 -1
  40. package/npm-shrinkwrap.json +2 -2
  41. package/package-lock.json +2 -2
  42. package/package.json +1 -1
  43. package/runtime/base/bundles/index.umd.js +8 -4
  44. package/runtime/base/esm2022/services/app.manager.service.mjs +8 -5
  45. package/runtime/base/esm2022/services/pipe-provider.service.mjs +4 -3
  46. package/runtime/base/fesm2022/index.mjs +10 -6
  47. package/runtime/base/fesm2022/index.mjs.map +1 -1
  48. package/scripts/datatable/datatable.js +7 -3
@@ -296,6 +296,7 @@
296
296
  i0__namespace.ɵɵelementStart(0, "li", 3);
297
297
  i0__namespace.ɵɵlistener("click", function WizardComponent_For_3_Template_li_click_0_listener($event) { const step_r2 = i0__namespace.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0__namespace.ɵɵnextContext(); return i0__namespace.ɵɵresetView(ctx_r2.onWizardHeaderClick($event, step_r2)); });
298
298
  i0__namespace.ɵɵelementStart(1, "a", 4);
299
+ i0__namespace.ɵɵlistener("keydown", function WizardComponent_For_3_Template_a_keydown_1_listener($event) { i0__namespace.ɵɵrestoreView(_r1); const ctx_r2 = i0__namespace.ɵɵnextContext(); return i0__namespace.ɵɵresetView(ctx_r2.onkeydown($event)); });
299
300
  i0__namespace.ɵɵtemplate(2, WizardComponent_For_3_Conditional_2_Template, 1, 0, "span", 5);
300
301
  i0__namespace.ɵɵelementStart(3, "span", 6);
301
302
  i0__namespace.ɵɵtemplate(4, WizardComponent_For_3_Conditional_4_Template, 2, 1, "span", 7)(5, WizardComponent_For_3_Conditional_5_Template, 1, 0, "i", 8)(6, WizardComponent_For_3_Conditional_6_Template, 1, 0, "i", 9)(7, WizardComponent_For_3_Conditional_7_Template, 1, 3, "i", 10)(8, WizardComponent_For_3_Conditional_8_Template, 1, 3, "i", 10);
@@ -310,9 +311,10 @@
310
311
  const step_r2 = ctx.$implicit;
311
312
  const ɵ$index_5_r4 = ctx.$index;
312
313
  const ctx_r2 = i0__namespace.ɵɵnextContext();
313
- i0__namespace.ɵɵproperty("hidden", !step_r2.show)("ngClass", i0__namespace.ɵɵpureFunction3(17, _c4, step_r2.done, step_r2.active, step_r2.disabled));
314
+ i0__namespace.ɵɵproperty("hidden", !step_r2.show)("ngClass", i0__namespace.ɵɵpureFunction3(18, _c4, step_r2.done, step_r2.active, step_r2.disabled));
315
+ i0__namespace.ɵɵattribute("data-stepid", step_r2.widgetId);
314
316
  i0__namespace.ɵɵadvance();
315
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(21, _c5, ctx_r2.class && ctx_r2.class.includes("classic") && !step_r2.subtitle))("tabindex", step_r2.active ? "0" : "-1");
317
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(22, _c5, ctx_r2.class && ctx_r2.class.includes("classic") && !step_r2.subtitle))("tabindex", step_r2.active ? "0" : "-1");
316
318
  i0__namespace.ɵɵattribute("aria-current", step_r2.active ? "step" : null)("aria-disabled", step_r2.disabled)("aria-label", step_r2.subtitle ? "step " + (ɵ$index_5_r4 + 1) + " " + step_r2.title + " " + step_r2.subtitle : "step " + (ɵ$index_5_r4 + 1) + " " + step_r2.title)("title", step_r2.title);
317
319
  i0__namespace.ɵɵadvance();
318
320
  i0__namespace.ɵɵconditional(ctx_r2.class && ctx_r2.class.includes("classic") ? 2 : -1);
@@ -677,6 +679,23 @@
677
679
  currentStep.done = true;
678
680
  nextStep.active = true;
679
681
  this.currentStep = nextStep;
682
+ // Remove 'current' class from all wizard steps in header
683
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
684
+ allStepItems.forEach((el) => {
685
+ el.classList.remove('current');
686
+ const anchor = el.querySelector('a');
687
+ if (anchor) {
688
+ anchor.setAttribute('tabindex', '-1');
689
+ }
690
+ });
691
+ // Add 'current' to next step header item
692
+ const newStepLi = this.nativeElement.querySelector(`li[data-stepid="${nextStep.widgetId}"]`);
693
+ const newStepAnchor = newStepLi?.querySelector('a');
694
+ if (newStepLi && newStepAnchor) {
695
+ newStepLi.classList.add('current');
696
+ newStepAnchor.setAttribute('tabindex', '0');
697
+ newStepAnchor.focus();
698
+ }
680
699
  this.updateStepFocus();
681
700
  }
682
701
  this.addMoreText();
@@ -710,6 +729,23 @@
710
729
  currentStep.disabled = true;
711
730
  prevStep.active = true;
712
731
  this.currentStep = prevStep;
732
+ // Remove 'current' class from all steps
733
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
734
+ allStepItems.forEach((el) => {
735
+ el.classList.remove('current');
736
+ const anchor = el.querySelector('a');
737
+ if (anchor) {
738
+ anchor.setAttribute('tabindex', '-1');
739
+ }
740
+ });
741
+ // Apply 'current' to prev step
742
+ const prevStepLi = this.nativeElement.querySelector(`li[data-stepid="${prevStep.widgetId}"]`);
743
+ const prevStepAnchor = prevStepLi?.querySelector('a');
744
+ if (prevStepLi && prevStepAnchor) {
745
+ prevStepLi.classList.add('current');
746
+ prevStepAnchor.setAttribute('tabindex', '0');
747
+ prevStepAnchor.focus();
748
+ }
713
749
  this.updateStepFocus();
714
750
  }
715
751
  this.addMoreText();
@@ -848,6 +884,37 @@
848
884
  }
849
885
  });
850
886
  }
887
+ isSelectableStep(stepRef) {
888
+ return stepRef.show && !stepRef.disabled;
889
+ }
890
+ getSelectableStepBeforeIndex(index) {
891
+ for (let i = index - 1; i >= 0; i--) {
892
+ const step = this.getStepRefByIndex(i);
893
+ if (this.isSelectableStep(step)) {
894
+ return step;
895
+ }
896
+ }
897
+ if (index === 0) {
898
+ const step = this.getStepRefByIndex(this.steps.length - 1);
899
+ if (this.isSelectableStep(step)) {
900
+ return step;
901
+ }
902
+ }
903
+ }
904
+ getSelectableStepAfterIndex(index) {
905
+ for (let i = index + 1; i < this.steps.length; i++) {
906
+ const step = this.getStepRefByIndex(i);
907
+ if (this.isSelectableStep(step)) {
908
+ return step;
909
+ }
910
+ }
911
+ if (index === this.steps.length - 1) {
912
+ const step = this.getStepRefByIndex(0);
913
+ if (this.isSelectableStep(step)) {
914
+ return step;
915
+ }
916
+ }
917
+ }
851
918
  ngAfterViewInit() {
852
919
  super.ngAfterViewInit();
853
920
  i3.styler(this.nativeElement.querySelector('.panel-body'), this, i3.APPLY_STYLES_TYPE.INNER_SHELL);
@@ -861,6 +928,69 @@
861
928
  this.nativeElement.querySelectorAll('div.app-wizard-actions').forEach(el => el?.classList.add(this.actionsalignment));
862
929
  this.nativeElement.querySelectorAll('div.app-wizard-actions-right').forEach(el => el?.classList.remove('app-container'));
863
930
  }
931
+ getActiveStepIndex() {
932
+ return lodashEs.findIndex(this.steps.toArray(), { isCurrent: true });
933
+ }
934
+ onkeydown(event) {
935
+ let newStep;
936
+ switch (event.key) {
937
+ case 'ArrowLeft':
938
+ case 'ArrowUp':
939
+ event.preventDefault();
940
+ newStep = this.autoActivation ? null : this.getSelectableStepBeforeIndex(this.getSelectedStepIndex());
941
+ break;
942
+ case 'ArrowRight':
943
+ case 'ArrowDown':
944
+ event.preventDefault();
945
+ newStep = this.autoActivation ? null : this.getSelectableStepAfterIndex(this.getSelectedStepIndex());
946
+ break;
947
+ case 'Enter':
948
+ case ' ':
949
+ case 'Spacebar':
950
+ event.preventDefault();
951
+ setTimeout(() => {
952
+ const activeElement = this.nativeElement.querySelector('li.current');
953
+ const stepLi = activeElement.closest('li[data-stepid]');
954
+ const isInWizardHeader = activeElement.closest('.app-wizard-heading');
955
+ if (stepLi && isInWizardHeader) {
956
+ const stepId = stepLi.getAttribute('data-stepid');
957
+ const stepIndex = this.steps.toArray().findIndex(step => step.widgetId === stepId);
958
+ const currentStep = this.steps.toArray()[stepIndex];
959
+ if (currentStep && currentStep !== this.currentStep) {
960
+ this.onWizardHeaderClick(event, currentStep);
961
+ // Update tabindex for accessibility
962
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
963
+ allStepItems.forEach((el) => {
964
+ el.setAttribute('tabindex', '-1');
965
+ });
966
+ const stepAnchor = stepLi.querySelector('a');
967
+ if (stepAnchor) {
968
+ stepAnchor.setAttribute('tabindex', '0');
969
+ stepAnchor.focus();
970
+ }
971
+ }
972
+ }
973
+ }, 0);
974
+ break;
975
+ default:
976
+ return;
977
+ }
978
+ if (newStep) {
979
+ this.nativeElement.querySelector('li.current')?.classList.remove('current');
980
+ this.nativeElement.querySelector(`li[data-stepid="${newStep.widgetId}"]`)?.classList.add('current');
981
+ const stepLi = this.nativeElement.querySelector(".app-wizard-heading li.current a");
982
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid] a');
983
+ allStepItems.forEach((el) => {
984
+ el.setAttribute('tabindex', '-1');
985
+ });
986
+ (stepLi).setAttribute('tabindex', '0');
987
+ stepLi?.focus();
988
+ }
989
+ }
990
+ getSelectedStepIndex() {
991
+ const index = this.steps.toArray().findIndex(step => this.nativeElement.querySelector(`li[data-stepid="${step.widgetId}"]`)?.classList.contains("current"));
992
+ return index >= 0 ? index : this.getActiveStepIndex();
993
+ }
864
994
  static { this.ɵfac = function WizardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WizardComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.Injector), i0__namespace.ɵɵdirectiveInject(i1$1__namespace.DynamicComponentRefProvider), i0__namespace.ɵɵdirectiveInject(i3.Context, 2), i0__namespace.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
865
995
  static { this.ɵcmp = /*@__PURE__*/ i0__namespace.ɵɵdefineComponent({ type: WizardComponent, selectors: [["div", "wmWizard", ""]], contentQueries: function WizardComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
866
996
  i0__namespace.ɵɵcontentQuery(dirIndex, _c0, 4, i0.TemplateRef);
@@ -872,10 +1002,10 @@
872
1002
  } }, exportAs: ["wmWizard"], standalone: true, features: [i0__namespace.ɵɵProvidersFeature([
873
1003
  i3.provideAsWidgetRef(WizardComponent),
874
1004
  { provide: i3.Context, useFactory: () => { return {}; }, multi: true }
875
- ]), i0__namespace.ɵɵInheritDefinitionFeature, i0__namespace.ɵɵStandaloneFeature], attrs: _c1, ngContentSelectors: _c3, decls: 7, vars: 6, consts: [[1, "app-wizard-heading"], [1, "app-wizard-step", 3, "hidden", "ngClass"], [1, "app-wizard-body", "panel-body"], [1, "app-wizard-step", 3, "click", "hidden", "ngClass"], ["href", "javascript:void(0)", 3, "ngClass", "tabindex"], [1, "arrow"], [1, "wizard-step-number"], [1, "count"], [1, "dottedstepper"], [1, "app-icon", "wi", "wi-done"], [3, "class"], [1, "title-wrapper"], [1, "step-title", 3, "textContent"], [1, "subtitle-wrapper"], [1, "read_more", 2, "display", "none", 3, "click"], ["wmMessage", "", "caption.bind", "message.caption", "type.bind", "message.type"], [4, "ngTemplateOutlet"]], template: function WizardComponent_Template(rf, ctx) { if (rf & 1) {
1005
+ ]), i0__namespace.ɵɵInheritDefinitionFeature, i0__namespace.ɵɵStandaloneFeature], attrs: _c1, ngContentSelectors: _c3, decls: 7, vars: 6, consts: [[1, "app-wizard-heading"], [1, "app-wizard-step", 3, "hidden", "ngClass"], [1, "app-wizard-body", "panel-body"], [1, "app-wizard-step", 3, "click", "hidden", "ngClass"], ["href", "javascript:void(0)", 3, "keydown", "ngClass", "tabindex"], [1, "arrow"], [1, "wizard-step-number"], [1, "count"], [1, "dottedstepper"], [1, "app-icon", "wi", "wi-done"], [3, "class"], [1, "title-wrapper"], [1, "step-title", 3, "textContent"], [1, "subtitle-wrapper"], [1, "read_more", 2, "display", "none", 3, "click"], ["wmMessage", "", "caption.bind", "message.caption", "type.bind", "message.type"], [4, "ngTemplateOutlet"]], template: function WizardComponent_Template(rf, ctx) { if (rf & 1) {
876
1006
  i0__namespace.ɵɵprojectionDef(_c2);
877
1007
  i0__namespace.ɵɵelementStart(0, "div", 0)(1, "ul");
878
- i0__namespace.ɵɵrepeaterCreate(2, WizardComponent_For_3_Template, 13, 23, "li", 1, i0__namespace.ɵɵrepeaterTrackByIdentity);
1008
+ i0__namespace.ɵɵrepeaterCreate(2, WizardComponent_For_3_Template, 13, 24, "li", 1, i0__namespace.ɵɵrepeaterTrackByIdentity);
879
1009
  i0__namespace.ɵɵelementEnd()();
880
1010
  i0__namespace.ɵɵtemplate(4, WizardComponent_Conditional_4_Template, 3, 1, "div", 2)(5, WizardComponent_Conditional_5_Template, 3, 1, "div", 2)(6, WizardComponent_Conditional_6_Template, 1, 1, "ng-container");
881
1011
  } if (rf & 2) {
@@ -896,7 +1026,7 @@
896
1026
  args: [{ standalone: true, imports: [i2.CommonModule, i3.WmComponentsModule], selector: 'div[wmWizard]', providers: [
897
1027
  i3.provideAsWidgetRef(WizardComponent),
898
1028
  { provide: i3.Context, useFactory: () => { return {}; }, multi: true }
899
- ], exportAs: 'wmWizard', template: "<div class=\"app-wizard-heading\">\n <ul class=\"app-wizard-steps nav nav-pills {{stepClass}}\">\n @for (step of steps; track step; let i = $index) {\n <li class=\"app-wizard-step\" [hidden]=\"!step.show\"\n [ngClass]=\"{active: step.done, current: step.active, disabled: step.disabled}\"\n (click)=\"onWizardHeaderClick($event, step)\">\n <a href=\"javascript:void(0)\" [attr.aria-current]=\"step.active ? 'step' : null\"\n [attr.aria-disabled]=\"step.disabled\" [attr.aria-label]='step.subtitle ? \"step \" + (i + 1) + \" \" + step.title + \" \" + step.subtitle : \"step \" + (i + 1) + \" \" + step.title' [attr.title]= \"step.title\"\n [ngClass]=\"{'title-center-align':class && class.includes('classic') && !step.subtitle}\" [tabindex]=\"step.active ? '0' : '-1'\">\n @if (class && class.includes('classic')) {\n <span class=\"arrow\"></span>\n }\n <span class=\"wizard-step-number\">\n @if (class && class.includes('number') && !step.isDone) {\n <span class=\"count\">{{i+1}}</span>\n }\n @if (class && (class.includes('dottedstepper') || class.includes('text-inline') && !class.includes('iconstepper')) && !step.isDone) {\n <i class=\"dottedstepper\"></i>\n }\n @if (class && (class.includes('dottedstepper') || class.includes('number')) && step.isDone) {\n <i class=\"app-icon wi wi-done\"></i>\n }\n @if ((class && class.includes('iconstepper')) && ((step.iconclass && !step.isDone) || (step.iconclass && step.isDone && step.doneiconclass ===''))) {\n <i class=\"app-icon {{step.iconclass}}\"></i>\n }\n @if (step.doneiconclass && step.isDone && (class && class.includes('iconstepper'))) {\n <i class=\"app-icon {{step.doneiconclass}}\"></i>\n }\n </span>\n <span class=\"title-wrapper\">\n @if (class && class.includes('text-inline')) {\n <span>{{'0' + (i+1)}}</span>\n }\n <span class=\"step-title\" [textContent]=\"step.title\"></span>\n </span>\n @if (step.subtitle) {\n <span class=\"subtitle-wrapper\" [attr.title]=\"step.subtitle\">\n <span class=\"step-title\" [textContent]=\"step.subtitle\"></span>\n <a class=\"read_more\" (click)=\"readMoreSubtitle()\" style=\"display:none\">more</a>\n </span>\n }\n </a>\n </li>\n }\n </ul>\n</div>\n@if (type !== 'dynamic') {\n<div class=\"app-wizard-body panel-body\">\n @if (message.caption) {\n <p wmMessage caption.bind=\"message.caption\" type.bind=\"message.type\"></p>\n }\n <ng-content ngProjectAs=\"form[wmWizardStep]\"></ng-content>\n</div>\n}\n@if (type === 'dynamic') {\n<div class=\"app-wizard-body panel-body\">\n @if(!fieldDefs?.length) {\n <div>{{nodatamessage}}</div>\n }\n <ng-content select=\"div[wmRepeatTemplate]\"></ng-content>\n</div>\n}\n@if(fieldDefs && fieldDefs.length || type !== 'dynamic') {\n <ng-container *ngTemplateOutlet=\"wizardAction\"></ng-container>\n}\n" }]
1029
+ ], exportAs: 'wmWizard', template: "<div class=\"app-wizard-heading\">\n <ul class=\"app-wizard-steps nav nav-pills {{stepClass}}\">\n @for (step of steps; track step; let i = $index) {\n <li class=\"app-wizard-step\" [hidden]=\"!step.show\"\n [ngClass]=\"{active: step.done, current: step.active, disabled: step.disabled}\"\n (click)=\"onWizardHeaderClick($event, step)\" [attr.data-stepid]=\"step.widgetId\">\n <a href=\"javascript:void(0)\" [attr.aria-current]=\"step.active ? 'step' : null\"\n [attr.aria-disabled]=\"step.disabled\" [attr.aria-label]='step.subtitle ? \"step \" + (i + 1) + \" \" + step.title + \" \" + step.subtitle : \"step \" + (i + 1) + \" \" + step.title' [attr.title]= \"step.title\"\n [ngClass]=\"{'title-center-align':class && class.includes('classic') && !step.subtitle}\" [tabindex]=\"step.active ? '0' : '-1'\" (keydown)=\"onkeydown($event)\">\n @if (class && class.includes('classic')) {\n <span class=\"arrow\"></span>\n }\n <span class=\"wizard-step-number\">\n @if (class && class.includes('number') && !step.isDone) {\n <span class=\"count\">{{i+1}}</span>\n }\n @if (class && (class.includes('dottedstepper') || class.includes('text-inline') && !class.includes('iconstepper')) && !step.isDone) {\n <i class=\"dottedstepper\"></i>\n }\n @if (class && (class.includes('dottedstepper') || class.includes('number')) && step.isDone) {\n <i class=\"app-icon wi wi-done\"></i>\n }\n @if ((class && class.includes('iconstepper')) && ((step.iconclass && !step.isDone) || (step.iconclass && step.isDone && step.doneiconclass ===''))) {\n <i class=\"app-icon {{step.iconclass}}\"></i>\n }\n @if (step.doneiconclass && step.isDone && (class && class.includes('iconstepper'))) {\n <i class=\"app-icon {{step.doneiconclass}}\"></i>\n }\n </span>\n <span class=\"title-wrapper\">\n @if (class && class.includes('text-inline')) {\n <span>{{'0' + (i+1)}}</span>\n }\n <span class=\"step-title\" [textContent]=\"step.title\"></span>\n </span>\n @if (step.subtitle) {\n <span class=\"subtitle-wrapper\" [attr.title]=\"step.subtitle\">\n <span class=\"step-title\" [textContent]=\"step.subtitle\"></span>\n <a class=\"read_more\" (click)=\"readMoreSubtitle()\" style=\"display:none\">more</a>\n </span>\n }\n </a>\n </li>\n }\n </ul>\n</div>\n@if (type !== 'dynamic') {\n<div class=\"app-wizard-body panel-body\">\n @if (message.caption) {\n <p wmMessage caption.bind=\"message.caption\" type.bind=\"message.type\"></p>\n }\n <ng-content ngProjectAs=\"form[wmWizardStep]\"></ng-content>\n</div>\n}\n@if (type === 'dynamic') {\n<div class=\"app-wizard-body panel-body\">\n @if(!fieldDefs?.length) {\n <div>{{nodatamessage}}</div>\n }\n <ng-content select=\"div[wmRepeatTemplate]\"></ng-content>\n</div>\n}\n@if(fieldDefs && fieldDefs.length || type !== 'dynamic') {\n <ng-container *ngTemplateOutlet=\"wizardAction\"></ng-container>\n}\n" }]
900
1030
  }], () => [{ type: i0__namespace.Injector }, { type: i1$1__namespace.DynamicComponentRefProvider }, { type: Array, decorators: [{
901
1031
  type: i0.Self
902
1032
  }, {