@infrab4a/connect-angular 3.4.3-beta.0 → 3.4.3-beta.1
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/bundles/infrab4a-connect-angular.umd.js +76 -11
- package/bundles/infrab4a-connect-angular.umd.js.map +1 -1
- package/esm2015/angular-connect.module.js +5 -5
- package/esm2015/angular-hasura-graphql.module.js +74 -8
- package/esm2015/services/shipping.service.js +7 -8
- package/fesm2015/infrab4a-connect-angular.js +81 -16
- package/fesm2015/infrab4a-connect-angular.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infrab4a-connect-angular.js","sources":["../../../projects/connect-angular/src/services/auth.service.ts","../../../projects/connect-angular/src/consts/backend-url.const.ts","../../../projects/connect-angular/src/consts/default-shop.const.ts","../../../projects/connect-angular/src/consts/es-config.const.ts","../../../projects/connect-angular/src/consts/hasura-options.const.ts","../../../projects/connect-angular/src/services/errors/invalid-coupon.error.ts","../../../projects/connect-angular/src/services/errors/group-invalid-coupon.error.ts","../../../projects/connect-angular/src/services/coupon.service.ts","../../../projects/connect-angular/src/services/checkout.service.ts","../../../projects/connect-angular/src/services/cart.service.ts","../../../projects/connect-angular/src/services/checkout-subscription.service.ts","../../../projects/connect-angular/src/services/home-shop.service.ts","../../../projects/connect-angular/src/services/order.service.ts","../../../projects/connect-angular/src/services/shipping.service.ts","../../../projects/connect-angular/src/angular-firebase-auth.module.ts","../../../projects/connect-angular/src/angular-elastic-search.module.ts","../../../projects/connect-angular/src/angular-firestore.module.ts","../../../projects/connect-angular/src/angular-hasura-graphql.module.ts","../../../projects/connect-angular/src/angular-connect.module.ts","../../../projects/connect-angular/src/infrab4a-connect-angular.ts"],"sourcesContent":["import { Injectable, Inject } from '@angular/core'\r\nimport { AngularFireAuth } from '@angular/fire/auth'\r\nimport { User, UserRepository } from '@infrab4a/connect'\r\nimport { combineLatest, Observable, of } from 'rxjs'\r\nimport { catchError, map, mergeMap } from 'rxjs/operators'\r\nimport firebase from 'firebase/app'\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n constructor(\r\n private readonly angularFireAuth: AngularFireAuth,\r\n @Inject('UserRepository') private readonly userRepository: UserRepository,\r\n ) {}\r\n\r\n getAuthstate(): Observable<{ user: User; isAnonymous: boolean }> {\r\n const observables: [Observable<firebase.User>, Observable<User>] = [\r\n this.angularFireAuth.authState.pipe(catchError(() => of(null))),\r\n this.getUser().pipe(catchError(() => of(null))),\r\n ]\r\n\r\n return combineLatest(observables).pipe(\r\n map(([fireUser, user]) => {\r\n return {\r\n user,\r\n isAnonymous: fireUser?.isAnonymous,\r\n } as { user: User; isAnonymous: boolean }\r\n }),\r\n )\r\n }\r\n\r\n getUser(): Observable<User> {\r\n return this.getFireUser().pipe(\r\n map((user) => user?.uid),\r\n mergeMap((id) => (id ? this.userRepository.get({ id }) : of(null))),\r\n )\r\n }\r\n\r\n getTokenId(): Observable<string> {\r\n return this.angularFireAuth.idToken\r\n }\r\n\r\n getFireUser(): Observable<firebase.User> {\r\n return this.angularFireAuth.user.pipe(catchError(() => of(null)))\r\n }\r\n}\r\n","export const BACKEND_URL = 'BACKEND_URL'","export const DEFAULT_SHOP = 'DEFAULT_SHOP'\r\n","export const ES_CONFIG = 'ES_CONFIG'\r\n","export const HASURA_OPTIONS = 'HASURA_OPTIONS'\r\n","import { CustomError } from 'ts-custom-error'\r\n\r\nexport class InvalidCouponError extends CustomError {\r\n constructor(readonly message) {\r\n super(message)\r\n }\r\n}\r\n","import { CustomError } from 'ts-custom-error'\r\n\r\nimport { InvalidCouponError } from './invalid-coupon.error'\r\n\r\nexport class GroupInvalidCouponError extends CustomError {\r\n constructor(readonly errors: InvalidCouponError[]) {\r\n super('Many coupon errors throw')\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n Category,\r\n CategoryRepository,\r\n Checkout,\r\n CheckoutSubscription,\r\n CheckoutTypes,\r\n Coupon,\r\n CouponRepository,\r\n CouponTypes,\r\n Exclusivities,\r\n LineItem,\r\n OrderRepository,\r\n Shops,\r\n Status,\r\n SubscriptionRepository,\r\n Where\r\n} from '@infrab4a/connect'\r\nimport { from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap, map } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { InvalidCouponError } from './errors'\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CouponService {\r\n constructor(\r\n @Inject('CouponRepository') private readonly couponRepository: CouponRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderRepository,\r\n @Inject('SubscriptionRepository') private readonly subscriptionRepository: SubscriptionRepository,\r\n @Inject('CategoryRepository') private readonly categoryRepository: CategoryRepository,\r\n ) {}\r\n\r\n checkCoupon(\r\n nickname: string,\r\n userEmail: string,\r\n checkoutType: CheckoutTypes,\r\n plan?: string,\r\n checkout?: Partial<Checkout>,\r\n isSubscription?: boolean,\r\n ): Observable<Coupon> {\r\n return from(\r\n this.couponRepository.find({\r\n filters: {\r\n nickname: { operator: Where.EQUALS, value: nickname },\r\n active: { operator: Where.EQUALS, value: true },\r\n },\r\n }),\r\n ).pipe(\r\n concatMap((coupons) => this.checkCouponRules(coupons, checkoutType, plan, checkout, isSubscription)),\r\n concatMap((coupon: Coupon) => this.checkCouponUseAndLimit(coupon, userEmail, checkout)),\r\n map((coupon: Coupon) => this.isValidCoupon(coupon, userEmail)),\r\n map((coupon: Coupon) => coupon),\r\n )\r\n }\r\n\r\n private emailIsFromCollaborator = (userEmail: string): boolean => !!userEmail?.match(/@b4a.com.br/g)\r\n\r\n private checkCouponRules(\r\n coupons,\r\n checkoutType: CheckoutTypes,\r\n plan?: string,\r\n checkout?: Partial<Checkout>,\r\n isSubscription?: boolean,\r\n ) {\r\n // Caso não ache nenhum cupom, retorna erro\r\n if (coupons.count < 1) {\r\n return throwError('Cupom inválido.')\r\n }\r\n\r\n // Get Primeiro Cupom (o find do repository retorna um array)\r\n const coupon: Coupon = coupons.data.shift()\r\n // Verifica se o cupom é aplicavel na loja\r\n const isInShop = coupon.shopAvailability === Shops.ALL || coupon.shopAvailability === this.defaultShop\r\n\r\n // Cupon não aplicavel a loja retorna erro\r\n if (!isInShop) return throwError('Cupom inválido para loja.')\r\n\r\n // Verifica se o coupon é aplicado no checkout que está sendo realizado\r\n const isCheckoutType = coupon.checkoutType === CheckoutTypes.ALL || coupon.checkoutType === checkoutType\r\n\r\n // Cupon não aplicavel ao checkout retorna erro\r\n if (!isCheckoutType) return throwError('Cupom inválido. Erro de checkout.')\r\n\r\n // Verifica se o cupom é ou pode ser aplicado para subscription\r\n if (checkoutType === CheckoutTypes.ALL || checkoutType === CheckoutTypes.SUBSCRIPTION) {\r\n // Se o cupom tiver um plano associado, verifica se é o mesmo plano do checkout da assinatura\r\n if (coupon.plan && coupon.plan.toUpperCase() !== plan.toUpperCase())\r\n return throwError('Cupom inválido para sua assinatura.')\r\n }\r\n\r\n if (isSubscription) return of(coupon)\r\n\r\n // Verifica se possui o valor minimo de compra para utilização do cupom\r\n const hasMinSubTotal = this.hasMinSubTotal(coupon, checkout)\r\n\r\n // Se não tem valor mínimo atingido, retorna erro\r\n if (!hasMinSubTotal) return throwError('Valor mínimo não atingido')\r\n\r\n return of(coupon)\r\n }\r\n\r\n private isValidCoupon(coupon: Coupon, userEmail: string): Coupon {\r\n // Verifica a data de inicio de validade do cupom\r\n if (coupon?.beginAt > new Date()) throw new InvalidCouponError('Cupom ainda não liberado.')\r\n\r\n // Verifica a data de validade do cupom\r\n if (coupon?.expiresIn < new Date()) throw new InvalidCouponError('Cupom expirado.')\r\n\r\n return coupon\r\n }\r\n\r\n private async checkCouponUseAndLimit(coupon: Coupon, userEmail: string, checkout) {\r\n const orders = await this.orderRepository.find({\r\n filters: {\r\n coupon: { id: coupon.id },\r\n payment: { status: 'paid' },\r\n },\r\n })\r\n\r\n // orders que usuario ja fez com o cupom\r\n const ordersUserCoupon = orders.data.filter((o) => o.user.email == userEmail)\r\n\r\n // Verifica o limite de uso de cupom por usuario\r\n if (coupon.useLimitPerUser && ordersUserCoupon.length)\r\n throw new InvalidCouponError('Limite de uso por usuário atingido.')\r\n\r\n // Verifica o limite de uso geral por usuario\r\n if (coupon.useLimit && orders.data.length >= coupon.useLimit)\r\n throw new InvalidCouponError('Limite de uso atingido.')\r\n\r\n const validUser = await this.userValidationAndSubscriptionStatus(coupon, userEmail)\r\n if (!validUser) throw new InvalidCouponError('Usuário não elegível.')\r\n\r\n const hasProductCategories = await this.hasProductCategories(coupon, checkout)\r\n\r\n if (!hasProductCategories) throw 'Seu carrinho não possui produtos elegíveis para desconto.'\r\n \r\n return coupon\r\n }\r\n\r\n public calcDiscountSubscription(coupon: Coupon, checkout: Partial<CheckoutSubscription>): Observable<number> {\r\n //\r\n let discount = 0\r\n\r\n if (coupon.type === CouponTypes.ABSOLUTE) discount = coupon.discount\r\n else if (coupon.type === CouponTypes.PERCENTAGE)\r\n discount = checkout.subscriptionPlan.recurrencePrice * (coupon.discount / 100)\r\n\r\n return of(discount)\r\n }\r\n\r\n public async calcDiscountShopping(coupon: Coupon, checkout: Partial<Checkout>): Promise<number> {\r\n let discount = 0\r\n\r\n switch (coupon.type) {\r\n case CouponTypes.ABSOLUTE: {\r\n discount = coupon.discount\r\n break\r\n }\r\n case CouponTypes.PERCENTAGE: {\r\n discount = await this.calcShoppingPercentageDiscount(coupon, checkout)\r\n break\r\n }\r\n }\r\n\r\n return discount\r\n }\r\n\r\n private async calcShoppingPercentageDiscount(coupon: Coupon, checkout: Partial<Checkout>): Promise<number> {\r\n let discount = 0\r\n const shop = checkout.shop\r\n let lineItensDiscount = []\r\n const couponCategories = await this.getCouponCategoriesId(coupon)\r\n\r\n if (coupon.productsCategories && coupon.productsCategories.length) {\r\n lineItensDiscount = checkout.lineItems?.filter((i) => {\r\n if (i.categories?.length) {\r\n return i.categories.some((c) => couponCategories.some(cat => (cat.id == c || cat.firestoreId == c)))\r\n }\r\n return true\r\n })\r\n } else {\r\n lineItensDiscount = checkout.lineItems\r\n }\r\n\r\n const subTotal =\r\n lineItensDiscount.reduce(\r\n (acc, curr: LineItem) =>\r\n checkout.user?.isSubscriber && curr.price[shop]?.subscriberPrice\r\n ? acc + curr.price[shop]?.subscriberPrice * curr.quantity\r\n : acc + curr.pricePaid * curr.quantity,\r\n 0,\r\n ) || 0\r\n\r\n discount = subTotal * (coupon.discount / 100)\r\n\r\n return discount\r\n }\r\n\r\n private hasMinSubTotal(coupon: Coupon, checkout: Partial<Checkout>): boolean {\r\n if (!coupon.minSubTotalValue) return true\r\n\r\n const shop = checkout.shop\r\n\r\n let subTotal =\r\n checkout.lineItems?.reduce(\r\n (acc, curr) =>\r\n checkout.user?.isSubscriber && curr.price[shop]?.subscriberPrice\r\n ? acc + curr.price[shop]?.subscriberPrice * curr.quantity\r\n : acc + curr.pricePaid * curr.quantity,\r\n 0,\r\n ) || 0\r\n\r\n if (coupon.minSubTotalValue <= subTotal) return true\r\n return false\r\n }\r\n\r\n private async hasProductCategories(coupon: Coupon, checkout: Partial<Checkout>): Promise<boolean> {\r\n if (!coupon.productsCategories || !coupon.productsCategories.length) {\r\n return true\r\n }\r\n\r\n const couponCategories = await this.getCouponCategoriesId(coupon)\r\n \r\n const hasCategories = checkout.lineItems?.filter(i => {\r\n if (!i.categories || !i.categories?.length) return true\r\n return i.categories.some((c) => couponCategories.some(cat => (cat.id == c || cat.firestoreId == c)))\r\n })\r\n\r\n return hasCategories.length ? true : false\r\n }\r\n\r\n private async userValidationAndSubscriptionStatus(coupon: Coupon, userEmail: string): Promise<boolean> {\r\n // Verifica se o email do usuário é coorporativo\r\n if (!this.emailIsFromCollaborator(userEmail) && coupon.exclusivityType === Exclusivities.COLLABORATORS)\r\n throw new InvalidCouponError('Você não é colaborador.')\r\n\r\n // Verifica se o email do usuário é associado ao cupom de uso por usuario\r\n if (coupon.exclusivityType === Exclusivities.SPECIFIC_USER && coupon.userExclusiveEmail !== userEmail)\r\n throw new InvalidCouponError('Cupom não é válido para este usuário.')\r\n\r\n const couponRuleSubscription =\r\n coupon.exclusivityType === Exclusivities.ACTIVE_SUBSCRIBER ||\r\n coupon.exclusivityType === Exclusivities.INACTIVE_SUBSCRIBER ||\r\n coupon.exclusivityType === Exclusivities.NON_SUBSCRIBER\r\n\r\n if (couponRuleSubscription && userEmail) {\r\n const sub = await this.subscriptionRepository\r\n .find({\r\n filters: {\r\n user: {\r\n email: { operator: Where.EQUALS, value: userEmail },\r\n },\r\n },\r\n })\r\n .then((sub) => sub.data)\r\n\r\n const activeSubs = sub?.filter((s) => s.status === Status.ACTIVE)\r\n\r\n switch (coupon.exclusivityType) {\r\n case Exclusivities.ACTIVE_SUBSCRIBER:\r\n return activeSubs.length > 0\r\n case Exclusivities.INACTIVE_SUBSCRIBER:\r\n return activeSubs.length === 0\r\n case Exclusivities.NON_SUBSCRIBER:\r\n return sub.length === 0\r\n default:\r\n return false\r\n }\r\n }\r\n\r\n return true\r\n }\r\n\r\n private async getCouponCategoriesId(coupon: Coupon) {\r\n let couponCategories: { id: string, firestoreId: string }[] = []\r\n\r\n for (let index = 0; index < coupon.productsCategories.length; index++) {\r\n let c: Category & { firestoreId?: string } = await this.categoryRepository.get({ id: coupon.productsCategories[index] }) \r\n couponCategories.push({ id: c.id, firestoreId: c.firestoreId})\r\n }\r\n \r\n return couponCategories\r\n }\r\n\r\n private separateValidCoupons = (\r\n coupons: Coupon[],\r\n userEmail: string,\r\n ): { valids: Coupon[]; invalids: InvalidCouponError[] } =>\r\n coupons\r\n .map((coupon) => {\r\n try {\r\n if (!(coupon instanceof Coupon)) throw new InvalidCouponError('Cupom inválido.')\r\n if (this.isValidCoupon(coupon, userEmail)) return coupon\r\n } catch (error) {\r\n return error as InvalidCouponError\r\n }\r\n })\r\n .reduce(\r\n (current, coupon) => ({\r\n ...current,\r\n ...(coupon instanceof Coupon\r\n ? { valids: [...current.valids, coupon] }\r\n : { invalids: [...current.invalids, coupon] }),\r\n }),\r\n {\r\n valids: [] as Coupon[],\r\n invalids: [] as InvalidCouponError[],\r\n },\r\n )\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n Checkout,\r\n CheckoutRepository,\r\n CheckoutTypes,\r\n Coupon,\r\n isNil,\r\n NotFoundError,\r\n OrderRepository,\r\n pick,\r\n Shops,\r\n User,\r\n UserRepository\r\n} from '@infrab4a/connect'\r\nimport cookie from 'js-cookie'\r\nimport { from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { CouponService } from './coupon.service'\r\nimport { RequiredCheckoutData } from './types'\r\n\r\n@Injectable()\r\nexport class CheckoutService {\r\n constructor(\r\n private readonly couponService: CouponService,\r\n @Inject('CheckoutRepository') private readonly checkoutRepository: CheckoutRepository,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderRepository,\r\n @Inject('UserRepository') private readonly userRepository: UserRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n ) {}\r\n\r\n getCheckout(checkoutData?: RequiredCheckoutData): Observable<Checkout> {\r\n const checkoutId = cookie.get('checkoutId')\r\n\r\n if (!isNil(checkoutId)) return from(this.checkoutRepository.get({ id: checkoutId }))\r\n\r\n return from(this.createCheckout(checkoutData))\r\n }\r\n\r\n getUserByCheckout(checkoutId: string): Observable<User> {\r\n return from(this.checkoutRepository.get({ id: checkoutId })).pipe(\r\n concatMap((checkout) =>\r\n checkout?.user?.id ? of(checkout.user) : from(this.userRepository.get({ id: checkout.user.id })),\r\n ),\r\n concatMap((user) => of(user) || throwError(() => new NotFoundError('User is not found'))),\r\n )\r\n }\r\n\r\n updateCheckoutLineItems(checkout: Partial<Checkout>): Observable<Checkout> {\r\n return from(this.checkoutRepository.update(Checkout.toInstance({ id: checkout.id, lineItems: checkout.lineItems })))\r\n }\r\n\r\n updateCheckoutUser(checkout: Partial<Checkout>): Observable<Checkout> {\r\n return from(this.checkoutRepository.update(Checkout.toInstance({ id: checkout.id, user: checkout.user })))\r\n }\r\n\r\n clearCheckoutFromSession(): Observable<void> {\r\n cookie.remove('checkoutId')\r\n\r\n return of()\r\n }\r\n\r\n calcDiscount(coupon: Coupon) {\r\n return this.getCheckout().pipe(\r\n concatMap(async (checkout) => await this.couponService.calcDiscountShopping(coupon, checkout)),\r\n )\r\n }\r\n\r\n checkCoupon(nickname: string, checkoutType: CheckoutTypes): Observable<Coupon> {\r\n return this.getCheckout().pipe(\r\n concatMap((checkout) =>\r\n this.couponService\r\n .checkCoupon(\r\n nickname,\r\n checkout.user?.email,\r\n CheckoutTypes.ECOMMERCE,\r\n checkout.user.subscriptionPlan,\r\n checkout,\r\n false\r\n )\r\n .pipe(),\r\n ),\r\n )\r\n }\r\n\r\n private async createCheckout(checkoutData?: RequiredCheckoutData): Promise<Checkout> {\r\n const checkout = await this.checkoutRepository.create({\r\n createdAt: new Date(),\r\n ...Checkout.toInstance(pick(checkoutData, ['user', 'shop'])).toPlain(),\r\n shop: checkoutData?.shop || this.defaultShop,\r\n })\r\n\r\n cookie.set('checkoutId', checkout.id)\r\n\r\n return checkout\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport { Checkout, isNil, LineItem, ProductRepository, Shops, User } from '@infrab4a/connect'\r\nimport { from, iif, Observable, of, Subject } from 'rxjs'\r\nimport { catchError, concatMap, map, mergeMap, tap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { AuthService } from './auth.service'\r\nimport { CheckoutService } from './checkout.service'\r\nimport { RequiredCheckoutData } from './types'\r\n\r\nexport type Cart = {\r\n [id: string]: LineItem\r\n}\r\n\r\n@Injectable()\r\nexport class CartService {\r\n private cartSubject: Subject<Cart> = new Subject()\r\n\r\n constructor(\r\n private readonly authService: AuthService,\r\n private readonly checkoutService: CheckoutService,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n @Inject('ProductRepository') private readonly productRepository: ProductRepository,\r\n ) {}\r\n\r\n addItem(item: LineItem, quantity: number = 1): Observable<Cart> {\r\n return from(this.checkoutService.getCheckout()).pipe(\r\n concatMap(async (checkout) => await this.buildLineItem({ checkout, item, quantity: quantity || 1 })),\r\n mergeMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, checkout as Checkout)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n decreaseItem(item: LineItem): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n const checkoutItem = checkout.lineItems?.find((lineItem) => lineItem.sku === item.sku)\r\n\r\n if (!isNil(checkoutItem)) checkoutItem.quantity -= checkoutItem.quantity > 1 ? 1 : 0\r\n\r\n return checkout\r\n }),\r\n concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)),\r\n map((checkout) => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n getCart(checkout?: RequiredCheckoutData): Observable<Cart> {\r\n this.buildCartFromCheckout(checkout).subscribe((cart) => this.cartSubject.next(cart))\r\n\r\n return this.cartSubject\r\n }\r\n\r\n /**\r\n * @deprecated The method should not be used\r\n */\r\n getVariantPriceDiscount(item: LineItem): Observable<number> {\r\n return this.authService.getUser().pipe(\r\n concatMap((user) =>\r\n iif(\r\n () => user.isSubscriber && !!item.price.subscriberPrice,\r\n of(item.price.subscriberPrice),\r\n of(item.price.price),\r\n ),\r\n ),\r\n catchError(() => of(item.price.price)),\r\n )\r\n }\r\n\r\n removeItem(item: LineItem): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n const index = checkout.lineItems.findIndex((lineItem) => lineItem.sku === item.sku)\r\n\r\n if (index >= 0) checkout.lineItems.splice(index, 1)\r\n\r\n return checkout\r\n }),\r\n concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)),\r\n map((checkout) => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n updateUserCart(user: User): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n concatMap((checkout) =>\r\n this.checkoutService.updateCheckoutUser(Checkout.toInstance({ ...checkout.toPlain(), user })),\r\n ),\r\n concatMap(async (checkout) => this.checkoutService.updateCheckoutLineItems(\r\n Checkout.toInstance({\r\n ...checkout.toPlain(),\r\n lineItems: checkout.lineItems?.length ? await Promise.all(\r\n checkout.lineItems?.map(async (item) => (await this.buildLineItem({ checkout, item })).lineItem)\r\n ) : [],\r\n }),\r\n ).toPromise()\r\n ),\r\n map(checkout => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart))\r\n )\r\n }\r\n\r\n clearCart(): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n this.checkoutService.clearCheckoutFromSession()\r\n return checkout\r\n }),\r\n concatMap((oldCheckout) => this.buildCartFromCheckout(oldCheckout)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n private buildCartFromCheckout(checkoutData?: RequiredCheckoutData): Observable<Cart> {\r\n return this.checkoutService.getCheckout(checkoutData).pipe(\r\n map((checkout) => checkout.lineItems),\r\n concatMap((lineItems) => of(this.generateCartObject(lineItems))),\r\n )\r\n }\r\n\r\n private updateLineItemInCart = (lineItem: LineItem, quantity: number, checkout?: Checkout): Observable<Cart> =>\r\n (isNil(checkout) ? this.checkoutService.getCheckout() : of(checkout)).pipe(\r\n concatMap((checkoutLoaded) => {\r\n const items: LineItem[] = []\r\n const index = checkoutLoaded.lineItems?.map((checkoutItem) => checkoutItem.sku).indexOf(lineItem.sku)\r\n\r\n if (index > -1) {\r\n checkoutLoaded.lineItems[index].quantity += quantity\r\n checkoutLoaded.lineItems[index].pricePaid = lineItem.pricePaid\r\n } else\r\n checkoutLoaded.lineItems = items.concat(\r\n checkoutLoaded.lineItems ? checkoutLoaded.lineItems.concat([lineItem]) : [lineItem],\r\n )\r\n\r\n return this.checkoutService\r\n .updateCheckoutLineItems(checkoutLoaded)\r\n .pipe(map((updatedCheckout) => this.generateCartObject(updatedCheckout.lineItems)))\r\n }),\r\n )\r\n\r\n private generateCartObject = (items: LineItem[]): Cart => {\r\n const cart: Cart = {}\r\n\r\n items?.forEach(\r\n (item) =>\r\n (cart[item.sku] = LineItem.toInstance({\r\n ...(cart[item.sku] || item),\r\n quantity: (cart[item.sku]?.quantity || 0) + (item.quantity ? item.quantity : 1),\r\n })),\r\n )\r\n\r\n return cart\r\n }\r\n\r\n private buildLineItem = async ({\r\n checkout,\r\n item,\r\n quantity,\r\n }: {\r\n checkout: RequiredCheckoutData\r\n item: LineItem\r\n quantity?: number\r\n }): Promise<{checkout: Partial<Checkout>, lineItem: LineItem}> => {\r\n \r\n const product = await this.productRepository.get({ id: item.id })\r\n\r\n item.quantity = item?.quantity || checkout?.lineItems?.find((lineItem) => lineItem.sku === item.sku)?.quantity || 0\r\n\r\n if (this.checkMaxStock(item, quantity || 0))\r\n throw new Error('Desculpe! Temos apenas ' + item.stock?.quantity + ' em estoque.')\r\n\r\n const image = item.image || item.images?.shift()\r\n const { id, name, EAN, brand, slug, stock, price, weight, categories, sku, type } = item\r\n const isGift = item.isGift || null\r\n const pricePaid = this.getProductPrice({\r\n product: item,\r\n shop: checkout.shop || this.defaultShop,\r\n isSubscriber: checkout.user?.isSubscriber,\r\n })\r\n\r\n return {\r\n checkout,\r\n lineItem: LineItem.toInstance({\r\n id,\r\n name: name ?? product.name,\r\n EAN: EAN ?? product.EAN,\r\n brand: product.brand,\r\n slug: slug ?? product.slug,\r\n sku: sku ?? product.sku,\r\n stock,\r\n price,\r\n image,\r\n weight: weight ?? product.weight,\r\n quantity: (item.quantity || 0) + (quantity || 0),\r\n pricePaid,\r\n categories: product.categories ?? [],\r\n isGift: isGift ?? null,\r\n costPrice: product.costPrice ?? 0,\r\n type,\r\n }),\r\n }\r\n }\r\n\r\n private getProductPrice = ({\r\n product,\r\n isSubscriber,\r\n }: {\r\n product: LineItem\r\n shop: Shops\r\n isSubscriber: boolean\r\n }): number => {\r\n const info = product.price\r\n\r\n if (product.isGift) return 0\r\n\r\n return isSubscriber && info.subscriberPrice > 0 ? info.subscriberPrice : info.price\r\n }\r\n\r\n private checkMaxStock = (item: LineItem, quantity: number) => {\r\n const maxStock = item.stock?.quantity || 0\r\n const currentItemAmount = item.quantity || 0\r\n\r\n return currentItemAmount + quantity > maxStock\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n CheckoutSubscription,\r\n CheckoutSubscriptionRepository,\r\n CheckoutTypes,\r\n Coupon,\r\n isNil,\r\n pick,\r\n SubscriptionRepository\r\n} from '@infrab4a/connect'\r\nimport cookie from 'js-cookie'\r\nimport { from, Observable, of } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\nimport { RequiredCheckoutSubscriptionData } from './types'\r\n\r\nimport { CouponService } from './coupon.service'\r\n\r\n@Injectable()\r\nexport class CheckoutSubscriptionService {\r\n constructor(\r\n @Inject('CheckoutSubscriptionRepository')\r\n private readonly checkoutSubscriptionRepository: CheckoutSubscriptionRepository,\r\n @Inject('SubscriptionRepository') private readonly subscriptionRepository: SubscriptionRepository,\r\n private readonly couponService: CouponService,\r\n ) { }\r\n\r\n getCheckoutSubscription(checkoutData?: RequiredCheckoutSubscriptionData): Observable<CheckoutSubscription> {\r\n const checkoutId = cookie.get('checkoutSubscriptionId')\r\n\r\n if (!isNil(checkoutId)) return from(this.checkoutSubscriptionRepository.get({ id: checkoutId }))\r\n\r\n return from(this.createCheckoutSubscription(checkoutData))\r\n }\r\n\r\n private async createCheckoutSubscription(\r\n checkoutData?: RequiredCheckoutSubscriptionData,\r\n ): Promise<CheckoutSubscription> {\r\n const checkout = await this.checkoutSubscriptionRepository.create({\r\n createdAt: new Date(),\r\n ...CheckoutSubscription.toInstance(pick(checkoutData, ['user', 'shop'])).toPlain(),\r\n })\r\n\r\n cookie.set('checkoutSubscriptionId', checkout.id)\r\n\r\n return checkout\r\n }\r\n\r\n clearCheckoutSubscriptionFromSession(): Observable<void> {\r\n cookie.remove('checkoutSubscriptionId')\r\n\r\n return of()\r\n }\r\n\r\n checkCoupon(nickname: string, userEmail: string): Observable<Coupon> {\r\n return this.getCheckoutSubscription().pipe(\r\n concatMap((checkout) =>\r\n this.couponService.checkCoupon(nickname, userEmail, CheckoutTypes.SUBSCRIPTION, checkout.subscriptionPlan.name, null, true).pipe()\r\n ),\r\n )\r\n }\r\n\r\n calcDiscountSubscription(coupon: Coupon) {\r\n return this.getCheckoutSubscription().pipe(\r\n concatMap((checkout) =>\r\n this.couponService.calcDiscountSubscription(coupon, checkout).pipe(),\r\n ),\r\n )\r\n }\r\n\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n add,\r\n Banner,\r\n Category,\r\n CategoryRepository,\r\n Home,\r\n HomeCategoryGroup,\r\n HomeData,\r\n HomeRepository,\r\n pick,\r\n Product,\r\n ProductRepository,\r\n RequiredArgumentError,\r\n Shops,\r\n Where,\r\n} from '@infrab4a/connect'\r\nimport { forkJoin, from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap, map, tap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\ntype HomeConfigurationId = 'glamshop' | 'mens_market'\r\ntype BannerType = 'brand' | 'buyToWin' | 'block' | 'blog'\r\n\r\n@Injectable()\r\nexport class HomeShopService {\r\n private homeConfiguration: Home\r\n\r\n private get homeId(): HomeConfigurationId {\r\n if (this.defaultShop === Shops.GLAMSHOP) return 'glamshop'\r\n if (this.defaultShop === Shops.MENSMARKET) return 'mens_market'\r\n\r\n return null\r\n }\r\n\r\n constructor(\r\n @Inject('CategoryRepository') private readonly categoryRepository: CategoryRepository,\r\n @Inject('HomeRepository') private readonly homeRepository: HomeRepository,\r\n @Inject('ProductRepository') private readonly productRepository: ProductRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n ) {}\r\n\r\n getHomeData(): Observable<Home> {\r\n return this.getHomeConfiguration().pipe(\r\n map((home) => (home?.data?.expiresAt > new Date() ? home : null)),\r\n concatMap((home) =>\r\n home\r\n ? of(home)\r\n : forkJoin([this.getDiscoverProducts(), this.getFeaturedProducts(), this.getVerticalProducts()]).pipe(\r\n map(([discoverProducts, featuredProducts, verticalProducts]) => ({\r\n discoverProducts,\r\n featuredProducts,\r\n verticalProducts,\r\n })),\r\n concatMap((data) => this.saveHomeData(data)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n getBanners(type: BannerType): Observable<Banner[]> {\r\n return this.getHomeConfiguration().pipe(\r\n map((home) => {\r\n if (type === 'brand') return home.brandsCarousel\r\n if (type === 'buyToWin') return [home.buyToWinBanner]\r\n if (type === 'block') return home.blockBanners\r\n if (type === 'blog') return [home.blogBanner]\r\n }),\r\n )\r\n }\r\n\r\n getMinValueForFreeShipping(): Observable<number> {\r\n return this.getHomeConfiguration().pipe(map((home) => home.minValueForFreeShipping))\r\n }\r\n\r\n private getDiscoverProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n from(this.categoryRepository.getCategoriesForHome(home.discoverCategories)).pipe(\r\n map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getFeaturedProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n from(this.categoryRepository.getCategoriesForHome(home.featuredCategories)).pipe(\r\n map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getVerticalProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n forkJoin(\r\n home.verticalCarousels.filter(Boolean).map((id) =>\r\n from(this.categoryRepository.get({ id })).pipe(\r\n concatMap((category) =>\r\n from(\r\n this.productRepository.find({\r\n filters: { categories: { operator: Where.IN, value: [category.id] } },\r\n limits: { limit: 12 },\r\n }),\r\n ).pipe(map((products) => ({ category, products }))),\r\n ),\r\n map(({ category, products }) => ({ category, products: products.data })),\r\n map(this.buildCategoryGroupWithRequiredData),\r\n ),\r\n ),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getHomeConfiguration(): Observable<Home> {\r\n return of(this.homeConfiguration).pipe(\r\n concatMap((home) =>\r\n home\r\n ? of(home)\r\n : !this.homeId\r\n ? throwError(new RequiredArgumentError(['homeId']))\r\n : from(this.homeRepository.get({ id: this.homeId })).pipe(\r\n tap((homeLoaded) => (this.homeConfiguration = homeLoaded)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private saveHomeData(homeData: HomeData): Observable<Home> {\r\n const data = {\r\n createdAt: new Date(),\r\n expiresAt: add(new Date(), { hours: 1 }),\r\n data: homeData,\r\n }\r\n\r\n return from(\r\n this.homeRepository.update({\r\n id: this.homeId,\r\n data,\r\n }),\r\n ).pipe(\r\n tap(() => (this.homeConfiguration.data = data)),\r\n map(() => this.homeConfiguration),\r\n )\r\n }\r\n\r\n private buildCategoryGroupWithRequiredData = (group: HomeCategoryGroup): HomeCategoryGroup => ({\r\n category: Category.toInstance(pick(group?.category?.toPlain() || {}, ['id', 'name', 'slug', 'conditions'])),\r\n products:\r\n group?.products?.map((product) =>\r\n Product.toInstance(\r\n pick(product?.toPlain() || {}, [\r\n 'id',\r\n 'price',\r\n 'reviews',\r\n 'hasVariants',\r\n 'slug',\r\n 'sku',\r\n 'stock',\r\n 'costPrice',\r\n 'images',\r\n 'miniatures',\r\n 'name',\r\n 'weight',\r\n 'rate',\r\n 'type',\r\n ]),\r\n ),\r\n ) || [],\r\n })\r\n}\r\n","import { Injectable, Inject } from '@angular/core'\r\nimport { AngularFirestore, QueryDocumentSnapshot } from '@angular/fire/firestore'\r\nimport { Order, OrderFirestoreRepository } from '@infrab4a/connect'\r\nimport { from, Observable, Subject } from 'rxjs'\r\nimport { map, mergeMap, tap } from 'rxjs/operators'\r\n\r\n@Injectable()\r\nexport class OrderService {\r\n orderSubject = new Subject<Order>()\r\n\r\n constructor(\r\n private readonly angularFirestore: AngularFirestore,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderFirestoreRepository,\r\n ) {}\r\n\r\n getOrder(id: string): Subject<Order> {\r\n this.angularFirestore\r\n .doc<QueryDocumentSnapshot<Order>>(`${this.orderRepository.collectionName}/${id}`)\r\n .valueChanges()\r\n .pipe(map((doc) => Order.toInstance(doc)))\r\n .subscribe((doc) => this.orderSubject.next(doc))\r\n\r\n return this.orderSubject\r\n }\r\n}\r\n","\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Home, Shops } from '@infrab4a/connect';\r\nimport { combineLatest, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport { BACKEND_URL } from '../consts';\r\nimport { HomeShopService } from './home-shop.service';\r\nimport { ShippingMethodResponse } from './types/shipping-methods.type';\r\n\r\n@Injectable()\r\nexport class ShippingService {\r\n\r\n constructor(\r\n private http: HttpClient,\r\n @Inject(BACKEND_URL) private apiUrl: string,\r\n private homeService: HomeShopService,\r\n ) {}\r\n\r\n public getShippingMethods(\r\n shop: string,\r\n zip: string,\r\n weightGrams: number,\r\n totalPrice: number,\r\n personId: string,\r\n subscriptionPlan?: string\r\n ): Observable<Array<ShippingMethodResponse & { ShippingCompanyName?: string }>> {\r\n\r\n return combineLatest([\r\n this.homeService.getHomeData(),\r\n this.http.get(`${this.apiUrl}open/checkshippingcompany?personId=${personId}&postalCode=${zip}&weightGrams=${weightGrams}`)\r\n ])\r\n .pipe(\r\n map( ([datas, shippingMethodsResponse]: [Home & {sameDayNotAvaliable}, any])=> {\r\n let shippingMethods = shippingMethodsResponse.result as (ShippingMethodResponse & { ShippingCompanyName?: string })[]\r\n\r\n if (!shippingMethods.length) return []\r\n \r\n shippingMethods = shippingMethods.map(s => {\r\n if (s.ShippingCompanyName == 'Same Day EG') s.ShippingCompanyName = 'Same Day'\r\n else return s\r\n })\r\n\r\n const datasSameDayNotAvaliable = datas.sameDayNotAvaliable\r\n\r\n if (this.isHolidays(datasSameDayNotAvaliable)) {\r\n shippingMethods = shippingMethods.filter(\r\n (method) => method.ShippingCompanyName !== 'Same Day'\r\n );\r\n }\r\n\r\n if (totalPrice >= 200) {\r\n shippingMethods = shippingMethods.map(s => {\r\n if (s.serviceName !== 'Same Day') return { ...s, totalPrice: 0 }\r\n else return s\r\n })\r\n }\r\n\r\n if (shop == Shops.GLAMSHOP) return shippingMethods\r\n\r\n if (this.isFreeShippingBySubscription(shop, subscriptionPlan)) {\r\n shippingMethods = shippingMethods.map(s => {\r\n if (s.serviceName == 'Same Day') return { ...s, totalPrice: s.totalPrice/2 }\r\n else return { ...s, totalPrice: 0 }\r\n })\r\n }\r\n\r\n if (this.isHalfShippingBySubscription(shop, subscriptionPlan)) {\r\n shippingMethods = shippingMethods.map(s => {\r\n return { ...s, totalPrice: s.totalPrice/2 }\r\n })\r\n }\r\n\r\n return shippingMethods\r\n })\r\n )\r\n \r\n }\r\n\r\n private isFreeShippingBySubscription(shop: string, subscriptionPlan: string): boolean {\r\n if(!subscriptionPlan) return false\r\n\r\n if (shop == Shops.MENSMARKET && subscriptionPlan == 'SELECT') {\r\n return true\r\n }\r\n \r\n return false\r\n }\r\n\r\n private isHalfShippingBySubscription(shop: string, subscriptionPlan: string) {\r\n if(!subscriptionPlan) return false\r\n\r\n if (shop == Shops.MENSMARKET && subscriptionPlan == 'PRIME') {\r\n return true\r\n }\r\n \r\n return false\r\n }\r\n\r\n private isHolidays(datas: any): boolean {\r\n const today = new Date()\r\n\r\n for (const key in datas) {\r\n let start = new Date(`${today.getFullYear()}-${datas[key].beginDate}`)\r\n let end = new Date(`${today.getFullYear()}-${datas[key].endDate}`)\r\n\r\n if (start > end)\r\n end = new Date(`${today.getFullYear() + 1}-${datas[key].endDate}`)\r\n\r\n if (today >= start && today <= end)\r\n return true\r\n }\r\n\r\n return false\r\n }\r\n\r\n}","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule,\r\n FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS,\r\n FirebaseAppConfig,\r\n FirebaseOptions,\r\n} from '@angular/fire'\r\nimport { AngularFireAuth } from '@angular/fire/auth'\r\nimport {\r\n Authentication,\r\n AuthenticationFirebaseAuthService,\r\n AuthenticationService,\r\n Register,\r\n RegisterService,\r\n RegisterFirebaseAuthService,\r\n SignOut,\r\n UserRepository,\r\n RecoveryPassword,\r\n} from '@infrab4a/connect'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule],\r\n providers: [\r\n {\r\n provide: 'Authentication',\r\n useFactory: (authenticationService: AuthenticationService, userRepository: UserRepository): Authentication => {\r\n return new Authentication(authenticationService, userRepository)\r\n },\r\n deps: ['AuthenticationService', 'UserRepository'],\r\n },\r\n {\r\n provide: 'AuthenticationService',\r\n useFactory: (angularFireAuth: AngularFireAuth): AuthenticationService => {\r\n return new AuthenticationFirebaseAuthService(angularFireAuth as any)\r\n },\r\n deps: [AngularFireAuth],\r\n },\r\n {\r\n provide: 'Register',\r\n useFactory: (registerService: RegisterService, userRepository: UserRepository): Register => {\r\n return new Register(registerService, userRepository)\r\n },\r\n deps: ['RegisterService', 'UserRepository'],\r\n },\r\n {\r\n provide: 'RegisterService',\r\n useFactory: (angularFireAuth: AngularFireAuth): RegisterService => {\r\n return new RegisterFirebaseAuthService(angularFireAuth as any)\r\n },\r\n deps: [AngularFireAuth],\r\n },\r\n {\r\n provide: 'SignOut',\r\n useFactory: (authenticationService: AuthenticationService): SignOut => {\r\n return new SignOut(authenticationService)\r\n },\r\n deps: ['AuthenticationService'],\r\n },\r\n {\r\n provide: 'RecoveryPassword',\r\n useFactory: (authenticationService: AuthenticationService): RecoveryPassword => {\r\n return new RecoveryPassword(authenticationService)\r\n },\r\n deps: ['AuthenticationService'],\r\n },\r\n ],\r\n})\r\nexport class AngularFirebaseAuthModule {\r\n static initializeApp(\r\n options: FirebaseOptions,\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularFirebaseAuthModule,\r\n providers: [\r\n { provide: FIREBASE_OPTIONS, useValue: options },\r\n { provide: FIREBASE_APP_NAME, useValue: nameOrConfig },\r\n ],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport { AxiosElasticSearchConfig, AxiosAdapter, ProductsIndex } from '@infrab4a/connect'\r\n\r\nimport { ES_CONFIG } from './consts/es-config.const'\r\n\r\n@NgModule({\r\n providers: [\r\n {\r\n provide: ProductsIndex,\r\n useFactory: (configuration: AxiosElasticSearchConfig): ProductsIndex => {\r\n return new ProductsIndex(new AxiosAdapter(configuration))\r\n },\r\n deps: [ES_CONFIG],\r\n },\r\n ],\r\n})\r\nexport class AngularElasticSeachModule {\r\n static initializeApp(options: AxiosElasticSearchConfig): ModuleWithProviders<AngularElasticSeachModule> {\r\n return {\r\n ngModule: AngularElasticSeachModule,\r\n providers: [{ provide: ES_CONFIG, useValue: options }],\r\n }\r\n }\r\n}\r\n","import { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule,\r\n FirebaseAppConfig,\r\n FirebaseOptions,\r\n FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS\r\n} from '@angular/fire'\r\nimport { AngularFirestore } from '@angular/fire/firestore'\r\nimport {\r\n AxiosElasticSearchConfig,\r\n BeautyProfileRepository,\r\n Buy2WinFirestoreRepository,\r\n Buy2WinRepository,\r\n CampaignDashboardFirestoreRepository,\r\n CampaignDashboardRepository,\r\n CampaignHashtagFirestoreRepository,\r\n CampaignHashtagRepository,\r\n CategoryFirestoreRepository,\r\n CategoryRepository,\r\n CheckoutFirestoreRepository,\r\n CheckoutRepository,\r\n CheckoutSubscriptionFirestoreRepository,\r\n CheckoutSubscriptionRepository,\r\n CouponFirestoreRepository,\r\n CouponRepository,\r\n EditionRepository,\r\n HomeFirestoreRepository,\r\n HomeRepository,\r\n LeadFirestoreRepository,\r\n LeadRepository,\r\n LegacyOrderFirestoreRepository,\r\n LegacyOrderRepository,\r\n OrderFirestoreRepository,\r\n OrderRepository,\r\n PaymentFirestoreRepository,\r\n PaymentRepository,\r\n ProductFirestoreRepository,\r\n ProductRepository,\r\n ProductVariantFirestoreRepository,\r\n ShopMenuFirestoreRepository,\r\n ShopMenuRepository,\r\n SubscriptionEditionFirestoreRepository,\r\n SubscriptionFirestoreRepository,\r\n SubscriptionPaymentFirestoreRepository,\r\n SubscriptionPaymentRepository,\r\n SubscriptionPlanFirestoreRepository,\r\n SubscriptionPlanRepository,\r\n SubscriptionProductFirestoreRepository,\r\n SubscriptionProductRepository,\r\n SubscriptionRepository,\r\n UserAddressFirestoreRepository,\r\n UserAddressRepository,\r\n UserBeautyProfileFirestoreRepository,\r\n UserFirestoreRepository,\r\n UserPaymentMethodFirestoreRepository,\r\n UserPaymentMethodRepository,\r\n UserRepository,\r\n VariantRepository\r\n} from '@infrab4a/connect'\r\n\r\nimport { AngularElasticSeachModule } from './angular-elastic-search.module'\r\nimport { ES_CONFIG } from './consts/es-config.const'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularElasticSeachModule],\r\n providers: [\r\n {\r\n provide: 'BeautyProfileRepository',\r\n useFactory: (firestore: AngularFirestore, userRepository: UserFirestoreRepository): BeautyProfileRepository => {\r\n return new UserBeautyProfileFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: 'Buy2WinRepository',\r\n useFactory: (firestore: AngularFirestore): Buy2WinRepository => {\r\n return new Buy2WinFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: CategoryFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore): CategoryRepository => {\r\n return new CategoryFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CheckoutRepository',\r\n useFactory: (firestore: AngularFirestore): CheckoutRepository => {\r\n return new CheckoutFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CheckoutSubscriptionRepository',\r\n useFactory: (firestore: AngularFirestore): CheckoutSubscriptionRepository => {\r\n return new CheckoutSubscriptionFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CouponRepository',\r\n useFactory: (firestore: AngularFirestore): CouponRepository => {\r\n return new CouponFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CampaignHashtagRepository',\r\n useFactory: (firestore: AngularFirestore): CampaignHashtagRepository => {\r\n return new CampaignHashtagFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CampaignDashboardRepository',\r\n useFactory: (firestore: AngularFirestore): CampaignDashboardRepository => {\r\n return new CampaignDashboardFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'EditionRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n subscriptionRepository: SubscriptionFirestoreRepository,\r\n ): EditionRepository => {\r\n return new SubscriptionEditionFirestoreRepository(firestore.firestore, subscriptionRepository)\r\n },\r\n deps: [AngularFirestore, 'SubscriptionRepository'],\r\n },\r\n {\r\n provide: 'HomeRepository',\r\n useFactory: (firestore: AngularFirestore): HomeRepository => {\r\n return new HomeFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'LeadRepository',\r\n useFactory: (firestore: AngularFirestore): LeadRepository => {\r\n return new LeadFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'LegacyOrderRepository',\r\n useFactory: (firestore: AngularFirestore): LegacyOrderRepository => {\r\n return new LegacyOrderFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'ShopMenuRepository',\r\n useFactory: (firestore: AngularFirestore): ShopMenuRepository => {\r\n return new ShopMenuFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'OrderRepository',\r\n useFactory: (firestore: AngularFirestore): OrderRepository => {\r\n return new OrderFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'PaymentRepository',\r\n useFactory: (firestore: AngularFirestore): PaymentRepository => {\r\n return new PaymentFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: ProductFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore): ProductRepository => {\r\n return new ProductFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionPaymentRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n subscriptionRepository: SubscriptionFirestoreRepository,\r\n ): SubscriptionPaymentRepository => {\r\n return new SubscriptionPaymentFirestoreRepository(firestore.firestore, subscriptionRepository)\r\n },\r\n deps: [AngularFirestore, 'SubscriptionRepository'],\r\n },\r\n {\r\n provide: 'SubscriptionPlanRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionPlanRepository => {\r\n return new SubscriptionPlanFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionProductRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionProductRepository => {\r\n return new SubscriptionProductFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionRepository => {\r\n return new SubscriptionFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'UserRepository',\r\n useFactory: (firestore: AngularFirestore): UserRepository => {\r\n return new UserFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'UserAddressRepository',\r\n useFactory: (firestore: AngularFirestore, userRepository: UserFirestoreRepository): UserAddressRepository => {\r\n return new UserAddressFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: 'UserPaymentMethodRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n userRepository: UserFirestoreRepository,\r\n ): UserPaymentMethodRepository => {\r\n return new UserPaymentMethodFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: ProductVariantFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore, productRepository: ProductFirestoreRepository): VariantRepository => {\r\n return new ProductVariantFirestoreRepository(firestore.firestore, productRepository)\r\n },\r\n deps: [AngularFirestore, ProductFirestoreRepository],\r\n },\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: (firestore: AngularFirestore) => () =>\r\n firestore.firestore.settings({ ignoreUndefinedProperties: true }),\r\n deps: [AngularFirestore],\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AngularFirestoreModule {\r\n static initializeApp(\r\n options: {\r\n firebase: FirebaseOptions\r\n elasticSearch: AxiosElasticSearchConfig\r\n },\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularFirestoreModule,\r\n providers: [\r\n { provide: FIREBASE_OPTIONS, useValue: options.firebase },\r\n { provide: FIREBASE_APP_NAME, useValue: nameOrConfig },\r\n { provide: ES_CONFIG, useValue: options.elasticSearch },\r\n ],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n CategoryHasuraGraphQLRepository,\r\n CategoryRepository,\r\n HasuraGraphQLAuthOptions,\r\n ProductHasuraGraphQLRepository,\r\n ProductRepository,\r\n VariantHasuraGraphQLRepository,\r\n VariantRepository,\r\n} from '@infrab4a/connect'\r\n\r\nimport { HASURA_OPTIONS } from './consts'\r\n\r\nexport type HasuraGraphQLOptions = { endpoint: string; credentials: HasuraGraphQLAuthOptions }\r\n\r\n@NgModule({\r\n providers: [\r\n {\r\n provide: 'CategoryRepository',\r\n useExisting: CategoryHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: CategoryHasuraGraphQLRepository,\r\n useFactory: (\r\n options: HasuraGraphQLOptions,\r\n productRepository: ProductHasuraGraphQLRepository,\r\n ): CategoryRepository => {\r\n return new CategoryHasuraGraphQLRepository(options.endpoint, options.credentials, productRepository)\r\n },\r\n deps: [HASURA_OPTIONS, ProductHasuraGraphQLRepository],\r\n },\r\n {\r\n provide: 'ProductRepository',\r\n useExisting: ProductHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: ProductHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): ProductRepository => {\r\n return new ProductHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n {\r\n provide: 'VariantRepository',\r\n useExisting: VariantHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: VariantHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): VariantRepository => {\r\n return new VariantHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n ],\r\n})\r\nexport class AngularHasuraGraphQLModule {\r\n static initializeApp(options: {\r\n endpoint: string\r\n credentials: HasuraGraphQLAuthOptions\r\n }): ModuleWithProviders<AngularHasuraGraphQLModule> {\r\n return {\r\n ngModule: AngularHasuraGraphQLModule,\r\n providers: [{ provide: HASURA_OPTIONS, useValue: options }],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule, FirebaseAppConfig,\r\n FirebaseOptions, FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS\r\n} from '@angular/fire'\r\nimport { AxiosElasticSearchConfig, isNil, Shops } from '@infrab4a/connect'\r\n\r\nimport { AngularFirestoreModule } from './angular-firestore.module'\r\nimport { AngularHasuraGraphQLModule, HasuraGraphQLOptions } from './angular-hasura-graphql.module'\r\nimport { BACKEND_URL, DEFAULT_SHOP, ES_CONFIG, HASURA_OPTIONS } from './consts'\r\nimport {\r\n AuthService,\r\n CartService,\r\n CheckoutService,\r\n CheckoutSubscriptionService,\r\n CouponService,\r\n HomeShopService,\r\n OrderService,\r\n ShippingService\r\n} from './services'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularFirestoreModule, AngularHasuraGraphQLModule],\r\n providers: [\r\n AuthService,\r\n CartService,\r\n CheckoutService,\r\n CheckoutSubscriptionService,\r\n CouponService,\r\n HomeShopService,\r\n OrderService,\r\n ShippingService\r\n ],\r\n})\r\nexport class AngularConnectModule {\r\n static initializeApp(\r\n defaultShop: Shops,\r\n options: { firebase: FirebaseOptions; elasticSearch: AxiosElasticSearchConfig; hasura: HasuraGraphQLOptions, backendUrl: string },\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularConnectModule,\r\n providers: [\r\n ...(isNil(defaultShop) ? [] : [{ provide: DEFAULT_SHOP, useValue: defaultShop }]),\r\n ...(isNil(options?.firebase) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options?.firebase }]),\r\n ...(isNil(options?.firebase) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),\r\n ...(isNil(options?.elasticSearch) ? [] : [{ provide: ES_CONFIG, useValue: options.elasticSearch }]),\r\n ...(isNil(options?.hasura) ? [] : [{ provide: HASURA_OPTIONS, useValue: options.hasura }]),\r\n ...(isNil(options?.backendUrl) ? [] : [{ provide: BACKEND_URL, useValue: options.backendUrl }]),\r\n ],\r\n }\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AuthService","i2.CheckoutService","i1.CouponService","i2.HomeShopService"],"mappings":";;;;;;;;;;;;;;;;MAQa,WAAW,CAAA;IACtB,WACmB,CAAA,eAAgC,EACN,cAA8B,EAAA;QADxD,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACN,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;KACvE;IAEJ,YAAY,GAAA;AACV,QAAA,MAAM,WAAW,GAAkD;AACjE,YAAA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,YAAA,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;SAChD,CAAA;AAED,QAAA,OAAO,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,CACpC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAI;YACvB,OAAO;gBACL,IAAI;AACJ,gBAAA,WAAW,EAAE,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAE,WAAW;aACK,CAAA;SAC1C,CAAC,CACH,CAAA;KACF;IAED,OAAO,GAAA;QACL,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5B,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,KAAJ,IAAA,IAAA,IAAI,KAAJ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,IAAI,CAAE,GAAG,CAAC,EACxB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CACpE,CAAA;KACF;IAED,UAAU,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAA;KACpC;IAED,WAAW,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAClE;;AAnCU,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,iDAGZ,gBAAgB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;6GAHf,WAAW,EAAA,CAAA,CAAA;4FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB,UAAU;;0BAIN,MAAM;2BAAC,gBAAgB,CAAA;;;ACXrB,MAAM,WAAW,GAAG,aAAa;;ACAjC,MAAM,YAAY,GAAG,cAAc;;ACAnC,MAAM,SAAS,GAAG,WAAW;;ACA7B,MAAM,cAAc,GAAG,gBAAgB;;ACExC,MAAO,kBAAmB,SAAQ,WAAW,CAAA;AACjD,IAAA,WAAA,CAAqB,OAAO,EAAA;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAA;QADK,IAAO,CAAA,OAAA,GAAP,OAAO,CAAA;KAE3B;AACF;;ACFK,MAAO,uBAAwB,SAAQ,WAAW,CAAA;AACtD,IAAA,WAAA,CAAqB,MAA4B,EAAA;QAC/C,KAAK,CAAC,0BAA0B,CAAC,CAAA;QADd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAsB;KAEhD;AACF;;MCoBY,aAAa,CAAA;IACxB,WAC+C,CAAA,gBAAkC,EACxC,WAAkB,EACb,eAAgC,EACzB,sBAA8C,EAClD,kBAAsC,EAAA;QAJxC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QACxC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAO;QACb,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACzB,IAAsB,CAAA,sBAAA,GAAtB,sBAAsB,CAAwB;QAClD,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QA0B/E,IAAuB,CAAA,uBAAA,GAAG,CAAC,SAAiB,KAAc,CAAC,EAAC,SAAS,aAAT,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAT,SAAS,CAAE,KAAK,CAAC,cAAc,CAAC,CAAA,CAAA;QAsO5F,IAAoB,CAAA,oBAAA,GAAG,CAC7B,OAAiB,EACjB,SAAiB,KAEjB,OAAO;AACJ,aAAA,GAAG,CAAC,CAAC,MAAM,KAAI;YACd,IAAI;AACF,gBAAA,IAAI,EAAE,MAAM,YAAY,MAAM,CAAC;AAAE,oBAAA,MAAM,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,CAAA;AAChF,gBAAA,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAAE,oBAAA,OAAO,MAAM,CAAA;AACzD,aAAA;AAAC,YAAA,OAAO,KAAK,EAAE;AACd,gBAAA,OAAO,KAA2B,CAAA;AACnC,aAAA;AACH,SAAC,CAAC;AACD,aAAA,MAAM,CACL,CAAC,OAAO,EAAE,MAAM,MAAK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAChB,OAAO,CAAA,GACN,MAAM,YAAY,MAAM;AAC1B,cAAE,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;AACzC,cAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,GAC/C,EACF;AACE,YAAA,MAAM,EAAE,EAAc;AACtB,YAAA,QAAQ,EAAE,EAA0B;AACrC,SAAA,CACF,CAAA;KAvRD;IAEJ,WAAW,CACT,QAAgB,EAChB,SAAiB,EACjB,YAA2B,EAC3B,IAAa,EACb,QAA4B,EAC5B,cAAwB,EAAA;AAExB,QAAA,OAAO,IAAI,CACT,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,OAAO,EAAE;gBACP,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACrD,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;AAChD,aAAA;AACF,SAAA,CAAC,CACH,CAAC,IAAI,CACJ,SAAS,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,EACpG,SAAS,CAAC,CAAC,MAAc,KAAK,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,EACvF,GAAG,CAAC,CAAC,MAAc,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC9D,GAAG,CAAC,CAAC,MAAc,KAAK,MAAM,CAAC,CAChC,CAAA;KACF;IAIO,gBAAgB,CACtB,OAAO,EACP,YAA2B,EAC3B,IAAa,EACb,QAA4B,EAC5B,cAAwB,EAAA;;AAGxB,QAAA,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE;AACrB,YAAA,OAAO,UAAU,CAAC,iBAAiB,CAAC,CAAA;AACrC,SAAA;;QAGD,MAAM,MAAM,GAAW,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;;AAE3C,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,KAAK,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC,WAAW,CAAA;;AAGtG,QAAA,IAAI,CAAC,QAAQ;AAAE,YAAA,OAAO,UAAU,CAAC,2BAA2B,CAAC,CAAA;;AAG7D,QAAA,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,KAAK,aAAa,CAAC,GAAG,IAAI,MAAM,CAAC,YAAY,KAAK,YAAY,CAAA;;AAGxG,QAAA,IAAI,CAAC,cAAc;AAAE,YAAA,OAAO,UAAU,CAAC,mCAAmC,CAAC,CAAA;;QAG3E,IAAI,YAAY,KAAK,aAAa,CAAC,GAAG,IAAI,YAAY,KAAK,aAAa,CAAC,YAAY,EAAE;;AAErF,YAAA,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE;AACjE,gBAAA,OAAO,UAAU,CAAC,qCAAqC,CAAC,CAAA;AAC3D,SAAA;AAED,QAAA,IAAI,cAAc;AAAE,YAAA,OAAO,EAAE,CAAC,MAAM,CAAC,CAAA;;QAGrC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;;AAG5D,QAAA,IAAI,CAAC,cAAc;AAAE,YAAA,OAAO,UAAU,CAAC,2BAA2B,CAAC,CAAA;AAEnE,QAAA,OAAO,EAAE,CAAC,MAAM,CAAC,CAAA;KAClB;IAEO,aAAa,CAAC,MAAc,EAAE,SAAiB,EAAA;;QAErD,IAAI,CAAA,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,OAAO,IAAG,IAAI,IAAI,EAAE;AAAE,YAAA,MAAM,IAAI,kBAAkB,CAAC,2BAA2B,CAAC,CAAA;;QAG3F,IAAI,CAAA,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,SAAS,IAAG,IAAI,IAAI,EAAE;AAAE,YAAA,MAAM,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,CAAA;AAEnF,QAAA,OAAO,MAAM,CAAA;KACd;AAEa,IAAA,sBAAsB,CAAC,MAAc,EAAE,SAAiB,EAAE,QAAQ,EAAA;;YAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;AAC7C,gBAAA,OAAO,EAAE;AACP,oBAAA,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;AACzB,oBAAA,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;AAC5B,iBAAA;AACF,aAAA,CAAC,CAAA;;YAGF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC,CAAA;;AAG7E,YAAA,IAAI,MAAM,CAAC,eAAe,IAAI,gBAAgB,CAAC,MAAM;AACnD,gBAAA,MAAM,IAAI,kBAAkB,CAAC,qCAAqC,CAAC,CAAA;;AAGrE,YAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ;AAC1D,gBAAA,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,CAAC,CAAA;YAEzD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mCAAmC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AACnF,YAAA,IAAI,CAAC,SAAS;AAAE,gBAAA,MAAM,IAAI,kBAAkB,CAAC,uBAAuB,CAAC,CAAA;YAErE,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AAE9E,YAAA,IAAI,CAAC,oBAAoB;AAAE,gBAAA,MAAM,2DAA2D,CAAA;AAE5F,YAAA,OAAO,MAAM,CAAA;SACd,CAAA,CAAA;AAAA,KAAA;IAEM,wBAAwB,CAAC,MAAc,EAAE,QAAuC,EAAA;;QAErF,IAAI,QAAQ,GAAG,CAAC,CAAA;AAEhB,QAAA,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,QAAQ;AAAE,YAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;AAC/D,aAAA,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,UAAU;AAC7C,YAAA,QAAQ,GAAG,QAAQ,CAAC,gBAAgB,CAAC,eAAe,IAAI,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAA;AAEhF,QAAA,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;KACpB;IAEY,oBAAoB,CAAC,MAAc,EAAE,QAA2B,EAAA;;YAC3E,IAAI,QAAQ,GAAG,CAAC,CAAA;YAEhB,QAAQ,MAAM,CAAC,IAAI;AACjB,gBAAA,KAAK,WAAW,CAAC,QAAQ,EAAE;AACzB,oBAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;oBAC1B,MAAK;AACN,iBAAA;AACD,gBAAA,KAAK,WAAW,CAAC,UAAU,EAAE;oBAC3B,QAAQ,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;oBACtE,MAAK;AACN,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,QAAQ,CAAA;SAChB,CAAA,CAAA;AAAA,KAAA;IAEa,8BAA8B,CAAC,MAAc,EAAE,QAA2B,EAAA;;;YACtF,IAAI,QAAQ,GAAG,CAAC,CAAA;AAChB,YAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;YAC1B,IAAI,iBAAiB,GAAG,EAAE,CAAA;YAC1B,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;YAEjE,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE;gBACjE,iBAAiB,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAC,CAAC,CAAC,KAAI;;AACnD,oBAAA,IAAI,MAAA,CAAC,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,EAAE;AACxB,wBAAA,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;AACrG,qBAAA;AACD,oBAAA,OAAO,IAAI,CAAA;AACb,iBAAC,CAAC,CAAA;AACH,aAAA;AAAM,iBAAA;AACL,gBAAA,iBAAiB,GAAG,QAAQ,CAAC,SAAS,CAAA;AACvC,aAAA;YAED,MAAM,QAAQ,GACZ,iBAAiB,CAAC,MAAM,CACtB,CAAC,GAAG,EAAE,IAAc,KAAI;;AACtB,gBAAA,OAAA,CAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,IAAI,0CAAE,YAAY,MAAI,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAA;AAC9D,sBAAE,GAAG,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAe,IAAG,IAAI,CAAC,QAAQ;sBACvD,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAA;AAAA,aAAA,EAC1C,CAAC,CACF,IAAI,CAAC,CAAA;YAER,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAA;AAE7C,YAAA,OAAO,QAAQ,CAAA;;AAChB,KAAA;IAEO,cAAc,CAAC,MAAc,EAAE,QAA2B,EAAA;;QAChE,IAAI,CAAC,MAAM,CAAC,gBAAgB;AAAE,YAAA,OAAO,IAAI,CAAA;AAEzC,QAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;AAE1B,QAAA,IAAI,QAAQ,GACV,CAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CACxB,CAAC,GAAG,EAAE,IAAI,KAAI;;AACZ,YAAA,OAAA,CAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,IAAI,0CAAE,YAAY,MAAI,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAA;AAC9D,kBAAE,GAAG,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAe,IAAG,IAAI,CAAC,QAAQ;kBACvD,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAA;AAAA,SAAA,EAC1C,CAAC,CACF,KAAI,CAAC,CAAA;AAER,QAAA,IAAI,MAAM,CAAC,gBAAgB,IAAI,QAAQ;AAAE,YAAA,OAAO,IAAI,CAAA;AACpD,QAAA,OAAO,KAAK,CAAA;KACb;IAEa,oBAAoB,CAAC,MAAc,EAAE,QAA2B,EAAA;;;YAC5E,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE;AACnE,gBAAA,OAAO,IAAI,CAAA;AACZ,aAAA;YAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;YAEjE,MAAM,aAAa,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAC,CAAC,IAAG;;AACnD,gBAAA,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,EAAC,CAAA,EAAA,GAAA,CAAC,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAA;AAAE,oBAAA,OAAO,IAAI,CAAA;AACvD,gBAAA,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;AACtG,aAAC,CAAC,CAAA;YAEF,OAAO,aAAa,CAAC,MAAM,GAAG,IAAI,GAAG,KAAK,CAAA;;AAC3C,KAAA;IAEa,mCAAmC,CAAC,MAAc,EAAE,SAAiB,EAAA;;;AAEjF,YAAA,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,eAAe,KAAK,aAAa,CAAC,aAAa;AACpG,gBAAA,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,CAAC,CAAA;;AAGzD,YAAA,IAAI,MAAM,CAAC,eAAe,KAAK,aAAa,CAAC,aAAa,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS;AACnG,gBAAA,MAAM,IAAI,kBAAkB,CAAC,uCAAuC,CAAC,CAAA;YAEvE,MAAM,sBAAsB,GAC1B,MAAM,CAAC,eAAe,KAAK,aAAa,CAAC,iBAAiB;AAC1D,gBAAA,MAAM,CAAC,eAAe,KAAK,aAAa,CAAC,mBAAmB;AAC5D,gBAAA,MAAM,CAAC,eAAe,KAAK,aAAa,CAAC,cAAc,CAAA;YAEzD,IAAI,sBAAsB,IAAI,SAAS,EAAE;AACvC,gBAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,sBAAsB;AAC1C,qBAAA,IAAI,CAAC;AACJ,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE;4BACJ,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;AACpD,yBAAA;AACF,qBAAA;iBACF,CAAC;qBACD,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;gBAE1B,MAAM,UAAU,GAAG,GAAG,KAAA,IAAA,IAAH,GAAG,KAAH,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,GAAG,CAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAA;gBAEjE,QAAQ,MAAM,CAAC,eAAe;oBAC5B,KAAK,aAAa,CAAC,iBAAiB;AAClC,wBAAA,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;oBAC9B,KAAK,aAAa,CAAC,mBAAmB;AACpC,wBAAA,OAAO,UAAU,CAAC,MAAM,KAAK,CAAC,CAAA;oBAChC,KAAK,aAAa,CAAC,cAAc;AAC/B,wBAAA,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAA;AACzB,oBAAA;AACE,wBAAA,OAAO,KAAK,CAAA;AACf,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,IAAI,CAAA;SACZ,CAAA,CAAA;AAAA,KAAA;AAEa,IAAA,qBAAqB,CAAC,MAAc,EAAA;;YAC/C,IAAI,gBAAgB,GAA0C,EAAE,CAAA;AAE/D,YAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACrE,IAAI,CAAC,GAAwC,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;AACxH,gBAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAC,CAAC,CAAA;AAC/D,aAAA;AAED,YAAA,OAAO,gBAAgB,CAAA;SAC1B,CAAA,CAAA;AAAA,KAAA;;2GApQU,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAEd,kBAAkB,EAClB,EAAA,EAAA,KAAA,EAAA,YAAY,aACZ,iBAAiB,EAAA,EAAA,EAAA,KAAA,EACjB,wBAAwB,EAAA,EAAA,EAAA,KAAA,EACxB,oBAAoB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AANnB,aAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFZ,MAAM,EAAA,CAAA,CAAA;4FAEP,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAGI,MAAM;2BAAC,kBAAkB,CAAA;;0BACzB,MAAM;2BAAC,YAAY,CAAA;;0BACnB,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,MAAM;2BAAC,wBAAwB,CAAA;;0BAC/B,MAAM;2BAAC,oBAAoB,CAAA;;;MCVnB,eAAe,CAAA;IAC1B,WACmB,CAAA,aAA4B,EACE,kBAAsC,EACzC,eAAgC,EACjC,cAA8B,EAClC,WAAkB,EAAA;QAJxC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;QACE,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QACzC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACjC,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAClC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAO;KACvD;AAEJ,IAAA,WAAW,CAAC,YAAmC,EAAA;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;AAE3C,QAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;QAEpF,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAA;KAC/C;AAED,IAAA,iBAAiB,CAAC,UAAkB,EAAA;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/D,SAAS,CAAC,CAAC,QAAQ,KACjB,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,CAAA,CAAA,EAAA,GAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,IAAI,0CAAE,EAAE,IAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,EAAA,CACjG,EACD,SAAS,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAC1F,CAAA;KACF;AAED,IAAA,uBAAuB,CAAC,QAA2B,EAAA;AACjD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;KACrH;AAED,IAAA,kBAAkB,CAAC,QAA2B,EAAA;AAC5C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;KAC3G;IAED,wBAAwB,GAAA;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAE3B,OAAO,EAAE,EAAE,CAAA;KACZ;AAED,IAAA,YAAY,CAAC,MAAc,EAAA;AACzB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5B,SAAS,CAAC,CAAO,QAAQ,KAAK,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA,EAAA,OAAA,MAAM,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAA,CAAC,CAC/F,CAAA;KACF;IAED,WAAW,CAAC,QAAgB,EAAE,YAA2B,EAAA;AACvD,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5B,SAAS,CAAC,CAAC,QAAQ,KAAI;;YACrB,OAAA,IAAI,CAAC,aAAa;iBACf,WAAW,CACV,QAAQ,EACR,CAAA,EAAA,GAAA,QAAQ,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EACpB,aAAa,CAAC,SAAS,EACvB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAC9B,QAAQ,EACR,KAAK,CACN;AACA,iBAAA,IAAI,EAAE,CAAA;AAAA,SAAA,CACV,CACF,CAAA;KACF;AAEa,IAAA,cAAc,CAAC,YAAmC,EAAA;;YAC9D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EACnD,SAAS,EAAE,IAAI,IAAI,EAAE,IAClB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CACtE,EAAA,EAAA,IAAI,EAAE,CAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,YAAY,CAAE,IAAI,KAAI,IAAI,CAAC,WAAW,EAAA,CAAA,CAC5C,CAAA;YAEF,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;AAErC,YAAA,OAAO,QAAQ,CAAA;SAChB,CAAA,CAAA;AAAA,KAAA;;AAzEU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,4CAGhB,oBAAoB,EAAA,EAAA,EAAA,KAAA,EACpB,iBAAiB,EACjB,EAAA,EAAA,KAAA,EAAA,gBAAgB,aAChB,YAAY,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHANX,eAAe,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;0BAIN,MAAM;2BAAC,oBAAoB,CAAA;;0BAC3B,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,MAAM;2BAAC,gBAAgB,CAAA;;0BACvB,MAAM;2BAAC,YAAY,CAAA;;;MCdX,WAAW,CAAA;AAGtB,IAAA,WAAA,CACmB,WAAwB,EACxB,eAAgC,EACV,WAAkB,EACX,iBAAoC,EAAA;QAHjE,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;QACxB,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;QACV,IAAW,CAAA,WAAA,GAAX,WAAW,CAAO;QACX,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;AAN5E,QAAA,IAAA,CAAA,WAAW,GAAkB,IAAI,OAAO,EAAE,CAAA;AA0G1C,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,QAAkB,EAAE,QAAgB,EAAE,QAAmB,KACvF,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CACxE,SAAS,CAAC,CAAC,cAAc,KAAI;;YAC3B,MAAM,KAAK,GAAe,EAAE,CAAA;YAC5B,MAAM,KAAK,GAAG,CAAA,EAAA,GAAA,cAAc,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,GAAG,CAAE,CAAA,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AAErG,YAAA,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;gBACd,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAA;gBACpD,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;AAC/D,aAAA;;AACC,gBAAA,cAAc,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CACrC,cAAc,CAAC,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CACpF,CAAA;YAEH,OAAO,IAAI,CAAC,eAAe;iBACxB,uBAAuB,CAAC,cAAc,CAAC;AACvC,iBAAA,IAAI,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;SACtF,CAAC,CACH,CAAA;AAEK,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,KAAiB,KAAU;YACvD,MAAM,IAAI,GAAS,EAAE,CAAA;YAErB,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAL,KAAK,CAAE,OAAO,CACZ,CAAC,IAAI,KAAI;;gBACP,QAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,UAAU,CAChC,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAC1B,EAAA,EAAA,QAAQ,EAAE,CAAC,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,KAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,EAC/E,CAAA,CAAA,EAAC;AAAA,aAAA,CACN,CAAA;AAED,YAAA,OAAO,IAAI,CAAA;AACb,SAAC,CAAA;QAEO,IAAa,CAAA,aAAA,GAAG,CAAO,EAC7B,QAAQ,EACR,IAAI,EACJ,QAAQ,GAKT,KAAgE,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;;AAE/D,YAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;AAEjE,YAAA,IAAI,CAAC,QAAQ,GAAG,CAAA,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAJ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,IAAI,CAAE,QAAQ,MAAI,MAAA,CAAA,EAAA,GAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,CAAA,IAAI,CAAC,CAAA;YAEnH,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,CAAC;AACzC,gBAAA,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAG,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,CAAA,GAAG,cAAc,CAAC,CAAA;AAEpF,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAI,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,EAAE,CAAA,CAAA;YAChD,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;AACxF,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;AAClC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;AACrC,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW;AACvC,gBAAA,YAAY,EAAE,CAAA,EAAA,GAAA,QAAQ,CAAC,IAAI,0CAAE,YAAY;AAC1C,aAAA,CAAC,CAAA;YAEF,OAAO;gBACL,QAAQ;AACR,gBAAA,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;oBAC5B,EAAE;oBACF,IAAI,EAAE,IAAI,KAAJ,IAAA,IAAA,IAAI,cAAJ,IAAI,GAAI,OAAO,CAAC,IAAI;oBAC1B,GAAG,EAAE,GAAG,KAAH,IAAA,IAAA,GAAG,cAAH,GAAG,GAAI,OAAO,CAAC,GAAG;oBACvB,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,IAAI,EAAE,IAAI,KAAJ,IAAA,IAAA,IAAI,cAAJ,IAAI,GAAI,OAAO,CAAC,IAAI;oBAC1B,GAAG,EAAE,GAAG,KAAH,IAAA,IAAA,GAAG,cAAH,GAAG,GAAI,OAAO,CAAC,GAAG;oBACvB,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,MAAM,EAAE,MAAM,KAAN,IAAA,IAAA,MAAM,cAAN,MAAM,GAAI,OAAO,CAAC,MAAM;AAChC,oBAAA,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC;oBAChD,SAAS;AACT,oBAAA,UAAU,EAAE,CAAA,EAAA,GAAA,OAAO,CAAC,UAAU,mCAAI,EAAE;AACpC,oBAAA,MAAM,EAAE,MAAM,KAAA,IAAA,IAAN,MAAM,KAAN,KAAA,CAAA,GAAA,MAAM,GAAI,IAAI;AACtB,oBAAA,SAAS,EAAE,CAAA,EAAA,GAAA,OAAO,CAAC,SAAS,mCAAI,CAAC;oBACjC,IAAI;iBACL,CAAC;aACH,CAAA;AACH,SAAC,CAAA,CAAA;QAEO,IAAe,CAAA,eAAA,GAAG,CAAC,EACzB,OAAO,EACP,YAAY,GAKb,KAAY;AACX,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAA;YAE1B,IAAI,OAAO,CAAC,MAAM;AAAE,gBAAA,OAAO,CAAC,CAAA;AAE5B,YAAA,OAAO,YAAY,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAA;AACrF,SAAC,CAAA;AAEO,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,IAAc,EAAE,QAAgB,KAAI;;YAC3D,MAAM,QAAQ,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,KAAI,CAAC,CAAA;AAC1C,YAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA;AAE5C,YAAA,OAAO,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAChD,SAAC,CAAA;KA1MG;AAEJ,IAAA,OAAO,CAAC,IAAc,EAAE,QAAA,GAAmB,CAAC,EAAA;AAC1C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAClD,SAAS,CAAC,CAAO,QAAQ,KAAI,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA,EAAC,OAAA,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAA,GAAA,CAAC,EACpG,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC,EAAE,QAAoB,CAAC,CAAC,EAC9G,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC3C,CAAA;KACF;AAED,IAAA,YAAY,CAAC,IAAc,EAAA;AACzB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5C,GAAG,CAAC,CAAC,QAAQ,KAAI;;YACf,MAAM,YAAY,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,CAAA;AAEtF,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;AAAE,gBAAA,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEpF,YAAA,OAAO,QAAQ,CAAA;SAChB,CAAC,EACF,SAAS,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,EAC/E,GAAG,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAC9D,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC3C,CAAA;KACF;AAED,IAAA,OAAO,CAAC,QAA+B,EAAA;QACrC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAErF,OAAO,IAAI,CAAC,WAAW,CAAA;KACxB;AAED;;AAEG;AACH,IAAA,uBAAuB,CAAC,IAAc,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,CACpC,SAAS,CAAC,CAAC,IAAI,KACb,GAAG,CACD,MAAM,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EACvD,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAC9B,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CACrB,CACF,EACD,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CACvC,CAAA;KACF;AAED,IAAA,UAAU,CAAC,IAAc,EAAA;AACvB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5C,GAAG,CAAC,CAAC,QAAQ,KAAI;YACf,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,CAAA;YAEnF,IAAI,KAAK,IAAI,CAAC;gBAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AAEnD,YAAA,OAAO,QAAQ,CAAA;SAChB,CAAC,EACF,SAAS,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,EAC/E,GAAG,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAC9D,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC3C,CAAA;KACF;AAED,IAAA,cAAc,CAAC,IAAU,EAAA;AACvB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5C,SAAS,CAAC,CAAC,QAAQ,KACjB,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,iCAAM,QAAQ,CAAC,OAAO,EAAE,CAAA,EAAA,EAAE,IAAI,EAAG,CAAA,CAAA,CAAC,CAC9F,EACD,SAAS,CAAC,CAAO,QAAQ,KAAI,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;;AAAC,YAAA,OAAA,IAAI,CAAC,eAAe,CAAC,uBAAuB,CACtE,QAAQ,CAAC,UAAU,iCACd,QAAQ,CAAC,OAAO,EAAE,KACrB,SAAS,EAAE,CAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,IAAG,MAAM,OAAO,CAAC,GAAG,CACvD,CAAA,EAAA,GAAA,QAAQ,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,CAAO,IAAI,KAAK,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA,EAAA,OAAA,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAA,EAAA,CAAA,CAAC,CAC/F,GAAG,EAAE,EACR,CAAA,CAAA,CACH,CAAC,SAAS,EAAE,CAAA;AAAA,SAAA,CAAA,CACd,EACD,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAC5D,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC3C,CAAA;KACF;IAED,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAC5C,GAAG,CAAC,CAAC,QAAQ,KAAI;AACf,YAAA,IAAI,CAAC,eAAe,CAAC,wBAAwB,EAAE,CAAA;AAC/C,YAAA,OAAO,QAAQ,CAAA;AACjB,SAAC,CAAC,EACF,SAAS,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,EACnE,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC3C,CAAA;KACF;AAEO,IAAA,qBAAqB,CAAC,YAAmC,EAAA;AAC/D,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CACxD,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,SAAS,CAAC,EACrC,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CACjE,CAAA;KACF;;yGAzGU,WAAW,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,eAAA,EAAA,EAAA,EAAA,KAAA,EAMZ,YAAY,EAAA,EAAA,EAAA,KAAA,EACZ,mBAAmB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;6GAPlB,WAAW,EAAA,CAAA,CAAA;4FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB,UAAU;;0BAON,MAAM;2BAAC,YAAY,CAAA;;0BACnB,MAAM;2BAAC,mBAAmB,CAAA;;;MCLlB,2BAA2B,CAAA;AACtC,IAAA,WAAA,CAEmB,8BAA8D,EAC5B,sBAA8C,EAChF,aAA4B,EAAA;QAF5B,IAA8B,CAAA,8BAAA,GAA9B,8BAA8B,CAAgC;QAC5B,IAAsB,CAAA,sBAAA,GAAtB,sBAAsB,CAAwB;QAChF,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;KAC1C;AAEL,IAAA,uBAAuB,CAAC,YAA+C,EAAA;QACrE,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;AAEvD,QAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;QAEhG,OAAO,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC,CAAA;KAC3D;AAEa,IAAA,0BAA0B,CACtC,YAA+C,EAAA;;AAE/C,YAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAA,MAAA,CAAA,MAAA,CAAA,EAC/D,SAAS,EAAE,IAAI,IAAI,EAAE,IAClB,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAClF,CAAA;YAEF,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;AAEjD,YAAA,OAAO,QAAQ,CAAA;SAChB,CAAA,CAAA;AAAA,KAAA;IAED,oCAAoC,GAAA;AAClC,QAAA,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAA;QAEvC,OAAO,EAAE,EAAE,CAAA;KACZ;IAED,WAAW,CAAC,QAAgB,EAAE,SAAiB,EAAA;AAC7C,QAAA,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,CACxC,SAAS,CAAC,CAAC,QAAQ,KACjB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CACnI,CACF,CAAA;KACF;AAED,IAAA,wBAAwB,CAAC,MAAc,EAAA;AACrC,QAAA,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,CACxC,SAAS,CAAC,CAAC,QAAQ,KACjB,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CACrE,CACF,CAAA;KACF;;yHAjDU,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAE5B,gCAAgC,EAAA,EAAA,EAAA,KAAA,EAEhC,wBAAwB,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;6HAJvB,2BAA2B,EAAA,CAAA,CAAA;4FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC,UAAU;;0BAGN,MAAM;2BAAC,gCAAgC,CAAA;;0BAEvC,MAAM;2BAAC,wBAAwB,CAAA;;;MCIvB,eAAe,CAAA;AAU1B,IAAA,WAAA,CACiD,kBAAsC,EAC1C,cAA8B,EAC3B,iBAAoC,EAC3C,WAAkB,EAAA;QAHV,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;QAC1C,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC3B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QAC3C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAO;AA+GnD,QAAA,IAAA,CAAA,kCAAkC,GAAG,CAAC,KAAwB,KAAuB;;AAAC,YAAA,QAAC;AAC7F,gBAAA,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA,CAAA,EAAA,GAAA,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAL,KAAK,CAAE,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,EAAE,KAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;AAC3G,gBAAA,QAAQ,EACN,CAAA,CAAA,EAAA,GAAA,KAAK,aAAL,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAL,KAAK,CAAE,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC,CAAC,OAAO,KAC3B,OAAO,CAAC,UAAU,CAChB,IAAI,CAAC,CAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAP,OAAO,CAAE,OAAO,EAAE,KAAI,EAAE,EAAE;oBAC7B,IAAI;oBACJ,OAAO;oBACP,SAAS;oBACT,aAAa;oBACb,MAAM;oBACN,KAAK;oBACL,OAAO;oBACP,WAAW;oBACX,QAAQ;oBACR,YAAY;oBACZ,MAAM;oBACN,QAAQ;oBACR,MAAM;oBACN,MAAM;iBACP,CAAC,CACH,CACF,KAAI,EAAE;AACV,aAAA,EAAC;SAAA,CAAA;KArIE;AAZJ,IAAA,IAAY,MAAM,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,QAAQ;AAAE,YAAA,OAAO,UAAU,CAAA;AAC1D,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,UAAU;AAAE,YAAA,OAAO,aAAa,CAAA;AAE/D,QAAA,OAAO,IAAI,CAAA;KACZ;IASD,WAAW,GAAA;QACT,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,GAAG,CAAC,CAAC,IAAI,KAAI,EAAA,IAAA,EAAA,CAAA,CAAC,QAAC,CAAA,CAAA,EAAA,GAAA,IAAI,KAAJ,IAAA,IAAA,IAAI,KAAJ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,IAAI,CAAE,IAAI,0CAAE,SAAS,IAAG,IAAI,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI,EAAC,EAAA,CAAC,EACjE,SAAS,CAAC,CAAC,IAAI,KACb,IAAI;AACF,cAAE,EAAE,CAAC,IAAI,CAAC;AACV,cAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,CACjG,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,MAAM;gBAC/D,gBAAgB;gBAChB,gBAAgB;gBAChB,gBAAgB;AACjB,aAAA,CAAC,CAAC,EACH,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAC7C,CACN,CACF,CAAA;KACF;AAED,IAAA,UAAU,CAAC,IAAgB,EAAA;AACzB,QAAA,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,GAAG,CAAC,CAAC,IAAI,KAAI;YACX,IAAI,IAAI,KAAK,OAAO;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAA;YAChD,IAAI,IAAI,KAAK,UAAU;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACrD,IAAI,IAAI,KAAK,OAAO;gBAAE,OAAO,IAAI,CAAC,YAAY,CAAA;YAC9C,IAAI,IAAI,KAAK,MAAM;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SAC9C,CAAC,CACH,CAAA;KACF;IAED,0BAA0B,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAA;KACrF;IAEO,mBAAmB,GAAA;QACzB,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,SAAS,CAAC,CAAC,IAAI,KACb,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAC9E,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CACrE,CACF,CACF,CAAA;KACF;IAEO,mBAAmB,GAAA;QACzB,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,SAAS,CAAC,CAAC,IAAI,KACb,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAC9E,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CACrE,CACF,CACF,CAAA;KACF;IAEO,mBAAmB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,SAAS,CAAC,CAAC,IAAI,KACb,QAAQ,CACN,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAC5C,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAC5C,SAAS,CAAC,CAAC,QAAQ,KACjB,IAAI,CACF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC1B,YAAA,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE;AACrE,YAAA,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;SACtB,CAAC,CACH,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CACpD,EACD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EACxE,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAC7C,CACF,CACF,CACF,CACF,CAAA;KACF;IAEO,oBAAoB,GAAA;AAC1B,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CACpC,SAAS,CAAC,CAAC,IAAI,KACb,IAAI;AACF,cAAE,EAAE,CAAC,IAAI,CAAC;AACV,cAAE,CAAC,IAAI,CAAC,MAAM;kBACZ,UAAU,CAAC,IAAI,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AACnD,kBAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CACrD,GAAG,CAAC,CAAC,UAAU,MAAM,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAC3D,CACN,CACF,CAAA;KACF;AAEO,IAAA,YAAY,CAAC,QAAkB,EAAA;AACrC,QAAA,MAAM,IAAI,GAAG;YACX,SAAS,EAAE,IAAI,IAAI,EAAE;AACrB,YAAA,SAAS,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AACxC,YAAA,IAAI,EAAE,QAAQ;SACf,CAAA;AAED,QAAA,OAAO,IAAI,CACT,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YACzB,EAAE,EAAE,IAAI,CAAC,MAAM;YACf,IAAI;AACL,SAAA,CAAC,CACH,CAAC,IAAI,CACJ,GAAG,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,EAC/C,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,CAClC,CAAA;KACF;;AA3HU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,kBAWhB,oBAAoB,EAAA,EAAA,EAAA,KAAA,EACpB,gBAAgB,EAChB,EAAA,EAAA,KAAA,EAAA,mBAAmB,aACnB,YAAY,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHAdX,eAAe,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;0BAYN,MAAM;2BAAC,oBAAoB,CAAA;;0BAC3B,MAAM;2BAAC,gBAAgB,CAAA;;0BACvB,MAAM;2BAAC,mBAAmB,CAAA;;0BAC1B,MAAM;2BAAC,YAAY,CAAA;;;MCjCX,YAAY,CAAA;IAGvB,WACmB,CAAA,gBAAkC,EACP,eAAyC,EAAA;QADpE,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QACP,IAAe,CAAA,eAAA,GAAf,eAAe,CAA0B;AAJvF,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,OAAO,EAAS,CAAA;KAK/B;AAEJ,IAAA,QAAQ,CAAC,EAAU,EAAA;AACjB,QAAA,IAAI,CAAC,gBAAgB;aAClB,GAAG,CAA+B,CAAG,EAAA,IAAI,CAAC,eAAe,CAAC,cAAc,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,CAAC;AACjF,aAAA,YAAY,EAAE;AACd,aAAA,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACzC,aAAA,SAAS,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAElD,OAAO,IAAI,CAAC,YAAY,CAAA;KACzB;;AAhBU,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,oDAKb,iBAAiB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;8GALhB,YAAY,EAAA,CAAA,CAAA;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBADxB,UAAU;;0BAMN,MAAM;2BAAC,iBAAiB,CAAA;;;MCAhB,eAAe,CAAA;AAE1B,IAAA,WAAA,CACU,IAAgB,EACK,MAAc,EACnC,WAA4B,EAAA;QAF5B,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;QACK,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACnC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAiB;KAClC;IAEG,kBAAkB,CACvB,IAAY,EACZ,GAAW,EACX,WAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,gBAAyB,EAAA;AAGzB,QAAA,OAAO,aAAa,CAAC;AACnB,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;AAC9B,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAA,mCAAA,EAAsC,QAAQ,CAAe,YAAA,EAAA,GAAG,CAAgB,aAAA,EAAA,WAAW,EAAE,CAAC;SAC3H,CAAC;aACD,IAAI,CACH,GAAG,CAAE,CAAC,CAAC,KAAK,EAAE,uBAAuB,CAAsC,KAAG;AAC5E,YAAA,IAAI,eAAe,GAAG,uBAAuB,CAAC,MAAuE,CAAA;YAErH,IAAI,CAAC,eAAe,CAAC,MAAM;AAAE,gBAAA,OAAO,EAAE,CAAA;AAEtC,YAAA,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAG;AACxC,gBAAA,IAAI,CAAC,CAAC,mBAAmB,IAAI,aAAa;AAAE,oBAAA,CAAC,CAAC,mBAAmB,GAAG,UAAU,CAAA;;AACzE,oBAAA,OAAO,CAAC,CAAA;AACf,aAAC,CAAC,CAAA;AAEF,YAAA,MAAM,wBAAwB,GAAG,KAAK,CAAC,mBAAmB,CAAA;AAE1D,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE;AAC7C,gBAAA,eAAe,GAAG,eAAe,CAAC,MAAM,CACtC,CAAC,MAAM,KAAK,MAAM,CAAC,mBAAmB,KAAK,UAAU,CACtD,CAAC;AACH,aAAA;YAED,IAAI,UAAU,IAAI,GAAG,EAAE;AACrB,gBAAA,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAG;AACxC,oBAAA,IAAI,CAAC,CAAC,WAAW,KAAK,UAAU;AAAE,wBAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAY,CAAC,CAAA,EAAA,EAAE,UAAU,EAAE,CAAC,EAAE,CAAA,CAAA;;AAC3D,wBAAA,OAAO,CAAC,CAAA;AACf,iBAAC,CAAC,CAAA;AACH,aAAA;AAED,YAAA,IAAI,IAAI,IAAI,KAAK,CAAC,QAAQ;AAAE,gBAAA,OAAO,eAAe,CAAA;YAElD,IAAI,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE;AAC7D,gBAAA,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAG;AACxC,oBAAA,IAAI,CAAC,CAAC,WAAW,IAAI,UAAU;wBAAE,OAAY,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,CAAC,KAAE,UAAU,EAAE,CAAC,CAAC,UAAU,GAAC,CAAC,EAAE,CAAA,CAAA;;AACvE,wBAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAY,CAAC,CAAA,EAAA,EAAE,UAAU,EAAE,CAAC,EAAE,CAAA,CAAA;AACrC,iBAAC,CAAC,CAAA;AACH,aAAA;YAED,IAAI,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE;AAC7D,gBAAA,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAG;oBACxC,OAAY,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,CAAC,KAAE,UAAU,EAAE,CAAC,CAAC,UAAU,GAAC,CAAC,EAAE,CAAA,CAAA;AAC7C,iBAAC,CAAC,CAAA;AACH,aAAA;AAED,YAAA,OAAO,eAAe,CAAA;SACvB,CAAC,CACH,CAAA;KAEF;IAEO,4BAA4B,CAAC,IAAY,EAAE,gBAAwB,EAAA;AACzE,QAAA,IAAG,CAAC,gBAAgB;AAAE,YAAA,OAAO,KAAK,CAAA;QAElC,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,gBAAgB,IAAI,QAAQ,EAAE;AAC5D,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AAED,QAAA,OAAO,KAAK,CAAA;KACb;IAEO,4BAA4B,CAAC,IAAY,EAAE,gBAAwB,EAAA;AACzE,QAAA,IAAG,CAAC,gBAAgB;AAAE,YAAA,OAAO,KAAK,CAAA;QAElC,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,gBAAgB,IAAI,OAAO,EAAE;AAC3D,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AAED,QAAA,OAAO,KAAK,CAAA;KACb;AAEO,IAAA,UAAU,CAAC,KAAU,EAAA;AAC3B,QAAA,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;AAExB,QAAA,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACvB,YAAA,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,CAAA,EAAG,KAAK,CAAC,WAAW,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,CAAA,CAAE,CAAC,CAAA;AACtE,YAAA,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC,CAAA,EAAG,KAAK,CAAC,WAAW,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAA,CAAE,CAAC,CAAA;YAElE,IAAI,KAAK,GAAG,GAAG;gBACb,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAI,CAAA,EAAA,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAA,CAAE,CAAC,CAAA;AAEpE,YAAA,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,GAAG;AAChC,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;AAED,QAAA,OAAO,KAAK,CAAA;KACb;;AAvGU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,8CAIhB,WAAW,EAAA,EAAA,EAAA,KAAA,EAAAC,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;iHAJV,eAAe,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;;0BAKN,MAAM;2BAAC,WAAW,CAAA;;;MCoDV,yBAAyB,CAAA;AACpC,IAAA,OAAO,aAAa,CAClB,OAAwB,EACxB,YAAyC,EAAA;QAEzC,OAAO;AACL,YAAA,QAAQ,EAAE,yBAAyB;AACnC,YAAA,SAAS,EAAE;AACT,gBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAChD,gBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE;AACvD,aAAA;SACF,CAAA;KACF;;uHAZU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,YA9C1B,iBAAiB,CAAA,EAAA,CAAA,CAAA;AA8ChB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,EA7CzB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,UAAU,EAAE,CAAC,qBAA4C,EAAE,cAA8B,KAAoB;AAC3G,gBAAA,OAAO,IAAI,cAAc,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAA;aACjE;AACD,YAAA,IAAI,EAAE,CAAC,uBAAuB,EAAE,gBAAgB,CAAC;AAClD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,UAAU,EAAE,CAAC,eAAgC,KAA2B;AACtE,gBAAA,OAAO,IAAI,iCAAiC,CAAC,eAAsB,CAAC,CAAA;aACrE;YACD,IAAI,EAAE,CAAC,eAAe,CAAC;AACxB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,UAAU,EAAE,CAAC,eAAgC,EAAE,cAA8B,KAAc;AACzF,gBAAA,OAAO,IAAI,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC,CAAA;aACrD;AACD,YAAA,IAAI,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;AAC5C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,UAAU,EAAE,CAAC,eAAgC,KAAqB;AAChE,gBAAA,OAAO,IAAI,2BAA2B,CAAC,eAAsB,CAAC,CAAA;aAC/D;YACD,IAAI,EAAE,CAAC,eAAe,CAAC;AACxB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,UAAU,EAAE,CAAC,qBAA4C,KAAa;AACpE,gBAAA,OAAO,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAA;aAC1C;YACD,IAAI,EAAE,CAAC,uBAAuB,CAAC;AAChC,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,kBAAkB;AAC3B,YAAA,UAAU,EAAE,CAAC,qBAA4C,KAAsB;AAC7E,gBAAA,OAAO,IAAI,gBAAgB,CAAC,qBAAqB,CAAC,CAAA;aACnD;YACD,IAAI,EAAE,CAAC,uBAAuB,CAAC;AAChC,SAAA;KACF,EA5CQ,OAAA,EAAA,CAAA,CAAC,iBAAiB,CAAC,CAAA,EAAA,CAAA,CAAA;4FA8CjB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBA/CrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC5B,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,UAAU,EAAE,CAAC,qBAA4C,EAAE,cAA8B,KAAoB;AAC3G,gCAAA,OAAO,IAAI,cAAc,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAA;6BACjE;AACD,4BAAA,IAAI,EAAE,CAAC,uBAAuB,EAAE,gBAAgB,CAAC;AAClD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;AAChC,4BAAA,UAAU,EAAE,CAAC,eAAgC,KAA2B;AACtE,gCAAA,OAAO,IAAI,iCAAiC,CAAC,eAAsB,CAAC,CAAA;6BACrE;4BACD,IAAI,EAAE,CAAC,eAAe,CAAC;AACxB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,UAAU;AACnB,4BAAA,UAAU,EAAE,CAAC,eAAgC,EAAE,cAA8B,KAAc;AACzF,gCAAA,OAAO,IAAI,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC,CAAA;6BACrD;AACD,4BAAA,IAAI,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;AAC5C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,UAAU,EAAE,CAAC,eAAgC,KAAqB;AAChE,gCAAA,OAAO,IAAI,2BAA2B,CAAC,eAAsB,CAAC,CAAA;6BAC/D;4BACD,IAAI,EAAE,CAAC,eAAe,CAAC;AACxB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,SAAS;AAClB,4BAAA,UAAU,EAAE,CAAC,qBAA4C,KAAa;AACpE,gCAAA,OAAO,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAA;6BAC1C;4BACD,IAAI,EAAE,CAAC,uBAAuB,CAAC;AAChC,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,UAAU,EAAE,CAAC,qBAA4C,KAAsB;AAC7E,gCAAA,OAAO,IAAI,gBAAgB,CAAC,qBAAqB,CAAC,CAAA;6BACnD;4BACD,IAAI,EAAE,CAAC,uBAAuB,CAAC;AAChC,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;MCnDY,yBAAyB,CAAA;IACpC,OAAO,aAAa,CAAC,OAAiC,EAAA;QACpD,OAAO;AACL,YAAA,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;SACvD,CAAA;KACF;;uHANU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;wHAAzB,yBAAyB,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,EAVzB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,UAAU,EAAE,CAAC,aAAuC,KAAmB;gBACrE,OAAO,IAAI,aAAa,CAAC,IAAI,YAAY,CAAC,aAAa,CAAC,CAAC,CAAA;aAC1D;YACD,IAAI,EAAE,CAAC,SAAS,CAAC;AAClB,SAAA;AACF,KAAA,EAAA,CAAA,CAAA;4FAEU,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAXrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,aAAa;AACtB,4BAAA,UAAU,EAAE,CAAC,aAAuC,KAAmB;gCACrE,OAAO,IAAI,aAAa,CAAC,IAAI,YAAY,CAAC,aAAa,CAAC,CAAC,CAAA;6BAC1D;4BACD,IAAI,EAAE,CAAC,SAAS,CAAC;AAClB,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;MC8OY,sBAAsB,CAAA;AACjC,IAAA,OAAO,aAAa,CAClB,OAGC,EACD,YAAyC,EAAA;QAEzC,OAAO;AACL,YAAA,QAAQ,EAAE,sBAAsB;AAChC,YAAA,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;AACzD,gBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE;gBACtD,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE;AACxD,aAAA;SACF,CAAA;KACF;;oHAhBU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;qHAAtB,sBAAsB,EAAA,OAAA,EAAA,CA5LvB,iBAAiB,EAAE,yBAAyB,CAAA,EAAA,CAAA,CAAA;AA4L3C,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EA3LtB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,yBAAyB;AAClC,YAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,cAAuC,KAA6B;gBAC5G,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;aACrF;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gBAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC3D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gBAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC5D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,oBAAoB;AAC7B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gBAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC5D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,gCAAgC;AACzC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAoC;AAC1E,gBAAA,OAAO,IAAI,uCAAuC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACxE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,kBAAkB;AAC3B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAsB;AAC5D,gBAAA,OAAO,IAAI,yBAAyB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC1D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAA+B;AACrE,gBAAA,OAAO,IAAI,kCAAkC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACnE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,6BAA6B;AACtC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAiC;AACvE,gBAAA,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACrE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,sBAAuD,KAClC;gBACrB,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;aAC/F;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;AACnD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gBAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACxD;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gBAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACxD;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAA2B;AACjE,gBAAA,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC/D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,oBAAoB;AAC7B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gBAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC5D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAqB;AAC3D,gBAAA,OAAO,IAAI,wBAAwB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACzD;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gBAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC3D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,0BAA0B;AACnC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gBAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAC3D;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,+BAA+B;AACxC,YAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,sBAAuD,KACtB;gBACjC,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;aAC/F;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;AACnD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,4BAA4B;AACrC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAgC;AACtE,gBAAA,OAAO,IAAI,mCAAmC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACpE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,+BAA+B;AACxC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAmC;AACzE,gBAAA,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACvE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,wBAAwB;AACjC,YAAA,UAAU,EAAE,CAAC,SAA2B,KAA4B;AAClE,gBAAA,OAAO,IAAI,+BAA+B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aAChE;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gBAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;aACxD;YACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,cAAuC,KAA2B;gBAC1G,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;aAC/E;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,6BAA6B;AACtC,YAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,cAAuC,KACR;gBAC/B,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;aACrF;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,iBAA6C,KAAuB;gBAC5G,OAAO,IAAI,iCAAiC,CAAC,SAAS,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;aACrF;AACD,YAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;AACrD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,eAAe;YACxB,UAAU,EAAE,CAAC,SAA2B,KAAK,MAC3C,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC;YACnE,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACxB,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CA1LQ,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,CAAA,EAAA,CAAA,CAAA;4FA4L5C,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBA7LlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACvD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,yBAAyB;AAClC,4BAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,cAAuC,KAA6B;gCAC5G,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;6BACrF;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gCAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC3D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gCAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC5D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gCAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC5D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,gCAAgC;AACzC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAoC;AAC1E,gCAAA,OAAO,IAAI,uCAAuC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACxE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAsB;AAC5D,gCAAA,OAAO,IAAI,yBAAyB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC1D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAA+B;AACrE,gCAAA,OAAO,IAAI,kCAAkC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACnE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,6BAA6B;AACtC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAiC;AACvE,gCAAA,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACrE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,sBAAuD,KAClC;gCACrB,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;6BAC/F;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;AACnD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gCAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACxD;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gCAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACxD;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;AAChC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAA2B;AACjE,gCAAA,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC/D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAwB;AAC9D,gCAAA,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC5D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAqB;AAC3D,gCAAA,OAAO,IAAI,wBAAwB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACzD;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gCAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC3D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,0BAA0B;AACnC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAuB;AAC7D,gCAAA,OAAO,IAAI,0BAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAC3D;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,+BAA+B;AACxC,4BAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,sBAAuD,KACtB;gCACjC,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAA;6BAC/F;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;AACnD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAgC;AACtE,gCAAA,OAAO,IAAI,mCAAmC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACpE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,+BAA+B;AACxC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAmC;AACzE,gCAAA,OAAO,IAAI,sCAAsC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACvE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,wBAAwB;AACjC,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAA4B;AAClE,gCAAA,OAAO,IAAI,+BAA+B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BAChE;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,UAAU,EAAE,CAAC,SAA2B,KAAoB;AAC1D,gCAAA,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;6BACxD;4BACD,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACzB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;AAChC,4BAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,cAAuC,KAA2B;gCAC1G,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;6BAC/E;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,6BAA6B;AACtC,4BAAA,UAAU,EAAE,CACV,SAA2B,EAC3B,cAAuC,KACR;gCAC/B,OAAO,IAAI,oCAAoC,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;6BACrF;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC3C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,iCAAiC;AAC1C,4BAAA,UAAU,EAAE,CAAC,SAA2B,EAAE,iBAA6C,KAAuB;gCAC5G,OAAO,IAAI,iCAAiC,CAAC,SAAS,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;6BACrF;AACD,4BAAA,IAAI,EAAE,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;AACrD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,eAAe;4BACxB,UAAU,EAAE,CAAC,SAA2B,KAAK,MAC3C,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC;4BACnE,IAAI,EAAE,CAAC,gBAAgB,CAAC;AACxB,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;MCrMY,0BAA0B,CAAA;IACrC,OAAO,aAAa,CAAC,OAGpB,EAAA;QACC,OAAO;AACL,YAAA,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;SAC5D,CAAA;KACF;;wHATU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yHAA1B,0BAA0B,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,EAvC1B,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,oBAAoB;AAC7B,YAAA,WAAW,EAAE,+BAA+B;AAC7C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,+BAA+B;AACxC,YAAA,UAAU,EAAE,CACV,OAA6B,EAC7B,iBAAiD,KAC3B;AACtB,gBAAA,OAAO,IAAI,+BAA+B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;aACrG;AACD,YAAA,IAAI,EAAE,CAAC,cAAc,EAAE,8BAA8B,CAAC;AACvD,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,WAAW,EAAE,8BAA8B;AAC5C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,8BAA8B;AACvC,YAAA,UAAU,EAAE,CAAC,OAA6B,KAAuB;gBAC/D,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;aACjF;YACD,IAAI,EAAE,CAAC,cAAc,CAAC;AACvB,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,WAAW,EAAE,8BAA8B;AAC5C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,8BAA8B;AACvC,YAAA,UAAU,EAAE,CAAC,OAA6B,KAAuB;gBAC/D,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;aACjF;YACD,IAAI,EAAE,CAAC,cAAc,CAAC;AACvB,SAAA;AACF,KAAA,EAAA,CAAA,CAAA;4FAEU,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAxCtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,WAAW,EAAE,+BAA+B;AAC7C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,+BAA+B;AACxC,4BAAA,UAAU,EAAE,CACV,OAA6B,EAC7B,iBAAiD,KAC3B;AACtB,gCAAA,OAAO,IAAI,+BAA+B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;6BACrG;AACD,4BAAA,IAAI,EAAE,CAAC,cAAc,EAAE,8BAA8B,CAAC;AACvD,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAAE,8BAA8B;AAC5C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,8BAA8B;AACvC,4BAAA,UAAU,EAAE,CAAC,OAA6B,KAAuB;gCAC/D,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;6BACjF;4BACD,IAAI,EAAE,CAAC,cAAc,CAAC;AACvB,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAAE,8BAA8B;AAC5C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,8BAA8B;AACvC,4BAAA,UAAU,EAAE,CAAC,OAA6B,KAAuB;gCAC/D,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;6BACjF;4BACD,IAAI,EAAE,CAAC,cAAc,CAAC;AACvB,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;MCnBY,oBAAoB,CAAA;AAC/B,IAAA,OAAO,aAAa,CAClB,WAAkB,EAClB,OAAiI,EACjI,YAAyC,EAAA;QAEzC,OAAO;AACL,YAAA,QAAQ,EAAE,oBAAoB;AAC9B,YAAA,SAAS,EAAE;gBACT,IAAI,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;AACjF,gBAAA,IAAI,KAAK,CAAC,OAAO,aAAP,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAP,OAAO,CAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,KAAP,IAAA,IAAA,OAAO,uBAAP,OAAO,CAAE,QAAQ,EAAE,CAAC,CAAC;AACjG,gBAAA,IAAI,KAAK,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;AAC7F,gBAAA,IAAI,KAAK,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;AACnG,gBAAA,IAAI,KAAK,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAC1F,gBAAA,IAAI,KAAK,CAAC,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,CAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;AAChG,aAAA;SACF,CAAA;KACF;;kHAjBU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAZrB,OAAA,EAAA,CAAA,iBAAiB,EAAE,sBAAsB,EAAE,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAYpE,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAXpB,SAAA,EAAA;QACT,WAAW;QACX,WAAW;QACX,eAAe;QACf,2BAA2B;QAC3B,aAAa;QACb,eAAe;QACf,YAAY;QACZ,eAAe;AAChB,KAAA,EAAA,OAAA,EAAA,CAVQ,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,0BAA0B,CAAC,CAAA,EAAA,CAAA,CAAA;4FAYrE,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAbhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,0BAA0B,CAAC;AAChF,oBAAA,SAAS,EAAE;wBACT,WAAW;wBACX,WAAW;wBACX,eAAe;wBACf,2BAA2B;wBAC3B,aAAa;wBACb,eAAe;wBACf,YAAY;wBACZ,eAAe;AAChB,qBAAA;AACF,iBAAA,CAAA;;;AClCD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"infrab4a-connect-angular.js","sources":["../../../projects/connect-angular/src/services/auth.service.ts","../../../projects/connect-angular/src/consts/backend-url.const.ts","../../../projects/connect-angular/src/consts/default-shop.const.ts","../../../projects/connect-angular/src/consts/es-config.const.ts","../../../projects/connect-angular/src/consts/hasura-options.const.ts","../../../projects/connect-angular/src/services/errors/invalid-coupon.error.ts","../../../projects/connect-angular/src/services/errors/group-invalid-coupon.error.ts","../../../projects/connect-angular/src/services/coupon.service.ts","../../../projects/connect-angular/src/services/checkout.service.ts","../../../projects/connect-angular/src/services/cart.service.ts","../../../projects/connect-angular/src/services/checkout-subscription.service.ts","../../../projects/connect-angular/src/services/home-shop.service.ts","../../../projects/connect-angular/src/services/order.service.ts","../../../projects/connect-angular/src/services/shipping.service.ts","../../../projects/connect-angular/src/angular-firebase-auth.module.ts","../../../projects/connect-angular/src/angular-elastic-search.module.ts","../../../projects/connect-angular/src/angular-firestore.module.ts","../../../projects/connect-angular/src/angular-hasura-graphql.module.ts","../../../projects/connect-angular/src/angular-connect.module.ts","../../../projects/connect-angular/src/infrab4a-connect-angular.ts"],"sourcesContent":["import { Injectable, Inject } from '@angular/core'\r\nimport { AngularFireAuth } from '@angular/fire/auth'\r\nimport { User, UserRepository } from '@infrab4a/connect'\r\nimport { combineLatest, Observable, of } from 'rxjs'\r\nimport { catchError, map, mergeMap } from 'rxjs/operators'\r\nimport firebase from 'firebase/app'\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n constructor(\r\n private readonly angularFireAuth: AngularFireAuth,\r\n @Inject('UserRepository') private readonly userRepository: UserRepository,\r\n ) {}\r\n\r\n getAuthstate(): Observable<{ user: User; isAnonymous: boolean }> {\r\n const observables: [Observable<firebase.User>, Observable<User>] = [\r\n this.angularFireAuth.authState.pipe(catchError(() => of(null))),\r\n this.getUser().pipe(catchError(() => of(null))),\r\n ]\r\n\r\n return combineLatest(observables).pipe(\r\n map(([fireUser, user]) => {\r\n return {\r\n user,\r\n isAnonymous: fireUser?.isAnonymous,\r\n } as { user: User; isAnonymous: boolean }\r\n }),\r\n )\r\n }\r\n\r\n getUser(): Observable<User> {\r\n return this.getFireUser().pipe(\r\n map((user) => user?.uid),\r\n mergeMap((id) => (id ? this.userRepository.get({ id }) : of(null))),\r\n )\r\n }\r\n\r\n getTokenId(): Observable<string> {\r\n return this.angularFireAuth.idToken\r\n }\r\n\r\n getFireUser(): Observable<firebase.User> {\r\n return this.angularFireAuth.user.pipe(catchError(() => of(null)))\r\n }\r\n}\r\n","export const BACKEND_URL = 'BACKEND_URL'","export const DEFAULT_SHOP = 'DEFAULT_SHOP'\r\n","export const ES_CONFIG = 'ES_CONFIG'\r\n","export const HASURA_OPTIONS = 'HASURA_OPTIONS'\r\n","import { CustomError } from 'ts-custom-error'\r\n\r\nexport class InvalidCouponError extends CustomError {\r\n constructor(readonly message) {\r\n super(message)\r\n }\r\n}\r\n","import { CustomError } from 'ts-custom-error'\r\n\r\nimport { InvalidCouponError } from './invalid-coupon.error'\r\n\r\nexport class GroupInvalidCouponError extends CustomError {\r\n constructor(readonly errors: InvalidCouponError[]) {\r\n super('Many coupon errors throw')\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n Category,\r\n CategoryRepository,\r\n Checkout,\r\n CheckoutSubscription,\r\n CheckoutTypes,\r\n Coupon,\r\n CouponRepository,\r\n CouponTypes,\r\n Exclusivities,\r\n LineItem,\r\n OrderRepository,\r\n Shops,\r\n Status,\r\n SubscriptionRepository,\r\n Where\r\n} from '@infrab4a/connect'\r\nimport { from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap, map } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { InvalidCouponError } from './errors'\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CouponService {\r\n constructor(\r\n @Inject('CouponRepository') private readonly couponRepository: CouponRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderRepository,\r\n @Inject('SubscriptionRepository') private readonly subscriptionRepository: SubscriptionRepository,\r\n @Inject('CategoryRepository') private readonly categoryRepository: CategoryRepository,\r\n ) {}\r\n\r\n checkCoupon(\r\n nickname: string,\r\n userEmail: string,\r\n checkoutType: CheckoutTypes,\r\n plan?: string,\r\n checkout?: Partial<Checkout>,\r\n isSubscription?: boolean,\r\n ): Observable<Coupon> {\r\n return from(\r\n this.couponRepository.find({\r\n filters: {\r\n nickname: { operator: Where.EQUALS, value: nickname },\r\n active: { operator: Where.EQUALS, value: true },\r\n },\r\n }),\r\n ).pipe(\r\n concatMap((coupons) => this.checkCouponRules(coupons, checkoutType, plan, checkout, isSubscription)),\r\n concatMap((coupon: Coupon) => this.checkCouponUseAndLimit(coupon, userEmail, checkout)),\r\n map((coupon: Coupon) => this.isValidCoupon(coupon, userEmail)),\r\n map((coupon: Coupon) => coupon),\r\n )\r\n }\r\n\r\n private emailIsFromCollaborator = (userEmail: string): boolean => !!userEmail?.match(/@b4a.com.br/g)\r\n\r\n private checkCouponRules(\r\n coupons,\r\n checkoutType: CheckoutTypes,\r\n plan?: string,\r\n checkout?: Partial<Checkout>,\r\n isSubscription?: boolean,\r\n ) {\r\n // Caso não ache nenhum cupom, retorna erro\r\n if (coupons.count < 1) {\r\n return throwError('Cupom inválido.')\r\n }\r\n\r\n // Get Primeiro Cupom (o find do repository retorna um array)\r\n const coupon: Coupon = coupons.data.shift()\r\n // Verifica se o cupom é aplicavel na loja\r\n const isInShop = coupon.shopAvailability === Shops.ALL || coupon.shopAvailability === this.defaultShop\r\n\r\n // Cupon não aplicavel a loja retorna erro\r\n if (!isInShop) return throwError('Cupom inválido para loja.')\r\n\r\n // Verifica se o coupon é aplicado no checkout que está sendo realizado\r\n const isCheckoutType = coupon.checkoutType === CheckoutTypes.ALL || coupon.checkoutType === checkoutType\r\n\r\n // Cupon não aplicavel ao checkout retorna erro\r\n if (!isCheckoutType) return throwError('Cupom inválido. Erro de checkout.')\r\n\r\n // Verifica se o cupom é ou pode ser aplicado para subscription\r\n if (checkoutType === CheckoutTypes.ALL || checkoutType === CheckoutTypes.SUBSCRIPTION) {\r\n // Se o cupom tiver um plano associado, verifica se é o mesmo plano do checkout da assinatura\r\n if (coupon.plan && coupon.plan.toUpperCase() !== plan.toUpperCase())\r\n return throwError('Cupom inválido para sua assinatura.')\r\n }\r\n\r\n if (isSubscription) return of(coupon)\r\n\r\n // Verifica se possui o valor minimo de compra para utilização do cupom\r\n const hasMinSubTotal = this.hasMinSubTotal(coupon, checkout)\r\n\r\n // Se não tem valor mínimo atingido, retorna erro\r\n if (!hasMinSubTotal) return throwError('Valor mínimo não atingido')\r\n\r\n return of(coupon)\r\n }\r\n\r\n private isValidCoupon(coupon: Coupon, userEmail: string): Coupon {\r\n // Verifica a data de inicio de validade do cupom\r\n if (coupon?.beginAt > new Date()) throw new InvalidCouponError('Cupom ainda não liberado.')\r\n\r\n // Verifica a data de validade do cupom\r\n if (coupon?.expiresIn < new Date()) throw new InvalidCouponError('Cupom expirado.')\r\n\r\n return coupon\r\n }\r\n\r\n private async checkCouponUseAndLimit(coupon: Coupon, userEmail: string, checkout) {\r\n const orders = await this.orderRepository.find({\r\n filters: {\r\n coupon: { id: coupon.id },\r\n payment: { status: 'paid' },\r\n },\r\n })\r\n\r\n // orders que usuario ja fez com o cupom\r\n const ordersUserCoupon = orders.data.filter((o) => o.user.email == userEmail)\r\n\r\n // Verifica o limite de uso de cupom por usuario\r\n if (coupon.useLimitPerUser && ordersUserCoupon.length)\r\n throw new InvalidCouponError('Limite de uso por usuário atingido.')\r\n\r\n // Verifica o limite de uso geral por usuario\r\n if (coupon.useLimit && orders.data.length >= coupon.useLimit)\r\n throw new InvalidCouponError('Limite de uso atingido.')\r\n\r\n const validUser = await this.userValidationAndSubscriptionStatus(coupon, userEmail)\r\n if (!validUser) throw new InvalidCouponError('Usuário não elegível.')\r\n\r\n const hasProductCategories = await this.hasProductCategories(coupon, checkout)\r\n\r\n if (!hasProductCategories) throw 'Seu carrinho não possui produtos elegíveis para desconto.'\r\n \r\n return coupon\r\n }\r\n\r\n public calcDiscountSubscription(coupon: Coupon, checkout: Partial<CheckoutSubscription>): Observable<number> {\r\n //\r\n let discount = 0\r\n\r\n if (coupon.type === CouponTypes.ABSOLUTE) discount = coupon.discount\r\n else if (coupon.type === CouponTypes.PERCENTAGE)\r\n discount = checkout.subscriptionPlan.recurrencePrice * (coupon.discount / 100)\r\n\r\n return of(discount)\r\n }\r\n\r\n public async calcDiscountShopping(coupon: Coupon, checkout: Partial<Checkout>): Promise<number> {\r\n let discount = 0\r\n\r\n switch (coupon.type) {\r\n case CouponTypes.ABSOLUTE: {\r\n discount = coupon.discount\r\n break\r\n }\r\n case CouponTypes.PERCENTAGE: {\r\n discount = await this.calcShoppingPercentageDiscount(coupon, checkout)\r\n break\r\n }\r\n }\r\n\r\n return discount\r\n }\r\n\r\n private async calcShoppingPercentageDiscount(coupon: Coupon, checkout: Partial<Checkout>): Promise<number> {\r\n let discount = 0\r\n const shop = checkout.shop\r\n let lineItensDiscount = []\r\n const couponCategories = await this.getCouponCategoriesId(coupon)\r\n\r\n if (coupon.productsCategories && coupon.productsCategories.length) {\r\n lineItensDiscount = checkout.lineItems?.filter((i) => {\r\n if (i.categories?.length) {\r\n return i.categories.some((c) => couponCategories.some(cat => (cat.id == c || cat.firestoreId == c)))\r\n }\r\n return true\r\n })\r\n } else {\r\n lineItensDiscount = checkout.lineItems\r\n }\r\n\r\n const subTotal =\r\n lineItensDiscount.reduce(\r\n (acc, curr: LineItem) =>\r\n checkout.user?.isSubscriber && curr.price[shop]?.subscriberPrice\r\n ? acc + curr.price[shop]?.subscriberPrice * curr.quantity\r\n : acc + curr.pricePaid * curr.quantity,\r\n 0,\r\n ) || 0\r\n\r\n discount = subTotal * (coupon.discount / 100)\r\n\r\n return discount\r\n }\r\n\r\n private hasMinSubTotal(coupon: Coupon, checkout: Partial<Checkout>): boolean {\r\n if (!coupon.minSubTotalValue) return true\r\n\r\n const shop = checkout.shop\r\n\r\n let subTotal =\r\n checkout.lineItems?.reduce(\r\n (acc, curr) =>\r\n checkout.user?.isSubscriber && curr.price[shop]?.subscriberPrice\r\n ? acc + curr.price[shop]?.subscriberPrice * curr.quantity\r\n : acc + curr.pricePaid * curr.quantity,\r\n 0,\r\n ) || 0\r\n\r\n if (coupon.minSubTotalValue <= subTotal) return true\r\n return false\r\n }\r\n\r\n private async hasProductCategories(coupon: Coupon, checkout: Partial<Checkout>): Promise<boolean> {\r\n if (!coupon.productsCategories || !coupon.productsCategories.length) {\r\n return true\r\n }\r\n\r\n const couponCategories = await this.getCouponCategoriesId(coupon)\r\n \r\n const hasCategories = checkout.lineItems?.filter(i => {\r\n if (!i.categories || !i.categories?.length) return true\r\n return i.categories.some((c) => couponCategories.some(cat => (cat.id == c || cat.firestoreId == c)))\r\n })\r\n\r\n return hasCategories.length ? true : false\r\n }\r\n\r\n private async userValidationAndSubscriptionStatus(coupon: Coupon, userEmail: string): Promise<boolean> {\r\n // Verifica se o email do usuário é coorporativo\r\n if (!this.emailIsFromCollaborator(userEmail) && coupon.exclusivityType === Exclusivities.COLLABORATORS)\r\n throw new InvalidCouponError('Você não é colaborador.')\r\n\r\n // Verifica se o email do usuário é associado ao cupom de uso por usuario\r\n if (coupon.exclusivityType === Exclusivities.SPECIFIC_USER && coupon.userExclusiveEmail !== userEmail)\r\n throw new InvalidCouponError('Cupom não é válido para este usuário.')\r\n\r\n const couponRuleSubscription =\r\n coupon.exclusivityType === Exclusivities.ACTIVE_SUBSCRIBER ||\r\n coupon.exclusivityType === Exclusivities.INACTIVE_SUBSCRIBER ||\r\n coupon.exclusivityType === Exclusivities.NON_SUBSCRIBER\r\n\r\n if (couponRuleSubscription && userEmail) {\r\n const sub = await this.subscriptionRepository\r\n .find({\r\n filters: {\r\n user: {\r\n email: { operator: Where.EQUALS, value: userEmail },\r\n },\r\n },\r\n })\r\n .then((sub) => sub.data)\r\n\r\n const activeSubs = sub?.filter((s) => s.status === Status.ACTIVE)\r\n\r\n switch (coupon.exclusivityType) {\r\n case Exclusivities.ACTIVE_SUBSCRIBER:\r\n return activeSubs.length > 0\r\n case Exclusivities.INACTIVE_SUBSCRIBER:\r\n return activeSubs.length === 0\r\n case Exclusivities.NON_SUBSCRIBER:\r\n return sub.length === 0\r\n default:\r\n return false\r\n }\r\n }\r\n\r\n return true\r\n }\r\n\r\n private async getCouponCategoriesId(coupon: Coupon) {\r\n let couponCategories: { id: string, firestoreId: string }[] = []\r\n\r\n for (let index = 0; index < coupon.productsCategories.length; index++) {\r\n let c: Category & { firestoreId?: string } = await this.categoryRepository.get({ id: coupon.productsCategories[index] }) \r\n couponCategories.push({ id: c.id, firestoreId: c.firestoreId})\r\n }\r\n \r\n return couponCategories\r\n }\r\n\r\n private separateValidCoupons = (\r\n coupons: Coupon[],\r\n userEmail: string,\r\n ): { valids: Coupon[]; invalids: InvalidCouponError[] } =>\r\n coupons\r\n .map((coupon) => {\r\n try {\r\n if (!(coupon instanceof Coupon)) throw new InvalidCouponError('Cupom inválido.')\r\n if (this.isValidCoupon(coupon, userEmail)) return coupon\r\n } catch (error) {\r\n return error as InvalidCouponError\r\n }\r\n })\r\n .reduce(\r\n (current, coupon) => ({\r\n ...current,\r\n ...(coupon instanceof Coupon\r\n ? { valids: [...current.valids, coupon] }\r\n : { invalids: [...current.invalids, coupon] }),\r\n }),\r\n {\r\n valids: [] as Coupon[],\r\n invalids: [] as InvalidCouponError[],\r\n },\r\n )\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n Checkout,\r\n CheckoutRepository,\r\n CheckoutTypes,\r\n Coupon,\r\n isNil,\r\n NotFoundError,\r\n OrderRepository,\r\n pick,\r\n Shops,\r\n User,\r\n UserRepository\r\n} from '@infrab4a/connect'\r\nimport cookie from 'js-cookie'\r\nimport { from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { CouponService } from './coupon.service'\r\nimport { RequiredCheckoutData } from './types'\r\n\r\n@Injectable()\r\nexport class CheckoutService {\r\n constructor(\r\n private readonly couponService: CouponService,\r\n @Inject('CheckoutRepository') private readonly checkoutRepository: CheckoutRepository,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderRepository,\r\n @Inject('UserRepository') private readonly userRepository: UserRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n ) {}\r\n\r\n getCheckout(checkoutData?: RequiredCheckoutData): Observable<Checkout> {\r\n const checkoutId = cookie.get('checkoutId')\r\n\r\n if (!isNil(checkoutId)) return from(this.checkoutRepository.get({ id: checkoutId }))\r\n\r\n return from(this.createCheckout(checkoutData))\r\n }\r\n\r\n getUserByCheckout(checkoutId: string): Observable<User> {\r\n return from(this.checkoutRepository.get({ id: checkoutId })).pipe(\r\n concatMap((checkout) =>\r\n checkout?.user?.id ? of(checkout.user) : from(this.userRepository.get({ id: checkout.user.id })),\r\n ),\r\n concatMap((user) => of(user) || throwError(() => new NotFoundError('User is not found'))),\r\n )\r\n }\r\n\r\n updateCheckoutLineItems(checkout: Partial<Checkout>): Observable<Checkout> {\r\n return from(this.checkoutRepository.update(Checkout.toInstance({ id: checkout.id, lineItems: checkout.lineItems })))\r\n }\r\n\r\n updateCheckoutUser(checkout: Partial<Checkout>): Observable<Checkout> {\r\n return from(this.checkoutRepository.update(Checkout.toInstance({ id: checkout.id, user: checkout.user })))\r\n }\r\n\r\n clearCheckoutFromSession(): Observable<void> {\r\n cookie.remove('checkoutId')\r\n\r\n return of()\r\n }\r\n\r\n calcDiscount(coupon: Coupon) {\r\n return this.getCheckout().pipe(\r\n concatMap(async (checkout) => await this.couponService.calcDiscountShopping(coupon, checkout)),\r\n )\r\n }\r\n\r\n checkCoupon(nickname: string, checkoutType: CheckoutTypes): Observable<Coupon> {\r\n return this.getCheckout().pipe(\r\n concatMap((checkout) =>\r\n this.couponService\r\n .checkCoupon(\r\n nickname,\r\n checkout.user?.email,\r\n CheckoutTypes.ECOMMERCE,\r\n checkout.user.subscriptionPlan,\r\n checkout,\r\n false\r\n )\r\n .pipe(),\r\n ),\r\n )\r\n }\r\n\r\n private async createCheckout(checkoutData?: RequiredCheckoutData): Promise<Checkout> {\r\n const checkout = await this.checkoutRepository.create({\r\n createdAt: new Date(),\r\n ...Checkout.toInstance(pick(checkoutData, ['user', 'shop'])).toPlain(),\r\n shop: checkoutData?.shop || this.defaultShop,\r\n })\r\n\r\n cookie.set('checkoutId', checkout.id)\r\n\r\n return checkout\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport { Checkout, isNil, LineItem, ProductRepository, Shops, User } from '@infrab4a/connect'\r\nimport { from, iif, Observable, of, Subject } from 'rxjs'\r\nimport { catchError, concatMap, map, mergeMap, tap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { AuthService } from './auth.service'\r\nimport { CheckoutService } from './checkout.service'\r\nimport { RequiredCheckoutData } from './types'\r\n\r\nexport type Cart = {\r\n [id: string]: LineItem\r\n}\r\n\r\n@Injectable()\r\nexport class CartService {\r\n private cartSubject: Subject<Cart> = new Subject()\r\n\r\n constructor(\r\n private readonly authService: AuthService,\r\n private readonly checkoutService: CheckoutService,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n @Inject('ProductRepository') private readonly productRepository: ProductRepository,\r\n ) {}\r\n\r\n addItem(item: LineItem, quantity: number = 1): Observable<Cart> {\r\n return from(this.checkoutService.getCheckout()).pipe(\r\n concatMap(async (checkout) => await this.buildLineItem({ checkout, item, quantity: quantity || 1 })),\r\n mergeMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, checkout as Checkout)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n decreaseItem(item: LineItem): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n const checkoutItem = checkout.lineItems?.find((lineItem) => lineItem.sku === item.sku)\r\n\r\n if (!isNil(checkoutItem)) checkoutItem.quantity -= checkoutItem.quantity > 1 ? 1 : 0\r\n\r\n return checkout\r\n }),\r\n concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)),\r\n map((checkout) => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n getCart(checkout?: RequiredCheckoutData): Observable<Cart> {\r\n this.buildCartFromCheckout(checkout).subscribe((cart) => this.cartSubject.next(cart))\r\n\r\n return this.cartSubject\r\n }\r\n\r\n /**\r\n * @deprecated The method should not be used\r\n */\r\n getVariantPriceDiscount(item: LineItem): Observable<number> {\r\n return this.authService.getUser().pipe(\r\n concatMap((user) =>\r\n iif(\r\n () => user.isSubscriber && !!item.price.subscriberPrice,\r\n of(item.price.subscriberPrice),\r\n of(item.price.price),\r\n ),\r\n ),\r\n catchError(() => of(item.price.price)),\r\n )\r\n }\r\n\r\n removeItem(item: LineItem): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n const index = checkout.lineItems.findIndex((lineItem) => lineItem.sku === item.sku)\r\n\r\n if (index >= 0) checkout.lineItems.splice(index, 1)\r\n\r\n return checkout\r\n }),\r\n concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)),\r\n map((checkout) => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n updateUserCart(user: User): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n concatMap((checkout) =>\r\n this.checkoutService.updateCheckoutUser(Checkout.toInstance({ ...checkout.toPlain(), user })),\r\n ),\r\n concatMap(async (checkout) => this.checkoutService.updateCheckoutLineItems(\r\n Checkout.toInstance({\r\n ...checkout.toPlain(),\r\n lineItems: checkout.lineItems?.length ? await Promise.all(\r\n checkout.lineItems?.map(async (item) => (await this.buildLineItem({ checkout, item })).lineItem)\r\n ) : [],\r\n }),\r\n ).toPromise()\r\n ),\r\n map(checkout => this.generateCartObject(checkout.lineItems)),\r\n tap((cart) => this.cartSubject.next(cart))\r\n )\r\n }\r\n\r\n clearCart(): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => {\r\n this.checkoutService.clearCheckoutFromSession()\r\n return checkout\r\n }),\r\n concatMap((oldCheckout) => this.buildCartFromCheckout(oldCheckout)),\r\n tap((cart) => this.cartSubject.next(cart)),\r\n )\r\n }\r\n\r\n private buildCartFromCheckout(checkoutData?: RequiredCheckoutData): Observable<Cart> {\r\n return this.checkoutService.getCheckout(checkoutData).pipe(\r\n map((checkout) => checkout.lineItems),\r\n concatMap((lineItems) => of(this.generateCartObject(lineItems))),\r\n )\r\n }\r\n\r\n private updateLineItemInCart = (lineItem: LineItem, quantity: number, checkout?: Checkout): Observable<Cart> =>\r\n (isNil(checkout) ? this.checkoutService.getCheckout() : of(checkout)).pipe(\r\n concatMap((checkoutLoaded) => {\r\n const items: LineItem[] = []\r\n const index = checkoutLoaded.lineItems?.map((checkoutItem) => checkoutItem.sku).indexOf(lineItem.sku)\r\n\r\n if (index > -1) {\r\n checkoutLoaded.lineItems[index].quantity += quantity\r\n checkoutLoaded.lineItems[index].pricePaid = lineItem.pricePaid\r\n } else\r\n checkoutLoaded.lineItems = items.concat(\r\n checkoutLoaded.lineItems ? checkoutLoaded.lineItems.concat([lineItem]) : [lineItem],\r\n )\r\n\r\n return this.checkoutService\r\n .updateCheckoutLineItems(checkoutLoaded)\r\n .pipe(map((updatedCheckout) => this.generateCartObject(updatedCheckout.lineItems)))\r\n }),\r\n )\r\n\r\n private generateCartObject = (items: LineItem[]): Cart => {\r\n const cart: Cart = {}\r\n\r\n items?.forEach(\r\n (item) =>\r\n (cart[item.sku] = LineItem.toInstance({\r\n ...(cart[item.sku] || item),\r\n quantity: (cart[item.sku]?.quantity || 0) + (item.quantity ? item.quantity : 1),\r\n })),\r\n )\r\n\r\n return cart\r\n }\r\n\r\n private buildLineItem = async ({\r\n checkout,\r\n item,\r\n quantity,\r\n }: {\r\n checkout: RequiredCheckoutData\r\n item: LineItem\r\n quantity?: number\r\n }): Promise<{checkout: Partial<Checkout>, lineItem: LineItem}> => {\r\n \r\n const product = await this.productRepository.get({ id: item.id })\r\n\r\n item.quantity = item?.quantity || checkout?.lineItems?.find((lineItem) => lineItem.sku === item.sku)?.quantity || 0\r\n\r\n if (this.checkMaxStock(item, quantity || 0))\r\n throw new Error('Desculpe! Temos apenas ' + item.stock?.quantity + ' em estoque.')\r\n\r\n const image = item.image || item.images?.shift()\r\n const { id, name, EAN, brand, slug, stock, price, weight, categories, sku, type } = item\r\n const isGift = item.isGift || null\r\n const pricePaid = this.getProductPrice({\r\n product: item,\r\n shop: checkout.shop || this.defaultShop,\r\n isSubscriber: checkout.user?.isSubscriber,\r\n })\r\n\r\n return {\r\n checkout,\r\n lineItem: LineItem.toInstance({\r\n id,\r\n name: name ?? product.name,\r\n EAN: EAN ?? product.EAN,\r\n brand: product.brand,\r\n slug: slug ?? product.slug,\r\n sku: sku ?? product.sku,\r\n stock,\r\n price,\r\n image,\r\n weight: weight ?? product.weight,\r\n quantity: (item.quantity || 0) + (quantity || 0),\r\n pricePaid,\r\n categories: product.categories ?? [],\r\n isGift: isGift ?? null,\r\n costPrice: product.costPrice ?? 0,\r\n type,\r\n }),\r\n }\r\n }\r\n\r\n private getProductPrice = ({\r\n product,\r\n isSubscriber,\r\n }: {\r\n product: LineItem\r\n shop: Shops\r\n isSubscriber: boolean\r\n }): number => {\r\n const info = product.price\r\n\r\n if (product.isGift) return 0\r\n\r\n return isSubscriber && info.subscriberPrice > 0 ? info.subscriberPrice : info.price\r\n }\r\n\r\n private checkMaxStock = (item: LineItem, quantity: number) => {\r\n const maxStock = item.stock?.quantity || 0\r\n const currentItemAmount = item.quantity || 0\r\n\r\n return currentItemAmount + quantity > maxStock\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n CheckoutSubscription,\r\n CheckoutSubscriptionRepository,\r\n CheckoutTypes,\r\n Coupon,\r\n isNil,\r\n pick,\r\n SubscriptionRepository\r\n} from '@infrab4a/connect'\r\nimport cookie from 'js-cookie'\r\nimport { from, Observable, of } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\nimport { RequiredCheckoutSubscriptionData } from './types'\r\n\r\nimport { CouponService } from './coupon.service'\r\n\r\n@Injectable()\r\nexport class CheckoutSubscriptionService {\r\n constructor(\r\n @Inject('CheckoutSubscriptionRepository')\r\n private readonly checkoutSubscriptionRepository: CheckoutSubscriptionRepository,\r\n @Inject('SubscriptionRepository') private readonly subscriptionRepository: SubscriptionRepository,\r\n private readonly couponService: CouponService,\r\n ) { }\r\n\r\n getCheckoutSubscription(checkoutData?: RequiredCheckoutSubscriptionData): Observable<CheckoutSubscription> {\r\n const checkoutId = cookie.get('checkoutSubscriptionId')\r\n\r\n if (!isNil(checkoutId)) return from(this.checkoutSubscriptionRepository.get({ id: checkoutId }))\r\n\r\n return from(this.createCheckoutSubscription(checkoutData))\r\n }\r\n\r\n private async createCheckoutSubscription(\r\n checkoutData?: RequiredCheckoutSubscriptionData,\r\n ): Promise<CheckoutSubscription> {\r\n const checkout = await this.checkoutSubscriptionRepository.create({\r\n createdAt: new Date(),\r\n ...CheckoutSubscription.toInstance(pick(checkoutData, ['user', 'shop'])).toPlain(),\r\n })\r\n\r\n cookie.set('checkoutSubscriptionId', checkout.id)\r\n\r\n return checkout\r\n }\r\n\r\n clearCheckoutSubscriptionFromSession(): Observable<void> {\r\n cookie.remove('checkoutSubscriptionId')\r\n\r\n return of()\r\n }\r\n\r\n checkCoupon(nickname: string, userEmail: string): Observable<Coupon> {\r\n return this.getCheckoutSubscription().pipe(\r\n concatMap((checkout) =>\r\n this.couponService.checkCoupon(nickname, userEmail, CheckoutTypes.SUBSCRIPTION, checkout.subscriptionPlan.name, null, true).pipe()\r\n ),\r\n )\r\n }\r\n\r\n calcDiscountSubscription(coupon: Coupon) {\r\n return this.getCheckoutSubscription().pipe(\r\n concatMap((checkout) =>\r\n this.couponService.calcDiscountSubscription(coupon, checkout).pipe(),\r\n ),\r\n )\r\n }\r\n\r\n}\r\n","import { Inject, Injectable } from '@angular/core'\r\nimport {\r\n add,\r\n Banner,\r\n Category,\r\n CategoryRepository,\r\n Home,\r\n HomeCategoryGroup,\r\n HomeData,\r\n HomeRepository,\r\n pick,\r\n Product,\r\n ProductRepository,\r\n RequiredArgumentError,\r\n Shops,\r\n Where,\r\n} from '@infrab4a/connect'\r\nimport { forkJoin, from, Observable, of, throwError } from 'rxjs'\r\nimport { concatMap, map, tap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\ntype HomeConfigurationId = 'glamshop' | 'mens_market'\r\ntype BannerType = 'brand' | 'buyToWin' | 'block' | 'blog'\r\n\r\n@Injectable()\r\nexport class HomeShopService {\r\n private homeConfiguration: Home\r\n\r\n private get homeId(): HomeConfigurationId {\r\n if (this.defaultShop === Shops.GLAMSHOP) return 'glamshop'\r\n if (this.defaultShop === Shops.MENSMARKET) return 'mens_market'\r\n\r\n return null\r\n }\r\n\r\n constructor(\r\n @Inject('CategoryRepository') private readonly categoryRepository: CategoryRepository,\r\n @Inject('HomeRepository') private readonly homeRepository: HomeRepository,\r\n @Inject('ProductRepository') private readonly productRepository: ProductRepository,\r\n @Inject(DEFAULT_SHOP) private readonly defaultShop: Shops,\r\n ) {}\r\n\r\n getHomeData(): Observable<Home> {\r\n return this.getHomeConfiguration().pipe(\r\n map((home) => (home?.data?.expiresAt > new Date() ? home : null)),\r\n concatMap((home) =>\r\n home\r\n ? of(home)\r\n : forkJoin([this.getDiscoverProducts(), this.getFeaturedProducts(), this.getVerticalProducts()]).pipe(\r\n map(([discoverProducts, featuredProducts, verticalProducts]) => ({\r\n discoverProducts,\r\n featuredProducts,\r\n verticalProducts,\r\n })),\r\n concatMap((data) => this.saveHomeData(data)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n getBanners(type: BannerType): Observable<Banner[]> {\r\n return this.getHomeConfiguration().pipe(\r\n map((home) => {\r\n if (type === 'brand') return home.brandsCarousel\r\n if (type === 'buyToWin') return [home.buyToWinBanner]\r\n if (type === 'block') return home.blockBanners\r\n if (type === 'blog') return [home.blogBanner]\r\n }),\r\n )\r\n }\r\n\r\n getMinValueForFreeShipping(): Observable<number> {\r\n return this.getHomeConfiguration().pipe(map((home) => home.minValueForFreeShipping))\r\n }\r\n\r\n private getDiscoverProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n from(this.categoryRepository.getCategoriesForHome(home.discoverCategories)).pipe(\r\n map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getFeaturedProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n from(this.categoryRepository.getCategoriesForHome(home.featuredCategories)).pipe(\r\n map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getVerticalProducts(): Observable<{ category: Category; products: Product[] }[]> {\r\n return this.getHomeConfiguration().pipe(\r\n concatMap((home) =>\r\n forkJoin(\r\n home.verticalCarousels.filter(Boolean).map((id) =>\r\n from(this.categoryRepository.get({ id })).pipe(\r\n concatMap((category) =>\r\n from(\r\n this.productRepository.find({\r\n filters: { categories: { operator: Where.IN, value: [category.id] } },\r\n limits: { limit: 12 },\r\n }),\r\n ).pipe(map((products) => ({ category, products }))),\r\n ),\r\n map(({ category, products }) => ({ category, products: products.data })),\r\n map(this.buildCategoryGroupWithRequiredData),\r\n ),\r\n ),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private getHomeConfiguration(): Observable<Home> {\r\n return of(this.homeConfiguration).pipe(\r\n concatMap((home) =>\r\n home\r\n ? of(home)\r\n : !this.homeId\r\n ? throwError(new RequiredArgumentError(['homeId']))\r\n : from(this.homeRepository.get({ id: this.homeId })).pipe(\r\n tap((homeLoaded) => (this.homeConfiguration = homeLoaded)),\r\n ),\r\n ),\r\n )\r\n }\r\n\r\n private saveHomeData(homeData: HomeData): Observable<Home> {\r\n const data = {\r\n createdAt: new Date(),\r\n expiresAt: add(new Date(), { hours: 1 }),\r\n data: homeData,\r\n }\r\n\r\n return from(\r\n this.homeRepository.update({\r\n id: this.homeId,\r\n data,\r\n }),\r\n ).pipe(\r\n tap(() => (this.homeConfiguration.data = data)),\r\n map(() => this.homeConfiguration),\r\n )\r\n }\r\n\r\n private buildCategoryGroupWithRequiredData = (group: HomeCategoryGroup): HomeCategoryGroup => ({\r\n category: Category.toInstance(pick(group?.category?.toPlain() || {}, ['id', 'name', 'slug', 'conditions'])),\r\n products:\r\n group?.products?.map((product) =>\r\n Product.toInstance(\r\n pick(product?.toPlain() || {}, [\r\n 'id',\r\n 'price',\r\n 'reviews',\r\n 'hasVariants',\r\n 'slug',\r\n 'sku',\r\n 'stock',\r\n 'costPrice',\r\n 'images',\r\n 'miniatures',\r\n 'name',\r\n 'weight',\r\n 'rate',\r\n 'type',\r\n ]),\r\n ),\r\n ) || [],\r\n })\r\n}\r\n","import { Injectable, Inject } from '@angular/core'\r\nimport { AngularFirestore, QueryDocumentSnapshot } from '@angular/fire/firestore'\r\nimport { Order, OrderFirestoreRepository } from '@infrab4a/connect'\r\nimport { from, Observable, Subject } from 'rxjs'\r\nimport { map, mergeMap, tap } from 'rxjs/operators'\r\n\r\n@Injectable()\r\nexport class OrderService {\r\n orderSubject = new Subject<Order>()\r\n\r\n constructor(\r\n private readonly angularFirestore: AngularFirestore,\r\n @Inject('OrderRepository') private readonly orderRepository: OrderFirestoreRepository,\r\n ) {}\r\n\r\n getOrder(id: string): Subject<Order> {\r\n this.angularFirestore\r\n .doc<QueryDocumentSnapshot<Order>>(`${this.orderRepository.collectionName}/${id}`)\r\n .valueChanges()\r\n .pipe(map((doc) => Order.toInstance(doc)))\r\n .subscribe((doc) => this.orderSubject.next(doc))\r\n\r\n return this.orderSubject\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http'\r\nimport { Inject, Injectable } from '@angular/core'\r\nimport { Home, Shops } from '@infrab4a/connect'\r\nimport { combineLatest, Observable } from 'rxjs'\r\nimport { map } from 'rxjs/operators'\r\n\r\nimport { BACKEND_URL } from '../consts'\r\nimport { HomeShopService } from './home-shop.service'\r\nimport { ShippingMethodResponse } from './types/shipping-methods.type'\r\n\r\n@Injectable()\r\nexport class ShippingService {\r\n constructor(\r\n private http: HttpClient,\r\n @Inject(BACKEND_URL) private apiUrl: string,\r\n private homeService: HomeShopService,\r\n ) {}\r\n\r\n public getShippingMethods(\r\n shop: string,\r\n zip: string,\r\n weightGrams: number,\r\n totalPrice: number,\r\n personId: string,\r\n subscriptionPlan?: string,\r\n ): Observable<Array<ShippingMethodResponse & { ShippingCompanyName?: string }>> {\r\n return combineLatest([\r\n this.homeService.getHomeData(),\r\n this.http.get(\r\n `${this.apiUrl}open/checkshippingcompany?personId=${personId}&postalCode=${zip}&weightGrams=${weightGrams}`,\r\n ),\r\n ]).pipe(\r\n map(([datas, shippingMethodsResponse]: [Home & { sameDayNotAvaliable }, any]) => {\r\n let shippingMethods = shippingMethodsResponse.result as (ShippingMethodResponse & {\r\n ShippingCompanyName?: string\r\n })[]\r\n\r\n if (!shippingMethods.length) return []\r\n\r\n shippingMethods = shippingMethods.map((s) => {\r\n if (s.ShippingCompanyName == 'Same Day EG') s.ShippingCompanyName = 'Same Day'\r\n else return s\r\n })\r\n\r\n const datasSameDayNotAvaliable = datas.sameDayNotAvaliable\r\n\r\n if (this.isHolidays(datasSameDayNotAvaliable)) {\r\n shippingMethods = shippingMethods.filter((method) => method.ShippingCompanyName !== 'Same Day')\r\n }\r\n\r\n if (totalPrice >= 200) {\r\n shippingMethods = shippingMethods.map((s) => {\r\n if (s.serviceName !== 'Same Day') return { ...s, totalPrice: 0 }\r\n else return s\r\n })\r\n }\r\n\r\n if (shop == Shops.GLAMSHOP) return shippingMethods\r\n\r\n if (this.isFreeShippingBySubscription(shop, subscriptionPlan)) {\r\n shippingMethods = shippingMethods.map((s) => {\r\n if (s.serviceName == 'Same Day') return { ...s, totalPrice: s.totalPrice / 2 }\r\n else return { ...s, totalPrice: 0 }\r\n })\r\n }\r\n\r\n if (this.isHalfShippingBySubscription(shop, subscriptionPlan)) {\r\n shippingMethods = shippingMethods.map((s) => {\r\n return { ...s, totalPrice: s.totalPrice / 2 }\r\n })\r\n }\r\n\r\n return shippingMethods\r\n }),\r\n )\r\n }\r\n\r\n private isFreeShippingBySubscription(shop: string, subscriptionPlan: string): boolean {\r\n if (!subscriptionPlan) return false\r\n\r\n if (shop == Shops.MENSMARKET && subscriptionPlan == 'SELECT') {\r\n return true\r\n }\r\n\r\n return false\r\n }\r\n\r\n private isHalfShippingBySubscription(shop: string, subscriptionPlan: string) {\r\n if (!subscriptionPlan) return false\r\n\r\n if (shop == Shops.MENSMARKET && subscriptionPlan == 'PRIME') {\r\n return true\r\n }\r\n\r\n return false\r\n }\r\n\r\n private isHolidays(datas: any): boolean {\r\n const today = new Date()\r\n\r\n for (const key in datas) {\r\n let start = new Date(`${today.getFullYear()}-${datas[key].beginDate}`)\r\n let end = new Date(`${today.getFullYear()}-${datas[key].endDate}`)\r\n\r\n if (start > end) end = new Date(`${today.getFullYear() + 1}-${datas[key].endDate}`)\r\n\r\n if (today >= start && today <= end) return true\r\n }\r\n\r\n return false\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule,\r\n FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS,\r\n FirebaseAppConfig,\r\n FirebaseOptions,\r\n} from '@angular/fire'\r\nimport { AngularFireAuth } from '@angular/fire/auth'\r\nimport {\r\n Authentication,\r\n AuthenticationFirebaseAuthService,\r\n AuthenticationService,\r\n Register,\r\n RegisterService,\r\n RegisterFirebaseAuthService,\r\n SignOut,\r\n UserRepository,\r\n RecoveryPassword,\r\n} from '@infrab4a/connect'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule],\r\n providers: [\r\n {\r\n provide: 'Authentication',\r\n useFactory: (authenticationService: AuthenticationService, userRepository: UserRepository): Authentication => {\r\n return new Authentication(authenticationService, userRepository)\r\n },\r\n deps: ['AuthenticationService', 'UserRepository'],\r\n },\r\n {\r\n provide: 'AuthenticationService',\r\n useFactory: (angularFireAuth: AngularFireAuth): AuthenticationService => {\r\n return new AuthenticationFirebaseAuthService(angularFireAuth as any)\r\n },\r\n deps: [AngularFireAuth],\r\n },\r\n {\r\n provide: 'Register',\r\n useFactory: (registerService: RegisterService, userRepository: UserRepository): Register => {\r\n return new Register(registerService, userRepository)\r\n },\r\n deps: ['RegisterService', 'UserRepository'],\r\n },\r\n {\r\n provide: 'RegisterService',\r\n useFactory: (angularFireAuth: AngularFireAuth): RegisterService => {\r\n return new RegisterFirebaseAuthService(angularFireAuth as any)\r\n },\r\n deps: [AngularFireAuth],\r\n },\r\n {\r\n provide: 'SignOut',\r\n useFactory: (authenticationService: AuthenticationService): SignOut => {\r\n return new SignOut(authenticationService)\r\n },\r\n deps: ['AuthenticationService'],\r\n },\r\n {\r\n provide: 'RecoveryPassword',\r\n useFactory: (authenticationService: AuthenticationService): RecoveryPassword => {\r\n return new RecoveryPassword(authenticationService)\r\n },\r\n deps: ['AuthenticationService'],\r\n },\r\n ],\r\n})\r\nexport class AngularFirebaseAuthModule {\r\n static initializeApp(\r\n options: FirebaseOptions,\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularFirebaseAuthModule,\r\n providers: [\r\n { provide: FIREBASE_OPTIONS, useValue: options },\r\n { provide: FIREBASE_APP_NAME, useValue: nameOrConfig },\r\n ],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport { AxiosElasticSearchConfig, AxiosAdapter, ProductsIndex } from '@infrab4a/connect'\r\n\r\nimport { ES_CONFIG } from './consts/es-config.const'\r\n\r\n@NgModule({\r\n providers: [\r\n {\r\n provide: ProductsIndex,\r\n useFactory: (configuration: AxiosElasticSearchConfig): ProductsIndex => {\r\n return new ProductsIndex(new AxiosAdapter(configuration))\r\n },\r\n deps: [ES_CONFIG],\r\n },\r\n ],\r\n})\r\nexport class AngularElasticSeachModule {\r\n static initializeApp(options: AxiosElasticSearchConfig): ModuleWithProviders<AngularElasticSeachModule> {\r\n return {\r\n ngModule: AngularElasticSeachModule,\r\n providers: [{ provide: ES_CONFIG, useValue: options }],\r\n }\r\n }\r\n}\r\n","import { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule,\r\n FirebaseAppConfig,\r\n FirebaseOptions,\r\n FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS\r\n} from '@angular/fire'\r\nimport { AngularFirestore } from '@angular/fire/firestore'\r\nimport {\r\n AxiosElasticSearchConfig,\r\n BeautyProfileRepository,\r\n Buy2WinFirestoreRepository,\r\n Buy2WinRepository,\r\n CampaignDashboardFirestoreRepository,\r\n CampaignDashboardRepository,\r\n CampaignHashtagFirestoreRepository,\r\n CampaignHashtagRepository,\r\n CategoryFirestoreRepository,\r\n CategoryRepository,\r\n CheckoutFirestoreRepository,\r\n CheckoutRepository,\r\n CheckoutSubscriptionFirestoreRepository,\r\n CheckoutSubscriptionRepository,\r\n CouponFirestoreRepository,\r\n CouponRepository,\r\n EditionRepository,\r\n HomeFirestoreRepository,\r\n HomeRepository,\r\n LeadFirestoreRepository,\r\n LeadRepository,\r\n LegacyOrderFirestoreRepository,\r\n LegacyOrderRepository,\r\n OrderFirestoreRepository,\r\n OrderRepository,\r\n PaymentFirestoreRepository,\r\n PaymentRepository,\r\n ProductFirestoreRepository,\r\n ProductRepository,\r\n ProductVariantFirestoreRepository,\r\n ShopMenuFirestoreRepository,\r\n ShopMenuRepository,\r\n SubscriptionEditionFirestoreRepository,\r\n SubscriptionFirestoreRepository,\r\n SubscriptionPaymentFirestoreRepository,\r\n SubscriptionPaymentRepository,\r\n SubscriptionPlanFirestoreRepository,\r\n SubscriptionPlanRepository,\r\n SubscriptionProductFirestoreRepository,\r\n SubscriptionProductRepository,\r\n SubscriptionRepository,\r\n UserAddressFirestoreRepository,\r\n UserAddressRepository,\r\n UserBeautyProfileFirestoreRepository,\r\n UserFirestoreRepository,\r\n UserPaymentMethodFirestoreRepository,\r\n UserPaymentMethodRepository,\r\n UserRepository,\r\n VariantRepository\r\n} from '@infrab4a/connect'\r\n\r\nimport { AngularElasticSeachModule } from './angular-elastic-search.module'\r\nimport { ES_CONFIG } from './consts/es-config.const'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularElasticSeachModule],\r\n providers: [\r\n {\r\n provide: 'BeautyProfileRepository',\r\n useFactory: (firestore: AngularFirestore, userRepository: UserFirestoreRepository): BeautyProfileRepository => {\r\n return new UserBeautyProfileFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: 'Buy2WinRepository',\r\n useFactory: (firestore: AngularFirestore): Buy2WinRepository => {\r\n return new Buy2WinFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: CategoryFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore): CategoryRepository => {\r\n return new CategoryFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CheckoutRepository',\r\n useFactory: (firestore: AngularFirestore): CheckoutRepository => {\r\n return new CheckoutFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CheckoutSubscriptionRepository',\r\n useFactory: (firestore: AngularFirestore): CheckoutSubscriptionRepository => {\r\n return new CheckoutSubscriptionFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CouponRepository',\r\n useFactory: (firestore: AngularFirestore): CouponRepository => {\r\n return new CouponFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CampaignHashtagRepository',\r\n useFactory: (firestore: AngularFirestore): CampaignHashtagRepository => {\r\n return new CampaignHashtagFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'CampaignDashboardRepository',\r\n useFactory: (firestore: AngularFirestore): CampaignDashboardRepository => {\r\n return new CampaignDashboardFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'EditionRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n subscriptionRepository: SubscriptionFirestoreRepository,\r\n ): EditionRepository => {\r\n return new SubscriptionEditionFirestoreRepository(firestore.firestore, subscriptionRepository)\r\n },\r\n deps: [AngularFirestore, 'SubscriptionRepository'],\r\n },\r\n {\r\n provide: 'HomeRepository',\r\n useFactory: (firestore: AngularFirestore): HomeRepository => {\r\n return new HomeFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'LeadRepository',\r\n useFactory: (firestore: AngularFirestore): LeadRepository => {\r\n return new LeadFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'LegacyOrderRepository',\r\n useFactory: (firestore: AngularFirestore): LegacyOrderRepository => {\r\n return new LegacyOrderFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'ShopMenuRepository',\r\n useFactory: (firestore: AngularFirestore): ShopMenuRepository => {\r\n return new ShopMenuFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'OrderRepository',\r\n useFactory: (firestore: AngularFirestore): OrderRepository => {\r\n return new OrderFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'PaymentRepository',\r\n useFactory: (firestore: AngularFirestore): PaymentRepository => {\r\n return new PaymentFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: ProductFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore): ProductRepository => {\r\n return new ProductFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionPaymentRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n subscriptionRepository: SubscriptionFirestoreRepository,\r\n ): SubscriptionPaymentRepository => {\r\n return new SubscriptionPaymentFirestoreRepository(firestore.firestore, subscriptionRepository)\r\n },\r\n deps: [AngularFirestore, 'SubscriptionRepository'],\r\n },\r\n {\r\n provide: 'SubscriptionPlanRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionPlanRepository => {\r\n return new SubscriptionPlanFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionProductRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionProductRepository => {\r\n return new SubscriptionProductFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'SubscriptionRepository',\r\n useFactory: (firestore: AngularFirestore): SubscriptionRepository => {\r\n return new SubscriptionFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'UserRepository',\r\n useFactory: (firestore: AngularFirestore): UserRepository => {\r\n return new UserFirestoreRepository(firestore.firestore)\r\n },\r\n deps: [AngularFirestore],\r\n },\r\n {\r\n provide: 'UserAddressRepository',\r\n useFactory: (firestore: AngularFirestore, userRepository: UserFirestoreRepository): UserAddressRepository => {\r\n return new UserAddressFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: 'UserPaymentMethodRepository',\r\n useFactory: (\r\n firestore: AngularFirestore,\r\n userRepository: UserFirestoreRepository,\r\n ): UserPaymentMethodRepository => {\r\n return new UserPaymentMethodFirestoreRepository(firestore.firestore, userRepository)\r\n },\r\n deps: [AngularFirestore, 'UserRepository'],\r\n },\r\n {\r\n provide: ProductVariantFirestoreRepository,\r\n useFactory: (firestore: AngularFirestore, productRepository: ProductFirestoreRepository): VariantRepository => {\r\n return new ProductVariantFirestoreRepository(firestore.firestore, productRepository)\r\n },\r\n deps: [AngularFirestore, ProductFirestoreRepository],\r\n },\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: (firestore: AngularFirestore) => () =>\r\n firestore.firestore.settings({ ignoreUndefinedProperties: true }),\r\n deps: [AngularFirestore],\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AngularFirestoreModule {\r\n static initializeApp(\r\n options: {\r\n firebase: FirebaseOptions\r\n elasticSearch: AxiosElasticSearchConfig\r\n },\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularFirestoreModule,\r\n providers: [\r\n { provide: FIREBASE_OPTIONS, useValue: options.firebase },\r\n { provide: FIREBASE_APP_NAME, useValue: nameOrConfig },\r\n { provide: ES_CONFIG, useValue: options.elasticSearch },\r\n ],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n CategoryFilterHasuraGraphQLRepository,\r\n CategoryFilterRepository,\r\n CategoryHasuraGraphQLRepository,\r\n CategoryRepository,\r\n FilterHasuraGraphQLRepository,\r\n FilterOptionHasuraGraphQLRepository,\r\n FilterOptionRepository,\r\n FilterRepository,\r\n HasuraGraphQLAuthOptions,\r\n ProductHasuraGraphQLRepository,\r\n ProductRepository,\r\n VariantHasuraGraphQLRepository,\r\n VariantRepository,\r\n} from '@infrab4a/connect'\r\n\r\nimport { HASURA_OPTIONS } from './consts'\r\n\r\nexport type HasuraGraphQLOptions = { endpoint: string; credentials: HasuraGraphQLAuthOptions }\r\n\r\n@NgModule({\r\n providers: [\r\n {\r\n provide: 'CategoryRepository',\r\n useExisting: CategoryHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: CategoryHasuraGraphQLRepository,\r\n useFactory: (\r\n options: HasuraGraphQLOptions,\r\n productRepository: ProductHasuraGraphQLRepository,\r\n categoryFilterRepository: CategoryFilterHasuraGraphQLRepository,\r\n ): CategoryRepository => {\r\n return new CategoryHasuraGraphQLRepository(\r\n options.endpoint,\r\n options.credentials,\r\n productRepository,\r\n categoryFilterRepository,\r\n )\r\n },\r\n deps: [HASURA_OPTIONS, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository],\r\n },\r\n {\r\n provide: 'ProductRepository',\r\n useExisting: ProductHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: ProductHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): ProductRepository => {\r\n return new ProductHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n {\r\n provide: 'VariantRepository',\r\n useExisting: VariantHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: VariantHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): VariantRepository => {\r\n return new VariantHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n\r\n {\r\n provide: 'CategoryFilterRepository',\r\n useExisting: CategoryFilterHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: CategoryFilterHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): CategoryFilterRepository => {\r\n return new CategoryFilterHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n\r\n {\r\n provide: 'FilterOptionRepository',\r\n useExisting: FilterOptionHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: FilterOptionHasuraGraphQLRepository,\r\n useFactory: (options: HasuraGraphQLOptions): FilterOptionRepository => {\r\n return new FilterOptionHasuraGraphQLRepository(options.endpoint, options.credentials)\r\n },\r\n deps: [HASURA_OPTIONS],\r\n },\r\n {\r\n provide: 'FilterRepository',\r\n useExisting: FilterHasuraGraphQLRepository,\r\n },\r\n {\r\n provide: FilterHasuraGraphQLRepository,\r\n useFactory: (\r\n options: HasuraGraphQLOptions,\r\n filterOptionRepository: FilterOptionHasuraGraphQLRepository,\r\n categoryFilterRepository: CategoryFilterHasuraGraphQLRepository,\r\n ): FilterRepository => {\r\n return new FilterHasuraGraphQLRepository(\r\n options.endpoint,\r\n options.credentials,\r\n filterOptionRepository,\r\n categoryFilterRepository,\r\n )\r\n },\r\n deps: [HASURA_OPTIONS, FilterOptionHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository],\r\n },\r\n ],\r\n})\r\nexport class AngularHasuraGraphQLModule {\r\n static initializeApp(options: {\r\n endpoint: string\r\n credentials: HasuraGraphQLAuthOptions\r\n }): ModuleWithProviders<AngularHasuraGraphQLModule> {\r\n return {\r\n ngModule: AngularHasuraGraphQLModule,\r\n providers: [{ provide: HASURA_OPTIONS, useValue: options }],\r\n }\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core'\r\nimport {\r\n AngularFireModule,\r\n FirebaseAppConfig,\r\n FirebaseOptions,\r\n FIREBASE_APP_NAME,\r\n FIREBASE_OPTIONS,\r\n} from '@angular/fire'\r\nimport { AxiosElasticSearchConfig, isNil, Shops } from '@infrab4a/connect'\r\n\r\nimport { AngularFirestoreModule } from './angular-firestore.module'\r\nimport { AngularHasuraGraphQLModule, HasuraGraphQLOptions } from './angular-hasura-graphql.module'\r\nimport { BACKEND_URL, DEFAULT_SHOP, ES_CONFIG, HASURA_OPTIONS } from './consts'\r\nimport {\r\n AuthService,\r\n CartService,\r\n CheckoutService,\r\n CheckoutSubscriptionService,\r\n CouponService,\r\n HomeShopService,\r\n OrderService,\r\n ShippingService,\r\n} from './services'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularFirestoreModule, AngularHasuraGraphQLModule],\r\n providers: [\r\n AuthService,\r\n CartService,\r\n CheckoutService,\r\n CheckoutSubscriptionService,\r\n CouponService,\r\n HomeShopService,\r\n OrderService,\r\n ShippingService,\r\n ],\r\n})\r\nexport class AngularConnectModule {\r\n static initializeApp(\r\n defaultShop: Shops,\r\n options: {\r\n firebase: FirebaseOptions\r\n elasticSearch: AxiosElasticSearchConfig\r\n hasura: HasuraGraphQLOptions\r\n backendUrl: string\r\n },\r\n nameOrConfig?: string | FirebaseAppConfig,\r\n ): ModuleWithProviders<AngularFireModule> {\r\n return {\r\n ngModule: AngularConnectModule,\r\n providers: [\r\n ...(isNil(defaultShop) ? [] : [{ provide: DEFAULT_SHOP, useValue: defaultShop }]),\r\n ...(isNil(options?.firebase) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options?.firebase }]),\r\n ...(isNil(options?.firebase) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),\r\n ...(isNil(options?.elasticSearch) ? [] : [{ provide: ES_CONFIG, useValue: options.elasticSearch }]),\r\n ...(isNil(options?.hasura) ? [] : [{ provide: HASURA_OPTIONS, useValue: options.hasura }]),\r\n ...(isNil(options?.backendUrl) ? [] : [{ provide: BACKEND_URL, useValue: options.backendUrl }]),\r\n ],\r\n }\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AuthService","i2.CheckoutService","i1.CouponService","i2.HomeShopService"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@infrab4a/connect-angular",
|
|
3
|
-
"version": "3.4.3-beta.
|
|
3
|
+
"version": "3.4.3-beta.1",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"registry": "https://registry.npmjs.org"
|
|
6
6
|
},
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"@angular/common": "^12.2.12",
|
|
13
13
|
"@angular/core": "^12.2.12",
|
|
14
14
|
"@angular/fire": "^6.1.5",
|
|
15
|
-
"@infrab4a/connect": "3.
|
|
15
|
+
"@infrab4a/connect": "^3.6.0",
|
|
16
16
|
"firebase": "^7.24.0",
|
|
17
17
|
"js-cookie": "^3.0.1",
|
|
18
18
|
"rxjs": "^6.6.7"
|