@aws-amplify/ui-angular 5.0.20 → 5.0.21
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.
- package/esm2020/version.mjs +2 -2
- package/fesm2015/aws-amplify-ui-angular.mjs +1 -1
- package/fesm2015/aws-amplify-ui-angular.mjs.map +1 -1
- package/fesm2020/aws-amplify-ui-angular.mjs +1 -1
- package/fesm2020/aws-amplify-ui-angular.mjs.map +1 -1
- package/lib/primitives/password-field/password-field.component.d.ts +19 -0
- package/package.json +2 -2
- package/version.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-amplify-ui-angular.mjs","sources":["../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.directive.ts","../../../projects/ui-angular/src/lib/services/custom-components.service.ts","../../../projects/ui-angular/src/version.ts","../../../projects/ui-angular/src/lib/services/authenticator.service.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.html","../../../projects/ui-angular/src/lib/primitives/button/button.component.ts","../../../projects/ui-angular/src/lib/primitives/button/button.component.html","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.ts","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.html","../../../projects/ui-angular/src/lib/primitives/select/select.component.ts","../../../projects/ui-angular/src/lib/primitives/select/select.component.html","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.ts","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.html","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.ts","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/base-form-fields/base-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/base-form-fields/base-form-fields.component.html","../../../projects/ui-angular/src/lib/primitives/error/error.component.ts","../../../projects/ui-angular/src/lib/primitives/error/error.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/forgot-password/forgot-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/forgot-password/forgot-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.html","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.ts","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.html","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.ts","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.html","../../../projects/ui-angular/src/lib/common/helpers.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.html","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.ts","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.html","../../../projects/ui-angular/src/lib/components/authenticator/authenticator.module.ts","../../../projects/ui-angular/src/index.ts","../../../projects/ui-angular/src/aws-amplify-ui-angular.ts"],"sourcesContent":["import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[amplifySlot]',\n})\nexport class AmplifySlotDirective {\n public name: string;\n\n constructor(public template: TemplateRef<unknown>) {}\n\n @Input() set amplifySlot(component: string) {\n this.name = component;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CustomComponents } from '../common';\n\n/**\n * Stores and provides custom components that users provide with `amplify-slot`.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class CustomComponentsService {\n private _customComponents: CustomComponents = {};\n\n public get customComponents(): CustomComponents {\n return this._customComponents;\n }\n\n public set customComponents(customComponents: CustomComponents) {\n this._customComponents = { ...this._customComponents, ...customComponents };\n }\n}\n","export const VERSION = '5.0.20';\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { Event, interpret, Subscription } from 'xstate';\n\nimport { AuthUser, getCurrentUser } from 'aws-amplify/auth';\nimport { ConsoleLogger as Logger } from 'aws-amplify/utils';\nimport {\n AuthContext,\n AuthenticatorServiceFacade,\n AuthEvent,\n AuthInterpreter,\n AuthMachineState,\n AuthStatus,\n createAuthenticatorMachine,\n defaultAuthHubHandler,\n getServiceFacade,\n listenToAuthHub,\n} from '@aws-amplify/ui';\nimport { translate } from '@aws-amplify/ui';\n\nimport { AuthSubscriptionCallback } from '../common/types';\n\nconst logger = new Logger('state-machine');\n\n/**\n * AuthenticatorService provides access to the authenticator state and context.\n */\n@Injectable({\n providedIn: 'root', // ensure we have a singleton service\n})\nexport class AuthenticatorService implements OnDestroy {\n private _authState: AuthMachineState;\n private _authStatus: AuthStatus = 'configuring';\n private _authService: AuthInterpreter;\n private _machineSubscription: Subscription;\n private _facade: ReturnType<typeof getServiceFacade>;\n private _hubSubject: Subject<void>;\n private _unsubscribeHub: () => void;\n\n constructor() {\n const machine = createAuthenticatorMachine();\n this._authService = interpret(machine).start();\n\n this.getInitialAuthStatus();\n this.setupMachineSubscription();\n this.setupHubListener();\n }\n\n /**\n * Context facades\n */\n\n public get error(): AuthenticatorServiceFacade['error'] {\n return translate(this._facade?.error);\n }\n\n public get hasValidationErrors(): AuthenticatorServiceFacade['hasValidationErrors'] {\n return this._facade?.hasValidationErrors;\n }\n\n public get isPending(): AuthenticatorServiceFacade['isPending'] {\n return this._facade?.isPending;\n }\n\n public get route(): AuthenticatorServiceFacade['route'] {\n return this._facade?.route;\n }\n\n public get authStatus(): AuthenticatorServiceFacade['authStatus'] {\n return this._authStatus;\n }\n\n public get user(): AuthUser {\n return this._facade?.user;\n }\n\n public get username(): string {\n return this._facade?.username;\n }\n\n public get validationErrors(): AuthenticatorServiceFacade['validationErrors'] {\n return this._facade?.validationErrors;\n }\n\n public get codeDeliveryDetails(): AuthenticatorServiceFacade['codeDeliveryDetails'] {\n return this._facade?.codeDeliveryDetails;\n }\n\n public get totpSecretCode(): AuthenticatorServiceFacade['totpSecretCode'] {\n return this._facade?.totpSecretCode;\n }\n\n /**\n * Service facades\n */\n\n public get initializeMachine(): AuthenticatorServiceFacade['initializeMachine'] {\n return this._facade.initializeMachine;\n }\n\n public get updateForm(): AuthenticatorServiceFacade['updateForm'] {\n return this._facade.updateForm;\n }\n\n public get updateBlur(): AuthenticatorServiceFacade['updateBlur'] {\n return this._facade.updateBlur;\n }\n\n public get resendCode(): AuthenticatorServiceFacade['resendCode'] {\n return this._facade.resendCode;\n }\n\n public get signOut(): AuthenticatorServiceFacade['signOut'] {\n return this._facade.signOut;\n }\n\n public get submitForm(): AuthenticatorServiceFacade['submitForm'] {\n return this._facade.submitForm;\n }\n\n /**\n * Transition facades\n */\n\n public get toFederatedSignIn(): AuthenticatorServiceFacade['toFederatedSignIn'] {\n return this._facade.toFederatedSignIn;\n }\n\n public get toForgotPassword(): AuthenticatorServiceFacade['toForgotPassword'] {\n return this._facade.toForgotPassword;\n }\n\n public get toSignIn(): AuthenticatorServiceFacade['toSignIn'] {\n return this._facade.toSignIn;\n }\n\n public get toSignUp(): AuthenticatorServiceFacade['toSignUp'] {\n return this._facade.toSignUp;\n }\n\n public get skipVerification(): AuthenticatorServiceFacade['skipVerification'] {\n return this._facade.skipVerification;\n }\n\n /**\n * Internal utility functions\n */\n\n /** @deprecated For internal use only */\n public get authState(): AuthMachineState {\n return this._authState;\n }\n\n /** @deprecated For internal use only */\n public get authService(): AuthInterpreter {\n return this._authService;\n }\n\n /** @deprecated For internal use only */\n public get context(): AuthContext {\n return this._authState.context;\n }\n\n /** @deprecated For internal use only */\n public get slotContext(): AuthenticatorServiceFacade & {\n $implicit: AuthenticatorServiceFacade;\n } {\n return {\n ...this._facade,\n $implicit: this._facade,\n };\n }\n\n /** @deprecated For internal use only */\n public get hubSubject(): Subject<void> {\n return this._hubSubject;\n }\n\n public subscribe(callback: AuthSubscriptionCallback): Subscription {\n if (!this._authService) {\n logger.error(\n 'Subscription attempted before machine was created. This is likely a bug on the library, please consider filing a bug.'\n );\n }\n\n const subscription = this._authService.subscribe(() => {\n callback(this._facade);\n });\n return subscription;\n }\n\n ngOnDestroy(): void {\n if (this._machineSubscription) this._machineSubscription.unsubscribe();\n if (this._unsubscribeHub) this._unsubscribeHub();\n }\n\n /** @deprecated For internal use only */\n public send(event: Event<AuthEvent>): void {\n this.authService.send(event);\n }\n\n private async getInitialAuthStatus(): Promise<void> {\n try {\n await getCurrentUser();\n this._authStatus = 'authenticated';\n } catch (e) {\n this._authStatus = 'unauthenticated';\n }\n }\n\n private setupHubListener(): void {\n this._hubSubject = new Subject<void>();\n\n const onSignIn = () => {\n this._authStatus = 'authenticated';\n };\n const onSignOut = () => {\n this._authStatus = 'unauthenticated';\n };\n\n this._unsubscribeHub = listenToAuthHub(\n this._authService,\n (data, service) => {\n defaultAuthHubHandler(data, service, { onSignIn, onSignOut });\n this._hubSubject.next();\n }\n );\n }\n\n private setupMachineSubscription(): void {\n this._machineSubscription = this._authService.subscribe(\n (state: unknown) => {\n const newState = state as AuthMachineState;\n this._authState = newState;\n this._facade = getServiceFacade({\n send: this._authService.send,\n state: newState,\n });\n }\n );\n }\n}\n","import {\n AfterContentInit,\n Component,\n HostBinding,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CustomComponentsService } from '../../services/custom-components.service';\n\n@Component({\n selector: 'amplify-slot',\n templateUrl: './amplify-slot.component.html',\n})\nexport class AmplifySlotComponent implements AfterContentInit {\n @Input() name: string;\n @Input() context: Record<PropertyKey, unknown>;\n\n @HostBinding('style.display') display = 'contents';\n\n public overridingComponent: TemplateRef<unknown>;\n public isOverriden = false;\n\n constructor(private propService: CustomComponentsService) {}\n\n ngAfterContentInit(): void {\n const { customComponents } = this.propService;\n const overridingComponent = customComponents[this.name];\n\n if (overridingComponent) {\n this.overridingComponent = overridingComponent;\n this.isOverriden = true;\n }\n }\n}\n","<!-- \n if slot isn't overwritten, we display the the default coponent, which is the \n children passed onto this component.\n-->\n<ng-content *ngIf=\"!isOverriden\"></ng-content>\n\n<!-- If slot is overwritten, we render that instead. -->\n<ng-container\n *ngIf=\"isOverriden\"\n [ngTemplateOutlet]=\"overridingComponent\"\n [ngTemplateOutletContext]=\"context\"\n></ng-container>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'button[amplify-button]',\n templateUrl: './button.component.html',\n})\nexport class ButtonComponent implements OnInit {\n @Input() type: 'submit' | 'button' = 'button';\n @Input() fullWidth: boolean | string = false;\n @Input() isDisabled: boolean | string = false;\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\n @Input() variation: 'primary' | 'default' | 'link' = 'default';\n @Input() fontWeight: 'normal' | 'bold' | 'lighter' = 'normal';\n\n @HostBinding('type') typeAttr: string;\n @HostBinding('attr.data-fullwidth') fullWidthAttr: boolean | string;\n @HostBinding('attr.data-size') sizeAttr: string;\n @HostBinding('attr.data-variation') variationAttr: string;\n @HostBinding('style.font-weight') fontWeightAttr: string;\n\n @HostBinding('attr.disabled') get getDisabled(): string {\n return this.isDisabled ? '' : null;\n }\n\n @HostBinding('class') get classNames(): string {\n let className = 'amplify-button';\n if (this.variation) {\n className += ` amplify-button--${this.variation}`;\n }\n if (this.size) {\n className += ` amplify-button--${this.size}`;\n }\n if (this.fullWidth) {\n className += ` amplify-button--fullwidth`;\n }\n if (this.isDisabled) {\n className += ` amplify-button--disabled amplify-button--loading`;\n }\n\n return className;\n }\n\n ngOnInit(): void {\n this.typeAttr = this.type;\n this.fullWidthAttr = this.fullWidth;\n this.sizeAttr = this.size;\n this.variationAttr = this.variation;\n this.fontWeightAttr = this.fontWeight;\n }\n}\n","<ng-content></ng-content>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { translate, ComponentClassName } from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\nimport { classNames } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-password-field',\n templateUrl: './password-field.component.html',\n})\nexport class PasswordFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() labelHidden = false;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n @Output() setBlur = new EventEmitter<Event>();\n\n public type: 'text' | 'password' = 'password';\n\n public showPassword = false;\n public showPasswordButtonlabel = translate('Show password');\n\n // re-export utilities so that template html can use them\n public classnames = classNames;\n public ComponentClassName = ComponentClassName;\n\n togglePasswordText(): void {\n this.showPassword = !this.showPassword;\n this.showPasswordButtonlabel = this.showPassword\n ? translate('Hide password')\n : translate('Show password');\n this.type = this.showPassword ? 'text' : 'password';\n }\n}\n","<div\n [class]=\"\n classnames(\n ComponentClassName.Flex,\n ComponentClassName.Field,\n ComponentClassName.TextField,\n ComponentClassName.PasswordField\n )\n \"\n>\n <label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n >\n {{ label }}\n </label>\n <div\n [class]=\"classnames(ComponentClassName.Flex, ComponentClassName.FieldGroup)\"\n >\n <div [class]=\"ComponentClassName.FieldGroupFieldWrapper\">\n <input\n [class]=\"\n classnames(\n ComponentClassName.Input,\n ComponentClassName.FieldGroupControl,\n ComponentClassName.FieldShowPassword\n )\n \"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n autocapitalize=\"off\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n (blur)=\"setBlur.emit($event)\"\n />\n </div>\n <div [class]=\"ComponentClassName.FieldGroupOuterEnd\">\n <button\n amplify-button\n role=\"switch\"\n (click)=\"togglePasswordText()\"\n [attr.aria-checked]=\"type !== 'password'\"\n [attr.aria-label]=\"showPasswordButtonlabel\"\n [class]=\"\n classnames(\n ComponentClassName.Input,\n ComponentClassName.FieldGroupControl\n )\n \"\n >\n <svg\n *ngIf=\"!showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n ></path>\n </svg>\n <svg\n *ngIf=\"showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z\"\n fill=\"none\"\n ></path>\n <path\n d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-form-select',\n templateUrl: './select.component.html',\n})\nexport class SelectComponent {\n @Input() items: string[];\n @Input() name: string;\n @Input() label: string;\n @Input() id: string;\n @Input() defaultValue: string;\n}\n","<label class=\"amplify-label amplify-visually-hidden\" [for]=\"id\">{{\n label\n}}</label>\n<div class=\"amplify-select__wrapper\">\n <select\n class=\"amplify-select amplify-field-group__control\"\n autocomplete=\"tel-country-code\"\n [id]=\"id\"\n [name]=\"name\"\n >\n <option\n *ngFor=\"let item of items\"\n [value]=\"item\"\n [selected]=\"item === defaultValue\"\n >\n {{ item }}\n </option>\n </select>\n <div\n class=\"amplify-flex amplify-select__icon\"\n style=\"align-items: center; justify-content: center\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n viewBox=\"0 0 24 24\"\n data-size=\"large\"\n fill=\"currentColor\"\n >\n <path d=\"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z\"></path>\n </svg>\n </div>\n</div>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { countryDialCodes } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-phone-number-field',\n templateUrl: './phone-number-field.component.html',\n})\nexport class PhoneNumberFieldComponent implements OnInit {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() defaultCountryCode: string;\n @Input() selectFieldId = `amplify-field-${nanoid(12)}`;\n @Input() textFieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n @Input() dialCodeList: Array<string>;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n\n @HostBinding('style.display') display = 'contents';\n\n public countryDialCodesValues: Array<string>;\n\n ngOnInit(): void {\n this.countryDialCodesValues = this.dialCodeList ?? countryDialCodes;\n }\n}\n","<div\n class=\"amplify-flex amplify-field amplify-textfield amplify-phonenumberfield\"\n>\n <label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"textFieldId\"\n >\n {{ label }}\n </label>\n <div class=\"amplify-flex amplify-field-group amplify-field-group--horizontal\">\n <div class=\"amplify-field-group__outer-start\">\n <div\n class=\"amplify-flex amplify-field amplify-selectfield amplify-dialcodeselect\"\n style=\"flex-direction: column\"\n >\n <amplify-form-select\n name=\"country_code\"\n label=\"Country Code\"\n [id]=\"selectFieldId\"\n [items]=\"countryDialCodesValues\"\n [defaultValue]=\"defaultCountryCode\"\n ></amplify-form-select>\n </div>\n </div>\n\n <div\n class=\"amplify-field-group__field-wrapper amplify-field-group__field-wrapper--horizontal\"\n >\n <input\n class=\"amplify-input amplify-field-group__control\"\n [id]=\"textFieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n />\n </div>\n </div>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-text-field',\n templateUrl: './text-field.component.html',\n})\nexport class TextFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n\n @HostBinding('style.display') display = 'contents';\n}\n","<label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n>\n {{ label }}\n</label>\n<input\n class=\"amplify-input\"\n autocapitalize=\"off\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n/>\n","import { Component, Input } from '@angular/core';\nimport {\n translate,\n countryDialCodes,\n FormFieldOptions,\n getErrors,\n} from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-form-field',\n templateUrl: './form-field.component.html',\n})\nexport class FormFieldComponent {\n @Input() name: string; // name of the input field\n @Input() formField: FormFieldOptions; // form field options for this field\n\n public defaultCountryCodeValue: string;\n public countryDialCodesValue = countryDialCodes;\n public errorId = nanoid(12);\n\n constructor(private authenticator: AuthenticatorService) {}\n\n get ariaDescribedBy(): string | undefined {\n return this.hasError() ? this.errorId : undefined;\n }\n\n get errors(): string[] {\n const { validationErrors } = this.authenticator;\n return getErrors(validationErrors[this.name]);\n }\n\n public onBlur($event: Event): void {\n const { name } = <HTMLInputElement>$event.target;\n\n this.authenticator.updateBlur({ name });\n }\n\n isPasswordField(): boolean {\n return this.formField.type === 'password';\n }\n\n isPhoneField(): boolean {\n return this.formField.type === 'tel';\n }\n\n hasError(): boolean {\n return this.errors?.length > 0;\n }\n\n translate(phrase: string): string {\n return translate<string>(phrase);\n }\n}\n","<div class=\"amplify-flex amplify-field amplify-authenticator__column\">\n <!-- Country code field -->\n <amplify-phone-number-field\n *ngIf=\"isPhoneField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [defaultCountryCode]=\"formField.dialCode\"\n [dialCodeList]=\"formField.dialCodeList\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n type=\"tel\"\n ></amplify-phone-number-field>\n\n <amplify-password-field\n *ngIf=\"isPasswordField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n (setBlur)=\"onBlur($event)\"\n ></amplify-password-field>\n\n <amplify-text-field\n *ngIf=\"!isPasswordField() && !isPhoneField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [type]=\"formField.type\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n ></amplify-text-field>\n\n <div data-amplify-sign-up-errors *ngIf=\"hasError()\" [id]=\"errorId\">\n <div\n class=\"amplify-text amplify-text--error\"\n data-variation=\"error\"\n *ngFor=\"let error of errors\"\n >\n {{ translate(error) }}\n </div>\n </div>\n</div>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport {\n FormFieldComponents,\n FormFieldsArray,\n getSortedFormFields,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n/**\n * Sorts the given formFields, then renders them in order.\n */\n@Component({\n selector: 'amplify-base-form-fields',\n templateUrl: './base-form-fields.component.html',\n})\nexport class BaseFormFieldsComponent implements OnInit {\n @Input() route: FormFieldComponents; // formFields to sort and render\n @HostBinding('style.display') display = 'contents';\n public formFields: FormFieldsArray = [];\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const state = this.authenticator.authState;\n this.formFields = getSortedFormFields(this.route, state);\n }\n}\n","<ng-container *ngFor=\"let formField of formFields\">\n <amplify-form-field\n [name]=\"formField[0]\"\n [formField]=\"formField[1]\"\n ></amplify-form-field>\n</ng-container>\n","import { Component } from '@angular/core';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-error',\n templateUrl: './error.component.html',\n})\nexport class ErrorComponent {\n public isVisible = true;\n public dismissAriaLabel = translate('Dismiss alert');\n\n public close(): void {\n this.isVisible = false;\n }\n}\n","<div\n class=\"amplify-flex amplify-alert amplify-alert--error\"\n data-variation=\"error\"\n style=\"align-items: center; justify-content: space-between\"\n *ngIf=\"isVisible\"\n role=\"alert\"\n>\n <div class=\"amplify-flex\" style=\"align-items: center\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n [attr.aria-hidden]=\"true\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n >\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z\"\n ></path>\n </svg>\n <div><ng-content></ng-content></div>\n </div>\n <button\n amplify-button\n [attr.aria-label]=\"dismissAriaLabel\"\n variation=\"link\"\n [fullWidth]=\"false\"\n (click)=\"close()\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n [attr.aria-hidden]=\"true\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n >\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n ></path>\n </svg>\n </button>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst {\n getBackToSignInText,\n getResendCodeText,\n getSubmitText,\n getResetYourPasswordText,\n} = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-confirm-reset-password',\n templateUrl: './amplify-confirm-reset-password.component.html',\n})\nexport class ConfirmResetPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n @Input() public headerText = getResetYourPasswordText();\n\n public sortedFormFields: FormFieldsArray;\n\n // translated strings\n public backToSignInText = getBackToSignInText();\n public resendCodeText = getResendCodeText();\n public submitText = getSubmitText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n type=\"button\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-reset-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport {\n FormFieldsArray,\n getActorContext,\n getFormDataFromEvent,\n SignInContext,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst { getConfirmText, getBackToSignInText, getChallengeText } =\n authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-confirm-sign-in',\n templateUrl: './confirm-sign-in.component.html',\n})\nexport class ConfirmSignInComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n\n // translated texts\n public headerText: string;\n public confirmText = getConfirmText();\n public backToSignInText = getBackToSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n ngOnInit(): void {\n this.setHeaderText();\n }\n\n setHeaderText(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { challengeName } = actorContext;\n this.headerText = getChallengeText(challengeName);\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-sign-in-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ headerText }}</h3>\n </amplify-slot>\n <amplify-base-form-fields route=\"confirmSignIn\"></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot\n name=\"confirm-sign-in-footer\"\n [context]=\"context\"\n ></amplify-slot>\n</form>\n","import { Component, HostBinding } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst {\n getResendCodeText,\n getConfirmText,\n getDeliveryMethodText,\n getDeliveryMessageText,\n} = authenticatorTextUtil;\n@Component({\n selector: 'amplify-confirm-sign-up',\n templateUrl: './confirm-sign-up.component.html',\n})\nexport class ConfirmSignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignup') dataAttr = '';\n\n // translated texts\n public resendCodeText = getResendCodeText();\n public confirmText = getConfirmText();\n\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n public get confirmSignUpHeading(): string {\n const { codeDeliveryDetails } = this.authenticator;\n return getDeliveryMethodText(codeDeliveryDetails);\n }\n\n public get subtitleText(): string {\n const { codeDeliveryDetails } = this.authenticator;\n return getDeliveryMessageText(codeDeliveryDetails);\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<ng-container>\n <form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"context.isPending\"\n >\n <amplify-slot name=\"confirm-sign-up-header\" [context]=\"context\">\n <h3\n class=\"amplify-heading amplify-authenticator__heading\"\n style=\"font-size: 1.5rem\"\n >\n {{ confirmSignUpHeading }}\n </h3>\n </amplify-slot>\n <span class=\"amplify-authenticator__subtitle\">\n {{ subtitleText }}\n </span>\n <amplify-base-form-fields\n route=\"confirmSignUp\"\n ></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n fontWeight=\"normal\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n </fieldset>\n\n <amplify-error *ngIf=\"context.error\">\n {{ authenticator.error }}\n </amplify-error>\n <amplify-slot\n name=\"confirm-sign-up-footer\"\n [context]=\"context\"\n ></amplify-slot>\n </form>\n</ng-container>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst { getAccountRecoveryInfoText, getSkipText, getSubmitText } =\n authenticatorTextUtil;\n@Component({\n selector: 'amplify-confirm-verify-user',\n templateUrl: './amplify-confirm-verify-user.component.html',\n})\nexport class ConfirmVerifyUserComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmverifyuser')\n dataAttr = '';\n @Input() public headerText = getAccountRecoveryInfoText();\n\n // translated texts\n public skipText = getSkipText();\n public submitText = getSubmitText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (input)=\"onInput($event)\" (submit)=\"onSubmit($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-verify-user-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <amplify-base-form-fields\n route=\"confirmVerifyUser\"\n ></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.skipVerification()\"\n >\n {{ skipText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-verify-user-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-force-new-password-form-fields',\n templateUrl: './force-new-password-form-fields.component.html',\n})\nexport class ForceNewPasswordFormFieldsComponent {}\n","<div class=\"amplify-flex amplify-authenticator__column\" data-amplify-fieldset>\n <amplify-base-form-fields route=\"forceNewPassword\"></amplify-base-form-fields>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getChangePasswordText, getBackToSignInText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-force-new-password',\n templateUrl: './force-new-password.component.html',\n})\nexport class ForceNewPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forcenewpassword')\n dataAttr = '';\n @Input() public headerText = getChangePasswordText();\n\n // translated texts\n public changePasswordText = getChangePasswordText();\n public backToSignInText = getBackToSignInText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"force-new-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <amplify-slot name=\"force-new-form-fields\" [context]=\"context\">\n <amplify-force-new-password-form-fields></amplify-force-new-password-form-fields>\n </amplify-slot>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{ changePasswordText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"force-new-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst { getResetYourPasswordText, getSendCodeText, getBackToSignInText } =\n authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-forgot-password',\n templateUrl: './forgot-password.component.html',\n})\nexport class ForgotPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forgotpassword') dataAttr = '';\n @Input() public headerText = getResetYourPasswordText();\n\n // translated texts\n public sendCodeText = getSendCodeText();\n public backToSignInText = getBackToSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot\n class=\"amplify-flex\"\n name=\"forgot-password-header\"\n [context]=\"context\"\n >\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields route=\"forgotPassword\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ sendCodeText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n\n <amplify-slot name=\"forgot-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport QRCode from 'qrcode';\nimport { ConsoleLogger as Logger } from 'aws-amplify/utils';\nimport {\n FormFieldsArray,\n getActorContext,\n getFormDataFromEvent,\n getTotpCodeURL,\n SignInContext,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst logger = new Logger('SetupTotp');\n\nconst {\n getSetupTotpText,\n getCopyText,\n getBackToSignInText,\n getConfirmText,\n getCopiedText,\n} = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-setup-totp',\n templateUrl: './setup-totp.component.html',\n})\nexport class SetupTotpComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-setup-totp') dataAttr = '';\n public headerText = getSetupTotpText();\n public qrCodeSource = '';\n public totpSecretCode = '';\n public copyTextLabel = getCopyText();\n\n // translated texts\n public backToSignInText = getBackToSignInText();\n public confirmText = getConfirmText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n async ngOnInit(): Promise<void> {\n await this.generateQRCode();\n }\n\n async generateQRCode(): Promise<void> {\n const { authState: state, totpSecretCode, username } = this.authenticator;\n const { formFields } = getActorContext(state) as SignInContext;\n const { totpIssuer = 'AWSCognito', totpUsername = username } =\n formFields?.setupTotp?.QR ?? {};\n\n this.totpSecretCode = totpSecretCode;\n\n try {\n const totpCode = getTotpCodeURL(\n totpIssuer,\n totpUsername,\n this.totpSecretCode\n );\n\n logger.info('totp code was generated:', totpCode);\n this.qrCodeSource = await QRCode.toDataURL(totpCode);\n } catch (err) {\n logger.error(err);\n }\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n\n copyText(): void {\n navigator.clipboard.writeText(this.totpSecretCode);\n this.copyTextLabel = getCopiedText();\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ totpSecretCode }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTotp\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n","import { Component, Input } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-federated-sign-in-button',\n templateUrl: './federated-sign-in-button.component.html',\n})\nexport class FederatedSignInButtonComponent {\n @Input() provider: FederatedIdentityProviders;\n @Input() text: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n onClick = (): void => {\n this.authenticator.send({\n type: 'FEDERATED_SIGN_IN',\n data: { provider: this.provider },\n });\n };\n}\n","<button\n amplify-button\n class=\"amplify-field-group__control federated-sign-in-button\"\n fullWidth=\"true\"\n fontWeight=\"normal\"\n (click)=\"onClick()\"\n>\n <div class=\"amplify-flex federated-sign-in-button-row\">\n <ng-content></ng-content>\n </div>\n</button>\n","import { Component, OnInit } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getSignInWithFederationText, getOrText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-federated-sign-in',\n templateUrl: './federated-sign-in.component.html',\n})\nexport class FederatedSignInComponent implements OnInit {\n public FederatedProviders = FederatedIdentityProviders;\n public includeAmazon = false;\n public includeApple = false;\n public includeFacebook = false;\n public includeGoogle = false;\n public shouldShowFederatedSignIn = false;\n\n // translated texts\n public orText: string;\n public signInAmazonText: string;\n public signInAppleText: string;\n public signInFacebookText: string;\n public signInGoogleText: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const socialProviders = this.authenticator.context?.config?.socialProviders;\n\n this.setFederatedTexts();\n this.includeAmazon = socialProviders?.includes('amazon');\n this.includeApple = socialProviders?.includes('apple');\n this.includeGoogle = socialProviders?.includes('google');\n this.includeFacebook = socialProviders?.includes('facebook');\n\n this.shouldShowFederatedSignIn =\n this.includeAmazon ||\n this.includeApple ||\n this.includeFacebook ||\n this.includeGoogle;\n }\n\n private setFederatedTexts() {\n const { route } = this.authenticator;\n\n this.orText = getOrText();\n this.signInAmazonText = getSignInWithFederationText(route, 'amazon');\n this.signInAppleText = getSignInWithFederationText(route, 'apple');\n this.signInFacebookText = getSignInWithFederationText(route, 'facebook');\n this.signInGoogleText = getSignInWithFederationText(route, 'google');\n }\n}\n","<div\n class=\"amplify-flex federated-sign-in-container\"\n *ngIf=\"shouldShowFederatedSignIn\"\n data-orientation=\"horizontal\"\n data-size=\"small\"\n>\n <amplify-federated-sign-in-button\n *ngIf=\"includeAmazon\"\n [text]=\"signInAmazonText\"\n [provider]=\"FederatedProviders.Amazon\"\n >\n <svg\n aria-label=\"Amazon icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 248 268\"\n >\n <path\n d=\"M139.056521,147.024612 C133.548808,156.744524 124.782731,162.726926 115.087401,162.726926 C101.790721,162.726926 93.9937779,152.612964 93.9937779,137.68681 C93.9937779,108.224571 120.447551,102.879017 145.533369,102.879017 L145.533369,110.365976 C145.533369,123.831358 145.876354,135.063787 139.056521,147.024612 M207.206992,162.579655 C209.400505,165.692256 209.887066,169.437725 207.063416,171.770186 C199.996315,177.653081 187.429476,188.590967 180.513926,194.716661 L180.46208,194.621133 C178.176838,196.663031 174.862638,196.810303 172.27828,195.445057 C160.780281,185.9162 158.686473,181.494078 152.405048,172.403055 C133.405233,191.751331 119.909143,197.534719 95.309886,197.534719 C66.1281801,197.534719 43.4791563,179.599451 43.4791563,143.669212 C43.4791563,115.616003 58.6782107,96.5105248 80.4019706,87.1727225 C99.2063636,78.9096034 125.464714,77.4528107 145.533369,75.1641337 L145.533369,70.694248 C145.533369,62.4749122 146.167493,52.7510201 141.297893,45.6541312 C137.110277,39.2856386 129.018206,36.6586354 121.859376,36.6586354 C108.658413,36.6586354 96.9171331,43.4171982 94.0416364,57.4199213 C93.4593582,60.532522 91.1701278,63.5933787 88.003492,63.7406501 L54.4387473,60.1424518 C51.6150972,59.5095829 48.4484614,57.2248862 49.2740201,52.8982915 C56.9712583,12.2553679 93.7983558,0 126.732964,0 C143.587124,0 165.606011,4.47386604 178.902691,17.2148315 C195.760839,32.917146 194.149604,53.8694866 194.149604,76.6726704 L194.149604,130.542157 C194.149604,146.734049 200.87372,153.830938 207.206992,162.579655 Z M233.826346,208.038962 C230.467669,203.683255 211.550709,205.9821 203.056405,206.998432 C200.470662,207.321077 200.076227,205.042397 202.406981,203.404973 C217.475208,192.664928 242.201125,195.766353 245.081698,199.363845 C247.966255,202.981502 244.336653,228.071183 230.172839,240.049379 C228.001452,241.888455 225.929671,240.904388 226.89783,238.468418 C230.077218,230.430525 237.204944,212.418868 233.826346,208.038962 Z M126.768855,264 C74.0234043,264 42.0764048,241.955028 17.7852554,217.541992 C12.9733903,212.705982 6.71799208,206.295994 3.31151296,200.690918 C1.90227474,198.372135 5.59096074,195.021875 8.0442063,196.84375 C38.2390146,219.267578 82.1011654,239.538304 125.529506,239.538304 C154.819967,239.538304 191.046475,227.469543 220.66851,214.867659 C225.146771,212.966167 225.146771,219.180222 224.511585,221.060516 C224.183264,222.03242 209.514625,236.221149 189.247207,247.047411 C170.304273,257.166172 146.397132,264 126.768855,264 Z\"\n fill=\"#FF9900\"\n ></path>\n </svg>\n\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInAmazonText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeApple\"\n [provider]=\"FederatedProviders.Apple\"\n >\n <svg\n aria-label=\"Apple icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n fill=\"#000\"\n preserveAspectRatio=\"xMidYMid\"\n stroke=\"#000\"\n strokeWidth=\"0\"\n viewBox=\"0 0 1024 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M747.4 535.7c-.4-68.2 30.5-119.6 92.9-157.5-34.9-50-87.7-77.5-157.3-82.8-65.9-5.2-138 38.4-164.4 38.4-27.9 0-91.7-36.6-141.9-36.6C273.1 298.8 163 379.8 163 544.6c0 48.7 8.9 99 26.7 150.8 23.8 68.2 109.6 235.3 199.1 232.6 46.8-1.1 79.9-33.2 140.8-33.2 59.1 0 89.7 33.2 141.9 33.2 90.3-1.3 167.9-153.2 190.5-221.6-121.1-57.1-114.6-167.2-114.6-170.7zm-105.1-305c50.7-60.2 46.1-115 44.6-134.7-44.8 2.6-96.6 30.5-126.1 64.8-32.5 36.8-51.6 82.3-47.5 133.6 48.4 3.7 92.6-21.2 129-63.7z\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInAppleText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeFacebook\"\n [text]=\"signInFacebookText\"\n [provider]=\"FederatedProviders.Facebook\"\n >\n <svg\n aria-label=\"Facebook icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 279 538\"\n >\n <path\n d=\"M82.3409742,538 L82.3409742,292.936652 L0,292.936652 L0,196.990154 L82.2410458,196.990154 L82.2410458,126.4295 C82.2410458,44.575144 132.205229,0 205.252865,0 C240.227794,0 270.306232,2.59855099 279,3.79788222 L279,89.2502322 L228.536175,89.2502322 C188.964542,89.2502322 181.270057,108.139699 181.270057,135.824262 L181.270057,196.89021 L276.202006,196.89021 L263.810888,292.836708 L181.16913,292.836708 L181.16913,538 L82.3409742,538 Z\"\n fill=\"#1877F2\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInFacebookText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeGoogle\"\n [provider]=\"FederatedProviders.Google\"\n >\n <svg\n aria-label=\"Google icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 256 262\"\n xmlns=\"http://www.w3.org/2000/svg\"\n preserveAspectRatio=\"xMidYMid\"\n >\n <path\n d=\"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\"\n fill=\"#4285F4\"\n ></path>\n <path\n d=\"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\"\n fill=\"#34A853\"\n ></path>\n <path\n d=\"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\"\n fill=\"#FBBC05\"\n ></path>\n <path\n d=\"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\"\n fill=\"#EB4335\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInGoogleText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <hr\n class=\"amplify-divider amplify-divider--label amplify-divider--small\"\n aria-orientation=\"horizontal\"\n data-size=\"small\"\n [attr.data-label]=\"orText\"\n />\n</div>\n","import { Component, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n authenticatorTextUtil,\n getFormDataFromEvent,\n FormFieldsArray,\n} from '@aws-amplify/ui';\n\nconst { getForgotPasswordText, getSignInText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-sign-in',\n templateUrl: './sign-in.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class SignInComponent {\n @HostBinding('attr.data-amplify-authenticator-signin') dataAttr = '';\n\n public forgotPasswordText = getForgotPasswordText();\n public signInButtonText = getSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<amplify-slot name=\"sign-in-header\" [context]=\"context\"></amplify-slot>\n\n<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <amplify-federated-sign-in></amplify-federated-sign-in>\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <legend class=\"amplify-visually-hidden\">Sign in</legend>\n <amplify-base-form-fields route=\"signIn\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ signInButtonText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n</form>\n\n<amplify-slot name=\"sign-in-footer\" [context]=\"context\">\n <div data-amplify-footer>\n <button\n amplify-button\n fontWeight=\"normal\"\n size=\"small\"\n variation=\"link\"\n fullWidth=\"true\"\n (click)=\"authenticator.toForgotPassword()\"\n >\n {{ forgotPasswordText }}\n </button>\n </div>\n</amplify-slot>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-sign-up-form-fields',\n templateUrl: './sign-up-form-fields.component.html',\n})\nexport class SignUpFormFieldsComponent {}\n","<div class=\"amplify-flex amplify-authenticator__column\" data-amplify-fieldset>\n <amplify-base-form-fields route=\"signUp\"></amplify-base-form-fields>\n</div>\n","import { Component, HostBinding } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getCreateAccountText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-sign-up',\n templateUrl: './sign-up.component.html',\n})\nexport class SignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-signup') dataAttr = '';\n\n // translated texts\n public createAccountText = getCreateAccountText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n const { checked, name, type, value } = <HTMLInputElement>event.target;\n const isUncheckedCheckbox = type === 'checkbox' && !checked;\n\n this.authenticator.updateForm({\n name,\n value: isUncheckedCheckbox ? undefined : value,\n });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<amplify-slot name=\"sign-up-header\" [context]=\"context\"></amplify-slot>\n\n<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <amplify-federated-sign-in></amplify-federated-sign-in>\n <div class=\"amplify-flex amplify-authenticator__column\">\n <div class=\"amplify-flex amplify-authenticator__column\">\n <amplify-slot name=\"sign-up-form-fields\" [context]=\"context\">\n <amplify-sign-up-form-fields></amplify-sign-up-form-fields>\n </amplify-slot>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </div>\n\n <amplify-slot name=\"sign-up-button\" [context]=\"context\">\n <button\n [isDisabled]=\"\n authenticator.isPending || authenticator.hasValidationErrors\n \"\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n >\n {{ createAccountText }}\n </button>\n </amplify-slot>\n </div>\n</form>\n\n<amplify-slot name=\"sign-up-footer\" [context]=\"context\"> </amplify-slot>\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-tab-item',\n templateUrl: './tab-item.component.html',\n})\nexport class TabItemComponent {\n @Input() title: string;\n @Input() active = false;\n @Input() id: string;\n @Input() labelledById: string;\n @Input() tabIndex: number;\n @HostBinding('style.display') display = 'block'; // emulate div behavior\n}\n","<div\n role=\"tabpanel\"\n class=\"amplify-tabs__panel\"\n [class]=\"active ? 'amplify-tabs__panel--active' : ''\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"labelledById\"\n [attr.tabindex]=\"tabIndex\"\n>\n <ng-content *ngIf=\"active\"></ng-content>\n</div>\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { TabItemComponent } from '../tab-item/tab-item.component';\n\n@Component({\n selector: 'amplify-tabs',\n templateUrl: './tabs.component.html',\n})\nexport class TabsComponent implements AfterContentInit {\n @ContentChildren(TabItemComponent) tabs: QueryList<TabItemComponent>;\n @Output() tabChange = new EventEmitter();\n\n ngAfterContentInit(): void {\n // assign ids\n this.tabs.forEach((tab, index) => {\n tab.id = `tab-${nanoid(12)}-panel-${index}`;\n tab.labelledById = `tab-${nanoid(12)}-tab-${index}`;\n });\n\n // find active tab\n // TODO(enhancement): more declarative way for choosing the initial tab to render\n const activeTabs = this.tabs.filter((tab) => tab.active);\n\n // set active tab\n if (activeTabs.length !== 1) {\n this.selectTab(this.tabs.first);\n }\n }\n\n selectTab(tab: TabItemComponent): void {\n this.tabs.forEach((tab) => {\n tab.active = false;\n });\n tab.active = true;\n }\n\n handleTabClick(tab: TabItemComponent): void {\n if (tab.active) return; // don't do anything if clicks the current active tab\n this.tabChange.emit();\n this.selectTab(tab);\n }\n}\n","<div class=\"amplify-tabs\">\n <div\n class=\"amplify-tabs__list amplify-tabs__list--top amplify-tabs__list--equal\"\n role=\"tablist\"\n >\n <button\n *ngFor=\"let tab of tabs\"\n class=\"amplify-tabs__item\"\n role=\"tab\"\n [id]=\"tab.labelledById\"\n [tabindex]=\"tab.active ? '0' : '-1'\"\n [attr.aria-selected]=\"tab.active\"\n [attr.aria-controls]=\"tab.id\"\n [class]=\"tab.active ? 'amplify-tabs__item--active' : ''\"\n (click)=\"handleTabClick(tab)\"\n >\n {{ tab.title }}\n </button>\n </div>\n</div>\n\n<ng-content></ng-content>\n","import { defaultFormFieldOptions } from '@aws-amplify/ui';\nimport { AttributeInfoProvider } from './types';\n\nexport const getAttributeMap: AttributeInfoProvider = () =>\n defaultFormFieldOptions;\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n getActorState,\n getFormDataFromEvent,\n SignInState,\n translate,\n authenticatorTextUtil,\n UnverifiedUserAttributes,\n censorContactMethod,\n ContactMethod,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAttributeMap } from '../../../../common';\nimport { nanoid } from 'nanoid';\n\nconst { getSkipText, getVerifyText, getAccountRecoveryInfoText } =\n authenticatorTextUtil;\n@Component({\n selector: 'amplify-verify-user',\n templateUrl: './verify-user.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class VerifyUserComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-verifyuser') dataAttr = '';\n @Input() public headerText = getAccountRecoveryInfoText();\n\n public unverifiedUserAttributes = {};\n public labelId = nanoid(12);\n\n // translated texts\n public skipText = getSkipText();\n public verifyText = getVerifyText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n ngOnInit(): void {\n const actorState = getActorState(\n this.authenticator.authState\n ) as SignInState;\n this.unverifiedUserAttributes = actorState.context.unverifiedUserAttributes;\n }\n\n getLabel(attr: keyof UnverifiedUserAttributes, value: string): string {\n const attributeMap = getAttributeMap();\n const { label } = attributeMap[attr];\n const translatedTypeLabel = translate(label);\n const censoredAttributeValue = censorContactMethod(\n label as ContactMethod,\n value\n );\n return `${translatedTypeLabel}: ${censoredAttributeValue}`;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (input)=\"onInput($event)\" (submit)=\"onSubmit($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"verify-user-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <div\n *ngFor=\"\n let unverifiedUserAttribute of unverifiedUserAttributes | keyvalue\n let i = index;\n \"\n >\n <input\n name=\"unverifiedAttr\"\n type=\"radio\"\n [value]=\"unverifiedUserAttribute.key\"\n [id]=\"labelId\"\n [checked]=\"i === 0\"\n />\n <label [for]=\"labelId\">{{\n getLabel(unverifiedUserAttribute.key, unverifiedUserAttribute.value)\n }}</label>\n </div>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ verifyText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.skipVerification()\"\n >\n {{ skipText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"verify-user-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n","import {\n AfterContentInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AuthenticatorMachineOptions,\n authenticatorTextUtil,\n setUserAgent,\n SocialProvider,\n} from '@aws-amplify/ui';\nimport { AmplifySlotDirective } from '../../../../utilities/amplify-slot/amplify-slot.directive';\nimport { CustomComponentsService } from '../../../../services/custom-components.service';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { VERSION } from '../../../../../version';\n\nconst { getSignInTabText, getSignUpTabText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-authenticator',\n templateUrl: './authenticator.component.html',\n providers: [CustomComponentsService], // make sure custom components are scoped to this authenticator only\n encapsulation: ViewEncapsulation.None,\n})\nexport class AuthenticatorComponent\n implements OnInit, AfterContentInit, OnDestroy\n{\n @Input() formFields: AuthenticatorMachineOptions['formFields'];\n @Input() initialState: AuthenticatorMachineOptions['initialState'];\n @Input() loginMechanisms: AuthenticatorMachineOptions['loginMechanisms'];\n @Input() services: AuthenticatorMachineOptions['services'];\n @Input() signUpAttributes: AuthenticatorMachineOptions['signUpAttributes'];\n @Input() socialProviders: SocialProvider[];\n @Input() variation: 'default' | 'modal';\n @Input() hideSignUp: boolean;\n\n @ContentChildren(AmplifySlotDirective)\n private customComponentQuery: QueryList<AmplifySlotDirective> = null;\n\n // translated texts\n public signInTitle = getSignInTabText();\n public signUpTitle = getSignUpTabText();\n\n private hasInitialized = false;\n private isHandlingHubEvent = false;\n private unsubscribeMachine: () => void;\n private clearUserAgent: () => void;\n\n constructor(\n private authenticator: AuthenticatorService,\n private contextService: CustomComponentsService,\n private changeDetector: ChangeDetectorRef\n ) {}\n\n // context passed to \"authenticated\" slot\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n public get route(): AuthenticatorService['route'] {\n return this.authenticator.route;\n }\n\n ngOnInit(): void {\n const {\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n formFields,\n } = this;\n\n this.clearUserAgent = setUserAgent({\n componentName: 'Authenticator',\n packageName: 'angular',\n version: VERSION,\n });\n\n const { initializeMachine } = this.authenticator;\n\n this.authenticator.hubSubject.subscribe(() => {\n /*\n * Hub events aren't properly caught by Angular, because they are\n * synchronous events. Angular tracks async network events and\n * html events, but not synchronous events like hub.\n *\n * On any notable hub events, we run change detection manually.\n */\n this.changeDetector.detectChanges();\n\n /*\n * Hub events that we handle can lead to multiple state changes:\n * e.g. `authenticated` -> `signOut` -> initialState.\n *\n * We want to ensure change detection runs all the way, until\n * we reach back to the initial state. Setting the below flag\n * to true to until we reach initial state.\n */\n this.isHandlingHubEvent = true;\n });\n\n /**\n * Subscribes to state machine changes and sends INIT event\n * once machine reaches 'setup' state.\n */\n this.unsubscribeMachine = this.authenticator.subscribe(() => {\n const { route } = this.authenticator;\n\n if (this.isHandlingHubEvent) {\n this.changeDetector.detectChanges();\n\n const initialStateWithDefault = initialState ?? 'signIn';\n\n // We can stop manual change detection if we're back to the initial state\n if (route === initialStateWithDefault) {\n this.isHandlingHubEvent = false;\n }\n }\n\n if (!this.hasInitialized && route === 'setup') {\n initializeMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n formFields,\n });\n\n this.hasInitialized = true;\n }\n }).unsubscribe;\n\n /**\n * handling translations after content init, because authenticator and its\n * translations might be initialized before the main app's `ngOnInit` is run.\n */\n this.signInTitle = getSignInTabText();\n this.signUpTitle = getSignUpTabText();\n }\n\n /**\n * Lifecycle Methods\n */\n ngAfterContentInit(): void {\n this.contextService.customComponents = this.mapCustomComponents(\n this.customComponentQuery\n );\n }\n\n ngOnDestroy(): void {\n this.clearUserAgent();\n if (this.unsubscribeMachine) this.unsubscribeMachine();\n }\n\n /**\n * Class Functions\n */\n public onTabChange(): void {\n const { route } = this.authenticator;\n if (route === 'signIn') {\n this.authenticator.toSignUp();\n } else {\n this.authenticator.toSignIn();\n }\n }\n\n public hasTabs(): boolean {\n const { route } = this.authenticator;\n return route === 'signIn' || route === 'signUp';\n }\n\n public hasRouteComponent(): boolean {\n const { route } = this.authenticator;\n\n switch (route) {\n case 'authenticated':\n case 'idle':\n case 'setup':\n case 'signOut':\n case 'transition':\n return false;\n default:\n return true;\n }\n }\n\n private mapCustomComponents(\n componentQuery: QueryList<AmplifySlotDirective>\n ): Record<string, TemplateRef<unknown>> {\n if (!componentQuery) return {};\n const customComponents: Record<string, TemplateRef<unknown>> = {};\n componentQuery.forEach((component) => {\n customComponents[component.name] = component.template;\n });\n\n return customComponents;\n }\n}\n","<div\n data-amplify-authenticator\n [attr.data-variation]=\"variation\"\n *ngIf=\"hasRouteComponent()\"\n>\n <div data-amplify-container>\n <amplify-slot name=\"header\" [context]=\"context\"></amplify-slot>\n <div\n data-amplify-router\n [attr.data-amplify-router-content]=\"hasTabs() ? undefined : ''\"\n >\n <amplify-tabs\n (tabChange)=\"onTabChange()\"\n *ngIf=\"(route === 'signIn' || route === 'signUp') && !hideSignUp\"\n >\n <amplify-tab-item\n [title]=\"signInTitle\"\n [active]=\"route === 'signIn'\"\n data-amplify-router-content\n >\n <!-- signIn component -->\n <amplify-slot\n name=\"sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'signIn'\"\n >\n <amplify-sign-in></amplify-sign-in>\n </amplify-slot>\n </amplify-tab-item>\n <amplify-tab-item\n [title]=\"signUpTitle\"\n [active]=\"route === 'signUp'\"\n data-amplify-router-content\n >\n <!-- signUp component -->\n <amplify-slot\n name=\"sign-up\"\n [context]=\"context\"\n *ngIf=\"route === 'signUp'\"\n >\n <amplify-sign-up></amplify-sign-up>\n </amplify-slot>\n </amplify-tab-item>\n </amplify-tabs>\n\n <amplify-slot\n name=\"sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'signIn' && hideSignUp\"\n >\n <amplify-sign-in></amplify-sign-in>\n </amplify-slot>\n\n <!-- confirmSignUp content -->\n <amplify-slot\n name=\"confirm-sign-up\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmSignUp'\"\n >\n <amplify-confirm-sign-up></amplify-confirm-sign-up>\n </amplify-slot>\n\n <!-- confirmSignIn content -->\n <amplify-slot\n name=\"confirm-sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmSignIn'\"\n >\n <amplify-confirm-sign-in></amplify-confirm-sign-in>\n </amplify-slot>\n\n <!-- setupTotp content -->\n <amplify-slot\n name=\"setup-totp\"\n [context]=\"context\"\n *ngIf=\"route === 'setupTotp'\"\n >\n <amplify-setup-totp></amplify-setup-totp>\n </amplify-slot>\n\n <!-- forceNewPassword content -->\n <amplify-slot\n name=\"force-new-password\"\n [context]=\"context\"\n *ngIf=\"route === 'forceNewPassword'\"\n >\n <amplify-force-new-password></amplify-force-new-password>\n </amplify-slot>\n\n <!-- forgotPassword content -->\n <amplify-slot\n name=\"forgot-password\"\n [context]=\"context\"\n *ngIf=\"route === 'forgotPassword'\"\n >\n <amplify-forgot-password></amplify-forgot-password>\n </amplify-slot>\n\n <!-- confirmResetPassword content -->\n <amplify-slot\n name=\"confirm-reset-password\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmResetPassword'\"\n >\n <amplify-confirm-reset-password></amplify-confirm-reset-password>\n </amplify-slot>\n\n <!-- verifyUser content -->\n <amplify-slot\n name=\"verify-user\"\n [context]=\"context\"\n *ngIf=\"route === 'verifyUser'\"\n >\n <amplify-verify-user></amplify-verify-user>\n </amplify-slot>\n\n <!-- confirmVerifyUser content -->\n <amplify-slot\n name=\"confirm-verify-user\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmVerifyUser'\"\n >\n <amplify-confirm-verify-user></amplify-confirm-verify-user>\n </amplify-slot>\n </div>\n\n <amplify-slot name=\"footer\" [context]=\"context\"></amplify-slot>\n </div>\n</div>\n\n<!-- signedIn content is rendered outside authenticator so it's not styled by authenticator -->\n<amplify-slot\n name=\"authenticated\"\n [context]=\"context\"\n *ngIf=\"route === 'authenticated'\"\n>\n <ng-content></ng-content>\n</amplify-slot>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'amplify-checkbox',\n templateUrl: './checkbox.component.html',\n})\nexport class CheckboxComponent implements OnInit {\n @Input() defaultChecked = false;\n @Input() errorMessage: string;\n @Input() hasError = false;\n @Input() label: string;\n @Input() name: string;\n @Input() value: string;\n\n public isChecked = false;\n\n ngOnInit(): void {\n if (this.defaultChecked) {\n this.isChecked = true;\n }\n }\n\n handleClick(): void {\n this.isChecked = !this.isChecked;\n }\n}\n","<div class=\"amplify-flex amplify-field amplify-checkboxfield\">\n <label class=\"amplify-flex amplify-checkbox\">\n <span class=\"amplify-visually-hidden\">\n <input\n (click)=\"handleClick()\"\n class=\"\n amplify-input\n amplify-field-group__control\n amplify-checkbox__input\n \"\n aria-invalid=\"false\"\n type=\"checkbox\"\n [name]=\"name\"\n [value]=\"value\"\n />\n </span>\n <span\n class=\"amplify-flex amplify-checkbox__button\"\n aria-hidden=\"true\"\n data-focus=\"false\"\n [ngClass]=\"{\n 'amplify-checkbox__button--error': hasError\n }\"\n [attr.data-error]=\"hasError\"\n [attr.data-checked]=\"isChecked\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon amplify-checkbox__icon\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n [attr.data-checked]=\"isChecked\"\n [ngClass]=\"{\n 'amplify-checkbox__icon--checked': isChecked\n }\"\n >\n <path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"></path>\n </svg>\n </span>\n <span class=\"amplify-text amplify-checkbox__label\">\n <ng-content></ng-content>\n </span>\n </label>\n <p *ngIf=\"hasError\" class=\"amplify-text amplify-field__error-message\">\n {{ errorMessage }}\n </p>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/**\n * Note: Angular components and directives inside module files has to be imported directly.\n *\n * Related: https://github.com/ng-packagr/ng-packagr/issues/567\n */\nimport { AuthenticatorComponent } from './components/authenticator/authenticator.component';\nimport { ConfirmResetPasswordComponent } from './components/confirm-reset-password/amplify-confirm-reset-password.component';\nimport { ConfirmSignInComponent } from './components/confirm-sign-in/confirm-sign-in.component';\nimport { ConfirmSignUpComponent } from './components/confirm-sign-up/confirm-sign-up.component';\nimport { ConfirmVerifyUserComponent } from './components/confirm-verify-user/amplify-confirm-verify-user.component';\nimport { FederatedSignInButtonComponent } from './components/federated-sign-in-button/federated-sign-in-button.component';\nimport { FederatedSignInComponent } from './components/federated-sign-in/federated-sign-in.component';\nimport { ForceNewPasswordComponent } from './components/force-new-password/force-new-password.component';\nimport { ForceNewPasswordFormFieldsComponent } from './components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nimport { FormFieldComponent } from './components/form-field/form-field.component';\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\nimport { SetupTotpComponent } from './components/setup-totp/setup-totp.component';\nimport { SignInComponent } from './components/sign-in/sign-in.component';\nimport { SignUpComponent } from './components/sign-up/sign-up.component';\nimport { SignUpFormFieldsComponent } from './components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nimport { VerifyUserComponent } from './components/verify-user/verify-user.component';\nimport { BaseFormFieldsComponent } from './components/base-form-fields/base-form-fields.component';\n\nimport { ButtonComponent } from '../../primitives/button/button.component';\nimport { CheckboxComponent } from '../../primitives/checkbox/checkbox.component';\nimport { ErrorComponent } from '../../primitives/error/error.component';\nimport { PasswordFieldComponent } from '../../primitives/password-field/password-field.component';\nimport { PhoneNumberFieldComponent } from '../../primitives/phone-number-field/phone-number-field.component';\nimport { SelectComponent } from '../../primitives/select/select.component';\nimport { TabItemComponent } from '../../primitives/tab-item/tab-item.component';\nimport { TabsComponent } from '../../primitives/tabs/tabs.component';\nimport { TextFieldComponent } from '../../primitives/text-field/text-field.component';\n\nimport { AmplifySlotComponent } from '../../utilities/amplify-slot/amplify-slot.component';\nimport { AmplifySlotDirective } from '../../utilities/amplify-slot/amplify-slot.directive';\n\n@NgModule({\n declarations: [\n AmplifySlotComponent,\n AmplifySlotDirective,\n AuthenticatorComponent,\n BaseFormFieldsComponent,\n ButtonComponent,\n CheckboxComponent,\n ConfirmResetPasswordComponent,\n ConfirmSignInComponent,\n ConfirmSignUpComponent,\n ConfirmVerifyUserComponent,\n ErrorComponent,\n FederatedSignInButtonComponent,\n FederatedSignInComponent,\n ForceNewPasswordComponent,\n ForceNewPasswordFormFieldsComponent,\n FormFieldComponent,\n PasswordFieldComponent,\n PhoneNumberFieldComponent,\n ForgotPasswordComponent,\n SelectComponent,\n SetupTotpComponent,\n SignInComponent,\n SignUpComponent,\n SignUpFormFieldsComponent,\n TabItemComponent,\n TabsComponent,\n TextFieldComponent,\n VerifyUserComponent,\n ],\n imports: [CommonModule],\n exports: [\n AmplifySlotDirective,\n AuthenticatorComponent,\n CheckboxComponent,\n SignUpFormFieldsComponent,\n ForceNewPasswordFormFieldsComponent,\n TextFieldComponent,\n ],\n})\nexport class AmplifyAuthenticatorModule {}\n","/*\n * Public API Surface of ui-angular\n */\n\n/**\n * Modules\n */\nexport { AmplifyAuthenticatorModule } from './lib/components/authenticator/authenticator.module';\n\n/**\n * Components\n */\nexport * from './lib/components/authenticator/components';\nexport * from './lib/primitives';\n\n/**\n * Helpers\n */\nexport * from './lib/common';\n\n/**\n * Directives\n */\nexport * from './lib/utilities/amplify-slot/amplify-slot.directive';\n\n/**\n * Services\n */\nexport * from './lib/services/custom-components.service';\nexport * from './lib/services/authenticator.service';\n\n/**\n * Re-export public APIs from `@aws-amplify/ui`\n */\nexport { translations } from '@aws-amplify/ui';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["logger","Logger","i1.CustomComponentsService","i1","i2.ButtonComponent","i1.SelectComponent","i1.AuthenticatorService","i3.PasswordFieldComponent","i4.PhoneNumberFieldComponent","i5.TextFieldComponent","i3.FormFieldComponent","getBackToSignInText","getResendCodeText","getSubmitText","getResetYourPasswordText","i3.AmplifySlotComponent","i4.BaseFormFieldsComponent","i5.ButtonComponent","i6.ErrorComponent","getConfirmText","getAccountRecoveryInfoText","getSkipText","i1.BaseFormFieldsComponent","i4.ButtonComponent","i5.ErrorComponent","i6.ForceNewPasswordFormFieldsComponent","i3.FederatedSignInButtonComponent","i7.FederatedSignInComponent","i6.FederatedSignInComponent","i7.SignUpFormFieldsComponent","i2.CustomComponentsService","i3","i4.AmplifySlotComponent","i5.ConfirmResetPasswordComponent","i6.ConfirmSignInComponent","i7.ConfirmSignUpComponent","i8.ConfirmVerifyUserComponent","i9.ForceNewPasswordComponent","i10.ForgotPasswordComponent","i11.SetupTotpComponent","i12.SignInComponent","i13.SignUpComponent","i14.TabItemComponent","i15.TabsComponent","i16.VerifyUserComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aws-amplify-ui-angular.mjs","sources":["../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.directive.ts","../../../projects/ui-angular/src/lib/services/custom-components.service.ts","../../../projects/ui-angular/src/version.ts","../../../projects/ui-angular/src/lib/services/authenticator.service.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.ts","../../../projects/ui-angular/src/lib/utilities/amplify-slot/amplify-slot.component.html","../../../projects/ui-angular/src/lib/primitives/button/button.component.ts","../../../projects/ui-angular/src/lib/primitives/button/button.component.html","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.ts","../../../projects/ui-angular/src/lib/primitives/password-field/password-field.component.html","../../../projects/ui-angular/src/lib/primitives/select/select.component.ts","../../../projects/ui-angular/src/lib/primitives/select/select.component.html","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.ts","../../../projects/ui-angular/src/lib/primitives/phone-number-field/phone-number-field.component.html","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.ts","../../../projects/ui-angular/src/lib/primitives/text-field/text-field.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/form-field/form-field.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/base-form-fields/base-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/base-form-fields/base-form-fields.component.html","../../../projects/ui-angular/src/lib/primitives/error/error.component.ts","../../../projects/ui-angular/src/lib/primitives/error/error.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-reset-password/amplify-confirm-reset-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-in/confirm-sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-sign-up/confirm-sign-up.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/confirm-verify-user/amplify-confirm-verify-user.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/force-new-password/force-new-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/forgot-password/forgot-password.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/forgot-password/forgot-password.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/setup-totp/setup-totp.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in-button/federated-sign-in-button.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/federated-sign-in/federated-sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-in/sign-in.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up-form-fields/sign-up-form-fields.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/sign-up/sign-up.component.html","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.ts","../../../projects/ui-angular/src/lib/primitives/tab-item/tab-item.component.html","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.ts","../../../projects/ui-angular/src/lib/primitives/tabs/tabs.component.html","../../../projects/ui-angular/src/lib/common/helpers.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/verify-user/verify-user.component.html","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.ts","../../../projects/ui-angular/src/lib/components/authenticator/components/authenticator/authenticator.component.html","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.ts","../../../projects/ui-angular/src/lib/primitives/checkbox/checkbox.component.html","../../../projects/ui-angular/src/lib/components/authenticator/authenticator.module.ts","../../../projects/ui-angular/src/index.ts","../../../projects/ui-angular/src/aws-amplify-ui-angular.ts"],"sourcesContent":["import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[amplifySlot]',\n})\nexport class AmplifySlotDirective {\n public name: string;\n\n constructor(public template: TemplateRef<unknown>) {}\n\n @Input() set amplifySlot(component: string) {\n this.name = component;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CustomComponents } from '../common';\n\n/**\n * Stores and provides custom components that users provide with `amplify-slot`.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class CustomComponentsService {\n private _customComponents: CustomComponents = {};\n\n public get customComponents(): CustomComponents {\n return this._customComponents;\n }\n\n public set customComponents(customComponents: CustomComponents) {\n this._customComponents = { ...this._customComponents, ...customComponents };\n }\n}\n","export const VERSION = '5.0.21';\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { Event, interpret, Subscription } from 'xstate';\n\nimport { AuthUser, getCurrentUser } from 'aws-amplify/auth';\nimport { ConsoleLogger as Logger } from 'aws-amplify/utils';\nimport {\n AuthContext,\n AuthenticatorServiceFacade,\n AuthEvent,\n AuthInterpreter,\n AuthMachineState,\n AuthStatus,\n createAuthenticatorMachine,\n defaultAuthHubHandler,\n getServiceFacade,\n listenToAuthHub,\n} from '@aws-amplify/ui';\nimport { translate } from '@aws-amplify/ui';\n\nimport { AuthSubscriptionCallback } from '../common/types';\n\nconst logger = new Logger('state-machine');\n\n/**\n * AuthenticatorService provides access to the authenticator state and context.\n */\n@Injectable({\n providedIn: 'root', // ensure we have a singleton service\n})\nexport class AuthenticatorService implements OnDestroy {\n private _authState: AuthMachineState;\n private _authStatus: AuthStatus = 'configuring';\n private _authService: AuthInterpreter;\n private _machineSubscription: Subscription;\n private _facade: ReturnType<typeof getServiceFacade>;\n private _hubSubject: Subject<void>;\n private _unsubscribeHub: () => void;\n\n constructor() {\n const machine = createAuthenticatorMachine();\n this._authService = interpret(machine).start();\n\n this.getInitialAuthStatus();\n this.setupMachineSubscription();\n this.setupHubListener();\n }\n\n /**\n * Context facades\n */\n\n public get error(): AuthenticatorServiceFacade['error'] {\n return translate(this._facade?.error);\n }\n\n public get hasValidationErrors(): AuthenticatorServiceFacade['hasValidationErrors'] {\n return this._facade?.hasValidationErrors;\n }\n\n public get isPending(): AuthenticatorServiceFacade['isPending'] {\n return this._facade?.isPending;\n }\n\n public get route(): AuthenticatorServiceFacade['route'] {\n return this._facade?.route;\n }\n\n public get authStatus(): AuthenticatorServiceFacade['authStatus'] {\n return this._authStatus;\n }\n\n public get user(): AuthUser {\n return this._facade?.user;\n }\n\n public get username(): string {\n return this._facade?.username;\n }\n\n public get validationErrors(): AuthenticatorServiceFacade['validationErrors'] {\n return this._facade?.validationErrors;\n }\n\n public get codeDeliveryDetails(): AuthenticatorServiceFacade['codeDeliveryDetails'] {\n return this._facade?.codeDeliveryDetails;\n }\n\n public get totpSecretCode(): AuthenticatorServiceFacade['totpSecretCode'] {\n return this._facade?.totpSecretCode;\n }\n\n /**\n * Service facades\n */\n\n public get initializeMachine(): AuthenticatorServiceFacade['initializeMachine'] {\n return this._facade.initializeMachine;\n }\n\n public get updateForm(): AuthenticatorServiceFacade['updateForm'] {\n return this._facade.updateForm;\n }\n\n public get updateBlur(): AuthenticatorServiceFacade['updateBlur'] {\n return this._facade.updateBlur;\n }\n\n public get resendCode(): AuthenticatorServiceFacade['resendCode'] {\n return this._facade.resendCode;\n }\n\n public get signOut(): AuthenticatorServiceFacade['signOut'] {\n return this._facade.signOut;\n }\n\n public get submitForm(): AuthenticatorServiceFacade['submitForm'] {\n return this._facade.submitForm;\n }\n\n /**\n * Transition facades\n */\n\n public get toFederatedSignIn(): AuthenticatorServiceFacade['toFederatedSignIn'] {\n return this._facade.toFederatedSignIn;\n }\n\n public get toForgotPassword(): AuthenticatorServiceFacade['toForgotPassword'] {\n return this._facade.toForgotPassword;\n }\n\n public get toSignIn(): AuthenticatorServiceFacade['toSignIn'] {\n return this._facade.toSignIn;\n }\n\n public get toSignUp(): AuthenticatorServiceFacade['toSignUp'] {\n return this._facade.toSignUp;\n }\n\n public get skipVerification(): AuthenticatorServiceFacade['skipVerification'] {\n return this._facade.skipVerification;\n }\n\n /**\n * Internal utility functions\n */\n\n /** @deprecated For internal use only */\n public get authState(): AuthMachineState {\n return this._authState;\n }\n\n /** @deprecated For internal use only */\n public get authService(): AuthInterpreter {\n return this._authService;\n }\n\n /** @deprecated For internal use only */\n public get context(): AuthContext {\n return this._authState.context;\n }\n\n /** @deprecated For internal use only */\n public get slotContext(): AuthenticatorServiceFacade & {\n $implicit: AuthenticatorServiceFacade;\n } {\n return {\n ...this._facade,\n $implicit: this._facade,\n };\n }\n\n /** @deprecated For internal use only */\n public get hubSubject(): Subject<void> {\n return this._hubSubject;\n }\n\n public subscribe(callback: AuthSubscriptionCallback): Subscription {\n if (!this._authService) {\n logger.error(\n 'Subscription attempted before machine was created. This is likely a bug on the library, please consider filing a bug.'\n );\n }\n\n const subscription = this._authService.subscribe(() => {\n callback(this._facade);\n });\n return subscription;\n }\n\n ngOnDestroy(): void {\n if (this._machineSubscription) this._machineSubscription.unsubscribe();\n if (this._unsubscribeHub) this._unsubscribeHub();\n }\n\n /** @deprecated For internal use only */\n public send(event: Event<AuthEvent>): void {\n this.authService.send(event);\n }\n\n private async getInitialAuthStatus(): Promise<void> {\n try {\n await getCurrentUser();\n this._authStatus = 'authenticated';\n } catch (e) {\n this._authStatus = 'unauthenticated';\n }\n }\n\n private setupHubListener(): void {\n this._hubSubject = new Subject<void>();\n\n const onSignIn = () => {\n this._authStatus = 'authenticated';\n };\n const onSignOut = () => {\n this._authStatus = 'unauthenticated';\n };\n\n this._unsubscribeHub = listenToAuthHub(\n this._authService,\n (data, service) => {\n defaultAuthHubHandler(data, service, { onSignIn, onSignOut });\n this._hubSubject.next();\n }\n );\n }\n\n private setupMachineSubscription(): void {\n this._machineSubscription = this._authService.subscribe(\n (state: unknown) => {\n const newState = state as AuthMachineState;\n this._authState = newState;\n this._facade = getServiceFacade({\n send: this._authService.send,\n state: newState,\n });\n }\n );\n }\n}\n","import {\n AfterContentInit,\n Component,\n HostBinding,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { CustomComponentsService } from '../../services/custom-components.service';\n\n@Component({\n selector: 'amplify-slot',\n templateUrl: './amplify-slot.component.html',\n})\nexport class AmplifySlotComponent implements AfterContentInit {\n @Input() name: string;\n @Input() context: Record<PropertyKey, unknown>;\n\n @HostBinding('style.display') display = 'contents';\n\n public overridingComponent: TemplateRef<unknown>;\n public isOverriden = false;\n\n constructor(private propService: CustomComponentsService) {}\n\n ngAfterContentInit(): void {\n const { customComponents } = this.propService;\n const overridingComponent = customComponents[this.name];\n\n if (overridingComponent) {\n this.overridingComponent = overridingComponent;\n this.isOverriden = true;\n }\n }\n}\n","<!-- \n if slot isn't overwritten, we display the the default coponent, which is the \n children passed onto this component.\n-->\n<ng-content *ngIf=\"!isOverriden\"></ng-content>\n\n<!-- If slot is overwritten, we render that instead. -->\n<ng-container\n *ngIf=\"isOverriden\"\n [ngTemplateOutlet]=\"overridingComponent\"\n [ngTemplateOutletContext]=\"context\"\n></ng-container>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'button[amplify-button]',\n templateUrl: './button.component.html',\n})\nexport class ButtonComponent implements OnInit {\n @Input() type: 'submit' | 'button' = 'button';\n @Input() fullWidth: boolean | string = false;\n @Input() isDisabled: boolean | string = false;\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\n @Input() variation: 'primary' | 'default' | 'link' = 'default';\n @Input() fontWeight: 'normal' | 'bold' | 'lighter' = 'normal';\n\n @HostBinding('type') typeAttr: string;\n @HostBinding('attr.data-fullwidth') fullWidthAttr: boolean | string;\n @HostBinding('attr.data-size') sizeAttr: string;\n @HostBinding('attr.data-variation') variationAttr: string;\n @HostBinding('style.font-weight') fontWeightAttr: string;\n\n @HostBinding('attr.disabled') get getDisabled(): string {\n return this.isDisabled ? '' : null;\n }\n\n @HostBinding('class') get classNames(): string {\n let className = 'amplify-button';\n if (this.variation) {\n className += ` amplify-button--${this.variation}`;\n }\n if (this.size) {\n className += ` amplify-button--${this.size}`;\n }\n if (this.fullWidth) {\n className += ` amplify-button--fullwidth`;\n }\n if (this.isDisabled) {\n className += ` amplify-button--disabled amplify-button--loading`;\n }\n\n return className;\n }\n\n ngOnInit(): void {\n this.typeAttr = this.type;\n this.fullWidthAttr = this.fullWidth;\n this.sizeAttr = this.size;\n this.variationAttr = this.variation;\n this.fontWeightAttr = this.fontWeight;\n }\n}\n","<ng-content></ng-content>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { translate, ComponentClassName } from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\nimport { classNames } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-password-field',\n templateUrl: './password-field.component.html',\n})\nexport class PasswordFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() labelHidden = false;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n @Output() setBlur = new EventEmitter<Event>();\n\n public type: 'text' | 'password' = 'password';\n\n public showPassword = false;\n public showPasswordButtonlabel = translate('Show password');\n\n // re-export utilities so that template html can use them\n public classnames = classNames;\n public ComponentClassName = ComponentClassName;\n\n togglePasswordText(): void {\n this.showPassword = !this.showPassword;\n this.showPasswordButtonlabel = this.showPassword\n ? translate('Hide password')\n : translate('Show password');\n this.type = this.showPassword ? 'text' : 'password';\n }\n}\n","<div\n [class]=\"\n classnames(\n ComponentClassName.Flex,\n ComponentClassName.Field,\n ComponentClassName.TextField,\n ComponentClassName.PasswordField\n )\n \"\n>\n <label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n >\n {{ label }}\n </label>\n <div\n [class]=\"classnames(ComponentClassName.Flex, ComponentClassName.FieldGroup)\"\n >\n <div [class]=\"ComponentClassName.FieldGroupFieldWrapper\">\n <input\n [class]=\"\n classnames(\n ComponentClassName.Input,\n ComponentClassName.FieldGroupControl,\n ComponentClassName.FieldShowPassword\n )\n \"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n autocapitalize=\"off\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n (blur)=\"setBlur.emit($event)\"\n />\n </div>\n <div [class]=\"ComponentClassName.FieldGroupOuterEnd\">\n <button\n amplify-button\n role=\"switch\"\n (click)=\"togglePasswordText()\"\n [attr.aria-checked]=\"type !== 'password'\"\n [attr.aria-label]=\"showPasswordButtonlabel\"\n [class]=\"\n classnames(\n ComponentClassName.Input,\n ComponentClassName.FieldGroupControl\n )\n \"\n >\n <svg\n *ngIf=\"!showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n ></path>\n </svg>\n <svg\n *ngIf=\"showPassword\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n class=\"amplify-icon\"\n >\n <path\n d=\"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z\"\n fill=\"none\"\n ></path>\n <path\n d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-form-select',\n templateUrl: './select.component.html',\n})\nexport class SelectComponent {\n @Input() items: string[];\n @Input() name: string;\n @Input() label: string;\n @Input() id: string;\n @Input() defaultValue: string;\n}\n","<label class=\"amplify-label amplify-visually-hidden\" [for]=\"id\">{{\n label\n}}</label>\n<div class=\"amplify-select__wrapper\">\n <select\n class=\"amplify-select amplify-field-group__control\"\n autocomplete=\"tel-country-code\"\n [id]=\"id\"\n [name]=\"name\"\n >\n <option\n *ngFor=\"let item of items\"\n [value]=\"item\"\n [selected]=\"item === defaultValue\"\n >\n {{ item }}\n </option>\n </select>\n <div\n class=\"amplify-flex amplify-select__icon\"\n style=\"align-items: center; justify-content: center\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n viewBox=\"0 0 24 24\"\n data-size=\"large\"\n fill=\"currentColor\"\n >\n <path d=\"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z\"></path>\n </svg>\n </div>\n</div>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { countryDialCodes } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-phone-number-field',\n templateUrl: './phone-number-field.component.html',\n})\nexport class PhoneNumberFieldComponent implements OnInit {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() defaultCountryCode: string;\n @Input() selectFieldId = `amplify-field-${nanoid(12)}`;\n @Input() textFieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n @Input() dialCodeList: Array<string>;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n\n @HostBinding('style.display') display = 'contents';\n\n public countryDialCodesValues: Array<string>;\n\n ngOnInit(): void {\n this.countryDialCodesValues = this.dialCodeList ?? countryDialCodes;\n }\n}\n","<div\n class=\"amplify-flex amplify-field amplify-textfield amplify-phonenumberfield\"\n>\n <label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"textFieldId\"\n >\n {{ label }}\n </label>\n <div class=\"amplify-flex amplify-field-group amplify-field-group--horizontal\">\n <div class=\"amplify-field-group__outer-start\">\n <div\n class=\"amplify-flex amplify-field amplify-selectfield amplify-dialcodeselect\"\n style=\"flex-direction: column\"\n >\n <amplify-form-select\n name=\"country_code\"\n label=\"Country Code\"\n [id]=\"selectFieldId\"\n [items]=\"countryDialCodesValues\"\n [defaultValue]=\"defaultCountryCode\"\n ></amplify-form-select>\n </div>\n </div>\n\n <div\n class=\"amplify-field-group__field-wrapper amplify-field-group__field-wrapper--horizontal\"\n >\n <input\n class=\"amplify-input amplify-field-group__control\"\n [id]=\"textFieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n />\n </div>\n </div>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { nanoid } from 'nanoid';\n\n@Component({\n selector: 'amplify-text-field',\n templateUrl: './text-field.component.html',\n})\nexport class TextFieldComponent {\n @Input() autocomplete = 'new-password';\n @Input() disabled = false;\n @Input() fieldId = `amplify-field-${nanoid(12)}`;\n @Input() initialValue = '';\n @Input() label = '';\n @Input() name: string;\n @Input() placeholder = '';\n @Input() required = true;\n @Input() type: string;\n @Input() labelHidden = false;\n @Input() hasError: boolean;\n @Input() describedBy: string;\n\n @HostBinding('style.display') display = 'contents';\n}\n","<label\n class=\"amplify-label\"\n [class.amplify-visually-hidden]=\"labelHidden\"\n [for]=\"fieldId\"\n>\n {{ label }}\n</label>\n<input\n class=\"amplify-input\"\n autocapitalize=\"off\"\n [id]=\"fieldId\"\n [type]=\"type\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [value]=\"initialValue\"\n [autocomplete]=\"autocomplete\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-invalid]=\"hasError ? 'true' : 'false'\"\n [attr.aria-describedby]=\"describedBy\"\n/>\n","import { Component, Input } from '@angular/core';\nimport {\n translate,\n countryDialCodes,\n FormFieldOptions,\n getErrors,\n} from '@aws-amplify/ui';\nimport { nanoid } from 'nanoid';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-form-field',\n templateUrl: './form-field.component.html',\n})\nexport class FormFieldComponent {\n @Input() name: string; // name of the input field\n @Input() formField: FormFieldOptions; // form field options for this field\n\n public defaultCountryCodeValue: string;\n public countryDialCodesValue = countryDialCodes;\n public errorId = nanoid(12);\n\n constructor(private authenticator: AuthenticatorService) {}\n\n get ariaDescribedBy(): string | undefined {\n return this.hasError() ? this.errorId : undefined;\n }\n\n get errors(): string[] {\n const { validationErrors } = this.authenticator;\n return getErrors(validationErrors[this.name]);\n }\n\n public onBlur($event: Event): void {\n const { name } = <HTMLInputElement>$event.target;\n\n this.authenticator.updateBlur({ name });\n }\n\n isPasswordField(): boolean {\n return this.formField.type === 'password';\n }\n\n isPhoneField(): boolean {\n return this.formField.type === 'tel';\n }\n\n hasError(): boolean {\n return this.errors?.length > 0;\n }\n\n translate(phrase: string): string {\n return translate<string>(phrase);\n }\n}\n","<div class=\"amplify-flex amplify-field amplify-authenticator__column\">\n <!-- Country code field -->\n <amplify-phone-number-field\n *ngIf=\"isPhoneField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [defaultCountryCode]=\"formField.dialCode\"\n [dialCodeList]=\"formField.dialCodeList\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n type=\"tel\"\n ></amplify-phone-number-field>\n\n <amplify-password-field\n *ngIf=\"isPasswordField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n (setBlur)=\"onBlur($event)\"\n ></amplify-password-field>\n\n <amplify-text-field\n *ngIf=\"!isPasswordField() && !isPhoneField()\"\n [name]=\"name\"\n [label]=\"formField.label\"\n [placeholder]=\"formField.placeholder\"\n [required]=\"formField.isRequired\"\n [labelHidden]=\"formField.labelHidden\"\n [autocomplete]=\"formField.autocomplete\"\n [type]=\"formField.type\"\n [hasError]=\"hasError\"\n [describedBy]=\"ariaDescribedBy\"\n ></amplify-text-field>\n\n <div data-amplify-sign-up-errors *ngIf=\"hasError()\" [id]=\"errorId\">\n <div\n class=\"amplify-text amplify-text--error\"\n data-variation=\"error\"\n *ngFor=\"let error of errors\"\n >\n {{ translate(error) }}\n </div>\n </div>\n</div>\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport {\n FormFieldComponents,\n FormFieldsArray,\n getSortedFormFields,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n/**\n * Sorts the given formFields, then renders them in order.\n */\n@Component({\n selector: 'amplify-base-form-fields',\n templateUrl: './base-form-fields.component.html',\n})\nexport class BaseFormFieldsComponent implements OnInit {\n @Input() route: FormFieldComponents; // formFields to sort and render\n @HostBinding('style.display') display = 'contents';\n public formFields: FormFieldsArray = [];\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const state = this.authenticator.authState;\n this.formFields = getSortedFormFields(this.route, state);\n }\n}\n","<ng-container *ngFor=\"let formField of formFields\">\n <amplify-form-field\n [name]=\"formField[0]\"\n [formField]=\"formField[1]\"\n ></amplify-form-field>\n</ng-container>\n","import { Component } from '@angular/core';\nimport { translate } from '@aws-amplify/ui';\n\n@Component({\n selector: 'amplify-error',\n templateUrl: './error.component.html',\n})\nexport class ErrorComponent {\n public isVisible = true;\n public dismissAriaLabel = translate('Dismiss alert');\n\n public close(): void {\n this.isVisible = false;\n }\n}\n","<div\n class=\"amplify-flex amplify-alert amplify-alert--error\"\n data-variation=\"error\"\n style=\"align-items: center; justify-content: space-between\"\n *ngIf=\"isVisible\"\n role=\"alert\"\n>\n <div class=\"amplify-flex\" style=\"align-items: center\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n [attr.aria-hidden]=\"true\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n >\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z\"\n ></path>\n </svg>\n <div><ng-content></ng-content></div>\n </div>\n <button\n amplify-button\n [attr.aria-label]=\"dismissAriaLabel\"\n variation=\"link\"\n [fullWidth]=\"false\"\n (click)=\"close()\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon\"\n [attr.aria-hidden]=\"true\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n >\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n ></path>\n </svg>\n </button>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst {\n getBackToSignInText,\n getResendCodeText,\n getSubmitText,\n getResetYourPasswordText,\n} = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-confirm-reset-password',\n templateUrl: './amplify-confirm-reset-password.component.html',\n})\nexport class ConfirmResetPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n @Input() public headerText = getResetYourPasswordText();\n\n public sortedFormFields: FormFieldsArray;\n\n // translated strings\n public backToSignInText = getBackToSignInText();\n public resendCodeText = getResendCodeText();\n public submitText = getSubmitText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-reset-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields\n route=\"confirmResetPassword\"\n ></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n type=\"button\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-reset-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport {\n FormFieldsArray,\n getActorContext,\n getFormDataFromEvent,\n SignInContext,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst { getConfirmText, getBackToSignInText, getChallengeText } =\n authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-confirm-sign-in',\n templateUrl: './confirm-sign-in.component.html',\n})\nexport class ConfirmSignInComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-confirmsignin') dataAttr = '';\n\n // translated texts\n public headerText: string;\n public confirmText = getConfirmText();\n public backToSignInText = getBackToSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n ngOnInit(): void {\n this.setHeaderText();\n }\n\n setHeaderText(): void {\n const state = this.authenticator.authState;\n const actorContext = getActorContext(state) as SignInContext;\n const { challengeName } = actorContext;\n this.headerText = getChallengeText(challengeName);\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-sign-in-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ headerText }}</h3>\n </amplify-slot>\n <amplify-base-form-fields route=\"confirmSignIn\"></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot\n name=\"confirm-sign-in-footer\"\n [context]=\"context\"\n ></amplify-slot>\n</form>\n","import { Component, HostBinding } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst {\n getResendCodeText,\n getConfirmText,\n getDeliveryMethodText,\n getDeliveryMessageText,\n} = authenticatorTextUtil;\n@Component({\n selector: 'amplify-confirm-sign-up',\n templateUrl: './confirm-sign-up.component.html',\n})\nexport class ConfirmSignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmsignup') dataAttr = '';\n\n // translated texts\n public resendCodeText = getResendCodeText();\n public confirmText = getConfirmText();\n\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n public get confirmSignUpHeading(): string {\n const { codeDeliveryDetails } = this.authenticator;\n return getDeliveryMethodText(codeDeliveryDetails);\n }\n\n public get subtitleText(): string {\n const { codeDeliveryDetails } = this.authenticator;\n return getDeliveryMessageText(codeDeliveryDetails);\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<ng-container>\n <form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"context.isPending\"\n >\n <amplify-slot name=\"confirm-sign-up-header\" [context]=\"context\">\n <h3\n class=\"amplify-heading amplify-authenticator__heading\"\n style=\"font-size: 1.5rem\"\n >\n {{ confirmSignUpHeading }}\n </h3>\n </amplify-slot>\n <span class=\"amplify-authenticator__subtitle\">\n {{ subtitleText }}\n </span>\n <amplify-base-form-fields\n route=\"confirmSignUp\"\n ></amplify-base-form-fields>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n fontWeight=\"normal\"\n (click)=\"authenticator.resendCode()\"\n >\n {{ resendCodeText }}\n </button>\n </fieldset>\n\n <amplify-error *ngIf=\"context.error\">\n {{ authenticator.error }}\n </amplify-error>\n <amplify-slot\n name=\"confirm-sign-up-footer\"\n [context]=\"context\"\n ></amplify-slot>\n </form>\n</ng-container>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst { getAccountRecoveryInfoText, getSkipText, getSubmitText } =\n authenticatorTextUtil;\n@Component({\n selector: 'amplify-confirm-verify-user',\n templateUrl: './amplify-confirm-verify-user.component.html',\n})\nexport class ConfirmVerifyUserComponent {\n @HostBinding('attr.data-amplify-authenticator-confirmverifyuser')\n dataAttr = '';\n @Input() public headerText = getAccountRecoveryInfoText();\n\n // translated texts\n public skipText = getSkipText();\n public submitText = getSubmitText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (input)=\"onInput($event)\" (submit)=\"onSubmit($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"confirm-verify-user-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <amplify-base-form-fields\n route=\"confirmVerifyUser\"\n ></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ submitText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.skipVerification()\"\n >\n {{ skipText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"confirm-verify-user-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-force-new-password-form-fields',\n templateUrl: './force-new-password-form-fields.component.html',\n})\nexport class ForceNewPasswordFormFieldsComponent {}\n","<div class=\"amplify-flex amplify-authenticator__column\" data-amplify-fieldset>\n <amplify-base-form-fields route=\"forceNewPassword\"></amplify-base-form-fields>\n</div>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getChangePasswordText, getBackToSignInText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-force-new-password',\n templateUrl: './force-new-password.component.html',\n})\nexport class ForceNewPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forcenewpassword')\n dataAttr = '';\n @Input() public headerText = getChangePasswordText();\n\n // translated texts\n public changePasswordText = getChangePasswordText();\n public backToSignInText = getBackToSignInText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"force-new-password-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <amplify-slot name=\"force-new-form-fields\" [context]=\"context\">\n <amplify-force-new-password-form-fields></amplify-force-new-password-form-fields>\n </amplify-slot>\n\n <button amplify-button variation=\"primary\" fullWidth=\"true\" type=\"submit\">\n {{ changePasswordText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"force-new-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n FormFieldsArray,\n getFormDataFromEvent,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\n\nconst { getResetYourPasswordText, getSendCodeText, getBackToSignInText } =\n authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-forgot-password',\n templateUrl: './forgot-password.component.html',\n})\nexport class ForgotPasswordComponent {\n @HostBinding('attr.data-amplify-authenticator-forgotpassword') dataAttr = '';\n @Input() public headerText = getResetYourPasswordText();\n\n // translated texts\n public sendCodeText = getSendCodeText();\n public backToSignInText = getBackToSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot\n class=\"amplify-flex\"\n name=\"forgot-password-header\"\n [context]=\"context\"\n >\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <amplify-base-form-fields route=\"forgotPassword\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ sendCodeText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n\n <amplify-slot name=\"forgot-password-footer\" [context]=\"context\">\n </amplify-slot>\n</form>\n","import { Component, HostBinding, OnInit } from '@angular/core';\nimport QRCode from 'qrcode';\nimport { ConsoleLogger as Logger } from 'aws-amplify/utils';\nimport {\n FormFieldsArray,\n getActorContext,\n getFormDataFromEvent,\n getTotpCodeURL,\n SignInContext,\n authenticatorTextUtil,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\nconst logger = new Logger('SetupTotp');\n\nconst {\n getSetupTotpText,\n getCopyText,\n getBackToSignInText,\n getConfirmText,\n getCopiedText,\n} = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-setup-totp',\n templateUrl: './setup-totp.component.html',\n})\nexport class SetupTotpComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-setup-totp') dataAttr = '';\n public headerText = getSetupTotpText();\n public qrCodeSource = '';\n public totpSecretCode = '';\n public copyTextLabel = getCopyText();\n\n // translated texts\n public backToSignInText = getBackToSignInText();\n public confirmText = getConfirmText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n async ngOnInit(): Promise<void> {\n await this.generateQRCode();\n }\n\n async generateQRCode(): Promise<void> {\n const { authState: state, totpSecretCode, username } = this.authenticator;\n const { formFields } = getActorContext(state) as SignInContext;\n const { totpIssuer = 'AWSCognito', totpUsername = username } =\n formFields?.setupTotp?.QR ?? {};\n\n this.totpSecretCode = totpSecretCode;\n\n try {\n const totpCode = getTotpCodeURL(\n totpIssuer,\n totpUsername,\n this.totpSecretCode\n );\n\n logger.info('totp code was generated:', totpCode);\n this.qrCodeSource = await QRCode.toDataURL(totpCode);\n } catch (err) {\n logger.error(err);\n }\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n\n copyText(): void {\n navigator.clipboard.writeText(this.totpSecretCode);\n this.copyTextLabel = getCopiedText();\n }\n}\n","<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"setup-totp-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n <p *ngIf=\"!qrCodeSource\">Loading...</p>\n <img\n *ngIf=\"qrCodeSource\"\n [src]=\"qrCodeSource\"\n alt=\"qr code\"\n data-amplify-qrcode\n width=\"228\"\n height=\"228\"\n />\n <div class=\"amplify-flex\" data-amplify-copy>\n <div>{{ totpSecretCode }}</div>\n <div data-amplify-copy-svg (click)=\"copyText()\">\n <div data-amplify-copy-tooltip>{{ copyTextLabel }}</div>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\"\n />\n </svg>\n </div>\n </div>\n\n <amplify-base-form-fields route=\"setupTotp\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ confirmText }}\n </button>\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.toSignIn()\"\n >\n {{ backToSignInText }}\n </button>\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"setup-totp-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n","import { Component, Input } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\n\n@Component({\n selector: 'amplify-federated-sign-in-button',\n templateUrl: './federated-sign-in-button.component.html',\n})\nexport class FederatedSignInButtonComponent {\n @Input() provider: FederatedIdentityProviders;\n @Input() text: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n onClick = (): void => {\n this.authenticator.send({\n type: 'FEDERATED_SIGN_IN',\n data: { provider: this.provider },\n });\n };\n}\n","<button\n amplify-button\n class=\"amplify-field-group__control federated-sign-in-button\"\n fullWidth=\"true\"\n fontWeight=\"normal\"\n (click)=\"onClick()\"\n>\n <div class=\"amplify-flex federated-sign-in-button-row\">\n <ng-content></ng-content>\n </div>\n</button>\n","import { Component, OnInit } from '@angular/core';\nimport { FederatedIdentityProviders } from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getSignInWithFederationText, getOrText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-federated-sign-in',\n templateUrl: './federated-sign-in.component.html',\n})\nexport class FederatedSignInComponent implements OnInit {\n public FederatedProviders = FederatedIdentityProviders;\n public includeAmazon = false;\n public includeApple = false;\n public includeFacebook = false;\n public includeGoogle = false;\n public shouldShowFederatedSignIn = false;\n\n // translated texts\n public orText: string;\n public signInAmazonText: string;\n public signInAppleText: string;\n public signInFacebookText: string;\n public signInGoogleText: string;\n\n constructor(private authenticator: AuthenticatorService) {}\n\n ngOnInit(): void {\n const socialProviders = this.authenticator.context?.config?.socialProviders;\n\n this.setFederatedTexts();\n this.includeAmazon = socialProviders?.includes('amazon');\n this.includeApple = socialProviders?.includes('apple');\n this.includeGoogle = socialProviders?.includes('google');\n this.includeFacebook = socialProviders?.includes('facebook');\n\n this.shouldShowFederatedSignIn =\n this.includeAmazon ||\n this.includeApple ||\n this.includeFacebook ||\n this.includeGoogle;\n }\n\n private setFederatedTexts() {\n const { route } = this.authenticator;\n\n this.orText = getOrText();\n this.signInAmazonText = getSignInWithFederationText(route, 'amazon');\n this.signInAppleText = getSignInWithFederationText(route, 'apple');\n this.signInFacebookText = getSignInWithFederationText(route, 'facebook');\n this.signInGoogleText = getSignInWithFederationText(route, 'google');\n }\n}\n","<div\n class=\"amplify-flex federated-sign-in-container\"\n *ngIf=\"shouldShowFederatedSignIn\"\n data-orientation=\"horizontal\"\n data-size=\"small\"\n>\n <amplify-federated-sign-in-button\n *ngIf=\"includeAmazon\"\n [text]=\"signInAmazonText\"\n [provider]=\"FederatedProviders.Amazon\"\n >\n <svg\n aria-label=\"Amazon icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 248 268\"\n >\n <path\n d=\"M139.056521,147.024612 C133.548808,156.744524 124.782731,162.726926 115.087401,162.726926 C101.790721,162.726926 93.9937779,152.612964 93.9937779,137.68681 C93.9937779,108.224571 120.447551,102.879017 145.533369,102.879017 L145.533369,110.365976 C145.533369,123.831358 145.876354,135.063787 139.056521,147.024612 M207.206992,162.579655 C209.400505,165.692256 209.887066,169.437725 207.063416,171.770186 C199.996315,177.653081 187.429476,188.590967 180.513926,194.716661 L180.46208,194.621133 C178.176838,196.663031 174.862638,196.810303 172.27828,195.445057 C160.780281,185.9162 158.686473,181.494078 152.405048,172.403055 C133.405233,191.751331 119.909143,197.534719 95.309886,197.534719 C66.1281801,197.534719 43.4791563,179.599451 43.4791563,143.669212 C43.4791563,115.616003 58.6782107,96.5105248 80.4019706,87.1727225 C99.2063636,78.9096034 125.464714,77.4528107 145.533369,75.1641337 L145.533369,70.694248 C145.533369,62.4749122 146.167493,52.7510201 141.297893,45.6541312 C137.110277,39.2856386 129.018206,36.6586354 121.859376,36.6586354 C108.658413,36.6586354 96.9171331,43.4171982 94.0416364,57.4199213 C93.4593582,60.532522 91.1701278,63.5933787 88.003492,63.7406501 L54.4387473,60.1424518 C51.6150972,59.5095829 48.4484614,57.2248862 49.2740201,52.8982915 C56.9712583,12.2553679 93.7983558,0 126.732964,0 C143.587124,0 165.606011,4.47386604 178.902691,17.2148315 C195.760839,32.917146 194.149604,53.8694866 194.149604,76.6726704 L194.149604,130.542157 C194.149604,146.734049 200.87372,153.830938 207.206992,162.579655 Z M233.826346,208.038962 C230.467669,203.683255 211.550709,205.9821 203.056405,206.998432 C200.470662,207.321077 200.076227,205.042397 202.406981,203.404973 C217.475208,192.664928 242.201125,195.766353 245.081698,199.363845 C247.966255,202.981502 244.336653,228.071183 230.172839,240.049379 C228.001452,241.888455 225.929671,240.904388 226.89783,238.468418 C230.077218,230.430525 237.204944,212.418868 233.826346,208.038962 Z M126.768855,264 C74.0234043,264 42.0764048,241.955028 17.7852554,217.541992 C12.9733903,212.705982 6.71799208,206.295994 3.31151296,200.690918 C1.90227474,198.372135 5.59096074,195.021875 8.0442063,196.84375 C38.2390146,219.267578 82.1011654,239.538304 125.529506,239.538304 C154.819967,239.538304 191.046475,227.469543 220.66851,214.867659 C225.146771,212.966167 225.146771,219.180222 224.511585,221.060516 C224.183264,222.03242 209.514625,236.221149 189.247207,247.047411 C170.304273,257.166172 146.397132,264 126.768855,264 Z\"\n fill=\"#FF9900\"\n ></path>\n </svg>\n\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInAmazonText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeApple\"\n [provider]=\"FederatedProviders.Apple\"\n >\n <svg\n aria-label=\"Apple icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n fill=\"#000\"\n preserveAspectRatio=\"xMidYMid\"\n stroke=\"#000\"\n strokeWidth=\"0\"\n viewBox=\"0 0 1024 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M747.4 535.7c-.4-68.2 30.5-119.6 92.9-157.5-34.9-50-87.7-77.5-157.3-82.8-65.9-5.2-138 38.4-164.4 38.4-27.9 0-91.7-36.6-141.9-36.6C273.1 298.8 163 379.8 163 544.6c0 48.7 8.9 99 26.7 150.8 23.8 68.2 109.6 235.3 199.1 232.6 46.8-1.1 79.9-33.2 140.8-33.2 59.1 0 89.7 33.2 141.9 33.2 90.3-1.3 167.9-153.2 190.5-221.6-121.1-57.1-114.6-167.2-114.6-170.7zm-105.1-305c50.7-60.2 46.1-115 44.6-134.7-44.8 2.6-96.6 30.5-126.1 64.8-32.5 36.8-51.6 82.3-47.5 133.6 48.4 3.7 92.6-21.2 129-63.7z\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInAppleText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeFacebook\"\n [text]=\"signInFacebookText\"\n [provider]=\"FederatedProviders.Facebook\"\n >\n <svg\n aria-label=\"Facebook icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 279 538\"\n >\n <path\n d=\"M82.3409742,538 L82.3409742,292.936652 L0,292.936652 L0,196.990154 L82.2410458,196.990154 L82.2410458,126.4295 C82.2410458,44.575144 132.205229,0 205.252865,0 C240.227794,0 270.306232,2.59855099 279,3.79788222 L279,89.2502322 L228.536175,89.2502322 C188.964542,89.2502322 181.270057,108.139699 181.270057,135.824262 L181.270057,196.89021 L276.202006,196.89021 L263.810888,292.836708 L181.16913,292.836708 L181.16913,538 L82.3409742,538 Z\"\n fill=\"#1877F2\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInFacebookText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <amplify-federated-sign-in-button\n *ngIf=\"includeGoogle\"\n [provider]=\"FederatedProviders.Google\"\n >\n <svg\n aria-label=\"Google icon\"\n class=\"amplify-icon federated-sign-in-icon\"\n viewBox=\"0 0 256 262\"\n xmlns=\"http://www.w3.org/2000/svg\"\n preserveAspectRatio=\"xMidYMid\"\n >\n <path\n d=\"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\"\n fill=\"#4285F4\"\n ></path>\n <path\n d=\"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\"\n fill=\"#34A853\"\n ></path>\n <path\n d=\"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\"\n fill=\"#FBBC05\"\n ></path>\n <path\n d=\"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\"\n fill=\"#EB4335\"\n ></path>\n </svg>\n <p class=\"amplify-text amplify-authenticator__federated-text\">\n {{ signInGoogleText }}\n </p>\n </amplify-federated-sign-in-button>\n\n <hr\n class=\"amplify-divider amplify-divider--label amplify-divider--small\"\n aria-orientation=\"horizontal\"\n data-size=\"small\"\n [attr.data-label]=\"orText\"\n />\n</div>\n","import { Component, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport {\n authenticatorTextUtil,\n getFormDataFromEvent,\n FormFieldsArray,\n} from '@aws-amplify/ui';\n\nconst { getForgotPasswordText, getSignInText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-sign-in',\n templateUrl: './sign-in.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class SignInComponent {\n @HostBinding('attr.data-amplify-authenticator-signin') dataAttr = '';\n\n public forgotPasswordText = getForgotPasswordText();\n public signInButtonText = getSignInText();\n public sortedFormFields: FormFieldsArray;\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<amplify-slot name=\"sign-in-header\" [context]=\"context\"></amplify-slot>\n\n<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <amplify-federated-sign-in></amplify-federated-sign-in>\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n style=\"flex-direction: column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <legend class=\"amplify-visually-hidden\">Sign in</legend>\n <amplify-base-form-fields route=\"signIn\"></amplify-base-form-fields>\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ signInButtonText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n</form>\n\n<amplify-slot name=\"sign-in-footer\" [context]=\"context\">\n <div data-amplify-footer>\n <button\n amplify-button\n fontWeight=\"normal\"\n size=\"small\"\n variation=\"link\"\n fullWidth=\"true\"\n (click)=\"authenticator.toForgotPassword()\"\n >\n {{ forgotPasswordText }}\n </button>\n </div>\n</amplify-slot>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'amplify-sign-up-form-fields',\n templateUrl: './sign-up-form-fields.component.html',\n})\nexport class SignUpFormFieldsComponent {}\n","<div class=\"amplify-flex amplify-authenticator__column\" data-amplify-fieldset>\n <amplify-base-form-fields route=\"signUp\"></amplify-base-form-fields>\n</div>\n","import { Component, HostBinding } from '@angular/core';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getFormDataFromEvent, authenticatorTextUtil } from '@aws-amplify/ui';\n\nconst { getCreateAccountText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-sign-up',\n templateUrl: './sign-up.component.html',\n})\nexport class SignUpComponent {\n @HostBinding('attr.data-amplify-authenticator-signup') dataAttr = '';\n\n // translated texts\n public createAccountText = getCreateAccountText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n onInput(event: Event): void {\n const { checked, name, type, value } = <HTMLInputElement>event.target;\n const isUncheckedCheckbox = type === 'checkbox' && !checked;\n\n this.authenticator.updateForm({\n name,\n value: isUncheckedCheckbox ? undefined : value,\n });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<amplify-slot name=\"sign-up-header\" [context]=\"context\"></amplify-slot>\n\n<form data-amplify-form (submit)=\"onSubmit($event)\" (input)=\"onInput($event)\">\n <amplify-federated-sign-in></amplify-federated-sign-in>\n <div class=\"amplify-flex amplify-authenticator__column\">\n <div class=\"amplify-flex amplify-authenticator__column\">\n <amplify-slot name=\"sign-up-form-fields\" [context]=\"context\">\n <amplify-sign-up-form-fields></amplify-sign-up-form-fields>\n </amplify-slot>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </div>\n\n <amplify-slot name=\"sign-up-button\" [context]=\"context\">\n <button\n [isDisabled]=\"\n authenticator.isPending || authenticator.hasValidationErrors\n \"\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n >\n {{ createAccountText }}\n </button>\n </amplify-slot>\n </div>\n</form>\n\n<amplify-slot name=\"sign-up-footer\" [context]=\"context\"> </amplify-slot>\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n selector: 'amplify-tab-item',\n templateUrl: './tab-item.component.html',\n})\nexport class TabItemComponent {\n @Input() title: string;\n @Input() active = false;\n @Input() id: string;\n @Input() labelledById: string;\n @Input() tabIndex: number;\n @HostBinding('style.display') display = 'block'; // emulate div behavior\n}\n","<div\n role=\"tabpanel\"\n class=\"amplify-tabs__panel\"\n [class]=\"active ? 'amplify-tabs__panel--active' : ''\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"labelledById\"\n [attr.tabindex]=\"tabIndex\"\n>\n <ng-content *ngIf=\"active\"></ng-content>\n</div>\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { nanoid } from 'nanoid';\nimport { TabItemComponent } from '../tab-item/tab-item.component';\n\n@Component({\n selector: 'amplify-tabs',\n templateUrl: './tabs.component.html',\n})\nexport class TabsComponent implements AfterContentInit {\n @ContentChildren(TabItemComponent) tabs: QueryList<TabItemComponent>;\n @Output() tabChange = new EventEmitter();\n\n ngAfterContentInit(): void {\n // assign ids\n this.tabs.forEach((tab, index) => {\n tab.id = `tab-${nanoid(12)}-panel-${index}`;\n tab.labelledById = `tab-${nanoid(12)}-tab-${index}`;\n });\n\n // find active tab\n // TODO(enhancement): more declarative way for choosing the initial tab to render\n const activeTabs = this.tabs.filter((tab) => tab.active);\n\n // set active tab\n if (activeTabs.length !== 1) {\n this.selectTab(this.tabs.first);\n }\n }\n\n selectTab(tab: TabItemComponent): void {\n this.tabs.forEach((tab) => {\n tab.active = false;\n });\n tab.active = true;\n }\n\n handleTabClick(tab: TabItemComponent): void {\n if (tab.active) return; // don't do anything if clicks the current active tab\n this.tabChange.emit();\n this.selectTab(tab);\n }\n}\n","<div class=\"amplify-tabs\">\n <div\n class=\"amplify-tabs__list amplify-tabs__list--top amplify-tabs__list--equal\"\n role=\"tablist\"\n >\n <button\n *ngFor=\"let tab of tabs\"\n class=\"amplify-tabs__item\"\n role=\"tab\"\n [id]=\"tab.labelledById\"\n [tabindex]=\"tab.active ? '0' : '-1'\"\n [attr.aria-selected]=\"tab.active\"\n [attr.aria-controls]=\"tab.id\"\n [class]=\"tab.active ? 'amplify-tabs__item--active' : ''\"\n (click)=\"handleTabClick(tab)\"\n >\n {{ tab.title }}\n </button>\n </div>\n</div>\n\n<ng-content></ng-content>\n","import { defaultFormFieldOptions } from '@aws-amplify/ui';\nimport { AttributeInfoProvider } from './types';\n\nexport const getAttributeMap: AttributeInfoProvider = () =>\n defaultFormFieldOptions;\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n getActorState,\n getFormDataFromEvent,\n SignInState,\n translate,\n authenticatorTextUtil,\n UnverifiedUserAttributes,\n censorContactMethod,\n ContactMethod,\n} from '@aws-amplify/ui';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { getAttributeMap } from '../../../../common';\nimport { nanoid } from 'nanoid';\n\nconst { getSkipText, getVerifyText, getAccountRecoveryInfoText } =\n authenticatorTextUtil;\n@Component({\n selector: 'amplify-verify-user',\n templateUrl: './verify-user.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class VerifyUserComponent implements OnInit {\n @HostBinding('attr.data-amplify-authenticator-verifyuser') dataAttr = '';\n @Input() public headerText = getAccountRecoveryInfoText();\n\n public unverifiedUserAttributes = {};\n public labelId = nanoid(12);\n\n // translated texts\n public skipText = getSkipText();\n public verifyText = getVerifyText();\n\n constructor(public authenticator: AuthenticatorService) {}\n\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n ngOnInit(): void {\n const actorState = getActorState(\n this.authenticator.authState\n ) as SignInState;\n this.unverifiedUserAttributes = actorState.context.unverifiedUserAttributes;\n }\n\n getLabel(attr: keyof UnverifiedUserAttributes, value: string): string {\n const attributeMap = getAttributeMap();\n const { label } = attributeMap[attr];\n const translatedTypeLabel = translate(label);\n const censoredAttributeValue = censorContactMethod(\n label as ContactMethod,\n value\n );\n return `${translatedTypeLabel}: ${censoredAttributeValue}`;\n }\n\n onInput(event: Event): void {\n event.preventDefault();\n const { name, value } = <HTMLInputElement>event.target;\n this.authenticator.updateForm({ name, value });\n }\n\n onSubmit(event: Event): void {\n event.preventDefault();\n this.authenticator.submitForm(getFormDataFromEvent(event));\n }\n}\n","<form data-amplify-form (input)=\"onInput($event)\" (submit)=\"onSubmit($event)\">\n <fieldset\n class=\"amplify-flex amplify-authenticator__column\"\n data-amplify-fieldset\n [disabled]=\"authenticator.isPending\"\n >\n <amplify-slot name=\"verify-user-header\" [context]=\"context\">\n <h3 class=\"amplify-heading amplify-heading--3\">{{ this.headerText }}</h3>\n </amplify-slot>\n\n <div\n *ngFor=\"\n let unverifiedUserAttribute of unverifiedUserAttributes | keyvalue\n let i = index;\n \"\n >\n <input\n name=\"unverifiedAttr\"\n type=\"radio\"\n [value]=\"unverifiedUserAttribute.key\"\n [id]=\"labelId\"\n [checked]=\"i === 0\"\n />\n <label [for]=\"labelId\">{{\n getLabel(unverifiedUserAttribute.key, unverifiedUserAttribute.value)\n }}</label>\n </div>\n\n <button\n amplify-button\n variation=\"primary\"\n fullWidth=\"true\"\n type=\"submit\"\n [isDisabled]=\"authenticator.isPending\"\n >\n {{ verifyText }}\n </button>\n\n <button\n amplify-button\n size=\"small\"\n variation=\"link\"\n fontWeight=\"normal\"\n fullWidth=\"true\"\n (click)=\"authenticator.skipVerification()\"\n >\n {{ skipText }}\n </button>\n\n <amplify-error *ngIf=\"authenticator.error\">\n {{ authenticator.error }}\n </amplify-error>\n </fieldset>\n <amplify-slot name=\"verify-user-footer\" [context]=\"context\"> </amplify-slot>\n</form>\n","import {\n AfterContentInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AuthenticatorMachineOptions,\n authenticatorTextUtil,\n setUserAgent,\n SocialProvider,\n} from '@aws-amplify/ui';\nimport { AmplifySlotDirective } from '../../../../utilities/amplify-slot/amplify-slot.directive';\nimport { CustomComponentsService } from '../../../../services/custom-components.service';\nimport { AuthenticatorService } from '../../../../services/authenticator.service';\nimport { VERSION } from '../../../../../version';\n\nconst { getSignInTabText, getSignUpTabText } = authenticatorTextUtil;\n\n@Component({\n selector: 'amplify-authenticator',\n templateUrl: './authenticator.component.html',\n providers: [CustomComponentsService], // make sure custom components are scoped to this authenticator only\n encapsulation: ViewEncapsulation.None,\n})\nexport class AuthenticatorComponent\n implements OnInit, AfterContentInit, OnDestroy\n{\n @Input() formFields: AuthenticatorMachineOptions['formFields'];\n @Input() initialState: AuthenticatorMachineOptions['initialState'];\n @Input() loginMechanisms: AuthenticatorMachineOptions['loginMechanisms'];\n @Input() services: AuthenticatorMachineOptions['services'];\n @Input() signUpAttributes: AuthenticatorMachineOptions['signUpAttributes'];\n @Input() socialProviders: SocialProvider[];\n @Input() variation: 'default' | 'modal';\n @Input() hideSignUp: boolean;\n\n @ContentChildren(AmplifySlotDirective)\n private customComponentQuery: QueryList<AmplifySlotDirective> = null;\n\n // translated texts\n public signInTitle = getSignInTabText();\n public signUpTitle = getSignUpTabText();\n\n private hasInitialized = false;\n private isHandlingHubEvent = false;\n private unsubscribeMachine: () => void;\n private clearUserAgent: () => void;\n\n constructor(\n private authenticator: AuthenticatorService,\n private contextService: CustomComponentsService,\n private changeDetector: ChangeDetectorRef\n ) {}\n\n // context passed to \"authenticated\" slot\n public get context(): AuthenticatorService['slotContext'] {\n return this.authenticator.slotContext;\n }\n\n public get route(): AuthenticatorService['route'] {\n return this.authenticator.route;\n }\n\n ngOnInit(): void {\n const {\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n formFields,\n } = this;\n\n this.clearUserAgent = setUserAgent({\n componentName: 'Authenticator',\n packageName: 'angular',\n version: VERSION,\n });\n\n const { initializeMachine } = this.authenticator;\n\n this.authenticator.hubSubject.subscribe(() => {\n /*\n * Hub events aren't properly caught by Angular, because they are\n * synchronous events. Angular tracks async network events and\n * html events, but not synchronous events like hub.\n *\n * On any notable hub events, we run change detection manually.\n */\n this.changeDetector.detectChanges();\n\n /*\n * Hub events that we handle can lead to multiple state changes:\n * e.g. `authenticated` -> `signOut` -> initialState.\n *\n * We want to ensure change detection runs all the way, until\n * we reach back to the initial state. Setting the below flag\n * to true to until we reach initial state.\n */\n this.isHandlingHubEvent = true;\n });\n\n /**\n * Subscribes to state machine changes and sends INIT event\n * once machine reaches 'setup' state.\n */\n this.unsubscribeMachine = this.authenticator.subscribe(() => {\n const { route } = this.authenticator;\n\n if (this.isHandlingHubEvent) {\n this.changeDetector.detectChanges();\n\n const initialStateWithDefault = initialState ?? 'signIn';\n\n // We can stop manual change detection if we're back to the initial state\n if (route === initialStateWithDefault) {\n this.isHandlingHubEvent = false;\n }\n }\n\n if (!this.hasInitialized && route === 'setup') {\n initializeMachine({\n initialState,\n loginMechanisms,\n services,\n signUpAttributes,\n socialProviders,\n formFields,\n });\n\n this.hasInitialized = true;\n }\n }).unsubscribe;\n\n /**\n * handling translations after content init, because authenticator and its\n * translations might be initialized before the main app's `ngOnInit` is run.\n */\n this.signInTitle = getSignInTabText();\n this.signUpTitle = getSignUpTabText();\n }\n\n /**\n * Lifecycle Methods\n */\n ngAfterContentInit(): void {\n this.contextService.customComponents = this.mapCustomComponents(\n this.customComponentQuery\n );\n }\n\n ngOnDestroy(): void {\n this.clearUserAgent();\n if (this.unsubscribeMachine) this.unsubscribeMachine();\n }\n\n /**\n * Class Functions\n */\n public onTabChange(): void {\n const { route } = this.authenticator;\n if (route === 'signIn') {\n this.authenticator.toSignUp();\n } else {\n this.authenticator.toSignIn();\n }\n }\n\n public hasTabs(): boolean {\n const { route } = this.authenticator;\n return route === 'signIn' || route === 'signUp';\n }\n\n public hasRouteComponent(): boolean {\n const { route } = this.authenticator;\n\n switch (route) {\n case 'authenticated':\n case 'idle':\n case 'setup':\n case 'signOut':\n case 'transition':\n return false;\n default:\n return true;\n }\n }\n\n private mapCustomComponents(\n componentQuery: QueryList<AmplifySlotDirective>\n ): Record<string, TemplateRef<unknown>> {\n if (!componentQuery) return {};\n const customComponents: Record<string, TemplateRef<unknown>> = {};\n componentQuery.forEach((component) => {\n customComponents[component.name] = component.template;\n });\n\n return customComponents;\n }\n}\n","<div\n data-amplify-authenticator\n [attr.data-variation]=\"variation\"\n *ngIf=\"hasRouteComponent()\"\n>\n <div data-amplify-container>\n <amplify-slot name=\"header\" [context]=\"context\"></amplify-slot>\n <div\n data-amplify-router\n [attr.data-amplify-router-content]=\"hasTabs() ? undefined : ''\"\n >\n <amplify-tabs\n (tabChange)=\"onTabChange()\"\n *ngIf=\"(route === 'signIn' || route === 'signUp') && !hideSignUp\"\n >\n <amplify-tab-item\n [title]=\"signInTitle\"\n [active]=\"route === 'signIn'\"\n data-amplify-router-content\n >\n <!-- signIn component -->\n <amplify-slot\n name=\"sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'signIn'\"\n >\n <amplify-sign-in></amplify-sign-in>\n </amplify-slot>\n </amplify-tab-item>\n <amplify-tab-item\n [title]=\"signUpTitle\"\n [active]=\"route === 'signUp'\"\n data-amplify-router-content\n >\n <!-- signUp component -->\n <amplify-slot\n name=\"sign-up\"\n [context]=\"context\"\n *ngIf=\"route === 'signUp'\"\n >\n <amplify-sign-up></amplify-sign-up>\n </amplify-slot>\n </amplify-tab-item>\n </amplify-tabs>\n\n <amplify-slot\n name=\"sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'signIn' && hideSignUp\"\n >\n <amplify-sign-in></amplify-sign-in>\n </amplify-slot>\n\n <!-- confirmSignUp content -->\n <amplify-slot\n name=\"confirm-sign-up\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmSignUp'\"\n >\n <amplify-confirm-sign-up></amplify-confirm-sign-up>\n </amplify-slot>\n\n <!-- confirmSignIn content -->\n <amplify-slot\n name=\"confirm-sign-in\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmSignIn'\"\n >\n <amplify-confirm-sign-in></amplify-confirm-sign-in>\n </amplify-slot>\n\n <!-- setupTotp content -->\n <amplify-slot\n name=\"setup-totp\"\n [context]=\"context\"\n *ngIf=\"route === 'setupTotp'\"\n >\n <amplify-setup-totp></amplify-setup-totp>\n </amplify-slot>\n\n <!-- forceNewPassword content -->\n <amplify-slot\n name=\"force-new-password\"\n [context]=\"context\"\n *ngIf=\"route === 'forceNewPassword'\"\n >\n <amplify-force-new-password></amplify-force-new-password>\n </amplify-slot>\n\n <!-- forgotPassword content -->\n <amplify-slot\n name=\"forgot-password\"\n [context]=\"context\"\n *ngIf=\"route === 'forgotPassword'\"\n >\n <amplify-forgot-password></amplify-forgot-password>\n </amplify-slot>\n\n <!-- confirmResetPassword content -->\n <amplify-slot\n name=\"confirm-reset-password\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmResetPassword'\"\n >\n <amplify-confirm-reset-password></amplify-confirm-reset-password>\n </amplify-slot>\n\n <!-- verifyUser content -->\n <amplify-slot\n name=\"verify-user\"\n [context]=\"context\"\n *ngIf=\"route === 'verifyUser'\"\n >\n <amplify-verify-user></amplify-verify-user>\n </amplify-slot>\n\n <!-- confirmVerifyUser content -->\n <amplify-slot\n name=\"confirm-verify-user\"\n [context]=\"context\"\n *ngIf=\"route === 'confirmVerifyUser'\"\n >\n <amplify-confirm-verify-user></amplify-confirm-verify-user>\n </amplify-slot>\n </div>\n\n <amplify-slot name=\"footer\" [context]=\"context\"></amplify-slot>\n </div>\n</div>\n\n<!-- signedIn content is rendered outside authenticator so it's not styled by authenticator -->\n<amplify-slot\n name=\"authenticated\"\n [context]=\"context\"\n *ngIf=\"route === 'authenticated'\"\n>\n <ng-content></ng-content>\n</amplify-slot>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'amplify-checkbox',\n templateUrl: './checkbox.component.html',\n})\nexport class CheckboxComponent implements OnInit {\n @Input() defaultChecked = false;\n @Input() errorMessage: string;\n @Input() hasError = false;\n @Input() label: string;\n @Input() name: string;\n @Input() value: string;\n\n public isChecked = false;\n\n ngOnInit(): void {\n if (this.defaultChecked) {\n this.isChecked = true;\n }\n }\n\n handleClick(): void {\n this.isChecked = !this.isChecked;\n }\n}\n","<div class=\"amplify-flex amplify-field amplify-checkboxfield\">\n <label class=\"amplify-flex amplify-checkbox\">\n <span class=\"amplify-visually-hidden\">\n <input\n (click)=\"handleClick()\"\n class=\"\n amplify-input\n amplify-field-group__control\n amplify-checkbox__input\n \"\n aria-invalid=\"false\"\n type=\"checkbox\"\n [name]=\"name\"\n [value]=\"value\"\n />\n </span>\n <span\n class=\"amplify-flex amplify-checkbox__button\"\n aria-hidden=\"true\"\n data-focus=\"false\"\n [ngClass]=\"{\n 'amplify-checkbox__button--error': hasError\n }\"\n [attr.data-error]=\"hasError\"\n [attr.data-checked]=\"isChecked\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"amplify-icon amplify-checkbox__icon\"\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n [attr.data-checked]=\"isChecked\"\n [ngClass]=\"{\n 'amplify-checkbox__icon--checked': isChecked\n }\"\n >\n <path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"></path>\n </svg>\n </span>\n <span class=\"amplify-text amplify-checkbox__label\">\n <ng-content></ng-content>\n </span>\n </label>\n <p *ngIf=\"hasError\" class=\"amplify-text amplify-field__error-message\">\n {{ errorMessage }}\n </p>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/**\n * Note: Angular components and directives inside module files has to be imported directly.\n *\n * Related: https://github.com/ng-packagr/ng-packagr/issues/567\n */\nimport { AuthenticatorComponent } from './components/authenticator/authenticator.component';\nimport { ConfirmResetPasswordComponent } from './components/confirm-reset-password/amplify-confirm-reset-password.component';\nimport { ConfirmSignInComponent } from './components/confirm-sign-in/confirm-sign-in.component';\nimport { ConfirmSignUpComponent } from './components/confirm-sign-up/confirm-sign-up.component';\nimport { ConfirmVerifyUserComponent } from './components/confirm-verify-user/amplify-confirm-verify-user.component';\nimport { FederatedSignInButtonComponent } from './components/federated-sign-in-button/federated-sign-in-button.component';\nimport { FederatedSignInComponent } from './components/federated-sign-in/federated-sign-in.component';\nimport { ForceNewPasswordComponent } from './components/force-new-password/force-new-password.component';\nimport { ForceNewPasswordFormFieldsComponent } from './components/force-new-password/force-new-password-form-fields/force-new-password-form-fields.component';\nimport { FormFieldComponent } from './components/form-field/form-field.component';\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\nimport { SetupTotpComponent } from './components/setup-totp/setup-totp.component';\nimport { SignInComponent } from './components/sign-in/sign-in.component';\nimport { SignUpComponent } from './components/sign-up/sign-up.component';\nimport { SignUpFormFieldsComponent } from './components/sign-up/sign-up-form-fields/sign-up-form-fields.component';\nimport { VerifyUserComponent } from './components/verify-user/verify-user.component';\nimport { BaseFormFieldsComponent } from './components/base-form-fields/base-form-fields.component';\n\nimport { ButtonComponent } from '../../primitives/button/button.component';\nimport { CheckboxComponent } from '../../primitives/checkbox/checkbox.component';\nimport { ErrorComponent } from '../../primitives/error/error.component';\nimport { PasswordFieldComponent } from '../../primitives/password-field/password-field.component';\nimport { PhoneNumberFieldComponent } from '../../primitives/phone-number-field/phone-number-field.component';\nimport { SelectComponent } from '../../primitives/select/select.component';\nimport { TabItemComponent } from '../../primitives/tab-item/tab-item.component';\nimport { TabsComponent } from '../../primitives/tabs/tabs.component';\nimport { TextFieldComponent } from '../../primitives/text-field/text-field.component';\n\nimport { AmplifySlotComponent } from '../../utilities/amplify-slot/amplify-slot.component';\nimport { AmplifySlotDirective } from '../../utilities/amplify-slot/amplify-slot.directive';\n\n@NgModule({\n declarations: [\n AmplifySlotComponent,\n AmplifySlotDirective,\n AuthenticatorComponent,\n BaseFormFieldsComponent,\n ButtonComponent,\n CheckboxComponent,\n ConfirmResetPasswordComponent,\n ConfirmSignInComponent,\n ConfirmSignUpComponent,\n ConfirmVerifyUserComponent,\n ErrorComponent,\n FederatedSignInButtonComponent,\n FederatedSignInComponent,\n ForceNewPasswordComponent,\n ForceNewPasswordFormFieldsComponent,\n FormFieldComponent,\n PasswordFieldComponent,\n PhoneNumberFieldComponent,\n ForgotPasswordComponent,\n SelectComponent,\n SetupTotpComponent,\n SignInComponent,\n SignUpComponent,\n SignUpFormFieldsComponent,\n TabItemComponent,\n TabsComponent,\n TextFieldComponent,\n VerifyUserComponent,\n ],\n imports: [CommonModule],\n exports: [\n AmplifySlotDirective,\n AuthenticatorComponent,\n CheckboxComponent,\n SignUpFormFieldsComponent,\n ForceNewPasswordFormFieldsComponent,\n TextFieldComponent,\n ],\n})\nexport class AmplifyAuthenticatorModule {}\n","/*\n * Public API Surface of ui-angular\n */\n\n/**\n * Modules\n */\nexport { AmplifyAuthenticatorModule } from './lib/components/authenticator/authenticator.module';\n\n/**\n * Components\n */\nexport * from './lib/components/authenticator/components';\nexport * from './lib/primitives';\n\n/**\n * Helpers\n */\nexport * from './lib/common';\n\n/**\n * Directives\n */\nexport * from './lib/utilities/amplify-slot/amplify-slot.directive';\n\n/**\n * Services\n */\nexport * from './lib/services/custom-components.service';\nexport * from './lib/services/authenticator.service';\n\n/**\n * Re-export public APIs from `@aws-amplify/ui`\n */\nexport { translations } from '@aws-amplify/ui';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["logger","Logger","i1.CustomComponentsService","i1","i2.ButtonComponent","i1.SelectComponent","i1.AuthenticatorService","i3.PasswordFieldComponent","i4.PhoneNumberFieldComponent","i5.TextFieldComponent","i3.FormFieldComponent","getBackToSignInText","getResendCodeText","getSubmitText","getResetYourPasswordText","i3.AmplifySlotComponent","i4.BaseFormFieldsComponent","i5.ButtonComponent","i6.ErrorComponent","getConfirmText","getAccountRecoveryInfoText","getSkipText","i1.BaseFormFieldsComponent","i4.ButtonComponent","i5.ErrorComponent","i6.ForceNewPasswordFormFieldsComponent","i3.FederatedSignInButtonComponent","i7.FederatedSignInComponent","i6.FederatedSignInComponent","i7.SignUpFormFieldsComponent","i2.CustomComponentsService","i3","i4.AmplifySlotComponent","i5.ConfirmResetPasswordComponent","i6.ConfirmSignInComponent","i7.ConfirmSignUpComponent","i8.ConfirmVerifyUserComponent","i9.ForceNewPasswordComponent","i10.ForgotPasswordComponent","i11.SetupTotpComponent","i12.SignInComponent","i13.SignUpComponent","i14.TabItemComponent","i15.TabsComponent","i16.VerifyUserComponent"],"mappings":";;;;;;;;;;;;;;MAKa,oBAAoB,CAAA;AAG/B,IAAA,WAAA,CAAmB,QAA8B,EAAA;AAA9B,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAsB;KAAI;IAErD,IAAa,WAAW,CAAC,SAAiB,EAAA;AACxC,QAAA,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;KACvB;;iHAPU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;iBAC1B,CAAA;kGAMc,WAAW,EAAA,CAAA;sBAAvB,KAAK;;;ACPR;;AAEG;MAIU,uBAAuB,CAAA;AAHpC,IAAA,WAAA,GAAA;AAIU,QAAA,IAAiB,CAAA,iBAAA,GAAqB,EAAE,CAAC;KASlD;AAPC,IAAA,IAAW,gBAAgB,GAAA;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;IAED,IAAW,gBAAgB,CAAC,gBAAkC,EAAA;QAC5D,IAAI,CAAC,iBAAiB,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA,EAAK,gBAAgB,CAAE,CAAC;KAC7E;;oHATU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;2FAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;iBACnB,CAAA;;;ACRM,MAAM,OAAO,GAAG,QAAQ;;ACsB/B,MAAMA,QAAM,GAAG,IAAIC,aAAM,CAAC,eAAe,CAAC,CAAC;AAE3C;;AAEG;MAIU,oBAAoB,CAAA;AAS/B,IAAA,WAAA,GAAA;AAPQ,QAAA,IAAW,CAAA,WAAA,GAAe,aAAa,CAAC;AAQ9C,QAAA,MAAM,OAAO,GAAG,0BAA0B,EAAE,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;QAE/C,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;AAED;;AAEG;AAEH,IAAA,IAAW,KAAK,GAAA;;QACd,OAAO,SAAS,CAAC,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,CAAC,CAAC;KACvC;AAED,IAAA,IAAW,mBAAmB,GAAA;;AAC5B,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC;KAC1C;AAED,IAAA,IAAW,SAAS,GAAA;;AAClB,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,CAAC;KAChC;AAED,IAAA,IAAW,KAAK,GAAA;;AACd,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,CAAC;KAC5B;AAED,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAW,IAAI,GAAA;;AACb,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAC;KAC3B;AAED,IAAA,IAAW,QAAQ,GAAA;;AACjB,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,CAAC;KAC/B;AAED,IAAA,IAAW,gBAAgB,GAAA;;AACzB,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,CAAC;KACvC;AAED,IAAA,IAAW,mBAAmB,GAAA;;AAC5B,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC;KAC1C;AAED,IAAA,IAAW,cAAc,GAAA;;AACvB,QAAA,OAAO,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,cAAc,CAAC;KACrC;AAED;;AAEG;AAEH,IAAA,IAAW,iBAAiB,GAAA;AAC1B,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;KACvC;AAED,IAAA,IAAW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;KAChC;AAED,IAAA,IAAW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;KAChC;AAED,IAAA,IAAW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;KAChC;AAED,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;KAC7B;AAED,IAAA,IAAW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;KAChC;AAED;;AAEG;AAEH,IAAA,IAAW,iBAAiB,GAAA;AAC1B,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;KACvC;AAED,IAAA,IAAW,gBAAgB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;KACtC;AAED,IAAA,IAAW,QAAQ,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC9B;AAED,IAAA,IAAW,QAAQ,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC9B;AAED,IAAA,IAAW,gBAAgB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;KACtC;AAED;;AAEG;;AAGH,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;;AAGD,IAAA,IAAW,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;;AAGD,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;KAChC;;AAGD,IAAA,IAAW,WAAW,GAAA;QAGpB,OACK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,OAAO,CAAA,EAAA,EACf,SAAS,EAAE,IAAI,CAAC,OAAO,EACvB,CAAA,CAAA;KACH;;AAGD,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAEM,IAAA,SAAS,CAAC,QAAkC,EAAA;AACjD,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACtB,YAAAD,QAAM,CAAC,KAAK,CACV,uHAAuH,CACxH,CAAC;AACH,SAAA;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAK;AACpD,YAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzB,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,YAAY,CAAC;KACrB;IAED,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,oBAAoB;AAAE,YAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;QACvE,IAAI,IAAI,CAAC,eAAe;YAAE,IAAI,CAAC,eAAe,EAAE,CAAC;KAClD;;AAGM,IAAA,IAAI,CAAC,KAAuB,EAAA;AACjC,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9B;IAEa,oBAAoB,GAAA;;YAChC,IAAI;gBACF,MAAM,cAAc,EAAE,CAAC;AACvB,gBAAA,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC;AACpC,aAAA;AAAC,YAAA,OAAO,CAAC,EAAE;AACV,gBAAA,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;AACtC,aAAA;SACF,CAAA,CAAA;AAAA,KAAA;IAEO,gBAAgB,GAAA;AACtB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEvC,MAAM,QAAQ,GAAG,MAAK;AACpB,YAAA,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC;AACrC,SAAC,CAAC;QACF,MAAM,SAAS,GAAG,MAAK;AACrB,YAAA,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;AACvC,SAAC,CAAC;AAEF,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CACpC,IAAI,CAAC,YAAY,EACjB,CAAC,IAAI,EAAE,OAAO,KAAI;YAChB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;AAC9D,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;AAC1B,SAAC,CACF,CAAC;KACH;IAEO,wBAAwB,GAAA;AAC9B,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CACrD,CAAC,KAAc,KAAI;YACjB,MAAM,QAAQ,GAAG,KAAyB,CAAC;AAC3C,YAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC3B,YAAA,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;AAC9B,gBAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;AAC5B,gBAAA,KAAK,EAAE,QAAQ;AAChB,aAAA,CAAC,CAAC;AACL,SAAC,CACF,CAAC;KACH;;iHAlNU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;2FAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;oBACV,UAAU,EAAE,MAAM;iBACnB,CAAA;;;MChBY,oBAAoB,CAAA;AAS/B,IAAA,WAAA,CAAoB,WAAoC,EAAA;AAApC,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;AAL1B,QAAA,IAAO,CAAA,OAAA,GAAG,UAAU,CAAC;AAG5C,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;KAEiC;IAE5D,kBAAkB,GAAA;AAChB,QAAA,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9C,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAExD,QAAA,IAAI,mBAAmB,EAAE;AACvB,YAAA,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;AAC/C,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;AACzB,SAAA;KACF;;iHAnBU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAE,uBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,6JCbjC,sYAYA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDCa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,sYAAA,EAAA,CAAA;2GAIf,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEwB,OAAO,EAAA,CAAA;sBAApC,WAAW;uBAAC,eAAe,CAAA;;;MEXjB,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAKW,QAAA,IAAI,CAAA,IAAA,GAAwB,QAAQ,CAAC;AACrC,QAAA,IAAS,CAAA,SAAA,GAAqB,KAAK,CAAC;AACpC,QAAA,IAAU,CAAA,UAAA,GAAqB,KAAK,CAAC;AACrC,QAAA,IAAI,CAAA,IAAA,GAAiC,QAAQ,CAAC;AAC9C,QAAA,IAAS,CAAA,SAAA,GAAmC,SAAS,CAAC;AACtD,QAAA,IAAU,CAAA,UAAA,GAAkC,QAAQ,CAAC;KAqC/D;AA7BC,IAAA,IAAkC,WAAW,GAAA;QAC3C,OAAO,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,IAAI,CAAC;KACpC;AAED,IAAA,IAA0B,UAAU,GAAA;QAClC,IAAI,SAAS,GAAG,gBAAgB,CAAC;QACjC,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,SAAS,IAAI,CAAoB,iBAAA,EAAA,IAAI,CAAC,SAAS,EAAE,CAAC;AACnD,SAAA;QACD,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,YAAA,SAAS,IAAI,CAAoB,iBAAA,EAAA,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9C,SAAA;QACD,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,SAAS,IAAI,4BAA4B,CAAC;AAC3C,SAAA;QACD,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,SAAS,IAAI,mDAAmD,CAAC;AAClE,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;AACpC,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;AACpC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;KACvC;;4GA1CU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,ueCN5B,6BACA,EAAA,CAAA,CAAA;2FDKa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;8BAIzB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEe,QAAQ,EAAA,CAAA;sBAA5B,WAAW;uBAAC,MAAM,CAAA;gBACiB,aAAa,EAAA,CAAA;sBAAhD,WAAW;uBAAC,qBAAqB,CAAA;gBACH,QAAQ,EAAA,CAAA;sBAAtC,WAAW;uBAAC,gBAAgB,CAAA;gBACO,aAAa,EAAA,CAAA;sBAAhD,WAAW;uBAAC,qBAAqB,CAAA;gBACA,cAAc,EAAA,CAAA;sBAA/C,WAAW;uBAAC,mBAAmB,CAAA;gBAEE,WAAW,EAAA,CAAA;sBAA5C,WAAW;uBAAC,eAAe,CAAA;gBAIF,UAAU,EAAA,CAAA;sBAAnC,WAAW;uBAAC,OAAO,CAAA;;;MEfT,sBAAsB,CAAA;AAJnC,IAAA,WAAA,GAAA;AAKW,QAAA,IAAY,CAAA,YAAA,GAAG,cAAc,CAAC;AAC9B,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QACjB,IAAA,CAAA,OAAO,GAAG,CAAA,cAAA,EAAiB,MAAM,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;AACxC,QAAA,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;AAClB,QAAA,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;AAEX,QAAA,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;AACjB,QAAA,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAChB,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAGnB,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAS,CAAC;AAEvC,QAAA,IAAI,CAAA,IAAA,GAAwB,UAAU,CAAC;AAEvC,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AACrB,QAAA,IAAA,CAAA,uBAAuB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;;AAGrD,QAAA,IAAU,CAAA,UAAA,GAAG,UAAU,CAAC;AACxB,QAAA,IAAkB,CAAA,kBAAA,GAAG,kBAAkB,CAAC;KAShD;IAPC,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;AACvC,QAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,YAAY;AAC9C,cAAE,SAAS,CAAC,eAAe,CAAC;AAC5B,cAAE,SAAS,CAAC,eAAe,CAAC,CAAC;AAC/B,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;KACrD;;mHA7BU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,+WCTnC,miGAuFA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FD9Ea,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,miGAAA,EAAA,CAAA;8BAIzB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACI,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MEfI,eAAe,CAAA;;4GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,6JCN5B,01BAiCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FD3Ba,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,01BAAA,EAAA,CAAA;8BAItB,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;;;MEHK,yBAAyB,CAAA;AAJtC,IAAA,WAAA,GAAA;AAKW,QAAA,IAAY,CAAA,YAAA,GAAG,cAAc,CAAC;AAC9B,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAEjB,IAAA,CAAA,aAAa,GAAG,CAAA,cAAA,EAAiB,MAAM,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;QAC9C,IAAA,CAAA,WAAW,GAAG,CAAA,cAAA,EAAiB,MAAM,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;AAC5C,QAAA,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;AAClB,QAAA,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;AAEX,QAAA,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;AACjB,QAAA,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAEhB,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAKC,QAAA,IAAO,CAAA,OAAA,GAAG,UAAU,CAAC;KAOpD;IAHC,QAAQ,GAAA;;QACN,IAAI,CAAC,sBAAsB,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,YAAY,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,gBAAgB,CAAC;KACrE;;sHAvBU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,2gBCRtC,m6CA6CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,eAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDrCa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;+BACE,4BAA4B,EAAA,QAAA,EAAA,m6CAAA,EAAA,CAAA;8BAI7B,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEwB,OAAO,EAAA,CAAA;sBAApC,WAAW;uBAAC,eAAe,CAAA;;;MElBjB,kBAAkB,CAAA;AAJ/B,IAAA,WAAA,GAAA;AAKW,QAAA,IAAY,CAAA,YAAA,GAAG,cAAc,CAAC;AAC9B,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QACjB,IAAA,CAAA,OAAO,GAAG,CAAA,cAAA,EAAiB,MAAM,CAAC,EAAE,CAAC,CAAA,CAAE,CAAC;AACxC,QAAA,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;AAClB,QAAA,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;AAEX,QAAA,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;AACjB,QAAA,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAEhB,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAIC,QAAA,IAAO,CAAA,OAAA,GAAG,UAAU,CAAC;KACpD;;+GAfY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,mZCP/B,6gBAqBA,EAAA,CAAA,CAAA;2FDda,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,6gBAAA,EAAA,CAAA;8BAIrB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEwB,OAAO,EAAA,CAAA;sBAApC,WAAW;uBAAC,eAAe,CAAA;;;MEPjB,kBAAkB,CAAA;AAQ7B,IAAA,WAAA,CAAoB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAHhD,QAAA,IAAqB,CAAA,qBAAA,GAAG,gBAAgB,CAAC;AACzC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;KAE+B;AAE3D,IAAA,IAAI,eAAe,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;KACnD;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAChD,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAC/C;AAEM,IAAA,MAAM,CAAC,MAAa,EAAA;AACzB,QAAA,MAAM,EAAE,IAAI,EAAE,GAAqB,MAAM,CAAC,MAAM,CAAC;QAEjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;KACzC;IAED,eAAe,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC;KAC3C;IAED,YAAY,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC;KACtC;IAED,QAAQ,GAAA;;QACN,OAAO,CAAA,MAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,IAAG,CAAC,CAAC;KAChC;AAED,IAAA,SAAS,CAAC,MAAc,EAAA;AACtB,QAAA,OAAO,SAAS,CAAS,MAAM,CAAC,CAAC;KAClC;;+GAvCU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,4GCd/B,utDAqDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,UAAA,EAAA,SAAA,EAAA,cAAA,EAAA,OAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,aAAA,EAAA,cAAA,EAAA,OAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,MAAA,EAAA,aAAA,EAAA,cAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,UAAA,EAAA,SAAA,EAAA,cAAA,EAAA,OAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDvCa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,utDAAA,EAAA,CAAA;wGAIrB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;;;AERR;;AAEG;MAKU,uBAAuB,CAAA;AAKlC,IAAA,WAAA,CAAoB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAHzB,QAAA,IAAO,CAAA,OAAA,GAAG,UAAU,CAAC;AAC5C,QAAA,IAAU,CAAA,UAAA,GAAoB,EAAE,CAAC;KAEmB;IAE3D,QAAQ,GAAA;AACN,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;KAC1D;;oHAVU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAH,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,uJCfpC,0LAMA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAI,kBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDSa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;+BACE,0BAA0B,EAAA,QAAA,EAAA,0LAAA,EAAA,CAAA;wGAI3B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACwB,OAAO,EAAA,CAAA;sBAApC,WAAW;uBAAC,eAAe,CAAA;;;MEVjB,cAAc,CAAA;AAJ3B,IAAA,WAAA,GAAA;AAKS,QAAA,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;AACjB,QAAA,IAAA,CAAA,gBAAgB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;KAKtD;IAHQ,KAAK,GAAA;AACV,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;;2GANU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,qDCP3B,wpCAyCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAP,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDlCa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,wpCAAA,EAAA,CAAA;;;AEI3B,MAAM,uBACJO,qBAAmB,qBACnBC,mBAAiB,iBACjBC,eAAa,4BACbC,0BAAwB,GACzB,GAAG,qBAAqB,CAAC;MAMb,6BAA6B,CAAA;AAWxC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAVQ,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AAC5D,QAAA,IAAU,CAAA,UAAA,GAAGA,0BAAwB,EAAE,CAAC;;AAKjD,QAAA,IAAgB,CAAA,gBAAA,GAAGH,qBAAmB,EAAE,CAAC;AACzC,QAAA,IAAc,CAAA,cAAA,GAAGC,mBAAiB,EAAE,CAAC;AACrC,QAAA,IAAU,CAAA,UAAA,GAAGC,eAAa,EAAE,CAAC;KAEsB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;0HA1BU,6BAA6B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAP,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,wMCnB1C,gsCA2CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDxBa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;+BACE,gCAAgC,EAAA,QAAA,EAAA,gsCAAA,EAAA,CAAA;wGAIoB,QAAQ,EAAA,CAAA;sBAArE,WAAW;uBAAC,+CAA+C,CAAA;gBAC5C,UAAU,EAAA,CAAA;sBAAzB,KAAK;;;AEXR,MAAM,kBAAEC,gBAAc,uBAAER,qBAAmB,EAAE,gBAAgB,EAAE,GAC7D,qBAAqB,CAAC;MAMX,sBAAsB,CAAA;AASjC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AARQ,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AAIrE,QAAA,IAAW,CAAA,WAAA,GAAGQ,gBAAc,EAAE,CAAC;AAC/B,QAAA,IAAgB,CAAA,gBAAA,GAAGR,qBAAmB,EAAE,CAAC;KAGU;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IAED,aAAa,GAAA;AACX,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;AAC3C,QAAA,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAkB,CAAC;AAC7D,QAAA,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,CAAC;AACvC,QAAA,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;KACnD;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;mHAnCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,2JCjBnC,4oCAuCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDtBa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,4oCAAA,EAAA,CAAA;wGAI2B,QAAQ,EAAA,CAAA;sBAArE,WAAW;uBAAC,+CAA+C,CAAA;;;AEV9D,MAAM,EACJ,iBAAiB,kBACjBC,gBAAc,EACd,qBAAqB,EACrB,sBAAsB,GACvB,GAAG,qBAAqB,CAAC;MAKb,sBAAsB,CAAA;AASjC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AARQ,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;;AAGrE,QAAA,IAAc,CAAA,cAAA,GAAG,iBAAiB,EAAE,CAAC;AACrC,QAAA,IAAW,CAAA,WAAA,GAAGA,gBAAc,EAAE,CAAC;KAIoB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,IAAW,oBAAoB,GAAA;AAC7B,QAAA,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AACnD,QAAA,OAAO,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;KACnD;AAED,IAAA,IAAW,YAAY,GAAA;AACrB,QAAA,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AACnD,QAAA,OAAO,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;KACpD;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;mHAlCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAb,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,2JClBnC,q3CAiDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FD/Ba,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,q3CAAA,EAAA,CAAA;wGAI2B,QAAQ,EAAA,CAAA;sBAArE,WAAW;uBAAC,+CAA+C,CAAA;;;AEX9D,MAAM,8BAAEE,4BAA0B,eAAEC,aAAW,EAAE,aAAa,EAAE,GAC9D,qBAAqB,CAAC;MAKX,0BAA0B,CAAA;AAUrC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AARtD,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AACE,QAAA,IAAU,CAAA,UAAA,GAAGD,4BAA0B,EAAE,CAAC;;AAGnD,QAAA,IAAQ,CAAA,QAAA,GAAGC,aAAW,EAAE,CAAC;AACzB,QAAA,IAAU,CAAA,UAAA,GAAG,aAAa,EAAE,CAAC;KAGsB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;uHAzBU,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAf,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,yMCdvC,+pCAuCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDzBa,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;+BACE,6BAA6B,EAAA,QAAA,EAAA,+pCAAA,EAAA,CAAA;wGAKvC,QAAQ,EAAA,CAAA;sBADP,WAAW;uBAAC,mDAAmD,CAAA;gBAEhD,UAAU,EAAA,CAAA;sBAAzB,KAAK;;;MEXK,mCAAmC,CAAA;;gIAAnC,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnC,mCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,8ECNhD,gLAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAI,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDGa,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAJ/C,SAAS;+BACE,wCAAwC,EAAA,QAAA,EAAA,gLAAA,EAAA,CAAA;;;AECpD,MAAM,EAAE,qBAAqB,uBAAEX,qBAAmB,EAAE,GAAG,qBAAqB,CAAC;MAMhE,yBAAyB,CAAA;AASpC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAPtD,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AACE,QAAA,IAAU,CAAA,UAAA,GAAG,qBAAqB,EAAE,CAAC;;AAG9C,QAAA,IAAkB,CAAA,kBAAA,GAAG,qBAAqB,EAAE,CAAC;AAC7C,QAAA,IAAgB,CAAA,gBAAA,GAAGA,qBAAmB,EAAE,CAAC;KAEU;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;sHAxBU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,uMCVtC,0qCAmCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAQ,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mCAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDzBa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;+BACE,4BAA4B,EAAA,QAAA,EAAA,0qCAAA,EAAA,CAAA;wGAKtC,QAAQ,EAAA,CAAA;sBADP,WAAW;uBAAC,kDAAkD,CAAA;gBAE/C,UAAU,EAAA,CAAA;sBAAzB,KAAK;;;AELR,MAAM,EAAE,wBAAwB,EAAE,eAAe,uBAAEd,qBAAmB,EAAE,GACtE,qBAAqB,CAAC;MAMX,uBAAuB,CAAA;AASlC,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AARS,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AAC7D,QAAA,IAAU,CAAA,UAAA,GAAG,wBAAwB,EAAE,CAAC;;AAGjD,QAAA,IAAY,CAAA,YAAA,GAAG,eAAe,EAAE,CAAC;AACjC,QAAA,IAAgB,CAAA,gBAAA,GAAGA,qBAAmB,EAAE,CAAC;KAGU;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;oHAxBU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,kMCfpC,6rCA0CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FD3Ba,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,6rCAAA,EAAA,CAAA;wGAI4B,QAAQ,EAAA,CAAA;sBAAtE,WAAW;uBAAC,gDAAgD,CAAA;gBAC7C,UAAU,EAAA,CAAA;sBAAzB,KAAK;;;AEJR,MAAM,MAAM,GAAG,IAAIjB,aAAM,CAAC,WAAW,CAAC,CAAC;AAEvC,MAAM,EACJ,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,GACd,GAAG,qBAAqB,CAAC;MAMb,kBAAkB,CAAA;AAY7B,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAXK,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AAClE,QAAA,IAAU,CAAA,UAAA,GAAG,gBAAgB,EAAE,CAAC;AAChC,QAAA,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;AAClB,QAAA,IAAc,CAAA,cAAA,GAAG,EAAE,CAAC;AACpB,QAAA,IAAa,CAAA,aAAA,GAAG,WAAW,EAAE,CAAC;;AAG9B,QAAA,IAAgB,CAAA,gBAAA,GAAG,mBAAmB,EAAE,CAAC;AACzC,QAAA,IAAW,CAAA,WAAA,GAAG,cAAc,EAAE,CAAC;KAGoB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;IAEK,QAAQ,GAAA;;AACZ,YAAA,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SAC7B,CAAA,CAAA;AAAA,KAAA;IAEK,cAAc,GAAA;;;AAClB,YAAA,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC1E,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,KAAK,CAAkB,CAAC;YAC/D,MAAM,EAAE,UAAU,GAAG,YAAY,EAAE,YAAY,GAAG,QAAQ,EAAE,GAC1D,CAAA,EAAA,GAAA,MAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAV,UAAU,CAAE,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,EAAE,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,EAAE,CAAC;AAElC,YAAA,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YAErC,IAAI;AACF,gBAAA,MAAM,QAAQ,GAAG,cAAc,CAC7B,UAAU,EACV,YAAY,EACZ,IAAI,CAAC,cAAc,CACpB,CAAC;AAEF,gBAAA,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;gBAClD,IAAI,CAAC,YAAY,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AACtD,aAAA;AAAC,YAAA,OAAO,GAAG,EAAE;AACZ,gBAAA,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnB,aAAA;;AACF,KAAA;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;IAED,QAAQ,GAAA;QACN,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACnD,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC;KACtC;;+GA1DU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,mJC3B/B,o7DA6DA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDlCa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;+BACE,oBAAoB,EAAA,QAAA,EAAA,o7DAAA,EAAA,CAAA;wGAI6B,QAAQ,EAAA,CAAA;sBAAlE,WAAW;uBAAC,4CAA4C,CAAA;;;MEpB9C,8BAA8B,CAAA;AAIzC,IAAA,WAAA,CAAoB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAEvD,QAAA,IAAO,CAAA,OAAA,GAAG,MAAW;AACnB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;AACtB,gBAAA,IAAI,EAAE,mBAAmB;AACzB,gBAAA,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AAClC,aAAA,CAAC,CAAC;AACL,SAAC,CAAC;KAPyD;;2HAJhD,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAZ,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,wHCR3C,4RAWA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDHa,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAJ1C,SAAS;+BACE,kCAAkC,EAAA,QAAA,EAAA,4RAAA,EAAA,CAAA;wGAInC,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;AELR,MAAM,EAAE,2BAA2B,EAAE,SAAS,EAAE,GAAG,qBAAqB,CAAC;MAM5D,wBAAwB,CAAA;AAenC,IAAA,WAAA,CAAoB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAdhD,QAAA,IAAkB,CAAA,kBAAA,GAAG,0BAA0B,CAAC;AAChD,QAAA,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AACtB,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AACrB,QAAA,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;AACxB,QAAA,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AACtB,QAAA,IAAyB,CAAA,yBAAA,GAAG,KAAK,CAAC;KASkB;IAE3D,QAAQ,GAAA;;AACN,QAAA,MAAM,eAAe,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,aAAa,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC;QAE5E,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,eAAe,KAAf,IAAA,IAAA,eAAe,KAAf,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,eAAe,CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzD,QAAA,IAAI,CAAC,YAAY,GAAG,eAAe,KAAf,IAAA,IAAA,eAAe,KAAf,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,eAAe,CAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;AACvD,QAAA,IAAI,CAAC,aAAa,GAAG,eAAe,KAAf,IAAA,IAAA,eAAe,KAAf,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,eAAe,CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzD,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,KAAf,IAAA,IAAA,eAAe,KAAf,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,eAAe,CAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE7D,QAAA,IAAI,CAAC,yBAAyB;AAC5B,YAAA,IAAI,CAAC,aAAa;AAClB,gBAAA,IAAI,CAAC,YAAY;AACjB,gBAAA,IAAI,CAAC,eAAe;gBACpB,IAAI,CAAC,aAAa,CAAC;KACtB;IAEO,iBAAiB,GAAA;AACvB,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AAErC,QAAA,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,gBAAgB,GAAG,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACrE,IAAI,CAAC,eAAe,GAAG,2BAA2B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACnE,IAAI,CAAC,kBAAkB,GAAG,2BAA2B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACtE;;qHAzCU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAE,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,iECXrC,u0NA8GA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAoB,8BAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDnGa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;+BACE,2BAA2B,EAAA,QAAA,EAAA,u0NAAA,EAAA,CAAA;;;AEAvC,MAAM,EAAE,qBAAqB,EAAE,aAAa,EAAE,GAAG,qBAAqB,CAAC;MAO1D,eAAe,CAAA;AAO1B,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AANC,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AAE9D,QAAA,IAAkB,CAAA,kBAAA,GAAG,qBAAqB,EAAE,CAAC;AAC7C,QAAA,IAAgB,CAAA,gBAAA,GAAG,aAAa,EAAE,CAAC;KAGgB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;4GAtBU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAApB,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,4ICf5B,0uCA0CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,wBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD3Ba,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,SAAS;+BACE,iBAAiB,EAAA,aAAA,EAEZ,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,0uCAAA,EAAA,CAAA;wGAGkB,QAAQ,EAAA,CAAA;sBAA9D,WAAW;uBAAC,wCAAwC,CAAA;;;MEV1C,yBAAyB,CAAA;;sHAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,mECNtC,sKAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,uBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDGa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;+BACE,6BAA6B,EAAA,QAAA,EAAA,sKAAA,EAAA,CAAA;;;AECzC,MAAM,EAAE,oBAAoB,EAAE,GAAG,qBAAqB,CAAC;MAM1C,eAAe,CAAA;AAM1B,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AALC,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;;AAG9D,QAAA,IAAiB,CAAA,iBAAA,GAAG,oBAAoB,EAAE,CAAC;KAEQ;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACtE,MAAM,mBAAmB,GAAG,IAAI,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC;AAE5D,QAAA,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;YAC5B,IAAI;YACJ,KAAK,EAAE,mBAAmB,GAAG,SAAS,GAAG,KAAK;AAC/C,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;4GAzBU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAhB,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,4ICV5B,gmCAgCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAQ,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAI,wBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDtBa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,gmCAAA,EAAA,CAAA;wGAI4B,QAAQ,EAAA,CAAA;sBAA9D,WAAW;uBAAC,wCAAwC,CAAA;;;MEL1C,gBAAgB,CAAA;AAJ7B,IAAA,WAAA,GAAA;AAMW,QAAA,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;AAIM,QAAA,IAAA,CAAA,OAAO,GAAG,OAAO,CAAC;KACjD;;6GAPY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,+NCN7B,4QAUA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA1B,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDJa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,4QAAA,EAAA,CAAA;8BAInB,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,EAAE,EAAA,CAAA;sBAAV,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACwB,OAAO,EAAA,CAAA;sBAApC,WAAW;uBAAC,eAAe,CAAA;;;MEGjB,aAAa,CAAA;AAJ1B,IAAA,WAAA,GAAA;AAMY,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;KA+B1C;IA7BC,kBAAkB,GAAA;;QAEhB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,KAAI;YAC/B,GAAG,CAAC,EAAE,GAAG,CAAO,IAAA,EAAA,MAAM,CAAC,EAAE,CAAC,CAAA,OAAA,EAAU,KAAK,CAAA,CAAE,CAAC;YAC5C,GAAG,CAAC,YAAY,GAAG,CAAO,IAAA,EAAA,MAAM,CAAC,EAAE,CAAC,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAE,CAAC;AACtD,SAAC,CAAC,CAAC;;;AAIH,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC;;AAGzD,QAAA,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjC,SAAA;KACF;AAED,IAAA,SAAS,CAAC,GAAqB,EAAA;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACxB,YAAA,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;AACrB,SAAC,CAAC,CAAC;AACH,QAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;KACnB;AAED,IAAA,cAAc,CAAC,GAAqB,EAAA;QAClC,IAAI,GAAG,CAAC,MAAM;AAAE,YAAA,OAAO;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;KACrB;;0GAhCU,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;8FAAb,aAAa,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,SAAA,EACP,gBAAgB,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChBnC,omBAsBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDPa,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,omBAAA,EAAA,CAAA;8BAIW,IAAI,EAAA,CAAA;sBAAtC,eAAe;uBAAC,gBAAgB,CAAA;gBACvB,SAAS,EAAA,CAAA;sBAAlB,MAAM;;;MEdI,eAAe,GAA0B,MACpD;;ACiBF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,0BAA0B,EAAE,GAC9D,qBAAqB,CAAC;MAMX,mBAAmB,CAAA;AAW9B,IAAA,WAAA,CAAmB,aAAmC,EAAA;AAAnC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AAVK,QAAA,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;AACzD,QAAA,IAAU,CAAA,UAAA,GAAG,0BAA0B,EAAE,CAAC;AAEnD,QAAA,IAAwB,CAAA,wBAAA,GAAG,EAAE,CAAC;AAC9B,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;;AAGrB,QAAA,IAAQ,CAAA,QAAA,GAAG,WAAW,EAAE,CAAC;AACzB,QAAA,IAAU,CAAA,UAAA,GAAG,aAAa,EAAE,CAAC;KAEsB;AAE1D,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;IAED,QAAQ,GAAA;QACN,MAAM,UAAU,GAAG,aAAa,CAC9B,IAAI,CAAC,aAAa,CAAC,SAAS,CACd,CAAC;QACjB,IAAI,CAAC,wBAAwB,GAAG,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC;KAC7E;IAED,QAAQ,CAAC,IAAoC,EAAE,KAAa,EAAA;AAC1D,QAAA,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AACrC,QAAA,MAAM,mBAAmB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,sBAAsB,GAAG,mBAAmB,CAChD,KAAsB,EACtB,KAAK,CACN,CAAC;AACF,QAAA,OAAO,CAAG,EAAA,mBAAmB,CAAK,EAAA,EAAA,sBAAsB,EAAE,CAAC;KAC5D;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAqB,KAAK,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;KAChD;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5D;;gHA5CU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAG,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,0LC5BhC,wgDAuDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAS,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAQ,eAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,YAAA,EAAA,MAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD3Ba,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,qBAAqB,EAAA,aAAA,EAEhB,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,wgDAAA,EAAA,CAAA;wGAGsB,QAAQ,EAAA,CAAA;sBAAlE,WAAW;uBAAC,4CAA4C,CAAA;gBACzC,UAAU,EAAA,CAAA;sBAAzB,KAAK;;;AEPR,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,qBAAqB,CAAC;MAQxD,sBAAsB,CAAA;AAwBjC,IAAA,WAAA,CACU,aAAmC,EACnC,cAAuC,EACvC,cAAiC,EAAA;AAFjC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;AACnC,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAAyB;AACvC,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAAmB;AAdnC,QAAA,IAAoB,CAAA,oBAAA,GAAoC,IAAI,CAAC;;AAG9D,QAAA,IAAW,CAAA,WAAA,GAAG,gBAAgB,EAAE,CAAC;AACjC,QAAA,IAAW,CAAA,WAAA,GAAG,gBAAgB,EAAE,CAAC;AAEhC,QAAA,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;AACvB,QAAA,IAAkB,CAAA,kBAAA,GAAG,KAAK,CAAC;KAQ/B;;AAGJ,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;KACvC;AAED,IAAA,IAAW,KAAK,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;KACjC;IAED,QAAQ,GAAA;AACN,QAAA,MAAM,EACJ,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,UAAU,GACX,GAAG,IAAI,CAAC;AAET,QAAA,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC;AACjC,YAAA,aAAa,EAAE,eAAe;AAC9B,YAAA,WAAW,EAAE,SAAS;AACtB,YAAA,OAAO,EAAE,OAAO;AACjB,SAAA,CAAC,CAAC;AAEH,QAAA,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAEjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,MAAK;AAC3C;;;;;;AAMG;AACH,YAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;AAEpC;;;;;;;AAOG;AACH,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;AACjC,SAAC,CAAC,CAAC;AAEH;;;AAGG;QACH,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAK;AAC1D,YAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAErC,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,gBAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;gBAEpC,MAAM,uBAAuB,GAAG,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAZ,KAAA,CAAA,GAAA,YAAY,GAAI,QAAQ,CAAC;;gBAGzD,IAAI,KAAK,KAAK,uBAAuB,EAAE;AACrC,oBAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;AACjC,iBAAA;AACF,aAAA;YAED,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,KAAK,KAAK,OAAO,EAAE;AAC7C,gBAAA,iBAAiB,CAAC;oBAChB,YAAY;oBACZ,eAAe;oBACf,QAAQ;oBACR,gBAAgB;oBAChB,eAAe;oBACf,UAAU;AACX,iBAAA,CAAC,CAAC;AAEH,gBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AAC5B,aAAA;SACF,CAAC,CAAC,WAAW,CAAC;AAEf;;;AAGG;AACH,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,CAAC;AACtC,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,EAAE,CAAC;KACvC;AAED;;AAEG;IACH,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAC7D,IAAI,CAAC,oBAAoB,CAC1B,CAAC;KACH;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,kBAAkB;YAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;KACxD;AAED;;AAEG;IACI,WAAW,GAAA;AAChB,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QACrC,IAAI,KAAK,KAAK,QAAQ,EAAE;AACtB,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;AAC/B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;AAC/B,SAAA;KACF;IAEM,OAAO,GAAA;AACZ,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AACrC,QAAA,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ,CAAC;KACjD;IAEM,iBAAiB,GAAA;AACtB,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AAErC,QAAA,QAAQ,KAAK;AACX,YAAA,KAAK,eAAe,CAAC;AACrB,YAAA,KAAK,MAAM,CAAC;AACZ,YAAA,KAAK,OAAO,CAAC;AACb,YAAA,KAAK,SAAS,CAAC;AACf,YAAA,KAAK,YAAY;AACf,gBAAA,OAAO,KAAK,CAAC;AACf,YAAA;AACE,gBAAA,OAAO,IAAI,CAAC;AACf,SAAA;KACF;AAEO,IAAA,mBAAmB,CACzB,cAA+C,EAAA;AAE/C,QAAA,IAAI,CAAC,cAAc;AAAE,YAAA,OAAO,EAAE,CAAC;QAC/B,MAAM,gBAAgB,GAAyC,EAAE,CAAC;AAClE,QAAA,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,KAAI;YACnC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC;AACxD,SAAC,CAAC,CAAC;AAEH,QAAA,OAAO,gBAAgB,CAAC;KACzB;;mHA9KU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAlB,oBAAA,EAAA,EAAA,EAAA,KAAA,EAAAwB,uBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,0SAHtB,CAAC,uBAAuB,CAAC,EAenB,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,oBAAoB,6BC3CvC,kgIA0IA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,6BAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,0BAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,gBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,aAAA,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD3Ga,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;YACE,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,aAEtB,CAAC,uBAAuB,CAAC,EACrB,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,kgIAAA,EAAA,CAAA;2KAK5B,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAGE,oBAAoB,EAAA,CAAA;sBAD3B,eAAe;uBAAC,oBAAoB,CAAA;;;MErC1B,iBAAiB,CAAA;AAJ9B,IAAA,WAAA,GAAA;AAKW,QAAA,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;AAEvB,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAKnB,QAAA,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;KAW1B;IATC,QAAQ,GAAA;QACN,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACvB,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;KAClC;;8GAlBU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,wMCN9B,u5CA+CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAzC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDzCa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,u5CAAA,EAAA,CAAA;8BAInB,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MEoEK,0BAA0B,CAAA;;uHAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,iBAvCnC,oBAAoB;QACpB,oBAAoB;QACpB,sBAAsB;QACtB,uBAAuB;QACvB,eAAe;QACf,iBAAiB;QACjB,6BAA6B;QAC7B,sBAAsB;QACtB,sBAAsB;QACtB,0BAA0B;QAC1B,cAAc;QACd,8BAA8B;QAC9B,wBAAwB;QACxB,yBAAyB;QACzB,mCAAmC;QACnC,kBAAkB;QAClB,sBAAsB;QACtB,yBAAyB;QACzB,uBAAuB;QACvB,eAAe;QACf,kBAAkB;QAClB,eAAe;QACf,eAAe;QACf,yBAAyB;QACzB,gBAAgB;QAChB,aAAa;QACb,kBAAkB;QAClB,mBAAmB,CAAA,EAAA,OAAA,EAAA,CAEX,YAAY,CAAA,EAAA,OAAA,EAAA,CAEpB,oBAAoB;QACpB,sBAAsB;QACtB,iBAAiB;QACjB,yBAAyB;QACzB,mCAAmC;QACnC,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAGT,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YAV3B,YAAY,CAAA,EAAA,CAAA,CAAA;2FAUX,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAzCtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,oBAAoB;wBACpB,sBAAsB;wBACtB,uBAAuB;wBACvB,eAAe;wBACf,iBAAiB;wBACjB,6BAA6B;wBAC7B,sBAAsB;wBACtB,sBAAsB;wBACtB,0BAA0B;wBAC1B,cAAc;wBACd,8BAA8B;wBAC9B,wBAAwB;wBACxB,yBAAyB;wBACzB,mCAAmC;wBACnC,kBAAkB;wBAClB,sBAAsB;wBACtB,yBAAyB;wBACzB,uBAAuB;wBACvB,eAAe;wBACf,kBAAkB;wBAClB,eAAe;wBACf,eAAe;wBACf,yBAAyB;wBACzB,gBAAgB;wBAChB,aAAa;wBACb,kBAAkB;wBAClB,mBAAmB;AACpB,qBAAA;oBACD,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,sBAAsB;wBACtB,iBAAiB;wBACjB,yBAAyB;wBACzB,mCAAmC;wBACnC,kBAAkB;AACnB,qBAAA;iBACF,CAAA;;;AC/ED;;AAEG;;ACFH;;AAEG;;;;"}
|