@bizdoc/core 1.7.0-next.3 → 1.7.0-next.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/assets/fonts/MaterialIcons-Regular.svg +2373 -2373
- package/assets/fonts/README.md +9 -9
- package/assets/fonts/codepoints +932 -932
- package/assets/fonts/material-icons.css +36 -36
- package/assets/themes/brown.min.css +83 -81
- package/assets/themes/dark.min.css +77 -75
- package/assets/themes/default.min.css +90 -88
- package/assets/themes/green.min.css +83 -81
- package/assets/themes/indigo.min.css +83 -81
- package/bundles/bizdoc-core.umd.js +1086 -1600
- package/bundles/bizdoc-core.umd.js.map +1 -1
- package/esm2015/lib/app.component.js +7 -13
- package/esm2015/lib/bizdoc.module.js +2 -37
- package/esm2015/lib/browse/filter/filter.component.js +2 -2
- package/esm2015/lib/core/configuration.js +1 -1
- package/esm2015/lib/core/controls/combination-picker-body.js +2 -2
- package/esm2015/lib/core/models.js +1 -1
- package/esm2015/lib/core/session.service.js +5 -9
- package/esm2015/lib/core/slots/slots.component.js +6 -4
- package/esm2015/lib/cube/accum/accum.component.js +4 -7
- package/esm2015/lib/cube/chart/chart.component.js +6 -3
- package/esm2015/lib/cube/cube-info.service.js +100 -0
- package/esm2015/lib/cube/cube-view.component.js +11 -30
- package/esm2015/lib/cube/declarations.js +1 -1
- package/esm2015/lib/cube/explore/explore-items.component.js +5 -7
- package/esm2015/lib/cube/explore/explore.pane.component.js +2 -5
- package/esm2015/lib/cube/filter/filter-tags.component.exp.js +8 -8
- package/esm2015/lib/cube/filter/filter.component.js +14 -11
- package/esm2015/lib/cube/grid/grid.component.js +4 -3
- package/esm2015/lib/cube/grid/spreadsheet.component.js +4 -4
- package/esm2015/lib/cube/matrix/matrix.base.js +130 -0
- package/esm2015/lib/cube/matrix/matrix.component.js +68 -0
- package/esm2015/lib/cube/matrix/matrix.mobile.component.js +62 -0
- package/esm2015/lib/cube/matrix/matrix.pane.component.js +70 -0
- package/esm2015/lib/cube/matrix/table.component.js +254 -0
- package/esm2015/lib/cube/pivot/pivot.component.js +4 -4
- package/esm2015/lib/cube/view-base.js +76 -0
- package/esm2015/lib/cube/view.mobile.component.js +31 -54
- package/esm2015/lib/cube/view.pane.component.js +26 -58
- package/esm2015/lib/dashboard/cube/accum-cube.widget.js +2 -2
- package/esm2015/lib/dashboard/cube/cube-analysis.base.js +2 -2
- package/esm2015/lib/dashboard/cube/cube-chart.widget.js +2 -2
- package/esm2015/lib/dashboard/cube/filter/filter.component.js +3 -3
- package/esm2015/lib/desktop.module.js +6 -6
- package/esm2015/lib/home/sign/sign.component.js +2 -2
- package/esm2015/lib/impersonate/impersonate.component.js +69 -0
- package/esm2015/lib/mobile.module.js +9 -9
- package/esm2015/lib/reports/cube/grid-documents.component.js +10 -9
- package/esm2015/lib/reports/cube/usage-args.component.js +2 -2
- package/esm2015/lib/routes.desktop.js +3 -3
- package/esm2015/lib/routes.mobile.js +5 -5
- package/esm2015/lib/scheduler/schedule.component.js +21 -17
- package/esm2015/lib/shared.module.js +26 -26
- package/esm2015/lib/system.module.js +8 -10
- package/esm2015/lib/views/cube/cube-base.js +10 -5
- package/esm2015/lib/views/cube/matrix.component.js +95 -0
- package/esm2015/lib/views/cube/view.component.js +19 -21
- package/esm2015/lib/views/document-view-ref.js +3 -2
- package/esm2015/lib/views/timeline/timeline.component.exp.js +317 -0
- package/esm2015/lib/views/view-item.component.js +11 -7
- package/esm2015/lib/views/views.component.js +10 -11
- package/esm2015/public-api.js +4 -8
- package/fesm2015/bizdoc-core.js +902 -1382
- package/fesm2015/bizdoc-core.js.map +1 -1
- package/lib/app.component.d.ts +1 -4
- package/lib/core/configuration.d.ts +1 -17
- package/lib/core/controls/combination-picker-body.d.ts +1 -1
- package/lib/core/models.d.ts +1 -0
- package/lib/core/session.service.d.ts +0 -5
- package/lib/core/slots/slots.component.d.ts +1 -1
- package/lib/cube/accum/accum.component.d.ts +3 -7
- package/lib/cube/chart/chart.component.d.ts +1 -1
- package/lib/cube/{info/cube-info.service.d.ts → cube-info.service.d.ts} +6 -6
- package/lib/cube/cube-view.component.d.ts +4 -9
- package/lib/cube/declarations.d.ts +3 -5
- package/lib/cube/explore/explore-items.component.d.ts +1 -4
- package/lib/cube/explore/explore.pane.component.d.ts +0 -1
- package/lib/cube/filter/filter-tags.component.exp.d.ts +2 -2
- package/lib/cube/filter/filter.component.d.ts +4 -3
- package/lib/cube/grid/grid.component.d.ts +2 -1
- package/lib/cube/grid/spreadsheet.component.d.ts +1 -1
- package/lib/cube/{info/cube-info.base.d.ts → matrix/matrix.base.d.ts} +5 -5
- package/lib/cube/{info/cube-info.component.d.ts → matrix/matrix.component.d.ts} +8 -8
- package/lib/cube/{info/cube-info.mobile.component.d.ts → matrix/matrix.mobile.component.d.ts} +4 -4
- package/lib/cube/{info/cube-info.pane.component.d.ts → matrix/matrix.pane.component.d.ts} +5 -5
- package/lib/cube/{info → matrix}/table.component.d.ts +4 -5
- package/lib/cube/pivot/pivot.component.d.ts +2 -4
- package/lib/cube/view-base.d.ts +39 -0
- package/lib/cube/view.mobile.component.d.ts +8 -25
- package/lib/cube/view.pane.component.d.ts +8 -26
- package/lib/dashboard/cube/accum-cube.widget.d.ts +1 -1
- package/lib/dashboard/cube/cube-analysis.base.d.ts +1 -1
- package/lib/dashboard/cube/cube-chart.widget.d.ts +1 -1
- package/lib/dashboard/cube/filter/filter.component.d.ts +1 -1
- package/lib/desktop.module.d.ts +2 -2
- package/lib/{login/impersonate → impersonate}/impersonate.component.d.ts +3 -3
- package/lib/mobile.module.d.ts +2 -2
- package/lib/scheduler/schedule.component.d.ts +4 -1
- package/lib/shared.module.d.ts +48 -50
- package/lib/system.module.d.ts +25 -26
- package/lib/views/cube/cube-base.d.ts +16 -10
- package/lib/views/cube/{table.component.d.ts → matrix.component.d.ts} +2 -15
- package/lib/views/cube/view.component.d.ts +2 -9
- package/lib/views/document-view-ref.d.ts +3 -1
- package/lib/views/timeline/timeline.component.exp.d.ts +64 -0
- package/lib/views/view-item.component.d.ts +4 -2
- package/lib/views/views.component.d.ts +3 -5
- package/package.json +15 -17
- package/public-api.d.ts +4 -8
- package/esm2015/lib/admin/users/users.component.js +0 -155
- package/esm2015/lib/admin/users/users.service.js +0 -29
- package/esm2015/lib/cube/info/cube-info.base.js +0 -128
- package/esm2015/lib/cube/info/cube-info.component.js +0 -69
- package/esm2015/lib/cube/info/cube-info.mobile.component.js +0 -62
- package/esm2015/lib/cube/info/cube-info.pane.component.js +0 -70
- package/esm2015/lib/cube/info/cube-info.service.js +0 -100
- package/esm2015/lib/cube/info/table.component.js +0 -258
- package/esm2015/lib/login/forgot/forgot.component.js +0 -50
- package/esm2015/lib/login/form.authentication.js +0 -71
- package/esm2015/lib/login/form.interceptor.js +0 -26
- package/esm2015/lib/login/impersonate/impersonate.component.js +0 -69
- package/esm2015/lib/login/login.component.js +0 -130
- package/esm2015/lib/login/okta.authentication.js +0 -41
- package/esm2015/lib/login/okta.component.js +0 -84
- package/esm2015/lib/login/okta.interceptor.js +0 -30
- package/esm2015/lib/login/prompt/prompt.component.js +0 -194
- package/esm2015/lib/login/signin-info.service.js +0 -49
- package/esm2015/lib/views/cube/table.component.js +0 -107
- package/lib/admin/users/users.component.d.ts +0 -41
- package/lib/admin/users/users.service.d.ts +0 -30
- package/lib/login/forgot/forgot.component.d.ts +0 -20
- package/lib/login/form.authentication.d.ts +0 -29
- package/lib/login/form.interceptor.d.ts +0 -11
- package/lib/login/login.component.d.ts +0 -18
- package/lib/login/okta.authentication.d.ts +0 -13
- package/lib/login/okta.component.d.ts +0 -18
- package/lib/login/okta.interceptor.d.ts +0 -11
- package/lib/login/prompt/prompt.component.d.ts +0 -45
- package/lib/login/signin-info.service.d.ts +0 -18
- package/src/assets/.gitkeep +0 -0
- package/src/assets/animations/13194-message.json +0 -1
- package/src/assets/animations/1408-network-lost.json +0 -1
- package/src/assets/animations/19560-loading.json +0 -1
- package/src/assets/animations/21928-folder.json +0 -1
- package/src/assets/animations/21941-airplane-animation-movement.json +0 -1
- package/src/assets/animations/2252-broken-stick-error.json +0 -1
- package/src/assets/animations/24910-new-message-notification.json +0 -1
- package/src/assets/animations/25974-paper-plane.json +0 -1
- package/src/assets/animations/36395-lonely-404.json +0 -1
- package/src/assets/animations/36499-page-not-found.json +0 -1
- package/src/assets/animations/37211-google-icons-forms.json +0 -1
- package/src/assets/animations/41896-application.json +0 -1
- package/src/assets/animations/4958-404-not-found.json +0 -1
- package/src/assets/animations/51956-success-icon.json +0 -1
- package/src/assets/animations/53402-bell.json +0 -1
- package/src/assets/animations/5371-volaris-tickets.json +0 -1
- package/src/assets/animations/58266-quad-cube-shifter-1.json +0 -1
- package/src/assets/animations/58509-shifting-cubes-2.json +0 -1
- package/src/assets/animations/8318-loader.json +0 -1
- package/src/assets/animations/lf20_isphoahq.json +0 -1
- package/src/assets/animations/lf30_editor_6kz6oezn.json +0 -1
- package/src/assets/animations/lf30_editor_b6axvtp7.json +0 -1
- package/src/assets/animations/lf30_editor_cq62rpyv.json +0 -1
- package/src/assets/animations/lf30_editor_fbytfhvg.json +0 -1
- package/src/assets/animations/lf30_editor_h1xoyem7.json +0 -1
- package/src/assets/animations/lf30_editor_qr7zgmcs.json +0 -1
- package/src/assets/animations/lf30_editor_rxee1cqy.json +0 -1
- package/src/assets/animations/lf30_editor_yxy6fuei.json +0 -1
- package/src/assets/bizdoc-schema.json +0 -1238
- package/src/assets/favicon.ico +0 -0
- package/src/assets/fonts/LICENSE.txt +0 -202
- package/src/assets/fonts/MaterialIcons-Outlined.woff2 +0 -0
- package/src/assets/fonts/MaterialIcons-Regular.eot +0 -0
- package/src/assets/fonts/MaterialIcons-Regular.ijmap +0 -1
- package/src/assets/fonts/MaterialIcons-Regular.svg +0 -2373
- package/src/assets/fonts/MaterialIcons-Regular.ttf +0 -0
- package/src/assets/fonts/MaterialIcons-Regular.woff +0 -0
- package/src/assets/fonts/MaterialIcons-Regular.woff2 +0 -0
- package/src/assets/fonts/MaterialIcons.css +0 -55
- package/src/assets/fonts/README.md +0 -9
- package/src/assets/fonts/Roboto-Black.ttf +0 -0
- package/src/assets/fonts/Roboto-BlackItalic.ttf +0 -0
- package/src/assets/fonts/Roboto-Bold.ttf +0 -0
- package/src/assets/fonts/Roboto-BoldItalic.ttf +0 -0
- package/src/assets/fonts/Roboto-Italic.ttf +0 -0
- package/src/assets/fonts/Roboto-Light.ttf +0 -0
- package/src/assets/fonts/Roboto-LightItalic.ttf +0 -0
- package/src/assets/fonts/Roboto-Medium.ttf +0 -0
- package/src/assets/fonts/Roboto-MediumItalic.ttf +0 -0
- package/src/assets/fonts/Roboto-Regular.ttf +0 -0
- package/src/assets/fonts/Roboto-Thin.ttf +0 -0
- package/src/assets/fonts/Roboto-ThinItalic.ttf +0 -0
- package/src/assets/fonts/codepoints +0 -932
- package/src/assets/fonts/material-icons.css +0 -36
- package/src/assets/i18n/cldr-data/main/he/ca-buddhist.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-chinese.json +0 -1255
- package/src/assets/i18n/cldr-data/main/he/ca-coptic.json +0 -541
- package/src/assets/i18n/cldr-data/main/he/ca-dangi.json +0 -1255
- package/src/assets/i18n/cldr-data/main/he/ca-ethiopic-amete-alem.json +0 -538
- package/src/assets/i18n/cldr-data/main/he/ca-ethiopic.json +0 -541
- package/src/assets/i18n/cldr-data/main/he/ca-generic.json +0 -535
- package/src/assets/i18n/cldr-data/main/he/ca-gregorian.json +0 -552
- package/src/assets/i18n/cldr-data/main/he/ca-hebrew.json +0 -557
- package/src/assets/i18n/cldr-data/main/he/ca-indian.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-islamic-civil.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-islamic-rgsa.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-islamic-tbla.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-islamic-umalqura.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-islamic.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-japanese.json +0 -1240
- package/src/assets/i18n/cldr-data/main/he/ca-persian.json +0 -532
- package/src/assets/i18n/cldr-data/main/he/ca-roc.json +0 -535
- package/src/assets/i18n/cldr-data/main/he/characters.json +0 -53
- package/src/assets/i18n/cldr-data/main/he/currencies.json +0 -1982
- package/src/assets/i18n/cldr-data/main/he/dateFields.json +0 -860
- package/src/assets/i18n/cldr-data/main/he/delimiters.json +0 -19
- package/src/assets/i18n/cldr-data/main/he/languages.json +0 -555
- package/src/assets/i18n/cldr-data/main/he/layout.json +0 -19
- package/src/assets/i18n/cldr-data/main/he/listPatterns.json +0 -69
- package/src/assets/i18n/cldr-data/main/he/localeDisplayNames.json +0 -231
- package/src/assets/i18n/cldr-data/main/he/measurementSystemNames.json +0 -20
- package/src/assets/i18n/cldr-data/main/he/numbers.json +0 -233
- package/src/assets/i18n/cldr-data/main/he/posix.json +0 -19
- package/src/assets/i18n/cldr-data/main/he/scripts.json +0 -191
- package/src/assets/i18n/cldr-data/main/he/territories.json +0 -324
- package/src/assets/i18n/cldr-data/main/he/timeZoneNames.json +0 -2301
- package/src/assets/i18n/cldr-data/main/he/units.json +0 -3408
- package/src/assets/i18n/cldr-data/main/he/variants.json +0 -119
- package/src/assets/i18n/cldr-data/supplemental/aliases.json +0 -4391
- package/src/assets/i18n/cldr-data/supplemental/calendarData.json +0 -865
- package/src/assets/i18n/cldr-data/supplemental/calendarPreferenceData.json +0 -50
- package/src/assets/i18n/cldr-data/supplemental/characterFallbacks.json +0 -888
- package/src/assets/i18n/cldr-data/supplemental/codeMappings.json +0 -1932
- package/src/assets/i18n/cldr-data/supplemental/currencyData.json +0 -3589
- package/src/assets/i18n/cldr-data/supplemental/dayPeriods.json +0 -2008
- package/src/assets/i18n/cldr-data/supplemental/gender.json +0 -67
- package/src/assets/i18n/cldr-data/supplemental/languageData.json +0 -6450
- package/src/assets/i18n/cldr-data/supplemental/languageGroups.json +0 -115
- package/src/assets/i18n/cldr-data/supplemental/languageMatching.json +0 -1864
- package/src/assets/i18n/cldr-data/supplemental/likelySubtags.json +0 -1844
- package/src/assets/i18n/cldr-data/supplemental/measurementData.json +0 -44
- package/src/assets/i18n/cldr-data/supplemental/metaZones.json +0 -7049
- package/src/assets/i18n/cldr-data/supplemental/numberingSystems.json +0 -343
- package/src/assets/i18n/cldr-data/supplemental/ordinals.json +0 -371
- package/src/assets/i18n/cldr-data/supplemental/parentLocales.json +0 -180
- package/src/assets/i18n/cldr-data/supplemental/plurals.json +0 -884
- package/src/assets/i18n/cldr-data/supplemental/primaryZones.json +0 -22
- package/src/assets/i18n/cldr-data/supplemental/references.json +0 -1181
- package/src/assets/i18n/cldr-data/supplemental/territoryContainment.json +0 -753
- package/src/assets/i18n/cldr-data/supplemental/territoryInfo.json +0 -6604
- package/src/assets/i18n/cldr-data/supplemental/timeData.json +0 -1031
- package/src/assets/i18n/cldr-data/supplemental/unitPreferenceData.json +0 -290
- package/src/assets/i18n/cldr-data/supplemental/weekData.json +0 -316
- package/src/assets/i18n/cldr-data/supplemental/windowsZones.json +0 -3520
- package/src/assets/icons/icon-128x128.png +0 -0
- package/src/assets/icons/icon-144x144.png +0 -0
- package/src/assets/icons/icon-152x152.png +0 -0
- package/src/assets/icons/icon-192x192.png +0 -0
- package/src/assets/icons/icon-256x256.png +0 -0
- package/src/assets/icons/icon-32x32.png +0 -0
- package/src/assets/icons/icon-512x512.png +0 -0
- package/src/assets/js/app-sw.js +0 -16
- package/src/assets/js/firebase-messaging-sw.js +0 -1
- package/src/assets/js/logo.js +0 -31
- package/src/assets/logo.json +0 -1
- package/src/assets/logo.svg +0 -38
- package/src/assets/manifest.json +0 -43
- package/src/assets/sounds/alert_error-03.ogg +0 -0
- package/src/assets/sounds/navigation_hover-tap.ogg +0 -0
- package/src/assets/sounds/notification_simple-01.ogg +0 -0
- package/src/assets/themes/brown.min.css +0 -81
- package/src/assets/themes/dark.min.css +0 -76
- package/src/assets/themes/default.min.css +0 -88
- package/src/assets/themes/green.min.css +0 -81
- package/src/assets/themes/indigo.min.css +0 -81
- package/src/assets/themes/okta-sign-in.min.css +0 -17
@@ -1,194 +0,0 @@
|
|
1
|
-
import { Component, Output, EventEmitter, Input, Inject, ViewChild, ElementRef } from '@angular/core';
|
2
|
-
import { BIZDOC_CONFIG } from '../../core/configuration';
|
3
|
-
import { FormGroup, FormControl, Validators } from '@angular/forms';
|
4
|
-
import { trigger, state, style, transition, animate } from '@angular/animations';
|
5
|
-
import { Subject } from 'rxjs';
|
6
|
-
import { debounceTime, takeUntil, switchMap } from 'rxjs/operators';
|
7
|
-
import { isMobile } from '../../core/functions';
|
8
|
-
import { AuthenticationImpl } from '../../core/authentication';
|
9
|
-
import * as i0 from "@angular/core";
|
10
|
-
import * as i1 from "../../core/session.service";
|
11
|
-
import * as i2 from "../../core/prompt.service";
|
12
|
-
import * as i3 from "@angular/cdk/text-field";
|
13
|
-
import * as i4 from "@angular/material/button";
|
14
|
-
import * as i5 from "@angular/material/icon";
|
15
|
-
import * as i6 from "@angular/material/form-field";
|
16
|
-
import * as i7 from "@angular/material/autocomplete";
|
17
|
-
import * as i8 from "@angular/material/core";
|
18
|
-
import * as i9 from "@angular/material/checkbox";
|
19
|
-
import * as i10 from "@angular/forms";
|
20
|
-
import * as i11 from "@angular/flex-layout/flex";
|
21
|
-
import * as i12 from "@angular/common";
|
22
|
-
import * as i13 from "@angular/material/input";
|
23
|
-
import * as i14 from "../../core/pipes/translate.pipe";
|
24
|
-
import * as i15 from "../form.authentication";
|
25
|
-
/** prompt component*/
|
26
|
-
export class CredetialsComponent {
|
27
|
-
/** prompt ctor */
|
28
|
-
constructor(config, _session, _auth, _sb, _autofill) {
|
29
|
-
this._session = _session;
|
30
|
-
this._auth = _auth;
|
31
|
-
this._sb = _sb;
|
32
|
-
this._autofill = _autofill;
|
33
|
-
this.success = new EventEmitter();
|
34
|
-
this.logging = false;
|
35
|
-
this.loggingChange = new EventEmitter();
|
36
|
-
this.mode = 'prompt';
|
37
|
-
this.more = false;
|
38
|
-
this.hide = true;
|
39
|
-
this.username = new FormControl(null, Validators.required);
|
40
|
-
this.password = new FormControl(null, Validators.required);
|
41
|
-
this.impersonate = new FormControl(null);
|
42
|
-
this.rememberMe = new FormControl(null);
|
43
|
-
this.form = new FormGroup({
|
44
|
-
username: this.username,
|
45
|
-
password: this.password,
|
46
|
-
impersonate: this.impersonate,
|
47
|
-
rememberMe: this.rememberMe
|
48
|
-
});
|
49
|
-
this.isMobile = isMobile();
|
50
|
-
this._destroy = new Subject();
|
51
|
-
if (config.credentials) {
|
52
|
-
const { password, username } = config.credentials;
|
53
|
-
if (password) {
|
54
|
-
const validators = [Validators.required];
|
55
|
-
//if (config.password.min) validators.push(Validators.minLength(config.password.min));
|
56
|
-
if (password.pattern)
|
57
|
-
validators.push(Validators.pattern(password.pattern));
|
58
|
-
this.password.setValidators(validators);
|
59
|
-
}
|
60
|
-
if (username) {
|
61
|
-
const validators = [Validators.required];
|
62
|
-
if (username.pattern)
|
63
|
-
validators.push(Validators.pattern(password.pattern));
|
64
|
-
this.username.setValidators(validators);
|
65
|
-
}
|
66
|
-
}
|
67
|
-
//if (session.displayName != null) {
|
68
|
-
// this.photo = session.tumbnailPhoto;
|
69
|
-
// this.displayName = session.displayName;
|
70
|
-
// this.mode = 'returning';
|
71
|
-
//}
|
72
|
-
this.form.patchValue({
|
73
|
-
username: _auth.username,
|
74
|
-
rememberMe: _auth.username !== null
|
75
|
-
});
|
76
|
-
}
|
77
|
-
ngOnInit() {
|
78
|
-
this.users$ = this.impersonate.valueChanges.pipe(debounceTime(250), takeUntil(this._destroy), switchMap(() => this._auth.authenticate(this.username.value, this.password.value)), switchMap(() => this._session.mayImpersonate('')));
|
79
|
-
}
|
80
|
-
toggleHide(evt) {
|
81
|
-
this.hide = !this.hide;
|
82
|
-
evt.stopPropagation();
|
83
|
-
}
|
84
|
-
ngAfterViewInit() {
|
85
|
-
this._autofill.monitor(this.usernameElement).pipe(takeUntil(this._destroy)).subscribe(v => {
|
86
|
-
//if (v.isAutofilled)
|
87
|
-
//this.form.markAllAsTouched();
|
88
|
-
////this.form.markAsDirty();
|
89
|
-
//this.form.updateValueAndValidity();
|
90
|
-
//this.formElement.nativeElement.checkValidity();
|
91
|
-
});
|
92
|
-
//const fm = new FocusKeyManager<HTMLElement>().withWrap();
|
93
|
-
//fm.setActiveItem(0);
|
94
|
-
this.usernameElement.nativeElement.focus();
|
95
|
-
//setTimeout(() => {
|
96
|
-
// //alert(this.password.value);
|
97
|
-
// this._zone.runOutsideAngular(() => {
|
98
|
-
// this.formElement.nativeElement.click();
|
99
|
-
// });
|
100
|
-
//}, 3000);
|
101
|
-
}
|
102
|
-
ok() {
|
103
|
-
this.logging = true;
|
104
|
-
this.form.disable({ emitEvent: false });
|
105
|
-
this.loggingChange.emit(true);
|
106
|
-
const { value: { username, password, rememberMe, impersonate } } = this.form;
|
107
|
-
this._auth.authenticate(username, password, { rememberMe }).
|
108
|
-
subscribe(() => {
|
109
|
-
if (impersonate)
|
110
|
-
this._session.impersonate(impersonate).subscribe(() => this.success.emit());
|
111
|
-
else
|
112
|
-
this.success.emit();
|
113
|
-
}, e => {
|
114
|
-
let message;
|
115
|
-
switch (e) {
|
116
|
-
default:
|
117
|
-
message = 'LoginErr';
|
118
|
-
}
|
119
|
-
this._sb.toast(message);
|
120
|
-
this.logging = false;
|
121
|
-
this.form.enable({ emitEvent: false });
|
122
|
-
this.loggingChange.emit(false);
|
123
|
-
});
|
124
|
-
}
|
125
|
-
ngOnDestroy() {
|
126
|
-
this._autofill.stopMonitoring(this.usernameElement);
|
127
|
-
this._destroy.next();
|
128
|
-
this._destroy.complete();
|
129
|
-
}
|
130
|
-
}
|
131
|
-
CredetialsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: CredetialsComponent, deps: [{ token: BIZDOC_CONFIG }, { token: i1.SessionService }, { token: AuthenticationImpl }, { token: i2.PromptService }, { token: i3.AutofillMonitor }], target: i0.ɵɵFactoryTarget.Component });
|
132
|
-
CredetialsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: CredetialsComponent, selector: "bizdoc-prompt", inputs: { logging: "logging" }, outputs: { success: "success", loggingChange: "loggingChange" }, viewQueries: [{ propertyName: "usernameElement", first: true, predicate: ["uname"], descendants: true, read: ElementRef }, { propertyName: "formElement", first: true, predicate: ["forme"], descendants: true, read: ElementRef }], ngImport: i0, template: "<form [ngSwitch]=\"mode\" fxLayout=\"column\" [formGroup]=\"form\" (ngSubmit)=\"ok()\" #forme>\r\n <div *ngSwitchCase=\"'returning'\" fxLayout=\"column\">\r\n <a mat-icon-button (click)=\"mode='prompt'\"><mat-icon>keyboard_backspace</mat-icon></a>\r\n <img src=\"{{photo}}\" alt=\"\" />\r\n <span>{{displayName}}</span>\r\n </div>\r\n <div *ngSwitchDefault fxLayout=\"column\">\r\n <mat-form-field>\r\n <input matInput formControlName=\"username\" required [placeholder]=\"'Username' | translate\" #uname/>\r\n <mat-error *ngIf=\"username.hasError('required')\">{{'UsernameRequired' | translate}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <input [type]=\"hide ? 'password' : 'text'\" name=\"current-password\" matInput formControlName=\"password\" required [placeholder]=\"'Password' | translate\" #pwd/>\r\n <button mat-icon-button (click)=\"toggleHide($event)\" matSuffix><mat-icon>{{hide ? 'visibility' : 'visibility_off'}}</mat-icon></button>\r\n <mat-error *ngIf=\"password.hasError('required')\">{{'PasswordRequired' | translate}}</mat-error>\r\n </mat-form-field>\r\n <ng-container *ngIf=\"more\" [@more]=\"more ? 'expend' : 'collapse'\">\r\n <mat-form-field>\r\n <input formControlName=\"impersonate\" matInput [placeholder]=\"'ImpersonateAs' | translate\" [matAutocomplete]=\"auto\" />\r\n <mat-autocomplete #auto>\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">{{u.name}}</mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"impersonate.value && (!username.value || !password.value)\">{{'ImpersonateRequireCredentials' | translate}}</mat-error>\r\n </mat-form-field>\r\n </ng-container>\r\n <div fxLayout=\"row\" fxLayoutAlign=\"end\">\r\n <button (click)=\"more = !more\" type=\"button\" mat-button>\r\n <span>{{(more ? 'LoginLess' : 'LoginMore') | translate}}</span>\r\n <mat-icon>{{more ? 'keyboard_arrow_up': 'keyboard_arrow_down' }}</mat-icon>\r\n </button>\r\n </div>\r\n <mat-checkbox formControlName=\"rememberMe\">{{(isMobile ? 'RememberMeMobile' : 'RememberMe') | translate}}</mat-checkbox>\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n <button mat-raised-button type=\"submit\" color=\"primary\" [disabled]=\"!form.valid || logging\">{{'Login' | translate}}</button>\r\n </div>\r\n</form>\r\n", styles: ["#prompt-form{display:flex;flex-direction:column}#prompt-form *{width:100%}fieldset{border:none;padding:0}\n"], components: [{ type: i4.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab], a[mat-stroked-button], a[mat-flat-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i9.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i10.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i11.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i12.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i12.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i12.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i13.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i10.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.MatError, selector: "mat-error", inputs: ["id"] }, { type: i6.MatSuffix, selector: "[matSuffix]" }, { type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }], pipes: { "translate": i14.TranslatePipe, "async": i12.AsyncPipe }, animations: [
|
133
|
-
trigger('mode', [
|
134
|
-
state('returning', style({})),
|
135
|
-
state('prompt', style({})),
|
136
|
-
transition('returning <=> prompt', [])
|
137
|
-
]),
|
138
|
-
trigger('more', [
|
139
|
-
state('expend', style({
|
140
|
-
opacity: '1',
|
141
|
-
transform: 'translateY(50%)'
|
142
|
-
})),
|
143
|
-
state('collapse', style({
|
144
|
-
opacity: '1',
|
145
|
-
transform: 'translateY(50%)'
|
146
|
-
})),
|
147
|
-
transition('void => *', [style({ opacity: '0' }), animate('500ms')])
|
148
|
-
])
|
149
|
-
] });
|
150
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: CredetialsComponent, decorators: [{
|
151
|
-
type: Component,
|
152
|
-
args: [{
|
153
|
-
selector: 'bizdoc-prompt',
|
154
|
-
templateUrl: './prompt.component.html',
|
155
|
-
styleUrls: ['./prompt.component.scss'],
|
156
|
-
animations: [
|
157
|
-
trigger('mode', [
|
158
|
-
state('returning', style({})),
|
159
|
-
state('prompt', style({})),
|
160
|
-
transition('returning <=> prompt', [])
|
161
|
-
]),
|
162
|
-
trigger('more', [
|
163
|
-
state('expend', style({
|
164
|
-
opacity: '1',
|
165
|
-
transform: 'translateY(50%)'
|
166
|
-
})),
|
167
|
-
state('collapse', style({
|
168
|
-
opacity: '1',
|
169
|
-
transform: 'translateY(50%)'
|
170
|
-
})),
|
171
|
-
transition('void => *', [style({ opacity: '0' }), animate('500ms')])
|
172
|
-
])
|
173
|
-
]
|
174
|
-
}]
|
175
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
176
|
-
type: Inject,
|
177
|
-
args: [BIZDOC_CONFIG]
|
178
|
-
}] }, { type: i1.SessionService }, { type: i15.FormAuthentication, decorators: [{
|
179
|
-
type: Inject,
|
180
|
-
args: [AuthenticationImpl]
|
181
|
-
}] }, { type: i2.PromptService }, { type: i3.AutofillMonitor }]; }, propDecorators: { success: [{
|
182
|
-
type: Output
|
183
|
-
}], logging: [{
|
184
|
-
type: Input
|
185
|
-
}], loggingChange: [{
|
186
|
-
type: Output
|
187
|
-
}], usernameElement: [{
|
188
|
-
type: ViewChild,
|
189
|
-
args: ['uname', { read: ElementRef }]
|
190
|
-
}], formElement: [{
|
191
|
-
type: ViewChild,
|
192
|
-
args: ['forme', { read: ElementRef }]
|
193
|
-
}] } });
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbXB0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvbG9naW4vcHJvbXB0L3Byb21wdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2xvZ2luL3Byb21wdC9wcm9tcHQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFVLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFeEksT0FBTyxFQUFFLGFBQWEsRUFBd0MsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztBQXdCL0Qsc0JBQXNCO0FBQ3RCLE1BQU0sT0FBTyxtQkFBbUI7SUF3QjlCLGtCQUFrQjtJQUNsQixZQUN5QixNQUFvQixFQUNuQyxRQUF3QixFQUNJLEtBQXlCLEVBQ3JELEdBQWtCLEVBQ2xCLFNBQTBCO1FBSDFCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ0ksVUFBSyxH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Q0FDWixTQUFTLEVBQUUsaUJBQWlCOzZCQUM3QixDQUFDLENBQUM7NEJBQ0gsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO3lCQUNyRSxDQUFDO3FCQUFDO2lCQUNOOzswQkE0QkksTUFBTTsyQkFBQyxhQUFhOzswQkFFcEIsTUFBTTsyQkFBQyxrQkFBa0I7c0dBM0JULE9BQU87c0JBQXpCLE1BQU07Z0JBQ0UsT0FBTztzQkFBZixLQUFLO2dCQUNhLGFBQWE7c0JBQS9CLE1BQU07Z0JBa0JtQyxlQUFlO3NCQUF4RCxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBQ0UsV0FBVztzQkFBcEQsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBJbnB1dCwgT25EZXN0cm95LCBJbmplY3QsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQklaRE9DX0NPTkZJRywgQml6RG9jQ29uZmlnLCBBdXRoZW50aWNhdGlvblNldHRpbmdzIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgVXNlckluZm8gfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB0cmlnZ2VyLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIGFuaW1hdGUgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dG9maWxsTW9uaXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXh0LWZpZWxkJztcclxuaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tICcuLi8uLi9jb3JlL2Z1bmN0aW9ucyc7XHJcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uSW1wbCB9IGZyb20gJy4uLy4uL2NvcmUvYXV0aGVudGljYXRpb24nO1xyXG5pbXBvcnQgeyBGb3JtQXV0aGVudGljYXRpb24sIExvZ2luUmVzdWx0IH0gZnJvbSBcIi4uL2Zvcm0uYXV0aGVudGljYXRpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLXByb21wdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb21wdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcHJvbXB0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcignbW9kZScsIFtcclxuICAgICAgc3RhdGUoJ3JldHVybmluZycsIHN0eWxlKHt9KSksXHJcbiAgICAgIHN0YXRlKCdwcm9tcHQnLCBzdHlsZSh7fSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdyZXR1cm5pbmcgPD0+IHByb21wdCcsIFtdKV0pLFxyXG4gICAgdHJpZ2dlcignbW9yZScsIFtcclxuICAgICAgc3RhdGUoJ2V4cGVuZCcsIHN0eWxlKHtcclxuICAgICAgICBvcGFjaXR5OiAnMScsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg1MCUpJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHN0YXRlKCdjb2xsYXBzZScsIHN0eWxlKHtcclxuICAgICAgICBvcGFjaXR5OiAnMScsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg1MCUpJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIFtzdHlsZSh7IG9wYWNpdHk6ICcwJyB9KSwgYW5pbWF0ZSgnNTAwbXMnKV0pXHJcbiAgICBdKV1cclxufSlcclxuLyoqIHByb21wdCBjb21wb25lbnQqL1xyXG5leHBvcnQgY2xhc3MgQ3JlZGV0aWFsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgc3VjY2VzcyA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBJbnB1dCgpIGxvZ2dpbmcgPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgbG9nZ2luZ0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICBtb2RlOiBMb2dpbk1vZGUgPSAncHJvbXB0JztcclxuICBtb3JlID0gZmFsc2U7XHJcbiAgaGlkZSA9IHRydWU7XHJcbiAgcGhvdG86IHN0cmluZztcclxuICBkaXNwbGF5TmFtZTogc3RyaW5nO1xyXG4gIHVzZXJzJDogT2JzZXJ2YWJsZTxVc2VySW5mb1tdPjtcclxuICByZWFkb25seSB1c2VybmFtZSA9IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICByZWFkb25seSBwYXNzd29yZCA9IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICByZWFkb25seSBpbXBlcnNvbmF0ZSA9IG5ldyBGb3JtQ29udHJvbChudWxsKTtcclxuICByZWFkb25seSByZW1lbWJlck1lID0gbmV3IEZvcm1Db250cm9sKG51bGwpO1xyXG4gIHJlYWRvbmx5IGZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcclxuICAgIHVzZXJuYW1lOiB0aGlzLnVzZXJuYW1lLFxyXG4gICAgcGFzc3dvcmQ6IHRoaXMucGFzc3dvcmQsXHJcbiAgICBpbXBlcnNvbmF0ZTogdGhpcy5pbXBlcnNvbmF0ZSxcclxuICAgIHJlbWVtYmVyTWU6IHRoaXMucmVtZW1iZXJNZVxyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IGlzTW9iaWxlID0gaXNNb2JpbGUoKTtcclxuICBAVmlld0NoaWxkKCd1bmFtZScsIHsgcmVhZDogRWxlbWVudFJlZiB9KSB1c2VybmFtZUVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZCgnZm9ybWUnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgZm9ybUVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEZvcm1FbGVtZW50PjtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICAvKiogcHJvbXB0IGN0b3IgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoQklaRE9DX0NPTkZJRykgY29uZmlnOiBCaXpEb2NDb25maWcsXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIEBJbmplY3QoQXV0aGVudGljYXRpb25JbXBsKSBwcml2YXRlIF9hdXRoOiBGb3JtQXV0aGVudGljYXRpb24sXHJcbiAgICBwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX2F1dG9maWxsOiBBdXRvZmlsbE1vbml0b3IpIHtcclxuICAgIGlmIChjb25maWcuY3JlZGVudGlhbHMpIHtcclxuICAgICAgY29uc3QgeyBwYXNzd29yZCwgdXNlcm5hbWUgfSA9IGNvbmZpZy5jcmVkZW50aWFscyBhcyBBdXRoZW50aWNhdGlvblNldHRpbmdzO1xyXG4gICAgICBpZiAocGFzc3dvcmQpIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW1ZhbGlkYXRvcnMucmVxdWlyZWRdO1xyXG4gICAgICAgIC8vaWYgKGNvbmZpZy5wYXNzd29yZC5taW4pIHZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLm1pbkxlbmd0aChjb25maWcucGFzc3dvcmQubWluKSk7XHJcbiAgICAgICAgaWYgKHBhc3N3b3JkLnBhdHRlcm4pIHZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLnBhdHRlcm4ocGFzc3dvcmQucGF0dGVybikpO1xyXG4gICAgICAgIHRoaXMucGFzc3dvcmQuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodXNlcm5hbWUpIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW1ZhbGlkYXRvcnMucmVxdWlyZWRdO1xyXG4gICAgICAgIGlmICh1c2VybmFtZS5wYXR0ZXJuKSB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5wYXR0ZXJuKHBhc3N3b3JkLnBhdHRlcm4pKTtcclxuICAgICAgICB0aGlzLnVzZXJuYW1lLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vaWYgKHNlc3Npb24uZGlzcGxheU5hbWUgIT0gbnVsbCkge1xyXG4gICAgLy8gIHRoaXMucGhvdG8gPSBzZXNzaW9uLnR1bWJuYWlsUGhvdG87XHJcbiAgICAvLyAgdGhpcy5kaXNwbGF5TmFtZSA9IHNlc3Npb24uZGlzcGxheU5hbWU7XHJcbiAgICAvLyAgdGhpcy5tb2RlID0gJ3JldHVybmluZyc7XHJcbiAgICAvL31cclxuICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgdXNlcm5hbWU6IF9hdXRoLnVzZXJuYW1lLFxyXG4gICAgICByZW1lbWJlck1lOiBfYXV0aC51c2VybmFtZSAhPT0gbnVsbFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy51c2VycyQgPSB0aGlzLmltcGVyc29uYXRlLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgyNTApLCB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl9hdXRoLmF1dGhlbnRpY2F0ZSh0aGlzLnVzZXJuYW1lLnZhbHVlLCB0aGlzLnBhc3N3b3JkLnZhbHVlKSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PlxyXG4gICAgICB0aGlzLl9zZXNzaW9uLm1heUltcGVyc29uYXRlKCcnKSkpO1xyXG4gIH1cclxuICB0b2dnbGVIaWRlKGV2dDogTW91c2VFdmVudCkge1xyXG4gICAgdGhpcy5oaWRlID0gIXRoaXMuaGlkZTtcclxuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fYXV0b2ZpbGwubW9uaXRvcih0aGlzLnVzZXJuYW1lRWxlbWVudCkucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgLy9pZiAodi5pc0F1dG9maWxsZWQpXHJcbiAgICAgIC8vdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcclxuICAgICAgLy8vL3RoaXMuZm9ybS5tYXJrQXNEaXJ0eSgpO1xyXG4gICAgICAvL3RoaXMuZm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIC8vdGhpcy5mb3JtRWxlbWVudC5uYXRpdmVFbGVtZW50LmNoZWNrVmFsaWRpdHkoKTtcclxuICAgIH0pO1xyXG4gICAgLy9jb25zdCBmbSA9IG5ldyBGb2N1c0tleU1hbmFnZXI8SFRNTEVsZW1lbnQ+KCkud2l0aFdyYXAoKTtcclxuICAgIC8vZm0uc2V0QWN0aXZlSXRlbSgwKTtcclxuICAgIHRoaXMudXNlcm5hbWVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIC8vc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAvLyAgLy9hbGVydCh0aGlzLnBhc3N3b3JkLnZhbHVlKTtcclxuICAgIC8vICB0aGlzLl96b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgIC8vICAgIHRoaXMuZm9ybUVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGljaygpO1xyXG4gICAgLy8gIH0pO1xyXG4gICAgLy99LCAzMDAwKTtcclxuICB9XHJcbiAgb2soKSB7XHJcbiAgICB0aGlzLmxvZ2dpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5mb3JtLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgdGhpcy5sb2dnaW5nQ2hhbmdlLmVtaXQodHJ1ZSk7XHJcbiAgICBjb25zdCB7IHZhbHVlOiB7IHVzZXJuYW1lLCBwYXNzd29yZCwgcmVtZW1iZXJNZSwgaW1wZXJzb25hdGUgfSB9ID0gdGhpcy5mb3JtO1xyXG4gICAgdGhpcy5fYXV0aC5hdXRoZW50aWNhdGUodXNlcm5hbWUsIHBhc3N3b3JkLFxyXG4gICAgICB7IHJlbWVtYmVyTWUgfSkuXHJcbiAgICAgIHN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGltcGVyc29uYXRlKVxyXG4gICAgICAgICAgdGhpcy5fc2Vzc2lvbi5pbXBlcnNvbmF0ZShpbXBlcnNvbmF0ZSkuc3Vic2NyaWJlKCgpID0+IFxyXG4gICAgICAgICAgICB0aGlzLnN1Y2Nlc3MuZW1pdCgpKVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KCk7XHJcbiAgICAgIH0sXHJcbiAgICAgICAgZSA9PiB7XHJcbiAgICAgICAgICBsZXQgbWVzc2FnZTogc3RyaW5nO1xyXG4gICAgICAgICAgc3dpdGNoIChlIGFzIExvZ2luUmVzdWx0KSB7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZSA9ICdMb2dpbkVycic7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLl9zYi50b2FzdChtZXNzYWdlKTtcclxuICAgICAgICAgIHRoaXMubG9nZ2luZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5mb3JtLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dpbmdDaGFuZ2UuZW1pdChmYWxzZSk7XHJcbiAgICAgICAgfSlcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hdXRvZmlsbC5zdG9wTW9uaXRvcmluZyh0aGlzLnVzZXJuYW1lRWxlbWVudCk7XHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuZGVjbGFyZSB0eXBlIExvZ2luTW9kZSA9ICdyZXR1cm5pbmcnIHwgJ3Byb21wdCc7XHJcbiIsIjxmb3JtIFtuZ1N3aXRjaF09XCJtb2RlXCIgZnhMYXlvdXQ9XCJjb2x1bW5cIiBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwib2soKVwiICNmb3JtZT5cclxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCIncmV0dXJuaW5nJ1wiIGZ4TGF5b3V0PVwiY29sdW1uXCI+XHJcbiAgICA8YSBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm1vZGU9J3Byb21wdCdcIj48bWF0LWljb24+a2V5Ym9hcmRfYmFja3NwYWNlPC9tYXQtaWNvbj48L2E+XHJcbiAgICA8aW1nIHNyYz1cInt7cGhvdG99fVwiIGFsdD1cIlwiIC8+XHJcbiAgICA8c3Bhbj57e2Rpc3BsYXlOYW1lfX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdTd2l0Y2hEZWZhdWx0IGZ4TGF5b3V0PVwiY29sdW1uXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ1c2VybmFtZVwiIHJlcXVpcmVkIFtwbGFjZWhvbGRlcl09XCInVXNlcm5hbWUnIHwgdHJhbnNsYXRlXCIgI3VuYW1lLz5cclxuICAgICAgPG1hdC1lcnJvciAqbmdJZj1cInVzZXJuYW1lLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+e3snVXNlcm5hbWVSZXF1aXJlZCcgfCB0cmFuc2xhdGV9fTwvbWF0LWVycm9yPlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPGlucHV0IFt0eXBlXT1cImhpZGUgPyAncGFzc3dvcmQnIDogJ3RleHQnXCIgbmFtZT1cImN1cnJlbnQtcGFzc3dvcmRcIiBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIHJlcXVpcmVkIFtwbGFjZWhvbGRlcl09XCInUGFzc3dvcmQnIHwgdHJhbnNsYXRlXCIgI3B3ZC8+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVIaWRlKCRldmVudClcIiBtYXRTdWZmaXg+PG1hdC1pY29uPnt7aGlkZSA/ICd2aXNpYmlsaXR5JyA6ICd2aXNpYmlsaXR5X29mZid9fTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJwYXNzd29yZC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPnt7J1Bhc3N3b3JkUmVxdWlyZWQnIHwgdHJhbnNsYXRlfX08L21hdC1lcnJvcj5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9yZVwiIFtAbW9yZV09XCJtb3JlID8gJ2V4cGVuZCcgOiAnY29sbGFwc2UnXCI+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiaW1wZXJzb25hdGVcIiBtYXRJbnB1dCBbcGxhY2Vob2xkZXJdPVwiJ0ltcGVyc29uYXRlQXMnIHwgdHJhbnNsYXRlXCIgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCIgLz5cclxuICAgICAgICA8bWF0LWF1dG9jb21wbGV0ZSAjYXV0bz5cclxuICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB1IG9mIHVzZXJzJCB8IGFzeW5jXCIgW3ZhbHVlXT1cInUuaWRcIj57e3UubmFtZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cclxuICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaW1wZXJzb25hdGUudmFsdWUgJiYgKCF1c2VybmFtZS52YWx1ZSB8fCAhcGFzc3dvcmQudmFsdWUpXCI+e3snSW1wZXJzb25hdGVSZXF1aXJlQ3JlZGVudGlhbHMnIHwgdHJhbnNsYXRlfX08L21hdC1lcnJvcj5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJlbmRcIj5cclxuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibW9yZSA9ICFtb3JlXCIgdHlwZT1cImJ1dHRvblwiIG1hdC1idXR0b24+XHJcbiAgICAgICAgPHNwYW4+e3sobW9yZSA/ICdMb2dpbkxlc3MnIDogJ0xvZ2luTW9yZScpIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPG1hdC1pY29uPnt7bW9yZSA/ICdrZXlib2FyZF9hcnJvd191cCc6ICdrZXlib2FyZF9hcnJvd19kb3duJyB9fTwvbWF0LWljb24+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bWF0LWNoZWNrYm94IGZvcm1Db250cm9sTmFtZT1cInJlbWVtYmVyTWVcIj57eyhpc01vYmlsZSA/ICdSZW1lbWJlck1lTW9iaWxlJyA6ICdSZW1lbWJlck1lJykgfCB0cmFuc2xhdGV9fTwvbWF0LWNoZWNrYm94PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgZnhMYXlvdXRBbGlnbj1cImVuZFwiPlxyXG4gICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY29sb3I9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cIiFmb3JtLnZhbGlkIHx8IGxvZ2dpbmdcIj57eydMb2dpbicgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Zvcm0+XHJcbiJdfQ==
|
@@ -1,49 +0,0 @@
|
|
1
|
-
import { Injectable, Injector } from '@angular/core';
|
2
|
-
import { OverlayRef, OverlayConfig } from '@angular/cdk/overlay';
|
3
|
-
import { ComponentPortal } from '@angular/cdk/portal';
|
4
|
-
import { LoginComponent } from './login.component';
|
5
|
-
import { SessionMode } from '../core/session.service';
|
6
|
-
import { OktaComponent } from './okta.component';
|
7
|
-
import * as i0 from "@angular/core";
|
8
|
-
import * as i1 from "../core/session.service";
|
9
|
-
import * as i2 from "@angular/cdk/overlay";
|
10
|
-
import * as i3 from "@angular/cdk/bidi";
|
11
|
-
/** prompts login comp */
|
12
|
-
export class SignInInfo {
|
13
|
-
constructor(_session, _overlay, _injector, _dir) {
|
14
|
-
this._session = _session;
|
15
|
-
this._overlay = _overlay;
|
16
|
-
this._injector = _injector;
|
17
|
-
this._dir = _dir;
|
18
|
-
}
|
19
|
-
pop() {
|
20
|
-
switch (this._session.mode) {
|
21
|
-
case SessionMode.Okta:
|
22
|
-
return this._pop(OktaComponent);
|
23
|
-
default:
|
24
|
-
return this._pop(LoginComponent);
|
25
|
-
}
|
26
|
-
}
|
27
|
-
_pop(component) {
|
28
|
-
const position = this._overlay.position().global()
|
29
|
-
.centerHorizontally()
|
30
|
-
.centerVertically();
|
31
|
-
const config = new OverlayConfig({
|
32
|
-
positionStrategy: position,
|
33
|
-
//hasBackdrop: backdrop,
|
34
|
-
scrollStrategy: this._overlay.scrollStrategies.block(),
|
35
|
-
direction: this._dir.value,
|
36
|
-
});
|
37
|
-
const oRef = this._overlay.create(config);
|
38
|
-
const injector = Injector.create([{ provide: OverlayRef, useValue: oRef }], this._injector);
|
39
|
-
const portal = new ComponentPortal(component, null, injector);
|
40
|
-
oRef.attach(portal);
|
41
|
-
return oRef.detachments();
|
42
|
-
}
|
43
|
-
}
|
44
|
-
SignInInfo.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SignInInfo, deps: [{ token: i1.SessionService }, { token: i2.Overlay }, { token: i0.Injector }, { token: i3.Directionality }], target: i0.ɵɵFactoryTarget.Injectable });
|
45
|
-
SignInInfo.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SignInInfo });
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SignInInfo, decorators: [{
|
47
|
-
type: Injectable
|
48
|
-
}], ctorParameters: function () { return [{ type: i1.SessionService }, { type: i2.Overlay }, { type: i0.Injector }, { type: i3.Directionality }]; } });
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLWluZm8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvbG9naW4vc2lnbmluLWluZm8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQVcsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTFFLE9BQU8sRUFBRSxlQUFlLEVBQWlCLE1BQU0scUJBQXFCLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQWtCLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7OztBQUNqRCx5QkFBeUI7QUFFekIsTUFBTSxPQUFPLFVBQVU7SUFVckIsWUFDVSxRQUF3QixFQUN4QixRQUFpQixFQUNqQixTQUFtQixFQUNuQixJQUFvQjtRQUhwQixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBZ0I7SUFDOUIsQ0FBQztJQWRNLEdBQUc7UUFFUixRQUFRLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQzFCLEtBQUssV0FBVyxDQUFDLElBQUk7Z0JBQ25CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNsQztnQkFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBT08sSUFBSSxDQUFJLFNBQTJCO1FBQ3pDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFO2FBQy9DLGtCQUFrQixFQUFFO2FBQ3BCLGdCQUFnQixFQUFFLENBQUM7UUFDdEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxhQUFhLENBQUM7WUFDL0IsZ0JBQWdCLEVBQUUsUUFBUTtZQUMxQix3QkFBd0I7WUFDeEIsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFO1lBQ3RELFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7U0FDM0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUYsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXBCLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVCLENBQUM7O3VHQWhDVSxVQUFVOzJHQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFEdEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiwgT3ZlcmxheUNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHkgfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XHJcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCwgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vbG9naW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2Vzc2lvbk1vZGUsIFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPa3RhQ29tcG9uZW50IH0gZnJvbSAnLi9va3RhLmNvbXBvbmVudCc7XHJcbi8qKiBwcm9tcHRzIGxvZ2luIGNvbXAgKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2lnbkluSW5mbyB7XHJcbiAgcHVibGljIHBvcCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cclxuICAgIHN3aXRjaCAodGhpcy5fc2Vzc2lvbi5tb2RlKSB7XHJcbiAgICAgIGNhc2UgU2Vzc2lvbk1vZGUuT2t0YTpcclxuICAgICAgICByZXR1cm4gdGhpcy5fcG9wKE9rdGFDb21wb25lbnQpO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiB0aGlzLl9wb3AoTG9naW5Db21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgX2RpcjogRGlyZWN0aW9uYWxpdHkpIHtcclxuICB9XHJcbiAgcHJpdmF0ZSBfcG9wPEM+KGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxDPikge1xyXG4gICAgY29uc3QgcG9zaXRpb24gPSB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKClcclxuICAgICAgLmNlbnRlckhvcml6b250YWxseSgpXHJcbiAgICAgIC5jZW50ZXJWZXJ0aWNhbGx5KCk7XHJcbiAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHBvc2l0aW9uLFxyXG4gICAgICAvL2hhc0JhY2tkcm9wOiBiYWNrZHJvcCxcclxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxyXG4gICAgICBkaXJlY3Rpb246IHRoaXMuX2Rpci52YWx1ZSxcclxuICAgIH0pO1xyXG4gICAgY29uc3Qgb1JlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKGNvbmZpZyk7XHJcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZShbeyBwcm92aWRlOiBPdmVybGF5UmVmLCB1c2VWYWx1ZTogb1JlZiB9XSwgdGhpcy5faW5qZWN0b3IpO1xyXG4gICAgY29uc3QgcG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChjb21wb25lbnQsIG51bGwsIGluamVjdG9yKTtcclxuICAgIG9SZWYuYXR0YWNoKHBvcnRhbCk7XHJcblxyXG4gICAgcmV0dXJuIG9SZWYuZGV0YWNobWVudHMoKTtcclxuICB9XHJcbn1cclxuIl19
|
@@ -1,107 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { Component, ViewChild } from "@angular/core";
|
3
|
-
import { BizDoc } from "../../core/decorators";
|
4
|
-
import { filter, first } from "rxjs";
|
5
|
-
import { CubeBase } from "./cube-base";
|
6
|
-
import { isArray } from "../../core/functions";
|
7
|
-
import { CubeInfoTableComponent } from "../../cube/info/table.component";
|
8
|
-
import * as i0 from "@angular/core";
|
9
|
-
import * as i1 from "../document-view-ref";
|
10
|
-
import * as i2 from "../../core/router";
|
11
|
-
import * as i3 from "../../cube/cube.service";
|
12
|
-
import * as i4 from "../../core/datasource.service";
|
13
|
-
import * as i5 from "../../core/session.service";
|
14
|
-
import * as i6 from "@angular/material/button";
|
15
|
-
import * as i7 from "@angular/material/icon";
|
16
|
-
import * as i8 from "@angular/material/menu";
|
17
|
-
import * as i9 from "@angular/material/progress-spinner";
|
18
|
-
import * as i10 from "../../cube/info/table.component";
|
19
|
-
import * as i11 from "@angular/common";
|
20
|
-
import * as i12 from "@angular/material/tooltip";
|
21
|
-
import * as i13 from "../../core/pipes/translate.pipe";
|
22
|
-
let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends CubeBase {
|
23
|
-
constructor(viewRef, _router, service, _ds, session) {
|
24
|
-
super(viewRef, service, session);
|
25
|
-
this._router = _router;
|
26
|
-
this._ds = _ds;
|
27
|
-
this.loading = true;
|
28
|
-
this.sources = {};
|
29
|
-
/** filters */
|
30
|
-
this.values = {};
|
31
|
-
}
|
32
|
-
onViewBind() {
|
33
|
-
const { xAxis, serie, indices, sum, filters } = this._viewRef.options;
|
34
|
-
this.xAxis = xAxis;
|
35
|
-
this.serie = serie;
|
36
|
-
this.indices = indices;
|
37
|
-
this.sum = sum;
|
38
|
-
this._service.patterns(this.cube.name).
|
39
|
-
subscribe(p => this.patterns = p);
|
40
|
-
/** one or more axis */
|
41
|
-
this.filters = this.cube.axes.filter(a => isArray(filters) ?
|
42
|
-
filters.indexOf(a.name) > -1 :
|
43
|
-
a.name === filters);
|
44
|
-
this.filters.forEach(f => this.sources[f.name] = this._ds.all(f.dataType));
|
45
|
-
this.setTitle(this.axes);
|
46
|
-
}
|
47
|
-
_copyAxesToFilterValues() {
|
48
|
-
this.filters && this.filters.forEach(f => this.values[f.name] = this.axes[f.name]);
|
49
|
-
}
|
50
|
-
explore(axes) {
|
51
|
-
this._router.navigate(['cube', this.cube.name, 'explore'], {
|
52
|
-
queryParams: axes
|
53
|
-
});
|
54
|
-
}
|
55
|
-
/**
|
56
|
-
*
|
57
|
-
* @param value
|
58
|
-
*/
|
59
|
-
filter(name, value, title) {
|
60
|
-
this.values[name] = value;
|
61
|
-
const axes = Object.assign(Object.assign({}, (this.pattern ? this.pattern.axes : this.aggregate(this.originalAxes))), this.values);
|
62
|
-
axes[name] = value;
|
63
|
-
this._setAxes(axes);
|
64
|
-
}
|
65
|
-
/**
|
66
|
-
*
|
67
|
-
* @param axes
|
68
|
-
*/
|
69
|
-
_setAxes(axes) {
|
70
|
-
this.axes = axes;
|
71
|
-
return this.table.loadingChange.pipe(filter(ok => !ok), first()).toPromise();
|
72
|
-
}
|
73
|
-
/**
|
74
|
-
*
|
75
|
-
* @param pattern
|
76
|
-
*/
|
77
|
-
patternChange(pattern) {
|
78
|
-
this._setAxes(Object.assign(Object.assign({}, pattern.axes), this.values)).then(() => {
|
79
|
-
this._copyAxesToFilterValues();
|
80
|
-
this.title = pattern.title;
|
81
|
-
this.pattern = pattern;
|
82
|
-
});
|
83
|
-
}
|
84
|
-
reset() {
|
85
|
-
this._setAxes(super.aggregate(this.originalAxes)).then(() => {
|
86
|
-
this._copyAxesToFilterValues();
|
87
|
-
this.pattern = null;
|
88
|
-
this.title = null;
|
89
|
-
});
|
90
|
-
}
|
91
|
-
};
|
92
|
-
CubeDocumentMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: CubeDocumentMatrixComponent, deps: [{ token: i1.DocumentViewRef }, { token: i2.RouterImpl }, { token: i3.CubeService }, { token: i4.DatasourceService }, { token: i5.SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
93
|
-
CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: CubeDocumentMatrixComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "table", first: true, predicate: CubeInfoTableComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [matTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</div>\r\n<div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n</div>\r\n<bizdoc-cube-info-table [cube]=\"cube\" [xAxis]=\"xAxis\" [serie]=\"serie\" [indices]=\"indices\" [sum]=sum\r\n [axes]=\"axes\" [base]=\"originalAxes\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-info-table>\r\n", components: [{ type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i10.CubeInfoTableComponent, selector: "bizdoc-cube-info-table", inputs: ["cube", "xAxis", "serie", "indices", "sum", "base", "axes", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], pipes: { "translate": i13.TranslatePipe, "async": i11.AsyncPipe } });
|
94
|
-
CubeDocumentMatrixComponent = __decorate([
|
95
|
-
BizDoc({
|
96
|
-
selector: 'bizdoc-cube-table'
|
97
|
-
})
|
98
|
-
], CubeDocumentMatrixComponent);
|
99
|
-
export { CubeDocumentMatrixComponent };
|
100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: CubeDocumentMatrixComponent, decorators: [{
|
101
|
-
type: Component,
|
102
|
-
args: [{ templateUrl: 'table.component.html', host: { class: 'view' } }]
|
103
|
-
}], ctorParameters: function () { return [{ type: i1.DocumentViewRef }, { type: i2.RouterImpl }, { type: i3.CubeService }, { type: i4.DatasourceService }, { type: i5.SessionService }]; }, propDecorators: { table: [{
|
104
|
-
type: ViewChild,
|
105
|
-
args: [CubeInfoTableComponent, { static: true }]
|
106
|
-
}] } });
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi92aWV3cy9jdWJlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvdmlld3MvY3ViZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTS9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7SUFNNUQsMkJBQTJCLFNBQTNCLDJCQUE0QixTQUFRLFFBQWlCO0lBa0JoRSxZQUNFLE9BQWlDLEVBQ3pCLE9BQW1CLEVBQzNCLE9BQW9CLEVBQ1osR0FBc0IsRUFDOUIsT0FBdUI7UUFDdkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFKekIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUVuQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXBCaEMsWUFBTyxHQUFZLElBQUksQ0FBQztRQUVmLFlBQU8sR0FBb0UsRUFBRSxDQUFDO1FBQ3ZGLGNBQWM7UUFDTCxXQUFNLEdBQWtFLEVBQUUsQ0FBQztJQW1CcEYsQ0FBQztJQUVELFVBQVU7UUFDUixNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFF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QUMsSUFBSSxHQUFLLElBQUksQ0FBQyxNQUFNLEVBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzNELElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDMUQsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTt3SEFoR1ksMkJBQTJCOzRHQUEzQiwyQkFBMkIsNkhBQzNCLHNCQUFzQixxRkNuQm5DLCt5REFxQ0E7QURuQmEsMkJBQTJCO0lBSHZDLE1BQU0sQ0FBQztRQUNOLFFBQVEsRUFBRSxtQkFBbUI7S0FDOUIsQ0FBQztHQUNXLDJCQUEyQixDQWdHdkM7U0FoR1ksMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUMsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLEVBQUMsS0FBSyxFQUFFLE1BQU0sRUFBQyxFQUFFO3NOQUtsQixLQUFLO3NCQUF6RCxTQUFTO3VCQUFDLHNCQUFzQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZVwiO1xyXG5pbXBvcnQgeyBEYXRhc291cmNlU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCaXpEb2MgfSBmcm9tIFwiLi4vLi4vY29yZS9kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IEF4ZXNNYXAsIEN1YmUsIEN1YmVBeGlzIH0gZnJvbSBcIi4uLy4uL2NvcmUvbW9kZWxzXCI7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFJvdXRlckltcGwgfSBmcm9tIFwiLi4vLi4vY29yZS9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgQ3ViZVNlcnZpY2UsIFBhdHRlcm4gfSBmcm9tIFwiLi4vLi4vY3ViZS9jdWJlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3UmVmIH0gZnJvbSBcIi4uL2RvY3VtZW50LXZpZXctcmVmXCI7XHJcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBDdWJlQmFzZSB9IGZyb20gXCIuL2N1YmUtYmFzZVwiO1xyXG5pbXBvcnQgeyBpc0FycmF5IH0gZnJvbSBcIi4uLy4uL2NvcmUvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7IEN1YmVJbmZvVGFibGVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY3ViZS9pbmZvL3RhYmxlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlVXJsOiAndGFibGUuY29tcG9uZW50Lmh0bWwnLCBob3N0OiB7Y2xhc3M6ICd2aWV3J30gfSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtY3ViZS10YWJsZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCBleHRlbmRzIEN1YmVCYXNlPE9wdGlvbnM+IGltcGxlbWVudHMgRG9jdW1lbnRWaWV3Q29tcG9uZW50IHtcclxuICBAVmlld0NoaWxkKEN1YmVJbmZvVGFibGVDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIHRhYmxlOiBDdWJlSW5mb1RhYmxlQ29tcG9uZW50O1xyXG4gIGxvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICByZWFkb25seSBzb3VyY2VzOiB7IFtheGlzOiBzdHJpbmddOiBPYnNlcnZhYmxlPHsga2V5OiBzdHJpbmc7IHZhbHVlOiBhbnk7IH1bXT47IH0gPSB7fTtcclxuICAvKiogZmlsdGVycyAqL1xyXG4gIHJlYWRvbmx5IHZhbHVlczogeyBbYXhpczogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgQXJyYXk8c3RyaW5nIHwgbnVtYmVyPjsgfSA9IHt9O1xyXG4gIGZpbHRlcnM6IEN1YmVBeGlzW107XHJcbiAgcGF0dGVybnM6IFBhdHRlcm5bXTtcclxuICBwYXR0ZXJuOiBQYXR0ZXJuO1xyXG4gIGluZGljZXM/OiBzdHJpbmcgfCBzdHJpbmdbXTtcclxuICB4QXhpczogc3RyaW5nO1xyXG4gIHNlcmllOiBzdHJpbmc7XHJcbiAgc3VtPzoge1xyXG4gICAgeEF4aXM/OiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgICBzZXJpZT86IHN0cmluZyB8IG51bWJlcjtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgfTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHZpZXdSZWY6IERvY3VtZW50Vmlld1JlZjxPcHRpb25zPixcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHNlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZHM6IERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKHZpZXdSZWYsIHNlcnZpY2UsIHNlc3Npb24pO1xyXG4gIH1cclxuXHJcbiAgb25WaWV3QmluZCgpIHtcclxuICAgIGNvbnN0IHsgeEF4aXMsIHNlcmllLCBpbmRpY2VzLCBzdW0sIGZpbHRlcnMgfSA9IHRoaXMuX3ZpZXdSZWYub3B0aW9ucztcclxuICAgIHRoaXMueEF4aXMgPSB4QXhpcztcclxuICAgIHRoaXMuc2VyaWUgPSBzZXJpZTtcclxuICAgIHRoaXMuaW5kaWNlcyA9IGluZGljZXM7XHJcbiAgICB0aGlzLnN1bSA9IHN1bTtcclxuXHJcbiAgICB0aGlzLl9zZXJ2aWNlLnBhdHRlcm5zKHRoaXMuY3ViZS5uYW1lKS5cclxuICAgICAgc3Vic2NyaWJlKHAgPT5cclxuICAgICAgICB0aGlzLnBhdHRlcm5zID0gcCk7XHJcbiAgICAvKiogb25lIG9yIG1vcmUgYXhpcyAqL1xyXG4gICAgdGhpcy5maWx0ZXJzID0gdGhpcy5jdWJlLmF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShmaWx0ZXJzKSA/XHJcbiAgICAgIGZpbHRlcnMuaW5kZXhPZihhLm5hbWUpID4gLTEgOlxyXG4gICAgICBhLm5hbWUgPT09IGZpbHRlcnMpO1xyXG4gICAgdGhpcy5maWx0ZXJzLmZvckVhY2goZiA9PlxyXG4gICAgICB0aGlzLnNvdXJjZXNbZi5uYW1lXSA9IHRoaXMuX2RzLmFsbChmLmRhdGFUeXBlKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLnNldFRpdGxlKHRoaXMuYXhlcyk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2NvcHlBeGVzVG9GaWx0ZXJWYWx1ZXMoKSB7XHJcbiAgICB0aGlzLmZpbHRlcnMgJiYgdGhpcy5maWx0ZXJzLmZvckVhY2goZiA9PlxyXG4gICAgICB0aGlzLnZhbHVlc1tmLm5hbWVdID0gdGhpcy5heGVzW2YubmFtZV1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBleHBsb3JlKGF4ZXM6IEF4ZXNNYXApIHtcclxuICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ2N1YmUnLCB0aGlzLmN1YmUubmFtZSwgJ2V4cGxvcmUnXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogYXhlc1xyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuICAvKipcclxuICpcclxuICogQHBhcmFtIHZhbHVlXHJcbiAqL1xyXG4gIGZpbHRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIsIHRpdGxlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudmFsdWVzW25hbWVdID0gdmFsdWU7XHJcbiAgICBjb25zdCBheGVzID0geyAuLi4odGhpcy5wYXR0ZXJuID8gdGhpcy5wYXR0ZXJuLmF4ZXMgOiB0aGlzLmFnZ3JlZ2F0ZSh0aGlzLm9yaWdpbmFsQXhlcykpLCAuLi50aGlzLnZhbHVlcyB9O1xyXG4gICAgYXhlc1tuYW1lXSA9IHZhbHVlO1xyXG4gICAgdGhpcy5fc2V0QXhlcyhheGVzKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogXHJcbiAgICogQHBhcmFtIGF4ZXNcclxuICAgKi9cclxuICBwcml2YXRlIF9zZXRBeGVzKGF4ZXM6IEF4ZXNNYXApOiBQcm9taXNlPGFueT4ge1xyXG4gICAgdGhpcy5heGVzID0gYXhlcztcclxuICAgIHJldHVybiB0aGlzLnRhYmxlLmxvYWRpbmdDaGFuZ2UucGlwZShmaWx0ZXIob2sgPT4gIW9rKSwgZmlyc3QoKSkudG9Qcm9taXNlKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAgKlxyXG4gICAgKiBAcGFyYW0gcGF0dGVyblxyXG4gICAgKi9cclxuICBwYXR0ZXJuQ2hhbmdlKHBhdHRlcm46IFBhdHRlcm4pIHtcclxuICAgIHRoaXMuX3NldEF4ZXMoeyAuLi5wYXR0ZXJuLmF4ZXMsIC4uLnRoaXMudmFsdWVzIH0pLnRoZW4oKCkgPT4ge1xyXG4gICAgICB0aGlzLl9jb3B5QXhlc1RvRmlsdGVyVmFsdWVzKCk7XHJcbiAgICAgIHRoaXMudGl0bGUgPSBwYXR0ZXJuLnRpdGxlO1xyXG4gICAgICB0aGlzLnBhdHRlcm4gPSBwYXR0ZXJuO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuX3NldEF4ZXMoc3VwZXIuYWdncmVnYXRlKHRoaXMub3JpZ2luYWxBeGVzKSkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2NvcHlBeGVzVG9GaWx0ZXJWYWx1ZXMoKTtcclxuICAgICAgdGhpcy5wYXR0ZXJuID0gbnVsbDtcclxuICAgICAgdGhpcy50aXRsZSA9IG51bGw7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmludGVyZmFjZSBPcHRpb25zIHtcclxuICBmaWx0ZXJzOiBzdHJpbmdbXTtcclxuICBzdW06IHtcclxuICAgIHhBeGlzPzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gICAgc2VyaWU/OiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gIH07XHJcbiAgaW5kaWNlczogc3RyaW5nW107XHJcbiAgYWdncmVnYXRlOiBzdHJpbmdbXTtcclxuICBncm91cDogc3RyaW5nW107XHJcbiAgeEF4aXM6IHN0cmluZztcclxuICBzZXJpZTogc3RyaW5nO1xyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWx0ZXJuYXRlXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImNtZW51XCI+e3tjdWJlLnRpdGxlfX0gPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICA8bWF0LW1lbnUgI2NtZW51PlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGEgb2YgYWx0ZXJuYXRlXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwic3dpdGNoVG8oYSlcIj5cclxuICAgICAgICB7e2EudGl0bGV9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbWF0LW1lbnU+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gIDwhLS0gdGl0bGUgLS0+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm9wdGlvbnNcIiAqbmdJZj1cInBhdHRlcm5zICYmIHBhdHRlcm5zLmxlbmd0aFwiPjxtYXQtaWNvbiBbY2xhc3MuZmlsbGVkXT1cInBhdHRlcm5cIj5maWx0ZXJfYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8bWF0LW1lbnUgI29wdGlvbnMgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XHJcbiAgICA8IS0tIHBhdHRlcm5zIC0tPlxyXG4gICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBwIG9mIHBhdHRlcm5zXCIgKGNsaWNrKT1cInBhdHRlcm5DaGFuZ2UocClcIj57e3AudGl0bGV9fTwvYnV0dG9uPlxyXG4gIDwvbWF0LW1lbnU+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInJlc2V0KClcIiBbZGlzYWJsZWRdPVwiIXBhdHRlcm5cIiBbbWF0VG9vbHRpcF09XCInQ2xlYXInIHwgdHJhbnNsYXRlXCI+XHJcbiAgICA8bWF0LWljb24+Y2xlYXJfYWxsPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8IS0tIGZpbHRlcnMgLS0+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZiBvZiBmaWx0ZXJzXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImZtZW51XCI+e3t2YWx1ZXNbZi5uYW1lXX19IDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPG1hdC1tZW51ICNmbWVudSB4UG9zaXRpb249XCJiZWZvcmVcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBrdiBvZiBzb3VyY2VzW2YubmFtZV0gfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImZpbHRlcihmLm5hbWUsIGt2LmtleSwga3YudmFsdWUpXCI+XHJcbiAgICAgICAge3trdi52YWx1ZX19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtbWVudT5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJsb2FkaW5nLXZpZXdcIiAgKm5nSWY9XCJsb2FkaW5nXCI+XHJcbiAgPG1hdC1zcGlubmVyIGNvbG9yPVwiYWNjZW50XCI+PC9tYXQtc3Bpbm5lcj5cclxuPC9kaXY+XHJcbjxiaXpkb2MtY3ViZS1pbmZvLXRhYmxlIFtjdWJlXT1cImN1YmVcIiBbeEF4aXNdPVwieEF4aXNcIiBbc2VyaWVdPVwic2VyaWVcIiBbaW5kaWNlc109XCJpbmRpY2VzXCIgW3N1bV09c3VtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtheGVzXT1cImF4ZXNcIiBbYmFzZV09XCJvcmlnaW5hbEF4ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZXhwbG9yZSk9J2V4cGxvcmUoJGV2ZW50KScgWyhsb2FkaW5nKV09XCJsb2FkaW5nXCI+PC9iaXpkb2MtY3ViZS1pbmZvLXRhYmxlPlxyXG4iXX0=
|
@@ -1,41 +0,0 @@
|
|
1
|
-
import { OnInit, TemplateRef } from '@angular/core';
|
2
|
-
import { FormBuilder } from '@angular/forms';
|
3
|
-
import { Observable } from 'rxjs';
|
4
|
-
import { UsersService, IdentityUser, IdentityRole } from './users.service';
|
5
|
-
import { SelectionModel } from '@angular/cdk/collections';
|
6
|
-
import { TranslateService } from '../../core/translate.service';
|
7
|
-
import { BizDocConfig } from '../../core/configuration';
|
8
|
-
import { Directionality } from '@angular/cdk/bidi';
|
9
|
-
import { MatTableDataSource } from '@angular/material/table';
|
10
|
-
import { MatSort } from '@angular/material/sort';
|
11
|
-
import { MatSnackBar } from '@angular/material/snack-bar';
|
12
|
-
import { MatDialog } from '@angular/material/dialog';
|
13
|
-
import * as i0 from "@angular/core";
|
14
|
-
export declare class UsersComponent implements OnInit {
|
15
|
-
private _fb;
|
16
|
-
private _service;
|
17
|
-
private _sb;
|
18
|
-
private _dir;
|
19
|
-
private _dialog;
|
20
|
-
private _translate;
|
21
|
-
private _bizdoc;
|
22
|
-
readonly form: import("@angular/forms").FormGroup;
|
23
|
-
dataSource: MatTableDataSource<IdentityUser>;
|
24
|
-
roles: Observable<IdentityRole[]>;
|
25
|
-
readonly displayColumns: string[];
|
26
|
-
readonly selection: SelectionModel<IdentityUser>;
|
27
|
-
sort: MatSort;
|
28
|
-
newTemplate: TemplateRef<any>;
|
29
|
-
editTemplate: TemplateRef<any>;
|
30
|
-
/** users ctor */
|
31
|
-
constructor(_fb: FormBuilder, _service: UsersService, _sb: MatSnackBar, _dir: Directionality, _dialog: MatDialog, _translate: TranslateService, _bizdoc: BizDocConfig);
|
32
|
-
ngOnInit(): void;
|
33
|
-
search(value: string): void;
|
34
|
-
add(): void;
|
35
|
-
edit(user: IdentityUser): void;
|
36
|
-
private _error;
|
37
|
-
private _ok;
|
38
|
-
private _clear;
|
39
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<UsersComponent, never>;
|
40
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<UsersComponent, "ng-component", never, {}, {}, never, never>;
|
41
|
-
}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
2
|
-
import { Gender } from '../../core/models';
|
3
|
-
import { Observable } from 'rxjs';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export declare class UsersService {
|
6
|
-
private http;
|
7
|
-
constructor(http: HttpClient);
|
8
|
-
add(user: IdentityUser): Observable<any>;
|
9
|
-
all(): Observable<IdentityUser[]>;
|
10
|
-
roles(): Observable<IdentityRole[]>;
|
11
|
-
get(id: string): Observable<IdentityUser>;
|
12
|
-
update(id: string, user: IdentityUser): Observable<IdentityUser>;
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<UsersService, never>;
|
14
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<UsersService>;
|
15
|
-
}
|
16
|
-
export interface IdentityUser {
|
17
|
-
id: string;
|
18
|
-
nikeName?: string;
|
19
|
-
userName: string;
|
20
|
-
gender?: Gender;
|
21
|
-
sirname: string;
|
22
|
-
firstName?: string;
|
23
|
-
roles: string[];
|
24
|
-
email: string;
|
25
|
-
phoneNumber: string;
|
26
|
-
}
|
27
|
-
export interface IdentityRole {
|
28
|
-
id: string;
|
29
|
-
name: string;
|
30
|
-
}
|
@@ -1,20 +0,0 @@
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
2
|
-
import { MatSnackBar } from '@angular/material/snack-bar';
|
3
|
-
import { TranslateService } from '../../core/translate.service';
|
4
|
-
import { FormControl } from '@angular/forms';
|
5
|
-
import { FormAuthentication } from "../form.authentication";
|
6
|
-
import * as i0 from "@angular/core";
|
7
|
-
export declare class ForgotComponent {
|
8
|
-
private translate;
|
9
|
-
private session;
|
10
|
-
private sb;
|
11
|
-
email: FormControl;
|
12
|
-
mode: 'ask' | 'done';
|
13
|
-
serving: boolean;
|
14
|
-
readonly processingChange: EventEmitter<boolean>;
|
15
|
-
/** forgot ctor */
|
16
|
-
constructor(translate: TranslateService, session: FormAuthentication, sb: MatSnackBar);
|
17
|
-
ok(): void;
|
18
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ForgotComponent, never>;
|
19
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ForgotComponent, "bizdoc-forgot", never, { "serving": "serving"; }, { "processingChange": "processingChange"; }, never, never>;
|
20
|
-
}
|
@@ -1,29 +0,0 @@
|
|
1
|
-
import { Injector } from '@angular/core';
|
2
|
-
import { Observable } from 'rxjs';
|
3
|
-
import { AuthenticationImpl } from '../core/authentication';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export declare class FormAuthentication extends AuthenticationImpl {
|
6
|
-
getAccessToken(): string;
|
7
|
-
authenticate(username: string, password: string, options?: {
|
8
|
-
rememberMe?: boolean;
|
9
|
-
}): Observable<string>;
|
10
|
-
private _http;
|
11
|
-
constructor(injector: Injector);
|
12
|
-
signOut(): Promise<Object>;
|
13
|
-
forgot(email: string): Observable<any>;
|
14
|
-
get photo(): string;
|
15
|
-
get displayName(): string;
|
16
|
-
get username(): string;
|
17
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FormAuthentication, never>;
|
18
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<FormAuthentication>;
|
19
|
-
}
|
20
|
-
export declare enum LoginResult {
|
21
|
-
OK = 0,
|
22
|
-
Failed = 1
|
23
|
-
}
|
24
|
-
export interface LoginResultModel {
|
25
|
-
gender?: string;
|
26
|
-
photo?: string;
|
27
|
-
name: string;
|
28
|
-
tokenId: string;
|
29
|
-
}
|
@@ -1,11 +0,0 @@
|
|
1
|
-
import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';
|
2
|
-
import { Observable } from 'rxjs';
|
3
|
-
import { FormAuthentication } from './form.authentication';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export declare class FormHttpInterceptor implements HttpInterceptor {
|
6
|
-
private _service;
|
7
|
-
constructor(_service: FormAuthentication);
|
8
|
-
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>>;
|
9
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FormHttpInterceptor, never>;
|
10
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<FormHttpInterceptor>;
|
11
|
-
}
|
@@ -1,18 +0,0 @@
|
|
1
|
-
import { SessionService } from '../core/session.service';
|
2
|
-
import { OverlayRef } from '@angular/cdk/overlay';
|
3
|
-
import * as i0 from "@angular/core";
|
4
|
-
export declare class LoginComponent {
|
5
|
-
private _overlayRef;
|
6
|
-
private _session;
|
7
|
-
working: boolean;
|
8
|
-
languages: string[];
|
9
|
-
currentLanguage: string;
|
10
|
-
mode: 'prompt' | 'forgot';
|
11
|
-
/** login ctor */
|
12
|
-
constructor(_overlayRef: OverlayRef, _session: SessionService);
|
13
|
-
changeLanguage(code: string): void;
|
14
|
-
forgot(ev: MouseEvent): void;
|
15
|
-
close(): void;
|
16
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<LoginComponent, never>;
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LoginComponent, "bizdoc-login", never, {}, {}, never, never>;
|
18
|
-
}
|
@@ -1,13 +0,0 @@
|
|
1
|
-
import { OktaConfig } from '@okta/okta-angular';
|
2
|
-
import { AuthenticationImpl } from '../core/authentication';
|
3
|
-
import * as i0 from "@angular/core";
|
4
|
-
export declare const DEFAULT_SCOPES: string[];
|
5
|
-
export declare class OktaAuthentication extends AuthenticationImpl {
|
6
|
-
private _okta;
|
7
|
-
getAccessToken(): Promise<string>;
|
8
|
-
isAuthenticated(): Promise<boolean>;
|
9
|
-
signOut(): Promise<void>;
|
10
|
-
constructor(_okta: OktaConfig);
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OktaAuthentication, never>;
|
12
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<OktaAuthentication>;
|
13
|
-
}
|