{ "version": 3, "sources": ["libs/campaign/src/lib/campaign-list-page/column-components/dialog/confirmation-dialog.component.ts", "libs/campaign/src/lib/campaign-list-page/column-components/dialog/confirmation-dialog.component.html", "libs/campaign/src/lib/campaign-email-builder/page/shared/sms-template-saver.ts"], "sourcesContent": ["import { Component, Inject } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { NgIf } from '@angular/common';\n\n@Component({\n imports: [NgIf, MatButtonModule, MatDialogModule, TranslateModule],\n templateUrl: './confirmation-dialog.component.html',\n styleUrls: ['./confirmation-dialog.component.scss'],\n})\nexport class ConfirmationDialogComponent {\n titlePre = '';\n title = 'CAMPAIGN_DETAILS.CONFIRMATION_DIALOG.DEFAULT.TITLE';\n titlePost = '';\n boldPre = '';\n message = '';\n boldPost = '';\n confirmButtonText = 'CAMPAIGN_DETAILS.CONFIRMATION_DIALOG.DEFAULT.CONFIRM';\n cancelButtonText = 'COMMON.ACTION_LABELS.CANCEL';\n warn = false;\n\n constructor(\n @Inject(MAT_DIALOG_DATA) private data: any,\n private dialogRef: MatDialogRef,\n ) {\n if (data) {\n this.titlePre = data.titlePre || this.titlePre;\n this.title = data.title || this.title;\n this.titlePost = data.titlePost || this.titlePost;\n this.boldPre = data.pre || this.boldPre;\n this.message = data.message || this.message;\n this.boldPost = data.post || this.boldPost;\n this.warn = data.warn || this.warn;\n if (data.buttonText) {\n this.confirmButtonText = data.buttonText.confirm || this.confirmButtonText;\n this.cancelButtonText = data.buttonText.decline || this.cancelButtonText;\n }\n }\n }\n\n onConfirmClick(): void {\n this.dialogRef.close(true);\n }\n}\n", "\n {{ titlePre | translate }}\n {{ title | translate }}\n {{ titlePost | translate }}\n\n\n

\n {{ boldPre | translate }}\n \n
\n
\n
\n \n \n
\n
\n
\n {{ boldPost | translate }}\n

\n
\n\n \n \n \n\n", "import { Inject, Injectable } from '@angular/core';\nimport { TemplateReferenceInterface, TemplatesService as CampaignsTemplateService } from '@vendasta/campaigns';\nimport { AppNamespace, OwnerType } from '@vendasta/email-builder';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { ObservableWorkState, WorkStates } from '@vendasta/rx-utils/work-state';\nimport { Observable, catchError, of, throwError } from 'rxjs';\nimport { map, switchMap, take } from 'rxjs/operators';\nimport { v4 as uuidv4 } from 'uuid';\nimport { CampaignData, SMSContentData } from '../../../campaign-details-page/campaign-details/interface';\nimport { Context } from './context';\nimport { TemplatesService } from '@vendasta/templates';\n\nexport interface SaveResult {\n templateId: string;\n campaignStepId: string;\n campaign?: SMSContentData;\n}\n\nexport interface TemplateService {\n createNewTemplate$(\n ownerType: OwnerType,\n ownerId: string,\n namespace: AppNamespace,\n templateId: string,\n data: SMSContentData,\n html: string,\n parent?: TemplateReferenceInterface,\n ): Observable;\n\n updateExistingTemplate$(\n ownerType: OwnerType,\n ownerId: string,\n namespace: AppNamespace,\n templateId: string,\n data: SMSContentData,\n ): Observable;\n\n validateTemplate(data: SMSContentData): boolean;\n}\n\nexport interface TemplateIDGenerator {\n generateSMS(): string;\n}\n\n@Injectable({ providedIn: 'root' })\nclass UUIDTemplateIDGenerator implements TemplateIDGenerator {\n generateSMS(): string {\n return `SMS-BUILDER-${uuidv4()}`;\n }\n}\n\n@Injectable()\nexport class SMSTemplateSaver {\n private readonly workState$ = new ObservableWorkState();\n public readonly workState: WorkStates = this.workState$;\n\n constructor(\n @Inject(UUIDTemplateIDGenerator) private readonly idGenerator: TemplateIDGenerator = new UUIDTemplateIDGenerator(),\n private readonly snackbarService: SnackbarService,\n private templatesService: TemplatesService,\n private campaignsTemplateService: CampaignsTemplateService,\n ) {}\n\n save$(\n ownerId: string,\n smsTemplateContext: Context,\n campaignId: string,\n template: SMSContentData,\n campaignStepId?: string,\n ): Observable {\n return this.doSave(template, campaignId, campaignStepId);\n }\n\n private doSave(template: SMSContentData, campaignId: string, campaignStepId?: string): Observable {\n if (!template) {\n return throwError('no sms content data');\n }\n if (template.context?.isNew()) {\n return this.createNew(template);\n } else {\n return this.updateExisting(campaignId, campaignStepId, template);\n }\n }\n\n private updateExisting(\n campaignId: string,\n campaignStepID: string,\n updateArgs: SMSContentData,\n ): Observable {\n return this.campaignsTemplateService\n .updateSMSTemplate(\n campaignId,\n updateArgs.context.getExistingTemplateId(),\n updateArgs.name || '',\n updateArgs.message || '',\n )\n .pipe(\n catchError((err) => {\n this.snackbarService.openErrorSnack('EMAIL_BUILDER.SAVING.GENERIC_ERROR');\n throw new Error(err);\n }),\n switchMap(() => {\n const campaignSMSData: CampaignData = {} as CampaignData;\n campaignSMSData.name = updateArgs.name || '';\n return of({\n templateId: updateArgs.context.getExistingTemplateId(),\n campaignStepId: campaignStepID,\n campaign: campaignSMSData,\n } as SMSContentData);\n }),\n );\n }\n\n private createNew(createArgs: SMSContentData): Observable {\n const templateId = this.idGenerator.generateSMS();\n return this.templatesService\n .create(AppNamespace.CAMPAIGNS, {\n templateId: templateId,\n name: createArgs.name || '',\n content: createArgs.message || '',\n })\n .pipe(\n take(1),\n catchError((err) => {\n this.snackbarService.openErrorSnack('EMAIL_BUILDER.SAVING.GENERIC_ERROR');\n throw new Error(err);\n }),\n map((ebTemplateSucceeded) => {\n if (!ebTemplateSucceeded) {\n return {} as SMSContentData;\n }\n\n return {\n templateId: templateId || '',\n } as SMSContentData;\n }),\n );\n }\n}\n"], "mappings": "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", "names": ["\u0275\u0275elementContainerStart", "\u0275\u0275element", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onConfirmClick", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "confirmButtonText", "_r3", "ConfirmationDialogComponent", "init_confirmation_dialog_component", "__esmMin", "init_dialog", "init_ngx_translate_core", "init_button", "init_common", "constructor", "data", "dialogRef", "titlePre", "title", "titlePost", "boldPre", "message", "boldPost", "cancelButtonText", "warn", "pre", "post", "buttonText", "confirm", "decline", "close", "\u0275\u0275directiveInject", "MAT_DIALOG_DATA", "MatDialogRef", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "ConfirmationDialogComponent_ng_container_13_Template", "ConfirmationDialogComponent_ng_container_16_Template", "ConfirmationDialogComponent_button_24_Template", "ConfirmationDialogComponent_button_25_Template", "\u0275\u0275textInterpolate", "\u0275\u0275property", "\u0275\u0275sanitizeHtml", "NgIf", "MatButtonModule", "MatButton", "MatDialogModule", "MatDialogClose", "MatDialogTitle", "MatDialogActions", "MatDialogContent", "TranslateModule", "TranslatePipe", "styles", "UUIDTemplateIDGenerator", "SMSTemplateSaver", "init_sms_template_saver", "__esmMin", "init_vendasta_email_builder", "init_src", "init_esm", "init_operators", "init_esm_browser", "generateSMS", "uuidv4", "factory", "\u0275fac", "providedIn", "constructor", "idGenerator", "snackbarService", "templatesService", "campaignsTemplateService", "workState$", "ObservableWorkState", "workState", "save$", "ownerId", "smsTemplateContext", "campaignId", "template", "campaignStepId", "doSave", "context", "isNew", "createNew", "updateExisting", "throwError", "campaignStepID", "updateArgs", "updateSMSTemplate", "getExistingTemplateId", "name", "message", "pipe", "catchError", "err", "openErrorSnack", "Error", "switchMap", "campaignSMSData", "of", "templateId", "campaign", "createArgs", "create", "AppNamespace", "CAMPAIGNS", "content", "take", "map", "ebTemplateSucceeded", "\u0275\u0275inject", "SnackbarService", "TemplatesService"] }