@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
@@ -8,7 +8,7 @@ import * as i1$1 from '@wm/core';
8
8
  import { noop } from '@wm/core';
9
9
  import * as i1 from '@angular/forms';
10
10
  import { NgForm } from '@angular/forms';
11
- import { find, isArray, forEach, indexOf, get, isString, isNumber } from 'lodash-es';
11
+ import { find, isArray, forEach, indexOf, get, isString, isNumber, findIndex } from 'lodash-es';
12
12
 
13
13
  const registerProps$2 = () => {
14
14
  register('wm-wizard', new Map([
@@ -279,6 +279,7 @@ function WizardComponent_For_3_Template(rf, ctx) { if (rf & 1) {
279
279
  i0.ɵɵelementStart(0, "li", 3);
280
280
  i0.ɵɵlistener("click", function WizardComponent_For_3_Template_li_click_0_listener($event) { const step_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onWizardHeaderClick($event, step_r2)); });
281
281
  i0.ɵɵelementStart(1, "a", 4);
282
+ i0.ɵɵlistener("keydown", function WizardComponent_For_3_Template_a_keydown_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onkeydown($event)); });
282
283
  i0.ɵɵtemplate(2, WizardComponent_For_3_Conditional_2_Template, 1, 0, "span", 5);
283
284
  i0.ɵɵelementStart(3, "span", 6);
284
285
  i0.ɵɵ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);
@@ -293,9 +294,10 @@ function WizardComponent_For_3_Template(rf, ctx) { if (rf & 1) {
293
294
  const step_r2 = ctx.$implicit;
294
295
  const ɵ$index_5_r4 = ctx.$index;
295
296
  const ctx_r2 = i0.ɵɵnextContext();
296
- i0.ɵɵproperty("hidden", !step_r2.show)("ngClass", i0.ɵɵpureFunction3(17, _c4, step_r2.done, step_r2.active, step_r2.disabled));
297
+ i0.ɵɵproperty("hidden", !step_r2.show)("ngClass", i0.ɵɵpureFunction3(18, _c4, step_r2.done, step_r2.active, step_r2.disabled));
298
+ i0.ɵɵattribute("data-stepid", step_r2.widgetId);
297
299
  i0.ɵɵadvance();
298
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(21, _c5, ctx_r2.class && ctx_r2.class.includes("classic") && !step_r2.subtitle))("tabindex", step_r2.active ? "0" : "-1");
300
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(22, _c5, ctx_r2.class && ctx_r2.class.includes("classic") && !step_r2.subtitle))("tabindex", step_r2.active ? "0" : "-1");
299
301
  i0.ɵɵ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);
300
302
  i0.ɵɵadvance();
301
303
  i0.ɵɵconditional(ctx_r2.class && ctx_r2.class.includes("classic") ? 2 : -1);
@@ -660,6 +662,23 @@ class WizardComponent extends StylableComponent {
660
662
  currentStep.done = true;
661
663
  nextStep.active = true;
662
664
  this.currentStep = nextStep;
665
+ // Remove 'current' class from all wizard steps in header
666
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
667
+ allStepItems.forEach((el) => {
668
+ el.classList.remove('current');
669
+ const anchor = el.querySelector('a');
670
+ if (anchor) {
671
+ anchor.setAttribute('tabindex', '-1');
672
+ }
673
+ });
674
+ // Add 'current' to next step header item
675
+ const newStepLi = this.nativeElement.querySelector(`li[data-stepid="${nextStep.widgetId}"]`);
676
+ const newStepAnchor = newStepLi?.querySelector('a');
677
+ if (newStepLi && newStepAnchor) {
678
+ newStepLi.classList.add('current');
679
+ newStepAnchor.setAttribute('tabindex', '0');
680
+ newStepAnchor.focus();
681
+ }
663
682
  this.updateStepFocus();
664
683
  }
665
684
  this.addMoreText();
@@ -693,6 +712,23 @@ class WizardComponent extends StylableComponent {
693
712
  currentStep.disabled = true;
694
713
  prevStep.active = true;
695
714
  this.currentStep = prevStep;
715
+ // Remove 'current' class from all steps
716
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
717
+ allStepItems.forEach((el) => {
718
+ el.classList.remove('current');
719
+ const anchor = el.querySelector('a');
720
+ if (anchor) {
721
+ anchor.setAttribute('tabindex', '-1');
722
+ }
723
+ });
724
+ // Apply 'current' to prev step
725
+ const prevStepLi = this.nativeElement.querySelector(`li[data-stepid="${prevStep.widgetId}"]`);
726
+ const prevStepAnchor = prevStepLi?.querySelector('a');
727
+ if (prevStepLi && prevStepAnchor) {
728
+ prevStepLi.classList.add('current');
729
+ prevStepAnchor.setAttribute('tabindex', '0');
730
+ prevStepAnchor.focus();
731
+ }
696
732
  this.updateStepFocus();
697
733
  }
698
734
  this.addMoreText();
@@ -831,6 +867,37 @@ class WizardComponent extends StylableComponent {
831
867
  }
832
868
  });
833
869
  }
870
+ isSelectableStep(stepRef) {
871
+ return stepRef.show && !stepRef.disabled;
872
+ }
873
+ getSelectableStepBeforeIndex(index) {
874
+ for (let i = index - 1; i >= 0; i--) {
875
+ const step = this.getStepRefByIndex(i);
876
+ if (this.isSelectableStep(step)) {
877
+ return step;
878
+ }
879
+ }
880
+ if (index === 0) {
881
+ const step = this.getStepRefByIndex(this.steps.length - 1);
882
+ if (this.isSelectableStep(step)) {
883
+ return step;
884
+ }
885
+ }
886
+ }
887
+ getSelectableStepAfterIndex(index) {
888
+ for (let i = index + 1; i < this.steps.length; i++) {
889
+ const step = this.getStepRefByIndex(i);
890
+ if (this.isSelectableStep(step)) {
891
+ return step;
892
+ }
893
+ }
894
+ if (index === this.steps.length - 1) {
895
+ const step = this.getStepRefByIndex(0);
896
+ if (this.isSelectableStep(step)) {
897
+ return step;
898
+ }
899
+ }
900
+ }
834
901
  ngAfterViewInit() {
835
902
  super.ngAfterViewInit();
836
903
  styler(this.nativeElement.querySelector('.panel-body'), this, APPLY_STYLES_TYPE.INNER_SHELL);
@@ -844,6 +911,69 @@ class WizardComponent extends StylableComponent {
844
911
  this.nativeElement.querySelectorAll('div.app-wizard-actions').forEach(el => el?.classList.add(this.actionsalignment));
845
912
  this.nativeElement.querySelectorAll('div.app-wizard-actions-right').forEach(el => el?.classList.remove('app-container'));
846
913
  }
914
+ getActiveStepIndex() {
915
+ return findIndex(this.steps.toArray(), { isCurrent: true });
916
+ }
917
+ onkeydown(event) {
918
+ let newStep;
919
+ switch (event.key) {
920
+ case 'ArrowLeft':
921
+ case 'ArrowUp':
922
+ event.preventDefault();
923
+ newStep = this.autoActivation ? null : this.getSelectableStepBeforeIndex(this.getSelectedStepIndex());
924
+ break;
925
+ case 'ArrowRight':
926
+ case 'ArrowDown':
927
+ event.preventDefault();
928
+ newStep = this.autoActivation ? null : this.getSelectableStepAfterIndex(this.getSelectedStepIndex());
929
+ break;
930
+ case 'Enter':
931
+ case ' ':
932
+ case 'Spacebar':
933
+ event.preventDefault();
934
+ setTimeout(() => {
935
+ const activeElement = this.nativeElement.querySelector('li.current');
936
+ const stepLi = activeElement.closest('li[data-stepid]');
937
+ const isInWizardHeader = activeElement.closest('.app-wizard-heading');
938
+ if (stepLi && isInWizardHeader) {
939
+ const stepId = stepLi.getAttribute('data-stepid');
940
+ const stepIndex = this.steps.toArray().findIndex(step => step.widgetId === stepId);
941
+ const currentStep = this.steps.toArray()[stepIndex];
942
+ if (currentStep && currentStep !== this.currentStep) {
943
+ this.onWizardHeaderClick(event, currentStep);
944
+ // Update tabindex for accessibility
945
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');
946
+ allStepItems.forEach((el) => {
947
+ el.setAttribute('tabindex', '-1');
948
+ });
949
+ const stepAnchor = stepLi.querySelector('a');
950
+ if (stepAnchor) {
951
+ stepAnchor.setAttribute('tabindex', '0');
952
+ stepAnchor.focus();
953
+ }
954
+ }
955
+ }
956
+ }, 0);
957
+ break;
958
+ default:
959
+ return;
960
+ }
961
+ if (newStep) {
962
+ this.nativeElement.querySelector('li.current')?.classList.remove('current');
963
+ this.nativeElement.querySelector(`li[data-stepid="${newStep.widgetId}"]`)?.classList.add('current');
964
+ const stepLi = this.nativeElement.querySelector(".app-wizard-heading li.current a");
965
+ const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid] a');
966
+ allStepItems.forEach((el) => {
967
+ el.setAttribute('tabindex', '-1');
968
+ });
969
+ (stepLi).setAttribute('tabindex', '0');
970
+ stepLi?.focus();
971
+ }
972
+ }
973
+ getSelectedStepIndex() {
974
+ const index = this.steps.toArray().findIndex(step => this.nativeElement.querySelector(`li[data-stepid="${step.widgetId}"]`)?.classList.contains("current"));
975
+ return index >= 0 ? index : this.getActiveStepIndex();
976
+ }
847
977
  static { this.ɵfac = function WizardComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WizardComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1$1.DynamicComponentRefProvider), i0.ɵɵdirectiveInject(Context, 2), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
848
978
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WizardComponent, selectors: [["div", "wmWizard", ""]], contentQueries: function WizardComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
849
979
  i0.ɵɵcontentQuery(dirIndex, _c0, 4, TemplateRef);
@@ -855,10 +985,10 @@ class WizardComponent extends StylableComponent {
855
985
  } }, exportAs: ["wmWizard"], standalone: true, features: [i0.ɵɵProvidersFeature([
856
986
  provideAsWidgetRef(WizardComponent),
857
987
  { provide: Context, useFactory: () => { return {}; }, multi: true }
858
- ]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵ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) {
988
+ ]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵ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) {
859
989
  i0.ɵɵprojectionDef(_c2);
860
990
  i0.ɵɵelementStart(0, "div", 0)(1, "ul");
861
- i0.ɵɵrepeaterCreate(2, WizardComponent_For_3_Template, 13, 23, "li", 1, i0.ɵɵrepeaterTrackByIdentity);
991
+ i0.ɵɵrepeaterCreate(2, WizardComponent_For_3_Template, 13, 24, "li", 1, i0.ɵɵrepeaterTrackByIdentity);
862
992
  i0.ɵɵelementEnd()();
863
993
  i0.ɵɵ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");
864
994
  } if (rf & 2) {
@@ -879,7 +1009,7 @@ class WizardComponent extends StylableComponent {
879
1009
  args: [{ standalone: true, imports: [CommonModule, WmComponentsModule], selector: 'div[wmWizard]', providers: [
880
1010
  provideAsWidgetRef(WizardComponent),
881
1011
  { provide: Context, useFactory: () => { return {}; }, multi: true }
882
- ], 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" }]
1012
+ ], 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" }]
883
1013
  }], () => [{ type: i0.Injector }, { type: i1$1.DynamicComponentRefProvider }, { type: Array, decorators: [{
884
1014
  type: Self
885
1015
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/containers/wizard/src/wizard.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-step/wizard-step.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-step/wizard-step.component.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard.component.html","../../../../../projects/components/widgets/containers/wizard/src/wizard.component.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-action/wizard-action.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-action/wizard-action.directive.ts","../../../../../projects/components/widgets/containers/wizard/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizard',\n new Map(\n [\n ['actionsalignment', {value: 'right', ...PROP_STRING}],\n ['cancelable', {value: true, ...PROP_BOOLEAN}],\n ['cancelbtnlabel', {value: 'Cancel', ...PROP_STRING}],\n ['class', {value: 'classic', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['defaultstep', {value: 'none', ...PROP_STRING}],\n ['defaultstepindex', {value: 0, ...PROP_NUMBER}],\n ['donebtnlabel', {value: 'Done', ...PROP_STRING}],\n ['enablenext', {value: false, ...PROP_BOOLEAN}],\n ['name', PROP_STRING],\n ['nextbtnlabel', {value: 'Next', ...PROP_STRING}],\n ['nodatamessage', {value: 'No Data Found', ... PROP_STRING}],\n ['previousbtnlabel', {value: 'Previous', ...PROP_STRING}],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['stepstyle', {value: 'auto', ...PROP_STRING}],\n ['type', PROP_STRING]\n ]\n )\n );\n};\n","import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizardstep',\n new Map(\n [\n ['class', PROP_STRING],\n ['content', PROP_STRING],\n ['doneiconclass', {value: 'wi wi-done', ...PROP_STRING}],\n ['dynamicStepIndex', PROP_NUMBER], // internal property\n ['enableskip', {value: false, ...PROP_BOOLEAN}],\n ['iconclass', {value: 'wi wi-person', ...PROP_STRING}],\n ['isdynamic', PROP_STRING], // internal property\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['subtitle', PROP_STRING],\n ['title', {value: 'Step Title', ...PROP_STRING}]\n ]\n )\n );\n};\n","import {\n AfterViewInit,\n Component,\n ContentChildren,\n HostBinding,\n Inject,\n Injector,\n OnInit,\n Optional,\n Self\n} from \"@angular/core\";\nimport {\n BaseComponent,\n IWidgetConfig,\n provideAsWidgetRef,\n RedrawableDirective,\n StylableComponent\n} from \"@wm/components/base\";\nimport {NgForm} from \"@angular/forms\";\nimport {registerProps} from \"./wizard-step.props\";\nimport {noop} from \"@wm/core\";\nimport {WizardComponent} from \"../wizard.component\";\n\nconst DEFAULT_CLS = 'app-wizard-step-content';\n\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-wizardstep',\n hostClass: DEFAULT_CLS,\n};\n\nconst enum STEP_STATUS {\n CURRENT = 1,\n DISABLED,\n COMPLETED\n}\n\n@Component({\n standalone: true,\n selector: 'form[wmWizardStep]',\n template: `<ng-content partial-container-target></ng-content>`,\n providers: [\n provideAsWidgetRef(WizardStepComponent),\n NgForm\n ],\n exportAs: 'wmWizardStep'\n})\nexport class WizardStepComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public show: boolean;\n public name: string;\n public enableskip: any;\n public disablenext: boolean;\n public disabledone: boolean;\n public disableprevious: boolean;\n public isInitialized: boolean;\n private isdynamic: boolean;\n public $lazyLoad = noop;\n isDone: boolean = false;\n\n private status: STEP_STATUS = STEP_STATUS.DISABLED;\n private wizardComponent: WizardComponent;\n\n // reference to the components which needs a redraw(eg, grid, chart) when the height of this component changes\n @ContentChildren(RedrawableDirective, {descendants: true}) reDrawableComponents;\n\n @HostBinding('class.current')\n get isCurrent() {\n return this.active;\n }\n\n /**\n * along with the wizard form , also validate the forms\n * if there are any inside the wizard\n * @returns {boolean}\n */\n public get isValid() {\n return (this.ngForm.valid || this.ngForm.disabled) && this.areEmbeddedFormsValid();\n }\n\n /**\n * get all the forms inside the wizard if any and validate\n * @returns {boolean}\n */\n private areEmbeddedFormsValid() {\n for (const form of this.getAllEmbeddedForms()) {\n if (form.widget && form.widget.ngform && !form.widget.ngform.valid) {\n return false;\n }\n }\n return true;\n }\n\n private getAllEmbeddedForms() {\n return this.$element.find('form');\n }\n\n public get enableNext() {\n return !this.disablenext;\n }\n\n public get enableDone() {\n return !this.disabledone;\n }\n\n public get enablePrev() {\n return !this.disableprevious;\n }\n\n public set active(nv: boolean) {\n const isActive = this.active;\n this.status = STEP_STATUS.CURRENT;\n if (nv && !isActive) {\n this.redrawChildren();\n }\n }\n\n public get active(): boolean {\n return this.status === STEP_STATUS.CURRENT;\n }\n\n public set done(nv: boolean) {\n if (nv) {\n this.status = STEP_STATUS.COMPLETED;\n }\n }\n\n public get done(): boolean {\n return this.status === STEP_STATUS.COMPLETED;\n }\n\n public set disabled(nv: boolean) {\n if (nv) {\n this.status = STEP_STATUS.DISABLED;\n }\n }\n\n public get disabled(): boolean {\n return this.status === STEP_STATUS.DISABLED;\n }\n\n constructor(inj: Injector, @Self() private ngForm: NgForm, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n // If we inject directly as a param in the constructor, getting circular dependency error in unit testcases\n this.wizardComponent = this.inj.get(WizardComponent);\n }\n\n public invokeNextCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('next', {currentStep: this, stepIndex: index});\n }\n\n public invokePrevCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('prev', {currentStep: this, stepIndex: index});\n }\n\n public invokeSkipCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('skip', {currentStep: this, stepIndex: index});\n }\n\n // redraw all the projected components which are projected.\n private redrawChildren() {\n setTimeout(() => {\n if (this.reDrawableComponents) {\n this.reDrawableComponents.forEach(c => c.redraw());\n }\n const stepIndex = (this as any).wizardComponent.getCurrentStepIndex();\n this.invokeEventCallback('load', { stepIndex });\n }, 100);\n }\n\n public remove() {\n if (this.active) {\n this === this.wizardComponent.steps.last ? this.wizardComponent.prev() : this.wizardComponent.next();\n }\n const availablePanes = this.wizardComponent.steps.toArray();\n availablePanes.splice((this as any).wizardComponent.getStepIndexByRef(this), 1);\n this.wizardComponent.steps.reset([...availablePanes]);\n this.nativeElement.remove();\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'content') {\n setTimeout(() => this.$lazyLoad(), 100);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.isdynamic) {\n this.wizardComponent.registerDynamicStep(this);\n }\n }\n}\n","<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","import { CommonModule } from '@angular/common';\nimport { WmComponentsModule } from \"@wm/components/base\";\nimport {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n Component,\n ContentChild,\n ContentChildren,\n Inject,\n Injector,\n OnInit,\n Optional,\n QueryList,\n Self,\n TemplateRef\n} from '@angular/core';\n\nimport {DynamicComponentRefProvider, noop} from '@wm/core';\nimport {\n APPLY_STYLES_TYPE,\n IWidgetConfig,\n provideAsWidgetRef,\n styler,\n StylableComponent,\n Context, createArrayFrom\n} from '@wm/components/base';\n\nimport { registerProps } from './wizard.props';\n\nimport {WizardStepComponent} from \"./wizard-step/wizard-step.component\";\nimport {find, forEach, get, indexOf, isArray, isNumber, isString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-wizard panel clearfix';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-wizard',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, WmComponentsModule],\n selector: 'div[wmWizard]',\n templateUrl: './wizard.component.html',\n providers: [\n provideAsWidgetRef(WizardComponent),\n {provide: Context, useFactory: () => { return {} }, multi: true}\n ],\n exportAs: 'wmWizard'\n})\nexport class WizardComponent extends StylableComponent implements OnInit, AfterContentInit, AfterViewInit, AfterViewChecked {\n static initializeProps = registerProps();\n\n @ContentChildren(WizardStepComponent) steps: QueryList<WizardStepComponent>;\n @ContentChild('wizardAction', { read: TemplateRef, descendants: false }) wizardAction: TemplateRef<any>;\n\n public message: {caption: string, type: string};\n public currentStep: WizardStepComponent;\n\n public stepClass: string;\n public class;\n public name;\n private readonly promiseResolverFn: Function;\n public actionsalignment: any;\n public cancelable: any;\n public enablenext: any;\n public wizContext: any;\n public cancelbtnlabel: any;\n public donebtnlabel: any;\n public previousbtnlabel: any;\n public nextbtnlabel: any;\n public defaultstep;\n public fieldDefs;\n public type;\n public nodatamessage;\n private dynamicComponentProvider;\n private _dynamicContext;\n private dynamicStepIndex;\n public dynamicWizard;\n public defaultstepindex;\n private _isFirstLoad: boolean = true;\n\n get hasPrevStep(): boolean {\n return !this._isFirstStep(this.currentStep);\n }\n\n get hasNextStep(): boolean {\n return !this._isLastStep(this.currentStep);\n }\n\n get showDoneBtn(): boolean {\n if (!this.currentStep) {\n return;\n }\n return !this.hasNextStep && this.currentStep.enableDone;\n }\n\n get enablePrev(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.currentStep.enablePrev;\n }\n\n get enableNext(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.enablenext ? true : (this.currentStep.enableNext && this.currentStep.isValid);\n }\n\n get enableDone(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.currentStep.enableDone && this.currentStep.isValid;\n }\n\n /**\n * returns current step index of the Wizard's current step\n */\n get currentStepIndex() {\n return this.getStepIndexByRef(this.currentStep);\n }\n\n /**\n * returns weather the current step is first step or not\n */\n get isFirstStep(): boolean {\n return this._isFirstStep(this.currentStep);\n }\n\n /**\n * returns weather the current step is last step or not\n */\n get isLastStep(): boolean {\n return this._isLastStep(this.currentStep);\n }\n\n constructor(inj: Injector, dynamicComponentProvider: DynamicComponentRefProvider, @Self() @Inject(Context) contexts: Array<any>, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n let resolveFn: Function = noop;\n\n super(inj, WIDGET_CONFIG, explicitContext, new Promise(res => resolveFn = res));\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.SHELL);\n\n this.promiseResolverFn = resolveFn;\n\n // initialize the message object with default values\n this.message = {\n caption: '',\n type: ''\n };\n this.wizContext = contexts[0];\n this.dynamicComponentProvider = dynamicComponentProvider;\n this.dynamicWizard = [];\n this.dynamicStepIndex = 0;\n }\n\n /**\n * This method is used to register the dynamic steps.\n * After all steps are initialzed, update the querylist manually based on index.\n * @param stepRef - refrence of the wizardstep\n */\n public registerDynamicStep(stepRef) {\n this.dynamicWizard.push(stepRef);\n const isLastStep = this.dynamicWizard.length === this.dynamicStepIndex;\n if (isLastStep) {\n for (let i = 0; i < this.dynamicWizard.length; i++) {\n const newStepRef = find(this.dynamicWizard, step => step.dynamicStepIndex === i);\n const isStepAlreadyExist = find(this.steps.toArray(), newStepRef);\n if (!isStepAlreadyExist) {\n this.steps.reset([...this.steps.toArray(), newStepRef]);\n if (newStepRef.active) {\n setTimeout(() => {\n newStepRef.select();\n }, 20);\n }\n }\n }\n }\n }\n\n /**\n * This method is to add the wizard step dynamically\n * @param wizardSteps - list of wizardsteps\n */\n public addStep(wizardSteps) {\n if (!isArray(wizardSteps)) {\n wizardSteps = [wizardSteps];\n }\n const stepNamesList = [];\n forEach(wizardSteps, (step, index) => {\n const isStepAlreadyCreated = find(this.steps.toArray(), {name: step.name});\n const isStepNameExist = indexOf(stepNamesList, step.name);\n // If user tries to add wizardstep with the same name which is already exists then do not create the step\n if (isStepAlreadyCreated || isStepNameExist > 0) {\n console.warn(`The wizard step with name ${step.name} already exists`);\n return;\n }\n\n let paramMarkup = '';\n let propsTmpl = '';\n this.dynamicStepIndex++;\n const name = step.name ? step.name : `wizardstep${this.steps.toArray().length + (index + 1)}`;\n stepNamesList.push(name);\n const partialParams = get(step, 'params');\n\n forEach(step, (value, key) => {\n if (key !== 'params') {\n propsTmpl = `${propsTmpl} ${key}=\"${value}\"`;\n }\n });\n\n forEach(partialParams, (value, key) => {\n paramMarkup = `${paramMarkup} <wm-param name=\"${key}\" value=\"${value}\"></wm-param>`;\n });\n const markup = `<wm-wizardstep dynamicStepIndex=\"${this.dynamicStepIndex - 1}\" isdynamic=\"true\" name=\"${name}\" ${propsTmpl}>\n ${paramMarkup}\n </wm-wizardstep>`;\n\n if (!this._dynamicContext) {\n this._dynamicContext = Object.create(this.viewParent);\n this._dynamicContext[this.getAttr('wmWizard')] = this;\n }\n\n this.dynamicComponentProvider.addComponent(this.getNativeElement().querySelector('.app-wizard-body'), markup, this._dynamicContext, {inj: this.inj});\n\n });\n return stepNamesList;\n }\n\n /**\n * This method is to remove the wizard step\n * @param step - index or name of the step\n */\n public removeStep(step: number | string) {\n const stepRef = isString(step) ? this.getStepRefByName(step) : isNumber(step)\n ? this.getStepRefByIndex(step) : null;\n stepRef ? stepRef.remove() : console.warn(`Could not find step with name or index '${step}' to remove`);\n }\n\n /**\n * returns next valid step. the index passed is also checked if its valid step\n * @param index\n * @returns {WizardStepComponent}\n */\n private getNextValidStepFormIndex(index: number): WizardStepComponent {\n for (let i = index; i < this.steps.length; i++) {\n const step = this.getStepRefByIndex(i);\n if (step.show) {\n return step;\n }\n }\n }\n\n /**\n * returns previous valid step. the index passed is also checked if its valid step\n * @param index\n * @returns {WizardStepComponent}\n */\n private getPreviousValidStepFormIndex(index: number): WizardStepComponent {\n for (let i = index; i >= 0; i--) {\n const step = this.getStepRefByIndex(i);\n if (step.show) {\n return step;\n }\n }\n }\n\n /**\n * returns current step index value.\n * @returns {number}\n */\n private getCurrentStepIndex(): number {\n return this.getStepIndexByRef(this.currentStep);\n }\n\n /**\n * returns stepRef when index is passed.\n * @param {number} index\n * @returns {WizardStepComponent}\n */\n private getStepRefByIndex(index: number): WizardStepComponent {\n return this.steps.toArray()[index];\n }\n\n /**\n * returns the index value of the step.\n * @param {WizardStepComponent} wizardStep\n * @returns {number}\n */\n private getStepIndexByRef(wizardStep: WizardStepComponent): number {\n return this.steps.toArray().indexOf(wizardStep);\n }\n\n /**\n * gets stepRef by searching on the name property.\n * @param {string} name\n * @returns {WizardStepComponent}\n */\n private getStepRefByName(name: string): WizardStepComponent {\n return this.steps.find(step => step.name === name);\n }\n\n /**\n * sets default step as current step if configured\n * or finds first valid step and set it as current step.\n * @param {WizardStepComponent} step\n */\n private setDefaultStep(step: WizardStepComponent) {\n // If the default step has show true then only update the currentStep\n if (step && step.show) {\n this.currentStep = step;\n step.active = true;\n step.isInitialized = true;\n // Mark all previous step status COMPLETED\n let index = this.getStepIndexByRef(step) - 1;\n while (index >= 0) {\n const prevStep = this.getStepRefByIndex(index);\n prevStep.done = true;\n prevStep.isInitialized = true;\n index--;\n }\n } else {\n // set next valid step as current step\n step = this.getNextValidStepFormIndex(0);\n if (step) {\n this.setDefaultStep(step);\n }\n }\n this.addMoreText();\n }\n\n /**\n * Selects the associated step when the wizard header is clicked.\n * @param $event\n * @param {WizardStepComponent} currentStep\n */\n private onWizardHeaderClick($event: Event, currentStep: WizardStepComponent) {\n // select the step if it's status is done\n if (currentStep.done) {\n // set all the next steps status as disabled and previous steps as done\n this.steps.forEach((step, index) => {\n if (index < this.getStepIndexByRef(currentStep)) {\n step.done = true;\n step.isDone = true;\n } else {\n step.disabled = true;\n step.isDone = false;\n }\n });\n // set the selected step as current step and make it active\n this.currentStep = currentStep;\n this.currentStep.active = true;\n this.addMoreText();\n }\n }\n\n private isPromise = (obj) => obj instanceof Promise || (obj !== null && typeof obj === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function');\n\n // Method to navigate to next step\n\n private handleNext(value: boolean | Promise<boolean>, currentStep, currentStepIndex) {\n if (this.isPromise(value)) {\n (value as Promise<boolean>).then(response => {\n if (response === false) {\n return;\n }\n this.extendNextFn(currentStep, currentStepIndex);\n }, err => err);\n } else {\n if (value === false) {\n return;\n }\n this.extendNextFn(currentStep, currentStepIndex);\n }\n }\n\n public next(eventName: string = 'next') {\n const currentStep = this.currentStep;\n const currentStepIndex = this.getCurrentStepIndex();\n\n // abort if onSkip method returns false\n if (eventName === 'skip') {\n const response = currentStep.invokeSkipCB(currentStepIndex);\n this.handleNext(response, currentStep, currentStepIndex);\n } else if (this.currentStep.isValid && eventName === 'next') {\n const response = currentStep.invokeNextCB(currentStepIndex);\n this.handleNext(response, currentStep, currentStepIndex);\n } else if (this.enablenext && !this.currentStep.isValid){\n Array.from((<any>this).currentStep.getAllEmbeddedForms())?.forEach((form:any) => {\n form.widget.highlightInvalidFields();\n });\n const invalidFormInputElement = this.currentStep.nativeElement?.querySelector(\"input.ng-invalid\") as HTMLInputElement;\n invalidFormInputElement?.focus();\n\n }\n }\n\n private extendNextFn(currentStep, currentStepIndex){\n const nextStep: WizardStepComponent = this.getNextValidStepFormIndex(currentStepIndex + 1);\n // If there are any steps which has show then only change state of current step else remain same\n if (nextStep) {\n nextStep.isInitialized = true;\n currentStep.isDone = true;\n currentStep.done = true;\n nextStep.active = true;\n this.currentStep = nextStep;\n this.updateStepFocus();\n }\n this.addMoreText();\n }\n // Method to navigate to previous step\n public prev() {\n const currentStep = this.currentStep;\n const currentStepIndex = this.getCurrentStepIndex();\n\n // abort if onPrev method returns false.\n const response = currentStep.invokePrevCB(currentStepIndex);\n if (this.isPromise(response)) {\n (response as Promise<boolean>).then( response => {\n if (response === false) {\n return;\n }\n this.extendPrevFn(currentStep, currentStepIndex);\n }, err => err);\n } else {\n if (response === false) {\n return;\n }\n this.extendPrevFn(currentStep, currentStepIndex);\n }\n }\n\n private extendPrevFn(currentStep, currentStepIndex){\n const prevStep: WizardStepComponent = this.getPreviousValidStepFormIndex(currentStepIndex - 1);\n\n // If there are any steps which has show then only change state of current step else remain same\n if (prevStep) {\n currentStep.isDone = false;\n currentStep.disabled = true;\n prevStep.active = true;\n this.currentStep = prevStep;\n this.updateStepFocus();\n }\n this.addMoreText();\n }\n\n public skip() {\n this.next('skip');\n }\n\n /**\n * Navigates to the given step based on step name or step index\n * This will work only if the step is already in done state\n * @param step\n */\n public gotoStep(step: string | number) {\n let gotoStepIndex: number;\n if (isString(step)) {\n gotoStepIndex = this.steps.toArray().map(step => step.name).indexOf(step);\n if (gotoStepIndex === -1) {\n console.error(`Could not find step '${step}'`);\n return;\n }\n } else if (isNumber(step) && step >= 0) {\n gotoStepIndex = step;\n } else {\n console.error(\"Invalid step name or index provided\");\n return;\n }\n\n const gotoStep: WizardStepComponent = this.getStepRefByIndex(gotoStepIndex);\n\n if (gotoStep?.show) {\n this.onWizardHeaderClick(event, gotoStep);\n } else {\n console.error(\"The gotoStep function cannot navigate to hidden steps\");\n }\n }\n\n // Method to invoke on-Done event on wizard\n public done() {\n this.currentStep.isDone = true;\n this.invokeEventCallback('done', {steps: this.steps.toArray()});\n }\n // Method to invoke on-Cancel event on wizard\n public cancel () {\n this.invokeEventCallback('cancel', {steps: this.steps.toArray()});\n }\n public addMoreText(){\n setTimeout(() => {\n\n\n var newWindowWidth = $(window).width();\n if(newWindowWidth < 768){\n $(\".app-wizard-step.current .subtitle-wrapper .step-title\").css({\"height\":\"auto\",\"display\":\"block\"});\n var subtitleTextLength = $(\".app-wizard-step.current .subtitle-wrapper .step-title\").height();\n $(\".read_more\").css(\"display\",\"none\");\n $(\".current .subtitle-wrapper\").removeClass(\"readmore_subtitle\");\n\n if(subtitleTextLength>44){\n $(\".app-wizard-step.current .subtitle-wrapper .step-title\").css({\"height\":\"44px\",\"display\":\"-webkit-box\"});\n $(\".current .read_more\").css(\"display\",\"block\");\n $(\".active .read_more\").css(\"display\",\"none\");\n $(\".disable .read_more\").css(\"display\",\"none\");\n $(\".app-wizard-step>a\").css(\"height\",\"100px\")\n }\n }\n });\n\n }\n public readMoreSubtitle(){\n $(\".current .subtitle-wrapper\").addClass(\"readmore_subtitle\");\n $(\".current .read_more\").css(\"display\",\"none\");\n $(document).on(\"mouseup\",function(e:any)\n {\n var container = $(\".subtitle-wrapper\");\n // if the target of the click isn't the container nor a descendant of the container\n if (!container.is(e.target) && container.has(e.target).length === 0)\n {\n $(\".current .subtitle-wrapper\").removeClass(\"readmore_subtitle\");\n $(\".current .read_more\").css(\"display\",\"block\");\n $(document).off(\"mouseup\");\n }\n });\n }\n\n private _isFirstStep(stepRef: WizardStepComponent) {\n return this.steps.first === stepRef;\n }\n\n private _isLastStep(stepRef: WizardStepComponent) {\n return this.steps.last === stepRef;\n }\n\n private onDataChange(newVal) {\n this.fieldDefs = createArrayFrom(newVal);\n }\n\n private updateStepFocus() {\n setTimeout(() => {\n const currentStepElement = this.nativeElement.querySelector(\".app-wizard-heading li.current a\") as HTMLElement;\n currentStepElement?.focus();\n });\n }\n\n // Define the property change handler. This Method will be triggered when there is a change in the widget property\n onPropertyChange(key: string, nv: any, ov?: any) {\n // Monitoring changes for properties and accordingly handling respective changes\n\n if (key === 'stepstyle') {\n this.stepClass = nv === 'justified' ? 'nav-justified' : '';\n } else if (key === 'dataset') {\n this.onDataChange(nv);\n } else if (key === 'defaultstep') {\n this.setDefaultStep(this.getStepRefByName(nv));\n } else if (key === 'actionsalignment') {\n this.nativeElement.querySelector('div.app-wizard-actions')?.classList.replace(ov, nv);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngAfterContentInit() {\n super.ngAfterContentInit();\n this.promiseResolverFn();\n this.wizContext.hasNextStep = () => this.hasNextStep;\n this.wizContext.hasPreviousStep = () => this.hasPrevStep;\n this.wizContext.hasNoNextStep = () => this.showDoneBtn;\n this.wizContext.cancelable = () => this.cancelable;\n this.wizContext.skippable = () => this.currentStep?.enableskip;\n this.wizContext.next = () => this.next();\n this.wizContext.previous = () => this.prev();\n this.wizContext.done = () => this.done();\n this.wizContext.cancel = () => this.cancel();\n this.wizContext.skip = () => this.skip();\n this.wizContext.nextbtnlabel = () => this.nextbtnlabel;\n this.wizContext.previousbtnlabel = () => this.previousbtnlabel;\n this.wizContext.donebtnlabel = () => this.donebtnlabel;\n this.wizContext.cancelbtnlabel = () => this.cancelbtnlabel;\n this.wizContext.actionsalignment = () => this.actionsalignment;\n this.wizContext.disableNext = () => !this.enableNext;\n this.wizContext.disablePrevious = () => !this.enablePrev;\n this.wizContext.disableDone = () => !this.enableDone;\n this.steps.changes.subscribe( slides => {\n if (this.steps.length > 1 && this.type === 'dynamic' && this._isFirstLoad) {\n this.setDefaultStep(this.getStepRefByIndex(this.defaultstepindex));\n this._isFirstLoad = false;\n }\n });\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(\n this.nativeElement.querySelector('.panel-body') as HTMLElement,\n this,\n APPLY_STYLES_TYPE.INNER_SHELL\n );\n setTimeout(() => { if($(window).width()<768) {\n $(\".app-wizard\").removeClass(\"vertical\");\n }\n });\n }\n ngAfterViewChecked() {\n this.nativeElement.querySelectorAll('div.app-wizard-actions').forEach(el => el?.classList.add(this.actionsalignment));\n this.nativeElement.querySelectorAll('div.app-wizard-actions-right').forEach(el => el?.classList.remove('app-container'));\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizardaction',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import {Directive, Inject, Injector, Optional} from '@angular/core';\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport {registerProps} from \"./wizard-action.props\";\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-wizardaction',\n hostClass: 'app-wizard-actions panel-footer '\n};\n\n@Directive({\n standalone: true,\n selector: 'div[wmWizardAction]',\n providers: [\n provideAsWidgetRef(WizardActionDirective)\n ],\n exportAs: 'wmWizardAction',\n})\nexport class WizardActionDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_INFO, explicitContext);\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["registerProps","DEFAULT_CLS","WIDGET_CONFIG","_c0","_c1","i1"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/containers/wizard/src/wizard.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-step/wizard-step.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-step/wizard-step.component.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard.component.html","../../../../../projects/components/widgets/containers/wizard/src/wizard.component.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-action/wizard-action.props.ts","../../../../../projects/components/widgets/containers/wizard/src/wizard-action/wizard-action.directive.ts","../../../../../projects/components/widgets/containers/wizard/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizard',\n new Map(\n [\n ['actionsalignment', {value: 'right', ...PROP_STRING}],\n ['cancelable', {value: true, ...PROP_BOOLEAN}],\n ['cancelbtnlabel', {value: 'Cancel', ...PROP_STRING}],\n ['class', {value: 'classic', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['defaultstep', {value: 'none', ...PROP_STRING}],\n ['defaultstepindex', {value: 0, ...PROP_NUMBER}],\n ['donebtnlabel', {value: 'Done', ...PROP_STRING}],\n ['enablenext', {value: false, ...PROP_BOOLEAN}],\n ['name', PROP_STRING],\n ['nextbtnlabel', {value: 'Next', ...PROP_STRING}],\n ['nodatamessage', {value: 'No Data Found', ... PROP_STRING}],\n ['previousbtnlabel', {value: 'Previous', ...PROP_STRING}],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['stepstyle', {value: 'auto', ...PROP_STRING}],\n ['type', PROP_STRING]\n ]\n )\n );\n};\n","import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizardstep',\n new Map(\n [\n ['class', PROP_STRING],\n ['content', PROP_STRING],\n ['doneiconclass', {value: 'wi wi-done', ...PROP_STRING}],\n ['dynamicStepIndex', PROP_NUMBER], // internal property\n ['enableskip', {value: false, ...PROP_BOOLEAN}],\n ['iconclass', {value: 'wi wi-person', ...PROP_STRING}],\n ['isdynamic', PROP_STRING], // internal property\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['subtitle', PROP_STRING],\n ['title', {value: 'Step Title', ...PROP_STRING}]\n ]\n )\n );\n};\n","import {\n AfterViewInit,\n Component,\n ContentChildren,\n HostBinding,\n Inject,\n Injector,\n OnInit,\n Optional,\n Self\n} from \"@angular/core\";\nimport {\n BaseComponent,\n IWidgetConfig,\n provideAsWidgetRef,\n RedrawableDirective,\n StylableComponent\n} from \"@wm/components/base\";\nimport {NgForm} from \"@angular/forms\";\nimport {registerProps} from \"./wizard-step.props\";\nimport {noop} from \"@wm/core\";\nimport {WizardComponent} from \"../wizard.component\";\n\nconst DEFAULT_CLS = 'app-wizard-step-content';\n\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-wizardstep',\n hostClass: DEFAULT_CLS,\n};\n\nconst enum STEP_STATUS {\n CURRENT = 1,\n DISABLED,\n COMPLETED\n}\n\n@Component({\n standalone: true,\n selector: 'form[wmWizardStep]',\n template: `<ng-content partial-container-target></ng-content>`,\n providers: [\n provideAsWidgetRef(WizardStepComponent),\n NgForm\n ],\n exportAs: 'wmWizardStep'\n})\nexport class WizardStepComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public show: boolean;\n public name: string;\n public enableskip: any;\n public disablenext: boolean;\n public disabledone: boolean;\n public disableprevious: boolean;\n public isInitialized: boolean;\n private isdynamic: boolean;\n public $lazyLoad = noop;\n isDone: boolean = false;\n\n private status: STEP_STATUS = STEP_STATUS.DISABLED;\n private wizardComponent: WizardComponent;\n\n // reference to the components which needs a redraw(eg, grid, chart) when the height of this component changes\n @ContentChildren(RedrawableDirective, {descendants: true}) reDrawableComponents;\n\n @HostBinding('class.current')\n get isCurrent() {\n return this.active;\n }\n\n /**\n * along with the wizard form , also validate the forms\n * if there are any inside the wizard\n * @returns {boolean}\n */\n public get isValid() {\n return (this.ngForm.valid || this.ngForm.disabled) && this.areEmbeddedFormsValid();\n }\n\n /**\n * get all the forms inside the wizard if any and validate\n * @returns {boolean}\n */\n private areEmbeddedFormsValid() {\n for (const form of this.getAllEmbeddedForms()) {\n if (form.widget && form.widget.ngform && !form.widget.ngform.valid) {\n return false;\n }\n }\n return true;\n }\n\n private getAllEmbeddedForms() {\n return this.$element.find('form');\n }\n\n public get enableNext() {\n return !this.disablenext;\n }\n\n public get enableDone() {\n return !this.disabledone;\n }\n\n public get enablePrev() {\n return !this.disableprevious;\n }\n\n public set active(nv: boolean) {\n const isActive = this.active;\n this.status = STEP_STATUS.CURRENT;\n if (nv && !isActive) {\n this.redrawChildren();\n }\n }\n\n public get active(): boolean {\n return this.status === STEP_STATUS.CURRENT;\n }\n\n public set done(nv: boolean) {\n if (nv) {\n this.status = STEP_STATUS.COMPLETED;\n }\n }\n\n public get done(): boolean {\n return this.status === STEP_STATUS.COMPLETED;\n }\n\n public set disabled(nv: boolean) {\n if (nv) {\n this.status = STEP_STATUS.DISABLED;\n }\n }\n\n public get disabled(): boolean {\n return this.status === STEP_STATUS.DISABLED;\n }\n\n constructor(inj: Injector, @Self() private ngForm: NgForm, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n // If we inject directly as a param in the constructor, getting circular dependency error in unit testcases\n this.wizardComponent = this.inj.get(WizardComponent);\n }\n\n public invokeNextCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('next', {currentStep: this, stepIndex: index});\n }\n\n public invokePrevCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('prev', {currentStep: this, stepIndex: index});\n }\n\n public invokeSkipCB(index: number): boolean | Promise<boolean> {\n return this.invokeEventCallback('skip', {currentStep: this, stepIndex: index});\n }\n\n // redraw all the projected components which are projected.\n private redrawChildren() {\n setTimeout(() => {\n if (this.reDrawableComponents) {\n this.reDrawableComponents.forEach(c => c.redraw());\n }\n const stepIndex = (this as any).wizardComponent.getCurrentStepIndex();\n this.invokeEventCallback('load', { stepIndex });\n }, 100);\n }\n\n public remove() {\n if (this.active) {\n this === this.wizardComponent.steps.last ? this.wizardComponent.prev() : this.wizardComponent.next();\n }\n const availablePanes = this.wizardComponent.steps.toArray();\n availablePanes.splice((this as any).wizardComponent.getStepIndexByRef(this), 1);\n this.wizardComponent.steps.reset([...availablePanes]);\n this.nativeElement.remove();\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'content') {\n setTimeout(() => this.$lazyLoad(), 100);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.isdynamic) {\n this.wizardComponent.registerDynamicStep(this);\n }\n }\n}\n","<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","import { CommonModule } from '@angular/common';\nimport { WmComponentsModule } from \"@wm/components/base\";\nimport {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n Component,\n ContentChild,\n ContentChildren,\n Inject,\n Injector,\n OnInit,\n Optional,\n QueryList,\n Self,\n TemplateRef\n} from '@angular/core';\n\nimport {DynamicComponentRefProvider, noop} from '@wm/core';\nimport {\n APPLY_STYLES_TYPE,\n IWidgetConfig,\n provideAsWidgetRef,\n styler,\n StylableComponent,\n Context, createArrayFrom\n} from '@wm/components/base';\n\nimport { registerProps } from './wizard.props';\n\nimport {WizardStepComponent} from \"./wizard-step/wizard-step.component\";\nimport {find, findIndex, forEach, get, indexOf, isArray, isNumber, isString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-wizard panel clearfix';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-wizard',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n standalone: true,\n imports: [CommonModule, WmComponentsModule],\n selector: 'div[wmWizard]',\n templateUrl: './wizard.component.html',\n providers: [\n provideAsWidgetRef(WizardComponent),\n {provide: Context, useFactory: () => { return {} }, multi: true}\n ],\n exportAs: 'wmWizard'\n})\nexport class WizardComponent extends StylableComponent implements OnInit, AfterContentInit, AfterViewInit, AfterViewChecked {\n static initializeProps = registerProps();\n\n @ContentChildren(WizardStepComponent) steps: QueryList<WizardStepComponent>;\n @ContentChild('wizardAction', { read: TemplateRef, descendants: false }) wizardAction: TemplateRef<any>;\n\n public message: {caption: string, type: string};\n public currentStep: WizardStepComponent;\n\n public stepClass: string;\n public class;\n public name;\n private readonly promiseResolverFn: Function;\n public actionsalignment: any;\n public cancelable: any;\n public enablenext: any;\n public wizContext: any;\n public cancelbtnlabel: any;\n public donebtnlabel: any;\n public previousbtnlabel: any;\n public nextbtnlabel: any;\n public defaultstep;\n public fieldDefs;\n public type;\n public nodatamessage;\n private dynamicComponentProvider;\n private _dynamicContext;\n private dynamicStepIndex;\n public dynamicWizard;\n public defaultstepindex;\n private _isFirstLoad: boolean = true;\n public autoActivation:boolean;\n\n get hasPrevStep(): boolean {\n return !this._isFirstStep(this.currentStep);\n }\n\n get hasNextStep(): boolean {\n return !this._isLastStep(this.currentStep);\n }\n\n get showDoneBtn(): boolean {\n if (!this.currentStep) {\n return;\n }\n return !this.hasNextStep && this.currentStep.enableDone;\n }\n\n get enablePrev(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.currentStep.enablePrev;\n }\n\n get enableNext(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.enablenext ? true : (this.currentStep.enableNext && this.currentStep.isValid);\n }\n\n get enableDone(): boolean {\n if (!this.currentStep) {\n return;\n }\n return this.currentStep.enableDone && this.currentStep.isValid;\n }\n\n /**\n * returns current step index of the Wizard's current step\n */\n get currentStepIndex() {\n return this.getStepIndexByRef(this.currentStep);\n }\n\n /**\n * returns weather the current step is first step or not\n */\n get isFirstStep(): boolean {\n return this._isFirstStep(this.currentStep);\n }\n\n /**\n * returns weather the current step is last step or not\n */\n get isLastStep(): boolean {\n return this._isLastStep(this.currentStep);\n }\n\n constructor(inj: Injector, dynamicComponentProvider: DynamicComponentRefProvider, @Self() @Inject(Context) contexts: Array<any>, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n let resolveFn: Function = noop;\n\n super(inj, WIDGET_CONFIG, explicitContext, new Promise(res => resolveFn = res));\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.SHELL);\n\n this.promiseResolverFn = resolveFn;\n\n // initialize the message object with default values\n this.message = {\n caption: '',\n type: ''\n };\n this.wizContext = contexts[0];\n this.dynamicComponentProvider = dynamicComponentProvider;\n this.dynamicWizard = [];\n this.dynamicStepIndex = 0;\n }\n\n /**\n * This method is used to register the dynamic steps.\n * After all steps are initialzed, update the querylist manually based on index.\n * @param stepRef - refrence of the wizardstep\n */\n public registerDynamicStep(stepRef) {\n this.dynamicWizard.push(stepRef);\n const isLastStep = this.dynamicWizard.length === this.dynamicStepIndex;\n if (isLastStep) {\n for (let i = 0; i < this.dynamicWizard.length; i++) {\n const newStepRef = find(this.dynamicWizard, step => step.dynamicStepIndex === i);\n const isStepAlreadyExist = find(this.steps.toArray(), newStepRef);\n if (!isStepAlreadyExist) {\n this.steps.reset([...this.steps.toArray(), newStepRef]);\n if (newStepRef.active) {\n setTimeout(() => {\n newStepRef.select();\n }, 20);\n }\n }\n }\n }\n }\n\n /**\n * This method is to add the wizard step dynamically\n * @param wizardSteps - list of wizardsteps\n */\n public addStep(wizardSteps) {\n if (!isArray(wizardSteps)) {\n wizardSteps = [wizardSteps];\n }\n const stepNamesList = [];\n forEach(wizardSteps, (step, index) => {\n const isStepAlreadyCreated = find(this.steps.toArray(), {name: step.name});\n const isStepNameExist = indexOf(stepNamesList, step.name);\n // If user tries to add wizardstep with the same name which is already exists then do not create the step\n if (isStepAlreadyCreated || isStepNameExist > 0) {\n console.warn(`The wizard step with name ${step.name} already exists`);\n return;\n }\n\n let paramMarkup = '';\n let propsTmpl = '';\n this.dynamicStepIndex++;\n const name = step.name ? step.name : `wizardstep${this.steps.toArray().length + (index + 1)}`;\n stepNamesList.push(name);\n const partialParams = get(step, 'params');\n\n forEach(step, (value, key) => {\n if (key !== 'params') {\n propsTmpl = `${propsTmpl} ${key}=\"${value}\"`;\n }\n });\n\n forEach(partialParams, (value, key) => {\n paramMarkup = `${paramMarkup} <wm-param name=\"${key}\" value=\"${value}\"></wm-param>`;\n });\n const markup = `<wm-wizardstep dynamicStepIndex=\"${this.dynamicStepIndex - 1}\" isdynamic=\"true\" name=\"${name}\" ${propsTmpl}>\n ${paramMarkup}\n </wm-wizardstep>`;\n\n if (!this._dynamicContext) {\n this._dynamicContext = Object.create(this.viewParent);\n this._dynamicContext[this.getAttr('wmWizard')] = this;\n }\n\n this.dynamicComponentProvider.addComponent(this.getNativeElement().querySelector('.app-wizard-body'), markup, this._dynamicContext, {inj: this.inj});\n\n });\n return stepNamesList;\n }\n\n /**\n * This method is to remove the wizard step\n * @param step - index or name of the step\n */\n public removeStep(step: number | string) {\n const stepRef = isString(step) ? this.getStepRefByName(step) : isNumber(step)\n ? this.getStepRefByIndex(step) : null;\n stepRef ? stepRef.remove() : console.warn(`Could not find step with name or index '${step}' to remove`);\n }\n\n /**\n * returns next valid step. the index passed is also checked if its valid step\n * @param index\n * @returns {WizardStepComponent}\n */\n private getNextValidStepFormIndex(index: number): WizardStepComponent {\n for (let i = index; i < this.steps.length; i++) {\n const step = this.getStepRefByIndex(i);\n if (step.show) {\n return step;\n }\n }\n }\n\n /**\n * returns previous valid step. the index passed is also checked if its valid step\n * @param index\n * @returns {WizardStepComponent}\n */\n private getPreviousValidStepFormIndex(index: number): WizardStepComponent {\n for (let i = index; i >= 0; i--) {\n const step = this.getStepRefByIndex(i);\n if (step.show) {\n return step;\n }\n }\n }\n\n /**\n * returns current step index value.\n * @returns {number}\n */\n private getCurrentStepIndex(): number {\n return this.getStepIndexByRef(this.currentStep);\n }\n\n /**\n * returns stepRef when index is passed.\n * @param {number} index\n * @returns {WizardStepComponent}\n */\n private getStepRefByIndex(index: number): WizardStepComponent {\n return this.steps.toArray()[index];\n }\n\n /**\n * returns the index value of the step.\n * @param {WizardStepComponent} wizardStep\n * @returns {number}\n */\n private getStepIndexByRef(wizardStep: WizardStepComponent): number {\n return this.steps.toArray().indexOf(wizardStep);\n }\n\n /**\n * gets stepRef by searching on the name property.\n * @param {string} name\n * @returns {WizardStepComponent}\n */\n private getStepRefByName(name: string): WizardStepComponent {\n return this.steps.find(step => step.name === name);\n }\n\n /**\n * sets default step as current step if configured\n * or finds first valid step and set it as current step.\n * @param {WizardStepComponent} step\n */\n private setDefaultStep(step: WizardStepComponent) {\n // If the default step has show true then only update the currentStep\n if (step && step.show) {\n this.currentStep = step;\n step.active = true;\n step.isInitialized = true;\n // Mark all previous step status COMPLETED\n let index = this.getStepIndexByRef(step) - 1;\n while (index >= 0) {\n const prevStep = this.getStepRefByIndex(index);\n prevStep.done = true;\n prevStep.isInitialized = true;\n index--;\n }\n } else {\n // set next valid step as current step\n step = this.getNextValidStepFormIndex(0);\n if (step) {\n this.setDefaultStep(step);\n }\n }\n this.addMoreText();\n }\n\n /**\n * Selects the associated step when the wizard header is clicked.\n * @param $event\n * @param {WizardStepComponent} currentStep\n */\n private onWizardHeaderClick($event: Event, currentStep: WizardStepComponent) {\n // select the step if it's status is done\n if (currentStep.done) {\n // set all the next steps status as disabled and previous steps as done\n this.steps.forEach((step, index) => {\n if (index < this.getStepIndexByRef(currentStep)) {\n step.done = true;\n step.isDone = true;\n } else {\n step.disabled = true;\n step.isDone = false;\n }\n });\n // set the selected step as current step and make it active\n this.currentStep = currentStep;\n this.currentStep.active = true;\n this.addMoreText();\n }\n }\n\n private isPromise = (obj) => obj instanceof Promise || (obj !== null && typeof obj === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function');\n\n // Method to navigate to next step\n\n private handleNext(value: boolean | Promise<boolean>, currentStep, currentStepIndex) {\n if (this.isPromise(value)) {\n (value as Promise<boolean>).then(response => {\n if (response === false) {\n return;\n }\n this.extendNextFn(currentStep, currentStepIndex);\n }, err => err);\n } else {\n if (value === false) {\n return;\n }\n this.extendNextFn(currentStep, currentStepIndex);\n }\n }\n\n public next(eventName: string = 'next') {\n const currentStep = this.currentStep;\n const currentStepIndex = this.getCurrentStepIndex();\n\n // abort if onSkip method returns false\n if (eventName === 'skip') {\n const response = currentStep.invokeSkipCB(currentStepIndex);\n this.handleNext(response, currentStep, currentStepIndex);\n } else if (this.currentStep.isValid && eventName === 'next') {\n const response = currentStep.invokeNextCB(currentStepIndex);\n this.handleNext(response, currentStep, currentStepIndex);\n } else if (this.enablenext && !this.currentStep.isValid){\n Array.from((<any>this).currentStep.getAllEmbeddedForms())?.forEach((form:any) => {\n form.widget.highlightInvalidFields();\n });\n const invalidFormInputElement = this.currentStep.nativeElement?.querySelector(\"input.ng-invalid\") as HTMLInputElement;\n invalidFormInputElement?.focus();\n\n }\n }\n\n private extendNextFn(currentStep, currentStepIndex) {\n const nextStep: WizardStepComponent = this.getNextValidStepFormIndex(currentStepIndex + 1);\n // If there are any steps which has show then only change state of current step else remain same\n if (nextStep) {\n nextStep.isInitialized = true;\n currentStep.isDone = true;\n currentStep.done = true;\n nextStep.active = true;\n this.currentStep = nextStep;\n // Remove 'current' class from all wizard steps in header\n const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');\n allStepItems.forEach((el: Element) => {\n el.classList.remove('current');\n const anchor = el.querySelector('a');\n if (anchor) {\n anchor.setAttribute('tabindex', '-1');\n }\n });\n // Add 'current' to next step header item\n const newStepLi = this.nativeElement.querySelector(`li[data-stepid=\"${nextStep.widgetId}\"]`);\n const newStepAnchor = newStepLi?.querySelector('a') as HTMLElement;\n if (newStepLi && newStepAnchor) {\n newStepLi.classList.add('current');\n newStepAnchor.setAttribute('tabindex', '0');\n newStepAnchor.focus();\n }\n this.updateStepFocus();\n }\n this.addMoreText();\n }\n // Method to navigate to previous step\n public prev() {\n const currentStep = this.currentStep;\n const currentStepIndex = this.getCurrentStepIndex();\n\n // abort if onPrev method returns false.\n const response = currentStep.invokePrevCB(currentStepIndex);\n if (this.isPromise(response)) {\n (response as Promise<boolean>).then( response => {\n if (response === false) {\n return;\n }\n this.extendPrevFn(currentStep, currentStepIndex);\n }, err => err);\n } else {\n if (response === false) {\n return;\n }\n this.extendPrevFn(currentStep, currentStepIndex);\n }\n }\n\n private extendPrevFn(currentStep, currentStepIndex){\n const prevStep: WizardStepComponent = this.getPreviousValidStepFormIndex(currentStepIndex - 1);\n\n // If there are any steps which has show then only change state of current step else remain same\n if (prevStep) {\n currentStep.isDone = false;\n currentStep.disabled = true;\n prevStep.active = true;\n this.currentStep = prevStep;\n // Remove 'current' class from all steps\n const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');\n allStepItems.forEach((el: Element) => {\n el.classList.remove('current');\n const anchor = el.querySelector('a');\n if (anchor) {\n anchor.setAttribute('tabindex', '-1');\n }\n });\n // Apply 'current' to prev step\n const prevStepLi = this.nativeElement.querySelector(`li[data-stepid=\"${prevStep.widgetId}\"]`);\n const prevStepAnchor = prevStepLi?.querySelector('a') as HTMLElement;\n if (prevStepLi && prevStepAnchor) {\n prevStepLi.classList.add('current');\n prevStepAnchor.setAttribute('tabindex', '0');\n prevStepAnchor.focus();\n }\n this.updateStepFocus();\n }\n this.addMoreText();\n }\n\n public skip() {\n this.next('skip');\n }\n\n /**\n * Navigates to the given step based on step name or step index\n * This will work only if the step is already in done state\n * @param step\n */\n public gotoStep(step: string | number) {\n let gotoStepIndex: number;\n if (isString(step)) {\n gotoStepIndex = this.steps.toArray().map(step => step.name).indexOf(step);\n if (gotoStepIndex === -1) {\n console.error(`Could not find step '${step}'`);\n return;\n }\n } else if (isNumber(step) && step >= 0) {\n gotoStepIndex = step;\n } else {\n console.error(\"Invalid step name or index provided\");\n return;\n }\n\n const gotoStep: WizardStepComponent = this.getStepRefByIndex(gotoStepIndex);\n\n if (gotoStep?.show) {\n this.onWizardHeaderClick(event, gotoStep);\n } else {\n console.error(\"The gotoStep function cannot navigate to hidden steps\");\n }\n }\n\n // Method to invoke on-Done event on wizard\n public done() {\n this.currentStep.isDone = true;\n this.invokeEventCallback('done', {steps: this.steps.toArray()});\n }\n // Method to invoke on-Cancel event on wizard\n public cancel () {\n this.invokeEventCallback('cancel', {steps: this.steps.toArray()});\n }\n public addMoreText(){\n setTimeout(() => {\n\n\n var newWindowWidth = $(window).width();\n if(newWindowWidth < 768){\n $(\".app-wizard-step.current .subtitle-wrapper .step-title\").css({\"height\":\"auto\",\"display\":\"block\"});\n var subtitleTextLength = $(\".app-wizard-step.current .subtitle-wrapper .step-title\").height();\n $(\".read_more\").css(\"display\",\"none\");\n $(\".current .subtitle-wrapper\").removeClass(\"readmore_subtitle\");\n\n if(subtitleTextLength>44){\n $(\".app-wizard-step.current .subtitle-wrapper .step-title\").css({\"height\":\"44px\",\"display\":\"-webkit-box\"});\n $(\".current .read_more\").css(\"display\",\"block\");\n $(\".active .read_more\").css(\"display\",\"none\");\n $(\".disable .read_more\").css(\"display\",\"none\");\n $(\".app-wizard-step>a\").css(\"height\",\"100px\")\n }\n }\n });\n\n }\n public readMoreSubtitle(){\n $(\".current .subtitle-wrapper\").addClass(\"readmore_subtitle\");\n $(\".current .read_more\").css(\"display\",\"none\");\n $(document).on(\"mouseup\",function(e:any)\n {\n var container = $(\".subtitle-wrapper\");\n // if the target of the click isn't the container nor a descendant of the container\n if (!container.is(e.target) && container.has(e.target).length === 0)\n {\n $(\".current .subtitle-wrapper\").removeClass(\"readmore_subtitle\");\n $(\".current .read_more\").css(\"display\",\"block\");\n $(document).off(\"mouseup\");\n }\n });\n }\n\n private _isFirstStep(stepRef: WizardStepComponent) {\n return this.steps.first === stepRef;\n }\n\n private _isLastStep(stepRef: WizardStepComponent) {\n return this.steps.last === stepRef;\n }\n\n private onDataChange(newVal) {\n this.fieldDefs = createArrayFrom(newVal);\n }\n\n private updateStepFocus() {\n setTimeout(() => {\n const currentStepElement = this.nativeElement.querySelector(\".app-wizard-heading li.current a\") as HTMLElement;\n currentStepElement?.focus();\n });\n }\n\n // Define the property change handler. This Method will be triggered when there is a change in the widget property\n onPropertyChange(key: string, nv: any, ov?: any) {\n // Monitoring changes for properties and accordingly handling respective changes\n\n if (key === 'stepstyle') {\n this.stepClass = nv === 'justified' ? 'nav-justified' : '';\n } else if (key === 'dataset') {\n this.onDataChange(nv);\n } else if (key === 'defaultstep') {\n this.setDefaultStep(this.getStepRefByName(nv));\n } else if (key === 'actionsalignment') {\n this.nativeElement.querySelector('div.app-wizard-actions')?.classList.replace(ov, nv);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngAfterContentInit() {\n super.ngAfterContentInit();\n this.promiseResolverFn();\n this.wizContext.hasNextStep = () => this.hasNextStep;\n this.wizContext.hasPreviousStep = () => this.hasPrevStep;\n this.wizContext.hasNoNextStep = () => this.showDoneBtn;\n this.wizContext.cancelable = () => this.cancelable;\n this.wizContext.skippable = () => this.currentStep?.enableskip;\n this.wizContext.next = () => this.next();\n this.wizContext.previous = () => this.prev();\n this.wizContext.done = () => this.done();\n this.wizContext.cancel = () => this.cancel();\n this.wizContext.skip = () => this.skip();\n this.wizContext.nextbtnlabel = () => this.nextbtnlabel;\n this.wizContext.previousbtnlabel = () => this.previousbtnlabel;\n this.wizContext.donebtnlabel = () => this.donebtnlabel;\n this.wizContext.cancelbtnlabel = () => this.cancelbtnlabel;\n this.wizContext.actionsalignment = () => this.actionsalignment;\n this.wizContext.disableNext = () => !this.enableNext;\n this.wizContext.disablePrevious = () => !this.enablePrev;\n this.wizContext.disableDone = () => !this.enableDone;\n this.steps.changes.subscribe( slides => {\n if (this.steps.length > 1 && this.type === 'dynamic' && this._isFirstLoad) {\n this.setDefaultStep(this.getStepRefByIndex(this.defaultstepindex));\n this._isFirstLoad = false;\n }\n });\n }\n private isSelectableStep(stepRef: WizardStepComponent): boolean {\n return stepRef.show && !stepRef.disabled;\n }\n private getSelectableStepBeforeIndex(index: number): WizardStepComponent {\n for (let i = index - 1; i >= 0; i--) {\n const step = this.getStepRefByIndex(i);\n if (this.isSelectableStep(step)) {\n return step;\n }\n }\n if (index === 0) {\n const step = this.getStepRefByIndex(this.steps.length - 1);\n if (this.isSelectableStep(step)) {\n return step;\n }\n }\n }\n private getSelectableStepAfterIndex(index: number): WizardStepComponent {\n for (let i = index + 1; i < this.steps.length; i++) {\n const step = this.getStepRefByIndex(i);\n if (this.isSelectableStep(step)) {\n return step;\n }\n }\n if (index === this.steps.length - 1) {\n const step = this.getStepRefByIndex(0);\n if (this.isSelectableStep(step)) {\n return step;\n }\n }\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(\n this.nativeElement.querySelector('.panel-body') as HTMLElement,\n this,\n APPLY_STYLES_TYPE.INNER_SHELL\n );\n setTimeout(() => { if($(window).width()<768) {\n $(\".app-wizard\").removeClass(\"vertical\");\n }\n });\n }\n ngAfterViewChecked() {\n this.nativeElement.querySelectorAll('div.app-wizard-actions').forEach(el => el?.classList.add(this.actionsalignment));\n this.nativeElement.querySelectorAll('div.app-wizard-actions-right').forEach(el => el?.classList.remove('app-container'));\n }\n public getActiveStepIndex(): number {\n return findIndex(this.steps.toArray(), {isCurrent: true});\n }\n onkeydown(event) {\n let newStep;\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp':\n event.preventDefault();\n newStep = this.autoActivation ? null : this.getSelectableStepBeforeIndex(this.getSelectedStepIndex());\n break;\n\n case 'ArrowRight':\n case 'ArrowDown':\n event.preventDefault();\n newStep = this.autoActivation ? null : this.getSelectableStepAfterIndex(this.getSelectedStepIndex());\n break;\n case 'Enter':\n case ' ':\n case 'Spacebar': \n event.preventDefault();\n setTimeout(() => {\n const activeElement = this.nativeElement.querySelector('li.current');\n const stepLi = activeElement.closest('li[data-stepid]'); \n const isInWizardHeader = activeElement.closest('.app-wizard-heading');\n \n if (stepLi && isInWizardHeader) {\n const stepId = stepLi.getAttribute('data-stepid');\n const stepIndex = this.steps.toArray().findIndex(step => step.widgetId === stepId);\n const currentStep = this.steps.toArray()[stepIndex];\n\n if (currentStep && currentStep !== this.currentStep) {\n this.onWizardHeaderClick(event, currentStep);\n\n // Update tabindex for accessibility\n const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid]');\n allStepItems.forEach((el: Element) => {\n (el as HTMLElement).setAttribute('tabindex', '-1');\n });\n\n const stepAnchor = stepLi.querySelector('a');\n if (stepAnchor) {\n stepAnchor.setAttribute('tabindex', '0');\n stepAnchor.focus();\n }\n }\n }\n }, 0);\n break;\n default:\n return;\n }\n if (newStep) {\n this.nativeElement.querySelector('li.current')?.classList.remove('current');\n this.nativeElement.querySelector(`li[data-stepid=\"${newStep.widgetId}\"]`)?.classList.add('current');\n const stepLi = this.nativeElement.querySelector(\".app-wizard-heading li.current a\") as HTMLElement;\n const allStepItems = this.nativeElement.querySelectorAll('li[data-stepid] a');\n allStepItems.forEach((el: Element) => {\n (el as HTMLElement).setAttribute('tabindex', '-1');\n });\n (stepLi).setAttribute('tabindex', '0');\n stepLi?.focus();\n }\n }\n getSelectedStepIndex() {\n const index = this.steps.toArray().findIndex(step =>\n this.nativeElement.querySelector(`li[data-stepid=\"${step.widgetId}\"]`)?.classList.contains(\"current\"));\n return index >= 0 ? index : this.getActiveStepIndex();\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-wizardaction',\n new Map([\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ])\n );\n};\n","import {Directive, Inject, Injector, Optional} from '@angular/core';\nimport { BaseComponent, IWidgetConfig, provideAsWidgetRef } from '@wm/components/base';\nimport {registerProps} from \"./wizard-action.props\";\n\nconst WIDGET_INFO: IWidgetConfig = {\n widgetType: 'wm-wizardaction',\n hostClass: 'app-wizard-actions panel-footer '\n};\n\n@Directive({\n standalone: true,\n selector: 'div[wmWizardAction]',\n providers: [\n provideAsWidgetRef(WizardActionDirective)\n ],\n exportAs: 'wmWizardAction',\n})\nexport class WizardActionDirective extends BaseComponent {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_INFO, explicitContext);\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["registerProps","DEFAULT_CLS","WIDGET_CONFIG","_c0","_c1","i1"],"mappings":";;;;;;;;;;;;AAEO,MAAMA,eAAa,GAAG,MAAK;AAC9B,IAAA,QAAQ,CACJ,WAAW,EACX,IAAI,GAAG,CACH;QACI,CAAC,kBAAkB,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,EAAC,CAAC;QACtD,CAAC,YAAY,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAC,CAAC;QAC9C,CAAC,gBAAgB,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAC,CAAC;QACrD,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,SAAS,EAAE,GAAG,WAAW,EAAC,CAAC;QAC7C,CAAC,SAAS,EAAE,QAAQ,CAAC;QACrB,CAAC,aAAa,EAAE,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,EAAC,CAAC;QAChD,CAAC,kBAAkB,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,GAAG,WAAW,EAAC,CAAC;QAChD,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,EAAC,CAAC;QACjD,CAAC,YAAY,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,EAAC,CAAC;QAC/C,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,EAAC,CAAC;QACjD,CAAC,eAAe,EAAE,EAAC,KAAK,EAAE,eAAe,EAAE,GAAI,WAAW,EAAC,CAAC;QAC5D,CAAC,kBAAkB,EAAE,EAAC,KAAK,EAAE,UAAU,EAAE,GAAG,WAAW,EAAC,CAAC;QACzD,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAC,CAAC;QACxC,CAAC,WAAW,EAAE,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,EAAC,CAAC;QAC9C,CAAC,MAAM,EAAE,WAAW;AACvB,KAAA,CACJ,CACJ;AACL,CAAC;;ACxBM,MAAMA,eAAa,GAAG,MAAK;AAC9B,IAAA,QAAQ,CACJ,eAAe,EACf,IAAI,GAAG,CACH;QACI,CAAC,OAAO,EAAE,WAAW,CAAC;QACtB,CAAC,SAAS,EAAE,WAAW,CAAC;QACxB,CAAC,eAAe,EAAE,EAAC,KAAK,EAAE,YAAY,EAAE,GAAG,WAAW,EAAC,CAAC;AACxD,QAAA,CAAC,kBAAkB,EAAE,WAAW,CAAC;QACjC,CAAC,YAAY,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,EAAC,CAAC;QAC/C,CAAC,WAAW,EAAE,EAAC,KAAK,EAAE,cAAc,EAAE,GAAG,WAAW,EAAC,CAAC;AACtD,QAAA,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAC,CAAC;QACxC,CAAC,UAAU,EAAE,WAAW,CAAC;QACzB,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,YAAY,EAAE,GAAG,WAAW,EAAC;AAClD,KAAA,CACJ,CACJ;AACL,CAAC;;;;ACED,MAAMC,aAAW,GAAG,yBAAyB;AAE7C,MAAMC,eAAa,GAAkB;AACjC,IAAA,UAAU,EAAE,eAAe;AAC3B,IAAA,SAAS,EAAED,aAAW;CACzB;AAkBK,MAAO,mBAAoB,SAAQ,iBAAiB,CAAA;AAC/C,IAAA,SAAA,IAAA,CAAA,eAAe,GAAGD,eAAa,EAAhB,CAAmB;AAmBzC,IAAA,IACI,SAAS,GAAA;QACT,OAAO,IAAI,CAAC,MAAM;;AAGtB;;;;AAIG;AACH,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,qBAAqB,EAAE;;AAGtF;;;AAGG;IACK,qBAAqB,GAAA;QACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE;AAC3C,YAAA,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;AAChE,gBAAA,OAAO,KAAK;;;AAGpB,QAAA,OAAO,IAAI;;IAGP,mBAAmB,GAAA;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGrC,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,CAAC,IAAI,CAAC,WAAW;;AAG5B,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,CAAC,IAAI,CAAC,WAAW;;AAG5B,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,CAAC,IAAI,CAAC,eAAe;;IAGhC,IAAW,MAAM,CAAC,EAAW,EAAA;AACzB,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM;QAC5B,IAAI,CAAC,MAAM,GAAA,CAAA;AACX,QAAA,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,cAAc,EAAE;;;AAI7B,IAAA,IAAW,MAAM,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,MAAM,KAAA,CAAA;;IAGtB,IAAW,IAAI,CAAC,EAAW,EAAA;QACvB,IAAI,EAAE,EAAE;YACJ,IAAI,CAAC,MAAM,GAAA,CAAA;;;AAInB,IAAA,IAAW,IAAI,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,MAAM,KAAA,CAAA;;IAGtB,IAAW,QAAQ,CAAC,EAAW,EAAA;QAC3B,IAAI,EAAE,EAAE;YACJ,IAAI,CAAC,MAAM,GAAA,CAAA;;;AAInB,IAAA,IAAW,QAAQ,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,KAAA,CAAA;;AAGtB,IAAA,WAAA,CAAY,GAAa,EAAkB,MAAc,EAA0C,eAAoB,EAAA;AACnH,QAAA,KAAK,CAAC,GAAG,EAAEE,eAAa,EAAE,eAAe,CAAC;QADH,IAAM,CAAA,MAAA,GAAN,MAAM;QApF1C,IAAS,CAAA,SAAA,GAAG,IAAI;QACvB,IAAM,CAAA,MAAA,GAAY,KAAK;AAEf,QAAA,IAAA,CAAA,MAAM,GAAqC,CAAA;;QAoF/C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC;;AAGjD,IAAA,YAAY,CAAC,KAAa,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;;AAG3E,IAAA,YAAY,CAAC,KAAa,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;;AAG3E,IAAA,YAAY,CAAC,KAAa,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;;;IAI1E,cAAc,GAAA;QAClB,UAAU,CAAC,MAAK;AACZ,YAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC3B,gBAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;;YAEtD,MAAM,SAAS,GAAI,IAAY,CAAC,eAAe,CAAC,mBAAmB,EAAE;YACrE,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC;SAClD,EAAE,GAAG,CAAC;;IAGJ,MAAM,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;;QAExG,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE;AAC3D,QAAA,cAAc,CAAC,MAAM,CAAE,IAAY,CAAC,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/E,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC;AACrD,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;;AAG/B,IAAA,gBAAgB,CAAC,GAAW,EAAE,EAAO,EAAE,EAAQ,EAAA;AAC3C,QAAA,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,UAAU,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC;;aACpC;YACH,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;;;IAI3C,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE;;IAGpB,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC;;;AArJ7C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,SAAA,2BAAA,CAAA,iBAAA,EAAA,EAAA,OAAA,KAAA,iBAAA,IAAA,mBAAmB,8FA+FuC,kBAAkB,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;oEA/F5E,mBAAmB,EAAA,SAAA,EAAA,CAAA,CAAA,MAAA,EAAA,cAAA,EAAA,EAAA,CAAA,CAAA,EAAA,cAAA,EAAA,SAAA,kCAAA,CAAA,EAAA,EAAA,GAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;wCAkBX,mBAAmB,EAAA,CAAA,CAAA;;;;;YAlB3B,EAAmB,CAAA,WAAA,CAAA,SAAA,EAAA,GAAA,CAAA,SAAA,CAAA;AANjB,SAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;gBACP,kBAAkB,CAAC,mBAAmB,CAAC;gBACvC;AACH,aAAA,CAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,KAAA,EAAAC,KAAA,EAAA,kBAAA,EAAAC,KAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAA,4BAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;;YAJU,EAAkD,CAAA,YAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,0BAAA,EAAA,EAAA,CAAA,CAAA;;;iFAOpD,mBAAmB,EAAA,CAAA;cAV/B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,QAAQ,EAAE,oBAAoB;AAC9B,gBAAA,QAAQ,EAAE,CAAoD,kDAAA,CAAA;AAC9D,gBAAA,SAAS,EAAE;AACP,oBAAA,kBAAkB,CAAqB,mBAAA,CAAA;oBACvC;AACH,iBAAA;AACD,gBAAA,QAAQ,EAAE;AACb,aAAA;;sBAgG+B;;sBAAgC,MAAM;uBAAC,kBAAkB;;sBAAG;qBA7E7B,oBAAoB,EAAA,CAAA;kBAA9E,eAAe;AAAC,YAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC;YAGrD,SAAS,EAAA,CAAA;kBADZ,WAAW;mBAAC,eAAe;;kFApBnB,mBAAmB,EAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,UAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;;;;;;;;ICpCpB,EAA2B,CAAA,SAAA,CAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA;;;IAIzB,EAAoB,CAAA,cAAA,CAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA;IAAA,EAAO,CAAA,MAAA,CAAA,CAAA,CAAA;IAAA,EAAO,CAAA,YAAA,EAAA;;;IAAd,EAAO,CAAA,SAAA,EAAA;IAAP,EAAO,CAAA,iBAAA,CAAA,YAAA,GAAA,CAAA,CAAA;;;IAG3B,EAA6B,CAAA,SAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA;;;IAG7B,EAAmC,CAAA,SAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA;;;IAGnC,EAA2C,CAAA,SAAA,CAAA,CAAA,EAAA,GAAA,CAAA;;;IAAxC,EAAmC,CAAA,sBAAA,CAAA,WAAA,EAAA,OAAA,CAAA,SAAA,EAAA,EAAA,CAAA;;;IAGtC,EAA+C,CAAA,SAAA,CAAA,CAAA,EAAA,GAAA,CAAA;;;IAA5C,EAAuC,CAAA,sBAAA,CAAA,WAAA,EAAA,OAAA,CAAA,aAAA,EAAA,EAAA,CAAA;;;IAK1C,EAAM,CAAA,cAAA,CAAA,CAAA,EAAA,MAAA,CAAA;IAAA,EAAe,CAAA,MAAA,CAAA,CAAA,CAAA;IAAA,EAAO,CAAA,YAAA,EAAA;;;IAAtB,EAAe,CAAA,SAAA,EAAA;IAAf,EAAe,CAAA,iBAAA,CAAA,GAAA,IAAA,YAAA,GAAA,CAAA,CAAA,CAAA;;;;IAKvB,EAA4D,CAAA,cAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA;IAC1D,EAA8D,CAAA,SAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA;IAC9D,EAAuE,CAAA,cAAA,CAAA,CAAA,EAAA,GAAA,EAAA,EAAA,CAAA;AAAlD,IAAA,EAAA,CAAA,UAAA,CAAA,OAAA,EAAA,SAAA,gEAAA,GAAA,EAAA,EAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,CAAA,MAAA,MAAA,GAAA,EAAA,CAAA,aAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAA,CAAA,WAAA,CAAS,yBAAkB,CAAC,CAAA,EAAA,CAAA;IAAsB,EAAI,CAAA,MAAA,CAAA,CAAA,EAAA,MAAA,CAAA;AAC7E,IAD6E,iBAAI,EAC1E;;;;IAFoB,EAA6B,CAAA,SAAA,EAAA;IAA7B,EAA6B,CAAA,UAAA,CAAA,aAAA,EAAA,OAAA,CAAA,QAAA,CAAA;;;;IAlC9D,EAEiF,CAAA,cAAA,CAAA,CAAA,EAAA,IAAA,EAAA,CAAA,CAAA;AAA/E,IAAA,EAAA,CAAA,UAAA,CAAA,OAAA,EAAA,SAAA,kDAAA,CAAA,MAAA,EAAA,EAAA,MAAA,OAAA,GAAA,EAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,SAAA,CAAA,CAAA,MAAA,MAAA,GAAA,EAAA,CAAA,aAAA,EAAA,CAAA,CAAA,OAAA,EAAA,CAAA,WAAA,CAAS,2CAAiC,CAAC,CAAA,EAAA,CAAA;IAC3C,EAE8J,CAAA,cAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,EAAA,CAAA,UAAA,CAAA,SAAA,EAAA,SAAA,mDAAA,CAAA,MAAA,EAAA,EAAA,EAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,CAAA,MAAA,MAAA,GAAA,EAAA,CAAA,aAAA,EAAA,CAAA,CAAA,OAAA,EAAA,CAAA,WAAA,CAAW,wBAAiB,CAAC,CAAA,EAAA,CAAA;IAC3J,EAA0C,CAAA,UAAA,CAAA,CAAA,EAAA,4CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA;IAG1C,EAAiC,CAAA,cAAA,CAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA;AAa/B,IAZA,+EAAyD,CAG4E,CAAA,EAAA,4CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,4CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAGxC,gEAGwD,CAGhE,CAAA,EAAA,4CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,EAAA,CAAA;IAGvF,EAAO,CAAA,YAAA,EAAA;IACP,EAA4B,CAAA,cAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA;IAC1B,EAA8C,CAAA,UAAA,CAAA,EAAA,EAAA,6CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,CAAA;IAG9C,EAA2D,CAAA,SAAA,CAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA;IAC7D,EAAO,CAAA,YAAA,EAAA;IACP,EAAqB,CAAA,UAAA,CAAA,EAAA,EAAA,6CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA;AAOzB,IADE,iBAAI,EACD;;;;;AAtCH,IAD0B,sCAAqB,CAC+B,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,OAAA,CAAA,IAAA,EAAA,OAAA,CAAA,MAAA,EAAA,OAAA,CAAA,QAAA,CAAA,CAAA;;IAI5E,EAAuF,CAAA,SAAA,EAAA;AAAC,IAAxF,4HAAuF,CAAsC,UAAA,EAAA,OAAA,CAAA,MAAA,GAAA,GAAA,GAAA,IAAA,CAAA;;IAC7H,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,SAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IAEC,EAEC,CAAA,SAAA,CAAA,CAAA,CAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,QAAA,CAAA,IAAA,CAAA,OAAA,CAAA,MAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IACD,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,KAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,eAAA,CAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,aAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,aAAA,CAAA,CAAA,IAAA,CAAA,OAAA,CAAA,MAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IACD,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,KAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,eAAA,CAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA,IAAA,OAAA,CAAA,MAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IACD,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,aAAA,CAAA,KAAA,OAAA,CAAA,SAAA,IAAA,CAAA,OAAA,CAAA,MAAA,IAAA,OAAA,CAAA,SAAA,IAAA,OAAA,CAAA,MAAA,IAAA,OAAA,CAAA,aAAA,KAAA,EAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IACD,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,OAAA,CAAA,aAAA,IAAA,OAAA,CAAA,MAAA,KAAA,MAAA,CAAA,KAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,aAAA,CAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;IAGD,EAEC,CAAA,SAAA,CAAA,CAAA,CAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,KAAA,IAAA,MAAA,CAAA,KAAA,CAAA,QAAA,CAAA,aAAA,CAAA,GAAA,EAAA,GAAA,CAAA,CAAA,CAAA;IACwB,EAA0B,CAAA,SAAA,EAAA;IAA1B,EAA0B,CAAA,UAAA,CAAA,aAAA,EAAA,OAAA,CAAA,KAAA,CAAA;IAErD,EAKC,CAAA,SAAA,EAAA;IALD,EAKC,CAAA,aAAA,CAAA,OAAA,CAAA,QAAA,GAAA,EAAA,GAAA,CAAA,CAAA,CAAA;;;IASP,EAAyE,CAAA,SAAA,CAAA,CAAA,EAAA,GAAA,EAAA,EAAA,CAAA;;;IAF7E,EAAwC,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA;IACtC,EAAuB,CAAA,UAAA,CAAA,CAAA,EAAA,oDAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,EAAA,CAAA;IAGvB,EAA0D,CAAA,YAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,aAAA,EAAA,oBAAA,EAAA,CAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAC5D,EAAM,CAAA,YAAA,EAAA;;;IAJJ,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,MAAA,CAAA,OAAA,CAAA,OAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;;;IAOC,EAAK,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,CAAA;IAAA,EAAiB,CAAA,MAAA,CAAA,CAAA,CAAA;IAAA,EAAM,CAAA,YAAA,EAAA;;;IAAvB,EAAiB,CAAA,SAAA,EAAA;IAAjB,EAAiB,CAAA,iBAAA,CAAA,MAAA,CAAA,aAAA,CAAA;;;IAF1B,EAAwC,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA;IACpC,EAAyB,CAAA,UAAA,CAAA,CAAA,EAAA,oDAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,CAAA;IAGzB,EAAwD,CAAA,YAAA,CAAA,CAAA,EAAA,CAAA,CAAA;IAC5D,EAAM,CAAA,YAAA,EAAA;;;IAJF,EAEC,CAAA,SAAA,EAAA;IAFD,EAEC,CAAA,aAAA,CAAA,EAAA,MAAA,CAAA,SAAA,IAAA,IAAA,GAAA,IAAA,GAAA,MAAA,CAAA,SAAA,CAAA,MAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;;;IAKD,EAA8D,CAAA,kBAAA,CAAA,CAAA,CAAA;;;IAA9D,EAA+C,CAAA,UAAA,CAAA,CAAA,EAAA,qDAAA,EAAA,CAAA,EAAA,CAAA,EAAA,cAAA,EAAA,EAAA,CAAA;;;IAAhC,EAA8B,CAAA,UAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,YAAA,CAAA;;AC9BjD,MAAM,WAAW,GAAG,2BAA2B;AAC/C,MAAM,aAAa,GAAkB;AACjC,IAAA,UAAU,EAAE,WAAW;AACvB,IAAA,SAAS,EAAE;CACd;AAaK,MAAO,eAAgB,SAAQ,iBAAiB,CAAA;AAC3C,IAAA,SAAA,IAAA,CAAA,eAAe,GAAGJ,eAAa,EAAhB,CAAmB;AAgCzC,IAAA,IAAI,WAAW,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC;;AAG/C,IAAA,IAAI,WAAW,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;;AAG9C,IAAA,IAAI,WAAW,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB;;QAEJ,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU;;AAG3D,IAAA,IAAI,UAAU,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB;;AAEJ,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU;;AAGtC,IAAA,IAAI,UAAU,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB;;QAEJ,OAAO,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;;AAG7F,IAAA,IAAI,UAAU,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB;;QAEJ,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO;;AAGlE;;AAEG;AACH,IAAA,IAAI,gBAAgB,GAAA;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC;;AAGnD;;AAEG;AACH,IAAA,IAAI,WAAW,GAAA;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC;;AAG9C;;AAEG;AACH,IAAA,IAAI,UAAU,GAAA;QACV,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;;AAG7C,IAAA,WAAA,CAAY,GAAa,EAAE,wBAAqD,EAA2B,QAAoB,EAA0C,eAAoB,EAAA;QACzL,IAAI,SAAS,GAAa,IAAI;AAE9B,QAAA,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,OAAO,CAAC,GAAG,IAAI,SAAS,GAAG,GAAG,CAAC,CAAC;QA/D3E,IAAY,CAAA,YAAA,GAAY,IAAI;AAuR5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,YAAY,OAAO,KAAK,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU,CAAC;QAvNjK,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC;AAEzD,QAAA,IAAI,CAAC,iBAAiB,GAAG,SAAS;;QAGlC,IAAI,CAAC,OAAO,GAAG;AACX,YAAA,OAAO,EAAE,EAAE;AACX,YAAA,IAAI,EAAE;SACT;AACD,QAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,wBAAwB,GAAG,wBAAwB;AACxD,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;AACvB,QAAA,IAAI,CAAC,gBAAgB,GAAG,CAAC;;AAG7B;;;;AAIG;AACI,IAAA,mBAAmB,CAAC,OAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAChC,MAAM,UAAU,GAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,IAAI,CAAC,gBAAgB;QACvE,IAAI,UAAU,EAAE;AACZ,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAChD,gBAAA,MAAM,UAAU,GAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,CAAC;AACjF,gBAAA,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC;gBACjE,IAAI,CAAC,kBAAkB,EAAE;AACrB,oBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACvD,oBAAA,IAAI,UAAU,CAAC,MAAM,EAAE;wBACnB,UAAU,CAAC,MAAK;4BACZ,UAAU,CAAC,MAAM,EAAE;yBACtB,EAAE,EAAE,CAAC;;;;;;AAO1B;;;AAGG;AACI,IAAA,OAAO,CAAC,WAAW,EAAA;AACtB,QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AACvB,YAAA,WAAW,GAAG,CAAC,WAAW,CAAC;;QAE/B,MAAM,aAAa,GAAG,EAAE;QACxB,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,KAAI;AACjC,YAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAC,CAAC;YAC1E,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC;;AAEzD,YAAA,IAAI,oBAAoB,IAAI,eAAe,GAAG,CAAC,EAAE;gBAC7C,OAAO,CAAC,IAAI,CAAC,CAAA,0BAAA,EAA6B,IAAI,CAAC,IAAI,CAAiB,eAAA,CAAA,CAAC;gBACrE;;YAGJ,IAAI,WAAW,GAAG,EAAE;YACpB,IAAI,SAAS,GAAG,EAAE;YAClB,IAAI,CAAC,gBAAgB,EAAE;AACvB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,CAAA,UAAA,EAAa,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;AAC7F,YAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC;YAEzC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,KAAI;AACzB,gBAAA,IAAI,GAAG,KAAK,QAAQ,EAAE;oBAClB,SAAS,GAAG,GAAG,SAAS,CAAA,CAAA,EAAI,GAAG,CAAK,EAAA,EAAA,KAAK,GAAG;;AAEpD,aAAC,CAAC;YAEF,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAI;gBAClC,WAAW,GAAG,GAAG,WAAW,CAAA,iBAAA,EAAoB,GAAG,CAAY,SAAA,EAAA,KAAK,eAAe;AACvF,aAAC,CAAC;YACF,MAAM,MAAM,GAAG,CAAA,iCAAA,EAAoC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA,yBAAA,EAA4B,IAAI,CAAA,EAAA,EAAK,SAAS,CAAA;8BACxG,WAAW;yCACA;AAE7B,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACvB,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI;;AAGzD,YAAA,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,CAAC;AAExJ,SAAC,CAAC;AACF,QAAA,OAAO,aAAa;;AAGxB;;;AAGG;AACI,IAAA,UAAU,CAAC,IAAqB,EAAA;QACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI;cACtE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI;AACzC,QAAA,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,2CAA2C,IAAI,CAAA,WAAA,CAAa,CAAC;;AAG3G;;;;AAIG;AACK,IAAA,yBAAyB,CAAC,KAAa,EAAA;AAC3C,QAAA,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACtC,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,gBAAA,OAAO,IAAI;;;;AAKvB;;;;AAIG;AACK,IAAA,6BAA6B,CAAC,KAAa,EAAA;AAC/C,QAAA,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACtC,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,gBAAA,OAAO,IAAI;;;;AAKvB;;;AAGG;IACK,mBAAmB,GAAA;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC;;AAGnD;;;;AAIG;AACK,IAAA,iBAAiB,CAAC,KAAa,EAAA;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;;AAGtC;;;;AAIG;AACK,IAAA,iBAAiB,CAAC,UAA+B,EAAA;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;;AAGnD;;;;AAIG;AACK,IAAA,gBAAgB,CAAC,IAAY,EAAA;AACjC,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;;AAGtD;;;;AAIG;AACK,IAAA,cAAc,CAAC,IAAyB,EAAA;;AAE5C,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;AACnB,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AACvB,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI;;YAEzB,IAAI,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;AAC5C,YAAA,OAAO,KAAK,IAAI,CAAC,EAAE;gBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;AAC9C,gBAAA,QAAQ,CAAC,IAAI,GAAG,IAAI;AACpB,gBAAA,QAAQ,CAAC,aAAa,GAAG,IAAI;AAC7B,gBAAA,KAAK,EAAE;;;aAER;;AAEH,YAAA,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;YACxC,IAAI,IAAI,EAAE;AACN,gBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;;;QAGjC,IAAI,CAAC,WAAW,EAAE;;AAGtB;;;;AAIG;IACK,mBAAmB,CAAC,MAAa,EAAE,WAAgC,EAAA;;AAEvE,QAAA,IAAI,WAAW,CAAC,IAAI,EAAE;;YAElB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;gBAC/B,IAAI,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE;AAC9C,oBAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;;qBACd;AACH,oBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;;AAE3B,aAAC,CAAC;;AAEF,YAAA,IAAI,CAAC,WAAW,GAAG,WAAW;AAC9B,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI;YAC9B,IAAI,CAAC,WAAW,EAAE;;;;AAQlB,IAAA,UAAU,CAAC,KAAiC,EAAE,WAAW,EAAE,gBAAgB,EAAA;AAC/E,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;AACtB,YAAA,KAA0B,CAAC,IAAI,CAAC,QAAQ,IAAG;AACxC,gBAAA,IAAI,QAAQ,KAAK,KAAK,EAAE;oBACpB;;AAEJ,gBAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC;AACpD,aAAC,EAAE,GAAG,IAAI,GAAG,CAAC;;aACX;AACH,YAAA,IAAI,KAAK,KAAK,KAAK,EAAE;gBACjB;;AAEJ,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC;;;IAIjD,IAAI,CAAC,YAAoB,MAAM,EAAA;AAClC,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW;AACpC,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE;;AAGnD,QAAA,IAAI,SAAS,KAAK,MAAM,EAAE;YACtB,MAAM,QAAQ,GAAI,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,gBAAgB,CAAC;;aACrD,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,SAAS,KAAK,MAAM,EAAE;YACzD,MAAM,QAAQ,GAAK,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC;YAC7D,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,gBAAgB,CAAC;;aACrD,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAC;AACpD,YAAA,KAAK,CAAC,IAAI,CAAO,IAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,IAAQ,KAAI;AAC5E,gBAAA,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE;AACxC,aAAC,CAAC;AACF,YAAA,MAAM,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,aAAa,CAAC,kBAAkB,CAAqB;YACrH,uBAAuB,EAAE,KAAK,EAAE;;;IAKhC,YAAY,CAAC,WAAW,EAAE,gBAAgB,EAAA;QAC9C,MAAM,QAAQ,GAAwB,IAAI,CAAC,yBAAyB,CAAC,gBAAgB,GAAG,CAAC,CAAC;;QAE1F,IAAI,QAAQ,EAAE;AACV,YAAA,QAAQ,CAAC,aAAa,GAAG,IAAI;AAC7B,YAAA,WAAW,CAAC,MAAM,GAAG,IAAI;AACzB,YAAA,WAAW,CAAC,IAAI,GAAG,IAAI;AACvB,YAAA,QAAQ,CAAC,MAAM,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,WAAW,GAAG,QAAQ;;YAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;AAC3E,YAAA,YAAY,CAAC,OAAO,CAAC,CAAC,EAAW,KAAI;AACjC,gBAAA,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC9B,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;gBACpC,IAAI,MAAM,EAAE;AACR,oBAAA,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;AAE7C,aAAC,CAAC;;AAEF,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA,gBAAA,EAAmB,QAAQ,CAAC,QAAQ,CAAA,EAAA,CAAI,CAAC;YAC5F,MAAM,aAAa,GAAG,SAAS,EAAE,aAAa,CAAC,GAAG,CAAgB;AAClE,YAAA,IAAI,SAAS,IAAI,aAAa,EAAE;AAC5B,gBAAA,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AAClC,gBAAA,aAAa,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;gBAC3C,aAAa,CAAC,KAAK,EAAE;;YAEzB,IAAI,CAAC,eAAe,EAAE;;QAE1B,IAAI,CAAC,WAAW,EAAE;;;IAGf,IAAI,GAAA;AACP,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW;AACpC,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE;;QAGnD,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC;AAC3D,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;AACzB,YAAA,QAA6B,CAAC,IAAI,CAAE,QAAQ,IAAG;AAC5C,gBAAA,IAAI,QAAQ,KAAK,KAAK,EAAE;oBACpB;;AAEJ,gBAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC;AACpD,aAAC,EAAE,GAAG,IAAI,GAAG,CAAC;;aACX;AACH,YAAA,IAAI,QAAQ,KAAK,KAAK,EAAE;gBACpB;;AAEJ,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC;;;IAIhD,YAAY,CAAC,WAAW,EAAE,gBAAgB,EAAA;QAC9C,MAAM,QAAQ,GAAwB,IAAI,CAAC,6BAA6B,CAAC,gBAAgB,GAAG,CAAC,CAAC;;QAG9F,IAAI,QAAQ,EAAE;AACV,YAAA,WAAW,CAAC,MAAM,GAAG,KAAK;AAC1B,YAAA,WAAW,CAAC,QAAQ,GAAG,IAAI;AAC3B,YAAA,QAAQ,CAAC,MAAM,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,WAAW,GAAG,QAAQ;;YAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;AAC3E,YAAA,YAAY,CAAC,OAAO,CAAC,CAAC,EAAW,KAAI;AACjC,gBAAA,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC9B,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;gBACpC,IAAI,MAAM,EAAE;AACR,oBAAA,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;AAE7C,aAAC,CAAC;;AAEF,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA,gBAAA,EAAmB,QAAQ,CAAC,QAAQ,CAAA,EAAA,CAAI,CAAC;YAC7F,MAAM,cAAc,GAAG,UAAU,EAAE,aAAa,CAAC,GAAG,CAAgB;AACpE,YAAA,IAAI,UAAU,IAAI,cAAc,EAAE;AAC9B,gBAAA,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AACnC,gBAAA,cAAc,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;gBAC5C,cAAc,CAAC,KAAK,EAAE;;YAE1B,IAAI,CAAC,eAAe,EAAE;;QAE1B,IAAI,CAAC,WAAW,EAAE;;IAGf,IAAI,GAAA;AACP,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGrB;;;;AAIG;AACI,IAAA,QAAQ,CAAC,IAAqB,EAAA;AACjC,QAAA,IAAI,aAAqB;AACzB,QAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;YAChB,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AACzE,YAAA,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE;AACtB,gBAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAA,CAAA,CAAG,CAAC;gBAC9C;;;aAED,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;YACpC,aAAa,GAAG,IAAI;;aACjB;AACH,YAAA,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC;YACpD;;QAGJ,MAAM,QAAQ,GAAwB,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC;AAE3E,QAAA,IAAI,QAAQ,EAAE,IAAI,EAAE;AAChB,YAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC;;aACtC;AACH,YAAA,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC;;;;IAKvE,IAAI,GAAA;AACP,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI;AAC9B,QAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,CAAC;;;IAG5D,MAAM,GAAA;AACT,QAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,CAAC;;IAE9D,WAAW,GAAA;QACd,UAAU,CAAC,MAAK;YAGhB,IAAI,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE;AACtC,YAAA,IAAG,cAAc,GAAG,GAAG,EAAC;AACxB,gBAAA,CAAC,CAAC,wDAAwD,CAAC,CAAC,GAAG,CAAC,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC;gBACpG,IAAI,kBAAkB,GAAG,CAAC,CAAC,wDAAwD,CAAC,CAAC,MAAM,EAAE;gBAC7F,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,MAAM,CAAC;gBACrC,CAAC,CAAC,4BAA4B,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;AAEhE,gBAAA,IAAG,kBAAkB,GAAC,EAAE,EAAC;AACrB,oBAAA,CAAC,CAAC,wDAAwD,CAAC,CAAC,GAAG,CAAC,EAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,aAAa,EAAC,CAAC;oBAC1G,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,OAAO,CAAC;oBAC/C,CAAC,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,MAAM,CAAC;oBAC7C,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,MAAM,CAAC;oBAC9C,CAAC,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAC,OAAO,CAAC;;;AAGrD,SAAC,CAAC;;IAGK,gBAAgB,GAAA;QACnB,CAAC,CAAC,4BAA4B,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAC7D,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,MAAM,CAAC;QAC9C,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,EAAC,UAAS,CAAK,EAAA;AAEnC,YAAA,IAAI,SAAS,GAAG,CAAC,CAAC,mBAAmB,CAAC;;YAEtC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EACnE;gBACI,CAAC,CAAC,4BAA4B,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;gBAChE,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAC,OAAO,CAAC;gBAC/C,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;;AAElC,SAAC,CAAC;;AAGE,IAAA,YAAY,CAAC,OAA4B,EAAA;AAC7C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO;;AAG/B,IAAA,WAAW,CAAC,OAA4B,EAAA;AAC5C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;;AAG9B,IAAA,YAAY,CAAC,MAAM,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC;;IAGpC,eAAe,GAAA;QACnB,UAAU,CAAC,MAAK;YACZ,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,kCAAkC,CAAgB;YAC9G,kBAAkB,EAAE,KAAK,EAAE;AAC/B,SAAC,CAAC;;;AAIN,IAAA,gBAAgB,CAAC,GAAW,EAAE,EAAO,EAAE,EAAQ,EAAA;;AAG3C,QAAA,IAAI,GAAG,KAAK,WAAW,EAAE;AACrB,YAAA,IAAI,CAAC,SAAS,GAAI,EAAE,KAAK,WAAW,GAAG,eAAe,GAAG,EAAE;;AACxD,aAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AAC1B,YAAA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;;AAClB,aAAA,IAAI,GAAG,KAAK,aAAa,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;;AAC3C,aAAA,IAAI,GAAG,KAAK,kBAAkB,EAAE;AACnC,YAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;;aAClF;YACH,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;;;IAI3C,kBAAkB,GAAA;QACd,KAAK,CAAC,kBAAkB,EAAE;QAC1B,IAAI,CAAC,iBAAiB,EAAE;QACxB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW;QACpD,IAAI,CAAC,UAAU,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW;QACxD,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW;QACtD,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU;AAClD,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,UAAU;AAC9D,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;AAC5C,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE;AAC5C,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;QACxC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY;QACtD,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB;QAC9D,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY;QACtD,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc;QAC1D,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB;AAC9D,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU;AACpD,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU;AACxD,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU;QACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAE,MAAM,IAAG;AACnC,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE;AACvE,gBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAClE,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;;AAEjC,SAAC,CAAC;;AAEE,IAAA,gBAAgB,CAAC,OAA4B,EAAA;QAC7C,OAAO,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;;AAExC,IAAA,4BAA4B,CAAC,KAAa,EAAA;AAC1C,QAAA,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACtC,YAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;AAC7B,gBAAA,OAAO,IAAI;;;AAGnB,QAAA,IAAI,KAAK,KAAK,CAAC,EAAE;AACb,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AAC1D,YAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;AAC7B,gBAAA,OAAO,IAAI;;;;AAInB,IAAA,2BAA2B,CAAC,KAAa,EAAA;AACrC,QAAA,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACtC,YAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;AAC7B,gBAAA,OAAO,IAAI;;;QAGnB,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACrC,YAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;AAC9B,gBAAA,OAAO,IAAI;;;;IAK/B,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,MAAM,CACF,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAgB,EAC9D,IAAI,EACJ,iBAAiB,CAAC,WAAW,CAChC;QACD,UAAU,CAAC,MAAK;YAAG,IAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAC,GAAG,EAAE;gBACzC,CAAC,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC;;AAE5C,SAAC,CAAC;;IAEN,kBAAkB,GAAA;QACd,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrH,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;;IAErH,kBAAkB,GAAA;AACrB,QAAA,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC;;AAE7D,IAAA,SAAS,CAAC,KAAK,EAAA;AACX,QAAA,IAAI,OAAO;AACX,QAAA,QAAQ,KAAK,CAAC,GAAG;AACb,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,SAAS;gBACV,KAAK,CAAC,cAAc,EAAE;gBACtB,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACrG;AAEJ,YAAA,KAAK,YAAY;AACjB,YAAA,KAAK,WAAW;gBACZ,KAAK,CAAC,cAAc,EAAE;gBACtB,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACpG;AACJ,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,UAAU;gBACX,KAAK,CAAC,cAAc,EAAE;gBACtB,UAAU,CAAC,MAAK;oBACZ,MAAM,aAAa,GAAI,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC;oBACrE,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC;oBACvD,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC;AAErE,oBAAA,IAAI,MAAM,IAAI,gBAAgB,EAAE;wBAChC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC;wBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC;wBAClF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;wBAE/C,IAAI,WAAW,IAAI,WAAW,KAAK,IAAI,CAAC,WAAW,EAAE;AACjD,4BAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC;;4BAG5C,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;AAC3E,4BAAA,YAAY,CAAC,OAAO,CAAC,CAAC,EAAW,KAAI;AACpC,gCAAA,EAAkB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AAClD,6BAAC,CAAC;4BAEF,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC;4BAC5C,IAAI,UAAU,EAAE;AAChB,gCAAA,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;gCACxC,UAAU,CAAC,KAAK,EAAE;;;;iBAI7B,EAAE,CAAC,CAAC;gBACL;AACJ,YAAA;gBACI;;QAET,IAAI,OAAO,EAAE;AACR,YAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;AAC1E,YAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA,gBAAA,EAAmB,OAAO,CAAC,QAAQ,CAAI,EAAA,CAAA,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;YACnG,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,kCAAkC,CAAgB;YAClG,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,mBAAmB,CAAC;AAC7E,YAAA,YAAY,CAAC,OAAO,CAAC,CAAC,EAAW,KAAI;AACjC,gBAAA,EAAkB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACrD,aAAC,CAAC;YACH,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;YACtC,MAAM,EAAE,KAAK,EAAE;;;IAGvB,oBAAoB,GAAA;AAChB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,IAC7C,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,QAAQ,CAAI,EAAA,CAAA,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1G,QAAA,OAAO,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE;;gHAprBhD,eAAe,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAAK,IAAA,CAAA,2BAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CA0F0E,OAAO,EAAA,CAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAgC,kBAAkB,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;oEA1FlJ,eAAe,EAAA,SAAA,EAAA,CAAA,CAAA,KAAA,EAAA,UAAA,EAAA,EAAA,CAAA,CAAA,EAAA,cAAA,EAAA,SAAA,8BAAA,CAAA,EAAA,EAAA,GAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;gDAIc,WAAW,CAAA;wCADhC,mBAAmB,EAAA,CAAA,CAAA;;;;;AATzB,SAAA,EAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;gBACP,kBAAkB,CAAC,eAAe,CAAC;AACnC,gBAAA,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAK,EAAG,OAAO,EAAE,CAAA,EAAE,EAAE,KAAK,EAAE,IAAI;AAClE,aAAA,CAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,KAAA,EAAA,GAAA,EAAA,kBAAA,EAAA,GAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,CAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,CAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,OAAA,EAAA,QAAA,EAAA,SAAA,CAAA,EAAA,CAAA,MAAA,EAAA,oBAAA,EAAA,CAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,CAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,CAAA,EAAA,eAAA,CAAA,EAAA,CAAA,CAAA,EAAA,UAAA,EAAA,IAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,CAAA,EAAA,eAAA,CAAA,EAAA,CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,cAAA,CAAA,EAAA,CAAA,CAAA,EAAA,kBAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,wBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;;AD9CH,YADF,8BAAgC,CAC2B,CAAA,EAAA,IAAA,CAAA;YACvD,EAyCC,CAAA,gBAAA,CAAA,CAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,CAAA,EAAA,EAAA,CAAA,yBAAA,CAAA;AAEL,YADE,iBAAK,EACD;YACN,EAA0B,CAAA,UAAA,CAAA,CAAA,EAAA,sCAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,sCAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAQA,CAQgC,CAAA,EAAA,sCAAA,EAAA,CAAA,EAAA,CAAA,EAAA,cAAA,CAAA;;YA7DpD,EAAoD,CAAA,SAAA,EAAA;YAApD,EAAoD,CAAA,sBAAA,CAAA,iCAAA,EAAA,GAAA,CAAA,SAAA,EAAA,EAAA,CAAA;YACtD,EAyCC,CAAA,SAAA,EAAA;YAzCD,EAyCC,CAAA,UAAA,CAAA,GAAA,CAAA,KAAA,CAAA;YAGL,EAOC,CAAA,SAAA,CAAA,CAAA,CAAA;YAPD,EAOC,CAAA,aAAA,CAAA,GAAA,CAAA,IAAA,KAAA,SAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;YACD,EAOC,CAAA,SAAA,EAAA;YAPD,EAOC,CAAA,aAAA,CAAA,GAAA,CAAA,IAAA,KAAA,SAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;YACD,EAEC,CAAA,SAAA,EAAA;YAFD,EAEC,CAAA,aAAA,CAAA,GAAA,CAAA,SAAA,IAAA,GAAA,CAAA,SAAA,CAAA,MAAA,IAAA,GAAA,CAAA,IAAA,KAAA,SAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;ACvBW,SAAA,EAAA,EAAA,YAAA,EAAA,CAAA,YAAY,mCAAE,kBAAkB,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;iFAS/B,eAAe,EAAA,CAAA;cAX3B,SAAS;6BACI,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,kBAAkB,CAAC,EAAA,QAAA,EAC/B,eAAe,EAEd,SAAA,EAAA;AACP,oBAAA,kBAAkB,CAAiB,eAAA,CAAA;AACnC,oBAAA,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAK,EAAG,OAAO,EAAE,CAAA,EAAE,EAAE,KAAK,EAAE,IAAI;AAClE,iBAAA,EAAA,QAAA,EACS,UAAU,EAAA,QAAA,EAAA,0rGAAA,EAAA;;sBA4F+D;;sBAAQ,MAAM;uBAAC,OAAO;;sBAAyB,MAAM;uBAAC,kBAAkB;;sBAAG;qBAvFxH,KAAK,EAAA,CAAA;kBAA1C,eAAe;mBAAC,mBAAmB;YACqC,YAAY,EAAA,CAAA;kBAApF,YAAY;mBAAC,cAAc,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE;;kFAJ9D,eAAe,EAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;AChDrB,MAAM,aAAa,GAAG,MAAK;AAC9B,IAAA,QAAQ,CACJ,iBAAiB,EACjB,IAAI,GAAG,CAAC;QACJ,CAAC,OAAO,EAAE,WAAW,CAAC;QACtB,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAC;AAC1C,KAAA,CAAC,CACL;AACL,CAAC;;ACPD,MAAM,WAAW,GAAkB;AAC/B,IAAA,UAAU,EAAE,iBAAiB;AAC7B,IAAA,SAAS,EAAE;CACd;AAUK,MAAO,qBAAsB,SAAQ,aAAa,CAAA;AAC7C,IAAA,SAAA,IAAA,CAAA,eAAe,GAAG,aAAa,EAAhB,CAAmB;IAEzC,WAAY,CAAA,GAAa,EAA0C,eAAoB,EAAA;AACnF,QAAA,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,eAAe,CAAC;;AAJnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,SAAA,6BAAA,CAAA,iBAAA,EAAA,EAAA,OAAA,KAAA,iBAAA,IAAA,qBAAqB,0DAGK,kBAAkB,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAH5C,IAAA,SAAA,IAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,IAAA,EAAA,qBAAqB,EALnB,SAAA,EAAA,CAAA,CAAA,KAAA,EAAA,gBAAA,EAAA,EAAA,CAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;gBACP,kBAAkB,CAAC,qBAAqB;AAC3C,aAAA,CAAA,EAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,CAAA,CAAA;;iFAGQ,qBAAqB,EAAA,CAAA;cARjC,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACT,gBAAA,UAAU,EAAE,IAAI;AACd,gBAAA,QAAQ,EAAE,qBAAqB;AAC/B,gBAAA,SAAS,EAAE;AACP,oBAAA,kBAAkB,CAAuB,qBAAA;AAC5C,iBAAA;AACD,gBAAA,QAAQ,EAAE,gBAAgB;AAC7B,aAAA;;sBAI+B,MAAM;uBAAC,kBAAkB;;sBAAG;;;ACpB5D;;AAEG;;;;"}
@@ -34,6 +34,7 @@ export declare class WizardComponent extends StylableComponent implements OnInit
34
34
  dynamicWizard: any;
35
35
  defaultstepindex: any;
36
36
  private _isFirstLoad;
37
+ autoActivation: boolean;
37
38
  get hasPrevStep(): boolean;
38
39
  get hasNextStep(): boolean;
39
40
  get showDoneBtn(): boolean;
@@ -139,8 +140,14 @@ export declare class WizardComponent extends StylableComponent implements OnInit
139
140
  private updateStepFocus;
140
141
  onPropertyChange(key: string, nv: any, ov?: any): void;
141
142
  ngAfterContentInit(): void;
143
+ private isSelectableStep;
144
+ private getSelectableStepBeforeIndex;
145
+ private getSelectableStepAfterIndex;
142
146
  ngAfterViewInit(): void;
143
147
  ngAfterViewChecked(): void;
148
+ getActiveStepIndex(): number;
149
+ onkeydown(event: any): void;
150
+ getSelectedStepIndex(): number;
144
151
  static ɵfac: i0.ɵɵFactoryDeclaration<WizardComponent, [null, null, { self: true; }, { optional: true; }]>;
145
152
  static ɵcmp: i0.ɵɵComponentDeclaration<WizardComponent, "div[wmWizard]", ["wmWizard"], {}, {}, ["wizardAction", "steps"], ["*", "div[wmRepeatTemplate]"], true, never>;
146
153
  }