UNPKG

@spartacus/storefront

Version:

Spartacus Storefront is a package that you can include in your application, which allows you to add default storefront features.

38 lines 12.1 kB
import { Component } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "../../../../shared/components/modal/modal.service"; import * as i2 from "@spartacus/core"; import * as i3 from "../../../../shared/components/spinner/spinner.component"; import * as i4 from "@angular/common"; import * as i5 from "@angular/router"; export class StockNotificationDialogComponent { constructor(modalService, interestsService) { this.modalService = modalService; this.interestsService = interestsService; this.enabledPrefs = []; } close() { this.modalService.dismissActiveModal(); } ngOnDestroy() { if (this.subscribeSuccess$) { this.subscribeSuccess$ .subscribe((success) => { if (success) { this.interestsService.resetAddInterestState(); } }) .unsubscribe(); } } } StockNotificationDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: StockNotificationDialogComponent, deps: [{ token: i1.ModalService }, { token: i2.UserInterestsService }], target: i0.ɵɵFactoryTarget.Component }); StockNotificationDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: StockNotificationDialogComponent, selector: "cx-stock-notification-dialog", ngImport: i0, template: "<div class=\"cx-dialog-header modal-header\">\n <div class=\"cx-dialog-title modal-title\">\n {{ 'stockNotification.subscriptionDialog.header' | cxTranslate }}\n </div>\n <button\n type=\"button\"\n [attr.aria-label]=\"'common.close' | cxTranslate\"\n class=\"close\"\n tabindex=\"-1\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</div>\n\n<ng-container *ngIf=\"subscribeSuccess$ | async; else loading\">\n <div class=\"cx-dialog-body modal-body\">\n <div class=\"container\">\n <p>\n {{\n 'stockNotification.subscriptionDialog.notifiedPrefix' | cxTranslate\n }}\n </p>\n <p *ngFor=\"let preference of enabledPrefs\" class=\"channels\">\n <span>{{ preference.channel }}</span\n ><span *ngIf=\"preference.value\">{{ ': ' + preference.value }}</span>\n </p>\n <p>\n {{\n 'stockNotification.subscriptionDialog.notifiedSuffix' | cxTranslate\n }}\n </p>\n <p>\n {{\n 'stockNotification.subscriptionDialog.manageChannelsPrefix'\n | cxTranslate\n }}\n <a\n (click)=\"close()\"\n [routerLink]=\"['/my-account/notification-preference']\"\n class=\"link-prefs\"\n >\n {{\n 'stockNotification.subscriptionDialog.manageChannelsLink'\n | cxTranslate\n }}</a\n >\n {{\n 'stockNotification.subscriptionDialog.manageChannelsSuffix'\n | cxTranslate\n }}\n </p>\n\n <p>\n {{\n 'stockNotification.subscriptionDialog.manageSubscriptionsPrefix'\n | cxTranslate\n }}\n <a\n (click)=\"close()\"\n [routerLink]=\"['/my-account/my-interests']\"\n class=\"link-interests\"\n >\n {{\n 'stockNotification.subscriptionDialog.manageSubscriptionsLink'\n | cxTranslate\n }}</a\n >\n {{\n 'stockNotification.subscriptionDialog.manageSubscriptionsSuffix'\n | cxTranslate\n }}\n </p>\n <div class=\"row\">\n <div class=\"cx-dialog-actions col-sm-12 col-md-3 offset-md-9\">\n <button\n class=\"btn btn-primary btn-block btn-ok\"\n type=\"button\"\n (click)=\"close()\"\n >\n {{ 'stockNotification.subscriptionDialog.okBtn' | cxTranslate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #loading>\n <div class=\"cx-dialog-body modal-body\">\n <p>\n {{ 'stockNotification.subscriptionDialog.subscribing' | cxTranslate }}\n </p>\n <div class=\"cx-dialog-row\">\n <div class=\"col-sm-12\">\n <cx-spinner></cx-spinner>\n </div>\n </div>\n </div>\n</ng-template>\n", components: [{ type: i3.SpinnerComponent, selector: "cx-spinner" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "cxTranslate": i2.TranslatePipe, "async": i4.AsyncPipe } }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: StockNotificationDialogComponent, decorators: [{ type: Component, args: [{ selector: 'cx-stock-notification-dialog', templateUrl: './stock-notification-dialog.component.html', }] }], ctorParameters: function () { return [{ type: i1.ModalService }, { type: i2.UserInterestsService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbm90aWZpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zdG9yZWZyb250bGliL2Ntcy1jb21wb25lbnRzL3Byb2R1Y3Qvc3RvY2stbm90aWZpY2F0aW9uL3N0b2NrLW5vdGlmaWNhdGlvbi1kaWFsb2cvc3RvY2stbm90aWZpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zdG9yZWZyb250bGliL2Ntcy1jb21wb25lbnRzL3Byb2R1Y3Qvc3RvY2stbm90aWZpY2F0aW9uL3N0b2NrLW5vdGlmaWNhdGlvbi1kaWFsb2cvc3RvY2stbm90aWZpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBU3JELE1BQU0sT0FBTyxnQ0FBZ0M7SUFJM0MsWUFDVSxZQUEwQixFQUMxQixnQkFBc0M7UUFEdEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFzQjtRQUpoRCxpQkFBWSxHQUE2QixFQUFFLENBQUM7SUFLekMsQ0FBQztJQUVKLEtBQUs7UUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCO2lCQUNuQixTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDckIsSUFBSSxPQUFPLEVBQUU7b0JBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLENBQUM7aUJBQy9DO1lBQ0gsQ0FBQyxDQUFDO2lCQUNELFdBQVcsRUFBRSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQzs7NkhBdkJVLGdDQUFnQztpSEFBaEMsZ0NBQWdDLG9FQ1Q3Qyx5MEZBb0dBOzJGRDNGYSxnQ0FBZ0M7a0JBSjVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsV0FBVyxFQUFFLDRDQUE0QztpQkFDMUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uUHJlZmVyZW5jZSwgVXNlckludGVyZXN0c1NlcnZpY2UgfSBmcm9tICdAc3BhcnRhY3VzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N4LXN0b2NrLW5vdGlmaWNhdGlvbi1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3RvY2stbm90aWZpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFN0b2NrTm90aWZpY2F0aW9uRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgc3Vic2NyaWJlU3VjY2VzcyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGVuYWJsZWRQcmVmczogTm90aWZpY2F0aW9uUHJlZmVyZW5jZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE1vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIGludGVyZXN0c1NlcnZpY2U6IFVzZXJJbnRlcmVzdHNTZXJ2aWNlXG4gICkge31cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5kaXNtaXNzQWN0aXZlTW9kYWwoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmliZVN1Y2Nlc3MkKSB7XG4gICAgICB0aGlzLnN1YnNjcmliZVN1Y2Nlc3MkXG4gICAgICAgIC5zdWJzY3JpYmUoKHN1Y2Nlc3MpID0+IHtcbiAgICAgICAgICBpZiAoc3VjY2Vzcykge1xuICAgICAgICAgICAgdGhpcy5pbnRlcmVzdHNTZXJ2aWNlLnJlc2V0QWRkSW50ZXJlc3RTdGF0ZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY3gtZGlhbG9nLWhlYWRlciBtb2RhbC1oZWFkZXJcIj5cbiAgPGRpdiBjbGFzcz1cImN4LWRpYWxvZy10aXRsZSBtb2RhbC10aXRsZVwiPlxuICAgIHt7ICdzdG9ja05vdGlmaWNhdGlvbi5zdWJzY3JpcHRpb25EaWFsb2cuaGVhZGVyJyB8IGN4VHJhbnNsYXRlIH19XG4gIDwvZGl2PlxuICA8YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCInY29tbW9uLmNsb3NlJyB8IGN4VHJhbnNsYXRlXCJcbiAgICBjbGFzcz1cImNsb3NlXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gID5cbiAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mdGltZXM7PC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwic3Vic2NyaWJlU3VjY2VzcyQgfCBhc3luYzsgZWxzZSBsb2FkaW5nXCI+XG4gIDxkaXYgY2xhc3M9XCJjeC1kaWFsb2ctYm9keSBtb2RhbC1ib2R5XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPHA+XG4gICAgICAgIHt7XG4gICAgICAgICAgJ3N0b2NrTm90aWZpY2F0aW9uLnN1YnNjcmlwdGlvbkRpYWxvZy5ub3RpZmllZFByZWZpeCcgfCBjeFRyYW5zbGF0ZVxuICAgICAgICB9fVxuICAgICAgPC9wPlxuICAgICAgPHAgKm5nRm9yPVwibGV0IHByZWZlcmVuY2Ugb2YgZW5hYmxlZFByZWZzXCIgY2xhc3M9XCJjaGFubmVsc1wiPlxuICAgICAgICA8c3Bhbj57eyBwcmVmZXJlbmNlLmNoYW5uZWwgfX08L3NwYW5cbiAgICAgICAgPjxzcGFuICpuZ0lmPVwicHJlZmVyZW5jZS52YWx1ZVwiPnt7ICc6ICcgKyBwcmVmZXJlbmNlLnZhbHVlIH19PC9zcGFuPlxuICAgICAgPC9wPlxuICAgICAgPHA+XG4gICAgICAgIHt7XG4gICAgICAgICAgJ3N0b2NrTm90aWZpY2F0aW9uLnN1YnNjcmlwdGlvbkRpYWxvZy5ub3RpZmllZFN1ZmZpeCcgfCBjeFRyYW5zbGF0ZVxuICAgICAgICB9fVxuICAgICAgPC9wPlxuICAgICAgPHA+XG4gICAgICAgIHt7XG4gICAgICAgICAgJ3N0b2NrTm90aWZpY2F0aW9uLnN1YnNjcmlwdGlvbkRpYWxvZy5tYW5hZ2VDaGFubmVsc1ByZWZpeCdcbiAgICAgICAgICAgIHwgY3hUcmFuc2xhdGVcbiAgICAgICAgfX1cbiAgICAgICAgPGFcbiAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvbXktYWNjb3VudC9ub3RpZmljYXRpb24tcHJlZmVyZW5jZSddXCJcbiAgICAgICAgICBjbGFzcz1cImxpbmstcHJlZnNcIlxuICAgICAgICA+XG4gICAgICAgICAge3tcbiAgICAgICAgICAgICdzdG9ja05vdGlmaWNhdGlvbi5zdWJzY3JpcHRpb25EaWFsb2cubWFuYWdlQ2hhbm5lbHNMaW5rJ1xuICAgICAgICAgICAgICB8IGN4VHJhbnNsYXRlXG4gICAgICAgICAgfX08L2FcbiAgICAgICAgPlxuICAgICAgICB7e1xuICAgICAgICAgICdzdG9ja05vdGlmaWNhdGlvbi5zdWJzY3JpcHRpb25EaWFsb2cubWFuYWdlQ2hhbm5lbHNTdWZmaXgnXG4gICAgICAgICAgICB8IGN4VHJhbnNsYXRlXG4gICAgICAgIH19XG4gICAgICA8L3A+XG5cbiAgICAgIDxwPlxuICAgICAgICB7e1xuICAgICAgICAgICdzdG9ja05vdGlmaWNhdGlvbi5zdWJzY3JpcHRpb25EaWFsb2cubWFuYWdlU3Vic2NyaXB0aW9uc1ByZWZpeCdcbiAgICAgICAgICAgIHwgY3hUcmFuc2xhdGVcbiAgICAgICAgfX1cbiAgICAgICAgPGFcbiAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvbXktYWNjb3VudC9teS1pbnRlcmVzdHMnXVwiXG4gICAgICAgICAgY2xhc3M9XCJsaW5rLWludGVyZXN0c1wiXG4gICAgICAgID5cbiAgICAgICAgICB7e1xuICAgICAgICAgICAgJ3N0b2NrTm90aWZpY2F0aW9uLnN1YnNjcmlwdGlvbkRpYWxvZy5tYW5hZ2VTdWJzY3JpcHRpb25zTGluaydcbiAgICAgICAgICAgICAgfCBjeFRyYW5zbGF0ZVxuICAgICAgICAgIH19PC9hXG4gICAgICAgID5cbiAgICAgICAge3tcbiAgICAgICAgICAnc3RvY2tOb3RpZmljYXRpb24uc3Vic2NyaXB0aW9uRGlhbG9nLm1hbmFnZVN1YnNjcmlwdGlvbnNTdWZmaXgnXG4gICAgICAgICAgICB8IGN4VHJhbnNsYXRlXG4gICAgICAgIH19XG4gICAgICA8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjeC1kaWFsb2ctYWN0aW9ucyBjb2wtc20tMTIgY29sLW1kLTMgb2Zmc2V0LW1kLTlcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2sgYnRuLW9rXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdzdG9ja05vdGlmaWNhdGlvbi5zdWJzY3JpcHRpb25EaWFsb2cub2tCdG4nIHwgY3hUcmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNsb2FkaW5nPlxuICA8ZGl2IGNsYXNzPVwiY3gtZGlhbG9nLWJvZHkgbW9kYWwtYm9keVwiPlxuICAgIDxwPlxuICAgICAge3sgJ3N0b2NrTm90aWZpY2F0aW9uLnN1YnNjcmlwdGlvbkRpYWxvZy5zdWJzY3JpYmluZycgfCBjeFRyYW5zbGF0ZSB9fVxuICAgIDwvcD5cbiAgICA8ZGl2IGNsYXNzPVwiY3gtZGlhbG9nLXJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxuICAgICAgICA8Y3gtc3Bpbm5lcj48L2N4LXNwaW5uZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19