{ "version": 3, "sources": ["apps/partner-center-client/src/app/core/account.ts", "apps/partner-center-client/src/app/core/filegroup.ts", "apps/partner-center-client/src/app/core/filegroup.service.ts", "apps/partner-center-client/src/app/core/order-form-submission.ts", "apps/partner-center-client/src/app/core/account.service.ts"], "sourcesContent": ["import { AccountGroup } from '@galaxy/account-group';\n\nexport class ProductAccount {\n account_id: string;\n is_trial: boolean;\n marketplace_app_id: string;\n product_id: string;\n\n constructor(data: any) {\n Object.assign(this, data);\n }\n}\n\nexport class Account {\n account_group_id: string;\n company_name: string;\n address: string;\n address2: string;\n city: string;\n state: string;\n country: string;\n zip: string;\n work_number: string;\n call_tracking_number: string;\n website: string;\n partner_id: string;\n market_id: string;\n customer_identifier: string;\n tax_ids: string[];\n vcategory_ids: string[];\n sales_person_id: string;\n snapshot_listing_scan_url: string;\n admin_notes: string;\n tags: string[];\n action_lists: string[];\n additional_sales_person_ids: string[];\n timezone: string;\n created: string;\n updated: string;\n\n constructor(data: any) {\n Object.keys(data).map((property) => {\n this[property] = data[property];\n });\n }\n\n get fullAddress(): string {\n const parts = [this.address, this.city, this.state, this.country, this.zip].filter((part) => !!part);\n return parts.join(', ');\n }\n\n static AccountFromAccountGroup(accountGroup: AccountGroup, sscDomain: string): Account {\n if (!accountGroup?.accountGroupId) {\n return null;\n }\n return new Account({\n account_group_id: accountGroup.accountGroupId,\n company_name: accountGroup.napData.companyName,\n address: accountGroup.napData.address,\n address2: accountGroup.napData.address2,\n city: accountGroup.napData.city,\n state: accountGroup.napData.state,\n country: accountGroup.napData.country,\n zip: accountGroup.napData.zip,\n work_number: accountGroup.napData.workNumber,\n call_tracking_number: accountGroup.napData.callTrackingNumber,\n website: accountGroup.napData.website,\n partner_id: accountGroup.externalIdentifiers.partnerId,\n market_id: accountGroup.externalIdentifiers.marketId,\n customer_identifier: accountGroup.externalIdentifiers.customerIdentifier,\n tax_ids: accountGroup.externalIdentifiers.taxIds,\n vcategory_ids: accountGroup.externalIdentifiers.vCategoryIds,\n sales_person_id: accountGroup.externalIdentifiers.salesPersonId,\n snapshot_listing_scan_url: `https://${sscDomain}/snapshot/lite/${accountGroup.accountGroupId}`,\n admin_notes: accountGroup.legacyProductDetails?.adminNotes ?? '',\n tags: accountGroup.externalIdentifiers.tags,\n action_lists: accountGroup.externalIdentifiers.actionLists,\n additional_sales_person_ids: accountGroup.externalIdentifiers.additionalSalesPersonIds,\n timezone: accountGroup.napData.timezone,\n created: accountGroup.created,\n updated: accountGroup.updated,\n });\n }\n}\n", "export class FileGroup {\n account_group_id: string;\n title: string;\n description: string;\n date: string;\n files: any[];\n file_group_id: string;\n app_id: string;\n uploadedBy: string;\n created: string;\n\n constructor(data: any) {\n Object.keys(data).map((key) => {\n this[key] = data[key];\n });\n }\n}\n", "import { Injectable } from '@angular/core';\nimport { BehaviorSubject, combineLatest, Observable, of as observableOf } from 'rxjs';\nimport { map, skipWhile, switchMap } from 'rxjs/operators';\n\nimport { AccountService } from '@vendasta/business-center';\nimport { ApiService } from '../api-service/api.service';\nimport { FileGroup } from './filegroup';\nimport { ProductService } from './product.service';\nimport { Product } from './product/product';\n\n@Injectable({ providedIn: 'root' })\nexport class FileGroupService {\n cursorSubject: BehaviorSubject = new BehaviorSubject(null);\n private cursorValue: string;\n fileGroupSubject: BehaviorSubject = new BehaviorSubject(null);\n accountGroupId: string;\n partnerId: string;\n\n constructor(\n private apiService: ApiService,\n private productService: ProductService,\n private businessService: AccountService,\n ) {}\n\n get cursor(): Observable {\n return this.cursorSubject.asObservable();\n }\n\n getFileGroups(accountGroupId: string, partnerId: string): Observable {\n this.cursorSubject.next(null);\n this.cursorValue = null;\n this.fileGroupSubject.next(null);\n\n const url = `/_ajax/v1/account/files/?accountGroupId=${accountGroupId}&partnerId=${partnerId}`;\n this.partnerId = partnerId;\n this.accountGroupId = accountGroupId;\n\n this.loadFileGroups(url).subscribe((fileGroups) => {\n this.cursorSubject.next(this.cursorValue);\n this.fileGroupSubject.next(fileGroups);\n });\n\n return this.fileGroupSubject.asObservable();\n }\n\n getMoreFileGroups(): Observable {\n const url = `/_ajax/v1/account/files/?accountGroupId=${this.accountGroupId}&partnerId=${\n this.partnerId\n }&cursor=${this.cursorSubject.getValue()}`;\n\n this.loadFileGroups(url).subscribe((fileGroups) => {\n this.cursorSubject.next(this.cursorValue);\n this.fileGroupSubject.next([...this.fileGroupSubject.getValue(), ...fileGroups]);\n });\n\n return this.fileGroupSubject.asObservable();\n }\n\n private loadFileGroups(url: string): Observable {\n return this.apiService.get(url).pipe(\n switchMap((resp) => {\n const fileGroups = resp.feed_data.map((item) => {\n this.cursorValue = resp.cursor;\n return new FileGroup(item);\n });\n const fileGroups$ = observableOf(fileGroups);\n const product$ = this.productService.products;\n return combineLatest([fileGroups$, product$]);\n }),\n skipWhile(([, products]) => !products),\n map(([fileGroups, products]) => {\n if (products.length > 0) {\n return this.setUploadedByFromProducts(fileGroups, products);\n } else {\n return null;\n }\n }),\n );\n }\n\n setUploadedByFromProducts(fileGroups: FileGroup[], products: Product[]): FileGroup[] {\n return fileGroups.map((fileGroup) => {\n if (fileGroup.app_id === 'AA') {\n fileGroup.uploadedBy = 'Partner Center';\n } else {\n const product = products.find((thisProduct) => fileGroup.app_id === thisProduct.product_id);\n fileGroup.uploadedBy = product ? product.name : 'Vendor Center';\n }\n return fileGroup;\n });\n }\n\n deleteFileGroup(fileGroup: FileGroup): Observable {\n return this.businessService.deleteFile(fileGroup.file_group_id).pipe(\n map((_) => {\n this.fileGroupSubject.next([\n ...this.fileGroupSubject.getValue().filter((fg) => fg.file_group_id !== fileGroup.file_group_id),\n ]);\n return;\n }),\n );\n }\n}\n", "export class OrderFormSubmission {\n commonFields: OrderFormSubmissionField[] = [];\n customFields: OrderFormSubmissionField[] = [];\n\n constructor(data: any) {\n Object.assign(this, data);\n }\n}\n\nexport type FieldType = 'text' | 'dropdown' | 'file' | 'checkbox' | 'textarea';\n\nexport class OrderFormSubmissionField {\n field_id: string;\n field_type: FieldType;\n label: string;\n description: string;\n answer: boolean | string | string[];\n}\n", "import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable } from '@angular/core';\nimport { AccountGroupService, ProjectionFilter } from '@galaxy/account-group';\nimport { Environment, EnvironmentService } from '@galaxy/core';\nimport {\n AccountAccountStatus,\n AccountDates,\n Account as AccountProductDetails,\n AccountsService,\n AddonActivation,\n AddonActivationAddonActivationStatus,\n Blame,\n DeactivationType,\n ListAppAndAddonActivationStatusFilter,\n ListAppsAndAddonsActivationsStatusesForBusinessResponseAppsAndAddonsActivationStatusesInterface,\n PendingActivation,\n GetMultiRequestActivationIdentifier as SDKActivationIdentifier,\n} from '@vendasta/accounts/legacy';\nimport { DomainService } from '@vendasta/domain';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { MarketplaceAppService as MarketplacePackagesAppService } from '@vendasta/marketplace-packages';\nimport { BehaviorSubject, EMPTY, Observable, combineLatest, forkJoin, merge, of, throwError } from 'rxjs';\nimport {\n catchError,\n filter,\n finalize,\n first,\n map,\n publishReplay,\n refCount,\n scan,\n shareReplay,\n skipWhile,\n startWith,\n switchMap,\n take,\n tap,\n withLatestFrom,\n} from 'rxjs/operators';\nimport { AppEditionService, checkForEditionWithEmptyStringId } from '../activation/core/app-edition.service';\nimport { Edition, ProductEditionMap } from '../activation/core/interface';\nimport { LISTING_DISTRIBUTION_ADDON_IDS_DEMO, LISTING_DISTRIBUTION_ADDON_IDS_PROD } from '../constants';\nimport { Account } from './account';\nimport { FileGroup } from './filegroup';\nimport { FileGroupService } from './filegroup.service';\nimport { MarketplaceAppService } from './marketplace-app.service';\nimport { OrderFormSubmission, OrderFormSubmissionField } from './order-form-submission';\nimport { Salesperson } from './salesperson';\nimport { SalespersonService } from './salesperson.service';\nimport { TaxonomyService } from './taxonomy.service';\nimport { User } from './user';\n\nexport interface AccountDetails {\n account: Account;\n users?: User[];\n salesperson?: Salesperson;\n taxonomy?: string;\n fileGroups?: FileGroup[];\n}\n\nexport interface Activation {\n businessId: string;\n appId: string;\n addonId?: string;\n activationId?: string;\n anniversaryDate: Date;\n status: AccountAccountStatus | AddonActivationAddonActivationStatus;\n trial?: boolean;\n commitmentDate: Date;\n activation: Date;\n deactivation?: Date;\n orderFormSubmissionId: string;\n isSuspended?: boolean;\n accountId?: string;\n activationDescriptor?: string;\n editionId?: string;\n deactivationIsEditionChange?: boolean;\n deactivationNewEditionId?: string;\n deactivationNewBillingOrderId?: string;\n}\n\nexport interface ActivationIdentifier {\n accountGroupId: string;\n appId: string;\n activationId: string;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AccountService {\n private accountID$$: BehaviorSubject = new BehaviorSubject(null);\n private _accountID$: Observable;\n private accountDetails$$: BehaviorSubject = new BehaviorSubject(null);\n private users$$: BehaviorSubject = new BehaviorSubject(null);\n private _users$ = this.users$$.asObservable();\n private loadingUsers$$: BehaviorSubject = new BehaviorSubject(true);\n private _loadingUsers$ = this.loadingUsers$$.asObservable();\n\n activations$: Observable;\n account$: Observable;\n accountMarketId$: Observable;\n editionsMap$: Observable;\n private reloadProducts$$: BehaviorSubject = new BehaviorSubject(null);\n\n private _userMask: string[];\n\n constructor(\n private http: HttpClient,\n @Inject('PARTNER_ID') private partnerId$: Observable,\n private salespersonService: SalespersonService,\n private taxonomyService: TaxonomyService,\n private accountsService: AccountsService,\n private fileGroupService: FileGroupService,\n private appService: MarketplacePackagesAppService,\n private environmentService: EnvironmentService,\n private editionsService: AppEditionService,\n private marketplaceAppService: MarketplaceAppService,\n private accountGroupService: AccountGroupService,\n protected readonly domainService: DomainService,\n private snackbarService: SnackbarService,\n ) {\n this._accountID$ = this.accountID$$.asObservable().pipe(skipWhile((id) => id === null));\n this._userMask = [];\n\n this.account$ = this.accountID$.pipe(\n skipWhile((account) => account === null),\n tap((accountId) => {\n if (this.accountDetails$$.getValue()?.account.account_group_id !== accountId) {\n this.accountDetails$$.next({ account: new Account({ account_group_id: accountId }) });\n }\n }),\n switchMap((accountId) => {\n return this.getAccount(accountId);\n }),\n );\n this.accountMarketId$ = this.account$.pipe(\n filter((account) => !!account),\n map((acc) => acc.market_id || 'default'),\n );\n\n this.account$.pipe(switchMap((account) => this.loadAccountDetails(account, this._userMask))).subscribe(\n (accountDetails) => {\n return this.accountDetails$$.next(accountDetails);\n },\n (err) => console.log(err),\n );\n\n const accountDates$: Observable = combineLatest([this.accountID$, this.reloadProducts$$]).pipe(\n switchMap(([accountId, _]) => this.accountsService.listAccountDates(accountId, '', 1000)),\n catchError((err) => {\n console.log(err);\n return [];\n }),\n publishReplay(1),\n refCount(),\n );\n\n const appActivations$ = this.reloadProducts$$.pipe(\n switchMap(() => this.accountID$),\n withLatestFrom(this.partnerId$),\n switchMap(([accountId, partnerId]) => this.listActiveProducts(accountId, partnerId)),\n map((acc) => this.appActivationsToActivations(acc)),\n publishReplay(1),\n refCount(),\n );\n\n const addonActivations$ = this.reloadProducts$$.pipe(\n switchMap(() => {\n return combineLatest([appActivations$, this.accountID$]).pipe(\n map(([appActivations, accountID]) =>\n appActivations.map((act) => {\n return this.accountsService\n .listAddonActivations(accountID, act.appId)\n .pipe(map((resp) => resp.activations || []));\n }),\n ),\n switchMap(\n (responses: Observable[]): Observable =>\n forkJoin(...responses).pipe(\n // flatten the array of arrays\n map((arrays) => [].concat([], ...arrays)),\n ),\n ),\n map((act) => this.addonActivationsToActivations(act)),\n startWith([]),\n );\n }),\n publishReplay(1),\n refCount(),\n );\n\n this.editionsMap$ = this.reloadProducts$$.pipe(\n switchMap(() => {\n return combineLatest([appActivations$, this.marketplaceAppService.apps$]).pipe(\n map(([appActivations, apps]) => {\n const appIds = appActivations.map((appActivation) => appActivation.appId);\n return appIds.filter((appId) => apps.find((a) => a.appId === appId && a.usesEditions));\n }),\n switchMap((appIds) => {\n if (appIds && appIds.length > 0) {\n return this.editionsService.getEditionsForApps(appIds);\n }\n return of(new Map() as ProductEditionMap);\n }),\n );\n }),\n publishReplay(1),\n refCount(),\n );\n\n this.activations$ = this.reloadProducts$$.pipe(\n switchMap(() => {\n return combineLatest([appActivations$, addonActivations$, accountDates$, this.editionsMap$]).pipe(\n map(([appActivations, addonActivations, accountDates, editionsMap]) => {\n const editionedAppActivations = appActivations.map((activation) =>\n this.addEmptyEditionIdsToActivationsIfAppUsesEditions(activation, editionsMap),\n );\n const activations = editionedAppActivations\n .concat(addonActivations)\n .sort(this.compareActivations)\n .map((act) => mergeActivationsAndDates(act, accountDates));\n return activations;\n }),\n );\n }),\n shareReplay(1),\n );\n }\n\n getAppStatusesForBusiness(\n businessId: string,\n filters?: ListAppAndAddonActivationStatusFilter,\n ): Observable {\n return this.accountsService\n .listAppsAndAddonsActivationStatusesForBusiness(businessId, filters)\n .pipe(map((statuses) => (statuses ? statuses : [])));\n }\n\n private loadAccountDetails(account: Account, mask?: string[]): Observable {\n if (!account) {\n return of(null);\n }\n return merge(\n this.taxonomyService.getTaxonomyFromTaxonomyId(account.tax_ids).pipe(\n map((t) => ({ taxonomy: t })),\n catchError(() => of({ taxonomy: '' })),\n ),\n this.salespersonService.getSalesperson(account.sales_person_id, account.partner_id).pipe(\n map((s) => ({ salesperson: s })),\n take(1),\n catchError(() => of({ salesperson: null })),\n ),\n this.loadUsers(account.account_group_id, account.partner_id, mask).pipe(\n tap((u) => this.users$$.next(u)),\n switchMap(() => EMPTY),\n ), // Deprecated [users] in accountDetails\n this.fileGroupService.getFileGroups(account.account_group_id, account.partner_id).pipe(\n map((f) => ({ fileGroups: f || [] })),\n catchError(() => of({ fileGroups: [] })),\n ),\n ).pipe(scan((acc: AccountDetails, cur: any) => ({ ...acc, ...cur }), { account }));\n }\n\n setCurrentAccountID(accountGroupId: string, refresh = true, userMask: string[] = []): void {\n if (refresh || this.accountID$$.getValue() !== accountGroupId) {\n this._userMask = userMask;\n this.accountID$$.next(accountGroupId);\n }\n }\n\n public get accountID$(): Observable {\n return this._accountID$;\n }\n\n public get accountDetails$(): Observable {\n return combineLatest([this.accountDetails$$.asObservable().pipe(filter((acc) => acc !== null)), this.users$]).pipe(\n map(([accountDetails, users]) => ({\n ...accountDetails,\n users,\n })),\n );\n }\n\n public clearAccountDetails(): void {\n this.accountDetails$$.next(null);\n }\n\n public get users$(): Observable {\n return this._users$;\n }\n\n public get loadingUsers$(): Observable {\n return this._loadingUsers$;\n }\n\n public getAccount(accountGroupId: string): Observable {\n const accountGroup$ = this.accountGroupService\n .get(\n accountGroupId,\n new ProjectionFilter({\n napData: true,\n legacyProductDetails: true,\n accountGroupExternalIdentifiers: true,\n snapshotReports: true,\n additionalCompanyInfo: true,\n }),\n )\n .pipe(publishReplay(1), refCount());\n const sscDomain$ = accountGroup$.pipe(\n switchMap((accountGroup) => {\n if (accountGroup?.externalIdentifiers?.partnerId) {\n return this.domainService.getDomainByIdentifier(\n `/application/ST/partner/${accountGroup.externalIdentifiers.partnerId}`,\n );\n } else {\n return of(null);\n }\n }),\n map((resp) => {\n return resp?.primary?.domain;\n }),\n take(1),\n publishReplay(1),\n refCount(),\n );\n\n return combineLatest([accountGroup$, sscDomain$]).pipe(\n catchError(() => this.errorHandler('Cannot get account')),\n map(([result, domain]) => (result ? Account.AccountFromAccountGroup(result, domain) : null)),\n );\n }\n\n loadUsers(accountGroupId: string, partnerId: string, mask?: string[]): Observable {\n this.loadingUsers$$.next(true);\n const url = '/_ajax/v1/users/';\n const opts = {\n params: {\n pid: partnerId,\n agid: accountGroupId,\n mask: [],\n },\n };\n if (mask !== undefined && mask !== null) {\n opts.params.mask = mask;\n }\n return this.http.get<{ data: any }>(url, opts).pipe(\n take(1),\n map((response) => response.data.map((userData) => new User(userData))),\n catchError(() => this.errorHandler('Cannot load users', [])),\n finalize(() => this.loadingUsers$$.next(false)),\n );\n }\n\n addUserToAccount(accountGroupId: string, user: User): void {\n const url = '/_ajax/v1/associate-user-with-account-group/';\n\n this.partnerId$\n .pipe(\n first(),\n map((partnerId) => ({ accountGroupId, partnerId, userId: user.userId })),\n switchMap((body) => this.http.post<{ data: any }>(url, body)),\n withLatestFrom(this.users$),\n )\n .subscribe(\n ([_, users]) => {\n this.users$$.next([...(users || []).filter((u) => u.userId !== user.userId), user]);\n this.snackbarService.openSuccessSnack('User Added');\n },\n () => this.snackbarService.openErrorSnack('Cannot add user to account'),\n );\n }\n\n addUsersToAccount(partnerId: string, accountGroupId: string, usersToAdd: User[]): Observable {\n const url = '/_ajax/v1/associate-user-with-account-group/';\n const requests = usersToAdd.map((user) => this.http.post(url, { accountGroupId, partnerId, userId: user.userId }));\n\n return forkJoin(requests).pipe(\n tap(() => {\n usersToAdd.map((user) =>\n this.users$$.next([...(this.users$$.value || []).filter((u) => u.userId !== user.userId), user]),\n );\n this.snackbarService.openSuccessSnack(\n `${usersToAdd.length} user${usersToAdd.length > 1 ? 's' : ''} added to account.`,\n );\n }),\n catchError(() => {\n this.snackbarService.openErrorSnack('Something went wrong when adding users. Refresh the page and try again.');\n return of({});\n }),\n );\n }\n\n getUserAssociationsForDeletion(accountGroupId: string): Observable {\n return this.http\n .get<{ data: any }>('/_ajax/v1/get-user-associations-for-deletion/', {\n params: { accountGroupId: accountGroupId },\n })\n .pipe(\n map((res) => res.data),\n take(1),\n );\n }\n\n removeUserFromAccount(accountGroupId: string, userId: string): void {\n const url = '/_ajax/v1/delete-user-association/?accountGroupId=' + accountGroupId + '&userId=' + userId;\n this.http\n .get<{ data: any }>(url)\n .pipe(withLatestFrom(this.users$))\n .subscribe(\n ([_, users]) => {\n this.snackbarService.openSuccessSnack('User Removed');\n this.users$$.next(users.filter((user) => user.userId !== userId));\n },\n () => this.snackbarService.openErrorSnack('Could not remove user. Please try again'),\n );\n }\n\n removeAccountFromAccountGroup(\n accountGroupId: string,\n accountId: string,\n productId: string,\n productName: string,\n ): Observable {\n const url = '/_ajax/v1/remove-account/';\n const body = { agid: accountGroupId, account_id: accountId, product_id: productId, product_name: productName };\n return this.http.post(url, body);\n }\n\n cancelAddon(\n businessId: string,\n appId: string,\n addonId: string,\n activationId: string,\n partnerId: string,\n deactivationInfo: Blame,\n ): Observable {\n return this.accountsService.deactivateAddon(businessId, appId, addonId, activationId, partnerId, deactivationInfo);\n }\n\n immediatelyDeactivateAddon(\n businessId: string,\n appId: string,\n addonId: string,\n activationId: string,\n partnerId: string,\n deactivationInfo: Blame,\n ): Observable {\n return this.accountsService.deactivateAddon(\n businessId,\n appId,\n addonId,\n activationId,\n partnerId,\n deactivationInfo,\n DeactivationType.DEACTIVATION_TYPE_IMMEDIATE,\n );\n }\n\n undoCancel(appId: string, businessId: string, activationId: string, undoInfo: Blame): Observable {\n return this.accountsService.UndoCancel(appId, businessId, activationId, undoInfo);\n }\n\n //XXX for obvious reasons, get rid of this, make getOrderFormSubmission return what we need, and make sure we don't break existing users\n getFullOrderFormSubmission(productId: string, orderFormSubmissionId: string): Observable {\n //XXX need to get the right actually complete object type that contains the full result data\n const url = '/_ajax/v1/account/order-form-submission/';\n const params = {\n partnerId: null, //the api already infers this\n accountGroupId: null, //the api already infers this XXX: perhaps the api should be updated, or another thin wrapper made in the backend\n productId: productId,\n orderFormSubmissionId: orderFormSubmissionId,\n };\n\n return this.http.get<{ data: any }>(url, { params }).pipe(\n map(({ data }) => {\n data.customFields.forEach((element) => {\n if (element.field_type === 'text') {\n Object.keys(element).forEach((key) => {\n element[key] = element[key] ? element[key].toString() : '';\n });\n }\n });\n return data;\n }),\n );\n }\n\n getOrderFormSubmission(\n partnerId: string,\n accountGroupId: string,\n productId: string,\n orderFormSubmissionId?: string,\n ): Observable {\n if (\n !orderFormSubmissionId &&\n !productId.toUpperCase().startsWith('MP-') &&\n !productId.toUpperCase().startsWith('A-')\n ) {\n return of(\n new OrderFormSubmission({\n commonFields: [],\n customFields: [],\n }),\n );\n }\n const url = '/_ajax/v1/account/order-form-submission/';\n const params = {\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n productId: productId,\n orderFormSubmissionId: orderFormSubmissionId || '',\n };\n\n return this.http\n .get<{\n data: {\n common_fields: OrderFormSubmissionField;\n custom_fields: OrderFormSubmissionField;\n };\n }>(url, {\n params: params,\n })\n .pipe(\n map((res) => res.data),\n map(\n (data) =>\n new OrderFormSubmission({\n commonFields: data.common_fields || [],\n customFields: data.custom_fields || [],\n }),\n ),\n );\n }\n\n deactivate(businessId: string, appId: string, deactivationInfo: Blame, activationId: string): Observable {\n return this.accountsService.deactivate(\n businessId,\n appId,\n null,\n null,\n deactivationInfo,\n DeactivationType.DEACTIVATION_TYPE_CANCEL,\n activationId,\n );\n }\n\n listActiveProducts(\n businessId: string,\n partnerId: string,\n cursor?: string,\n pageSize?: number,\n ): Observable {\n return this.accountsService\n .list(businessId, partnerId, cursor, pageSize)\n .pipe(map((listResponse) => listResponse.accounts));\n }\n\n private errorHandler(errmsg: string, errorValue: any = null, shouldThrowError = false): Observable {\n this.snackbarService.openErrorSnack(errmsg);\n return shouldThrowError ? throwError(errmsg) : of(errorValue);\n }\n\n listActivationsForBusiness(businessId: string, partnerId: string): Observable {\n const accountDates$ = this.accountsService.listAccountDates(businessId, '', 1000);\n\n const appActivations$ = this.listActiveProducts(businessId, partnerId).pipe(\n map((acc) => this.appActivationsToActivations(acc)),\n );\n\n const addonActivations$ = appActivations$.pipe(\n map((appActivations) =>\n appActivations.map((act) => {\n return this.accountsService\n .listAddonActivations(businessId, act.appId)\n .pipe(map((resp) => resp.activations || []));\n }),\n ),\n switchMap((responses: Observable[]): Observable => {\n if (responses.length === 0) {\n return of([]);\n }\n return forkJoin(...responses).pipe(\n // flatten the array of arrays\n map((arrays) => [].concat([], ...arrays)),\n );\n }),\n map((act) => this.addonActivationsToActivations(act)),\n );\n\n return combineLatest([appActivations$, addonActivations$, accountDates$]).pipe(\n map(([appActivations, addonActivations, accountDates]) => {\n const activations = appActivations\n .concat(addonActivations)\n .sort(this.compareActivations)\n .map((act) => mergeActivationsAndDates(act, accountDates));\n return activations;\n }),\n );\n }\n\n listPendingActivationsForBusiness(businessId: string): Observable {\n return this.accountsService.listPendingActivationsForBusiness(businessId, '', 1000).pipe(\n map((listResponse) => listResponse.pendingActivations || []),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n dismissPendingActivation(pending: {\n businessId: string;\n appId: string;\n addonId?: string;\n activationId: string;\n }): Observable {\n return this.accountsService.dismissPendingActivation(\n pending.activationId,\n null,\n pending.businessId,\n pending.appId,\n pending.addonId,\n );\n }\n\n /*\n * Check if this account is being served with the old non-marketplace LD, or marketplace LD.\n * */\n // TODO: move this off of SMB-account-specific class?\n isUsingMarketplaceLD(): Observable {\n let listingDistributionAddonIds = [];\n switch (this.environmentService.getEnvironment()) {\n case Environment.LOCAL:\n case Environment.DEMO:\n listingDistributionAddonIds = [...LISTING_DISTRIBUTION_ADDON_IDS_DEMO];\n break;\n case Environment.PROD:\n listingDistributionAddonIds = [...LISTING_DISTRIBUTION_ADDON_IDS_PROD];\n break;\n }\n\n return this.partnerId$.pipe(\n take(1),\n switchMap((partnerId) => this.appService.areAppsDistributedToPartner(partnerId, listingDistributionAddonIds)),\n map((appDistribution) => appDistribution.some((ad) => ad.isDistributed === true)),\n shareReplay(1),\n );\n }\n\n reloadProducts(): void {\n this.reloadProducts$$.next(null);\n }\n\n private compareActivations(a: Activation, b: Activation): number {\n if (a.appId < b.appId) {\n return -1;\n }\n if (a.appId > b.appId) {\n return 1;\n }\n // Handle No Addon ID\n if (!a.addonId && !!b.addonId) {\n return -1;\n }\n if (!!a.addonId && !b.addonId) {\n return 1;\n }\n\n if (a.addonId < b.addonId) {\n return -1;\n }\n if (a.addonId > b.addonId) {\n return 1;\n }\n if (a.activation < b.activation) {\n return -1;\n }\n if (a.activation > b.activation) {\n return 1;\n }\n return 0;\n }\n\n private appActivationsToActivations(accounts: AccountProductDetails[]): Activation[] {\n if (!accounts) {\n return [];\n }\n return accounts.map((acc) => ({ ...acc, appId: this.getAppId(acc) }));\n }\n\n private getAppId(account: AccountProductDetails): string {\n if (account.productId === 'MP') {\n return account.appId;\n } else if (account.productId === 'CP') {\n return account.accountId;\n } else {\n return account.productId;\n }\n }\n\n private addonActivationsToActivations(activations: AddonActivation[]): Activation[] {\n if (!activations) {\n return [];\n }\n const now = new Date();\n return activations\n .filter((act) => !act.deactivated || act.deactivated > now)\n .map((a) => ({ ...a, activation: a.activated, deactivation: a.deactivated }));\n }\n\n getMultiActivations(activationIdentifiers: ActivationIdentifier[]): Observable {\n const req: SDKActivationIdentifier[] = [];\n for (const activationIdentifier of activationIdentifiers) {\n req.push(\n new SDKActivationIdentifier({\n businessId: activationIdentifier.accountGroupId,\n appId: activationIdentifier.appId,\n activationId: activationIdentifier.activationId,\n }),\n );\n }\n return this.accountsService.getMulti(req);\n }\n\n addEmptyEditionIdsToActivationsIfAppUsesEditions(activation: Activation, editionsMap: ProductEditionMap): Activation {\n const { appId } = activation;\n const editionsEntry = editionsMap.get(appId);\n\n if (activation.editionId) {\n if (activation.deactivationIsEditionChange) {\n if (!activation.deactivationNewEditionId && editionsEntry && checkForEditionWithEmptyStringId(editionsEntry)) {\n activation.deactivationNewEditionId = '';\n }\n }\n } else if (editionsEntry && checkForEditionWithEmptyStringId(editionsEntry)) {\n activation.editionId = '';\n }\n\n return activation;\n }\n}\n\nexport function mergeActivationsAndDates(act: Activation, accountDates: AccountDates[]): Activation {\n if (!accountDates || accountDates.length < 1) {\n return act;\n }\n const date =\n accountDates.find((item) => item.activationId === act.activationId) ||\n accountDates.find((item) => item.appId === act.appId && item.addonId === act.addonId);\n if (date) {\n act.anniversaryDate = date.anniversaryDate;\n act.commitmentDate = date.commitmentDate;\n if (!act.deactivation || act.deactivation.getFullYear() <= 1900) {\n act.deactivation = date.pendingDeactivation;\n }\n }\n return act;\n}\n"], "mappings": "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", "names": ["Account", "constructor", "data", "Object", "keys", "map", "property", "fullAddress", "address", "city", "state", "country", "zip", "filter", "part", "join", "AccountFromAccountGroup", "accountGroup", "sscDomain", "accountGroupId", "account_group_id", "company_name", "napData", "companyName", "address2", "work_number", "workNumber", "call_tracking_number", "callTrackingNumber", "website", "partner_id", "externalIdentifiers", "partnerId", "market_id", "marketId", "customer_identifier", "customerIdentifier", "tax_ids", "taxIds", "vcategory_ids", "vCategoryIds", "sales_person_id", "salesPersonId", "snapshot_listing_scan_url", "admin_notes", "legacyProductDetails", "adminNotes", "tags", "action_lists", "actionLists", "additional_sales_person_ids", "additionalSalesPersonIds", "timezone", "created", "updated", "FileGroup", "constructor", "data", "Object", "keys", "map", "key", "FileGroupService", "constructor", "apiService", "productService", "businessService", "cursorSubject", "BehaviorSubject", "fileGroupSubject", "cursor", "asObservable", "getFileGroups", "accountGroupId", "partnerId", "next", "cursorValue", "url", "loadFileGroups", "subscribe", "fileGroups", "getMoreFileGroups", "getValue", "get", "pipe", "switchMap", "resp", "feed_data", "map", "item", "FileGroup", "fileGroups$", "observableOf", "product$", "products", "combineLatest", "skipWhile", "length", "setUploadedByFromProducts", "fileGroup", "app_id", "uploadedBy", "product", "find", "thisProduct", "product_id", "name", "deleteFileGroup", "deleteFile", "file_group_id", "_", "filter", "fg", "\u0275\u0275inject", "ApiService", "ProductService", "AccountService", "factory", "\u0275fac", "providedIn", "_FileGroupService", "OrderFormSubmission", "constructor", "data", "commonFields", "customFields", "Object", "assign", "AccountService", "constructor", "http", "partnerId$", "salespersonService", "taxonomyService", "accountsService", "fileGroupService", "appService", "environmentService", "editionsService", "marketplaceAppService", "accountGroupService", "domainService", "snackbarService", "accountID$$", "BehaviorSubject", "accountDetails$$", "users$$", "_users$", "asObservable", "loadingUsers$$", "_loadingUsers$", "reloadProducts$$", "_accountID$", "pipe", "skipWhile", "id", "_userMask", "account$", "accountID$", "account", "tap", "accountId", "getValue", "account_group_id", "next", "Account", "switchMap", "getAccount", "accountMarketId$", "filter", "map", "acc", "market_id", "loadAccountDetails", "subscribe", "accountDetails", "err", "console", "log", "accountDates$", "combineLatest", "_", "listAccountDates", "catchError", "publishReplay", "refCount", "appActivations$", "withLatestFrom", "partnerId", "listActiveProducts", "appActivationsToActivations", "addonActivations$", "appActivations", "accountID", "act", "listAddonActivations", "appId", "resp", "activations", "responses", "forkJoin", "arrays", "concat", "addonActivationsToActivations", "startWith", "editionsMap$", "apps$", "apps", "appActivation", "find", "a", "usesEditions", "appIds", "length", "getEditionsForApps", "of", "Map", "activations$", "addonActivations", "accountDates", "editionsMap", "activation", "addEmptyEditionIdsToActivationsIfAppUsesEditions", "sort", "compareActivations", "mergeActivationsAndDates", "shareReplay", "getAppStatusesForBusiness", "businessId", "filters", "listAppsAndAddonsActivationStatusesForBusiness", "statuses", "mask", "merge", "getTaxonomyFromTaxonomyId", "tax_ids", "t", "taxonomy", "getSalesperson", "sales_person_id", "partner_id", "s", "salesperson", "take", "loadUsers", "u", "EMPTY", "getFileGroups", "f", "fileGroups", "scan", "cur", "__spreadValues", "setCurrentAccountID", "accountGroupId", "refresh", "userMask", "accountDetails$", "users$", "users", "__spreadProps", "clearAccountDetails", "loadingUsers$", "accountGroup$", "get", "ProjectionFilter", "napData", "legacyProductDetails", "accountGroupExternalIdentifiers", "snapshotReports", "additionalCompanyInfo", "sscDomain$", "accountGroup", "externalIdentifiers", "getDomainByIdentifier", "primary", "domain", "errorHandler", "result", "AccountFromAccountGroup", "url", "opts", "params", "pid", "agid", "response", "data", "userData", "User", "finalize", "addUserToAccount", "user", "first", "userId", "body", "post", "openSuccessSnack", "openErrorSnack", "addUsersToAccount", "usersToAdd", "requests", "value", "getUserAssociationsForDeletion", "res", "removeUserFromAccount", "removeAccountFromAccountGroup", "productId", "productName", "account_id", "product_id", "product_name", "cancelAddon", "addonId", "activationId", "deactivationInfo", "deactivateAddon", "immediatelyDeactivateAddon", "DeactivationType", "DEACTIVATION_TYPE_IMMEDIATE", "undoCancel", "undoInfo", "UndoCancel", "getFullOrderFormSubmission", "orderFormSubmissionId", "customFields", "forEach", "element", "field_type", "Object", "keys", "key", "toString", "getOrderFormSubmission", "toUpperCase", "startsWith", "OrderFormSubmission", "commonFields", "common_fields", "custom_fields", "deactivate", "DEACTIVATION_TYPE_CANCEL", "cursor", "pageSize", "list", "listResponse", "accounts", "errmsg", "errorValue", "shouldThrowError", "throwError", "listActivationsForBusiness", "listPendingActivationsForBusiness", "pendingActivations", "bufferSize", "dismissPendingActivation", "pending", "isUsingMarketplaceLD", "listingDistributionAddonIds", "getEnvironment", "Environment", "LOCAL", "DEMO", "LISTING_DISTRIBUTION_ADDON_IDS_DEMO", "PROD", "LISTING_DISTRIBUTION_ADDON_IDS_PROD", "areAppsDistributedToPartner", "appDistribution", "some", "ad", "isDistributed", "reloadProducts", "b", "getAppId", "now", "Date", "deactivated", "activated", "deactivation", "getMultiActivations", "activationIdentifiers", "req", "activationIdentifier", "push", "SDKActivationIdentifier", "getMulti", "editionsEntry", "editionId", "deactivationIsEditionChange", "deactivationNewEditionId", "checkForEditionWithEmptyStringId", "\u0275\u0275inject", "HttpClient", "SalespersonService", "TaxonomyService", "AccountsService", "FileGroupService", "MarketplaceAppService", "EnvironmentService", "AppEditionService", "AccountGroupService", "DomainService", "SnackbarService", "factory", "\u0275fac", "providedIn", "_AccountService", "date", "item", "anniversaryDate", "commitmentDate", "getFullYear", "pendingDeactivation"] }