blob: e4a949764ad1d7f7ae69ddb4944a50037e1f4602 [file] [log] [blame]
{"version":3,"file":"stepper.es5.js","sources":["../../../src/material/stepper/stepper-module.ts","../../../src/material/stepper/stepper-button.ts","../../../src/material/stepper/stepper.ts","../../../src/material/stepper/stepper-icon.ts","../../../src/material/stepper/stepper-animations.ts","../../../src/material/stepper/step-header.ts","../../../src/material/stepper/stepper-intl.ts","../../../src/material/stepper/step-label.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {PortalModule} from '@angular/cdk/portal';\nimport {CdkStepperModule} from '@angular/cdk/stepper';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatButtonModule} from '@angular/material/button';\nimport {ErrorStateMatcher, MatCommonModule, MatRippleModule} from '@angular/material/core';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatStepHeader} from './step-header';\nimport {MatStepLabel} from './step-label';\nimport {MatHorizontalStepper, MatStep, MatStepper, MatVerticalStepper} from './stepper';\nimport {MatStepperNext, MatStepperPrevious} from './stepper-button';\nimport {MatStepperIcon} from './stepper-icon';\nimport {MAT_STEPPER_INTL_PROVIDER} from './stepper-intl';\n\n\n@NgModule({\n imports: [\n MatCommonModule,\n CommonModule,\n PortalModule,\n MatButtonModule,\n CdkStepperModule,\n MatIconModule,\n MatRippleModule,\n ],\n exports: [\n MatCommonModule,\n MatHorizontalStepper,\n MatVerticalStepper,\n MatStep,\n MatStepLabel,\n MatStepper,\n MatStepperNext,\n MatStepperPrevious,\n MatStepHeader,\n MatStepperIcon,\n ],\n declarations: [\n MatHorizontalStepper,\n MatVerticalStepper,\n MatStep,\n MatStepLabel,\n MatStepper,\n MatStepperNext,\n MatStepperPrevious,\n MatStepHeader,\n MatStepperIcon,\n ],\n providers: [MAT_STEPPER_INTL_PROVIDER, ErrorStateMatcher],\n})\nexport class MatStepperModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkStepperNext, CdkStepperPrevious} from '@angular/cdk/stepper';\nimport {Directive} from '@angular/core';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n selector: 'button[matStepperNext]',\n host: {\n '[type]': 'type',\n },\n inputs: ['type']\n})\nexport class MatStepperNext extends CdkStepperNext {\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[matStepperPrevious]',\n host: {\n '[type]': 'type',\n },\n inputs: ['type']\n})\nexport class MatStepperPrevious extends CdkStepperPrevious {\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directionality} from '@angular/cdk/bidi';\nimport {\n CdkStep,\n CdkStepper,\n StepContentPositionState,\n STEPPER_GLOBAL_OPTIONS,\n StepperOptions\n} from '@angular/cdk/stepper';\nimport {AnimationEvent} from '@angular/animations';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n QueryList,\n SkipSelf,\n TemplateRef,\n ViewChildren,\n ViewEncapsulation,\n} from '@angular/core';\nimport {FormControl, FormGroupDirective, NgForm} from '@angular/forms';\nimport {DOCUMENT} from '@angular/common';\nimport {ErrorStateMatcher} from '@angular/material/core';\nimport {Subject} from 'rxjs';\nimport {takeUntil, distinctUntilChanged} from 'rxjs/operators';\n\nimport {MatStepHeader} from './step-header';\nimport {MatStepLabel} from './step-label';\nimport {matStepperAnimations} from './stepper-animations';\nimport {MatStepperIcon, MatStepperIconContext} from './stepper-icon';\n\n@Component({\n moduleId: module.id,\n selector: 'mat-step',\n templateUrl: 'step.html',\n providers: [{provide: ErrorStateMatcher, useExisting: MatStep}],\n encapsulation: ViewEncapsulation.None,\n exportAs: 'matStep',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatStep extends CdkStep implements ErrorStateMatcher {\n /** Content for step label given by `<ng-template matStepLabel>`. */\n @ContentChild(MatStepLabel, {static: false}) stepLabel: MatStepLabel;\n\n /** @breaking-change 8.0.0 remove the `?` after `stepperOptions` */\n constructor(@Inject(forwardRef(() => MatStepper)) stepper: MatStepper,\n @SkipSelf() private _errorStateMatcher: ErrorStateMatcher,\n @Optional() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions?: StepperOptions) {\n super(stepper, stepperOptions);\n }\n\n /** Custom error state matcher that additionally checks for validity of interacted form. */\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n const originalErrorState = this._errorStateMatcher.isErrorState(control, form);\n\n // Custom error state checks for the validity of form that is not submitted or touched\n // since user can trigger a form change by calling for another step without directly\n // interacting with the current form.\n const customErrorState = !!(control && control.invalid && this.interacted);\n\n return originalErrorState || customErrorState;\n }\n}\n\n\n@Directive({selector: '[matStepper]', providers: [{provide: CdkStepper, useExisting: MatStepper}]})\nexport class MatStepper extends CdkStepper implements AfterContentInit {\n /** The list of step headers of the steps in the stepper. */\n @ViewChildren(MatStepHeader) _stepHeader: QueryList<MatStepHeader>;\n\n /** Steps that the stepper holds. */\n @ContentChildren(MatStep) _steps: QueryList<MatStep>;\n\n /** Custom icon overrides passed in by the consumer. */\n @ContentChildren(MatStepperIcon) _icons: QueryList<MatStepperIcon>;\n\n /** Event emitted when the current step is done transitioning in. */\n @Output() readonly animationDone: EventEmitter<void> = new EventEmitter<void>();\n\n /** Whether ripples should be disabled for the step headers. */\n @Input() disableRipple: boolean;\n\n /** Consumer-specified template-refs to be used to override the header icons. */\n _iconOverrides: {[key: string]: TemplateRef<MatStepperIconContext>} = {};\n\n /** Stream of animation `done` events when the body expands/collapses. */\n _animationDone = new Subject<AnimationEvent>();\n\n ngAfterContentInit() {\n this._icons.forEach(({name, templateRef}) => this._iconOverrides[name] = templateRef);\n\n // Mark the component for change detection whenever the content children query changes\n this._steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => this._stateChanged());\n\n this._animationDone.pipe(\n // This needs a `distinctUntilChanged` in order to avoid emitting the same event twice due\n // to a bug in animations where the `.done` callback gets invoked twice on some browsers.\n // See https://github.com/angular/angular/issues/24084\n distinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\n takeUntil(this._destroyed)\n ).subscribe(event => {\n if ((event.toState as StepContentPositionState) === 'current') {\n this.animationDone.emit();\n }\n });\n }\n}\n\n@Component({\n moduleId: module.id,\n selector: 'mat-horizontal-stepper',\n exportAs: 'matHorizontalStepper',\n templateUrl: 'stepper-horizontal.html',\n styleUrls: ['stepper.css'],\n inputs: ['selectedIndex'],\n host: {\n 'class': 'mat-stepper-horizontal',\n '[class.mat-stepper-label-position-end]': 'labelPosition == \"end\"',\n '[class.mat-stepper-label-position-bottom]': 'labelPosition == \"bottom\"',\n 'aria-orientation': 'horizontal',\n 'role': 'tablist',\n },\n animations: [matStepperAnimations.horizontalStepTransition],\n providers: [\n {provide: MatStepper, useExisting: MatHorizontalStepper},\n {provide: CdkStepper, useExisting: MatHorizontalStepper}\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatHorizontalStepper extends MatStepper {\n /** Whether the label should display in bottom or end position. */\n @Input()\n labelPosition: 'bottom' | 'end' = 'end';\n}\n\n@Component({\n moduleId: module.id,\n selector: 'mat-vertical-stepper',\n exportAs: 'matVerticalStepper',\n templateUrl: 'stepper-vertical.html',\n styleUrls: ['stepper.css'],\n inputs: ['selectedIndex'],\n host: {\n 'class': 'mat-stepper-vertical',\n 'aria-orientation': 'vertical',\n 'role': 'tablist',\n },\n animations: [matStepperAnimations.verticalStepTransition],\n providers: [\n {provide: MatStepper, useExisting: MatVerticalStepper},\n {provide: CdkStepper, useExisting: MatVerticalStepper}\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatVerticalStepper extends MatStepper {\n constructor(\n @Optional() dir: Directionality,\n changeDetectorRef: ChangeDetectorRef,\n // @breaking-change 8.0.0 `elementRef` and `_document` parameters to become required.\n elementRef?: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) _document?: any) {\n super(dir, changeDetectorRef, elementRef, _document);\n this._orientation = 'vertical';\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive, Input, TemplateRef} from '@angular/core';\nimport {StepState} from '@angular/cdk/stepper';\n\n/** Template context available to an attached `matStepperIcon`. */\nexport interface MatStepperIconContext {\n /** Index of the step. */\n index: number;\n /** Whether the step is currently active. */\n active: boolean;\n /** Whether the step is optional. */\n optional: boolean;\n}\n\n/**\n * Template to be used to override the icons inside the step header.\n */\n@Directive({\n selector: 'ng-template[matStepperIcon]',\n})\nexport class MatStepperIcon {\n /** Name of the icon to be overridden. */\n @Input('matStepperIcon') name: StepState;\n\n constructor(public templateRef: TemplateRef<MatStepperIconContext>) {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/**\n * Animations used by the Material steppers.\n * @docs-private\n */\nexport const matStepperAnimations: {\n readonly horizontalStepTransition: AnimationTriggerMetadata;\n readonly verticalStepTransition: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions the step along the X axis in a horizontal stepper. */\n horizontalStepTransition: trigger('stepTransition', [\n state('previous', style({transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden'})),\n state('current', style({transform: 'none', visibility: 'visible'})),\n state('next', style({transform: 'translate3d(100%, 0, 0)', visibility: 'hidden'})),\n transition('* => *', animate('500ms cubic-bezier(0.35, 0, 0.25, 1)'))\n ]),\n\n /** Animation that transitions the step along the Y axis in a vertical stepper. */\n verticalStepTransition: trigger('stepTransition', [\n state('previous', style({height: '0px', visibility: 'hidden'})),\n state('next', style({height: '0px', visibility: 'hidden'})),\n state('current', style({height: '*', visibility: 'visible'})),\n transition('* <=> current', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)'))\n ])\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {FocusMonitor} from '@angular/cdk/a11y';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n OnDestroy,\n ViewEncapsulation,\n TemplateRef,\n} from '@angular/core';\nimport {Subscription} from 'rxjs';\nimport {MatStepLabel} from './step-label';\nimport {MatStepperIntl} from './stepper-intl';\nimport {MatStepperIconContext} from './stepper-icon';\nimport {CdkStepHeader, StepState} from '@angular/cdk/stepper';\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-step-header',\n templateUrl: 'step-header.html',\n styleUrls: ['step-header.css'],\n host: {\n 'class': 'mat-step-header',\n 'role': 'tab',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatStepHeader extends CdkStepHeader implements OnDestroy {\n private _intlSubscription: Subscription;\n\n /** State of the given step. */\n @Input() state: StepState;\n\n /** Label of the given step. */\n @Input() label: MatStepLabel | string;\n\n /** Error message to display when there's an error. */\n @Input() errorMessage: string;\n\n /** Overrides for the header icons, passed in via the stepper. */\n @Input() iconOverrides: {[key: string]: TemplateRef<MatStepperIconContext>};\n\n /** Index of the given step. */\n @Input() index: number;\n\n /** Whether the given step is selected. */\n @Input() selected: boolean;\n\n /** Whether the given step label is active. */\n @Input() active: boolean;\n\n /** Whether the given step is optional. */\n @Input() optional: boolean;\n\n /** Whether the ripple should be disabled. */\n @Input() disableRipple: boolean;\n\n constructor(\n public _intl: MatStepperIntl,\n private _focusMonitor: FocusMonitor,\n _elementRef: ElementRef<HTMLElement>,\n changeDetectorRef: ChangeDetectorRef) {\n super(_elementRef);\n _focusMonitor.monitor(_elementRef, true);\n this._intlSubscription = _intl.changes.subscribe(() => changeDetectorRef.markForCheck());\n }\n\n ngOnDestroy() {\n this._intlSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n /** Focuses the step header. */\n focus() {\n this._focusMonitor.focusVia(this._elementRef, 'program');\n }\n\n /** Returns string label of given step if it is a text label. */\n _stringLabel(): string | null {\n return this.label instanceof MatStepLabel ? null : this.label;\n }\n\n /** Returns MatStepLabel if the label of given step is a template label. */\n _templateLabel(): MatStepLabel | null {\n return this.label instanceof MatStepLabel ? this.label : null;\n }\n\n /** Returns the host HTML element. */\n _getHostElement() {\n return this._elementRef.nativeElement;\n }\n\n /** Template context variables that are exposed to the `matStepperIcon` instances. */\n _getIconContext(): MatStepperIconContext {\n return {\n index: this.index,\n active: this.active,\n optional: this.optional\n };\n }\n\n _getDefaultTextForState(state: StepState): string {\n if (state == 'number') {\n return `${this.index + 1}`;\n }\n if (state == 'edit') {\n return 'create';\n }\n if (state == 'error') {\n return 'warning';\n }\n return state;\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Injectable, Optional, SkipSelf} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n\n/** Stepper data that is required for internationalization. */\n@Injectable({providedIn: 'root'})\nexport class MatStepperIntl {\n /**\n * Stream that emits whenever the labels here are changed. Use this to notify\n * components if the labels have changed after initialization.\n */\n readonly changes: Subject<void> = new Subject<void>();\n\n /** Label that is rendered below optional steps. */\n optionalLabel: string = 'Optional';\n}\n\n\n/** @docs-private */\nexport function MAT_STEPPER_INTL_PROVIDER_FACTORY(parentIntl: MatStepperIntl) {\n return parentIntl || new MatStepperIntl();\n}\n\n/** @docs-private */\nexport const MAT_STEPPER_INTL_PROVIDER = {\n provide: MatStepperIntl,\n deps: [[new Optional(), new SkipSelf(), MatStepperIntl]],\n useFactory: MAT_STEPPER_INTL_PROVIDER_FACTORY\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\nimport {CdkStepLabel} from '@angular/cdk/stepper';\n\n@Directive({\n selector: '[matStepLabel]',\n})\nexport class MatStepLabel extends CdkStepLabel {}\n"],"names":["tslib_1.__extends","state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AOWA,IAAA,YAAA,kBAAA,UAAA,MAAA,EAAA;IAGkCA,SAAlC,CAAA,YAAA,EAAA,MAAA,CAAA,CAA8C;IAH9C,SAAA,YAAA,GAAA;;KAGiD;;QAHjD,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,gBAAgB;iBAC3B,EAAD,EAAA;;IACgD,OAAhD,YAAiD,CAAjD;CAAiD,CAAf,YAAY,CAA9C,CAAA;;;;;;;;;ADDA,AAAA,IAAA,cAAA,kBAAA,YAAA;IAAA,SAAA,cAAA,GAAA;;;;;QAMW,IAAX,CAAA,OAAkB,GAAkB,IAAI,OAAO,EAAQ,CAAC;;;;QAGtD,IAAF,CAAA,aAAe,GAAW,UAAU,CAAC;KACpC;;QAVD,EAAA,IAAA,EAAC,UAAU,EAAX,IAAA,EAAA,CAAY,EAAC,UAAU,EAAE,MAAM,EAAC,EAAhC,EAAA;;;IAbA,OAAA,cAAA,CAAA;CAuBC,EAAD,CAAA,CAAC;AATD;;;;;AAaA,AAAA,SAAgB,iCAAiC,CAAC,UAA0B,EAA5E;IACE,OAAO,UAAU,IAAI,IAAI,cAAc,EAAE,CAAC;CAC3C;;;;;AAGD,AAAA,IAAa,yBAAyB,GAAG;IACvC,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAAE,cAAc,CAAC,CAAC;IACxD,UAAU,EAAE,iCAAiC;CAC9C;;;;;;ADVD,IAAA,aAAA,kBAAA,UAAA,MAAA,EAAA;IAYmCA,SAAnC,CAAA,aAAA,EAAA,MAAA,CAAA,CAAgD;IA8B9C,SAAF,aAAA,CACW,KAAqB,EACpB,aAA2B,EACnC,WAAoC,EACpC,iBAAoC,EAJxC;QAAE,IAAF,KAAA,GAKI,MALJ,CAAA,IAAA,CAAA,IAAA,EAKU,WAAW,CAAC,IALtB,IAAA,CAQG;QAPQ,KAAX,CAAA,KAAgB,GAAL,KAAK,CAAgB;QACpB,KAAZ,CAAA,aAAyB,GAAb,aAAa,CAAc;QAInC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACzC,KAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS;;;QAAC,YAArD,EAA2D,OAAA,iBAAiB,CAAC,YAAY,EAAE,CAA3F,EAA2F,EAAC,CAAC;;KAC1F;;;;IAED,aAAF,CAAA,SAAA,CAAA,WAAa;;;IAAX,YAAF;QACI,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACrD,CAAH;;;;;;IAGE,aAAF,CAAA,SAAA,CAAA,KAAO;;;;IAAL,YAAF;QACI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;KAC1D,CAAH;;;;;;IAGE,aAAF,CAAA,SAAA,CAAA,YAAc;;;;IAAZ,YAAF;QACI,OAAO,IAAI,CAAC,KAAK,YAAY,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;KAC/D,CAAH;;;;;;IAGE,aAAF,CAAA,SAAA,CAAA,cAAgB;;;;IAAd,YAAF;QACI,OAAO,IAAI,CAAC,KAAK,YAAY,YAAY,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KAC/D,CAAH;;;;;;IAGE,aAAF,CAAA,SAAA,CAAA,eAAiB;;;;IAAf,YAAF;QACI,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;KACvC,CAAH;;;;;;IAGE,aAAF,CAAA,SAAA,CAAA,eAAiB;;;;IAAf,YAAF;QACI,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;KACH,CAAH;;;;;IAEE,aAAF,CAAA,SAAA,CAAA,uBAAyB;;;;IAAvB,UAAwBC,QAAgB,EAA1C;QACI,IAAIA,QAAK,IAAI,QAAQ,EAAE;YACrB,OAAO,EAAb,IAAgB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC;SAC5B;QACD,IAAIA,QAAK,IAAI,MAAM,EAAE;YACnB,OAAO,QAAQ,CAAC;SACjB;QACD,IAAIA,QAAK,IAAI,OAAO,EAAE;YACpB,OAAO,SAAS,CAAC;SAClB;QACD,OAAOA,QAAK,CAAC;KACd,CAAH;;QAjGA,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW,CAAX,QAAA,EAAA,iBAAA;oBACE,QAAQ,EAAE,4tCAAZ;oBACE,MAAF,EAAU,CAAV,00BAAA,CAAA;oBACE,IAAF,EAAA;wBACA,OAAa,EAAb,iBAAgC;wBAC1B,MAAN,EAAA,KAAA;qBACA;oBACA,aAAA,EAAA,iBAAA,CAAA,IAAA;oBACA,eAAA,EAAA,uBAAA,CAAA,MAAA;iBACA,EAAA,EAAA;KACA,CAAA;;;;;QAfA,EAAA,IAAA,EAAQ,UAAR,EAAA;QAbA,EAAA,IAAA,EAAQ,iBAAR,EAAA;KAKA,CAAA,EAAA,CAAA;IAFA,aAAA,CAAA,cAAA,GAAA;;;QA+BA,YAAA,EAAA,CAAA,EAAA,IAAQ,EAAR,KAAA,EAAA,CAAA;QAGA,aAAA,EAAA,CAAG,EAAH,IAAA,EAAA,KAAA,EAAA,CAAA;QAGA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,KAAA,EAAG,CAAH;QAGA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,KAAG,EAAH,CAAA;QAGA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;QAGA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,CAAA;QAGA,aAAA,EAAA,CAAA,EAAA,IAAQ,EAAR,KAAA,EAAA,CAAA;KAGA,CAAA;IAGA,OAAA,aAAA,CAAA;;;;;;;;;;;;AD9CA,AAAA,IAAa,oBAAoB,GAG7B;;;;IAEF,wBAAwB,EAAE,OAAO,CAAC,gBAAgB,EAAE;QAClD,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAC,SAAS,EAAE,0BAA0B,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;QACvF,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,CAAC,CAAC;QACnE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,SAAS,EAAE,yBAAyB,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;QAClF,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,sCAAsC,CAAC,CAAC;KACtE,CAAC;;;;IAGF,sBAAsB,EAAE,OAAO,CAAC,gBAAgB,EAAE;QAChD,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;QAC/D,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;QAC3D,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAC,CAAC,CAAC;QAC7D,UAAU,CAAC,eAAe,EAAE,OAAO,CAAC,sCAAsC,CAAC,CAAC;KAC7E,CAAC;CACH;;;;;;;;;ADfD,AAAA,IAAA,cAAA,kBAAA,YAAA;IAOE,SAAF,cAAA,CAAqB,WAA+C,EAApE;QAAqB,IAArB,CAAA,WAAgC,GAAX,WAAW,CAAoC;KAAI;;QAPxE,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,6BAA6B;iBACxC,EAAD,EAAA;;;;QAlBA,EAAA,IAAA,EAA0B,WAAW,EAArC;;;QAqBA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,gBAAgB,EAAzB,EAAA,CAAA;;IAGA,OAAA,cAAC,CAAD;CAAC,EAAD,CAAA;;;;;;ADiBA,IAAA,OAAA,kBAAA,UAAA,MAAA,EAAA;IAS6BD,SAA7B,CAAA,OAAA,EAAA,MAAA,CAAA,CAAoC;;IAKlC,SAAF,OAAA,CAAoD,OAAmB,EACrC,kBAAqC,EACb,cAA+B,EAFzF;QAAE,IAAF,KAAA,GAGI,MAHJ,CAAA,IAAA,CAAA,IAAA,EAGU,OAAO,EAAE,cAAc,CAAC,IAHlC,IAAA,CAIG;QAH+B,KAAlC,CAAA,kBAAoD,GAAlB,kBAAkB,CAAmB;;KAGpE;;;;;;;;IAGD,OAAF,CAAA,SAAA,CAAA,YAAc;;;;;;IAAZ,UAAa,OAA2B,EAAE,IAAwC,EAApF;;QACA,IAAU,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAlF;;;;;QAKA,IAAU,gBAAgB,GAAG,CAAC,EAAE,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,CAA9E;QAEI,OAAO,kBAAkB,IAAI,gBAAgB,CAAC;KAC/C,CAAH;;QA9BA,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW,CAAX,QAAA,EAAA,UAAA;oBACE,QAAQ,EAAE,sDAAZ;oBACE,SAAF,EAAA,CAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,OAAA,EAAA,CAAA;oBACE,aAAa,EAAf,iBAAA,CAAA,IAAA;oBACE,QAAF,EAAA,SAAA;oBACE,eAAe,EAAjB,uBAAA,CAAA,MAAA;iBACA,EAAA,EAAA;KACA,CAAA;;;;;;;;QAOA,EAAA,IAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,QAAA,EAAiD,EAAC,EAAlD,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,sBAAA,EAAA,EAAA,CAAA,EAAA;KAvBA,CAAA,EAAA,CAAA;IAyBA,OAAA,CAAA,cAAA,GAAA;;;IALA,OAAA,OAAA,CAAA;;AAoBA,AAhBA,IAAc,UAAd,kBAAA,UAAA,MAAA,EAAA;;IAmBA,SAAA,UAAA,GAAA;QACA,IAAA,KAAA,GAAA,MAAA,KAAA,IAAA,IAAA,MAAA,CAAA,KAAA,CAAA,IAAA,EAAA,SAAA,CAAA,IAAA,IAAA,CAAA;;;;;;;;;;;;;;KAoBA;;;;;;;;;QAEA,IAAA,CAAA,MAAA,CAAA,OAAA;;;;;;YACA,OAAA,KAAA,CAAA,cAAA,CAAA,IAAA,CAAA,GAAA,WAAA,CAAA;SAAA,EAAA,CAAA;;QAAiD,IAAyC,CAA1F,MAAA,CAAA,OAAA,CAAA,IAAA,CAAA,SAAA,CAAA,IAAA,CAAA,UAAA,CAAA,CAAA,CAAA,SAAA;;;;;;;;QAOM,oBAAN;;;;;;;;;;;gBAIA,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,CAAA;aACA;SACA,EAAA,CAAA;KACA,CAAA;IACA,UAAA,CAAA,UAAA,GAAA;QACA,EAAA,IAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAA,EAAA,SAAA,EAAA,CAAA,EAAA,OAAA,EAAA,UAAA,EAAA,WAAA,EAAA,UAAA,EAAA,CAAA,EAAA,EAAA,EAAA;;IAxCA,UAAA,CAAA,cAAA,GAAA;;;QAGA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,eAAA,EAAe,IAAf,EAAA,CAAA,cAAA,EAAA,EAAA,CAAA;QAGA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAkB,CAAlB;QAGA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAkB;KAGlB,CAAA;IAGA,OAAA,UAAA,CAAA;;AA0BA,AApBA,IAAE,oBAAF,kBAAA,UAAA,MAAA,EAAA;;IAsBA,SAAA,oBAAA,GAAA;QAsBA,IAAA,KAAA,GAAA,MAAA,KAAA,IAAA,IAAA,MAAA,CAAA,KAAA,CAAoD,IAApD,EAAA,SAAA,CAAA,IAAA,IAAA,CAAA;;;;;;KAGA;;QACA,EAAA,IAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,CAAA,QAAA,EAAA,wBAAA;;oBA1BA,QAAA,EAAA,miDAAA;oBACE,MAAF,EAAU,CAAV,+nGAAA,CAAA;oBACE,MAAF,EAAU,CAAV,eAAA,CAAA;oBACE,IAAF,EAAA;wBACA,OAAa,EAAE,wBAAf;wBACA,wCAAA,EAAA,wBAAA;wBACA,2CAAA,EAAA,2BAAA;wBACM,kBAAN,EAAA,YAAA;wBACI,MAAJ,EAAA,SAAA;qBACA;oBACA,UAAA,EAAA,CAAA,oBAAA,CAAA,wBAAA,CAAA;oBACA,SAAA,EAAA;wBACI,EAAJ,OAAA,EAAA,UAAA,EAAA,WAAA,EAAA,oBAAA,EAAA;wBACA,EAAA,OAAA,EAAA,UAAA,EAAA,WAAA,EAAA,oBAAA,EAAA;qBACA;oBACE,aAAF,EAAA,iBAAA,CAAA,IAAA;oBACA,eAAc,EAAd,uBAAuC,CAAvC,MAAA;iBACA,EAAA,EAAA;KACA,CAAA;IACA,oBAAA,CAAA,cAAA,GAAA;QACA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,KAAmB,EAAnB,CAAA;KACA,CAAA;;;AAGA;;IAAE,SAAF,kBAAA,CAAA,GAAA,EAAA,iBAAA;;IAIA,UAAA,EAAA,SAAA,EAAA;QAoBA,IAAA,KAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAA,GAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,IAAA,IAAA,CAAA;QACA,KAAA,CAAA,YAAA,GAAA,UAAA,CAAA;QAGA,OAAA,KAAA,CAAA;KACA;IAJA,kBAAA,CAAA,UAAA,GAAA;QAOI,EAAJ,IAAS,EAAT,SAAA,EAAA,IAAA,EAAA,CAAA,CAAA,QAAA,EAAA,sBAAA;;oBACA,QAAA,EAAA,08CAAA;;oBA7BA,MAAA,EAAA,CAAA,eAAA,CAAA;oBACE,IAAF,EAAA;wBACA,OAAA,EAAA,sBAAA;wBACA,kBAAA,EAAA,UAAA;wBACA,MAAA,EAAA,SAAA;qBACA;oBACE,UAAF,EAAA,CAAA,oBAAA,CAAA,sBAAA,CAAA;oBACE,SAAF,EAAA;wBACI,EAAJ,OAAa,EAAb,UAAA,EAAA,WAAA,EAAA,kBAAA,EAAA;wBACI,EAAJ,OAAA,EAAA,UAAA,EAAA,WAAA,EAAA,kBAAA,EAAA;qBACA;oBACA,aAAA,EAAA,iBAAA,CAAA,IAAA;oBACE,eAAF,EAAA,uBAAA,CAAA,MAAA;iBACA,EAAA,EAAA;KACA,CAAA;;IAEA,kBAAA,CAAA,cAAA,GAAA,YAAA,EAAA,OAAA;QACA,EAAA,IAAA,EAAA,cAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAmC,QAAnC,EAAA,CAAA,EAAA;QACA,EAAA,IAAA,EAAA,iBAAA,EAAiB;QACjB,EAAA,IAAA,EAAA,UAAA,EAAA;;;;CArKA,CAAA,UAAA,CAAA,CAAA;;;;;;;;;ADIA,AAAA,IAAA,cAAA,kBAAA,UAAA,MAAA,EAAA;IAOoCA,SAApC,CAAA,cAAA,EAAA,MAAA,CAAA,CAAkD;IAPlD,SAAA,cAAA,GAAA;;KAQC;;QARD,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,wBAAwB;oBAClC,IAAI,EAAE;wBACJ,QAAQ,EAAE,MAAM;qBACjB;oBACD,MAAM,EAAE,CAAC,MAAM,CAAC;iBACjB,EAAD,EAAA;;IAEA,OAAA,cAAC,CAAD;CAAC,CADmC,cAAc,CAClD,CAAA,CAAC;AADD;;;AAIA,AAAA,IAAA,kBAAA,kBAAA,UAAA,MAAA,EAAA;IAOwCA,SAAxC,CAAA,kBAAA,EAAA,MAAA,CAAA,CAA0D;IAP1D,SAAA,kBAAA,GAAA;;KAQC;;QARD,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,4BAA4B;oBACtC,IAAI,EAAE;wBACJ,QAAQ,EAAE,MAAM;qBACjB;oBACD,MAAM,EAAE,CAAC,MAAM,CAAC;iBACjB,EAAD,EAAA;;IAEA,OAAA,kBAAC,CAAD;CAAC,CADuC,kBAAkB,CAC1D,CAAA;;;;;;ADRA,IAAA,gBAAA,kBAAA,YAAA;IAAA,SAAA,gBAAA,GAAA;KAmCgC;;QAnChC,EAAA,IAAA,EAAC,QAAQ,EAAT,IAAA,EAAA,CAAU;oBACR,OAAO,EAAE;wBACP,eAAe;wBACf,YAAY;wBACZ,YAAY;wBACZ,eAAe;wBACf,gBAAgB;wBAChB,aAAa;wBACb,eAAe;qBAChB;oBACD,OAAO,EAAE;wBACP,eAAe;wBACf,oBAAoB;wBACpB,kBAAkB;wBAClB,OAAO;wBACP,YAAY;wBACZ,UAAU;wBACV,cAAc;wBACd,kBAAkB;wBAClB,aAAa;wBACb,cAAc;qBACf;oBACD,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,kBAAkB;wBAClB,OAAO;wBACP,YAAY;wBACZ,UAAU;wBACV,cAAc;wBACd,kBAAkB;wBAClB,aAAa;wBACb,cAAc;qBACf;oBACD,SAAS,EAAE,CAAC,yBAAyB,EAAE,iBAAiB,CAAC;iBAC1D,EAAD,EAAA;;IAC+B,OAA/B,gBAAgC,CAAhC;CAAgC,EAAhC,CAAA;;;;;;;;;;;;;;"}