build: output files

pull/1562/head
mehmet-erim 6 years ago
parent 3ec673ddb3
commit 0872977fcf

@ -0,0 +1 @@
<h1> @abp/ng.account </h1>

@ -0,0 +1,10 @@
/**
* Generated bundle index. Do not edit.
*/
export * from './public-api';
export { AccountRoutingModule as ɵe } from './lib/account-routing.module';
export { LoginComponent as ɵa } from './lib/components/login/login.component';
export { RegisterComponent as ɵc } from './lib/components/register/register.component';
export { TenantBoxComponent as ɵd } from './lib/components/tenant-box/tenant-box.component';
export { Options as ɵb } from './lib/models/options';
export { ACCOUNT_OPTIONS as ɵg, optionsFactory as ɵf } from './lib/tokens/options.token';

File diff suppressed because one or more lines are too long

@ -0,0 +1,334 @@
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@angular/router'), require('@angular/forms'), require('@ngxs/router-plugin'), require('@ngxs/store'), require('angular-oauth2-oidc'), require('rxjs'), require('@abp/ng.theme.shared'), require('rxjs/operators'), require('snq'), require('@ngx-validate/core'), require('@ng-bootstrap/ng-bootstrap'), require('primeng/table')) :
typeof define === 'function' && define.amd ? define('@abp/ng.account', ['exports', '@abp/ng.core', '@angular/core', '@angular/router', '@angular/forms', '@ngxs/router-plugin', '@ngxs/store', 'angular-oauth2-oidc', 'rxjs', '@abp/ng.theme.shared', 'rxjs/operators', 'snq', '@ngx-validate/core', '@ng-bootstrap/ng-bootstrap', 'primeng/table'], factory) :
(global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.account = {}), global.ng_core, global.ng.core, global.ng.router, global.ng.forms, global.routerPlugin, global.store, global.angularOauth2Oidc, global.rxjs, global.ng_theme_shared, global.rxjs.operators, global.snq, global.core$1, global.ngBootstrap, global.table));
}(this, function (exports, ng_core, core, router, forms, routerPlugin, store, angularOauth2Oidc, rxjs, ng_theme_shared, operators, snq, core$1, ngBootstrap, table) { 'use strict';
snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq;
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var maxLength = forms.Validators.maxLength, minLength = forms.Validators.minLength, required = forms.Validators.required;
var LoginComponent = /** @class */ (function () {
function LoginComponent(fb, oauthService, store, toasterService, options) {
this.fb = fb;
this.oauthService = oauthService;
this.store = store;
this.toasterService = toasterService;
this.options = options;
this.oauthService.configure(this.store.selectSnapshot(ng_core.ConfigState.getOne('environment')).oAuthConfig);
this.oauthService.loadDiscoveryDocument();
this.form = this.fb.group({
username: ['', [required, maxLength(255)]],
password: ['', [required, maxLength(32)]],
remember: [false],
});
}
/**
* @return {?}
*/
LoginComponent.prototype.onSubmit = /**
* @return {?}
*/
function () {
var _this = this;
if (this.form.invalid)
return;
this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);
this.inProgress = true;
rxjs.from(this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value))
.pipe(operators.switchMap((/**
* @return {?}
*/
function () { return _this.store.dispatch(new ng_core.ConfigGetAppConfiguration()); })), operators.tap((/**
* @return {?}
*/
function () {
/** @type {?} */
var redirectUrl = snq((/**
* @return {?}
*/
function () { return window.history.state; })).redirectUrl || (_this.options || {}).redirectUrl || '/';
_this.store.dispatch(new routerPlugin.Navigate([redirectUrl]));
})), operators.catchError((/**
* @param {?} err
* @return {?}
*/
function (err) {
_this.toasterService.error(snq((/**
* @return {?}
*/
function () { return err.error.error_description; }), 'An error occured.'), 'Error');
return rxjs.throwError(err);
})), operators.finalize((/**
* @return {?}
*/
function () { return (_this.inProgress = false); })))
.subscribe();
};
LoginComponent.decorators = [
{ type: core.Component, args: [{
selector: 'abp-login',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>{{ 'AbpAccount::Login' | abpLocalization }}</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"login-input-user-name-or-email-address\">{{\n 'AbpAccount::UserNameOrEmailAddress' | abpLocalization\n }}</label>\n <input\n class=\"form-control\"\n type=\"text\"\n id=\"login-input-user-name-or-email-address\"\n formControlName=\"username\"\n />\n </div>\n <div class=\"form-group\">\n <label for=\"login-input-password\">{{ 'AbpAccount::Password' | abpLocalization }}</label>\n <input class=\"form-control\" type=\"password\" id=\"login-input-password\" formControlName=\"password\" />\n </div>\n <div class=\"form-check\" validationTarget validationStyle>\n <label class=\"form-check-label\" for=\"login-input-remember-me\">\n <input class=\"form-check-input\" type=\"checkbox\" id=\"login-input-remember-me\" formControlName=\"remember\" />\n {{ 'AbpAccount::RememberMe' | abpLocalization }}\n </label>\n </div>\n <div class=\"mt-2\">\n <button type=\"button\" name=\"Action\" value=\"Cancel\" class=\"btn btn-secondary\">\n {{ 'AbpAccount::Cancel' | abpLocalization }}\n </button>\n <button [disabled]=\"inProgress\" type=\"submit\" name=\"Action\" value=\"Login\" class=\"btn btn-primary ml-1\">\n {{ 'AbpAccount::Login' | abpLocalization }}\n </button>\n </div>\n </form>\n <div style=\"padding-top: 20px\">\n <a routerLink=\"/account/register\">{{ 'AbpAccount::Register' | abpLocalization }}</a>\n </div>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
LoginComponent.ctorParameters = function () { return [
{ type: forms.FormBuilder },
{ type: angularOauth2Oidc.OAuthService },
{ type: store.Store },
{ type: ng_theme_shared.ToasterService },
{ type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: ['ACCOUNT_OPTIONS',] }] }
]; };
return LoginComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var maxLength$1 = forms.Validators.maxLength, minLength$1 = forms.Validators.minLength, required$1 = forms.Validators.required, email = forms.Validators.email;
var RegisterComponent = /** @class */ (function () {
function RegisterComponent(fb, oauthService, router) {
this.fb = fb;
this.oauthService = oauthService;
this.router = router;
this.form = this.fb.group({
username: ['', [required$1, maxLength$1(255)]],
password: [
'',
[required$1, maxLength$1(32), minLength$1(6), core$1.validatePassword(['small', 'capital', 'number', 'special'])],
],
email: ['', [required$1, email]],
});
}
/**
* @return {?}
*/
RegisterComponent.prototype.onSubmit = /**
* @return {?}
*/
function () {
if (this.form.invalid)
return;
};
RegisterComponent.decorators = [
{ type: core.Component, args: [{
selector: 'abp-register',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>Register</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"input-user-name\">User name</label><span> * </span\n ><input autofocus type=\"text\" id=\"input-user-name\" class=\"form-control\" formControlName=\"username\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-email-address\">Email address</label><span> * </span\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-password\">Password</label><span> * </span\n ><input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\n </div>\n <button type=\"submit\" class=\"btn btn-primary\">Register</button>\n </form>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
RegisterComponent.ctorParameters = function () { return [
{ type: forms.FormBuilder },
{ type: angularOauth2Oidc.OAuthService },
{ type: router.Router }
]; };
return RegisterComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
component: ng_core.DynamicLayoutComponent,
children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],
},
];
var AccountRoutingModule = /** @class */ (function () {
function AccountRoutingModule() {
}
AccountRoutingModule.decorators = [
{ type: core.NgModule, args: [{
imports: [router.RouterModule.forChild(routes)],
exports: [router.RouterModule],
},] }
];
return AccountRoutingModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var TenantBoxComponent = /** @class */ (function () {
function TenantBoxComponent(modalService, fb) {
this.modalService = modalService;
this.fb = fb;
}
/**
* @return {?}
*/
TenantBoxComponent.prototype.createForm = /**
* @return {?}
*/
function () {
this.form = this.fb.group({
name: [this.selected.name],
});
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.openModal = /**
* @return {?}
*/
function () {
this.createForm();
this.modalService.open(this.modalContent);
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.onSwitch = /**
* @return {?}
*/
function () {
this.selected = (/** @type {?} */ ({}));
this.openModal();
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.save = /**
* @return {?}
*/
function () {
this.selected = this.form.value;
this.modalService.dismissAll();
};
TenantBoxComponent.decorators = [
{ type: core.Component, args: [{
selector: 'abp-tenant-box',
template: "<div\n class=\"tenant-switch-box\"\n style=\"background-color: #eee; margin-bottom: 20px; color: #000; padding: 10px; text-align: center;\"\n>\n <span style=\"color: #666;\">{{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: </span>\n <strong>\n <i>{{ selected?.name ? selected.name : ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </strong>\n (<a id=\"abp-tenant-switch-link\" style=\"color: #333; cursor: pointer\" (click)=\"onSwitch()\">{{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }}</a\n >)\n</div>\n\n<ng-template #modalContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modal-basic-title\">\n SwitchTenant\n </h5>\n <button type=\"button\" class=\"close\" aria-label=\"Close\" (click)=\"modal.dismiss()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"modal-body\">\n <div class=\"mt-2\">\n <div class=\"form-group\">\n <label for=\"name\">{{ 'AbpUiMultiTenancy::Name' | abpLocalization }}</label>\n <input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\" (click)=\"modal.close()\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <button type=\"submit\" class=\"btn btn-primary\">\n <i class=\"fa fa-check mr-1\"></i> <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </button>\n </div>\n </form>\n</ng-template>\n"
}] }
];
/** @nocollapse */
TenantBoxComponent.ctorParameters = function () { return [
{ type: ngBootstrap.NgbModal },
{ type: forms.FormBuilder }
]; };
TenantBoxComponent.propDecorators = {
modalContent: [{ type: core.ViewChild, args: ['modalContent', { static: false },] }]
};
return TenantBoxComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @param {?} options
* @return {?}
*/
function optionsFactory(options) {
return __assign({ redirectUrl: '/' }, options);
}
/** @type {?} */
var ACCOUNT_OPTIONS = new core.InjectionToken('ACCOUNT_OPTIONS');
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var AccountModule = /** @class */ (function () {
function AccountModule() {
}
/**
* @param {?=} options
* @return {?}
*/
AccountModule.forRoot = /**
* @param {?=} options
* @return {?}
*/
function (options) {
if (options === void 0) { options = (/** @type {?} */ ({})); }
return {
ngModule: AccountModule,
providers: [
{ provide: ACCOUNT_OPTIONS, useValue: options },
{
provide: 'ACCOUNT_OPTIONS',
useFactory: optionsFactory,
deps: [ACCOUNT_OPTIONS],
},
],
};
};
AccountModule.decorators = [
{ type: core.NgModule, args: [{
declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],
imports: [ng_core.CoreModule, AccountRoutingModule, ng_theme_shared.ThemeSharedModule, table.TableModule, ngBootstrap.NgbDropdownModule, core$1.NgxValidateCoreModule],
exports: [],
},] }
];
return AccountModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var ACCOUNT_ROUTES = (/** @type {?} */ ([
{
name: 'Account',
path: 'account',
invisible: true,
layout: "application" /* application */,
children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],
},
]));
exports.ACCOUNT_OPTIONS = ACCOUNT_OPTIONS;
exports.ACCOUNT_ROUTES = ACCOUNT_ROUTES;
exports.AccountModule = AccountModule;
exports.LoginComponent = LoginComponent;
exports.RegisterComponent = RegisterComponent;
exports.optionsFactory = optionsFactory;
exports.ɵa = LoginComponent;
exports.ɵc = RegisterComponent;
exports.ɵd = TenantBoxComponent;
exports.ɵe = AccountRoutingModule;
exports.ɵf = optionsFactory;
exports.ɵg = ACCOUNT_OPTIONS;
Object.defineProperty(exports, '__esModule', { value: true });
}));
//# sourceMappingURL=abp-ng.account.umd.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1,14 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* Generated bundle index. Do not edit.
*/
export { AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api';
export { AccountRoutingModule as ɵe } from './lib/account-routing.module';
export { LoginComponent as ɵa } from './lib/components/login/login.component';
export { RegisterComponent as ɵc } from './lib/components/register/register.component';
export { TenantBoxComponent as ɵd } from './lib/components/tenant-box/tenant-box.component';
export { ACCOUNT_OPTIONS as ɵg, optionsFactory as ɵf } from './lib/tokens/options.token';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0hBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FjY291bnRSb3V0aW5nTW9kdWxlIGFzIMm1ZX0gZnJvbSAnLi9saWIvYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQge0xvZ2luQ29tcG9uZW50IGFzIMm1YX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuZXhwb3J0IHtSZWdpc3RlckNvbXBvbmVudCBhcyDJtWN9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50JztcbmV4cG9ydCB7VGVuYW50Qm94Q29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50JztcbmV4cG9ydCB7T3B0aW9ucyBhcyDJtWJ9IGZyb20gJy4vbGliL21vZGVscy9vcHRpb25zJztcbmV4cG9ydCB7QUNDT1VOVF9PUFRJT05TIGFzIMm1ZyxvcHRpb25zRmFjdG9yeSBhcyDJtWZ9IGZyb20gJy4vbGliL3Rva2Vucy9vcHRpb25zLnRva2VuJzsiXX0=

@ -0,0 +1,27 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { LoginComponent } from './components/login/login.component';
import { RegisterComponent } from './components/register/register.component';
import { DynamicLayoutComponent } from '@abp/ng.core';
/** @type {?} */
const routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
component: DynamicLayoutComponent,
children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],
},
];
export class AccountRoutingModule {
}
AccountRoutingModule.decorators = [
{ type: NgModule, args: [{
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDOztNQUVoRCxNQUFNLEdBQVc7SUFDckIsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRTtJQUNwRDtRQUNFLElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLHNCQUFzQjtRQUNqQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztLQUM3RztDQUNGO0FBTUQsTUFBTSxPQUFPLG9CQUFvQjs7O1lBSmhDLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVzLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHsgcGF0aDogJycsIHBhdGhNYXRjaDogJ2Z1bGwnLCByZWRpcmVjdFRvOiAnbG9naW4nIH0sXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBjb21wb25lbnQ6IER5bmFtaWNMYXlvdXRDb21wb25lbnQsXG4gICAgY2hpbGRyZW46IFt7IHBhdGg6ICdsb2dpbicsIGNvbXBvbmVudDogTG9naW5Db21wb25lbnQgfSwgeyBwYXRoOiAncmVnaXN0ZXInLCBjb21wb25lbnQ6IFJlZ2lzdGVyQ29tcG9uZW50IH1dLFxuICB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFjY291bnRSb3V0aW5nTW9kdWxlIHt9XG4iXX0=

@ -0,0 +1,42 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { CoreModule } from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { AccountRoutingModule } from './account-routing.module';
import { LoginComponent } from './components/login/login.component';
import { RegisterComponent } from './components/register/register.component';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TenantBoxComponent } from './components/tenant-box/tenant-box.component';
import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';
import { TableModule } from 'primeng/table';
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
import { NgxValidateCoreModule } from '@ngx-validate/core';
export class AccountModule {
/**
* @param {?=} options
* @return {?}
*/
static forRoot(options = (/** @type {?} */ ({}))) {
return {
ngModule: AccountModule,
providers: [
{ provide: ACCOUNT_OPTIONS, useValue: options },
{
provide: 'ACCOUNT_OPTIONS',
useFactory: optionsFactory,
deps: [ACCOUNT_OPTIONS],
},
],
};
}
}
AccountModule.decorators = [
{ type: NgModule, args: [{
declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],
imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],
exports: [],
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQU8zRCxNQUFNLE9BQU8sYUFBYTs7Ozs7SUFDeEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsbUJBQUEsRUFBRSxFQUFXO1FBQ3BDLE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQy9DO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFVBQVUsRUFBRSxjQUFjO29CQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQ3hCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBbEJGLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7Z0JBQ3JFLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLENBQUM7Z0JBQ3JILE9BQU8sRUFBRSxFQUFFO2FBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVnaXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgVGVuYW50Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL29wdGlvbnMnO1xuaW1wb3J0IHsgQUNDT1VOVF9PUFRJT05TLCBvcHRpb25zRmFjdG9yeSB9IGZyb20gJy4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9naW5Db21wb25lbnQsIFJlZ2lzdGVyQ29tcG9uZW50LCBUZW5hbnRCb3hDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQWNjb3VudFJvdXRpbmdNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlLCBUYWJsZU1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUsIE5neFZhbGlkYXRlQ29yZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3Qob3B0aW9ucyA9IHt9IGFzIE9wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFjY291bnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBBQ0NPVU5UX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQUNDT1VOVF9PUFRJT05TJyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBvcHRpb25zRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbQUNDT1VOVF9PUFRJT05TXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19

@ -0,0 +1,7 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { LoginComponent } from './login/login.component';
export { RegisterComponent } from './register/register.component';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQWMseUJBQXlCLENBQUM7QUFDeEMsa0NBQWMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XG4iXX0=

File diff suppressed because one or more lines are too long

@ -0,0 +1,69 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from '@angular/core';
import { FormBuilder, Validators } from '@angular/forms';
import { Router } from '@angular/router';
import { validatePassword } from '@ngx-validate/core';
import { OAuthService } from 'angular-oauth2-oidc';
const { maxLength, minLength, required, email } = Validators;
export class RegisterComponent {
/**
* @param {?} fb
* @param {?} oauthService
* @param {?} router
*/
constructor(fb, oauthService, router) {
this.fb = fb;
this.oauthService = oauthService;
this.router = router;
this.form = this.fb.group({
username: ['', [required, maxLength(255)]],
password: [
'',
[required, maxLength(32), minLength(6), validatePassword(['small', 'capital', 'number', 'special'])],
],
email: ['', [required, email]],
});
}
/**
* @return {?}
*/
onSubmit() {
if (this.form.invalid)
return;
}
}
RegisterComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-register',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>Register</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"input-user-name\">User name</label><span> * </span\n ><input autofocus type=\"text\" id=\"input-user-name\" class=\"form-control\" formControlName=\"username\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-email-address\">Email address</label><span> * </span\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-password\">Password</label><span> * </span\n ><input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\n </div>\n <button type=\"submit\" class=\"btn btn-primary\">Register</button>\n </form>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
RegisterComponent.ctorParameters = () => [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Router }
];
if (false) {
/** @type {?} */
RegisterComponent.prototype.form;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.fb;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.oauthService;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.router;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5hY2NvdW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztNQUU3QyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVU7QUFNNUQsTUFBTSxPQUFPLGlCQUFpQjs7Ozs7O0lBRzVCLFlBQW9CLEVBQWUsRUFBVSxZQUEwQixFQUFVLE1BQWM7UUFBM0UsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUM3RixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxRQUFRLEVBQUU7Z0JBQ1IsRUFBRTtnQkFDRixDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQzthQUNyRztZQUNELEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUMvQixDQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztJQUNoQyxDQUFDOzs7WUFwQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2dCQUN4QiwybENBQXdDO2FBQ3pDOzs7O1lBVlEsV0FBVztZQUdYLFlBQVk7WUFGWixNQUFNOzs7O0lBV2IsaUNBQWdCOzs7OztJQUVKLCtCQUF1Qjs7Ozs7SUFBRSx5Q0FBa0M7Ozs7O0lBQUUsbUNBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHZhbGlkYXRlUGFzc3dvcmQgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgT0F1dGhTZXJ2aWNlIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5cbmNvbnN0IHsgbWF4TGVuZ3RoLCBtaW5MZW5ndGgsIHJlcXVpcmVkLCBlbWFpbCB9ID0gVmFsaWRhdG9ycztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXJlZ2lzdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlZ2lzdGVyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUmVnaXN0ZXJDb21wb25lbnQge1xuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgb2F1dGhTZXJ2aWNlOiBPQXV0aFNlcnZpY2UsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIHVzZXJuYW1lOiBbJycsIFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDI1NSldXSxcbiAgICAgIHBhc3N3b3JkOiBbXG4gICAgICAgICcnLFxuICAgICAgICBbcmVxdWlyZWQsIG1heExlbmd0aCgzMiksIG1pbkxlbmd0aCg2KSwgdmFsaWRhdGVQYXNzd29yZChbJ3NtYWxsJywgJ2NhcGl0YWwnLCAnbnVtYmVyJywgJ3NwZWNpYWwnXSldLFxuICAgICAgXSxcbiAgICAgIGVtYWlsOiBbJycsIFtyZXF1aXJlZCwgZW1haWxdXSxcbiAgICB9KTtcbiAgfVxuXG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xuICB9XG59XG4iXX0=

@ -0,0 +1,79 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, TemplateRef, ViewChild } from '@angular/core';
import { FormBuilder } from '@angular/forms';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
export class TenantBoxComponent {
/**
* @param {?} modalService
* @param {?} fb
*/
constructor(modalService, fb) {
this.modalService = modalService;
this.fb = fb;
}
/**
* @return {?}
*/
createForm() {
this.form = this.fb.group({
name: [this.selected.name],
});
}
/**
* @return {?}
*/
openModal() {
this.createForm();
this.modalService.open(this.modalContent);
}
/**
* @return {?}
*/
onSwitch() {
this.selected = (/** @type {?} */ ({}));
this.openModal();
}
/**
* @return {?}
*/
save() {
this.selected = this.form.value;
this.modalService.dismissAll();
}
}
TenantBoxComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-tenant-box',
template: "<div\n class=\"tenant-switch-box\"\n style=\"background-color: #eee; margin-bottom: 20px; color: #000; padding: 10px; text-align: center;\"\n>\n <span style=\"color: #666;\">{{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: </span>\n <strong>\n <i>{{ selected?.name ? selected.name : ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </strong>\n (<a id=\"abp-tenant-switch-link\" style=\"color: #333; cursor: pointer\" (click)=\"onSwitch()\">{{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }}</a\n >)\n</div>\n\n<ng-template #modalContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modal-basic-title\">\n SwitchTenant\n </h5>\n <button type=\"button\" class=\"close\" aria-label=\"Close\" (click)=\"modal.dismiss()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"modal-body\">\n <div class=\"mt-2\">\n <div class=\"form-group\">\n <label for=\"name\">{{ 'AbpUiMultiTenancy::Name' | abpLocalization }}</label>\n <input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\" (click)=\"modal.close()\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <button type=\"submit\" class=\"btn btn-primary\">\n <i class=\"fa fa-check mr-1\"></i> <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </button>\n </div>\n </form>\n</ng-template>\n"
}] }
];
/** @nocollapse */
TenantBoxComponent.ctorParameters = () => [
{ type: NgbModal },
{ type: FormBuilder }
];
TenantBoxComponent.propDecorators = {
modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }]
};
if (false) {
/** @type {?} */
TenantBoxComponent.prototype.form;
/** @type {?} */
TenantBoxComponent.prototype.selected;
/** @type {?} */
TenantBoxComponent.prototype.modalContent;
/**
* @type {?}
* @private
*/
TenantBoxComponent.prototype.modalService;
/**
* @type {?}
* @private
*/
TenantBoxComponent.prototype.fb;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQU90RCxNQUFNLE9BQU8sa0JBQWtCOzs7OztJQUM3QixZQUFvQixZQUFzQixFQUFVLEVBQWU7UUFBL0MsaUJBQVksR0FBWixZQUFZLENBQVU7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFhO0lBQUcsQ0FBQzs7OztJQVN2RSxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztTQUMzQixDQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7OztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLG1CQUFBLEVBQUUsRUFBaUIsQ0FBQztRQUNwQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7OztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDakMsQ0FBQzs7O1lBakNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiwydkRBQTBDO2FBQzNDOzs7O1lBTlEsUUFBUTtZQURSLFdBQVc7OzsyQkFlakIsU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Ozs7SUFKNUMsa0NBQWdCOztJQUVoQixzQ0FBd0I7O0lBRXhCLDBDQUMrQjs7Ozs7SUFQbkIsMENBQThCOzs7OztJQUFFLGdDQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXRlbmFudC1ib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVuYW50LWJveC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFRlbmFudEJveENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIpIHt9XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIHNlbGVjdGVkOiBBQlAuQmFzaWNJdGVtO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBtb2RhbENvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY3JlYXRlRm9ybSgpIHtcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIG5hbWU6IFt0aGlzLnNlbGVjdGVkLm5hbWVdLFxuICAgIH0pO1xuICB9XG5cbiAgb3Blbk1vZGFsKCkge1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4odGhpcy5tb2RhbENvbnRlbnQpO1xuICB9XG5cbiAgb25Td2l0Y2goKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHt9IGFzIEFCUC5CYXNpY0l0ZW07XG4gICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgfVxuXG4gIHNhdmUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuZm9ybS52YWx1ZTtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5kaXNtaXNzQWxsKCk7XG4gIH1cbn1cbiJdfQ==

@ -0,0 +1,15 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
export const ACCOUNT_ROUTES = (/** @type {?} */ ([
{
name: 'Account',
path: 'account',
invisible: true,
layout: "application" /* application */,
children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],
},
]));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5hY2NvdW50LyIsInNvdXJjZXMiOlsibGliL2NvbnN0YW50cy9yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSxNQUFNLE9BQU8sY0FBYyxHQUFHLG1CQUFBO0lBQzVCO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixJQUFJLEVBQUUsU0FBUztRQUNmLFNBQVMsRUFBRSxJQUFJO1FBQ2YsTUFBTSxpQ0FBeUI7UUFDL0IsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQztLQUN6RztDQUNGLEVBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJQLCBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbmV4cG9ydCBjb25zdCBBQ0NPVU5UX1JPVVRFUyA9IFtcbiAge1xuICAgIG5hbWU6ICdBY2NvdW50JyxcbiAgICBwYXRoOiAnYWNjb3VudCcsXG4gICAgaW52aXNpYmxlOiB0cnVlLFxuICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sXG4gICAgY2hpbGRyZW46IFt7IHBhdGg6ICdsb2dpbicsIG5hbWU6ICdMb2dpbicsIG9yZGVyOiAxIH0sIHsgcGF0aDogJ3JlZ2lzdGVyJywgbmFtZTogJ1JlZ2lzdGVyJywgb3JkZXI6IDIgfV0sXG4gIH0sXG5dIGFzIEFCUC5GdWxsUm91dGVbXTtcbiJdfQ==

@ -0,0 +1,6 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export {} from './options';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxlQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucyc7XG4iXX0=

@ -0,0 +1,6 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { optionsFactory, ACCOUNT_OPTIONS } from './options.token';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxnREFBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucy50b2tlbic7XG4iXX0=

@ -0,0 +1,15 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { InjectionToken } from '@angular/core';
/**
* @param {?} options
* @return {?}
*/
export function optionsFactory(options) {
return Object.assign({ redirectUrl: '/' }, options);
}
/** @type {?} */
export const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi90b2tlbnMvb3B0aW9ucy50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFHL0MsTUFBTSxVQUFVLGNBQWMsQ0FBQyxPQUFnQjtJQUM3Qyx1QkFDRSxXQUFXLEVBQUUsR0FBRyxJQUNiLE9BQU8sRUFDVjtBQUNKLENBQUM7O0FBRUQsTUFBTSxPQUFPLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPcHRpb25zIH0gZnJvbSAnLi4vbW9kZWxzL29wdGlvbnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gb3B0aW9uc0ZhY3Rvcnkob3B0aW9uczogT3B0aW9ucykge1xuICByZXR1cm4ge1xuICAgIHJlZGlyZWN0VXJsOiAnLycsXG4gICAgLi4ub3B0aW9ucyxcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IEFDQ09VTlRfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignQUNDT1VOVF9PUFRJT05TJyk7XG4iXX0=

@ -0,0 +1,13 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* Public API Surface of auth
*/
export { AccountModule } from './lib/account.module';
export { LoginComponent, RegisterComponent } from './lib/components';
export { ACCOUNT_ROUTES } from './lib/constants/routes';
export { optionsFactory, ACCOUNT_OPTIONS } from './lib/tokens';
export {} from './lib/models';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLDhCQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYXV0aFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjY291bnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbiJdfQ==

@ -0,0 +1,14 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* Generated bundle index. Do not edit.
*/
export { AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api';
export { AccountRoutingModule as ɵe } from './lib/account-routing.module';
export { LoginComponent as ɵa } from './lib/components/login/login.component';
export { RegisterComponent as ɵc } from './lib/components/register/register.component';
export { TenantBoxComponent as ɵd } from './lib/components/tenant-box/tenant-box.component';
export { ACCOUNT_OPTIONS as ɵg, optionsFactory as ɵf } from './lib/tokens/options.token';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0hBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FjY291bnRSb3V0aW5nTW9kdWxlIGFzIMm1ZX0gZnJvbSAnLi9saWIvYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQge0xvZ2luQ29tcG9uZW50IGFzIMm1YX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuZXhwb3J0IHtSZWdpc3RlckNvbXBvbmVudCBhcyDJtWN9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50JztcbmV4cG9ydCB7VGVuYW50Qm94Q29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50JztcbmV4cG9ydCB7T3B0aW9ucyBhcyDJtWJ9IGZyb20gJy4vbGliL21vZGVscy9vcHRpb25zJztcbmV4cG9ydCB7QUNDT1VOVF9PUFRJT05TIGFzIMm1ZyxvcHRpb25zRmFjdG9yeSBhcyDJtWZ9IGZyb20gJy4vbGliL3Rva2Vucy9vcHRpb25zLnRva2VuJzsiXX0=

@ -0,0 +1,31 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { LoginComponent } from './components/login/login.component';
import { RegisterComponent } from './components/register/register.component';
import { DynamicLayoutComponent } from '@abp/ng.core';
/** @type {?} */
var routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
component: DynamicLayoutComponent,
children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],
},
];
var AccountRoutingModule = /** @class */ (function () {
function AccountRoutingModule() {
}
AccountRoutingModule.decorators = [
{ type: NgModule, args: [{
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
},] }
];
return AccountRoutingModule;
}());
export { AccountRoutingModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDOztJQUVoRCxNQUFNLEdBQVc7SUFDckIsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRTtJQUNwRDtRQUNFLElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLHNCQUFzQjtRQUNqQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztLQUM3RztDQUNGO0FBRUQ7SUFBQTtJQUltQyxDQUFDOztnQkFKbkMsUUFBUSxTQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEI7O0lBQ2tDLDJCQUFDO0NBQUEsQUFKcEMsSUFJb0M7U0FBdkIsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvZ2luQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWdpc3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dENvbXBvbmVudCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICB7IHBhdGg6ICcnLCBwYXRoTWF0Y2g6ICdmdWxsJywgcmVkaXJlY3RUbzogJ2xvZ2luJyB9LFxuICB7XG4gICAgcGF0aDogJycsXG4gICAgY29tcG9uZW50OiBEeW5hbWljTGF5b3V0Q29tcG9uZW50LFxuICAgIGNoaWxkcmVuOiBbeyBwYXRoOiAnbG9naW4nLCBjb21wb25lbnQ6IExvZ2luQ29tcG9uZW50IH0sIHsgcGF0aDogJ3JlZ2lzdGVyJywgY29tcG9uZW50OiBSZWdpc3RlckNvbXBvbmVudCB9XSxcbiAgfSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKV0sXG4gIGV4cG9ydHM6IFtSb3V0ZXJNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50Um91dGluZ01vZHVsZSB7fVxuIl19

@ -0,0 +1,51 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { CoreModule } from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { AccountRoutingModule } from './account-routing.module';
import { LoginComponent } from './components/login/login.component';
import { RegisterComponent } from './components/register/register.component';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TenantBoxComponent } from './components/tenant-box/tenant-box.component';
import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';
import { TableModule } from 'primeng/table';
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
import { NgxValidateCoreModule } from '@ngx-validate/core';
var AccountModule = /** @class */ (function () {
function AccountModule() {
}
/**
* @param {?=} options
* @return {?}
*/
AccountModule.forRoot = /**
* @param {?=} options
* @return {?}
*/
function (options) {
if (options === void 0) { options = (/** @type {?} */ ({})); }
return {
ngModule: AccountModule,
providers: [
{ provide: ACCOUNT_OPTIONS, useValue: options },
{
provide: 'ACCOUNT_OPTIONS',
useFactory: optionsFactory,
deps: [ACCOUNT_OPTIONS],
},
],
};
};
AccountModule.decorators = [
{ type: NgModule, args: [{
declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],
imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],
exports: [],
},] }
];
return AccountModule;
}());
export { AccountModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUzRDtJQUFBO0lBbUJBLENBQUM7Ozs7O0lBYlEscUJBQU87Ozs7SUFBZCxVQUFlLE9BQXVCO1FBQXZCLHdCQUFBLEVBQUEsNkJBQVUsRUFBRSxFQUFXO1FBQ3BDLE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQy9DO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFVBQVUsRUFBRSxjQUFjO29CQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQ3hCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Z0JBbEJGLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3JFLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLENBQUM7b0JBQ3JILE9BQU8sRUFBRSxFQUFFO2lCQUNaOztJQWVELG9CQUFDO0NBQUEsQUFuQkQsSUFtQkM7U0FkWSxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWNjb3VudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2FjY291bnQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IFRlbmFudEJveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IE9wdGlvbnMgfSBmcm9tICcuL21vZGVscy9vcHRpb25zJztcbmltcG9ydCB7IEFDQ09VTlRfT1BUSU9OUywgb3B0aW9uc0ZhY3RvcnkgfSBmcm9tICcuL3Rva2Vucy9vcHRpb25zLnRva2VuJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0xvZ2luQ29tcG9uZW50LCBSZWdpc3RlckNvbXBvbmVudCwgVGVuYW50Qm94Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEFjY291bnRSb3V0aW5nTW9kdWxlLCBUaGVtZVNoYXJlZE1vZHVsZSwgVGFibGVNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlLCBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGVdLFxuICBleHBvcnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KG9wdGlvbnMgPSB7fSBhcyBPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBY2NvdW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogQUNDT1VOVF9PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogJ0FDQ09VTlRfT1BUSU9OUycsXG4gICAgICAgICAgdXNlRmFjdG9yeTogb3B0aW9uc0ZhY3RvcnksXG4gICAgICAgICAgZGVwczogW0FDQ09VTlRfT1BUSU9OU10sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==

@ -0,0 +1,7 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { LoginComponent } from './login/login.component';
export { RegisterComponent } from './register/register.component';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQWMseUJBQXlCLENBQUM7QUFDeEMsa0NBQWMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XG4iXX0=

File diff suppressed because one or more lines are too long

@ -0,0 +1,69 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from '@angular/core';
import { FormBuilder, Validators } from '@angular/forms';
import { Router } from '@angular/router';
import { validatePassword } from '@ngx-validate/core';
import { OAuthService } from 'angular-oauth2-oidc';
var maxLength = Validators.maxLength, minLength = Validators.minLength, required = Validators.required, email = Validators.email;
var RegisterComponent = /** @class */ (function () {
function RegisterComponent(fb, oauthService, router) {
this.fb = fb;
this.oauthService = oauthService;
this.router = router;
this.form = this.fb.group({
username: ['', [required, maxLength(255)]],
password: [
'',
[required, maxLength(32), minLength(6), validatePassword(['small', 'capital', 'number', 'special'])],
],
email: ['', [required, email]],
});
}
/**
* @return {?}
*/
RegisterComponent.prototype.onSubmit = /**
* @return {?}
*/
function () {
if (this.form.invalid)
return;
};
RegisterComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-register',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>Register</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"input-user-name\">User name</label><span> * </span\n ><input autofocus type=\"text\" id=\"input-user-name\" class=\"form-control\" formControlName=\"username\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-email-address\">Email address</label><span> * </span\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-password\">Password</label><span> * </span\n ><input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\n </div>\n <button type=\"submit\" class=\"btn btn-primary\">Register</button>\n </form>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
RegisterComponent.ctorParameters = function () { return [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Router }
]; };
return RegisterComponent;
}());
export { RegisterComponent };
if (false) {
/** @type {?} */
RegisterComponent.prototype.form;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.fb;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.oauthService;
/**
* @type {?}
* @private
*/
RegisterComponent.prototype.router;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5hY2NvdW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUzQyxJQUFBLGdDQUFTLEVBQUUsZ0NBQVMsRUFBRSw4QkFBUSxFQUFFLHdCQUFLO0FBRTdDO0lBT0UsMkJBQW9CLEVBQWUsRUFBVSxZQUEwQixFQUFVLE1BQWM7UUFBM0UsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUM3RixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxRQUFRLEVBQUU7Z0JBQ1IsRUFBRTtnQkFDRixDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQzthQUNyRztZQUNELEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUMvQixDQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsb0NBQVE7OztJQUFSO1FBQ0UsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO0lBQ2hDLENBQUM7O2dCQXBCRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLDJsQ0FBd0M7aUJBQ3pDOzs7O2dCQVZRLFdBQVc7Z0JBR1gsWUFBWTtnQkFGWixNQUFNOztJQTJCZix3QkFBQztDQUFBLEFBckJELElBcUJDO1NBakJZLGlCQUFpQjs7O0lBQzVCLGlDQUFnQjs7Ozs7SUFFSiwrQkFBdUI7Ozs7O0lBQUUseUNBQWtDOzs7OztJQUFFLG1DQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyB2YWxpZGF0ZVBhc3N3b3JkIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IE9BdXRoU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuXG5jb25zdCB7IG1heExlbmd0aCwgbWluTGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1yZWdpc3RlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWdpc3Rlci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlZ2lzdGVyQ29tcG9uZW50IHtcbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIG9hdXRoU2VydmljZTogT0F1dGhTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB1c2VybmFtZTogWycnLCBbcmVxdWlyZWQsIG1heExlbmd0aCgyNTUpXV0sXG4gICAgICBwYXNzd29yZDogW1xuICAgICAgICAnJyxcbiAgICAgICAgW3JlcXVpcmVkLCBtYXhMZW5ndGgoMzIpLCBtaW5MZW5ndGgoNiksIHZhbGlkYXRlUGFzc3dvcmQoWydzbWFsbCcsICdjYXBpdGFsJywgJ251bWJlcicsICdzcGVjaWFsJ10pXSxcbiAgICAgIF0sXG4gICAgICBlbWFpbDogWycnLCBbcmVxdWlyZWQsIGVtYWlsXV0sXG4gICAgfSk7XG4gIH1cblxuICBvblN1Ym1pdCgpIHtcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcbiAgfVxufVxuIl19

@ -0,0 +1,89 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, TemplateRef, ViewChild } from '@angular/core';
import { FormBuilder } from '@angular/forms';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
var TenantBoxComponent = /** @class */ (function () {
function TenantBoxComponent(modalService, fb) {
this.modalService = modalService;
this.fb = fb;
}
/**
* @return {?}
*/
TenantBoxComponent.prototype.createForm = /**
* @return {?}
*/
function () {
this.form = this.fb.group({
name: [this.selected.name],
});
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.openModal = /**
* @return {?}
*/
function () {
this.createForm();
this.modalService.open(this.modalContent);
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.onSwitch = /**
* @return {?}
*/
function () {
this.selected = (/** @type {?} */ ({}));
this.openModal();
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.save = /**
* @return {?}
*/
function () {
this.selected = this.form.value;
this.modalService.dismissAll();
};
TenantBoxComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-tenant-box',
template: "<div\n class=\"tenant-switch-box\"\n style=\"background-color: #eee; margin-bottom: 20px; color: #000; padding: 10px; text-align: center;\"\n>\n <span style=\"color: #666;\">{{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: </span>\n <strong>\n <i>{{ selected?.name ? selected.name : ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </strong>\n (<a id=\"abp-tenant-switch-link\" style=\"color: #333; cursor: pointer\" (click)=\"onSwitch()\">{{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }}</a\n >)\n</div>\n\n<ng-template #modalContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modal-basic-title\">\n SwitchTenant\n </h5>\n <button type=\"button\" class=\"close\" aria-label=\"Close\" (click)=\"modal.dismiss()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"modal-body\">\n <div class=\"mt-2\">\n <div class=\"form-group\">\n <label for=\"name\">{{ 'AbpUiMultiTenancy::Name' | abpLocalization }}</label>\n <input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\" (click)=\"modal.close()\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <button type=\"submit\" class=\"btn btn-primary\">\n <i class=\"fa fa-check mr-1\"></i> <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </button>\n </div>\n </form>\n</ng-template>\n"
}] }
];
/** @nocollapse */
TenantBoxComponent.ctorParameters = function () { return [
{ type: NgbModal },
{ type: FormBuilder }
]; };
TenantBoxComponent.propDecorators = {
modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }]
};
return TenantBoxComponent;
}());
export { TenantBoxComponent };
if (false) {
/** @type {?} */
TenantBoxComponent.prototype.form;
/** @type {?} */
TenantBoxComponent.prototype.selected;
/** @type {?} */
TenantBoxComponent.prototype.modalContent;
/**
* @type {?}
* @private
*/
TenantBoxComponent.prototype.modalService;
/**
* @type {?}
* @private
*/
TenantBoxComponent.prototype.fb;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd0RDtJQUtFLDRCQUFvQixZQUFzQixFQUFVLEVBQWU7UUFBL0MsaUJBQVksR0FBWixZQUFZLENBQVU7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFhO0lBQUcsQ0FBQzs7OztJQVN2RSx1Q0FBVTs7O0lBQVY7UUFDRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFRCxzQ0FBUzs7O0lBQVQ7UUFDRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzVDLENBQUM7Ozs7SUFFRCxxQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLG1CQUFBLEVBQUUsRUFBaUIsQ0FBQztRQUNwQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7OztJQUVELGlDQUFJOzs7SUFBSjtRQUNFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztnQkFqQ0YsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLDJ2REFBMEM7aUJBQzNDOzs7O2dCQU5RLFFBQVE7Z0JBRFIsV0FBVzs7OytCQWVqQixTQUFTLFNBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7SUF1QjlDLHlCQUFDO0NBQUEsQUFsQ0QsSUFrQ0M7U0E5Qlksa0JBQWtCOzs7SUFHN0Isa0NBQWdCOztJQUVoQixzQ0FBd0I7O0lBRXhCLDBDQUMrQjs7Ozs7SUFQbkIsMENBQThCOzs7OztJQUFFLGdDQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXRlbmFudC1ib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVuYW50LWJveC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFRlbmFudEJveENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIpIHt9XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIHNlbGVjdGVkOiBBQlAuQmFzaWNJdGVtO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBtb2RhbENvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY3JlYXRlRm9ybSgpIHtcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIG5hbWU6IFt0aGlzLnNlbGVjdGVkLm5hbWVdLFxuICAgIH0pO1xuICB9XG5cbiAgb3Blbk1vZGFsKCkge1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgIHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4odGhpcy5tb2RhbENvbnRlbnQpO1xuICB9XG5cbiAgb25Td2l0Y2goKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHt9IGFzIEFCUC5CYXNpY0l0ZW07XG4gICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgfVxuXG4gIHNhdmUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuZm9ybS52YWx1ZTtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5kaXNtaXNzQWxsKCk7XG4gIH1cbn1cbiJdfQ==

@ -0,0 +1,15 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
export var ACCOUNT_ROUTES = (/** @type {?} */ ([
{
name: 'Account',
path: 'account',
invisible: true,
layout: "application" /* application */,
children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],
},
]));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5hY2NvdW50LyIsInNvdXJjZXMiOlsibGliL2NvbnN0YW50cy9yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSxNQUFNLEtBQU8sY0FBYyxHQUFHLG1CQUFBO0lBQzVCO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixJQUFJLEVBQUUsU0FBUztRQUNmLFNBQVMsRUFBRSxJQUFJO1FBQ2YsTUFBTSxpQ0FBeUI7UUFDL0IsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQztLQUN6RztDQUNGLEVBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJQLCBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbmV4cG9ydCBjb25zdCBBQ0NPVU5UX1JPVVRFUyA9IFtcbiAge1xuICAgIG5hbWU6ICdBY2NvdW50JyxcbiAgICBwYXRoOiAnYWNjb3VudCcsXG4gICAgaW52aXNpYmxlOiB0cnVlLFxuICAgIGxheW91dDogZUxheW91dFR5cGUuYXBwbGljYXRpb24sXG4gICAgY2hpbGRyZW46IFt7IHBhdGg6ICdsb2dpbicsIG5hbWU6ICdMb2dpbicsIG9yZGVyOiAxIH0sIHsgcGF0aDogJ3JlZ2lzdGVyJywgbmFtZTogJ1JlZ2lzdGVyJywgb3JkZXI6IDIgfV0sXG4gIH0sXG5dIGFzIEFCUC5GdWxsUm91dGVbXTtcbiJdfQ==

@ -0,0 +1,6 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export {} from './options';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxlQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucyc7XG4iXX0=

@ -0,0 +1,13 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @record
*/
export function Options() { }
if (false) {
/** @type {?|undefined} */
Options.prototype.redirectUrl;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsNkJBRUM7OztJQURDLDhCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XG4gIHJlZGlyZWN0VXJsPzogc3RyaW5nO1xufVxuIl19

@ -0,0 +1,6 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { optionsFactory, ACCOUNT_OPTIONS } from './options.token';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxnREFBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucy50b2tlbic7XG4iXX0=

@ -0,0 +1,16 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { InjectionToken } from '@angular/core';
/**
* @param {?} options
* @return {?}
*/
export function optionsFactory(options) {
return tslib_1.__assign({ redirectUrl: '/' }, options);
}
/** @type {?} */
export var ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi90b2tlbnMvb3B0aW9ucy50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBRy9DLE1BQU0sVUFBVSxjQUFjLENBQUMsT0FBZ0I7SUFDN0MsMEJBQ0UsV0FBVyxFQUFFLEdBQUcsSUFDYixPQUFPLEVBQ1Y7QUFDSixDQUFDOztBQUVELE1BQU0sS0FBTyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQUMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4uL21vZGVscy9vcHRpb25zJztcblxuZXhwb3J0IGZ1bmN0aW9uIG9wdGlvbnNGYWN0b3J5KG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgcmV0dXJuIHtcbiAgICByZWRpcmVjdFVybDogJy8nLFxuICAgIC4uLm9wdGlvbnMsXG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBBQ0NPVU5UX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ0FDQ09VTlRfT1BUSU9OUycpO1xuIl19

@ -0,0 +1,13 @@
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* Public API Surface of auth
*/
export { AccountModule } from './lib/account.module';
export { LoginComponent, RegisterComponent } from './lib/components';
export { ACCOUNT_ROUTES } from './lib/constants/routes';
export { optionsFactory, ACCOUNT_OPTIONS } from './lib/tokens';
export {} from './lib/models';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLDhCQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYXV0aFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjY291bnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbiJdfQ==

@ -0,0 +1,283 @@
import { ConfigState, ConfigGetAppConfiguration, DynamicLayoutComponent, CoreModule } from '@abp/ng.core';
import { Component, Optional, Inject, NgModule, ViewChild, InjectionToken } from '@angular/core';
import { Router, RouterModule } from '@angular/router';
import { FormBuilder, Validators } from '@angular/forms';
import { Navigate } from '@ngxs/router-plugin';
import { Store } from '@ngxs/store';
import { OAuthService } from 'angular-oauth2-oidc';
import { from, throwError } from 'rxjs';
import { ToasterService, ThemeSharedModule } from '@abp/ng.theme.shared';
import { switchMap, tap, catchError, finalize } from 'rxjs/operators';
import snq from 'snq';
import { validatePassword, NgxValidateCoreModule } from '@ngx-validate/core';
import { NgbModal, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
import { TableModule } from 'primeng/table';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
const { maxLength, minLength, required } = Validators;
class LoginComponent {
/**
* @param {?} fb
* @param {?} oauthService
* @param {?} store
* @param {?} toasterService
* @param {?} options
*/
constructor(fb, oauthService, store, toasterService, options) {
this.fb = fb;
this.oauthService = oauthService;
this.store = store;
this.toasterService = toasterService;
this.options = options;
this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);
this.oauthService.loadDiscoveryDocument();
this.form = this.fb.group({
username: ['', [required, maxLength(255)]],
password: ['', [required, maxLength(32)]],
remember: [false],
});
}
/**
* @return {?}
*/
onSubmit() {
if (this.form.invalid)
return;
this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);
this.inProgress = true;
from(this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value))
.pipe(switchMap((/**
* @return {?}
*/
() => this.store.dispatch(new ConfigGetAppConfiguration()))), tap((/**
* @return {?}
*/
() => {
/** @type {?} */
const redirectUrl = snq((/**
* @return {?}
*/
() => window.history.state)).redirectUrl || (this.options || {}).redirectUrl || '/';
this.store.dispatch(new Navigate([redirectUrl]));
})), catchError((/**
* @param {?} err
* @return {?}
*/
err => {
this.toasterService.error(snq((/**
* @return {?}
*/
() => err.error.error_description), 'An error occured.'), 'Error');
return throwError(err);
})), finalize((/**
* @return {?}
*/
() => (this.inProgress = false))))
.subscribe();
}
}
LoginComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-login',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>{{ 'AbpAccount::Login' | abpLocalization }}</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"login-input-user-name-or-email-address\">{{\n 'AbpAccount::UserNameOrEmailAddress' | abpLocalization\n }}</label>\n <input\n class=\"form-control\"\n type=\"text\"\n id=\"login-input-user-name-or-email-address\"\n formControlName=\"username\"\n />\n </div>\n <div class=\"form-group\">\n <label for=\"login-input-password\">{{ 'AbpAccount::Password' | abpLocalization }}</label>\n <input class=\"form-control\" type=\"password\" id=\"login-input-password\" formControlName=\"password\" />\n </div>\n <div class=\"form-check\" validationTarget validationStyle>\n <label class=\"form-check-label\" for=\"login-input-remember-me\">\n <input class=\"form-check-input\" type=\"checkbox\" id=\"login-input-remember-me\" formControlName=\"remember\" />\n {{ 'AbpAccount::RememberMe' | abpLocalization }}\n </label>\n </div>\n <div class=\"mt-2\">\n <button type=\"button\" name=\"Action\" value=\"Cancel\" class=\"btn btn-secondary\">\n {{ 'AbpAccount::Cancel' | abpLocalization }}\n </button>\n <button [disabled]=\"inProgress\" type=\"submit\" name=\"Action\" value=\"Login\" class=\"btn btn-primary ml-1\">\n {{ 'AbpAccount::Login' | abpLocalization }}\n </button>\n </div>\n </form>\n <div style=\"padding-top: 20px\">\n <a routerLink=\"/account/register\">{{ 'AbpAccount::Register' | abpLocalization }}</a>\n </div>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
LoginComponent.ctorParameters = () => [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Store },
{ type: ToasterService },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: ['ACCOUNT_OPTIONS',] }] }
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
const { maxLength: maxLength$1, minLength: minLength$1, required: required$1, email } = Validators;
class RegisterComponent {
/**
* @param {?} fb
* @param {?} oauthService
* @param {?} router
*/
constructor(fb, oauthService, router) {
this.fb = fb;
this.oauthService = oauthService;
this.router = router;
this.form = this.fb.group({
username: ['', [required$1, maxLength$1(255)]],
password: [
'',
[required$1, maxLength$1(32), minLength$1(6), validatePassword(['small', 'capital', 'number', 'special'])],
],
email: ['', [required$1, email]],
});
}
/**
* @return {?}
*/
onSubmit() {
if (this.form.invalid)
return;
}
}
RegisterComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-register',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>Register</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"input-user-name\">User name</label><span> * </span\n ><input autofocus type=\"text\" id=\"input-user-name\" class=\"form-control\" formControlName=\"username\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-email-address\">Email address</label><span> * </span\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-password\">Password</label><span> * </span\n ><input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\n </div>\n <button type=\"submit\" class=\"btn btn-primary\">Register</button>\n </form>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
RegisterComponent.ctorParameters = () => [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Router }
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
const routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
component: DynamicLayoutComponent,
children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],
},
];
class AccountRoutingModule {
}
AccountRoutingModule.decorators = [
{ type: NgModule, args: [{
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
},] }
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class TenantBoxComponent {
/**
* @param {?} modalService
* @param {?} fb
*/
constructor(modalService, fb) {
this.modalService = modalService;
this.fb = fb;
}
/**
* @return {?}
*/
createForm() {
this.form = this.fb.group({
name: [this.selected.name],
});
}
/**
* @return {?}
*/
openModal() {
this.createForm();
this.modalService.open(this.modalContent);
}
/**
* @return {?}
*/
onSwitch() {
this.selected = (/** @type {?} */ ({}));
this.openModal();
}
/**
* @return {?}
*/
save() {
this.selected = this.form.value;
this.modalService.dismissAll();
}
}
TenantBoxComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-tenant-box',
template: "<div\n class=\"tenant-switch-box\"\n style=\"background-color: #eee; margin-bottom: 20px; color: #000; padding: 10px; text-align: center;\"\n>\n <span style=\"color: #666;\">{{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: </span>\n <strong>\n <i>{{ selected?.name ? selected.name : ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </strong>\n (<a id=\"abp-tenant-switch-link\" style=\"color: #333; cursor: pointer\" (click)=\"onSwitch()\">{{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }}</a\n >)\n</div>\n\n<ng-template #modalContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modal-basic-title\">\n SwitchTenant\n </h5>\n <button type=\"button\" class=\"close\" aria-label=\"Close\" (click)=\"modal.dismiss()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"modal-body\">\n <div class=\"mt-2\">\n <div class=\"form-group\">\n <label for=\"name\">{{ 'AbpUiMultiTenancy::Name' | abpLocalization }}</label>\n <input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\" (click)=\"modal.close()\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <button type=\"submit\" class=\"btn btn-primary\">\n <i class=\"fa fa-check mr-1\"></i> <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </button>\n </div>\n </form>\n</ng-template>\n"
}] }
];
/** @nocollapse */
TenantBoxComponent.ctorParameters = () => [
{ type: NgbModal },
{ type: FormBuilder }
];
TenantBoxComponent.propDecorators = {
modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }]
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @param {?} options
* @return {?}
*/
function optionsFactory(options) {
return Object.assign({ redirectUrl: '/' }, options);
}
/** @type {?} */
const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class AccountModule {
/**
* @param {?=} options
* @return {?}
*/
static forRoot(options = (/** @type {?} */ ({}))) {
return {
ngModule: AccountModule,
providers: [
{ provide: ACCOUNT_OPTIONS, useValue: options },
{
provide: 'ACCOUNT_OPTIONS',
useFactory: optionsFactory,
deps: [ACCOUNT_OPTIONS],
},
],
};
}
}
AccountModule.decorators = [
{ type: NgModule, args: [{
declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],
imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],
exports: [],
},] }
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
const ACCOUNT_ROUTES = (/** @type {?} */ ([
{
name: 'Account',
path: 'account',
invisible: true,
layout: "application" /* application */,
children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],
},
]));
export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, LoginComponent, RegisterComponent, optionsFactory, LoginComponent as ɵa, RegisterComponent as ɵc, TenantBoxComponent as ɵd, AccountRoutingModule as ɵe, optionsFactory as ɵf, ACCOUNT_OPTIONS as ɵg };
//# sourceMappingURL=abp-ng.account.js.map

File diff suppressed because one or more lines are too long

@ -0,0 +1,301 @@
import { ConfigGetAppConfiguration, ConfigState, DynamicLayoutComponent, CoreModule } from '@abp/ng.core';
import { Component, Optional, Inject, NgModule, ViewChild, InjectionToken } from '@angular/core';
import { Router, RouterModule } from '@angular/router';
import { Validators, FormBuilder } from '@angular/forms';
import { Navigate } from '@ngxs/router-plugin';
import { Store } from '@ngxs/store';
import { OAuthService } from 'angular-oauth2-oidc';
import { from, throwError } from 'rxjs';
import { ToasterService, ThemeSharedModule } from '@abp/ng.theme.shared';
import { switchMap, tap, catchError, finalize } from 'rxjs/operators';
import snq from 'snq';
import { validatePassword, NgxValidateCoreModule } from '@ngx-validate/core';
import { NgbModal, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
import { __assign } from 'tslib';
import { TableModule } from 'primeng/table';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var maxLength = Validators.maxLength, minLength = Validators.minLength, required = Validators.required;
var LoginComponent = /** @class */ (function () {
function LoginComponent(fb, oauthService, store, toasterService, options) {
this.fb = fb;
this.oauthService = oauthService;
this.store = store;
this.toasterService = toasterService;
this.options = options;
this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);
this.oauthService.loadDiscoveryDocument();
this.form = this.fb.group({
username: ['', [required, maxLength(255)]],
password: ['', [required, maxLength(32)]],
remember: [false],
});
}
/**
* @return {?}
*/
LoginComponent.prototype.onSubmit = /**
* @return {?}
*/
function () {
var _this = this;
if (this.form.invalid)
return;
this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);
this.inProgress = true;
from(this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value))
.pipe(switchMap((/**
* @return {?}
*/
function () { return _this.store.dispatch(new ConfigGetAppConfiguration()); })), tap((/**
* @return {?}
*/
function () {
/** @type {?} */
var redirectUrl = snq((/**
* @return {?}
*/
function () { return window.history.state; })).redirectUrl || (_this.options || {}).redirectUrl || '/';
_this.store.dispatch(new Navigate([redirectUrl]));
})), catchError((/**
* @param {?} err
* @return {?}
*/
function (err) {
_this.toasterService.error(snq((/**
* @return {?}
*/
function () { return err.error.error_description; }), 'An error occured.'), 'Error');
return throwError(err);
})), finalize((/**
* @return {?}
*/
function () { return (_this.inProgress = false); })))
.subscribe();
};
LoginComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-login',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>{{ 'AbpAccount::Login' | abpLocalization }}</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"login-input-user-name-or-email-address\">{{\n 'AbpAccount::UserNameOrEmailAddress' | abpLocalization\n }}</label>\n <input\n class=\"form-control\"\n type=\"text\"\n id=\"login-input-user-name-or-email-address\"\n formControlName=\"username\"\n />\n </div>\n <div class=\"form-group\">\n <label for=\"login-input-password\">{{ 'AbpAccount::Password' | abpLocalization }}</label>\n <input class=\"form-control\" type=\"password\" id=\"login-input-password\" formControlName=\"password\" />\n </div>\n <div class=\"form-check\" validationTarget validationStyle>\n <label class=\"form-check-label\" for=\"login-input-remember-me\">\n <input class=\"form-check-input\" type=\"checkbox\" id=\"login-input-remember-me\" formControlName=\"remember\" />\n {{ 'AbpAccount::RememberMe' | abpLocalization }}\n </label>\n </div>\n <div class=\"mt-2\">\n <button type=\"button\" name=\"Action\" value=\"Cancel\" class=\"btn btn-secondary\">\n {{ 'AbpAccount::Cancel' | abpLocalization }}\n </button>\n <button [disabled]=\"inProgress\" type=\"submit\" name=\"Action\" value=\"Login\" class=\"btn btn-primary ml-1\">\n {{ 'AbpAccount::Login' | abpLocalization }}\n </button>\n </div>\n </form>\n <div style=\"padding-top: 20px\">\n <a routerLink=\"/account/register\">{{ 'AbpAccount::Register' | abpLocalization }}</a>\n </div>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
LoginComponent.ctorParameters = function () { return [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Store },
{ type: ToasterService },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: ['ACCOUNT_OPTIONS',] }] }
]; };
return LoginComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var maxLength$1 = Validators.maxLength, minLength$1 = Validators.minLength, required$1 = Validators.required, email = Validators.email;
var RegisterComponent = /** @class */ (function () {
function RegisterComponent(fb, oauthService, router) {
this.fb = fb;
this.oauthService = oauthService;
this.router = router;
this.form = this.fb.group({
username: ['', [required$1, maxLength$1(255)]],
password: [
'',
[required$1, maxLength$1(32), minLength$1(6), validatePassword(['small', 'capital', 'number', 'special'])],
],
email: ['', [required$1, email]],
});
}
/**
* @return {?}
*/
RegisterComponent.prototype.onSubmit = /**
* @return {?}
*/
function () {
if (this.form.invalid)
return;
};
RegisterComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-register',
template: "<div class=\"row\">\n <div class=\"col col-md-4 offset-md-4\">\n <abp-tenant-box></abp-tenant-box>\n\n <div class=\"abp-account-container\">\n <h2>Register</h2>\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" novalidate>\n <div class=\"form-group\">\n <label for=\"input-user-name\">User name</label><span> * </span\n ><input autofocus type=\"text\" id=\"input-user-name\" class=\"form-control\" formControlName=\"username\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-email-address\">Email address</label><span> * </span\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\n </div>\n <div class=\"form-group\">\n <label for=\"input-password\">Password</label><span> * </span\n ><input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\n </div>\n <button type=\"submit\" class=\"btn btn-primary\">Register</button>\n </form>\n </div>\n </div>\n</div>\n"
}] }
];
/** @nocollapse */
RegisterComponent.ctorParameters = function () { return [
{ type: FormBuilder },
{ type: OAuthService },
{ type: Router }
]; };
return RegisterComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
component: DynamicLayoutComponent,
children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],
},
];
var AccountRoutingModule = /** @class */ (function () {
function AccountRoutingModule() {
}
AccountRoutingModule.decorators = [
{ type: NgModule, args: [{
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
},] }
];
return AccountRoutingModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var TenantBoxComponent = /** @class */ (function () {
function TenantBoxComponent(modalService, fb) {
this.modalService = modalService;
this.fb = fb;
}
/**
* @return {?}
*/
TenantBoxComponent.prototype.createForm = /**
* @return {?}
*/
function () {
this.form = this.fb.group({
name: [this.selected.name],
});
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.openModal = /**
* @return {?}
*/
function () {
this.createForm();
this.modalService.open(this.modalContent);
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.onSwitch = /**
* @return {?}
*/
function () {
this.selected = (/** @type {?} */ ({}));
this.openModal();
};
/**
* @return {?}
*/
TenantBoxComponent.prototype.save = /**
* @return {?}
*/
function () {
this.selected = this.form.value;
this.modalService.dismissAll();
};
TenantBoxComponent.decorators = [
{ type: Component, args: [{
selector: 'abp-tenant-box',
template: "<div\n class=\"tenant-switch-box\"\n style=\"background-color: #eee; margin-bottom: 20px; color: #000; padding: 10px; text-align: center;\"\n>\n <span style=\"color: #666;\">{{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: </span>\n <strong>\n <i>{{ selected?.name ? selected.name : ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </strong>\n (<a id=\"abp-tenant-switch-link\" style=\"color: #333; cursor: pointer\" (click)=\"onSwitch()\">{{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }}</a\n >)\n</div>\n\n<ng-template #modalContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modal-basic-title\">\n SwitchTenant\n </h5>\n <button type=\"button\" class=\"close\" aria-label=\"Close\" (click)=\"modal.dismiss()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"modal-body\">\n <div class=\"mt-2\">\n <div class=\"form-group\">\n <label for=\"name\">{{ 'AbpUiMultiTenancy::Name' | abpLocalization }}</label>\n <input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\" (click)=\"modal.close()\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <button type=\"submit\" class=\"btn btn-primary\">\n <i class=\"fa fa-check mr-1\"></i> <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </button>\n </div>\n </form>\n</ng-template>\n"
}] }
];
/** @nocollapse */
TenantBoxComponent.ctorParameters = function () { return [
{ type: NgbModal },
{ type: FormBuilder }
]; };
TenantBoxComponent.propDecorators = {
modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }]
};
return TenantBoxComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @param {?} options
* @return {?}
*/
function optionsFactory(options) {
return __assign({ redirectUrl: '/' }, options);
}
/** @type {?} */
var ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var AccountModule = /** @class */ (function () {
function AccountModule() {
}
/**
* @param {?=} options
* @return {?}
*/
AccountModule.forRoot = /**
* @param {?=} options
* @return {?}
*/
function (options) {
if (options === void 0) { options = (/** @type {?} */ ({})); }
return {
ngModule: AccountModule,
providers: [
{ provide: ACCOUNT_OPTIONS, useValue: options },
{
provide: 'ACCOUNT_OPTIONS',
useFactory: optionsFactory,
deps: [ACCOUNT_OPTIONS],
},
],
};
};
AccountModule.decorators = [
{ type: NgModule, args: [{
declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],
imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],
exports: [],
},] }
];
return AccountModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var ACCOUNT_ROUTES = (/** @type {?} */ ([
{
name: 'Account',
path: 'account',
invisible: true,
layout: "application" /* application */,
children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],
},
]));
export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, LoginComponent, RegisterComponent, optionsFactory, LoginComponent as ɵa, RegisterComponent as ɵc, TenantBoxComponent as ɵd, AccountRoutingModule as ɵe, optionsFactory as ɵf, ACCOUNT_OPTIONS as ɵg };
//# sourceMappingURL=abp-ng.account.js.map

File diff suppressed because one or more lines are too long

@ -0,0 +1,2 @@
export declare class AccountRoutingModule {
}

@ -0,0 +1,5 @@
import { ModuleWithProviders } from '@angular/core';
import { Options } from './models/options';
export declare class AccountModule {
static forRoot(options?: Options): ModuleWithProviders;
}

@ -0,0 +1,2 @@
export * from './login/login.component';
export * from './register/register.component';

@ -0,0 +1,16 @@
import { FormBuilder, FormGroup } from '@angular/forms';
import { Store } from '@ngxs/store';
import { OAuthService } from 'angular-oauth2-oidc';
import { Options } from '../../models/options';
import { ToasterService } from '@abp/ng.theme.shared';
export declare class LoginComponent {
private fb;
private oauthService;
private store;
private toasterService;
private options;
form: FormGroup;
inProgress: boolean;
constructor(fb: FormBuilder, oauthService: OAuthService, store: Store, toasterService: ToasterService, options: Options);
onSubmit(): void;
}

@ -0,0 +1,11 @@
import { FormBuilder, FormGroup } from '@angular/forms';
import { Router } from '@angular/router';
import { OAuthService } from 'angular-oauth2-oidc';
export declare class RegisterComponent {
private fb;
private oauthService;
private router;
form: FormGroup;
constructor(fb: FormBuilder, oauthService: OAuthService, router: Router);
onSubmit(): void;
}

@ -0,0 +1,16 @@
import { TemplateRef } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
import { ABP } from '@abp/ng.core';
export declare class TenantBoxComponent {
private modalService;
private fb;
constructor(modalService: NgbModal, fb: FormBuilder);
form: FormGroup;
selected: ABP.BasicItem;
modalContent: TemplateRef<any>;
createForm(): void;
openModal(): void;
onSwitch(): void;
save(): void;
}

@ -0,0 +1,2 @@
import { ABP } from '@abp/ng.core';
export declare const ACCOUNT_ROUTES: ABP.FullRoute[];

@ -0,0 +1 @@
export * from './options';

@ -0,0 +1 @@
export * from './options.token';

@ -0,0 +1,6 @@
import { InjectionToken } from '@angular/core';
import { Options } from '../models/options';
export declare function optionsFactory(options: Options): {
redirectUrl: string;
};
export declare const ACCOUNT_OPTIONS: InjectionToken<{}>;

@ -0,0 +1,21 @@
{
"name": "@abp/ng.account",
"version": "0.7.6",
"dependencies": {
"@abp/ng.theme.shared": "^0.7.6",
"tslib": "^1.9.0"
},
"publishConfig": {
"access": "public"
},
"main": "bundles/abp-ng.account.umd.js",
"module": "fesm5/abp-ng.account.js",
"es2015": "fesm2015/abp-ng.account.js",
"esm5": "esm5/abp-ng.account.js",
"esm2015": "esm2015/abp-ng.account.js",
"fesm5": "fesm5/abp-ng.account.js",
"fesm2015": "fesm2015/abp-ng.account.js",
"typings": "abp-ng.account.d.ts",
"metadata": "abp-ng.account.metadata.json",
"sideEffects": false
}

@ -0,0 +1,5 @@
export * from './lib/account.module';
export * from './lib/components';
export * from './lib/constants/routes';
export * from './lib/tokens';
export * from './lib/models';

@ -251,7 +251,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
};
return this.rest.request(request);
};
@ -267,7 +267,7 @@
/** @type {?} */
var request = {
method: 'PUT',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
body: body,
};
return this.rest.request(request);
@ -284,7 +284,7 @@
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/profile/changePassword',
url: '/api/identity/my-profile/changePassword',
body: body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -20,7 +20,7 @@ export class ProfileService {
/** @type {?} */
const request = {
method: 'GET',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
};
return this.rest.request(request);
}
@ -32,7 +32,7 @@ export class ProfileService {
/** @type {?} */
const request = {
method: 'PUT',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
body,
};
return this.rest.request(request);
@ -45,7 +45,7 @@ export class ProfileService {
/** @type {?} */
const request = {
method: 'POST',
url: '/api/identity/profile/changePassword',
url: '/api/identity/my-profile/changePassword',
body,
};
return this.rest.request(request);
@ -68,4 +68,4 @@ if (false) {
*/
ProfileService.prototype.rest;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU03QyxNQUFNLE9BQU8sY0FBYzs7OztJQUN6QixZQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUcsQ0FBQzs7OztJQUV6QyxHQUFHOztjQUNLLE9BQU8sR0FBdUI7WUFDbEMsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsdUJBQXVCO1NBQzdCO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBeUIsT0FBTyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7Ozs7SUFFRCxNQUFNLENBQUMsSUFBc0I7O2NBQ3JCLE9BQU8sR0FBbUM7WUFDOUMsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLElBQUk7U0FDTDtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLElBQW1DOztjQUMxQyxPQUFPLEdBQWdEO1lBQzNELE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLHNDQUFzQztZQUMzQyxJQUFJO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFzQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDOzs7WUFqQ0YsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBTFEsV0FBVzs7Ozs7Ozs7SUFPTiw4QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4vcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2ZpbGUsIFJlc3QgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZmlsZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3Q6IFJlc3RTZXJ2aWNlKSB7fVxuXG4gIGdldCgpOiBPYnNlcnZhYmxlPFByb2ZpbGUuUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8bnVsbD4gPSB7XG4gICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9wcm9maWxlJyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PG51bGwsIFByb2ZpbGUuUmVzcG9uc2U+KHJlcXVlc3QpO1xuICB9XG5cbiAgdXBkYXRlKGJvZHk6IFByb2ZpbGUuUmVzcG9uc2UpOiBPYnNlcnZhYmxlPFByb2ZpbGUuUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8UHJvZmlsZS5SZXNwb25zZT4gPSB7XG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9wcm9maWxlJyxcbiAgICAgIGJvZHksXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnJlc3QucmVxdWVzdDxQcm9maWxlLlJlc3BvbnNlLCBQcm9maWxlLlJlc3BvbnNlPihyZXF1ZXN0KTtcbiAgfVxuXG4gIGNoYW5nZVBhc3N3b3JkKGJvZHk6IFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0KTogT2JzZXJ2YWJsZTxudWxsPiB7XG4gICAgY29uc3QgcmVxdWVzdDogUmVzdC5SZXF1ZXN0PFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0PiA9IHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9wcm9maWxlL2NoYW5nZVBhc3N3b3JkJyxcbiAgICAgIGJvZHksXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnJlc3QucmVxdWVzdDxQcm9maWxlLkNoYW5nZVBhc3N3b3JkUmVxdWVzdCwgbnVsbD4ocmVxdWVzdCk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU03QyxNQUFNLE9BQU8sY0FBYzs7OztJQUN6QixZQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUcsQ0FBQzs7OztJQUV6QyxHQUFHOztjQUNLLE9BQU8sR0FBdUI7WUFDbEMsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsMEJBQTBCO1NBQ2hDO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBeUIsT0FBTyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7Ozs7SUFFRCxNQUFNLENBQUMsSUFBc0I7O2NBQ3JCLE9BQU8sR0FBbUM7WUFDOUMsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsMEJBQTBCO1lBQy9CLElBQUk7U0FDTDtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLElBQW1DOztjQUMxQyxPQUFPLEdBQWdEO1lBQzNELE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLHlDQUF5QztZQUM5QyxJQUFJO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFzQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDOzs7WUFqQ0YsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBTFEsV0FBVzs7Ozs7Ozs7SUFPTiw4QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4vcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2ZpbGUsIFJlc3QgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZmlsZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3Q6IFJlc3RTZXJ2aWNlKSB7fVxuXG4gIGdldCgpOiBPYnNlcnZhYmxlPFByb2ZpbGUuUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8bnVsbD4gPSB7XG4gICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9teS1wcm9maWxlJyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PG51bGwsIFByb2ZpbGUuUmVzcG9uc2U+KHJlcXVlc3QpO1xuICB9XG5cbiAgdXBkYXRlKGJvZHk6IFByb2ZpbGUuUmVzcG9uc2UpOiBPYnNlcnZhYmxlPFByb2ZpbGUuUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8UHJvZmlsZS5SZXNwb25zZT4gPSB7XG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9teS1wcm9maWxlJyxcbiAgICAgIGJvZHksXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnJlc3QucmVxdWVzdDxQcm9maWxlLlJlc3BvbnNlLCBQcm9maWxlLlJlc3BvbnNlPihyZXF1ZXN0KTtcbiAgfVxuXG4gIGNoYW5nZVBhc3N3b3JkKGJvZHk6IFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0KTogT2JzZXJ2YWJsZTxudWxsPiB7XG4gICAgY29uc3QgcmVxdWVzdDogUmVzdC5SZXF1ZXN0PFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0PiA9IHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgdXJsOiAnL2FwaS9pZGVudGl0eS9teS1wcm9maWxlL2NoYW5nZVBhc3N3b3JkJyxcbiAgICAgIGJvZHksXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnJlc3QucmVxdWVzdDxQcm9maWxlLkNoYW5nZVBhc3N3b3JkUmVxdWVzdCwgbnVsbD4ocmVxdWVzdCk7XG4gIH1cbn1cbiJdfQ==

@ -20,7 +20,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
};
return this.rest.request(request);
};
@ -36,7 +36,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'PUT',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
body: body,
};
return this.rest.request(request);
@ -53,7 +53,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/profile/changePassword',
url: '/api/identity/my-profile/changePassword',
body: body,
};
return this.rest.request(request);
@ -78,4 +78,4 @@ if (false) {
*/
ProfileService.prototype.rest;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUc3QztJQUlFLHdCQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUcsQ0FBQzs7OztJQUV6Qyw0QkFBRzs7O0lBQUg7O1lBQ1EsT0FBTyxHQUF1QjtZQUNsQyxNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSx1QkFBdUI7U0FDN0I7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUF5QixPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs7OztJQUVELCtCQUFNOzs7O0lBQU4sVUFBTyxJQUFzQjs7WUFDckIsT0FBTyxHQUFtQztZQUM5QyxNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsSUFBSSxNQUFBO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQyxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDOzs7OztJQUVELHVDQUFjOzs7O0lBQWQsVUFBZSxJQUFtQzs7WUFDMUMsT0FBTyxHQUFnRDtZQUMzRCxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxzQ0FBc0M7WUFDM0MsSUFBSSxNQUFBO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFzQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDOztnQkFqQ0YsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7OztnQkFMUSxXQUFXOzs7eUJBRnBCO0NBdUNDLEFBbENELElBa0NDO1NBL0JZLGNBQWM7Ozs7OztJQUNiLDhCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJvZmlsZSwgUmVzdCB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzdDogUmVzdFNlcnZpY2UpIHt9XG5cbiAgZ2V0KCk6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3Q6IFJlc3QuUmVxdWVzdDxudWxsPiA9IHtcbiAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L3Byb2ZpbGUnLFxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5yZXN0LnJlcXVlc3Q8bnVsbCwgUHJvZmlsZS5SZXNwb25zZT4ocmVxdWVzdCk7XG4gIH1cblxuICB1cGRhdGUoYm9keTogUHJvZmlsZS5SZXNwb25zZSk6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3Q6IFJlc3QuUmVxdWVzdDxQcm9maWxlLlJlc3BvbnNlPiA9IHtcbiAgICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L3Byb2ZpbGUnLFxuICAgICAgYm9keSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PFByb2ZpbGUuUmVzcG9uc2UsIFByb2ZpbGUuUmVzcG9uc2U+KHJlcXVlc3QpO1xuICB9XG5cbiAgY2hhbmdlUGFzc3dvcmQoYm9keTogUHJvZmlsZS5DaGFuZ2VQYXNzd29yZFJlcXVlc3QpOiBPYnNlcnZhYmxlPG51bGw+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8UHJvZmlsZS5DaGFuZ2VQYXNzd29yZFJlcXVlc3Q+ID0ge1xuICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L3Byb2ZpbGUvY2hhbmdlUGFzc3dvcmQnLFxuICAgICAgYm9keSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0LCBudWxsPihyZXF1ZXN0KTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUc3QztJQUlFLHdCQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUcsQ0FBQzs7OztJQUV6Qyw0QkFBRzs7O0lBQUg7O1lBQ1EsT0FBTyxHQUF1QjtZQUNsQyxNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSwwQkFBMEI7U0FDaEM7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUF5QixPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs7OztJQUVELCtCQUFNOzs7O0lBQU4sVUFBTyxJQUFzQjs7WUFDckIsT0FBTyxHQUFtQztZQUM5QyxNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSwwQkFBMEI7WUFDL0IsSUFBSSxNQUFBO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQyxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDOzs7OztJQUVELHVDQUFjOzs7O0lBQWQsVUFBZSxJQUFtQzs7WUFDMUMsT0FBTyxHQUFnRDtZQUMzRCxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSx5Q0FBeUM7WUFDOUMsSUFBSSxNQUFBO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFzQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDOztnQkFqQ0YsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7OztnQkFMUSxXQUFXOzs7eUJBRnBCO0NBdUNDLEFBbENELElBa0NDO1NBL0JZLGNBQWM7Ozs7OztJQUNiLDhCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJvZmlsZSwgUmVzdCB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzdDogUmVzdFNlcnZpY2UpIHt9XG5cbiAgZ2V0KCk6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3Q6IFJlc3QuUmVxdWVzdDxudWxsPiA9IHtcbiAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L215LXByb2ZpbGUnLFxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5yZXN0LnJlcXVlc3Q8bnVsbCwgUHJvZmlsZS5SZXNwb25zZT4ocmVxdWVzdCk7XG4gIH1cblxuICB1cGRhdGUoYm9keTogUHJvZmlsZS5SZXNwb25zZSk6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3Q6IFJlc3QuUmVxdWVzdDxQcm9maWxlLlJlc3BvbnNlPiA9IHtcbiAgICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L215LXByb2ZpbGUnLFxuICAgICAgYm9keSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PFByb2ZpbGUuUmVzcG9uc2UsIFByb2ZpbGUuUmVzcG9uc2U+KHJlcXVlc3QpO1xuICB9XG5cbiAgY2hhbmdlUGFzc3dvcmQoYm9keTogUHJvZmlsZS5DaGFuZ2VQYXNzd29yZFJlcXVlc3QpOiBPYnNlcnZhYmxlPG51bGw+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBSZXN0LlJlcXVlc3Q8UHJvZmlsZS5DaGFuZ2VQYXNzd29yZFJlcXVlc3Q+ID0ge1xuICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICB1cmw6ICcvYXBpL2lkZW50aXR5L215LXByb2ZpbGUvY2hhbmdlUGFzc3dvcmQnLFxuICAgICAgYm9keSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMucmVzdC5yZXF1ZXN0PFByb2ZpbGUuQ2hhbmdlUGFzc3dvcmRSZXF1ZXN0LCBudWxsPihyZXF1ZXN0KTtcbiAgfVxufVxuIl19

@ -184,7 +184,7 @@ class ProfileService {
/** @type {?} */
const request = {
method: 'GET',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
};
return this.rest.request(request);
}
@ -196,7 +196,7 @@ class ProfileService {
/** @type {?} */
const request = {
method: 'PUT',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
body,
};
return this.rest.request(request);
@ -209,7 +209,7 @@ class ProfileService {
/** @type {?} */
const request = {
method: 'POST',
url: '/api/identity/profile/changePassword',
url: '/api/identity/my-profile/changePassword',
body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

@ -185,7 +185,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
};
return this.rest.request(request);
};
@ -201,7 +201,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'PUT',
url: '/api/identity/profile',
url: '/api/identity/my-profile',
body: body,
};
return this.rest.request(request);
@ -218,7 +218,7 @@ var ProfileService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/profile/changePassword',
url: '/api/identity/my-profile/changePassword',
body: body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

@ -159,7 +159,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/role',
url: '/api/identity/roles',
};
return this.rest.request(request);
};
@ -175,7 +175,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/role/" + id,
url: "/api/identity/roles/" + id,
};
return this.rest.request(request);
};
@ -191,7 +191,7 @@
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/identity/role/" + id,
url: "/api/identity/roles/" + id,
};
return this.rest.request(request);
};
@ -207,7 +207,7 @@
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/role',
url: '/api/identity/roles',
body: body,
};
return this.rest.request(request);
@ -222,7 +222,7 @@
*/
function (body) {
/** @type {?} */
var url = "/api/identity/role/" + body.id;
var url = "/api/identity/roles/" + body.id;
delete body.id;
/** @type {?} */
var request = {
@ -245,7 +245,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/user',
url: '/api/identity/users',
params: params,
};
return this.rest.request(request);
@ -262,7 +262,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/user/" + id,
url: "/api/identity/users/" + id,
};
return this.rest.request(request);
};
@ -278,7 +278,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/user/" + id + "/roles",
url: "/api/identity/users/" + id + "/roles",
};
return this.rest.request(request);
};
@ -294,7 +294,7 @@
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/identity/user/" + id,
url: "/api/identity/users/" + id,
};
return this.rest.request(request);
};
@ -310,7 +310,7 @@
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/user',
url: '/api/identity/users',
body: body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -129,7 +129,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'GET',
url: '/api/identity/role',
url: '/api/identity/roles',
};
return this.rest.request(request);
}
@ -141,7 +141,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'GET',
url: `/api/identity/role/${id}`,
url: `/api/identity/roles/${id}`,
};
return this.rest.request(request);
}
@ -153,7 +153,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'DELETE',
url: `/api/identity/role/${id}`,
url: `/api/identity/roles/${id}`,
};
return this.rest.request(request);
}
@ -165,7 +165,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'POST',
url: '/api/identity/role',
url: '/api/identity/roles',
body,
};
return this.rest.request(request);
@ -176,7 +176,7 @@ class IdentityService {
*/
updateRole(body) {
/** @type {?} */
const url = `/api/identity/role/${body.id}`;
const url = `/api/identity/roles/${body.id}`;
delete body.id;
/** @type {?} */
const request = {
@ -194,7 +194,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'GET',
url: '/api/identity/user',
url: '/api/identity/users',
params,
};
return this.rest.request(request);
@ -207,7 +207,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'GET',
url: `/api/identity/user/${id}`,
url: `/api/identity/users/${id}`,
};
return this.rest.request(request);
}
@ -219,7 +219,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'GET',
url: `/api/identity/user/${id}/roles`,
url: `/api/identity/users/${id}/roles`,
};
return this.rest.request(request);
}
@ -231,7 +231,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'DELETE',
url: `/api/identity/user/${id}`,
url: `/api/identity/users/${id}`,
};
return this.rest.request(request);
}
@ -243,7 +243,7 @@ class IdentityService {
/** @type {?} */
const request = {
method: 'POST',
url: '/api/identity/user',
url: '/api/identity/users',
body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

@ -112,7 +112,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/role',
url: '/api/identity/roles',
};
return this.rest.request(request);
};
@ -128,7 +128,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/role/" + id,
url: "/api/identity/roles/" + id,
};
return this.rest.request(request);
};
@ -144,7 +144,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/identity/role/" + id,
url: "/api/identity/roles/" + id,
};
return this.rest.request(request);
};
@ -160,7 +160,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/role',
url: '/api/identity/roles',
body: body,
};
return this.rest.request(request);
@ -175,7 +175,7 @@ var IdentityService = /** @class */ (function () {
*/
function (body) {
/** @type {?} */
var url = "/api/identity/role/" + body.id;
var url = "/api/identity/roles/" + body.id;
delete body.id;
/** @type {?} */
var request = {
@ -198,7 +198,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: '/api/identity/user',
url: '/api/identity/users',
params: params,
};
return this.rest.request(request);
@ -215,7 +215,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/user/" + id,
url: "/api/identity/users/" + id,
};
return this.rest.request(request);
};
@ -231,7 +231,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: "/api/identity/user/" + id + "/roles",
url: "/api/identity/users/" + id + "/roles",
};
return this.rest.request(request);
};
@ -247,7 +247,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/identity/user/" + id,
url: "/api/identity/users/" + id,
};
return this.rest.request(request);
};
@ -263,7 +263,7 @@ var IdentityService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'POST',
url: '/api/identity/user',
url: '/api/identity/users',
body: body,
};
return this.rest.request(request);

File diff suppressed because one or more lines are too long

@ -98,7 +98,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: '/api/multi-tenancy/tenant',
url: '/api/multi-tenancy/tenants',
};
return this.rest.request(request);
};
@ -114,7 +114,7 @@
/** @type {?} */
var request = {
method: 'GET',
url: "/api/multi-tenancy/tenant/" + id,
url: "/api/multi-tenancy/tenants/" + id,
};
return this.rest.request(request);
};
@ -130,7 +130,7 @@
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/multi-tenancy/tenant/" + id,
url: "/api/multi-tenancy/tenants/" + id,
};
return this.rest.request(request);
};
@ -146,7 +146,7 @@
/** @type {?} */
var request = {
method: 'POST',
url: "/api/multi-tenancy/tenant",
url: "/api/multi-tenancy/tenants",
body: body,
};
return this.rest.request(request);
@ -161,7 +161,7 @@
*/
function (body) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + body.id;
var url = "/api/multi-tenancy/tenants/" + body.id;
delete body.id;
/** @type {?} */
var request = {
@ -181,7 +181,7 @@
*/
function (id) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + id + "/defaultConnectionString";
var url = "/api/multi-tenancy/tenants/" + id + "/defaultConnectionString";
/** @type {?} */
var request = {
method: 'GET',
@ -200,7 +200,7 @@
*/
function (payload) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + payload.id + "/defaultConnectionString";
var url = "/api/multi-tenancy/tenants/" + payload.id + "/defaultConnectionString";
/** @type {?} */
var request = {
method: 'PUT',

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -72,7 +72,7 @@ class TenantManagementService {
/** @type {?} */
const request = {
method: 'GET',
url: '/api/multi-tenancy/tenant',
url: '/api/multi-tenancy/tenants',
};
return this.rest.request(request);
}
@ -84,7 +84,7 @@ class TenantManagementService {
/** @type {?} */
const request = {
method: 'GET',
url: `/api/multi-tenancy/tenant/${id}`,
url: `/api/multi-tenancy/tenants/${id}`,
};
return this.rest.request(request);
}
@ -96,7 +96,7 @@ class TenantManagementService {
/** @type {?} */
const request = {
method: 'DELETE',
url: `/api/multi-tenancy/tenant/${id}`,
url: `/api/multi-tenancy/tenants/${id}`,
};
return this.rest.request(request);
}
@ -108,7 +108,7 @@ class TenantManagementService {
/** @type {?} */
const request = {
method: 'POST',
url: `/api/multi-tenancy/tenant`,
url: `/api/multi-tenancy/tenants`,
body,
};
return this.rest.request(request);
@ -119,7 +119,7 @@ class TenantManagementService {
*/
update(body) {
/** @type {?} */
const url = `/api/multi-tenancy/tenant/${body.id}`;
const url = `/api/multi-tenancy/tenants/${body.id}`;
delete body.id;
/** @type {?} */
const request = {
@ -135,7 +135,7 @@ class TenantManagementService {
*/
getDefaultConnectionString(id) {
/** @type {?} */
const url = `/api/multi-tenancy/tenant/${id}/defaultConnectionString`;
const url = `/api/multi-tenancy/tenants/${id}/defaultConnectionString`;
/** @type {?} */
const request = {
method: 'GET',
@ -150,7 +150,7 @@ class TenantManagementService {
*/
updateDefaultConnectionString(payload) {
/** @type {?} */
const url = `/api/multi-tenancy/tenant/${payload.id}/defaultConnectionString`;
const url = `/api/multi-tenancy/tenants/${payload.id}/defaultConnectionString`;
/** @type {?} */
const request = {
method: 'PUT',

File diff suppressed because one or more lines are too long

@ -67,7 +67,7 @@ var TenantManagementService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: '/api/multi-tenancy/tenant',
url: '/api/multi-tenancy/tenants',
};
return this.rest.request(request);
};
@ -83,7 +83,7 @@ var TenantManagementService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'GET',
url: "/api/multi-tenancy/tenant/" + id,
url: "/api/multi-tenancy/tenants/" + id,
};
return this.rest.request(request);
};
@ -99,7 +99,7 @@ var TenantManagementService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'DELETE',
url: "/api/multi-tenancy/tenant/" + id,
url: "/api/multi-tenancy/tenants/" + id,
};
return this.rest.request(request);
};
@ -115,7 +115,7 @@ var TenantManagementService = /** @class */ (function () {
/** @type {?} */
var request = {
method: 'POST',
url: "/api/multi-tenancy/tenant",
url: "/api/multi-tenancy/tenants",
body: body,
};
return this.rest.request(request);
@ -130,7 +130,7 @@ var TenantManagementService = /** @class */ (function () {
*/
function (body) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + body.id;
var url = "/api/multi-tenancy/tenants/" + body.id;
delete body.id;
/** @type {?} */
var request = {
@ -150,7 +150,7 @@ var TenantManagementService = /** @class */ (function () {
*/
function (id) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + id + "/defaultConnectionString";
var url = "/api/multi-tenancy/tenants/" + id + "/defaultConnectionString";
/** @type {?} */
var request = {
method: 'GET',
@ -169,7 +169,7 @@ var TenantManagementService = /** @class */ (function () {
*/
function (payload) {
/** @type {?} */
var url = "/api/multi-tenancy/tenant/" + payload.id + "/defaultConnectionString";
var url = "/api/multi-tenancy/tenants/" + payload.id + "/defaultConnectionString";
/** @type {?} */
var request = {
method: 'PUT',

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save