@materia/users
Version:
Signin/signup your users in your Materia application
980 lines (975 loc) • 65.4 kB
JavaScript
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) {
const 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) {
const 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) {
const 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) {
const 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();
const _r9 = ɵɵreference(7);
const 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();
const _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) {
const 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) {
const 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) {
const 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) {
const ctx_r3 = ɵɵnextContext();
ɵɵadvance(2);
ɵɵtextInterpolate(ctx_r3.label);
ɵɵadvance(1);
ɵɵproperty("formControlName", ctx_r3.param.name);
} }
const DefaultComponent = Object.freeze({
text: 'text',
number: 'text',
date: 'date',
float: 'text',
boolean: 'switch'
});
class ParamInputComponent {
constructor() {
this.showAsterisk = true;
this.showCheckbox = true;
this.changed = new EventEmitter();
}
get requiredError() {
return (this.form.get(this.param.name) &&
this.form.get(this.param.name).hasError('required'));
}
get checkboxName() {
return `${this.param.name}_check`;
}
ngOnInit() {
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(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: [""] });
/*@__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
}] }); })();
const _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) {
const param_r4 = ctx.$implicit;
const 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) {
const ctx_r2 = ɵɵnextContext(2);
ɵɵadvance(1);
ɵɵproperty("ngForOf", ctx_r2.profileFields);
} }
function SignupFormComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
const _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); const 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); const ctx_r7 = ɵɵnextContext(); return ctx_r7.cancel.emit(); });
ɵɵtext(13, "Cancel");
ɵɵelementEnd();
ɵɵelementEnd();
ɵɵelementEnd();
ɵɵelementEnd();
} if (rf & 2) {
const ctx_r1 = ɵɵnextContext();
ɵɵadvance(3);
ɵɵproperty("formGroup", ctx_r1.signupForm);
ɵɵadvance(5);
ɵɵproperty("ngIf", ctx_r1.profileFields.length > 0);
} }
class SignupFormComponent {
constructor(fb) {
this.fb = fb;
this.signup = new EventEmitter();
this.cancel = new EventEmitter();
}
ngOnChanges(changes) {
if (changes.profileFields && changes.profileFields.currentValue) {
this.initForm();
}
}
initForm() {
this.signupForm = this.fb.group(Object.assign({}, {
email: ['', Validators.required],
password: ['', Validators.required]
}, this.getProfileFormGroup()));
}
getProfileFormGroup() {
if (!this.profileFields) {
return {};
}
const result = {};
this.profileFields.forEach(field => {
if (field.required) {
result[field.name] = ['', Validators.required];
}
else {
result[field.name] = '';
}
});
return result;
}
ngOnInit() {
this.initForm();
}
signupClick() {
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}"] });
/*@__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
}] }); })();
const _c0$1 = ["signupPanel"];
const _c1 = ["changeEmailPanel"];
const _c2 = ["lostPasswordPanel"];
function EmailSettingsComponent_mat_option_11_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "mat-option", 20);
ɵɵtext(1);
ɵɵelementEnd();
} if (rf & 2) {
const 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) {
const 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) {
const t_r8 = ctx.$implicit;
ɵɵproperty("value", t_r8.id);
ɵɵadvance(1);
ɵɵtextInterpolate2("", t_r8.name, " (", t_r8.id, ")");
} }
class EmailSettingsComponent {
constructor(http, form) {
this.http = http;
this.form = form;
this.hide = new EventEmitter();
this.save = new EventEmitter();
}
ngOnInit() {
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();
}
refreshTemplates() {
if (this.settings.email_addon === '@materia/mailjet') {
this.http
.post(`${this.baseUrl}/entities/mailjet_template/queries/list`, { limit: 1000 })
.subscribe(data => {
this.templates = data.data
.filter(row => row.OwnerId !== 0)
.map(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(data => {
this.templates = data && data.data && data.data;
// TODO...
});
}
}
saveEmailSettings() {
if (this.emailForm.valid) {
this.save.emit(this.emailForm.value);
}
}
cancel() {
this.hide.emit();
}
getSettingsProperty(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}"] });
/*@__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) {
const _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); const ctx_r8 = ɵɵnextContext(); return ctx_r8.logout(); });
ɵɵtext(3, "Logout");
ɵɵelementEnd();
ɵɵtext(4, ") ");
ɵɵelementEnd();
} if (rf & 2) {
const 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) {
const _r13 = ɵɵgetCurrentView();
ɵɵelementStart(0, "button", 17);
ɵɵlistener("click", function UserManagementViewComponent_ng_container_4_button_7_Template_button_click_0_listener() { ɵɵrestoreView(_r13); const 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) {
const _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); const user_r18 = ɵɵnextContext(2).$implicit; const 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) {
const _r21 = ɵɵreference(3);
const 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) {
const user_r18 = ctx.$implicit;
const 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) {
const _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); const ctx_r27 = ɵɵnextContext(3); return ctx_r27.paginationEvent($event); });
ɵɵelementEnd();
ɵɵelementEnd();
} if (rf & 2) {
const 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) {
const _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); const 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) {
const _r15 = ɵɵreference(3);
const 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) {
const _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); const 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) {
const ctx_r1 = ɵɵnextContext();
const _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) {
const _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); const 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) {
const _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); const 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); const ctx_r37 = ɵɵnextContext(); return ctx_r37.hideEmailSettings(); })("save", function UserManagementViewComponent_div_9_Template_materia_user_management_email_settings_save_10_listener($event) { ɵɵrestoreView(_r36); const ctx_r38 = ɵɵnextContext(); return ctx_r38.saveEmailSettings($event); });
ɵɵelementEnd();
ɵɵelementEnd();
} if (rf & 2) {
const ctx_r6 = ɵɵnextContext();
ɵɵadvance(10);
ɵɵproperty("settings", ctx_r6.settings)("baseUrl", ctx_r6.baseUrl);
} }
let UserManagementViewComponent = class UserManagementViewComponent {
constructor(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;
}
ngOnInit() {
this.refreshList();
this.refreshConnectedUser();
this.getProfileParams();
}
getProfileParams() {
if (this.settings &&
this.settings.user_profile_enabled &&
this.settings.user_profile_entity) {
return this.http
.get(`${this.baseUrl}/infos`)
.toPromise()
.then(res => {
const profileEntity = res.entities.find(entity => entity.name === this.settings.user_profile_entity);
this.profileFields = profileEntity.fields.filter(field => field.name !== 'id_user' &&
(!field.primary || (field.primary && !field.autoIncrement)));
})
.catch(e => {
this.profileFields = [];
});
}
else {
this.profileFields = [];
return Promise.resolve();
}
}
refreshList(params) {
this.loading = true;
this.http
.post(`${this.baseUrl}/entities/user/queries/listWithGravatar`, params)
.subscribe(res => {
this.users = res.data;
this.nbUsers = res.count;
this.loading = false;
});
}
refreshConnectedUser() {
this.http.get(`${this.apiUrl}/user/me`).subscribe(res => {
this.me = res;
}, () => (this.me = null));
}
paginationEvent(event) {
this.defaultPageIndex = event.pageIndex;
this.refreshList({ limit: event.pageSize, page: event.pageIndex + 1 });
}
configureEmails() {
this.displayEmailSettings = true;
}
hideEmailSettings() {
this.displayEmailSettings = false;
}
openSignupDialog() {
this.signupDialog = this.dialog.open(this.signupDialogComp.template, {
panelClass: 'no-padding'
});
}
saveEmailSettings(settings) {
this.http
.post(`${this.baseUrl}/addons/@materia/users/setup`, settings)
.subscribe(() => {
this.snackbarSuccess.emit('Settings saved!');
this.hideEmailSettings();
this.settings = settings;
});
}
closeSignupDialog() {
this.signupDialog.close();
}
signup(user) {
this.http.post(`${this.apiUrl}/user/signup`, user).subscribe(() => {
this.closeSignupDialog();
this.refreshList();
this.refreshConnectedUser();
});
}
logout() {
this.http.post(`${this.apiUrl}/user/logout`, {}).subscribe(() => {
this.refreshConnectedUser();
}, () => this.refreshConnectedUser());
}
resendVerification(id) {
this.http.post(`${this.baseUrl}/entities/user/queries/sendVerificationEmail`, { id_user: id })
.subscribe(() => this.snackbarSuccess.emit('Verification email sent!'));
}
};
UserManagementViewComponent.ctorParameters = () => [
{ 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) {
const _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%]{margin:2px 8px}.no-users[_ngcontent-%COMP%]{font-style:italic}.verified[_ngcontent-%COMP%]{margin:0 15px}.verified[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#4caf50;font-size:14px;font-weight:700;margin:0 16px}"] });
UserManagementViewComponent = __decorate([
AddonView('@materia/users'),
__metadata("design:paramtypes", [MatDialog,
HttpClient])
], UserManagementViewComponent);
/*@__PURE__*/ (function () { ɵsetClassMetadata(UserManagementViewComponent, [{
type: Component,
args: [{
selector: 'materia-user-management',
templateUrl: './user-management.component.html',
styleUrls: ['./user-management.component.scss']
}]
}], function () { return [{ type: MatDialog }, { type: HttpClient }]; }, { app: [{
type: Input
}], settings: [{
type: Input
}], baseUrl: [{
type: Input
}], apiUrl: [{
type: Input
}], openSetup: [{
type: Output
}], snackbarSuccess: [{
type: Output
}], signupDialogComp: [{
type: ViewChild,
args: [SignupFormComponent, { static: true }]
}] }); })();
function UserManagementSetupComponent_form_0_mat_form_field_19_mat_option_2_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "mat-option", 18);
ɵɵtext(1);
ɵɵelementEnd();
} if (rf & 2) {
const entity_r8 = ctx.$implicit;
ɵɵproperty("value", entity_r8.name);
ɵɵadvance(1);
ɵɵtextInterpolate(entity_r8.name);
} }
function UserManagementSetupComponent_form_0_mat_form_field_19_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "mat-form-field");
ɵɵelementStart(1, "mat-select", 16);
ɵɵtemplate(2, UserManagementSetupComponent_form_0_mat_form_field_19_mat_option_2_Template, 2, 2, "mat-option", 17);
ɵɵelementEnd();
ɵɵelementEnd();
} if (rf & 2) {
const ctx_r1 = ɵɵnextContext(2);
ɵɵadvance(2);
ɵɵproperty("ngForOf", ctx_r1.entities);
} }
function UserManagementSetupComponent_form_0_ng_template_20_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "div", 19);
ɵɵtext(1, " No entity found. You need an entity to add custom fields to your users. ");
ɵɵelementEnd();
} }
function UserManagementSetupComponent_form_0_mat_form_field_25_mat_option_2_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "mat-option", 18);
ɵɵtext(1);
ɵɵelementEnd();
} if (rf & 2) {
const addon_r10 = ctx.$implicit;
ɵɵproperty("value", addon_r10.package);
ɵɵadvance(1);
ɵɵtextInterpolate(addon_r10.name);
} }
function UserManagementSetupComponent_form_0_mat_form_field_25_Template(rf, ctx) { if (rf & 1) {
ɵɵelementStart(0, "mat-