{"version":3,"file":"chunk-ifsr1602.js","sources":["packages/vanilla/lib/features/user-documents/src/user-documents.client-config.ts","packages/vanilla/lib/features/user-documents/src/user-documents.service.ts","packages/vanilla/lib/features/user-documents/src/user-documents-bootstrap.service.ts","packages/vanilla/lib/features/user-documents/src/user-documents.feature.ts","packages/vanilla/lib/features/user-documents/src/user-documents.models.ts","packages/vanilla/lib/features/user-documents/src/user-documents.html","packages/vanilla/lib/features/user-documents/src/user-documents.component.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { ClientConfigProductName, LazyClientConfig, LazyClientConfigBase, LazyClientConfigService } from '@frontend/vanilla/core';\n\n/**\n * @stable\n */\n@LazyClientConfig({ key: 'vnUserDocuments', product: ClientConfigProductName.SF })\n@Injectable({\n providedIn: 'root',\n useFactory: configFactory,\n deps: [LazyClientConfigService],\n})\nexport class UserDocumentsConfig extends LazyClientConfigBase {\n depositLimitNoticeThreshold: number;\n}\n\nexport function configFactory(service: LazyClientConfigService) {\n return service.get(UserDocumentsConfig);\n}\n","import { Injectable, signal } from '@angular/core';\n\nimport { SharedFeaturesApiService } from '@frontend/vanilla/core';\n\nimport { UserDocumentsResponse } from './user-documents.models';\n\n/**\n * @stable\n */\n@Injectable({ providedIn: 'root' })\nexport class UserDocumentsService {\n readonly userDocuments = signal(null);\n\n constructor(private apiService: SharedFeaturesApiService) {}\n\n refresh() {\n this.userDocuments.set(null);\n this.loadUserDocuments();\n }\n\n private loadUserDocuments() {\n if (!this.userDocuments()) {\n this.apiService.get('userdocuments').subscribe((userDocuments: UserDocumentsResponse) => {\n this.userDocuments.set(userDocuments);\n });\n }\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { OnFeatureInit, RtmsMessage, RtmsService, RtmsType, SofStatusDetailsCoreService } from '@frontend/vanilla/core';\nimport { LoginService } from '@frontend/vanilla/shared/login';\nimport { firstValueFrom } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { UserDocumentsConfig } from './user-documents.client-config';\nimport { UserDocumentsService } from './user-documents.service';\n\n@Injectable()\nexport class UserDocumentsBootstrapService implements OnFeatureInit {\n constructor(\n private config: UserDocumentsConfig,\n private loginService: LoginService,\n private rtmsService: RtmsService,\n private userDocumentsService: UserDocumentsService,\n private sofStatusDetailsService: SofStatusDetailsCoreService,\n ) {}\n\n async onFeatureInit() {\n await firstValueFrom(this.config.whenReady);\n\n this.loginService.runAfterLogin(UserDocumentsBootstrapService.name, () => {\n this.userDocumentsService.refresh();\n this.sofStatusDetailsService.whenReady.subscribe(() => this.sofStatusDetailsService.refresh());\n });\n\n this.rtmsService.messages\n .pipe(filter((e: RtmsMessage) => [RtmsType.KYC_VERIFIED_EVENT, RtmsType.KYC_REFRESH_TRIGGER_EVENT].includes(e.type)))\n .subscribe(() => {\n this.userDocumentsService.refresh();\n this.sofStatusDetailsService.whenReady.subscribe(() => this.sofStatusDetailsService.refresh());\n });\n }\n}\n","import { runOnFeatureInit } from '@frontend/vanilla/core';\n\nimport { UserDocumentsBootstrapService } from './user-documents-bootstrap.service';\nimport { UserDocumentsService } from './user-documents.service';\n\nexport function provide() {\n return [UserDocumentsService, runOnFeatureInit(UserDocumentsBootstrapService)];\n}\n","/**\n * @stable\n */\nexport interface DocumentDetails {\n documentStatus: string;\n documentType: string;\n documentStatusLastUpdated?: Date;\n uploadedDate: Date;\n uploadedReason: string;\n documentsCount: number;\n}\n\n/**\n * @stable\n */\nexport interface DocumentVerificationStatus {\n useCase: VerificationUseCase;\n isVerified: boolean;\n verifiedTime?: Date;\n documentDetails: DocumentDetails[];\n}\n\n/**\n * @stable\n */\nexport interface UserDocumentsResponse {\n documentVerificationStatus: DocumentVerificationStatus[];\n}\n\n/**\n * @stable\n *\n * Order matters.\n */\nexport enum DocumentStatus {\n Failed = 'Failed',\n Required = 'Required',\n InProgress = 'InProgress',\n Verified = 'Verified',\n}\n\n/**\n * @stable\n */\nexport enum VerificationUseCase {\n All = 'ALL',\n Kyc = 'KYC',\n TwoPlusTwo = 'TWO-PLUS-TWO',\n UkKycRefresh = 'UK-KYC-REFRESH',\n Sof = 'SOF',\n}\n\n/**\n * @stable\n */\nexport enum GracePeriodUnit {\n Hours = 'hours',\n Days = 'days',\n}\n","@if (userDocuments() && item().resources; as resources) {\n \n @if (balancePropertiesService.balanceProperties | async; as balance) {\n @if (config.depositLimitNoticeThreshold > 0 && balance.availableBalance > config.depositLimitNoticeThreshold) {\n @if (getTemplate('notice'); as template) {\n \n }\n }\n }\n \n @if (getNotice(); as notice) {\n \n }\n \n \n @if (userDocuments().documentVerificationStatus.length) {\n @for (documents of userDocuments().documentVerificationStatus; track $index) {\n \n
\n {{ resources[documents.useCase] }}\n \n @if (!documents.isVerified && (documentHaveStatus(DocumentStatus.Required) || documentHaveStatus(DocumentStatus.Failed))) {\n @if (kycStatus(); as kycStatus) {\n @if (documents.useCase === VerificationUseCase.Sof) {\n @if (sofStatusDetails | async; as sofStatus) {\n @if (getGracePeriod(documents.useCase, kycStatus, sofStatus.redStatusDays); as gracePeriod) {\n \n {{ gracePeriod }}\n \n }\n }\n } @else {\n @if (getGracePeriod(documents.useCase, kycStatus); as gracePeriod) {\n \n {{ gracePeriod }}\n \n }\n }\n \n @if (getGracePeriod(documents.useCase, kycStatus); as gracePeriod) {\n \n {{ gracePeriod }}\n \n }\n \n }\n }\n
\n \n @if (documents.documentDetails.length) {\n
\n @for (documentDetails of documents.documentDetails; track $index) {\n @if (getTemplate(documentDetails.documentStatus); as template) {\n
\n @if (template.parameters?.iconClass) {\n \n }\n \n @if (documentDetails.documentsCount > 0) {\n {{ documentDetails.documentsCount }}\n }\n {{ template.text | format: resources[documentDetails.documentType] || resources.Documents }}\n \n @if (template.resources.Link || getLink(documents.useCase, documentDetails.documentStatus); as link) {\n \n }\n
\n }\n }\n
\n } @else {\n @if (getTemplate('empty'); as template) {\n
{{ template.text }}
\n
\n }\n }\n }\n } @else {\n @if (getTemplate('empty'); as template) {\n
{{ template.text }}
\n
\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, computed, input, signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { DynamicHtmlDirective, MenuContentItem, SofStatusDetails, SofStatusDetailsCoreService, TrackingService } from '@frontend/vanilla/core';\nimport { BalancePropertiesService } from '@frontend/vanilla/features/balance-properties';\nimport { FormatPipe } from '@frontend/vanilla/shared/browser';\nimport { KycStatus, KycStatusService } from '@frontend/vanilla/shared/kyc';\nimport { Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { UserDocumentsConfig } from './user-documents.client-config';\nimport {\n DocumentDetails,\n DocumentStatus,\n DocumentVerificationStatus,\n GracePeriodUnit,\n UserDocumentsResponse,\n VerificationUseCase,\n} from './user-documents.models';\n\n/**\n * Sitecore: {@link http://cms.prod.env.works/sitecore/DirectLink.aspx?fo={63AE6738-595A-481C-BF4E-E39399377774}&la=}\n *\n * @stable\n */\n@Component({\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, DynamicHtmlDirective, FormatPipe],\n selector: 'vn-am-user-documents',\n templateUrl: 'user-documents.html',\n})\nexport class UserDocumentsComponent implements OnInit {\n item = input.required();\n userDocuments = input.required();\n\n DocumentStatus = DocumentStatus;\n VerificationUseCase = VerificationUseCase;\n getNotice = computed(() => {\n if (!this.userDocuments().documentVerificationStatus?.length) {\n return;\n }\n\n for (const status in DocumentStatus) {\n const haveSameStatus = this.userDocuments().documentVerificationStatus.every((document: DocumentVerificationStatus) =>\n document.documentDetails.every((details: DocumentDetails) => details.documentStatus === status),\n );\n\n if (this.userDocuments().documentVerificationStatus.length > 1 && !haveSameStatus) {\n continue; // Skip if not all documents have the same status.\n }\n\n const haveNotice = this.userDocuments().documentVerificationStatus.every((document: DocumentVerificationStatus) =>\n document.documentDetails.some((details: DocumentDetails) => details.documentStatus === status),\n );\n\n if (haveNotice) {\n const isVerified = this.userDocuments().documentVerificationStatus.every(\n (document: DocumentVerificationStatus) => document.isVerified,\n );\n\n return this.item().resources[`${isVerified ? DocumentStatus.Verified : status}_Notice`];\n }\n }\n\n return;\n });\n\n readonly kycStatus = signal(null);\n sofStatusDetails: Observable;\n\n constructor(\n public config: UserDocumentsConfig,\n public sofStatusDetailsService: SofStatusDetailsCoreService,\n public balancePropertiesService: BalancePropertiesService,\n private kycStatusService: KycStatusService,\n private trackingService: TrackingService,\n ) {\n this.kycStatusService.kycStatus\n .pipe(\n takeUntilDestroyed(),\n filter((status: KycStatus | null): status is KycStatus => status !== null),\n )\n .subscribe((kycStatus: KycStatus) => {\n const isUkKycRefreshRequired = this.getKycStatusValue(kycStatus, 'isUkKycRefreshRequired') === 'y';\n\n kycStatus.graceDaysUnit =\n isUkKycRefreshRequired && kycStatus.additionalKycInfo\n ? this.getKycStatusValue(kycStatus, 'ukKycRefreshGraceDaysUnit') || GracePeriodUnit.Days\n : kycStatus.graceDaysUnit || GracePeriodUnit.Days;\n\n this.kycStatus.set(kycStatus);\n });\n }\n\n ngOnInit() {\n this.sofStatusDetailsService.whenReady.subscribe(() => {\n this.sofStatusDetailsService.refresh();\n this.sofStatusDetails = this.sofStatusDetailsService.statusDetails;\n });\n this.trackingService.trackContentItemEvent(this.item().trackEvent, 'LoadedEvent');\n }\n\n getTemplate(name?: string): MenuContentItem | undefined {\n return this.item().children?.find((item: MenuContentItem) => name && item.name.indexOf(name.toLowerCase()) > -1);\n }\n\n getLink(useCase: VerificationUseCase, status: string): string | undefined {\n return status === DocumentStatus.Required ? this.item().resources[`${useCase}_link`.toUpperCase()] : undefined;\n }\n\n getGracePeriod(useCase: VerificationUseCase, kycStatus: KycStatus, sofRedStatusDays?: number): string | undefined {\n let gracePeriod: number;\n\n if (sofRedStatusDays) {\n kycStatus.graceDaysUnit = GracePeriodUnit.Days;\n gracePeriod = sofRedStatusDays;\n } else {\n gracePeriod = kycStatus.isKycStarted ? kycStatus.verificationDaysLeft : kycStatus.depositGraceDays;\n }\n\n if (gracePeriod === -1 && useCase === VerificationUseCase.UkKycRefresh) {\n kycStatus.graceDaysUnit = this.getKycStatusValue(kycStatus, 'ukKycRefreshGraceDaysUnit') || GracePeriodUnit.Days;\n gracePeriod = this.getKycStatusValue(kycStatus, 'ukKycRefreshgraceDays') || -1;\n }\n\n return this.getGracePeriodText(gracePeriod, kycStatus.graceDaysUnit);\n }\n\n documentHaveStatus(documentStatus: DocumentStatus): boolean {\n return this.userDocuments().documentVerificationStatus.some((document: DocumentVerificationStatus) =>\n document.documentDetails.find((details: DocumentDetails) => details.documentStatus === documentStatus),\n );\n }\n\n private getGracePeriodText(gracePeriod: number, graceUnit: string): string | undefined {\n if (!gracePeriod || gracePeriod < 1) {\n return;\n }\n\n if (graceUnit?.toLowerCase() === GracePeriodUnit.Days) {\n // Hide grace period if true\n if (gracePeriod >= Number(this.item().parameters.hideGracePeriodDaysThreshold)) {\n return;\n }\n\n // Convert days to hours if true\n if (gracePeriod <= Number(this.item().parameters.gracePeriodDaysToHoursThreshold)) {\n return `${gracePeriod * 24} ${this.item().resources[gracePeriod === 1 ? 'HourLeft' : 'HoursLeft']}`;\n }\n\n return `${gracePeriod} ${this.item().resources[gracePeriod === 1 ? 'DayLeft' : 'DaysLeft']}`;\n }\n\n return `${gracePeriod} ${this.item().resources[gracePeriod === 1 ? 'HourLeft' : 'HoursLeft']}`;\n }\n\n private getKycStatusValue(kycStatus: KycStatus, key: string): T | undefined {\n return kycStatus.additionalKycInfo?.find((info: { [key: string]: string }) => info.Key === key)?.Value as T | undefined;\n }\n}\n"],"names":["UserDocumentsConfig","_a","LazyClientConfigBase","Y","__ngFactoryType__","factory","__ngConditionalFactory__","configFactory","ɵɵinject","LazyClientConfigService","__decorate","LazyClientConfig","key","product","ClientConfigProductName","SF","service","get","UserDocumentsService","constructor","apiService","userDocuments","signal","refresh","set","loadUserDocuments","subscribe","SharedFeaturesApiService","ɵfac","providedIn","_UserDocumentsService","UserDocumentsBootstrapService","config","loginService","rtmsService","userDocumentsService","sofStatusDetailsService","onFeatureInit","__async","firstValueFrom","whenReady","runAfterLogin","name","messages","pipe","filter","e","RtmsType","KYC_VERIFIED_EVENT","KYC_REFRESH_TRIGGER_EVENT","includes","type","LoginService","RtmsService","SofStatusDetailsCoreService","_UserDocumentsBootstrapService","provide","runOnFeatureInit","DocumentStatus","VerificationUseCase","GracePeriodUnit","ɵɵelement","ɵɵproperty","ctx","text","ɵɵtemplate","UserDocumentsComponent_Conditional_0_Conditional_0_Conditional_0_Conditional_0_Template","ɵɵconditional","tmp_5_0","ctx_r0","getTemplate","UserDocumentsComponent_Conditional_0_Conditional_0_Conditional_0_Template","depositLimitNoticeThreshold","availableBalance","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate1","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Conditional_0_Conditional_0_Conditional_0_Template","r","tmp_20_0","getGracePeriod","documents_r3","useCase","kycStatus_r2","redStatusDays","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Conditional_0_Conditional_0_Template","tmp_18_0","ɵɵpipeBind1","sofStatusDetails","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Conditional_1_Conditional_0_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_ng_template_2_Conditional_0_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Conditional_0_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Conditional_1_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_ng_template_2_Template","ɵɵtemplateRefExtractor","Sof","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Conditional_0_Template","tmp_14_0","kycStatus","template_r4","parameters","iconClass","documentDetails_r5","documentsCount","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_For_2_Conditional_0_Conditional_1_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_For_2_Conditional_0_Conditional_3_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_For_2_Conditional_0_Conditional_6_Template","ɵɵpipeBind2","resources_r6","documentType","Documents","tmp_29_0","resources","Link","getLink","documentStatus","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_For_2_Conditional_0_Template","tmp_24_0","ɵɵrepeaterCreate","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_For_2_Template","ɵɵrepeaterTrackByIndex","ɵɵrepeater","documentDetails","ɵɵtextInterpolate","template_r7","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_4_Conditional_0_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_2_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_3_Template","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Conditional_4_Template","isVerified","documentHaveStatus","Required","Failed","length","UserDocumentsComponent_Conditional_0_Conditional_3_For_1_Template","documentVerificationStatus","template_r8","UserDocumentsComponent_Conditional_0_Conditional_4_Conditional_0_Template","tmp_3_0","UserDocumentsComponent_Conditional_0_Conditional_0_Template","UserDocumentsComponent_Conditional_0_Conditional_2_Template","UserDocumentsComponent_Conditional_0_Conditional_3_Template","UserDocumentsComponent_Conditional_0_Conditional_4_Template","tmp_2_0","balancePropertiesService","balanceProperties","getNotice","UserDocumentsComponent","kycStatusService","trackingService","item","input","required","computed","status","haveSameStatus","every","document","details","some","Verified","takeUntilDestroyed","isUkKycRefreshRequired","getKycStatusValue","graceDaysUnit","additionalKycInfo","Days","ngOnInit","statusDetails","trackContentItemEvent","trackEvent","children","find","indexOf","toLowerCase","toUpperCase","undefined","sofRedStatusDays","gracePeriod","isKycStarted","verificationDaysLeft","depositGraceDays","UkKycRefresh","getGracePeriodText","graceUnit","Number","hideGracePeriodDaysThreshold","gracePeriodDaysToHoursThreshold","_b","info","Key","Value","ɵɵdirectiveInject","BalancePropertiesService","KycStatusService","TrackingService","selectors","inputs","standalone","features","ɵɵStandaloneFeature","decls","vars","consts","template","rf","UserDocumentsComponent_Conditional_0_Template","tmp_0_0","CommonModule","NgClass","AsyncPipe","DynamicHtmlDirective","FormatPipe","encapsulation","changeDetection","_UserDocumentsComponent"],"mappings":"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"}