@infrab4a/connect-angular 0.7.1 → 0.7.3
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 +28 -24
- package/bundles/infrab4a-connect-angular.umd.js.map +1 -1
- package/esm2015/lib/angular-connect.module.js +5 -5
- package/esm2015/lib/angular-firebase-auth.module.js +5 -5
- package/esm2015/lib/angular-firestore.module.js +5 -5
- package/esm2015/lib/services/auth.service.js +7 -4
- package/esm2015/lib/services/cart.service.js +4 -4
- package/esm2015/lib/services/checkout.service.js +4 -4
- package/esm2015/lib/services/order.service.js +4 -4
- package/fesm2015/infrab4a-connect-angular.js +28 -25
- package/fesm2015/infrab4a-connect-angular.js.map +1 -1
- package/lib/services/auth.service.d.ts +2 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infrab4a-connect-angular.js","sources":["../../../projects/connect-angular/src/lib/services/auth.service.ts","../../../projects/connect-angular/src/lib/consts/default-shop.const.ts","../../../projects/connect-angular/src/lib/services/checkout.service.ts","../../../projects/connect-angular/src/lib/services/cart.service.ts","../../../projects/connect-angular/src/lib/services/order.service.ts","../../../projects/connect-angular/src/lib/angular-firebase-auth.module.ts","../../../projects/connect-angular/src/lib/angular-firestore.module.ts","../../../projects/connect-angular/src/lib/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 { from, Observable, throwError } from 'rxjs'\r\nimport { 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 public angularFireAuth: AngularFireAuth,\r\n @Inject('UserRepository') private readonly userRepository: UserRepository,\r\n ) {}\r\n\r\n getUser(): Observable<User> {\r\n return this.getFireUser().pipe(\r\n map((user) => user.uid || throwError(() => new Error('Usuário não logado'))),\r\n mergeMap((id) => this.userRepository.get({ id })),\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\r\n }\r\n}\r\n","export const DEFAULT_SHOP = 'DEFAULT_SHOP'\r\n","import { Injectable, Inject } from '@angular/core'\r\nimport {\r\n Checkout,\r\n CheckoutRepository,\r\n isNil,\r\n NotFoundError,\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, throwError, of } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { RequiredCheckoutData } from './types'\r\n\r\n@Injectable()\r\nexport class CheckoutService {\r\n constructor(\r\n @Inject('CheckoutRepository') private readonly checkoutRepository: CheckoutRepository,\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 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 { Injectable, Inject } from '@angular/core'\r\nimport {\r\n Checkout,\r\n Coupon,\r\n CouponSubtypes,\r\n CouponTypes,\r\n FinancialCoupon,\r\n isNil,\r\n LineItem,\r\n Shops,\r\n User,\r\n} from '@infrab4a/connect'\r\nimport { iif, Observable, of, Subject } from 'rxjs'\r\nimport { catchError, concatMap, map, 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 ) {}\r\n\r\n addItem(item: LineItem, quantity: number = 1): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => ({ checkout, lineItem: this.buildLineItem({ checkout, item, quantity: quantity || 1 }) })),\r\n concatMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, 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 getDiscount(coupon: Coupon & { id: string }): (subTotalPrice: number) => number {\r\n switch (coupon.type) {\r\n case CouponTypes.FINANCIAL:\r\n return this.getFinancialDiscount(coupon)\r\n case CouponTypes.PRODUCT:\r\n return (subTotalPrice: number) => subTotalPrice\r\n case CouponTypes.GIFTCARD:\r\n return this.getFinancialDiscount(coupon)\r\n case CouponTypes.VOUCHER:\r\n return (subTotalPrice: number) => subTotalPrice\r\n }\r\n }\r\n\r\n getVariantPriceDiscount(item: LineItem, shop: Shops): Observable<number> {\r\n return this.authService.getUser().pipe(\r\n concatMap((user) =>\r\n iif(\r\n () => user.isSubscriber && !!item.getInfoByShop(shop).subscriberPrice,\r\n of(item.getInfoByShop(shop).subscriberPrice),\r\n of(item.getInfoByShop(shop).price),\r\n ),\r\n ),\r\n catchError(() => of(item.getInfoByShop(shop).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((checkout) =>\r\n this.checkoutService.updateCheckoutLineItems(\r\n Checkout.toInstance({\r\n ...checkout.toPlain(),\r\n lineItems: checkout.lineItems.map((item) => this.buildLineItem({ checkout, item })),\r\n }),\r\n ),\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 = ({\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 }): LineItem => {\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, brand, slug, stock, price, weight, categories, sku } = 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 LineItem.toInstance({\r\n id,\r\n name,\r\n brand,\r\n slug,\r\n sku,\r\n stock,\r\n price,\r\n image,\r\n weight,\r\n quantity: (item.quantity || 0) + (quantity || 0),\r\n pricePaid,\r\n categories,\r\n isGift,\r\n })\r\n }\r\n\r\n private getProductPrice = ({\r\n product,\r\n shop,\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.getInfoByShop(shop)\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 private getFinancialDiscount(coupon: Coupon & { id: string }): (subTotalPrice: number) => number {\r\n return (subTotalPrice) => {\r\n if (FinancialCoupon.isFinancialCoupon(coupon))\r\n switch (coupon.subtype) {\r\n case CouponSubtypes.ABSOLUTE:\r\n return subTotalPrice - coupon.discount * 100\r\n case CouponSubtypes.PERCENTAGE:\r\n return subTotalPrice * (1 - coupon.discount / 100)\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 { 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 SignOut,\r\n UserRepository,\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: '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})\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 {\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 { AngularFirestore } from '@angular/fire/firestore'\r\nimport {\r\n BeautyProfileRepository,\r\n Buy2WinFirestoreRepository,\r\n Buy2WinRepository,\r\n CategoryRepository,\r\n CategoryFirestoreRepository,\r\n CheckoutRepository,\r\n CheckoutFirestoreRepository,\r\n CheckoutSubscriptionFirestoreRepository,\r\n CheckoutSubscriptionRepository,\r\n CouponRepository,\r\n CouponFirestoreRepository,\r\n EditionRepository,\r\n HomeFirestoreRepository,\r\n HomeRepository,\r\n LeadRepository,\r\n LeadFirestoreRepository,\r\n LegacyOrderRepository,\r\n LegacyOrderFirestoreRepository,\r\n ShopMenuFirestoreRepository,\r\n ShopMenuRepository,\r\n OrderRepository,\r\n OrderFirestoreRepository,\r\n PaymentRepository,\r\n PaymentFirestoreRepository,\r\n ProductRepository,\r\n ProductFirestoreRepository,\r\n SubscriptionEditionFirestoreRepository,\r\n SubscriptionFirestoreRepository,\r\n SubscriptionPaymentFirestoreRepository,\r\n SubscriptionPaymentRepository,\r\n SubscriptionPlanFirestoreRepository,\r\n SubscriptionPlanRepository,\r\n SubscriptionRepository,\r\n UserAddressRepository,\r\n UserAddressFirestoreRepository,\r\n UserBeautyProfileFirestoreRepository,\r\n UserFirestoreRepository,\r\n UserRepository,\r\n VariantRepository,\r\n ProductVariantFirestoreRepository,\r\n} from '@infrab4a/connect'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule],\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: 'CategoryRepository',\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: '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: 'ProductRepository',\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: '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: 'VariantRepository',\r\n useFactory: (firestore: AngularFirestore, productRepository: ProductFirestoreRepository): VariantRepository => {\r\n return new ProductVariantFirestoreRepository(firestore.firestore, productRepository)\r\n },\r\n deps: [AngularFirestore, 'ProductRepository'],\r\n },\r\n ],\r\n})\r\nexport class AngularFirestoreModule {\r\n static initializeApp(\r\n options: FirebaseOptions,\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 },\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 {\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 { isNil, Shops } from '@infrab4a/connect'\r\n\r\nimport { AngularFirestoreModule } from './angular-firestore.module'\r\nimport { AuthService, CartService, CheckoutService, OrderService } from './services'\r\nimport { DEFAULT_SHOP } from './consts'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularFirestoreModule],\r\n providers: [AuthService, CartService, CheckoutService, OrderService],\r\n})\r\nexport class AngularConnectModule {\r\n static initializeApp(\r\n defaultShop: Shops,\r\n options: FirebaseOptions,\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) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options }]),\r\n ...(isNil(options) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),\r\n ],\r\n }\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"infrab4a-connect-angular.js","sources":["../../../projects/connect-angular/src/lib/services/auth.service.ts","../../../projects/connect-angular/src/lib/consts/default-shop.const.ts","../../../projects/connect-angular/src/lib/services/checkout.service.ts","../../../projects/connect-angular/src/lib/services/cart.service.ts","../../../projects/connect-angular/src/lib/services/order.service.ts","../../../projects/connect-angular/src/lib/angular-firebase-auth.module.ts","../../../projects/connect-angular/src/lib/angular-firestore.module.ts","../../../projects/connect-angular/src/lib/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 { from, Observable, throwError } from 'rxjs'\r\nimport { 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> {\r\n return this.angularFireAuth.authState.pipe(mergeMap(() => this.getUser()))\r\n }\r\n\r\n getUser(): Observable<User> {\r\n return this.getFireUser().pipe(\r\n map((user) => user.uid || throwError(() => new Error('Usuário não logado'))),\r\n mergeMap((id) => this.userRepository.get({ id })),\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\r\n }\r\n}\r\n","export const DEFAULT_SHOP = 'DEFAULT_SHOP'\r\n","import { Injectable, Inject } from '@angular/core'\r\nimport {\r\n Checkout,\r\n CheckoutRepository,\r\n isNil,\r\n NotFoundError,\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, throwError, of } from 'rxjs'\r\nimport { concatMap } from 'rxjs/operators'\r\n\r\nimport { DEFAULT_SHOP } from '../consts'\r\n\r\nimport { RequiredCheckoutData } from './types'\r\n\r\n@Injectable()\r\nexport class CheckoutService {\r\n constructor(\r\n @Inject('CheckoutRepository') private readonly checkoutRepository: CheckoutRepository,\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 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 { Injectable, Inject } from '@angular/core'\r\nimport {\r\n Checkout,\r\n Coupon,\r\n CouponSubtypes,\r\n CouponTypes,\r\n FinancialCoupon,\r\n isNil,\r\n LineItem,\r\n Shops,\r\n User,\r\n} from '@infrab4a/connect'\r\nimport { iif, Observable, of, Subject } from 'rxjs'\r\nimport { catchError, concatMap, map, 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 ) {}\r\n\r\n addItem(item: LineItem, quantity: number = 1): Observable<Cart> {\r\n return this.checkoutService.getCheckout().pipe(\r\n map((checkout) => ({ checkout, lineItem: this.buildLineItem({ checkout, item, quantity: quantity || 1 }) })),\r\n concatMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, 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 getDiscount(coupon: Coupon & { id: string }): (subTotalPrice: number) => number {\r\n switch (coupon.type) {\r\n case CouponTypes.FINANCIAL:\r\n return this.getFinancialDiscount(coupon)\r\n case CouponTypes.PRODUCT:\r\n return (subTotalPrice: number) => subTotalPrice\r\n case CouponTypes.GIFTCARD:\r\n return this.getFinancialDiscount(coupon)\r\n case CouponTypes.VOUCHER:\r\n return (subTotalPrice: number) => subTotalPrice\r\n }\r\n }\r\n\r\n getVariantPriceDiscount(item: LineItem, shop: Shops): Observable<number> {\r\n return this.authService.getUser().pipe(\r\n concatMap((user) =>\r\n iif(\r\n () => user.isSubscriber && !!item.getInfoByShop(shop).subscriberPrice,\r\n of(item.getInfoByShop(shop).subscriberPrice),\r\n of(item.getInfoByShop(shop).price),\r\n ),\r\n ),\r\n catchError(() => of(item.getInfoByShop(shop).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((checkout) =>\r\n this.checkoutService.updateCheckoutLineItems(\r\n Checkout.toInstance({\r\n ...checkout.toPlain(),\r\n lineItems: checkout.lineItems.map((item) => this.buildLineItem({ checkout, item })),\r\n }),\r\n ),\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 = ({\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 }): LineItem => {\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, brand, slug, stock, price, weight, categories, sku } = 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 LineItem.toInstance({\r\n id,\r\n name,\r\n brand,\r\n slug,\r\n sku,\r\n stock,\r\n price,\r\n image,\r\n weight,\r\n quantity: (item.quantity || 0) + (quantity || 0),\r\n pricePaid,\r\n categories,\r\n isGift,\r\n })\r\n }\r\n\r\n private getProductPrice = ({\r\n product,\r\n shop,\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.getInfoByShop(shop)\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 private getFinancialDiscount(coupon: Coupon & { id: string }): (subTotalPrice: number) => number {\r\n return (subTotalPrice) => {\r\n if (FinancialCoupon.isFinancialCoupon(coupon))\r\n switch (coupon.subtype) {\r\n case CouponSubtypes.ABSOLUTE:\r\n return subTotalPrice - coupon.discount * 100\r\n case CouponSubtypes.PERCENTAGE:\r\n return subTotalPrice * (1 - coupon.discount / 100)\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 { 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 SignOut,\r\n UserRepository,\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: '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})\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 {\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 { AngularFirestore } from '@angular/fire/firestore'\r\nimport {\r\n BeautyProfileRepository,\r\n Buy2WinFirestoreRepository,\r\n Buy2WinRepository,\r\n CategoryRepository,\r\n CategoryFirestoreRepository,\r\n CheckoutRepository,\r\n CheckoutFirestoreRepository,\r\n CheckoutSubscriptionFirestoreRepository,\r\n CheckoutSubscriptionRepository,\r\n CouponRepository,\r\n CouponFirestoreRepository,\r\n EditionRepository,\r\n HomeFirestoreRepository,\r\n HomeRepository,\r\n LeadRepository,\r\n LeadFirestoreRepository,\r\n LegacyOrderRepository,\r\n LegacyOrderFirestoreRepository,\r\n ShopMenuFirestoreRepository,\r\n ShopMenuRepository,\r\n OrderRepository,\r\n OrderFirestoreRepository,\r\n PaymentRepository,\r\n PaymentFirestoreRepository,\r\n ProductRepository,\r\n ProductFirestoreRepository,\r\n SubscriptionEditionFirestoreRepository,\r\n SubscriptionFirestoreRepository,\r\n SubscriptionPaymentFirestoreRepository,\r\n SubscriptionPaymentRepository,\r\n SubscriptionPlanFirestoreRepository,\r\n SubscriptionPlanRepository,\r\n SubscriptionRepository,\r\n UserAddressRepository,\r\n UserAddressFirestoreRepository,\r\n UserBeautyProfileFirestoreRepository,\r\n UserFirestoreRepository,\r\n UserRepository,\r\n VariantRepository,\r\n ProductVariantFirestoreRepository,\r\n} from '@infrab4a/connect'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule],\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: 'CategoryRepository',\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: '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: 'ProductRepository',\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: '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: 'VariantRepository',\r\n useFactory: (firestore: AngularFirestore, productRepository: ProductFirestoreRepository): VariantRepository => {\r\n return new ProductVariantFirestoreRepository(firestore.firestore, productRepository)\r\n },\r\n deps: [AngularFirestore, 'ProductRepository'],\r\n },\r\n ],\r\n})\r\nexport class AngularFirestoreModule {\r\n static initializeApp(\r\n options: FirebaseOptions,\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 },\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 {\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 { isNil, Shops } from '@infrab4a/connect'\r\n\r\nimport { AngularFirestoreModule } from './angular-firestore.module'\r\nimport { AuthService, CartService, CheckoutService, OrderService } from './services'\r\nimport { DEFAULT_SHOP } from './consts'\r\n\r\n@NgModule({\r\n imports: [AngularFireModule, AngularFirestoreModule],\r\n providers: [AuthService, CartService, CheckoutService, OrderService],\r\n})\r\nexport class AngularConnectModule {\r\n static initializeApp(\r\n defaultShop: Shops,\r\n options: FirebaseOptions,\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) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options }]),\r\n ...(isNil(options) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),\r\n ],\r\n }\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,10 @@ import { Observable } from 'rxjs';
|
|
|
4
4
|
import firebase from 'firebase/app';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class AuthService {
|
|
7
|
-
angularFireAuth
|
|
7
|
+
private readonly angularFireAuth;
|
|
8
8
|
private readonly userRepository;
|
|
9
9
|
constructor(angularFireAuth: AngularFireAuth, userRepository: UserRepository);
|
|
10
|
+
getAuthstate(): Observable<User>;
|
|
10
11
|
getUser(): Observable<User>;
|
|
11
12
|
getTokenId(): Observable<string>;
|
|
12
13
|
getFireUser(): Observable<firebase.User>;
|