UNPKG

@materia/users

Version:

Signin/signup your users in your Materia application

934 lines (930 loc) 68.8 kB
import { __decorate, __metadata } from 'tslib'; import { ɵɵelement, ɵɵnextContext, ɵɵproperty, ɵɵreference, ɵɵelementStart, ɵɵtext, ɵɵelementEnd, ɵɵadvance, ɵɵtextInterpolate1, ɵɵtemplate, ɵɵtextInterpolate, EventEmitter, ɵɵdefineComponent, ɵsetClassMetadata, Component, Input, Output, ɵɵgetCurrentView, ɵɵlistener, ɵɵrestoreView, ɵɵdirectiveInject, ɵɵstaticViewQuery, ɵɵqueryRefresh, ɵɵloadQuery, ɵɵNgOnChangesFeature, ɵɵtemplateRefExtractor, ViewChild, ɵɵtextInterpolate2, ɵɵsanitizeUrl, ɵɵstyleProp, ɵɵelementContainerStart, ɵɵelementContainerEnd, ɵɵdefineNgModule, ɵɵdefineInjector, ɵɵsetNgModuleScope, NgModule } from '@angular/core'; import { MatDialog, MatDialogTitle, MatDialogContent, MatDialogActions, MatDialogModule } from '@angular/material/dialog'; import { AddonView, AddonSetup, Addon } from '@materia/addons'; import { HttpClient, HttpClientModule } from '@angular/common/http'; import { NgControlStatusGroup, FormGroupDirective, NgControlStatus, FormControlName, DefaultValueAccessor, NumberValueAccessor, Validators, FormBuilder, ɵangular_packages_forms_forms_y, RequiredValidator, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatCard, MatCardModule } from '@angular/material/card'; import { DefaultLayoutDirective, DefaultFlexDirective, DefaultLayoutAlignDirective } from '@angular/flex-layout/flex'; import { MatToolbar, MatToolbarModule } from '@angular/material/toolbar'; import { MatFormField, MatSuffix, MatError } from '@angular/material/form-field'; import { MatInput, MatInputModule } from '@angular/material/input'; import { NgIf, NgForOf, CommonModule } from '@angular/common'; import { MatButton, MatButtonModule } from '@angular/material/button'; import { MatCheckbox, MatCheckboxModule } from '@angular/material/checkbox'; import { MatDatepicker, MatDatepickerInput, MatDatepickerToggle, MatDatepickerModule } from '@angular/material/datepicker'; import { MatIcon, MatIconModule } from '@angular/material/icon'; import { MatBadge, MatBadgeModule } from '@angular/material/badge'; import { MatTooltip, MatTooltipModule } from '@angular/material/tooltip'; import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator'; import { MatSpinner, MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { MatAccordion, MatExpansionPanel, MatExpansionPanelHeader, MatExpansionModule } from '@angular/material/expansion'; import { MatSelect, MatSelectModule } from '@angular/material/select'; import { MatOption, MatRippleModule, MatNativeDateModule } from '@angular/material/core'; import { MatRadioGroup, MatRadioButton, MatRadioModule } from '@angular/material/radio'; import { FlexLayoutModule } from '@angular/flex-layout'; import { MatListModule } from '@angular/material/list'; import { MatSnackBarModule } from '@angular/material/snack-bar'; import { MatStepperModule } from '@angular/material/stepper'; function ParamInputComponent_mat_checkbox_2_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "mat-checkbox", 6); } if (rf & 2) { var ctx_r0 = ɵɵnextContext(); ɵɵproperty("formControlName", ctx_r0.checkboxName); } } function ParamInputComponent_mat_form_field_3_input_1_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "input", 15); } if (rf & 2) { var ctx_r4 = ɵɵnextContext(2); ɵɵproperty("formControlName", ctx_r4.param.name)("placeholder", ctx_r4.label)("type", ctx_r4.actualComponent); } } function ParamInputComponent_mat_form_field_3_input_2_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "input", 16); } if (rf & 2) { var ctx_r5 = ɵɵnextContext(2); ɵɵproperty("placeholder", ctx_r5.label)("formControlName", ctx_r5.param.name); } } function ParamInputComponent_mat_form_field_3_textarea_3_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "textarea", 17); } if (rf & 2) { var ctx_r6 = ɵɵnextContext(2); ɵɵproperty("placeholder", ctx_r6.label)("formControlName", ctx_r6.param.name); } } function ParamInputComponent_mat_form_field_3_input_4_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "input", 18); } if (rf & 2) { ɵɵnextContext(); var _r9 = ɵɵreference(7); var ctx_r7 = ɵɵnextContext(); ɵɵproperty("formControlName", ctx_r7.param.name)("matDatepicker", _r9)("placeholder", ctx_r7.param.name); } } function ParamInputComponent_mat_form_field_3_mat_datepicker_toggle_5_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "mat-datepicker-toggle", 19); } if (rf & 2) { ɵɵnextContext(); var _r9 = ɵɵreference(7); ɵɵproperty("for", _r9); } } function ParamInputComponent_mat_form_field_3_mat_error_8_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-error"); ɵɵtext(1); ɵɵelementStart(2, "strong"); ɵɵtext(3, "required"); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { var ctx_r10 = ɵɵnextContext(2); ɵɵadvance(1); ɵɵtextInterpolate1(" ", ctx_r10.param.name, " is "); } } function ParamInputComponent_mat_form_field_3_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-form-field", 7); ɵɵtemplate(1, ParamInputComponent_mat_form_field_3_input_1_Template, 1, 3, "input", 8); ɵɵtemplate(2, ParamInputComponent_mat_form_field_3_input_2_Template, 1, 2, "input", 9); ɵɵtemplate(3, ParamInputComponent_mat_form_field_3_textarea_3_Template, 1, 2, "textarea", 10); ɵɵtemplate(4, ParamInputComponent_mat_form_field_3_input_4_Template, 1, 3, "input", 11); ɵɵtemplate(5, ParamInputComponent_mat_form_field_3_mat_datepicker_toggle_5_Template, 1, 1, "mat-datepicker-toggle", 12); ɵɵelement(6, "mat-datepicker", null, 13); ɵɵtemplate(8, ParamInputComponent_mat_form_field_3_mat_error_8_Template, 4, 1, "mat-error", 14); ɵɵelementEnd(); } if (rf & 2) { var ctx_r1 = ɵɵnextContext(); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r1.type != "boolean" && ctx_r1.type != "date" && ctx_r1.type != "float" && ctx_r1.actualComponent != "textarea"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r1.type == "float"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r1.actualComponent == "textarea"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r1.type == "date"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r1.type == "date"); ɵɵadvance(3); ɵɵproperty("ngIf", ctx_r1.requiredError); } } function ParamInputComponent_mat_checkbox_4_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-checkbox", 20); ɵɵtext(1); ɵɵelementEnd(); } if (rf & 2) { var ctx_r2 = ɵɵnextContext(); ɵɵproperty("formControlName", ctx_r2.param.name); ɵɵadvance(1); ɵɵtextInterpolate(ctx_r2.label); } } function ParamInputComponent_div_5_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 21); ɵɵelementStart(1, "label"); ɵɵtext(2); ɵɵelementEnd(); ɵɵelement(3, "textarea", 22); ɵɵelementEnd(); } if (rf & 2) { var ctx_r3 = ɵɵnextContext(); ɵɵadvance(2); ɵɵtextInterpolate(ctx_r3.label); ɵɵadvance(1); ɵɵproperty("formControlName", ctx_r3.param.name); } } var DefaultComponent = Object.freeze({ text: 'text', number: 'text', date: 'date', float: 'text', boolean: 'switch' }); var ParamInputComponent = /** @class */ (function () { function ParamInputComponent() { this.showAsterisk = true; this.showCheckbox = true; this.changed = new EventEmitter(); } Object.defineProperty(ParamInputComponent.prototype, "requiredError", { get: function () { return (this.form.get(this.param.name) && this.form.get(this.param.name).hasError('required')); }, enumerable: true, configurable: true }); Object.defineProperty(ParamInputComponent.prototype, "checkboxName", { get: function () { return this.param.name + "_check"; }, enumerable: true, configurable: true }); ParamInputComponent.prototype.ngOnInit = function () { var _this = this; this.type = this.param.type; if (!this.label) { this.label = this.param.name; if (this.param.required && this.showAsterisk) { this.label += '*'; } } if (this.param && this.param.component) { if (this.param.component === 'input') { if (this.param.type === 'text' || this.param.type === 'string') { this.actualComponent = 'text'; } else if (this.param.type === 'number') { this.actualComponent = 'number'; } else { this.actualComponent = this.param.component; } } else { if (this.param.component === 'datePicker') { this.actualComponent = 'date'; } else if (this.param.component === 'timePicker') { this.actualComponent = 'time'; } else if (this.param.component === 'dateTimePicker') { this.actualComponent = 'datetime-local'; } else { this.actualComponent = this.param.component; } } } else { this.actualComponent = DefaultComponent[this.type]; } if (this.showCheckbox && !this.param.required) { this.form.get(this.param.name).valueChanges.subscribe(function (val) { if (val) { _this.form.get(_this.checkboxName).setValue(true); } else { _this.form.get(_this.checkboxName).setValue(false); } }); } }; ParamInputComponent.ɵfac = function ParamInputComponent_Factory(t) { return new (t || ParamInputComponent)(); }; ParamInputComponent.ɵcmp = ɵɵdefineComponent({ type: ParamInputComponent, selectors: [["materia-param-input"]], inputs: { param: "param", disabled: "disabled", form: "form", label: "label", showAsterisk: "showAsterisk", showCheckbox: "showCheckbox" }, outputs: { changed: "changed" }, decls: 6, vars: 5, consts: [["fxLayout", "row", 3, "formGroup"], ["fxLayout", "row", "fxFlex", ""], [3, "formControlName", 4, "ngIf"], ["fxFlex", "", 4, "ngIf"], ["tabindex", "0", "style", "top: 0;", 3, "formControlName", 4, "ngIf"], ["class", "markdown", "fxLayout", "column", "fxFlex", "", 4, "ngIf"], [3, "formControlName"], ["fxFlex", ""], ["tabindex", "0", "matInput", "", 3, "formControlName", "placeholder", "type", 4, "ngIf"], ["matInput", "", "tabindex", "0", "type", "number", "step", "any", 3, "placeholder", "formControlName", 4, "ngIf"], ["tabindex", "0", "matInput", "", 3, "placeholder", "formControlName", 4, "ngIf"], ["matInput", "", "tabindex", "0", 3, "formControlName", "matDatepicker", "placeholder", 4, "ngIf"], ["matSuffix", "", 3, "for", 4, "ngIf"], ["picker", ""], [4, "ngIf"], ["tabindex", "0", "matInput", "", 3, "formControlName", "placeholder", "type"], ["matInput", "", "tabindex", "0", "type", "number", "step", "any", 3, "placeholder", "formControlName"], ["tabindex", "0", "matInput", "", 3, "placeholder", "formControlName"], ["matInput", "", "tabindex", "0", 3, "formControlName", "matDatepicker", "placeholder"], ["matSuffix", "", 3, "for"], ["tabindex", "0", 2, "top", "0", 3, "formControlName"], ["fxLayout", "column", "fxFlex", "", 1, "markdown"], ["tabindex", "0", "simplemde", "{spellChecker: false, toolbar: ['bold', 'italic', 'heading', '|', 'quote', 'unordered-list', 'ordered-list', '|', 'link', 'image', 'table']}", 3, "formControlName"]], template: function ParamInputComponent_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 0); ɵɵelementStart(1, "div", 1); ɵɵtemplate(2, ParamInputComponent_mat_checkbox_2_Template, 1, 1, "mat-checkbox", 2); ɵɵtemplate(3, ParamInputComponent_mat_form_field_3_Template, 9, 6, "mat-form-field", 3); ɵɵtemplate(4, ParamInputComponent_mat_checkbox_4_Template, 2, 2, "mat-checkbox", 4); ɵɵtemplate(5, ParamInputComponent_div_5_Template, 4, 2, "div", 5); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { ɵɵproperty("formGroup", ctx.form); ɵɵadvance(2); ɵɵproperty("ngIf", !ctx.param.required && ctx.showCheckbox && ctx.type !== "boolean"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx.type != "boolean" && ctx.actualComponent != "markdown" && ctx.actualComponent != "article"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx.type == "boolean"); ɵɵadvance(1); ɵɵproperty("ngIf", ctx.actualComponent == "markdown"); } }, directives: [DefaultLayoutDirective, NgControlStatusGroup, FormGroupDirective, DefaultFlexDirective, NgIf, MatCheckbox, NgControlStatus, FormControlName, MatFormField, MatDatepicker, MatInput, DefaultValueAccessor, NumberValueAccessor, MatDatepickerInput, MatDatepickerToggle, MatSuffix, MatError], styles: [""] }); return ParamInputComponent; }()); /*@__PURE__*/ (function () { ɵsetClassMetadata(ParamInputComponent, [{ type: Component, args: [{ selector: 'materia-param-input', templateUrl: './param-input.component.html', styleUrls: ['./param-input.component.scss'] }] }], function () { return []; }, { param: [{ type: Input }], disabled: [{ type: Input }], form: [{ type: Input }], label: [{ type: Input }], showAsterisk: [{ type: Input }], showCheckbox: [{ type: Input }], changed: [{ type: Output }] }); })(); var _c0 = ["template"]; function SignupFormComponent_ng_template_0_div_8_materia_param_input_1_Template(rf, ctx) { if (rf & 1) { ɵɵelement(0, "materia-param-input", 9); } if (rf & 2) { var param_r4 = ctx.$implicit; var ctx_r3 = ɵɵnextContext(3); ɵɵproperty("showCheckbox", false)("form", ctx_r3.signupForm)("param", param_r4); } } function SignupFormComponent_ng_template_0_div_8_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div"); ɵɵtemplate(1, SignupFormComponent_ng_template_0_div_8_materia_param_input_1_Template, 1, 3, "materia-param-input", 8); ɵɵelementEnd(); } if (rf & 2) { var ctx_r2 = ɵɵnextContext(2); ɵɵadvance(1); ɵɵproperty("ngForOf", ctx_r2.profileFields); } } function SignupFormComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) { var _r6 = ɵɵgetCurrentView(); ɵɵelementStart(0, "mat-card", 1); ɵɵelementStart(1, "mat-toolbar"); ɵɵtext(2, "Create a new user"); ɵɵelementEnd(); ɵɵelementStart(3, "form", 2); ɵɵelementStart(4, "mat-form-field"); ɵɵelement(5, "input", 3); ɵɵelementEnd(); ɵɵelementStart(6, "mat-form-field"); ɵɵelement(7, "input", 4); ɵɵelementEnd(); ɵɵtemplate(8, SignupFormComponent_ng_template_0_div_8_Template, 2, 1, "div", 5); ɵɵelementStart(9, "div"); ɵɵelementStart(10, "button", 6); ɵɵlistener("click", function SignupFormComponent_ng_template_0_Template_button_click_10_listener() { ɵɵrestoreView(_r6); var ctx_r5 = ɵɵnextContext(); return ctx_r5.signup.emit(ctx_r5.signupForm.value); }); ɵɵtext(11, "Create"); ɵɵelementEnd(); ɵɵelementStart(12, "button", 7); ɵɵlistener("click", function SignupFormComponent_ng_template_0_Template_button_click_12_listener() { ɵɵrestoreView(_r6); var ctx_r7 = ɵɵnextContext(); return ctx_r7.cancel.emit(); }); ɵɵtext(13, "Cancel"); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { var ctx_r1 = ɵɵnextContext(); ɵɵadvance(3); ɵɵproperty("formGroup", ctx_r1.signupForm); ɵɵadvance(5); ɵɵproperty("ngIf", ctx_r1.profileFields.length > 0); } } var SignupFormComponent = /** @class */ (function () { function SignupFormComponent(fb) { this.fb = fb; this.signup = new EventEmitter(); this.cancel = new EventEmitter(); } SignupFormComponent.prototype.ngOnChanges = function (changes) { if (changes.profileFields && changes.profileFields.currentValue) { this.initForm(); } }; SignupFormComponent.prototype.initForm = function () { this.signupForm = this.fb.group(Object.assign({}, { email: ['', Validators.required], password: ['', Validators.required] }, this.getProfileFormGroup())); }; SignupFormComponent.prototype.getProfileFormGroup = function () { if (!this.profileFields) { return {}; } var result = {}; this.profileFields.forEach(function (field) { if (field.required) { result[field.name] = ['', Validators.required]; } else { result[field.name] = ''; } }); return result; }; SignupFormComponent.prototype.ngOnInit = function () { this.initForm(); }; SignupFormComponent.prototype.signupClick = function () { this.signup.emit(this.signupForm.value); }; SignupFormComponent.ɵfac = function SignupFormComponent_Factory(t) { return new (t || SignupFormComponent)(ɵɵdirectiveInject(FormBuilder)); }; SignupFormComponent.ɵcmp = ɵɵdefineComponent({ type: SignupFormComponent, selectors: [["materia-signup-form"]], viewQuery: function SignupFormComponent_Query(rf, ctx) { if (rf & 1) { ɵɵstaticViewQuery(_c0, true); } if (rf & 2) { var _t; ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.template = _t.first); } }, inputs: { profileFields: "profileFields" }, outputs: { signup: "signup", cancel: "cancel" }, features: [ɵɵNgOnChangesFeature], decls: 2, vars: 0, consts: [["template", ""], ["fxLayout", "column"], ["fxLayout", "column", 2, "padding", "24px", 3, "formGroup"], ["formControlName", "email", "matInput", "", "placeholder", "Email", "required", "", "type", "email", "name", "email"], ["formControlName", "password", "matInput", "", "placeholder", "Password", "required", "", "type", "password", "name", "password"], [4, "ngIf"], ["mat-raised-button", "", "color", "primary", 3, "click"], ["mat-raised-button", "", 3, "click"], [3, "showCheckbox", "form", "param", 4, "ngFor", "ngForOf"], [3, "showCheckbox", "form", "param"]], template: function SignupFormComponent_Template(rf, ctx) { if (rf & 1) { ɵɵtemplate(0, SignupFormComponent_ng_template_0_Template, 14, 2, "ng-template", null, 0, ɵɵtemplateRefExtractor); } }, directives: [MatCard, DefaultLayoutDirective, MatToolbar, ɵangular_packages_forms_forms_y, NgControlStatusGroup, FormGroupDirective, MatFormField, DefaultValueAccessor, MatInput, NgControlStatus, FormControlName, RequiredValidator, NgIf, MatButton, NgForOf, ParamInputComponent], styles: ["mat-card[_ngcontent-%COMP%]{width:300px;margin:0p;padding:0}"] }); return SignupFormComponent; }()); /*@__PURE__*/ (function () { ɵsetClassMetadata(SignupFormComponent, [{ type: Component, args: [{ selector: 'materia-signup-form', templateUrl: './signup-form.component.html', styleUrls: ['./signup-form.component.scss'] }] }], function () { return [{ type: FormBuilder }]; }, { signup: [{ type: Output }], cancel: [{ type: Output }], template: [{ type: ViewChild, args: ['template', { static: true }] }], profileFields: [{ type: Input }] }); })(); var _c0$1 = ["signupPanel"]; var _c1 = ["changeEmailPanel"]; var _c2 = ["lostPasswordPanel"]; function EmailSettingsComponent_mat_option_11_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-option", 20); ɵɵtext(1); ɵɵelementEnd(); } if (rf & 2) { var t_r6 = ctx.$implicit; ɵɵproperty("value", t_r6.id); ɵɵadvance(1); ɵɵtextInterpolate2("", t_r6.name, " (", t_r6.id, ")"); } } function EmailSettingsComponent_mat_option_23_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-option", 20); ɵɵtext(1); ɵɵelementEnd(); } if (rf & 2) { var t_r7 = ctx.$implicit; ɵɵproperty("value", t_r7.id); ɵɵadvance(1); ɵɵtextInterpolate2("", t_r7.name, " (", t_r7.id, ")"); } } function EmailSettingsComponent_mat_option_35_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "mat-option", 20); ɵɵtext(1); ɵɵelementEnd(); } if (rf & 2) { var t_r8 = ctx.$implicit; ɵɵproperty("value", t_r8.id); ɵɵadvance(1); ɵɵtextInterpolate2("", t_r8.name, " (", t_r8.id, ")"); } } var EmailSettingsComponent = /** @class */ (function () { function EmailSettingsComponent(http, form) { this.http = http; this.form = form; this.hide = new EventEmitter(); this.save = new EventEmitter(); } EmailSettingsComponent.prototype.ngOnInit = function () { this.emailForm = this.form.group({ method: [ this.getSettingsProperty('method', 'session'), Validators.required ], user_profile_enabled: [ this.getSettingsProperty('user_profile_enabled', false) ], user_profile_entity: [ this.getSettingsProperty('user_profile_entity', '') ], email_verification: [ this.getSettingsProperty('email_verification', false) ], email_addon: [this.getSettingsProperty('email_addon', false)], template_signup: [this.getSettingsProperty('template_signup', '')], redirect_signup: [this.getSettingsProperty('redirect_signup', '')], subject_signup: [this.getSettingsProperty('subject_signup', '')], subject_lost_password: [this.getSettingsProperty('subject_lost_password', '')], subject_change_email: [this.getSettingsProperty('subject_change_email', '')], template_lost_password: [ this.getSettingsProperty('template_lost_password', '') ], redirect_lost_password: [ this.getSettingsProperty('redirect_lost_password', '') ], template_change_email: [ this.getSettingsProperty('template_change_email', '') ], redirect_change_email: [ this.getSettingsProperty('redirect_change_email', '') ] }); this.refreshTemplates(); }; EmailSettingsComponent.prototype.refreshTemplates = function () { var _this = this; if (this.settings.email_addon === '@materia/mailjet') { this.http .post(this.baseUrl + "/entities/mailjet_template/queries/list", { limit: 1000 }) .subscribe(function (data) { _this.templates = data.data .filter(function (row) { return row.OwnerId !== 0; }) .map(function (row) { return { name: row.Name, id: row.ID }; }); }); } else if (this.settings.email_addon === '@materia/sendgrid') { this.http .post(this.baseUrl + "/entities/sendgrid_template/queries/listTemplates", {}) .subscribe(function (data) { _this.templates = data && data.data && data.data; // TODO... }); } }; EmailSettingsComponent.prototype.saveEmailSettings = function () { if (this.emailForm.valid) { this.save.emit(this.emailForm.value); } }; EmailSettingsComponent.prototype.cancel = function () { this.hide.emit(); }; EmailSettingsComponent.prototype.getSettingsProperty = function (property, defaultValue) { return (this.settings && this.settings[property]) || defaultValue; }; EmailSettingsComponent.ɵfac = function EmailSettingsComponent_Factory(t) { return new (t || EmailSettingsComponent)(ɵɵdirectiveInject(HttpClient), ɵɵdirectiveInject(FormBuilder)); }; EmailSettingsComponent.ɵcmp = ɵɵdefineComponent({ type: EmailSettingsComponent, selectors: [["materia-user-management-email-settings"]], viewQuery: function EmailSettingsComponent_Query(rf, ctx) { if (rf & 1) { ɵɵstaticViewQuery(_c0$1, true); ɵɵstaticViewQuery(_c1, true); ɵɵstaticViewQuery(_c2, true); } if (rf & 2) { var _t; ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.signupPanel = _t.first); ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.changeEmailPanel = _t.first); ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.lostPasswordPanel = _t.first); } }, inputs: { settings: "settings", baseUrl: "baseUrl" }, outputs: { hide: "hide", save: "save" }, decls: 43, vars: 5, consts: [[3, "formGroup"], ["fxLayout", "column", 3, "expanded"], ["signupPanel", ""], ["fxLayout", "column", 1, "panel-content"], ["matInput", "", "placeholder", "Subject", "formControlName", "subject_signup"], ["placeholder", "Template", "formControlName", "template_signup"], [3, "value", 4, "ngFor", "ngForOf"], ["matInput", "", "placeholder", "Redirect URL", "formControlName", "redirect_signup"], ["changeEmailPanel", ""], ["matInput", "", "placeholder", "Subject", "formControlName", "subject_change_email"], ["placeholder", "Template", "formControlName", "template_change_email"], ["matInput", "", "placeholder", "Redirect URL", "formControlName", "redirect_change_email"], ["fxLayout", "column"], ["lostPasswordPanel", ""], ["matInput", "", "placeholder", "Subject", "formControlName", "subject_lost_password"], ["placeholder", "Template", "formControlName", "template_lost_password"], ["matInput", "", "placeholder", "Redirect URL", "formControlName", "redirect_lost_password"], [2, "margin", "16px 0", "text-align", "center"], ["mat-raised-button", "", "color", "primary", 2, "margin-right", "8px", 3, "click"], ["mat-raised-button", "", 3, "click"], [3, "value"]], template: function EmailSettingsComponent_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "form", 0); ɵɵelementStart(1, "mat-accordion"); ɵɵelementStart(2, "mat-expansion-panel", 1, 2); ɵɵelementStart(4, "mat-expansion-panel-header"); ɵɵtext(5, " Signup "); ɵɵelementEnd(); ɵɵelementStart(6, "div", 3); ɵɵelementStart(7, "mat-form-field"); ɵɵelement(8, "input", 4); ɵɵelementEnd(); ɵɵelementStart(9, "mat-form-field"); ɵɵelementStart(10, "mat-select", 5); ɵɵtemplate(11, EmailSettingsComponent_mat_option_11_Template, 2, 3, "mat-option", 6); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(12, "mat-form-field"); ɵɵelement(13, "input", 7); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(14, "mat-expansion-panel", null, 8); ɵɵelementStart(16, "mat-expansion-panel-header"); ɵɵtext(17, " Change email "); ɵɵelementEnd(); ɵɵelementStart(18, "div", 3); ɵɵelementStart(19, "mat-form-field"); ɵɵelement(20, "input", 9); ɵɵelementEnd(); ɵɵelementStart(21, "mat-form-field"); ɵɵelementStart(22, "mat-select", 10); ɵɵtemplate(23, EmailSettingsComponent_mat_option_23_Template, 2, 3, "mat-option", 6); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(24, "mat-form-field"); ɵɵelement(25, "input", 11); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(26, "mat-expansion-panel", 12, 13); ɵɵelementStart(28, "mat-expansion-panel-header"); ɵɵtext(29, " Lost password "); ɵɵelementEnd(); ɵɵelementStart(30, "div", 3); ɵɵelementStart(31, "mat-form-field"); ɵɵelement(32, "input", 14); ɵɵelementEnd(); ɵɵelementStart(33, "mat-form-field"); ɵɵelementStart(34, "mat-select", 15); ɵɵtemplate(35, EmailSettingsComponent_mat_option_35_Template, 2, 3, "mat-option", 6); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(36, "mat-form-field"); ɵɵelement(37, "input", 16); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(38, "div", 17); ɵɵelementStart(39, "button", 18); ɵɵlistener("click", function EmailSettingsComponent_Template_button_click_39_listener() { return ctx.saveEmailSettings(); }); ɵɵtext(40, "Save"); ɵɵelementEnd(); ɵɵelementStart(41, "button", 19); ɵɵlistener("click", function EmailSettingsComponent_Template_button_click_41_listener() { return ctx.hide.emit(); }); ɵɵtext(42, "Cancel"); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { ɵɵproperty("formGroup", ctx.emailForm); ɵɵadvance(2); ɵɵproperty("expanded", true); ɵɵadvance(9); ɵɵproperty("ngForOf", ctx.templates); ɵɵadvance(12); ɵɵproperty("ngForOf", ctx.templates); ɵɵadvance(12); ɵɵproperty("ngForOf", ctx.templates); } }, directives: [ɵangular_packages_forms_forms_y, NgControlStatusGroup, FormGroupDirective, MatAccordion, MatExpansionPanel, DefaultLayoutDirective, MatExpansionPanelHeader, MatFormField, MatInput, DefaultValueAccessor, NgControlStatus, FormControlName, MatSelect, NgForOf, MatButton, MatOption], styles: [".panel-content[_ngcontent-%COMP%]{margin:0 24px!important}"] }); return EmailSettingsComponent; }()); /*@__PURE__*/ (function () { ɵsetClassMetadata(EmailSettingsComponent, [{ type: Component, args: [{ selector: 'materia-user-management-email-settings', templateUrl: './email-settings.component.html', styleUrls: ['./email-settings.component.scss'] }] }], function () { return [{ type: HttpClient }, { type: FormBuilder }]; }, { settings: [{ type: Input }], baseUrl: [{ type: Input }], hide: [{ type: Output }], save: [{ type: Output }], signupPanel: [{ type: ViewChild, args: ['signupPanel', { static: true }] }], changeEmailPanel: [{ type: ViewChild, args: ['changeEmailPanel', { static: true }] }], lostPasswordPanel: [{ type: ViewChild, args: ['lostPasswordPanel', { static: true }] }] }); })(); function UserManagementViewComponent_div_1_Template(rf, ctx) { if (rf & 1) { var _r9 = ɵɵgetCurrentView(); ɵɵelementStart(0, "div", 9); ɵɵtext(1); ɵɵelementStart(2, "a", 10); ɵɵlistener("click", function UserManagementViewComponent_div_1_Template_a_click_2_listener() { ɵɵrestoreView(_r9); var ctx_r8 = ɵɵnextContext(); return ctx_r8.logout(); }); ɵɵtext(3, "Logout"); ɵɵelementEnd(); ɵɵtext(4, ") "); ɵɵelementEnd(); } if (rf & 2) { var ctx_r0 = ɵɵnextContext(); ɵɵadvance(1); ɵɵtextInterpolate1(" Currently connected as ", ctx_r0.me.email, " ("); } } function UserManagementViewComponent_ng_container_4_button_7_Template(rf, ctx) { if (rf & 1) { var _r13 = ɵɵgetCurrentView(); ɵɵelementStart(0, "button", 17); ɵɵlistener("click", function UserManagementViewComponent_ng_container_4_button_7_Template_button_click_0_listener() { ɵɵrestoreView(_r13); var ctx_r12 = ɵɵnextContext(2); return ctx_r12.configureEmails(); }); ɵɵtext(1, "Configure emails"); ɵɵelementEnd(); } } function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_span_1_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "span"); ɵɵtext(1, "verified"); ɵɵelementEnd(); } } function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_ng_template_2_Template(rf, ctx) { if (rf & 1) { var _r25 = ɵɵgetCurrentView(); ɵɵelementStart(0, "button", 30); ɵɵlistener("click", function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_ng_template_2_Template_button_click_0_listener() { ɵɵrestoreView(_r25); var user_r18 = ɵɵnextContext(2).$implicit; var ctx_r23 = ɵɵnextContext(4); return ctx_r23.resendVerification(user_r18.id_user); }); ɵɵtext(1, "Resend verification"); ɵɵelementEnd(); } } function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 28); ɵɵtemplate(1, UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_span_1_Template, 2, 0, "span", 3); ɵɵtemplate(2, UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_ng_template_2_Template, 2, 0, "ng-template", null, 29, ɵɵtemplateRefExtractor); ɵɵelementEnd(); } if (rf & 2) { var _r21 = ɵɵreference(3); var user_r18 = ɵɵnextContext().$implicit; ɵɵadvance(1); ɵɵproperty("ngIf", user_r18.verified)("ngIfElse", _r21); } } function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 24); ɵɵelement(1, "img", 25); ɵɵelementStart(2, "div", 26); ɵɵtext(3); ɵɵelementEnd(); ɵɵtemplate(4, UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_div_4_Template, 4, 2, "div", 27); ɵɵelementEnd(); } if (rf & 2) { var user_r18 = ctx.$implicit; var ctx_r17 = ɵɵnextContext(4); ɵɵadvance(1); ɵɵproperty("src", user_r18.gravatar, ɵɵsanitizeUrl); ɵɵadvance(2); ɵɵtextInterpolate(user_r18.email); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r17.settings == null ? null : ctx_r17.settings.email_verification); } } function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_Template(rf, ctx) { if (rf & 1) { var _r28 = ɵɵgetCurrentView(); ɵɵelementStart(0, "div", 20); ɵɵelementStart(1, "div", 21); ɵɵtemplate(2, UserManagementViewComponent_ng_container_4_ng_container_11_div_1_div_2_Template, 5, 3, "div", 22); ɵɵelementEnd(); ɵɵelementStart(3, "mat-paginator", 23); ɵɵlistener("page", function UserManagementViewComponent_ng_container_4_ng_container_11_div_1_Template_mat_paginator_page_3_listener($event) { ɵɵrestoreView(_r28); var ctx_r27 = ɵɵnextContext(3); return ctx_r27.paginationEvent($event); }); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { var ctx_r14 = ɵɵnextContext(3); ɵɵadvance(1); ɵɵstyleProp("overflow-y", "auto"); ɵɵadvance(1); ɵɵproperty("ngForOf", ctx_r14.users); ɵɵadvance(1); ɵɵproperty("length", ctx_r14.nbUsers)("pageIndex", ctx_r14.defaultPageIndex); } } function UserManagementViewComponent_ng_container_4_ng_container_11_ng_template_2_Template(rf, ctx) { if (rf & 1) { var _r30 = ɵɵgetCurrentView(); ɵɵelementStart(0, "div", 31); ɵɵelementStart(1, "span"); ɵɵtext(2, "There is no users registered yet"); ɵɵelementEnd(); ɵɵelementStart(3, "div"); ɵɵelementStart(4, "button", 32); ɵɵlistener("click", function UserManagementViewComponent_ng_container_4_ng_container_11_ng_template_2_Template_button_click_4_listener() { ɵɵrestoreView(_r30); var ctx_r29 = ɵɵnextContext(3); return ctx_r29.openSignupDialog(); }); ɵɵtext(5, " Create a user "); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { ɵɵadvance(4); ɵɵstyleProp("margin", "15px")("color", "white"); } } function UserManagementViewComponent_ng_container_4_ng_container_11_Template(rf, ctx) { if (rf & 1) { ɵɵelementContainerStart(0); ɵɵtemplate(1, UserManagementViewComponent_ng_container_4_ng_container_11_div_1_Template, 4, 5, "div", 18); ɵɵtemplate(2, UserManagementViewComponent_ng_container_4_ng_container_11_ng_template_2_Template, 6, 4, "ng-template", null, 19, ɵɵtemplateRefExtractor); ɵɵelementContainerEnd(); } if (rf & 2) { var _r15 = ɵɵreference(3); var ctx_r11 = ɵɵnextContext(2); ɵɵadvance(1); ɵɵproperty("ngIf", ctx_r11.users && ctx_r11.users.length)("ngIfElse", _r15); } } function UserManagementViewComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) { var _r32 = ɵɵgetCurrentView(); ɵɵelementContainerStart(0); ɵɵelementStart(1, "mat-toolbar", 11); ɵɵelementStart(2, "mat-icon"); ɵɵtext(3, "people"); ɵɵelementEnd(); ɵɵelementStart(4, "span", 12); ɵɵtext(5, " Users "); ɵɵelementEnd(); ɵɵelement(6, "span", 13); ɵɵtemplate(7, UserManagementViewComponent_ng_container_4_button_7_Template, 2, 0, "button", 14); ɵɵelementStart(8, "button", 15); ɵɵlistener("click", function UserManagementViewComponent_ng_container_4_Template_button_click_8_listener() { ɵɵrestoreView(_r32); var ctx_r31 = ɵɵnextContext(); return ctx_r31.openSignupDialog(); }); ɵɵelementStart(9, "mat-icon", 16); ɵɵtext(10, "add"); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵtemplate(11, UserManagementViewComponent_ng_container_4_ng_container_11_Template, 4, 2, "ng-container", 3); ɵɵelementContainerEnd(); } if (rf & 2) { var ctx_r1 = ɵɵnextContext(); var _r2 = ɵɵreference(6); ɵɵadvance(4); ɵɵproperty("matBadge", ctx_r1.nbUsers); ɵɵadvance(3); ɵɵproperty("ngIf", !ctx_r1.displayEmailSettings && ctx_r1.settings.email_verification && ctx_r1.settings.email_addon); ɵɵadvance(4); ɵɵproperty("ngIf", !ctx_r1.loading)("ngIfElse", _r2); } } function UserManagementViewComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 33); ɵɵelement(1, "mat-spinner"); ɵɵelementEnd(); } } function UserManagementViewComponent_ng_template_7_Template(rf, ctx) { if (rf & 1) { var _r34 = ɵɵgetCurrentView(); ɵɵelementStart(0, "div", 31); ɵɵelementStart(1, "span"); ɵɵtext(2, "It seems "); ɵɵelementStart(3, "strong"); ɵɵtext(4, "@materia/users"); ɵɵelementEnd(); ɵɵtext(5, " addon is not configured yet"); ɵɵelementEnd(); ɵɵelementStart(6, "div"); ɵɵelementStart(7, "button", 32); ɵɵlistener("click", function UserManagementViewComponent_ng_template_7_Template_button_click_7_listener() { ɵɵrestoreView(_r34); var ctx_r33 = ɵɵnextContext(); return ctx_r33.openSetup.emit(); }); ɵɵtext(8, " Settings "); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { ɵɵadvance(7); ɵɵstyleProp("margin", "15px")("color", "white"); } } function UserManagementViewComponent_div_9_Template(rf, ctx) { if (rf & 1) { var _r36 = ɵɵgetCurrentView(); ɵɵelementStart(0, "div", 34); ɵɵelementStart(1, "mat-toolbar", 11); ɵɵelementStart(2, "button", 35); ɵɵlistener("click", function UserManagementViewComponent_div_9_Template_button_click_2_listener() { ɵɵrestoreView(_r36); var ctx_r35 = ɵɵnextContext(); return ctx_r35.hideEmailSettings(); }); ɵɵelementStart(3, "mat-icon"); ɵɵtext(4, "arrow_back"); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(5, "mat-icon"); ɵɵtext(6, "mail"); ɵɵelementEnd(); ɵɵelementStart(7, "span"); ɵɵtext(8, " Emails "); ɵɵelementEnd(); ɵɵelement(9, "span", 13); ɵɵelementEnd(); ɵɵelementStart(10, "materia-user-management-email-settings", 36); ɵɵlistener("hide", function UserManagementViewComponent_div_9_Template_materia_user_management_email_settings_hide_10_listener() { ɵɵrestoreView(_r36); var ctx_r37 = ɵɵnextContext(); return ctx_r37.hideEmailSettings(); })("save", function UserManagementViewComponent_div_9_Template_materia_user_management_email_settings_save_10_listener($event) { ɵɵrestoreView(_r36); var ctx_r38 = ɵɵnextContext(); return ctx_r38.saveEmailSettings($event); }); ɵɵelementEnd(); ɵɵelementEnd(); } if (rf & 2) { var ctx_r6 = ɵɵnextContext(); ɵɵadvance(10); ɵɵproperty("settings", ctx_r6.settings)("baseUrl", ctx_r6.baseUrl); } } var UserManagementViewComponent = /** @class */ (function () { function UserManagementViewComponent(dialog, http) { this.dialog = dialog; this.http = http; this.openSetup = new EventEmitter(); this.snackbarSuccess = new EventEmitter(); this.loading = true; this.users = []; this.nbUsers = 0; this.defaultPageIndex = 0; } UserManagementViewComponent.prototype.ngOnInit = function () { this.refreshList(); this.refreshConnectedUser(); this.getProfileParams(); }; UserManagementViewComponent.prototype.getProfileParams = function () { var _this = this; if (this.settings && this.settings.user_profile_enabled && this.settings.user_profile_entity) { return this.http .get(this.baseUrl + "/infos") .toPromise() .then(function (res) { var profileEntity = res.entities.find(function (entity) { return entity.name === _this.settings.user_profile_entity; }); _this.profileFields = profileEntity.fields.filter(function (field) { return field.name !== 'id_user' && (!field.primary || (field.primary && !field.autoIncrement)); }); }) .catch(function (e) { _this.profileFields = []; }); } else { this.profileFields = []; return Promise.resolve(); } }; UserManagementViewComponent.prototype.refreshList = function (params) { var _this = this; this.loading = true; this.http .post(this.baseUrl + "/entities/user/queries/listWithGravatar", params) .subscribe(function (res) { _this.users = res.data; _this.nbUsers = res.count; _this.loading = false; }); }; UserManagementViewComponent.prototype.refreshConnectedUser = function () { var _this = this; this.http.get(this.apiUrl + "/user/me").subscribe(function (res) { _this.me = res; }, function () { return (_this.me = null); }); }; UserManagementViewComponent.prototype.paginationEvent = function (event) { this.defaultPageIndex = event.pageIndex; this.refreshList({ limit: event.pageSize, page: event.pageIndex + 1 }); }; UserManagementViewComponent.prototype.configureEmails = function () { this.displayEmailSettings = true; }; UserManagementViewComponent.prototype.hideEmailSettings = function () { this.displayEmailSettings = false; }; UserManagementViewComponent.prototype.openSignupDialog = function () { this.signupDialog = this.dialog.open(this.signupDialogComp.template, { panelClass: 'no-padding' }); }; UserManagementViewComponent.prototype.saveEmailSettings = function (settings) { var _this = this; this.http .post(this.baseUrl + "/addons/@materia/users/setup", settings) .subscribe(function () { _this.snackbarSuccess.emit('Settings saved!'); _this.hideEmailSettings(); _this.settings = settings; }); }; UserManagementViewComponent.prototype.closeSignupDialog = function () { this.signupDialog.close(); }; UserManagementViewComponent.prototype.signup = function (user) { var _this = this; this.http.post(this.apiUrl + "/user/signup", user).subscribe(function () { _this.closeSignupDialog(); _this.refreshList(); _this.refreshConnectedUser(); }); }; UserManagementViewComponent.prototype.logout = function () { var _this = this; this.http.post(this.apiUrl + "/user/logout", {}).subscribe(function () { _this.refreshConnectedUser(); }, function () { return _this.refreshConnectedUser(); }); }; UserManagementViewComponent.prototype.resendVerification = function (id) { var _this = this; this.http.post(this.baseUrl + "/entities/user/queries/sendVerificationEmail", { id_user: id }) .subscribe(function () { return _this.snackbarSuccess.emit('Verification email sent!'); }); }; UserManagementViewComponent.ctorParameters = function () { return [ { type: MatDialog }, { type: HttpClient } ]; }; UserManagementViewComponent.ɵfac = function UserManagementViewComponent_Factory(t) { return new (t || UserManagementViewComponent)(ɵɵdirectiveInject(MatDialog), ɵɵdirectiveInject(HttpClient)); }; UserManagementViewComponent.ɵcmp = ɵɵdefineComponent({ type: UserManagementViewComponent, selectors: [["materia-user-management"]], viewQuery: function UserManagementViewComponent_Query(rf, ctx) { if (rf & 1) { ɵɵstaticViewQuery(SignupFormComponent, true); } if (rf & 2) { var _t; ɵɵqueryRefresh(_t = ɵɵloadQuery()) && (ctx.signupDialogComp = _t.first); } }, inputs: { app: "app", settings: "settings", baseUrl: "baseUrl", apiUrl: "apiUrl" }, outputs: { openSetup: "openSetup", snackbarSuccess: "snackbarSuccess" }, decls: 12, vars: 5, consts: [["fxLayout", "column", "fxFlex", ""], ["style", "padding: 8px 16px; background-color: #4CAF50; color: white;", 4, "ngIf"], ["fxLayout", "row", "fxFlex", ""], [4, "ngIf", "ngIfElse"], ["loadingUsers", ""], ["noSettings", ""], ["style", "margin: 8px;", "fxLayout", "column", "fxFlex", "", 4, "ngIf"], [3, "profileFields", "signup", "cancel"], ["signupFormTemplate", ""], [2, "padding", "8px 16px", "background-color", "#4CAF50", "color", "white"], [2, "text-decoration", "underline", "cursor", "pointer", 3, "click"], ["fxLayout", "row", "fxLayoutAlign", "start center"], ["matBadgeOverlap", "false", 3, "matBadge"], ["fxFlex", ""], ["style", "margin-right: 8px;", "mat-button", "", 3, "click", 4, "ngIf"], ["mat-mini-fab", "", "matTooltip", "New User", "matTooltipPosition", "left", 2, "width", "31px", "height", "31px", 3, "click"], [2, "position", "relative", "top", "-6px", "left", "-4px"], ["mat-button", "", 2, "margin-right", "8px", 3, "click"], ["style", "border-top: 1px solid #EEE; overflow-y: auto;", "fxLayout", "column", "fxFlex", "", 4, "ngIf", "ngIfElse"], ["noUser", ""], ["fxLayout", "column", "fxFlex", "", 2, "border-top", "1px solid #EEE", "overflow-y", "auto"], ["fxFlex", "", "fxLayout", "column"], ["fxLayout", "row", "fxLayoutAlign", "start center", "style", "border-bottom: 1px solid #EEE; cursor: pointer;min-height: 40px", 4, "ngFor", "ngForOf"], ["hidePageSize", "true", "showFirstLastButtons", "true", 3, "length", "pageIndex", "page"], ["fxLayout", "row", "fxLayoutAlign", "start center", 2, "border-bottom", "1px solid #EEE", "cursor", "pointer", "min-height", "40px"], [1, "avatar", 2, "margin", "0 8px", "width", "32px", "height", "32px", "border-radius", "100%", 3, "src"], ["fxFlex", "", 2, "color", "#999", "padding-top", "0"], ["class", "verified", 4, "ngIf"], [1, "verified"], ["resendTemplate", ""], ["mat-button", "", 3, "click"], ["fxFlex", "", "fxLayout", "column", "fxLayoutAlign", "center center", 1, "no-users"], ["mat-raised-button", "", "color", "primary", 3, "click"], ["fxLayout", "column", "fxFlex", "", "fxLayoutAlign", "center center"], ["fxLayout", "column", "fxFlex", "", 2, "margin", "8px"], ["mat-icon-button", "", "matTooltip", "Hide email settings", "matTooltipPosition", "right", 3, "click"], ["fxFlex", "", 2, "overflow-y", "auto", 3, "settings", "baseUrl", "hide", "save"]], template: function UserManagementViewComponent_Template(rf, ctx) { if (rf & 1) { ɵɵelementStart(0, "div", 0); ɵɵtemplate(1, UserManagementViewComponent_div_1_Template, 5, 1, "div", 1); ɵɵelementStart(2, "div", 2); ɵɵelementStart(3, "mat-card", 0); ɵɵtemplate(4, UserManagementViewComponent_ng_container_4_Template, 12, 4, "ng-container", 3); ɵɵelementEnd(); ɵɵtemplate(5, UserManagementViewComponent_ng_template_5_Template, 2, 0, "ng-template", null, 4, ɵɵtemplateRefExtractor); ɵɵtemplate(7, UserManagementViewComponent_ng_template_7_Template, 9, 4, "ng-template", null, 5, ɵɵtemplateRefExtractor); ɵɵtemplate(9, UserManagementViewComponent_div_9_Template, 11, 2, "div", 6); ɵɵelementEnd(); ɵɵelementEnd(); ɵɵelementStart(10, "materia-signup-form", 7, 8); ɵɵlistener("signup", function UserManagementViewComponent_Template_materia_signup_form_signup_10_listener($event) { return ctx.signup($event); })("cancel", function UserManagementViewComponent_Template_materia_signup_form_cancel_10_listener() { return ctx.closeSignupDialog(); }); ɵɵelementEnd(); } if (rf & 2) { var _r4 = ɵɵreference(8); ɵɵadvance(1); ɵɵproperty("ngIf", ctx.me); ɵɵadvance(3); ɵɵproperty("ngIf", ctx.settings == null ? null : ctx.settings.method)("ngIfElse", _r4); ɵɵadvance(5); ɵɵproperty("ngIf", ctx.displayEmailSettings); ɵɵadvance(1); ɵɵproperty("profileFields", ctx.profileFields); } }, directives: [DefaultLayoutDirective, DefaultFlexDirective, NgIf, MatCard, SignupFormComponent, MatToolbar, DefaultLayoutAlignDirective, MatIcon, MatBadge, MatButton, MatTooltip, NgForOf, MatPaginator, MatSpinner, EmailSettingsComponent], styles: ["[_nghost-%COMP%]{flex:1 1 0} .mat-paginator-container{background:#f5f5f5}mat-card[_ngcontent-%COMP%]{margin:8px;padding:0}mat-icon[_ngcontent-%COMP%]{mar