UNPKG

@spartacus/user

Version:

User feature library for Spartacus

31 lines 11.4 kB
import { ChangeDetectionStrategy, Component } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "./update-profile-component.service"; import * as i2 from "@spartacus/storefront"; import * as i3 from "@angular/common"; import * as i4 from "@angular/forms"; import * as i5 from "@angular/router"; import * as i6 from "@spartacus/core"; export class UpdateProfileComponent { constructor(service) { this.service = service; this.form = this.service.form; this.isUpdating$ = this.service.isUpdating$; this.titles$ = this.service.titles$; } onSubmit() { this.service.updateProfile(); } } UpdateProfileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: UpdateProfileComponent, deps: [{ token: i1.UpdateProfileComponentService }], target: i0.ɵɵFactoryTarget.Component }); UpdateProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: UpdateProfileComponent, selector: "cx-update-profile", host: { classAttribute: "user-form" }, ngImport: i0, template: "<cx-spinner class=\"overlay\" *ngIf=\"isUpdating$ | async\"> </cx-spinner>\n\n<form (ngSubmit)=\"onSubmit()\" [formGroup]=\"form\">\n <label>\n <span class=\"label-content\">{{\n 'updateProfileForm.title' | cxTranslate\n }}</span>\n <select formControlName=\"titleCode\" class=\"form-control\">\n <option value=\"\">{{ 'updateProfileForm.none' | cxTranslate }}</option>\n <option *ngFor=\"let title of titles$ | async\" [value]=\"title.code\">\n {{ title.name }}\n </option>\n </select>\n </label>\n <label>\n <span class=\"label-content\">{{\n 'updateProfileForm.firstName.label' | cxTranslate\n }}</span>\n <input\n aria-required=\"true\"\n type=\"text\"\n class=\"form-control\"\n name=\"firstName\"\n placeholder=\"{{\n 'updateProfileForm.firstName.placeholder' | cxTranslate\n }}\"\n formControlName=\"firstName\"\n />\n <cx-form-errors\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n [control]=\"form.get('firstName')\"\n ></cx-form-errors>\n </label>\n\n <label>\n <span class=\"label-content\">{{\n 'updateProfileForm.lastName.label' | cxTranslate\n }}</span>\n <input\n aria-required=\"true\"\n type=\"text\"\n class=\"form-control\"\n name=\"lastName\"\n placeholder=\"{{ 'updateProfileForm.lastName.placeholder' | cxTranslate }}\"\n formControlName=\"lastName\"\n />\n <cx-form-errors\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n [control]=\"form.get('lastName')\"\n ></cx-form-errors>\n </label>\n\n <label>\n <span class=\"label-content\">{{\n 'updateProfileForm.customerId' | cxTranslate\n }}</span>\n <input\n aria-required=\"true\"\n type=\"text\"\n class=\"form-control\"\n name=\"customerId\"\n formControlName=\"customerId\"\n readonly\n />\n <cx-form-errors\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n [control]=\"form.get('lastName')\"\n ></cx-form-errors>\n </label>\n\n <a\n class=\"btn btn-block btn-secondary\"\n [routerLink]=\"{ cxRoute: 'home' } | cxUrl\"\n >\n {{ 'common.cancel' | cxTranslate }}\n </a>\n\n <button class=\"btn btn-block btn-primary\" [disabled]=\"form.disabled\">\n {{ 'common.save' | cxTranslate }}\n </button>\n</form>\n", components: [{ type: i2.SpinnerComponent, selector: "cx-spinner" }, { type: i2.FormErrorsComponent, selector: "cx-form-errors", inputs: ["prefix", "translationParams", "control"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "async": i3.AsyncPipe, "cxTranslate": i6.TranslatePipe, "cxUrl": i6.UrlPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: UpdateProfileComponent, decorators: [{ type: Component, args: [{ selector: 'cx-update-profile', templateUrl: './update-profile.component.html', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'user-form' }, }] }], ctorParameters: function () { return [{ type: i1.UpdateProfileComponentService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXByb2ZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZmVhdHVyZS1saWJzL3VzZXIvcHJvZmlsZS9jb21wb25lbnRzL3VwZGF0ZS1wcm9maWxlL3VwZGF0ZS1wcm9maWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2ZlYXR1cmUtbGlicy91c2VyL3Byb2ZpbGUvY29tcG9uZW50cy91cGRhdGUtcHJvZmlsZS91cGRhdGUtcHJvZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVluRSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQXNCLE9BQXNDO1FBQXRDLFlBQU8sR0FBUCxPQUFPLENBQStCO1FBRTVELFNBQUksR0FBYyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztRQUNwQyxnQkFBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLFlBQU8sR0FBd0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFKVyxDQUFDO0lBTWhFLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQy9CLENBQUM7O21IQVRVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLGdHQ1puQyw4ekVBb0ZBOzJGRHhFYSxzQkFBc0I7a0JBTmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsV0FBVyxFQUFFLGlDQUFpQztvQkFDOUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAc3BhcnRhY3VzL3VzZXIvcHJvZmlsZS9yb290JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVwZGF0ZVByb2ZpbGVDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi91cGRhdGUtcHJvZmlsZS1jb21wb25lbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N4LXVwZGF0ZS1wcm9maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwZGF0ZS1wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHsgY2xhc3M6ICd1c2VyLWZvcm0nIH0sXG59KVxuZXhwb3J0IGNsYXNzIFVwZGF0ZVByb2ZpbGVDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgc2VydmljZTogVXBkYXRlUHJvZmlsZUNvbXBvbmVudFNlcnZpY2UpIHt9XG5cbiAgZm9ybTogRm9ybUdyb3VwID0gdGhpcy5zZXJ2aWNlLmZvcm07XG4gIGlzVXBkYXRpbmckID0gdGhpcy5zZXJ2aWNlLmlzVXBkYXRpbmckO1xuICB0aXRsZXMkOiBPYnNlcnZhYmxlPFRpdGxlW10+ID0gdGhpcy5zZXJ2aWNlLnRpdGxlcyQ7XG5cbiAgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVByb2ZpbGUoKTtcbiAgfVxufVxuIiwiPGN4LXNwaW5uZXIgY2xhc3M9XCJvdmVybGF5XCIgKm5nSWY9XCJpc1VwZGF0aW5nJCB8IGFzeW5jXCI+IDwvY3gtc3Bpbm5lcj5cblxuPGZvcm0gKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgPGxhYmVsPlxuICAgIDxzcGFuIGNsYXNzPVwibGFiZWwtY29udGVudFwiPnt7XG4gICAgICAndXBkYXRlUHJvZmlsZUZvcm0udGl0bGUnIHwgY3hUcmFuc2xhdGVcbiAgICB9fTwvc3Bhbj5cbiAgICA8c2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInRpdGxlQ29kZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCI+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+e3sgJ3VwZGF0ZVByb2ZpbGVGb3JtLm5vbmUnIHwgY3hUcmFuc2xhdGUgfX08L29wdGlvbj5cbiAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHRpdGxlIG9mIHRpdGxlcyQgfCBhc3luY1wiIFt2YWx1ZV09XCJ0aXRsZS5jb2RlXCI+XG4gICAgICAgIHt7IHRpdGxlLm5hbWUgfX1cbiAgICAgIDwvb3B0aW9uPlxuICAgIDwvc2VsZWN0PlxuICA8L2xhYmVsPlxuICA8bGFiZWw+XG4gICAgPHNwYW4gY2xhc3M9XCJsYWJlbC1jb250ZW50XCI+e3tcbiAgICAgICd1cGRhdGVQcm9maWxlRm9ybS5maXJzdE5hbWUubGFiZWwnIHwgY3hUcmFuc2xhdGVcbiAgICB9fTwvc3Bhbj5cbiAgICA8aW5wdXRcbiAgICAgIGFyaWEtcmVxdWlyZWQ9XCJ0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgIG5hbWU9XCJmaXJzdE5hbWVcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJ7e1xuICAgICAgICAndXBkYXRlUHJvZmlsZUZvcm0uZmlyc3ROYW1lLnBsYWNlaG9sZGVyJyB8IGN4VHJhbnNsYXRlXG4gICAgICB9fVwiXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJmaXJzdE5hbWVcIlxuICAgIC8+XG4gICAgPGN4LWZvcm0tZXJyb3JzXG4gICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgYXJpYS1hdG9taWM9XCJ0cnVlXCJcbiAgICAgIFtjb250cm9sXT1cImZvcm0uZ2V0KCdmaXJzdE5hbWUnKVwiXG4gICAgPjwvY3gtZm9ybS1lcnJvcnM+XG4gIDwvbGFiZWw+XG5cbiAgPGxhYmVsPlxuICAgIDxzcGFuIGNsYXNzPVwibGFiZWwtY29udGVudFwiPnt7XG4gICAgICAndXBkYXRlUHJvZmlsZUZvcm0ubGFzdE5hbWUubGFiZWwnIHwgY3hUcmFuc2xhdGVcbiAgICB9fTwvc3Bhbj5cbiAgICA8aW5wdXRcbiAgICAgIGFyaWEtcmVxdWlyZWQ9XCJ0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgIG5hbWU9XCJsYXN0TmFtZVwiXG4gICAgICBwbGFjZWhvbGRlcj1cInt7ICd1cGRhdGVQcm9maWxlRm9ybS5sYXN0TmFtZS5wbGFjZWhvbGRlcicgfCBjeFRyYW5zbGF0ZSB9fVwiXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJsYXN0TmFtZVwiXG4gICAgLz5cbiAgICA8Y3gtZm9ybS1lcnJvcnNcbiAgICAgIGFyaWEtbGl2ZT1cImFzc2VydGl2ZVwiXG4gICAgICBhcmlhLWF0b21pYz1cInRydWVcIlxuICAgICAgW2NvbnRyb2xdPVwiZm9ybS5nZXQoJ2xhc3ROYW1lJylcIlxuICAgID48L2N4LWZvcm0tZXJyb3JzPlxuICA8L2xhYmVsPlxuXG4gIDxsYWJlbD5cbiAgICA8c3BhbiBjbGFzcz1cImxhYmVsLWNvbnRlbnRcIj57e1xuICAgICAgJ3VwZGF0ZVByb2ZpbGVGb3JtLmN1c3RvbWVySWQnIHwgY3hUcmFuc2xhdGVcbiAgICB9fTwvc3Bhbj5cbiAgICA8aW5wdXRcbiAgICAgIGFyaWEtcmVxdWlyZWQ9XCJ0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgIG5hbWU9XCJjdXN0b21lcklkXCJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbWVySWRcIlxuICAgICAgcmVhZG9ubHlcbiAgICAvPlxuICAgIDxjeC1mb3JtLWVycm9yc1xuICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgIGFyaWEtYXRvbWljPVwidHJ1ZVwiXG4gICAgICBbY29udHJvbF09XCJmb3JtLmdldCgnbGFzdE5hbWUnKVwiXG4gICAgPjwvY3gtZm9ybS1lcnJvcnM+XG4gIDwvbGFiZWw+XG5cbiAgPGFcbiAgICBjbGFzcz1cImJ0biBidG4tYmxvY2sgYnRuLXNlY29uZGFyeVwiXG4gICAgW3JvdXRlckxpbmtdPVwieyBjeFJvdXRlOiAnaG9tZScgfSB8IGN4VXJsXCJcbiAgPlxuICAgIHt7ICdjb21tb24uY2FuY2VsJyB8IGN4VHJhbnNsYXRlIH19XG4gIDwvYT5cblxuICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeVwiIFtkaXNhYmxlZF09XCJmb3JtLmRpc2FibGVkXCI+XG4gICAge3sgJ2NvbW1vbi5zYXZlJyB8IGN4VHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9mb3JtPlxuIl19