{ "version": 3, "sources": ["libs/galaxy/input/src/core/core-input.directive.ts", "libs/shared/general/src/lib/validator.ts", "libs/galaxy/input/src/email-input/email-input.component.ts", "libs/galaxy/input/src/email-input/email-input.component.html", "libs/galaxy/input/src/password-input/password-input.component.ts", "libs/galaxy/input/src/password-input/password-input.component.html", "libs/galaxy/input/src/input.module.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account/account.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account/account.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account-list/account-list.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account-list/account-list.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-selector.service.ts", "apps/vendasta-login-center-client/src/app/account-selector/header/header.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/header/header.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account-chooser.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-chooser/account-chooser.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-login/account-login.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-login/account-login.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-logout/account-logout.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-logout/account-logout.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-password-reset/account-password-reset.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-password-reset/account-password-reset.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-request-password-reset/account-request-password-reset.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-request-password-reset/account-request-password-reset.component.html", "apps/vendasta-login-center-client/src/app/account-selector/footer/partner-center-footer.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/footer/partner-center-footer.component.html", "apps/vendasta-login-center-client/src/app/account-selector/account-selector.component.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-selector.component.html", "apps/vendasta-login-center-client/src/app/account-selector/routing.module.ts", "apps/vendasta-login-center-client/src/app/account-selector/account-selector.module.ts"], "sourcesContent": ["import { booleanAttribute, Directive, Input, Pipe, PipeTransform } from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n UntypedFormControl,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { BehaviorSubject, Observable, combineLatest } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, map, mergeMap, tap } from 'rxjs/operators';\nimport {\n GalaxyAsyncInputValidator,\n GalaxyCoreInputInterface,\n GalaxyInputValidator,\n SelectInputOption,\n SelectInputOptionGroupInterface,\n SelectInputOptionInterface,\n} from '../input.interface';\n\n@Directive({\n selector: '[glxyCoreInput]',\n})\nexport class GalaxyCoreInputDirective implements ControlValueAccessor {\n static ASYNC_DEBOUNCE_DELAY = 100;\n\n /** Id of the field */\n @Input() id = '';\n /** Label to display context on what type of text should be entered into the field */\n @Input() label = '';\n /** Placeholder text as an example of what text should be entered into the field */\n @Input() placeholder = '';\n /** The form control for the input. If no form control is passed in, it will create its own */\n @Input() formControl: UntypedFormControl = new UntypedFormControl();\n /** If true, requires the field be filled with text by the user */\n @Input({ transform: booleanAttribute }) required = false;\n /** Whether or not to disable autocompletion for forms */\n @Input({ transform: booleanAttribute }) disableAutoComplete = false;\n /** [Advanced] List of GalaxyInputValidators */\n @Input() validators: GalaxyInputValidator[] = [];\n /** [Advanced] List of GalaxyInputValidators */\n @Input() asyncValidators: GalaxyAsyncInputValidator[] = [];\n /** Controls if the input is disabled */\n @Input({ transform: booleanAttribute }) set disabled(disabled: boolean) {\n this.setDisabledState(!!disabled);\n }\n /** Allows for value input, similar to other angular form inputs */\n @Input() set value(val: T) {\n if (val && typeof val === 'object' && 'toString' in val) {\n this.formControl.setValue(val.toString());\n } else {\n this.formControl.setValue(val);\n }\n this.formControl.updateValueAndValidity();\n }\n\n @Input() config?: GalaxyCoreInputInterface;\n\n @Input() size?: string;\n\n @Input() bottomSpacing?: 'default' | 'small' | 'none' | false = 'default';\n\n inputValue?: T;\n isDisabled = false;\n\n asyncValidatorErrors$$: BehaviorSubject = new BehaviorSubject([]);\n asyncValidatorErrors$: Observable = new Observable();\n validatorError$?: Observable;\n\n // Disables eslint on next line since the onChange function is meant to be overridden\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onChange = (_value: T): void => {\n // this should be completed to properly implement ControlValueAccessor\n };\n\n // Disables eslint on next line since the onTouched function is meant to be overridden\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onTouched = (_value: T): void => {\n // this should be completed to properly implement ControlValueAccessor\n };\n\n setupControl(): void {\n // If the config is passed in, parse it first\n if (this.config) {\n this.id = this.config.id || '';\n this.label = this.config.label || '';\n this.placeholder = this.config.placeholder || '';\n this.formControl = this.config.formControl || new UntypedFormControl();\n this.required = this.config.required || false;\n this.validators = this.config.validators || [];\n this.disabled = this.config.disabled || false;\n }\n\n // Drop in required validation\n if (this.required) {\n // make sure that a req validator hasn't already been added\n const alreadyContainsReq = this.validators?.some((validator) => {\n return validator.validatorFn === Validators.required;\n });\n\n if (!alreadyContainsReq) {\n this.validators?.push({\n validatorFn: Validators.required,\n errorMessage: 'GALAXY.INPUT.CORE.VALIDATION_ERROR_REQ',\n });\n }\n }\n\n const validators = this.validators?.map((validator) => {\n return (control: AbstractControl): ValidationErrors | null => {\n if (!validator.validatorFn(control)) {\n return null;\n }\n\n return { message: validator.errorMessage };\n };\n });\n\n if (validators) this.formControl.setValidators(validators);\n if (this.asyncValidators?.length !== 0) {\n this.asyncValidatorErrors$ = this.formControl.valueChanges.pipe(\n debounceTime(GalaxyCoreInputDirective.ASYNC_DEBOUNCE_DELAY),\n distinctUntilChanged(),\n mergeMap(() => this.runAsyncValidators()),\n map((result) => this.handleAsyncValidatorResults(result)),\n tap((result) => this.asyncValidatorErrors$$.next(result)),\n );\n\n this.validatorError$ = combineLatest([this.formControl.statusChanges, this.asyncValidatorErrors$]).pipe(\n map(([, asyncErrors]) => {\n if (asyncErrors.length > 0) {\n return asyncErrors[0];\n }\n return this.formControl.errors ? this.formControl.errors.message : '';\n }),\n );\n } else {\n this.validatorError$ = this.formControl.statusChanges.pipe(\n map(() => {\n return this.formControl.errors ? this.formControl.errors.message : '';\n }),\n );\n }\n this.formControl.updateValueAndValidity();\n }\n\n runAsyncValidators(): Observable<{ validatorResult: ValidationErrors; errorMessage: string }[]> {\n const asyncValidators = this.asyncValidators.map((validator) => {\n return validator.validatorFn(this.formControl);\n });\n\n return combineLatest(asyncValidators).pipe(\n map((results) => {\n return this.asyncValidators.map((val, index) => ({\n validatorResult: results[index],\n errorMessage: val.errorMessage,\n }));\n }),\n );\n }\n\n handleAsyncValidatorResults(results: { validatorResult: ValidationErrors; errorMessage: string }[]): string[] {\n const filteredResults = results.filter((r) => r.validatorResult);\n const asyncHasErrors = results.some((r) => r.validatorResult);\n const errorMessages = filteredResults.map((r) => r.errorMessage);\n this.collectErrorsAndUpdateForm(filteredResults);\n return asyncHasErrors ? errorMessages : [];\n }\n\n collectErrorsAndUpdateForm(errors: ValidationErrors[]): void {\n const allErrorsMap: ValidationErrors = {};\n if (this.formControl.errors) errors.push(this.formControl.errors);\n errors.forEach((errorSet) => {\n if (errorSet) {\n Object.keys(errorSet).forEach((key: string) => (allErrorsMap[key] = errorSet[key]));\n }\n });\n if (Object.keys(allErrorsMap).length > 0) {\n this.formControl.setErrors(allErrorsMap);\n }\n }\n\n onBlur(): void {\n if (!this.asyncValidatorErrors$$.getValue().length) {\n this.formControl.updateValueAndValidity();\n }\n }\n\n writeValue(value: T): void {\n this.inputValue = value;\n this.onChange(value);\n }\n\n registerOnChange(fn: (value: T) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: (value: T) => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n // Do nothing when no change\n if (isDisabled === this.formControl?.disabled) {\n return;\n }\n\n this.isDisabled = isDisabled;\n if (isDisabled) {\n this.formControl.disable();\n } else {\n this.formControl.enable();\n }\n }\n}\n\n@Pipe({\n name: 'getOption',\n})\nexport class GetOptionPipe implements PipeTransform {\n transform(obj: SelectInputOption): SelectInputOptionInterface | null {\n if ('options' in obj) {\n return null;\n }\n return obj as SelectInputOptionInterface;\n }\n}\n\n@Pipe({\n name: 'getOptionGroup',\n})\nexport class GetOptionGroupPipe implements PipeTransform {\n transform(obj: SelectInputOption): SelectInputOptionGroupInterface | null {\n if ('options' in obj) {\n return obj as SelectInputOptionGroupInterface;\n }\n return null;\n }\n}\n", "import { Directive } from '@angular/core';\nimport {\n AbstractControl,\n FormControl,\n NG_VALIDATORS,\n UntypedFormControl,\n ValidationErrors,\n ValidatorFn,\n Validator as ValidatorType,\n} from '@angular/forms';\n\nconst PRICE_REGEX = /^\\d{0,8}(\\.\\d{1,2})?$/;\nconst URL_REGEX = /^((https?:\\/\\/)?([\\w-]+(\\.[\\w-]+)+|localhost)\\.?(:\\d+)?((\\/)?\\S*)?)$/i;\nconst SUBDOMAIN_REGEX = /(^[a-z0-9][a-z0-9-]{0,62}[a-z0-9]$)/;\nconst MARKET_ID_REGEX = /(^[a-z0-9-]*$)/;\nconst EMAIL_REGEX =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n// Following regex matches North American, South African, UK, and Australian phone numbers, with some support for extensions\nconst PHONE_NUMBER_REGEX =\n /(^(?:(?:\\+?1\\s*(?:[.-]\\s*)?)?(?:\\(\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\s*\\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\s*(?:[.-]\\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\s*(?:[.-]\\s*)?([0-9]{4})(?:\\s*(?:#|x\\.?|ext\\.?|extension)\\s*(\\d+))?$)|(^(((\\+44\\s?\\d{4}|\\(?0\\d{4}\\)?)\\s?\\d{3}\\s?\\d{3})|((\\+44\\s?\\d{3}|\\(?0\\d{3}\\)?)\\s?\\d{3}\\s?\\d{4})|((\\+44\\s?\\d{2}|\\(?0\\d{2}\\)?)\\s?\\d{4}\\s?\\d{4}))(\\s?#(\\d{4}|\\d{3}))?$)|(^(\\+\\d{2}[ -]{0,1}){0,1}(((\\({0,1}[ -]{0,1})0{0,1}\\){0,1}[2|3|7|8]{1}\\){0,1}[ -]*(\\d{4}[ -]{0,1}\\d{4}))|(1[ -]{0,1}(300|800|900|902)[ -]{0,1}((\\d{6})|(\\d{3}[ -]{0,1}\\d{3})))|(13[ -]{0,1}([\\d -]{5})|((\\({0,1}[ -]{0,1})0{0,1}\\){0,1}4{1}[\\d -]{8,10})))$)|((\\(0\\d\\d\\)\\s\\d{3}[\\s-]+\\d{4})|(0\\d\\d[\\s-]+\\d{3}[\\s-]+\\d{4})|(0\\d{9})|(\\+\\d\\d\\s?[(\\s]\\d\\d[)\\s]\\s?\\d{3}[\\s-]?\\d{4}))/;\n\ninterface PostalCodeRegexMap {\n [key: string]: RegExp;\n}\n\nconst DYNAMIC_CONTENT_ERROR = { invalidDynamicComponent: true };\n\nconst POSTAL_CODE_REGEXES: PostalCodeRegexMap = {\n CA: /^[ABCEGHJKLMNPRSTVXY]\\d[ABCEGHJ-NPRSTV-Z][\\s-]?\\d[ABCEGHJ-NPRSTV-Z]\\d$/,\n US: /^[0-9]{5}(?:-[0-9]{4})?$/,\n};\n\n/**\n * import from https://github.com/ReactiveX/rxjs/blob/5.5.8/src/util/isNumeric.ts\n */\nconst isArray = Array.isArray || ((x: any): x is T[] => x && typeof x.length === 'number');\n\nfunction isNumeric(val: any): val is number {\n return !isArray(val) && val - parseFloat(val) + 1 >= 0;\n}\n\nexport class Validator {\n static URL_MAILTO_OR_DYNAMIC_CONTENT_REGEX = /(\\{\\{.*?\\}\\})|(\\b((?:https?:\\/\\/|mailto:)[^\\s]+)\\b)/i;\n private static DYNAMIC_CONTENT_REGEX = /^\\{\\{\\s*([a-zA-Z]+)(?:\\s*\\['([^']+)'(?:\\s*,\\s*'([^']+)')*\\])?\\s*}}$/i;\n static HEX_COLOR_REGEX = /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/;\n\n static isPrice(control: UntypedFormControl): any {\n if (control.value && typeof control.value === 'string' && control.value.match(PRICE_REGEX)) {\n return null;\n } else if (\n control.value &&\n typeof control.value === 'number' &&\n parseFloat((control.value * 100).toFixed(2)) % 1 === 0\n ) {\n // modulus with floating point bases is broken\n return null;\n } else if (!control.value) {\n return null;\n } else {\n return { invalidPrice: true };\n }\n }\n\n static isUrl(control: UntypedFormControl): any {\n if (control.value && control.value.match(URL_REGEX)) {\n return null;\n } else if (control.value) {\n return { invalidUrl: true };\n }\n }\n\n static isEmailList(control: FormControl): any {\n if (control.value) {\n const emails = control.value\n .toString()\n .split(/[,;]+/)\n .map((email) => email.trim());\n const invalidEmails = emails.filter((email) => !email.match(EMAIL_REGEX));\n if (invalidEmails.length) {\n return { invalidEmail: true };\n }\n }\n }\n\n static isEmail(control: AbstractControl): ValidationErrors | null {\n if (control.value && typeof control.value == 'string' && control.value.match(EMAIL_REGEX)) {\n return null;\n } else if (control.value) {\n return { invalidEmail: true };\n }\n return null;\n }\n\n static isPhoneNumber(control: UntypedFormControl): any {\n if (control.value && control.value.match(PHONE_NUMBER_REGEX)) {\n return null;\n } else if (control.value) {\n return { invalidPhoneNumber: true };\n }\n }\n\n // Validation is currently limited to US and Canada. Add more countries to regex map as needed.\n static isValidPostalCode(countryCode: string): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n const countryRegex = POSTAL_CODE_REGEXES[countryCode.toUpperCase()];\n // If the country code is not in our regex map, return valid\n if (!countryRegex) {\n return null;\n }\n // Validate the postal code against the regex for the given country\n if (value && !countryRegex.test(value)) {\n return { invalidPostalCode: true };\n }\n return null;\n };\n }\n\n static isInRange(lower: number, upper: number): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n if (!isNumeric(value) || (lower !== null && Number(value) < lower) || (upper !== null && Number(value) > upper)) {\n return { outOfRange: true };\n }\n return null;\n };\n }\n\n static isValidMarketId(control: UntypedFormControl): ValidationErrors | null {\n if (control.value && control.value.match(MARKET_ID_REGEX)) {\n return null;\n } else if (control.value) {\n return { invalidMarketId: true };\n }\n return null;\n }\n\n static isMinimumLength(minimumLength: number): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n if (control.value && control.value.length >= minimumLength) {\n return null;\n } else if (control.value) {\n return { minlength: true };\n }\n return null;\n };\n }\n\n static isValidSubdomain(control: UntypedFormControl): any {\n if (control.value && control.value.match(SUBDOMAIN_REGEX)) {\n return null;\n } else if (control.value) {\n return { invalidSubdomain: true };\n }\n }\n\n static containsValidDynamicContent(control: FormControl): ValidationErrors | null {\n if (!control.value) return null; // No dynamic content to validate\n\n let dynamicContent = '';\n for (const p of control.value) {\n if (dynamicContent === '' || dynamicContent === '{') {\n if (p === '{') {\n dynamicContent += p;\n } else {\n dynamicContent = '';\n }\n } else if (p === '}' && dynamicContent[dynamicContent.length - 1] === '}') {\n dynamicContent += p;\n if (dynamicContent.search(Validator.DYNAMIC_CONTENT_REGEX) === -1) {\n return DYNAMIC_CONTENT_ERROR;\n }\n dynamicContent = '';\n } else {\n dynamicContent += p;\n }\n }\n if (dynamicContent !== '') {\n return DYNAMIC_CONTENT_ERROR;\n }\n return null;\n }\n\n static errorMessage(validatorName: string, validatorValue?: any): string {\n const config: Record = {\n required: 'Required',\n minlength: `Minimum length ${validatorValue.requiredLength}`,\n invalidPrice: `Invalid price`,\n outOfRange: `Out of range`,\n invalidEmail: 'Invalid Email',\n invalidPhoneNumber: 'Invalid Phone Number',\n invalidZipCode: 'Invalid Zip/Postal Code',\n invalidSubdomain: 'Invalid Subdomain',\n };\n\n return config[validatorName];\n }\n\n static isGreaterThanZero = () => {\n return (control: UntypedFormControl) => {\n if (control.value <= 0) {\n return { isLessThanOrEqualToZero: true };\n }\n return null;\n };\n };\n}\n\n@Directive({\n selector: '[sharedContainsValidDynamicContent]',\n providers: [{ provide: NG_VALIDATORS, useExisting: ContainsValidDynamicContentDirective, multi: true }],\n})\nexport class ContainsValidDynamicContentDirective implements ValidatorType {\n validate(control: AbstractControl): ValidationErrors | null {\n return Validator.containsValidDynamicContent(control as UntypedFormControl);\n }\n}\n", "import { ChangeDetectionStrategy, Component, forwardRef, HostBinding, Input, OnInit } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Validator } from '@vendasta/shared';\nimport { GalaxyCoreInputDirective } from '../core/core-input.directive';\nimport { GalaxyInputValidator } from '../input.interface';\n\n/** @deprecated - use Galaxy Field with matInput */\n@Component({\n selector: 'glxy-email-input',\n templateUrl: './email-input.component.html',\n styleUrls: ['./../core/core.material-override.scss', './email-input.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EmailInputComponent),\n multi: true,\n },\n ],\n})\nexport class EmailInputComponent extends GalaxyCoreInputDirective implements OnInit {\n @HostBinding('class') class = 'glxy-email-input';\n\n @Input() hint = '';\n\n label = 'GALAXY.INPUT.EMAIL.LABEL';\n validators: GalaxyInputValidator[] = [\n {\n validatorFn: Validator.isEmail,\n errorMessage: 'GALAXY.INPUT.EMAIL.VALIDATION_ERROR',\n },\n ];\n\n ngOnInit(): void {\n this.setupControl();\n }\n}\n", "\n {{ label | translate }}\n @if (disableAutoComplete) {\n \n }\n \n \n @if (hint) {\n {{ hint | translate }}\n }\n\n @if (validatorError$ | async; as validatorError) {\n \n @if (validatorError !== '') {\n {{ validatorError | translate }}\n }\n \n }\n\n", "import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n forwardRef,\n HostBinding,\n inject,\n Input,\n OnInit,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { AbstractControl, NG_VALUE_ACCESSOR, UntypedFormControl, ValidationErrors, ValidatorFn } from '@angular/forms';\nimport { combineLatest, Observable } from 'rxjs';\nimport { distinctUntilChanged, map, startWith, tap } from 'rxjs/operators';\nimport { GalaxyCoreInputDirective } from '../core/core-input.directive';\nimport { GalaxyInputValidator, GalaxyPasswordInputInterface } from './../input.interface';\n\nconst strongRegex = new RegExp('^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*])(?=.{8,})');\nconst mediumRegex = new RegExp(\n '^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})',\n);\n\n/** @deprecated - can be updated to use Galaxy Form Field */\n@Component({\n selector: 'glxy-password-input',\n templateUrl: './password-input.component.html',\n styleUrls: ['./../core/core.material-override.scss', './password-input.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PasswordInputComponent),\n multi: true,\n },\n ],\n})\nexport class PasswordInputComponent extends GalaxyCoreInputDirective implements OnInit {\n @HostBinding('class') class = 'glxy-password-input';\n\n /** Show password strength indicator. */\n @Input({ transform: booleanAttribute }) showPasswordStrength = false;\n /** Show confirm password input */\n @Input({ transform: booleanAttribute }) confirmPassword = false;\n @Input() config?: GalaxyPasswordInputInterface;\n\n confirmPasswordFormControl = new UntypedFormControl('');\n confirmPasswordValidator: GalaxyInputValidator[] = [];\n\n currentType = 'password';\n currentIcon = 'visibility';\n\n passwordStrength$?: Observable;\n strengthLabel$?: Observable;\n\n private readonly destroyRef = inject(DestroyRef);\n\n ngOnInit(): void {\n this.setupControl();\n }\n\n setupControl(): void {\n if (this.config) {\n this.showPasswordStrength = this.config.showPasswordStrength\n ? this.config.showPasswordStrength\n : this.showPasswordStrength;\n this.confirmPassword = this.config.confirmPassword ? this.config.confirmPassword : this.confirmPassword;\n }\n\n // Make sure the form control is defined\n if (!this.formControl) {\n this.formControl = new UntypedFormControl('');\n }\n\n // Check if we need to display the confirm password input\n if (this.confirmPassword) {\n if (!this.validators) {\n this.validators = [];\n }\n this.confirmPasswordValidator = [...this.validators];\n this.validators.push({\n validatorFn: validatePasswordInputsMatch(this.confirmPasswordFormControl),\n errorMessage: 'GALAXY.INPUT.PASSWORD.VALIDATION_ERROR_NO_MATCH',\n });\n\n this.confirmPasswordValidator.push({\n validatorFn: validatePasswordInputsMatch(this.formControl),\n errorMessage: 'GALAXY.INPUT.PASSWORD.VALIDATION_ERROR_NO_MATCH',\n });\n this.confirmPasswordFormControl.setValidators(\n this.confirmPasswordValidator.map((validator) => {\n return validator.validatorFn;\n }),\n );\n this.addListenersForPasswordMatching();\n }\n\n this.passwordStrength$ = this.formControl.valueChanges.pipe(map(this.calculatePasswordStrength), startWith('none'));\n\n this.strengthLabel$ = this.passwordStrength$.pipe(map(this.getStrengthKey));\n\n super.setupControl();\n }\n\n /**\n * Add listeners for value changes. If either value changes, we should compare the two values to see if they match.\n */\n private addListenersForPasswordMatching(): void {\n combineLatest([this.formControl.valueChanges, this.confirmPasswordFormControl.valueChanges])\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n distinctUntilChanged(\n ([fcPrevious, cpPrevious], [fcCurrent, cpCurrent]) => fcPrevious === fcCurrent && cpPrevious === cpCurrent,\n ),\n tap(() => {\n this.formControl.updateValueAndValidity();\n this.confirmPasswordFormControl.updateValueAndValidity();\n }),\n )\n .subscribe();\n }\n\n /**\n * Toggles the visibility of the inputs\n */\n togglePasswordVisibility(): void {\n if (this.currentType === 'password') {\n this.currentType = 'text';\n this.currentIcon = 'visibility_off';\n return;\n }\n this.currentType = 'password';\n this.currentIcon = 'visibility';\n }\n\n /**\n * Calculates the password strength base on the following:\n * Strong:\n * - Must contain 1 lowercase character\n * - Must contain 1 uppercase letter\n * - Must conatin 1 numeric character\n * - Must contain 1 special character\n * - Must be 8 characters or longer\n * Medium:\n * - lowercase characters and uppercase characters\n * - lowercase characters and numeric characters\n * - uppercase characters and numberic characters\n * - Must be 6 characters or longer\n * Will return strong, medium or weak\n * @param password - Password to check\n */\n private calculatePasswordStrength(password: string): string {\n if (strongRegex.test(password)) {\n return 'strong';\n } else if (mediumRegex.test(password)) {\n return 'medium';\n }\n return 'weak';\n }\n\n private getStrengthKey(strength: string): string {\n let key;\n\n switch (strength) {\n case 'strong':\n key = 'GALAXY.INPUT.PASSWORD.STRENGTH_STRONG';\n break;\n case 'medium':\n key = 'GALAXY.INPUT.PASSWORD.STRENGTH_MEDIUM';\n break;\n case 'weak':\n key = 'GALAXY.INPUT.PASSWORD.STRENGTH_WEAK';\n break;\n default:\n key = 'GALAXY.INPUT.PASSWORD.STRENGTH_NONE';\n }\n\n return key;\n }\n}\n\n/**\n * Compares the passed in control to the control being checked.\n * @param compareControl - Form Control to compare against\n */\nfunction validatePasswordInputsMatch(compareControl: UntypedFormControl): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n if ((!control.value && !compareControl.value) || control.value === compareControl.value) {\n return null;\n }\n return { passwordmatch: true };\n };\n}\n", "\n @if (!!label) {\n {{ label | translate }}\n }\n \n \n {{ currentIcon }}\n \n\n @if (validatorError$ | async; as validatorError) {\n \n @if (validatorError !== '') {\n {{ validatorError | translate }}\n }\n \n }\n\n@if (showPasswordStrength && formControl) {\n
\n @if (passwordStrength$ | async; as strength) {\n
\n {{ 'GALAXY.INPUT.PASSWORD.PASS_STRENGTH' | translate }}:\n {{ (strengthLabel$ | async) ?? '' | translate }}\n
\n
\n @for (x of [1, 2, 3]; track x) {\n
\n }\n
\n }\n
\n}\n@if (confirmPassword) {\n \n @if (!!label) {\n {{ 'GALAXY.INPUT.PASSWORD.CONFIRM' | translate }} {{ label | translate }}\n }\n \n \n {{ currentIcon }}\n \n @if (validatorError$ | async; as validatorError) {\n \n @if (validatorError !== '') {\n {{ validatorError | translate }}\n }\n \n }\n \n}\n", "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { TranslateModule } from '@ngx-translate/core';\n\n// Material imports\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\n\nimport { GalaxyCoreInputDirective, GetOptionGroupPipe, GetOptionPipe } from './core/core-input.directive';\n\nimport { InputComponent } from './input/input.component';\nexport { CurrencyFieldComponent } from './currency-field/currency-field.component';\nexport { CurrencyInputComponent } from './currency-input/currency-input.component';\nexport { EmailInputComponent } from './email-input/email-input.component';\nexport { InputComponent } from './input/input.component';\nexport { PasswordInputComponent } from './password-input/password-input.component';\nexport { ParsePhoneInputPipe } from './phone-input/parse-phone-input.pipe';\nexport { PhoneInputComponent } from './phone-input/phone-input.component';\nexport { SearchSelectInputComponent } from './search-select-input/search-select-input.component';\nexport { SelectInputComponent } from './select-input/select-input.component';\n\nimport { EmailInputComponent } from './email-input/email-input.component';\n\nimport { PasswordInputComponent } from './password-input/password-input.component';\n\nimport { PhoneInputComponent } from './phone-input/phone-input.component';\n\nimport { ParsePhoneInputPipe } from './phone-input/parse-phone-input.pipe';\n\nimport { SelectInputComponent } from './select-input/select-input.component';\n\nimport { CurrencyInputComponent } from './currency-input/currency-input.component';\n\nimport { CurrencyFieldComponent } from './currency-field/currency-field.component';\n\nimport { SearchSelectInputComponent } from './search-select-input/search-select-input.component';\n\nexport const MODULE_IMPORTS = [\n CommonModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n FormsModule,\n ReactiveFormsModule,\n MatSelectModule,\n TranslateModule,\n MatMenuModule,\n MatTooltipModule,\n MatAutocompleteModule,\n GalaxyFormFieldModule,\n];\n\nexport const MODULE_DECLARATIONS = [\n InputComponent,\n GalaxyCoreInputDirective,\n EmailInputComponent,\n PasswordInputComponent,\n PhoneInputComponent,\n ParsePhoneInputPipe,\n SelectInputComponent,\n CurrencyInputComponent,\n CurrencyFieldComponent,\n SearchSelectInputComponent,\n GetOptionPipe,\n GetOptionGroupPipe,\n];\n\nexport const MODULE_EXPORTS = [\n InputComponent,\n EmailInputComponent,\n PasswordInputComponent,\n PhoneInputComponent,\n SelectInputComponent,\n CurrencyInputComponent,\n CurrencyFieldComponent,\n SearchSelectInputComponent,\n];\n\n@NgModule({\n declarations: MODULE_DECLARATIONS,\n providers: [GetOptionPipe, GetOptionGroupPipe],\n exports: MODULE_EXPORTS,\n imports: MODULE_IMPORTS,\n})\nexport class GalaxyInputModule {}\n", "import { Component, Input } from '@angular/core';\nimport { AccountSelectorAccountInterface } from '../../../common/vendasta-login-center/vendasta-login-center.api.interface';\n\n@Component({\n selector: 'app-account',\n templateUrl: './account.component.html',\n styleUrls: ['./account.component.scss'],\n})\nexport class AccountComponent {\n @Input() account: AccountSelectorAccountInterface;\n}\n", "
\n @if (account.name) {\n \n {{ account.name }}\n \n }\n {{ account.email }}\n @if (account.loginRequired) {\n \n {{ 'ACCOUNT_CHOOSER.SIGNED_OUT' | translate }}\n \n }\n
\n", "import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { AccountSelectorAccountInterface } from '../../../common/vendasta-login-center/vendasta-login-center.api.interface';\n\n@Component({\n selector: 'app-account-list',\n templateUrl: './account-list.component.html',\n styleUrls: ['./account-list.component.scss'],\n})\nexport class AccountListComponent {\n @Input() accounts: AccountSelectorAccountInterface[];\n @Output() selection: EventEmitter = new EventEmitter();\n @Output() remove: EventEmitter = new EventEmitter();\n\n search: string;\n\n selectAccount(account: AccountSelectorAccountInterface): void {\n this.selection.emit(account);\n }\n\n removeAccount(event: Event, account: AccountSelectorAccountInterface): void {\n event.stopPropagation();\n this.remove.emit(account);\n }\n\n filteredAccounts(): Observable {\n return of(this.accounts).pipe(\n map((accounts: AccountSelectorAccountInterface[]) => {\n if (!this.search) {\n return accounts;\n }\n return accounts.filter((account: AccountSelectorAccountInterface) => {\n const inEmail = account.email.toLowerCase().indexOf(this.search.toLowerCase()) >= 0;\n const inName = account.name.toLowerCase().indexOf(this.search.toLowerCase()) >= 0;\n return inEmail || inName;\n });\n }),\n );\n }\n}\n", "@if (accounts && accounts.length > 5) {\n
\n \n \n \n
\n}\n@if (accounts && accounts.length > 0) {\n
\n
    \n @for (account of filteredAccounts() | async; track account) {\n
  • \n \n \n \n clear\n \n \n
  • \n }\n
\n
\n}\n", "import { Injectable } from '@angular/core';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { BehaviorSubject, Observable, of } from 'rxjs';\nimport { catchError, filter, publishReplay, refCount, take, tap } from 'rxjs/operators';\nimport { PartnerService, ServiceProviderService, VendastaLoginCenterService } from '../common';\nimport { AccountSelectorAccountInterface } from '../common/vendasta-login-center/vendasta-login-center.api.interface';\n\n// AccountSelectorService provides functionality for the account selection ux\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountSelectorService {\n private _serviceContext: string;\n private _nextUrl: string;\n private _errorUrl: string;\n private _loading$$: BehaviorSubject = new BehaviorSubject(false);\n public loading$: Observable = this._loading$$.asObservable().pipe(publishReplay(1), refCount());\n private _host$$: BehaviorSubject = new BehaviorSubject('');\n public host$: Observable = this._host$$.asObservable();\n\n private _accounts$$: BehaviorSubject = new BehaviorSubject<\n AccountSelectorAccountInterface[]\n >(null);\n public accounts$: Observable = this._accounts$$.asObservable().pipe(\n filter((accounts) => accounts != null),\n publishReplay(1),\n refCount(),\n );\n\n constructor(\n private readonly snackbarService: SnackbarService,\n private vlcService: VendastaLoginCenterService,\n private serviceProviderService: ServiceProviderService,\n private partnerService: PartnerService,\n ) {}\n\n public loadLogins(namespace: string): void {\n this.setLoading(true);\n this.vlcService\n .listLogins(namespace)\n .pipe(\n filter((accounts) => accounts != null),\n take(1),\n )\n .subscribe(\n (accounts: AccountSelectorAccountInterface[]) => {\n this._accounts$$.next(accounts);\n this.setLoading(false);\n },\n () => {\n this.setLoading(false);\n },\n );\n }\n\n setNextUrl(nextUrl: string): void {\n this._nextUrl = nextUrl;\n }\n\n public get nextUrl(): string {\n return this._nextUrl;\n }\n\n setErrorUrl(errorUrl: string): void {\n this._errorUrl = errorUrl;\n }\n\n public get errorUrl(): string {\n return this._errorUrl;\n }\n\n setServiceContext(b64ServiceContext: string): void {\n this._serviceContext = b64ServiceContext;\n }\n\n public get serviceContext(): string {\n return this._serviceContext;\n }\n\n getServiceProviderHost(): void {\n this.vlcService\n .getServiceProviderHost(this.serviceProviderService.serviceProviderId, this._serviceContext)\n .subscribe((serviceProviderHost: string) => this._host$$.next(serviceProviderHost));\n }\n\n setLoading(loading: boolean): void {\n this._loading$$.next(loading);\n }\n\n chooseAccount(email: string, sessionId: string): void {\n if (!this.serviceProviderService.serviceProviderId) {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.NO_SERVICE_PROVIDER_ID');\n return;\n }\n\n this._loading$$.next(true);\n this.vlcService\n .getEntryUrlWithCode(\n this.serviceProviderService.serviceProviderId,\n email,\n sessionId,\n this._nextUrl,\n this._serviceContext,\n )\n .pipe(\n take(1),\n catchError(() => {\n this._loading$$.next(false);\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.POST_LOGIN_REDIRECT_FAILURE');\n return of();\n }),\n )\n .subscribe((entryUrl: string) => {\n window.location.href = entryUrl;\n });\n }\n\n signInUser(userId: string): void {\n if (!userId) {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.NO_USER_ID');\n return;\n }\n if (!this.serviceProviderService.serviceProviderId) {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.NO_SERVICE_PROVIDER_ID');\n return;\n }\n\n this._loading$$.next(true);\n this.vlcService.accountSelectorRedirect(\n userId,\n this.serviceProviderService.serviceProviderId,\n this._serviceContext,\n this.partnerService.partnerId,\n this._nextUrl,\n this._errorUrl,\n );\n }\n\n removeAccountSelectorAccount(userId: string): Observable {\n return this.vlcService.removeAccountSelectorAccount(userId).pipe(\n take(1),\n tap(() => {\n const cleanedAccounts = this._accounts$$.value.filter((account) => account.userId != userId);\n this._accounts$$.next(cleanedAccounts);\n }),\n );\n }\n}\n", "import { Component, Input } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Observable, combineLatest, map } from 'rxjs';\nimport { ServiceProviderService } from '../../common/core';\nimport { AccountSelectorService } from '../account-selector.service';\nimport { PartnerService } from '../../common';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n})\nexport class HeaderComponent {\n @Input() title: string;\n @Input() backSegments: string[];\n @Input() showBackButton: boolean;\n protected showLogo$: Observable;\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private serviceProviderService: ServiceProviderService,\n public accountSelectorService: AccountSelectorService,\n private partnerService: PartnerService,\n ) {\n this.showLogo$ = combineLatest([\n this.serviceProviderService.serviceIsPartnerCenter$,\n this.partnerService.partnerId$,\n ]).pipe(map(([isPartnerCenter, partnerId]) => isPartnerCenter && !partnerId));\n }\n\n goBack(): void {\n this.router.navigate(['../'], {\n queryParams: { email: null },\n queryParamsHandling: 'merge',\n relativeTo: this.route,\n });\n }\n}\n", "@if (backSegments && showBackButton !== false) {\n \n}\n@if (showLogo$ | async) {\n
\n
\n
\n}\n

{{ title }}

\n@if (accountSelectorService.host$ | async; as accountSelectorServiceHost) {\n
\n Continue to\n {{ accountSelectorServiceHost }}\n
\n}\n", "import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Observable, Subscription, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { AccountSelectorService } from '../account-selector.service';\nimport { AccountSelectorAccountInterface } from '../../common/vendasta-login-center/vendasta-login-center.api.interface';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-account-chooser',\n templateUrl: './account-chooser.component.html',\n styleUrls: ['./account-chooser.component.scss'],\n})\nexport class AccountChooserComponent implements OnInit, OnDestroy {\n public accounts$: Observable;\n\n // chooseAnotherAccount is the fake UI input for the go-to-login button\n public chooseAnotherAccount: AccountSelectorAccountInterface = {\n name: '',\n userId: '',\n email: '',\n loginRequired: false,\n };\n\n navigateToLoginSub: Subscription;\n chooseAccountSub: Subscription;\n\n private _destroy$$ = new Subject();\n\n constructor(\n private accountSelectorService: AccountSelectorService,\n private router: Router,\n private route: ActivatedRoute,\n private translate: TranslateService,\n ) {}\n\n ngOnInit(): void {\n this.accounts$ = this.accountSelectorService.accounts$;\n // Redirect to login if there is no accounts to choose from\n this.accounts$.pipe(takeUntil(this._destroy$$)).subscribe((accounts: AccountSelectorAccountInterface[]) => {\n if (accounts.length === 0) {\n this.navigateToLogin();\n return;\n }\n });\n\n this.translate\n .stream('ACCOUNT_CHOOSER.SELECT_ANOTHER_ACCOUNT')\n .pipe(takeUntil(this._destroy$$))\n .subscribe((translation) => {\n this.chooseAnotherAccount.name = translation;\n });\n }\n\n ngOnDestroy(): void {\n this._destroy$$.next();\n this._destroy$$.complete();\n }\n\n selectAccount(account: AccountSelectorAccountInterface): void {\n if (account.loginRequired) {\n this.navigateToLogin(account.email);\n return;\n }\n this.accountSelectorService.signInUser(account.userId);\n }\n\n removeAccount(account: AccountSelectorAccountInterface): void {\n this.accountSelectorService.removeAccountSelectorAccount(account.userId).subscribe();\n }\n\n navigateToLogin(emailHint?: string): void {\n if (emailHint) {\n this.router.navigate(['./login'], {\n queryParams: { email: emailHint },\n queryParamsHandling: 'merge',\n relativeTo: this.route,\n });\n return;\n }\n this.router.navigate(['./login'], { queryParamsHandling: 'merge', relativeTo: this.route });\n }\n}\n", "\n\n\n", "import { HttpErrorResponse } from '@angular/common/http';\nimport { Component, OnInit, ViewChild } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ActivatedRoute, ParamMap, Router } from '@angular/router';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { ReCaptchaV3Service } from 'ng-recaptcha';\nimport { BehaviorSubject, Observable, of, withLatestFrom } from 'rxjs';\nimport { catchError, map, switchMap, take, tap } from 'rxjs/operators';\nimport { parseSession, PartnerService, ServiceProviderService, VendastaLoginCenterService } from '../../common';\nimport { AccountSelectorService } from '../account-selector.service';\n\nconst REMEMBER_ME_KEY = 'remember-me';\nconst TEN_MINUTES_IN_MILLISECONDS = 10 * 60 * 1000;\n\n@Component({\n selector: 'app-account-login',\n templateUrl: './account-login.component.html',\n styleUrls: ['./account-login.component.scss'],\n})\nexport class AccountLoginComponent implements OnInit {\n public emailControl = new FormControl('', [Validators.required, Validators.email]);\n public passwordControl = new FormControl('', [Validators.required]);\n public rememberMeControl = new FormControl(false);\n public form = new FormGroup({\n email: this.emailControl,\n password: this.passwordControl,\n rememberMe: this.rememberMeControl,\n recaptchaV2Field: new FormControl(null), // conditionally made required when shown\n });\n public showForgotPassword: boolean;\n public isPartnerCenter = false;\n\n public showBackButton$: Observable;\n\n private showRecaptchaV2$$ = new BehaviorSubject(false);\n public showRecaptchaV2$ = this.showRecaptchaV2$$.pipe(\n tap((show) => {\n if (show) {\n this.form.controls['recaptchaV2Field'].setValidators([Validators.required]);\n } else {\n this.form.controls['recaptchaV2Field'].clearValidators();\n }\n this.form.controls['recaptchaV2Field'].updateValueAndValidity();\n }),\n );\n @ViewChild('recaptchaV2') recaptchaV2Component;\n\n constructor(\n private vlcService: VendastaLoginCenterService,\n private router: Router,\n private accountSelectorService: AccountSelectorService,\n private serviceProviderService: ServiceProviderService,\n private partnerService: PartnerService,\n private route: ActivatedRoute,\n private recaptchaV3Service: ReCaptchaV3Service,\n private snackbarService: SnackbarService,\n ) {}\n\n ngOnInit(): void {\n let rememberMe: boolean;\n try {\n rememberMe = localStorage.getItem(REMEMBER_ME_KEY) !== 'false';\n } catch (e) {\n rememberMe = false;\n }\n this.form.controls['rememberMe'].setValue(rememberMe);\n this.route.queryParamMap.pipe(take(1)).subscribe((paramMap: ParamMap) => {\n const sessionId = paramMap.get('session_id');\n const error = paramMap.get('error');\n const status = paramMap.get('status');\n const email = paramMap.get('email');\n\n if (email) {\n this.form.controls['email'].setValue(email);\n this.form.controls['email'].disable({ onlySelf: true, emitEvent: true });\n }\n\n if (sessionId) {\n this.signInBySession(sessionId);\n return;\n }\n\n if (error) {\n if (status === '401' || status === '404') {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.INCORRECT_EMAIL_OR_PASSWORD');\n } else {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.DEFAULT_ERROR');\n }\n this.router.navigate(['.'], {\n replaceUrl: true,\n relativeTo: this.route,\n queryParams: {\n error: null,\n status: null,\n },\n queryParamsHandling: 'merge',\n });\n return;\n }\n });\n\n this.showForgotPassword = !!this.partnerService.partnerId || this.serviceProviderService.serviceIsPartnerCenter;\n // Partner Center is a bit different from logging in to an app for SMBs\n // since we've got specific branding, and don't know what partner-ID they're\n // logging into until _after_ they've logged in.\n // We might be able to have partner-logins specific to each partner, but not right now.\n // Also, only PC has LinkedIn and Microsoft right now.\n this.isPartnerCenter = this.serviceProviderService.serviceIsPartnerCenter;\n\n // show back button to account selector if there will be accounts there\n this.showBackButton$ = this.accountSelectorService.accounts$.pipe(\n map((accounts) => (accounts ? accounts.length > 0 : false)),\n );\n }\n\n resetPassword(): void {\n this.router.navigate(['../request-password-reset'], { queryParamsHandling: 'merge', relativeTo: this.route });\n }\n\n saveRememberMe(): void {\n try {\n localStorage.setItem(REMEMBER_ME_KEY, this.form.controls['rememberMe'].value ? 'true' : 'false');\n } catch (error) {\n console.log(\n 'Unable to store remember me preference locally (remember me functionality unaffected)',\n error.toString(),\n );\n }\n }\n\n // signInBySession causes user to be redirected to sign in using a session\n signInBySession(sessionId: string): void {\n const claims = parseSession(sessionId);\n if (!claims) {\n return;\n }\n this.accountSelectorService.chooseAccount(claims.sub, sessionId);\n return;\n }\n\n login(): void {\n if (!this.form.valid) {\n return;\n }\n const serviceProvider$ = this.route.queryParamMap.pipe(map((params) => params.get('serviceProviderId')));\n const rememberMe = this.form.controls['rememberMe'].value;\n this.recaptchaV3Service\n .execute('login')\n .pipe(\n take(1),\n withLatestFrom(serviceProvider$),\n switchMap(([recaptchaV3Token, serviceProvider]) => {\n console.log(serviceProvider);\n const recaptchaV2Token = this.form.controls['recaptchaV2Field'].value;\n if (this.recaptchaV2Component) {\n this.recaptchaV2Component.reset();\n }\n return this.vlcService\n .login(\n this.form.controls['email'].value,\n this.form.controls['password'].value,\n rememberMe,\n recaptchaV3Token,\n recaptchaV2Token,\n serviceProvider,\n )\n .pipe(\n catchError((e: HttpErrorResponse) => {\n const errorCode = e?.error?.code;\n switch (errorCode) {\n case 'password_mismatch':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.INCORRECT_EMAIL_OR_PASSWORD');\n this.showRecaptchaV2$$.next(true);\n break;\n case 'password_reset_required':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.MUST_RESET_PASSWORD');\n break;\n case 'federated_identity_required':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.GOOGLE_SIGN_IN_REQUIRED');\n break;\n case 'locked':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.ACCOUNT_LOCKED');\n break;\n case 'frozen':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.ACCOUNT_FROZEN');\n break;\n case 'email_validation_required':\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.VERIFICATION_REQUIRED', {\n duration: TEN_MINUTES_IN_MILLISECONDS,\n });\n break;\n default:\n this.snackbarService.openErrorSnack('ACCOUNT_LOGIN.ERRORS.UNKNOWN_ERROR');\n }\n return of('');\n }),\n );\n }),\n )\n .subscribe((session: string) => {\n if (!session) {\n return;\n }\n this.snackbarService.openSuccessSnack('ACCOUNT_LOGIN.SUCCESS');\n this.signInBySession(session);\n });\n }\n\n loginWithGoogle(): void {\n this.vlcService.ssoRedirect(\n this.serviceProviderService.serviceProviderId,\n this.accountSelectorService.serviceContext,\n 'google',\n this.accountSelectorService.nextUrl,\n this.accountSelectorService.errorUrl,\n );\n }\n\n loginWithMicrosoft(): void {\n this.vlcService.ssoRedirect(\n this.serviceProviderService.serviceProviderId,\n this.accountSelectorService.serviceContext,\n 'microsoft',\n this.accountSelectorService.nextUrl,\n this.accountSelectorService.errorUrl,\n );\n }\n\n loginWithLinkedIn(): void {\n this.vlcService.ssoRedirect(\n this.serviceProviderService.serviceProviderId,\n this.accountSelectorService.serviceContext,\n 'linkedin',\n this.accountSelectorService.nextUrl,\n this.accountSelectorService.errorUrl,\n );\n }\n}\n", "\n
\n
\n
\n \n \n
\n \n \n {{ 'ACCOUNT_LOGIN.REMEMBER_ME' | translate }}\n \n \n @if (showForgotPassword) {\n \n {{ 'ACCOUNT_LOGIN.FORGOT_PASSWORD' | translate }}\n \n }\n
\n @if (showRecaptchaV2$ | async; as showRecaptchaV2) {\n
\n \n
\n }\n \n \n
\n {{ 'ACCOUNT_LOGIN.OR' | translate }}\n
\n
\n
\n \n \n
\n @if (isPartnerCenter) {\n
\n \n \n
\n
\n \n \n
\n }\n
\n
\n
\n", "import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { PartnerService, VendastaLoginCenterService } from '../../common';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { firstValueFrom } from 'rxjs';\n\n@Component({\n selector: 'app-account-logout',\n templateUrl: './account-logout.component.html',\n styleUrls: ['./account-logout.component.scss'],\n})\nexport class AccountLogoutComponent implements OnInit {\n constructor(\n private vlcService: VendastaLoginCenterService,\n private router: Router,\n private snackbarService: SnackbarService,\n private partnerService: PartnerService,\n ) {}\n\n ngOnInit(): void {\n this.redirectToLogin();\n }\n\n private async redirectToLogin(): Promise {\n const partnerId = await firstValueFrom(this.partnerService.partnerId$);\n const success = await firstValueFrom(this.vlcService.logout());\n if (!success) {\n this.snackbarService.openErrorSnack('ACCOUNT_LOGOUT.LOGOUT_FAILED');\n } else {\n const loginPath = ['account-selector'];\n if (partnerId) {\n loginPath.unshift(partnerId);\n }\n\n this.router.navigate(loginPath, {\n queryParams: { email: null },\n queryParamsHandling: 'merge',\n });\n }\n }\n}\n", "\n
\n \n
\n", "import { HttpErrorResponse } from '@angular/common/http';\nimport { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ActivatedRoute, ParamMap, Router } from '@angular/router';\nimport { ReCaptchaV3Service } from 'ng-recaptcha';\nimport { of } from 'rxjs';\nimport { catchError, switchMap, take } from 'rxjs/operators';\n\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { PartnerService, VendastaLoginCenterService } from '../../common';\nimport { AccountSelectorService } from '../account-selector.service';\n\nconst minPasswordLength = 8;\n\n@Component({\n selector: 'app-account-password-reset',\n templateUrl: './account-password-reset.component.html',\n styleUrls: ['./account-password-reset.component.scss'],\n})\nexport class AccountPasswordResetComponent implements OnInit {\n public passwordControl = new FormControl('');\n public passwordValidator = [\n {\n name: 'minlength',\n validatorFn: Validators.minLength(minPasswordLength),\n errorMessage: `Password does not meet the minimum length of ${minPasswordLength}`,\n },\n ];\n public form = new FormGroup({\n newPassword: this.passwordControl,\n });\n public resetSuccess = false;\n\n private token: string;\n\n constructor(\n private vlcService: VendastaLoginCenterService,\n public accountSelectorService: AccountSelectorService,\n private partnerService: PartnerService,\n private router: Router,\n private route: ActivatedRoute,\n private alertService: SnackbarService,\n private recaptchaV3Service: ReCaptchaV3Service,\n ) {}\n\n ngOnInit(): void {\n this.route.queryParamMap.pipe(take(1)).subscribe((paramMap: ParamMap) => {\n this.token = paramMap.get('token');\n });\n }\n\n submitRequest(): void {\n if (!this.form.valid) {\n return;\n }\n this.accountSelectorService.setLoading(true);\n this.vlcService\n .resetPassword(this.form.controls['newPassword'].value, this.token)\n .pipe(\n catchError((e: HttpErrorResponse) => {\n if (e.status === 403) {\n this.alertService.openErrorSnack(\n 'Password reset is expired or used already. Please request a new password reset.',\n {\n action: 'Request password reset',\n actionCallback: () => this.resetPassword(),\n },\n );\n } else if (e.status == 400) {\n this.alertService.openErrorSnack('New password cannot be same as the old password');\n } else {\n this.alertService.openErrorSnack('An error occurred');\n }\n return of(false);\n }),\n )\n .subscribe((success: boolean) => {\n this.resetSuccess = success;\n this.accountSelectorService.setLoading(false);\n });\n }\n\n continueToServiceProviderAfterPasswordReset(): void {\n const email = this.route.snapshot.queryParamMap.get('email');\n this.accountSelectorService.setLoading(true);\n this.recaptchaV3Service\n .execute('login')\n .pipe(\n take(1),\n switchMap((token) => {\n return this.vlcService.login(email, this.form.controls['newPassword'].value, false, token, '');\n }),\n )\n .subscribe(\n (sessionId: string) => {\n this.accountSelectorService.chooseAccount(email, sessionId);\n this.accountSelectorService.setLoading(false);\n },\n (e: HttpErrorResponse) => {\n this.accountSelectorService.setLoading(false);\n if (e.status === 404) {\n this.alertService.openErrorSnack('User not found.');\n } else if (e.status === 403) {\n this.alertService.openErrorSnack(\n 'You can no longer use an email/password combination for this account. Please sign in with Google.',\n );\n } else {\n console.log(e.message);\n this.alertService.openErrorSnack('An error occurred');\n }\n },\n );\n }\n\n resetPassword(): void {\n this.router.navigate([this.partnerService.partnerId, 'account-selector', 'request-password-reset'], {\n queryParamsHandling: 'merge',\n });\n }\n}\n", "\n
\n @if (!resetSuccess) {\n
\n

{{ 'RESET_PASSWORD.ENTER_NEW_PASSWORD' | translate }}

\n
\n \n \n {{ 'COMMON.SUBMIT' | translate }}\n \n \n
\n }\n @if (resetSuccess) {\n
\n

{{ 'RESET_PASSWORD.SUCCESS' | translate }}

\n @if (accountSelectorService.host$ | async) {\n \n {{ 'COMMON.OK' | translate }}\n \n }\n
\n }\n
\n {{ 'RESET_PASSWORD.REQUEST_ANOTHER_PASSWORD_RESET' | translate }}\n
\n
\n", "import { Component } from '@angular/core';\nimport { FormControl, FormGroup } from '@angular/forms';\nimport { catchError } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { VendastaLoginCenterService } from '../../common/vendasta-login-center';\nimport { AccountSelectorService } from '../account-selector.service';\nimport { Router } from '@angular/router';\nimport { PartnerService } from '../../common/core';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\n\n@Component({\n selector: 'app-account-reset-password',\n templateUrl: './account-request-password-reset.component.html',\n styleUrls: ['./account-request-password-reset.component.scss'],\n})\nexport class AccountRequestPasswordResetComponent {\n public submitted = false;\n public emailControl = new FormControl('');\n public form = new FormGroup({\n email: this.emailControl,\n });\n\n constructor(\n private vlcService: VendastaLoginCenterService,\n public accountSelectorService: AccountSelectorService,\n private router: Router,\n private partnerService: PartnerService,\n private snackbarService: SnackbarService,\n ) {}\n\n submitRequest(): void {\n if (!this.form.valid) {\n return;\n }\n this.accountSelectorService.setLoading(true);\n this.vlcService\n .requestPasswordReset(this.form.controls['email'].value)\n .pipe(\n catchError(() => {\n this.snackbarService.openErrorSnack('ACCOUNT_REQUEST_PASSWORD.ERROR_HAS_OCCURED');\n return of(false);\n }),\n )\n .subscribe((success: boolean) => {\n this.accountSelectorService.setLoading(false);\n this.submitted = success;\n });\n }\n\n backToLogin(): void {\n if (this.partnerService.partnerId) {\n this.router.navigate([this.partnerService.partnerId, 'account-selector', 'login'], {\n queryParamsHandling: 'merge',\n });\n } else {\n this.router.navigate(['account-selector', 'login'], { queryParamsHandling: 'merge' });\n }\n }\n}\n", "\n
\n @if (!submitted) {\n
\n

{{ 'ACCOUNT_REQUEST_PASSWORD.WE_WILL_SEND_YOU_A_LINK' | translate }}

\n
\n \n \n {{ 'ACCOUNT_REQUEST_PASSWORD.SUBMIT' | translate }}\n \n \n
\n }\n @if (submitted) {\n
\n

{{ 'ACCOUNT_REQUEST_PASSWORD.CHECK_YOUR_EMAIL' | translate }}

\n \n {{ 'ACCOUNT_REQUEST_PASSWORD.OK' | translate }}\n \n
\n }\n
\n", "import { Component } from '@angular/core';\nimport { Environment } from '@vendasta/core';\nimport { EnvironmentService } from '@galaxy/core';\n\n@Component({\n selector: 'app-partner-center-footer',\n templateUrl: './partner-center-footer.component.html',\n styleUrls: ['./partner-center-footer.component.scss'],\n})\nexport class PartnerCenterFooterComponent {\n signUpUrl: string =\n this.environmentService.getEnvironment() === Environment.PROD\n ? 'https://signup.vendasta.com'\n : 'https://partner-demo.vendasta-internal.com/';\n termsOfServiceUrl = 'https://www.vendasta.com/terms/terms-of-service/';\n privacyPolicyUrl = 'https://www.vendasta.com/privacy-policy/';\n\n constructor(private environmentService: EnvironmentService) {}\n}\n", "

\n {{ 'FOOTER.NEW_HERE' | translate }}\n {{ 'FOOTER.GET_STARTED' | translate }}\n

\n

\n", "import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, ParamMap } from '@angular/router';\nimport { distinctUntilChanged, filter, map, publishReplay, refCount, switchMap } from 'rxjs/operators';\nimport { AccountSelectorService } from './account-selector.service';\nimport { Observable, combineLatest } from 'rxjs';\nimport { BrandingV2Interface, BrandingV2Service } from '@galaxy/partner';\nimport { PartnerService, ServiceProviderService } from '../common';\n\n@Component({\n selector: 'app-account-selector',\n templateUrl: './account-selector.component.html',\n styleUrls: ['./account-selector.component.scss'],\n})\nexport class AccountSelectorComponent implements OnInit {\n public namespace$: Observable;\n private whitelabelConfig$: Observable;\n public logo$: Observable;\n public themeColor$: Observable;\n protected showPartnerCenterFooter$: Observable;\n\n constructor(\n private route: ActivatedRoute,\n private brandingService: BrandingV2Service,\n private serviceProviderService: ServiceProviderService,\n private partnerService: PartnerService,\n public accountSelectorService: AccountSelectorService,\n ) {}\n\n ngOnInit(): void {\n this.namespace$ = this.route.paramMap.pipe(\n map((paramMap: ParamMap) => paramMap.get('partnerId')),\n distinctUntilChanged(),\n publishReplay(1),\n refCount(),\n );\n\n this.whitelabelConfig$ = this.namespace$.pipe(\n filter((namespace: string) => !!namespace),\n distinctUntilChanged(),\n switchMap((namespace: string) => this.brandingService.getBranding(namespace)),\n distinctUntilChanged(),\n publishReplay(1),\n refCount(),\n );\n\n this.showPartnerCenterFooter$ = combineLatest([\n this.serviceProviderService.serviceIsPartnerCenter$,\n this.partnerService.partnerId$,\n ]).pipe(map(([isPartnerCenter, partnerId]) => isPartnerCenter && !partnerId));\n\n this.logo$ = this.whitelabelConfig$.pipe(map((config: BrandingV2Interface) => config.logoUrl));\n\n this.themeColor$ = this.whitelabelConfig$.pipe(map((config: BrandingV2Interface) => `#${config.primaryColor}`));\n\n this.route.paramMap.subscribe((paramMap: ParamMap) => {\n this.partnerService.setPartnerId(paramMap.get('partnerId'));\n this.accountSelectorService.loadLogins(this.partnerService.partnerId);\n });\n\n this.route.queryParamMap.subscribe((paramMap: ParamMap) => {\n const serviceProviderId = paramMap.get('serviceProviderId');\n this.serviceProviderService.setServiceProviderId(serviceProviderId);\n this.accountSelectorService.setServiceContext(paramMap.get('serviceContext'));\n this.accountSelectorService.setNextUrl(paramMap.get('nextUrl'));\n this.accountSelectorService.getServiceProviderHost();\n this.accountSelectorService.setErrorUrl(paramMap.get('errorUrl'));\n });\n }\n}\n", "
\n @if (namespace$ | async) {\n
\n
\n \n
\n }\n
\n
\n @if (accountSelectorService.loading$ | async) {\n \n }\n \n @if (showPartnerCenterFooter$ | async) {\n \n }\n
\n
\n
\n", "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { AccountChooserComponent } from './account-chooser';\nimport { AccountLoginComponent } from './account-login/account-login.component';\nimport { AccountSelectorComponent } from './account-selector.component';\nimport { AccountLogoutComponent } from './account-logout/account-logout.component';\nimport { AccountRequestPasswordResetComponent } from './account-request-password-reset/account-request-password-reset.component';\nimport { AccountPasswordResetComponent } from './account-password-reset/account-password-reset.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: AccountSelectorComponent,\n children: [\n {\n path: '',\n component: AccountChooserComponent,\n },\n {\n path: 'login',\n component: AccountLoginComponent,\n },\n {\n path: 'logout',\n component: AccountLogoutComponent,\n },\n {\n path: 'request-password-reset',\n component: AccountRequestPasswordResetComponent,\n },\n {\n path: 'reset-password',\n component: AccountPasswordResetComponent,\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class RoutingModule {}\n", "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { LexiconModule } from '@galaxy/lexicon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\nimport { GalaxyInputModule } from '@vendasta/galaxy/input';\nimport {\n RECAPTCHA_SETTINGS,\n RECAPTCHA_V3_SITE_KEY,\n RecaptchaFormsModule,\n RecaptchaModule,\n RecaptchaSettings,\n} from 'ng-recaptcha';\nimport baseTranslations from '../../assets/i18n/en_devel.json';\nimport { WEBLATE_COMPONENT_NAME } from '../common/constants';\nimport { AccountChooserComponent, AccountComponent, AccountListComponent } from './account-chooser';\nimport { AccountLoginComponent } from './account-login/account-login.component';\nimport { AccountLogoutComponent } from './account-logout/account-logout.component';\nimport { AccountPasswordResetComponent } from './account-password-reset/account-password-reset.component';\nimport { AccountRequestPasswordResetComponent } from './account-request-password-reset/account-request-password-reset.component';\nimport { AccountSelectorComponent } from './account-selector.component';\nimport { AccountSelectorService } from './account-selector.service';\nimport { PartnerCenterFooterComponent } from './footer/partner-center-footer.component';\nimport { HeaderComponent } from './header/header.component';\nimport { RoutingModule } from './routing.module';\n\nconst MaterialModules = [\n MatCommonModule,\n MatCardModule,\n MatInputModule,\n MatFormFieldModule,\n MatButtonModule,\n MatSnackBarModule,\n MatIconModule,\n MatTooltipModule,\n MatProgressSpinnerModule,\n MatCheckboxModule,\n MatProgressBarModule,\n];\n\nconst GalaxyModules = [GalaxyFormFieldModule, GalaxyInputModule];\n\n@NgModule({\n imports: [\n RoutingModule,\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MaterialModules,\n GalaxyModules,\n RecaptchaModule,\n RecaptchaFormsModule,\n TranslateModule,\n LexiconModule.forChild({\n componentName: WEBLATE_COMPONENT_NAME,\n baseTranslation: baseTranslations,\n }),\n ],\n declarations: [\n AccountRequestPasswordResetComponent,\n AccountPasswordResetComponent,\n AccountSelectorComponent,\n AccountChooserComponent,\n AccountLoginComponent,\n AccountLogoutComponent,\n AccountListComponent,\n AccountComponent,\n HeaderComponent,\n PartnerCenterFooterComponent,\n ],\n providers: [\n AccountSelectorService,\n {\n provide: RECAPTCHA_V3_SITE_KEY,\n useValue: '6LfDbqghAAAAAEjSBFRh_4TBj836XmCDEHgymWyl',\n },\n {\n provide: RECAPTCHA_SETTINGS,\n useValue: {\n siteKey: '6LfYCesiAAAAAHErnDQX35djGpb86mgBx-jTvRfs',\n } as RecaptchaSettings,\n },\n ],\n})\nexport class AccountSelectorModule {}\n"], "mappings": "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", "names": ["GalaxyCoreInputDirective", "constructor", "id", "label", "placeholder", "formControl", "UntypedFormControl", "required", "disableAutoComplete", "validators", "asyncValidators", "bottomSpacing", "isDisabled", "asyncValidatorErrors$$", "BehaviorSubject", "asyncValidatorErrors$", "Observable", "onChange", "_value", "onTouched", "disabled", "setDisabledState", "value", "val", "setValue", "toString", "updateValueAndValidity", "setupControl", "config", "some", "validator", "validatorFn", "Validators", "push", "errorMessage", "map", "control", "message", "setValidators", "length", "valueChanges", "pipe", "debounceTime", "ASYNC_DEBOUNCE_DELAY", "distinctUntilChanged", "mergeMap", "runAsyncValidators", "result", "handleAsyncValidatorResults", "tap", "next", "validatorError$", "combineLatest", "statusChanges", "asyncErrors", "errors", "results", "index", "validatorResult", "filteredResults", "filter", "r", "asyncHasErrors", "errorMessages", "collectErrorsAndUpdateForm", "allErrorsMap", "forEach", "errorSet", "Object", "keys", "key", "setErrors", "onBlur", "getValue", "writeValue", "inputValue", "registerOnChange", "fn", "registerOnTouched", "disable", "enable", "_GalaxyCoreInputDirective", "selectors", "inputs", "booleanAttribute", "size", "features", "\u0275\u0275InputTransformsFeature", "GetOptionPipe", "transform", "obj", "pure", "_GetOptionPipe", "GetOptionGroupPipe", "_GetOptionGroupPipe", "PRICE_REGEX", "URL_REGEX", "SUBDOMAIN_REGEX", "MARKET_ID_REGEX", "EMAIL_REGEX", "PHONE_NUMBER_REGEX", "DYNAMIC_CONTENT_ERROR", "invalidDynamicComponent", "POSTAL_CODE_REGEXES", "CA", "US", "isArray", "Array", "x", "length", "isNumeric", "val", "parseFloat", "Validator", "isPrice", "control", "value", "match", "toFixed", "invalidPrice", "isUrl", "invalidUrl", "isEmailList", "toString", "split", "map", "email", "trim", "filter", "invalidEmail", "isEmail", "isPhoneNumber", "invalidPhoneNumber", "isValidPostalCode", "countryCode", "countryRegex", "toUpperCase", "test", "invalidPostalCode", "isInRange", "lower", "upper", "Number", "outOfRange", "isValidMarketId", "invalidMarketId", "isMinimumLength", "minimumLength", "minlength", "isValidSubdomain", "invalidSubdomain", "containsValidDynamicContent", "dynamicContent", "p", "search", "DYNAMIC_CONTENT_REGEX", "errorMessage", "validatorName", "validatorValue", "required", "requiredLength", "invalidZipCode", "_Validator", "URL_MAILTO_OR_DYNAMIC_CONTENT_REGEX", "HEX_COLOR_REGEX", "isGreaterThanZero", "isLessThanOrEqualToZero", "\u0275\u0275element", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "ctx_r0", "hint", "\u0275\u0275textInterpolate1", "validatorError_r2", "\u0275\u0275template", "EmailInputComponent_Conditional_8_Conditional_1_Template", "\u0275\u0275conditional", "ctx", "EmailInputComponent", "GalaxyCoreInputDirective", "constructor", "class", "label", "validators", "validatorFn", "Validator", "isEmail", "errorMessage", "ngOnInit", "setupControl", "\u0275t", "selectors", "hostVars", "hostBindings", "rf", "\u0275\u0275classMap", "provide", "NG_VALUE_ACCESSOR", "useExisting", "forwardRef", "multi", "\u0275\u0275InheritDefinitionFeature", "decls", "vars", "consts", "template", "EmailInputComponent_Conditional_4_Template", "\u0275\u0275listener", "$event", "writeValue", "target", "value", "onBlur", "EmailInputComponent_Conditional_7_Template", "EmailInputComponent_Conditional_8_Template", "\u0275\u0275property", "\u0275\u0275pureFunction1", "_c0", "formControl", "invalid", "pristine", "disableAutoComplete", "\u0275\u0275propertyInterpolate", "placeholder", "id", "required", "tmp_10_0", "validatorError$", "_EmailInputComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "ctx_r0", "label", "\u0275\u0275textInterpolate1", "validatorError_r2", "\u0275\u0275template", "PasswordInputComponent_Conditional_6_Conditional_1_Template", "\u0275\u0275conditional", "ctx", "\u0275\u0275element", "\u0275\u0275repeaterCreate", "PasswordInputComponent_Conditional_8_Conditional_1_For_9_Template", "\u0275\u0275repeaterTrackByIdentity", "tmp_4_0", "strengthLabel$", "undefined", "\u0275\u0275classMapInterpolate1", "\u0275\u0275repeater", "\u0275\u0275pureFunction0", "_c1", "PasswordInputComponent_Conditional_8_Conditional_1_Template", "tmp_1_0", "passwordStrength$", "\u0275\u0275textInterpolate2", "validatorError_r4", "PasswordInputComponent_Conditional_9_Conditional_6_Conditional_1_Template", "PasswordInputComponent_Conditional_9_Conditional_1_Template", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onBlur", "togglePasswordVisibility", "PasswordInputComponent_Conditional_9_Conditional_6_Template", "\u0275\u0275property", "\u0275\u0275pureFunction1", "_c0", "confirmPasswordFormControl", "invalid", "pristine", "\u0275\u0275propertyInterpolate", "placeholder", "id", "required", "currentType", "currentIcon", "tmp_10_0", "validatorError$", "strongRegex", "RegExp", "mediumRegex", "PasswordInputComponent", "GalaxyCoreInputDirective", "constructor", "class", "showPasswordStrength", "confirmPassword", "UntypedFormControl", "confirmPasswordValidator", "destroyRef", "inject", "DestroyRef", "ngOnInit", "setupControl", "config", "formControl", "validators", "push", "validatorFn", "validatePasswordInputsMatch", "errorMessage", "setValidators", "map", "validator", "addListenersForPasswordMatching", "valueChanges", "pipe", "calculatePasswordStrength", "startWith", "getStrengthKey", "combineLatest", "takeUntilDestroyed", "distinctUntilChanged", "fcPrevious", "cpPrevious", "fcCurrent", "cpCurrent", "tap", "updateValueAndValidity", "subscribe", "password", "test", "strength", "key", "\u0275t", "selectors", "hostVars", "hostBindings", "rf", "\u0275\u0275classMap", "booleanAttribute", "features", "\u0275\u0275ProvidersFeature", "provide", "NG_VALUE_ACCESSOR", "useExisting", "forwardRef", "multi", "\u0275\u0275InputTransformsFeature", "\u0275\u0275InheritDefinitionFeature", "decls", "vars", "consts", "template", "PasswordInputComponent_Conditional_1_Template", "$event", "writeValue", "target", "value", "PasswordInputComponent_Conditional_6_Template", "PasswordInputComponent_Conditional_8_Template", "PasswordInputComponent_Conditional_9_Template", "tmp_9_0", "_PasswordInputComponent", "compareControl", "control", "passwordmatch", "MODULE_IMPORTS", "CommonModule", "MatFormFieldModule", "MatIconModule", "MatInputModule", "FormsModule", "ReactiveFormsModule", "MatSelectModule", "TranslateModule", "MatMenuModule", "MatTooltipModule", "MatAutocompleteModule", "GalaxyFormFieldModule", "GalaxyInputModule", "GetOptionPipe", "GetOptionGroupPipe", "imports", "MODULE_IMPORTS", "_GalaxyInputModule", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "ctx_r0", "account", "name", "\u0275\u0275pipeBind1", "AccountComponent", "selectors", "inputs", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "AccountComponent_Conditional_1_Template", "AccountComponent_Conditional_4_Template", "\u0275\u0275conditional", "\u0275\u0275textInterpolate", "email", "loginRequired", "_AccountComponent", "\u0275\u0275elementStart", "\u0275\u0275twoWayListener", "$event", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "i0", "\u0275\u0275twoWayBindingSet", "search", "\u0275\u0275resetView", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275propertyInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275twoWayProperty", "\u0275\u0275listener", "account_r4", "_r3", "$implicit", "selectAccount", "removeAccount", "\u0275\u0275text", "\u0275\u0275property", "\u0275\u0275pipeBind2", "\u0275\u0275pureFunction1", "_c0", "email", "\u0275\u0275repeaterCreate", "AccountListComponent_Conditional_1_For_3_Template", "\u0275\u0275repeaterTrackByIdentity", "\u0275\u0275repeater", "filteredAccounts", "AccountListComponent", "constructor", "selection", "EventEmitter", "remove", "account", "emit", "event", "stopPropagation", "of", "accounts", "pipe", "map", "filter", "inEmail", "toLowerCase", "indexOf", "inName", "name", "selectors", "inputs", "outputs", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "AccountListComponent_Conditional_0_Template", "AccountListComponent_Conditional_1_Template", "\u0275\u0275conditional", "length", "_AccountListComponent", "AccountSelectorService", "constructor", "snackbarService", "vlcService", "serviceProviderService", "partnerService", "_loading$$", "BehaviorSubject", "loading$", "asObservable", "pipe", "publishReplay", "refCount", "_host$$", "host$", "_accounts$$", "accounts$", "filter", "accounts", "loadLogins", "namespace", "setLoading", "listLogins", "take", "subscribe", "next", "setNextUrl", "nextUrl", "_nextUrl", "setErrorUrl", "errorUrl", "_errorUrl", "setServiceContext", "b64ServiceContext", "_serviceContext", "serviceContext", "getServiceProviderHost", "serviceProviderId", "serviceProviderHost", "loading", "chooseAccount", "email", "sessionId", "openErrorSnack", "getEntryUrlWithCode", "catchError", "of", "entryUrl", "window", "location", "href", "signInUser", "userId", "accountSelectorRedirect", "partnerId", "removeAccountSelectorAccount", "tap", "cleanedAccounts", "value", "account", "\u0275\u0275inject", "SnackbarService", "VendastaLoginCenterService", "ServiceProviderService", "PartnerService", "factory", "\u0275fac", "providedIn", "_AccountSelectorService", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "goBack", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "ctx", "HeaderComponent", "constructor", "router", "route", "serviceProviderService", "accountSelectorService", "partnerService", "showLogo$", "combineLatest", "serviceIsPartnerCenter$", "partnerId$", "pipe", "map", "isPartnerCenter", "partnerId", "navigate", "queryParams", "email", "queryParamsHandling", "relativeTo", "\u0275\u0275directiveInject", "Router", "ActivatedRoute", "ServiceProviderService", "AccountSelectorService", "PartnerService", "selectors", "inputs", "title", "backSegments", "showBackButton", "decls", "vars", "consts", "template", "rf", "\u0275\u0275template", "HeaderComponent_Conditional_0_Template", "HeaderComponent_Conditional_1_Template", "HeaderComponent_Conditional_5_Template", "\u0275\u0275conditional", "\u0275\u0275pipeBind1", "tmp_3_0", "host$", "_HeaderComponent", "AccountChooserComponent", "constructor", "accountSelectorService", "router", "route", "translate", "chooseAnotherAccount", "name", "userId", "email", "loginRequired", "_destroy$$", "Subject", "ngOnInit", "accounts$", "pipe", "takeUntil", "subscribe", "accounts", "length", "navigateToLogin", "stream", "translation", "ngOnDestroy", "next", "complete", "selectAccount", "account", "signInUser", "removeAccount", "removeAccountSelectorAccount", "emailHint", "navigate", "queryParams", "queryParamsHandling", "relativeTo", "\u0275\u0275directiveInject", "AccountSelectorService", "Router", "ActivatedRoute", "TranslateService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275element", "\u0275\u0275elementStart", "\u0275\u0275listener", "$event", "\u0275\u0275elementEnd", "\u0275\u0275propertyInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275advance", "\u0275\u0275property", "_AccountChooserComponent", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "resetPassword", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "\u0275\u0275element", "\u0275\u0275styleProp", "showRecaptchaV2_r3", "_r4", "loginWithMicrosoft", "loginWithLinkedIn", "\u0275\u0275textInterpolate", "REMEMBER_ME_KEY", "TEN_MINUTES_IN_MILLISECONDS", "AccountLoginComponent", "constructor", "vlcService", "router", "accountSelectorService", "serviceProviderService", "partnerService", "route", "recaptchaV3Service", "snackbarService", "emailControl", "FormControl", "Validators", "required", "email", "passwordControl", "rememberMeControl", "form", "FormGroup", "password", "rememberMe", "recaptchaV2Field", "isPartnerCenter", "showRecaptchaV2$$", "BehaviorSubject", "showRecaptchaV2$", "pipe", "tap", "show", "controls", "setValidators", "clearValidators", "updateValueAndValidity", "ngOnInit", "localStorage", "getItem", "setValue", "queryParamMap", "take", "subscribe", "paramMap", "sessionId", "get", "error", "status", "disable", "onlySelf", "emitEvent", "signInBySession", "openErrorSnack", "navigate", "replaceUrl", "relativeTo", "queryParams", "queryParamsHandling", "showForgotPassword", "partnerId", "serviceIsPartnerCenter", "showBackButton$", "accounts$", "map", "accounts", "length", "saveRememberMe", "setItem", "value", "console", "log", "toString", "claims", "parseSession", "chooseAccount", "sub", "login", "valid", "serviceProvider$", "params", "execute", "withLatestFrom", "switchMap", "recaptchaV3Token", "serviceProvider", "recaptchaV2Token", "recaptchaV2Component", "reset", "catchError", "e", "code", "next", "duration", "of", "session", "openSuccessSnack", "loginWithGoogle", "ssoRedirect", "serviceProviderId", "serviceContext", "nextUrl", "errorUrl", "\u0275\u0275directiveInject", "VendastaLoginCenterService", "Router", "AccountSelectorService", "ServiceProviderService", "PartnerService", "ActivatedRoute", "ReCaptchaV3Service", "SnackbarService", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275template", "AccountLoginComponent_Conditional_14_Template", "AccountLoginComponent_Conditional_15_Template", "AccountLoginComponent_Conditional_30_Template", "\u0275\u0275property", "\u0275\u0275pureFunction0", "_c1", "\u0275\u0275propertyInterpolate", "\u0275\u0275conditional", "tmp_12_0", "_AccountLoginComponent", "AccountLogoutComponent", "constructor", "vlcService", "router", "snackbarService", "partnerService", "ngOnInit", "redirectToLogin", "__async", "partnerId", "firstValueFrom", "partnerId$", "logout", "openErrorSnack", "loginPath", "unshift", "navigate", "queryParams", "email", "queryParamsHandling", "\u0275\u0275directiveInject", "VendastaLoginCenterService", "Router", "SnackbarService", "PartnerService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275element", "\u0275\u0275elementStart", "\u0275\u0275elementEnd", "\u0275\u0275propertyInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275advance", "\u0275\u0275property", "_AccountLogoutComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "submitRequest", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275property", "form", "passwordControl", "passwordValidator", "valid", "accountSelectorService", "loading$", "\u0275\u0275textInterpolate1", "_r3", "continueToServiceProviderAfterPasswordReset", "\u0275\u0275template", "AccountPasswordResetComponent_Conditional_4_Conditional_4_Template", "\u0275\u0275conditional", "host$", "minPasswordLength", "AccountPasswordResetComponent", "constructor", "vlcService", "partnerService", "router", "route", "alertService", "recaptchaV3Service", "FormControl", "name", "validatorFn", "Validators", "minLength", "errorMessage", "FormGroup", "newPassword", "resetSuccess", "ngOnInit", "queryParamMap", "pipe", "take", "subscribe", "paramMap", "token", "get", "setLoading", "resetPassword", "controls", "value", "catchError", "e", "status", "openErrorSnack", "action", "actionCallback", "of", "success", "email", "snapshot", "execute", "switchMap", "login", "sessionId", "chooseAccount", "console", "log", "message", "navigate", "partnerId", "queryParamsHandling", "\u0275\u0275directiveInject", "VendastaLoginCenterService", "AccountSelectorService", "PartnerService", "Router", "ActivatedRoute", "SnackbarService", "ReCaptchaV3Service", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "AccountPasswordResetComponent_Conditional_3_Template", "AccountPasswordResetComponent_Conditional_4_Template", "\u0275\u0275propertyInterpolate", "\u0275\u0275pureFunction0", "_c0", "_AccountPasswordResetComponent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "submitRequest", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275property", "form", "\u0275\u0275propertyInterpolate", "emailControl", "valid", "accountSelectorService", "loading$", "\u0275\u0275textInterpolate1", "_r3", "backToLogin", "AccountRequestPasswordResetComponent", "constructor", "vlcService", "router", "partnerService", "snackbarService", "submitted", "FormControl", "FormGroup", "email", "setLoading", "requestPasswordReset", "controls", "value", "pipe", "catchError", "openErrorSnack", "of", "subscribe", "success", "partnerId", "navigate", "queryParamsHandling", "\u0275\u0275directiveInject", "VendastaLoginCenterService", "AccountSelectorService", "Router", "PartnerService", "SnackbarService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "AccountRequestPasswordResetComponent_Conditional_3_Template", "AccountRequestPasswordResetComponent_Conditional_4_Template", "\u0275\u0275pureFunction0", "_c0", "\u0275\u0275conditional", "_AccountRequestPasswordResetComponent", "PartnerCenterFooterComponent", "constructor", "environmentService", "signUpUrl", "getEnvironment", "Environment", "PROD", "termsOfServiceUrl", "privacyPolicyUrl", "\u0275\u0275directiveInject", "EnvironmentService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275element", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "\u0275\u0275property", "\u0275\u0275sanitizeUrl", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind2", "\u0275\u0275pureFunction2", "_c0", "\u0275\u0275sanitizeHtml", "_PartnerCenterFooterComponent", "\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275styleProp", "\u0275\u0275pipeBind1", "ctx_r0", "themeColor$", "\u0275\u0275property", "logo$", "\u0275\u0275sanitizeUrl", "AccountSelectorComponent", "constructor", "route", "brandingService", "serviceProviderService", "partnerService", "accountSelectorService", "ngOnInit", "namespace$", "paramMap", "pipe", "map", "get", "distinctUntilChanged", "publishReplay", "refCount", "whitelabelConfig$", "filter", "namespace", "switchMap", "getBranding", "showPartnerCenterFooter$", "combineLatest", "serviceIsPartnerCenter$", "partnerId$", "isPartnerCenter", "partnerId", "config", "logoUrl", "primaryColor", "subscribe", "setPartnerId", "loadLogins", "queryParamMap", "serviceProviderId", "setServiceProviderId", "setServiceContext", "setNextUrl", "getServiceProviderHost", "setErrorUrl", "\u0275\u0275directiveInject", "ActivatedRoute", "BrandingV2Service", "ServiceProviderService", "PartnerService", "AccountSelectorService", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "AccountSelectorComponent_Conditional_1_Template", "AccountSelectorComponent_Conditional_6_Template", "AccountSelectorComponent_Conditional_9_Template", "\u0275\u0275conditional", "\u0275\u0275pureFunction1", "_c0", "loading$", "_AccountSelectorComponent", "routes", "path", "component", "AccountSelectorComponent", "children", "AccountChooserComponent", "AccountLoginComponent", "AccountLogoutComponent", "AccountRequestPasswordResetComponent", "AccountPasswordResetComponent", "RoutingModule", "RouterModule", "forChild", "_RoutingModule", "MaterialModules", "MatCommonModule", "MatCardModule", "MatInputModule", "MatFormFieldModule", "MatButtonModule", "MatSnackBarModule", "MatIconModule", "MatTooltipModule", "MatProgressSpinnerModule", "MatCheckboxModule", "MatProgressBarModule", "GalaxyModules", "GalaxyFormFieldModule", "GalaxyInputModule", "AccountSelectorModule", "AccountSelectorService", "provide", "RECAPTCHA_V3_SITE_KEY", "useValue", "RECAPTCHA_SETTINGS", "siteKey", "imports", "RoutingModule", "CommonModule", "FormsModule", "ReactiveFormsModule", "RecaptchaModule", "RecaptchaFormsModule", "TranslateModule", "LexiconModule", "forChild", "componentName", "WEBLATE_COMPONENT_NAME", "baseTranslation", "baseTranslations", "_AccountSelectorModule"] }