{ "version": 3, "sources": ["apps/toolkits-frontend/src/app/services/member.service.ts"], "sourcesContent": ["import { Inject, Injectable } from '@angular/core';\nimport { ITK_NG_DJANGO_API_CLIENT } from '@itk/ng-django-api';\nimport {\n AddAgentRequest,\n DeleteAgentRequest,\n DeleteAgentResponse,\n ErrorResponse,\n ItkDjangoApi,\n Member,\n PublicInfoResponse,\n UpdateDefaultStateRequest,\n UpdateDefaultStateResponse,\n UpdatePasswordRequest,\n UpdatePasswordResponse,\n UpdateTelesalesRequest,\n UpdateTellesalesResponse,\n UpdateUserInfoResponse,\n User,\n} from '@itk/universal-django-api';\nimport {\n catchError,\n debounceTime,\n filter,\n firstValueFrom,\n map,\n merge,\n of,\n shareReplay,\n Subject,\n switchMap,\n} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ItkMemberService {\n constructor(\n @Inject(ITK_NG_DJANGO_API_CLIENT)\n private readonly api: ItkDjangoApi,\n ) {}\n\n public readonly getMemberSource = new Subject();\n public readonly getMember$ = this.getMemberSource.pipe(\n switchMap(() => this.api.member.getMember()),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n public readonly memberRequest$ = this.api.member\n .getMember()\n .pipe(shareReplay({ refCount: true, bufferSize: 1 }));\n\n public readonly member$ = merge(this.getMember$, this.memberRequest$).pipe(\n debounceTime(10),\n map((x) => {\n if ('error' in x) {\n return {} as Member;\n }\n\n return x;\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n public readonly memberId$ = this.member$.pipe(\n map((x) => x.id),\n filter((x): x is number => typeof x === 'number'),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n public readonly isAgency$ = this.member$.pipe(\n switchMap(() => this.api.payments.isAgency()),\n catchError(() => of(false)),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n public readonly memberAgents$ = this.member$.pipe(\n switchMap(() => this.api.member.getMemberAgents()),\n map((x) => {\n if ('error' in x) {\n return [] as Member[];\n }\n\n return x;\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n getPublicInfo(\n liteToken: string,\n ): Promise {\n return firstValueFrom(this.api.member.getPublicInfo(liteToken));\n }\n\n updateMemberUserInfo(\n user: User,\n ): Promise {\n return firstValueFrom(\n this.memberId$.pipe(\n switchMap((x) => this.api.member.updateMemberUserInfo(x, user)),\n ),\n ).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n\n updatePassword(\n password: UpdatePasswordRequest,\n ): Promise {\n return firstValueFrom(\n this.memberId$.pipe(\n switchMap((x) => this.api.member.updateMemberUserPassword(x, password)),\n ),\n ).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n\n updateUserIsTelesales(\n is_telesales: UpdateTelesalesRequest,\n ): Promise {\n return firstValueFrom(\n this.memberId$.pipe(\n switchMap((m) =>\n this.api.member.updateMemberIsTellesales(m, is_telesales),\n ),\n ),\n ).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n\n updateDefaultState(\n default_state: UpdateDefaultStateRequest,\n ): Promise {\n return firstValueFrom(\n this.memberId$.pipe(\n switchMap((m) => this.api.member.updateDefaultState(m, default_state)),\n ),\n ).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n\n addAgent(agent: AddAgentRequest): Promise {\n return firstValueFrom(this.api.member.addAgent(agent)).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n\n deleteAgent(\n agent: DeleteAgentRequest,\n ): Promise {\n return firstValueFrom(this.api.member.deleteAgent(agent)).then((x) => {\n this.getMemberSource.next();\n return x;\n });\n }\n}\n"], "mappings": "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", "names": ["ItkMemberService", "constructor", "api", "getMemberSource", "Subject", "getMember$", "pipe", "switchMap", "member", "getMember", "shareReplay", "refCount", "bufferSize", "memberRequest$", "member$", "merge", "debounceTime", "map", "x", "memberId$", "id", "filter", "isAgency$", "payments", "isAgency", "catchError", "of", "memberAgents$", "getMemberAgents", "getPublicInfo", "liteToken", "firstValueFrom", "updateMemberUserInfo", "user", "then", "next", "updatePassword", "password", "updateMemberUserPassword", "updateUserIsTelesales", "is_telesales", "m", "updateMemberIsTellesales", "updateDefaultState", "default_state", "addAgent", "agent", "deleteAgent", "\u0275\u0275inject", "ITK_NG_DJANGO_API_CLIENT", "factory", "\u0275fac", "providedIn", "_ItkMemberService"] }