@sambath999/localize-token 12.4.20 → 13.0.1
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/components/localize-token-login-dialog.component.d.ts +3 -0
- package/esm2020/components/localize-token-login-dialog.component.mjs +446 -0
- package/esm2020/models/localize-token.module.mjs +41 -0
- package/esm2020/services/localize-token-configure.service.mjs +27 -0
- package/esm2020/services/localize-token-dialog.service.mjs +61 -0
- package/fesm2015/{sambath999-localize-token.js → sambath999-localize-token.mjs} +133 -62
- package/fesm2015/sambath999-localize-token.mjs.map +1 -0
- package/fesm2020/sambath999-localize-token.mjs +574 -0
- package/fesm2020/sambath999-localize-token.mjs.map +1 -0
- package/models/localize-token.module.d.ts +10 -0
- package/package.json +26 -14
- package/sambath999-localize-token.d.ts +1 -0
- package/services/localize-token-configure.service.d.ts +3 -0
- package/services/localize-token-dialog.service.d.ts +3 -0
- package/bundles/sambath999-localize-token.umd.js +0 -590
- package/bundles/sambath999-localize-token.umd.js.map +0 -1
- package/esm2015/components/localize-token-login-dialog.component.js +0 -392
- package/esm2015/models/localize-token.module.js +0 -26
- package/esm2015/services/localize-token-configure.service.js +0 -32
- package/esm2015/services/localize-token-dialog.service.js +0 -64
- package/fesm2015/sambath999-localize-token.js.map +0 -1
- package/sambath999-localize-token.metadata.json +0 -1
- /package/{esm2015/models/localize-token-models.js → esm2020/models/localize-token-models.mjs} +0 -0
- /package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- /package/{esm2015/sambath999-localize-token.js → esm2020/sambath999-localize-token.mjs} +0 -0
|
@@ -4,6 +4,7 @@ import { DynamicDialogConfig, DynamicDialogRef } from "primeng/dynamicdialog";
|
|
|
4
4
|
import { ILoginDialogProperties } from "../models/localize-token-models";
|
|
5
5
|
import { DomSanitizer } from "@angular/platform-browser";
|
|
6
6
|
import { JwtPayload } from "@sambath999/localize-api";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
7
8
|
export declare class LocalizeTokenLoginDialogComponent implements OnInit, OnDestroy {
|
|
8
9
|
private readonly messageService;
|
|
9
10
|
private readonly cdt;
|
|
@@ -30,4 +31,6 @@ export declare class LocalizeTokenLoginDialogComponent implements OnInit, OnDest
|
|
|
30
31
|
clickLogout(): void;
|
|
31
32
|
private showError;
|
|
32
33
|
ngOnDestroy(): void;
|
|
34
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LocalizeTokenLoginDialogComponent, never>;
|
|
35
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LocalizeTokenLoginDialogComponent, "app-localize-logindlg", never, {}, {}, never, never>;
|
|
33
36
|
}
|
|
@@ -0,0 +1,446 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation, } from "@angular/core";
|
|
2
|
+
import { MessageService } from "primeng/api";
|
|
3
|
+
import { LocalizeApiLoginService, waitFor } from "@sambath999/localize-api";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "primeng/api";
|
|
6
|
+
import * as i2 from "primeng/dynamicdialog";
|
|
7
|
+
import * as i3 from "@angular/platform-browser";
|
|
8
|
+
import * as i4 from "primeng/toast";
|
|
9
|
+
import * as i5 from "@angular/common";
|
|
10
|
+
import * as i6 from "primeng/inputtext";
|
|
11
|
+
import * as i7 from "@angular/forms";
|
|
12
|
+
import * as i8 from "primeng/button";
|
|
13
|
+
export class LocalizeTokenLoginDialogComponent {
|
|
14
|
+
constructor(messageService, cdt, dlgRef, dlgConfig, sanitizer, injector) {
|
|
15
|
+
this.messageService = messageService;
|
|
16
|
+
this.cdt = cdt;
|
|
17
|
+
this.dlgRef = dlgRef;
|
|
18
|
+
this.dlgConfig = dlgConfig;
|
|
19
|
+
this.sanitizer = sanitizer;
|
|
20
|
+
this.injector = injector;
|
|
21
|
+
this.messageKey = "$localize-api-token-login-dlg";
|
|
22
|
+
this.config = this.dlgConfig.data.loginConfig;
|
|
23
|
+
this.loginService = this.injector.get(LocalizeApiLoginService);
|
|
24
|
+
this.properties = this.config.properties;
|
|
25
|
+
this.decodeToken = this.loginService.decodedToken;
|
|
26
|
+
this.logout = this.config.logoutFunc;
|
|
27
|
+
this.configure();
|
|
28
|
+
}
|
|
29
|
+
get loading() { return this.loginService.isLoading; }
|
|
30
|
+
get success() { return this.loginService.isSuccess; }
|
|
31
|
+
get sanitizedTitle() { return this.sanitizer.bypassSecurityTrustHtml(this.properties.title ?? ''); }
|
|
32
|
+
configure() {
|
|
33
|
+
this.dlgConfig.closable = false;
|
|
34
|
+
this.dlgConfig.dismissableMask = false;
|
|
35
|
+
this.dlgConfig.modal = true;
|
|
36
|
+
this.loginService.configure({
|
|
37
|
+
loginUrl: this.config.loginUrl,
|
|
38
|
+
refreshTokenTtl: this.config.expire,
|
|
39
|
+
onSuccess: this.onSuccess.bind(this),
|
|
40
|
+
onFailure: this.showError.bind(this),
|
|
41
|
+
onError: this.showError.bind(this),
|
|
42
|
+
loginFunction: this.config.loginFunction?.bind(this),
|
|
43
|
+
passwordResolver: () => this.password,
|
|
44
|
+
passwordValidator: this.properties?.passwordValidator?.bind(this),
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
ngOnInit() {
|
|
48
|
+
if (!this.decodeToken) {
|
|
49
|
+
this.showError("Invalid Token. Please login again.");
|
|
50
|
+
setTimeout(() => this.logout?.(), 2000);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
ngAfterViewInit() {
|
|
54
|
+
this.cdt.detectChanges();
|
|
55
|
+
}
|
|
56
|
+
async onSuccess() {
|
|
57
|
+
await waitFor(2000);
|
|
58
|
+
this.dlgRef.close(true);
|
|
59
|
+
}
|
|
60
|
+
async clickLogin() {
|
|
61
|
+
await this.loginService.clickLogin();
|
|
62
|
+
}
|
|
63
|
+
clickLogout() {
|
|
64
|
+
this.logout?.();
|
|
65
|
+
}
|
|
66
|
+
showError(summary) {
|
|
67
|
+
this.messageService.add({ key: this.messageKey, severity: "error", summary });
|
|
68
|
+
}
|
|
69
|
+
ngOnDestroy() {
|
|
70
|
+
this.loginService.unConfigure();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
LocalizeTokenLoginDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenLoginDialogComponent, deps: [{ token: i1.MessageService }, { token: i0.ChangeDetectorRef }, { token: i2.DynamicDialogRef }, { token: i2.DynamicDialogConfig }, { token: i3.DomSanitizer }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
74
|
+
LocalizeTokenLoginDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: LocalizeTokenLoginDialogComponent, selector: "app-localize-logindlg", providers: [MessageService], ngImport: i0, template: `<p-toast [key]="messageKey" position="top-center"></p-toast>
|
|
75
|
+
<div id="login-dlg-wrap">
|
|
76
|
+
<div id="login-dlg-header">
|
|
77
|
+
<div id="login-logo" class="p-mb-2" style="background: url('{{properties.logoImage}}') no-repeat"></div>
|
|
78
|
+
<h3 *ngIf="!success" [innerHTML]="sanitizedTitle"></h3>
|
|
79
|
+
<h3 *ngIf="success" style="color:green !important;">{{properties.loginSuccessMessage}}</h3>
|
|
80
|
+
</div>
|
|
81
|
+
<div id="login-dlg-content">
|
|
82
|
+
<ng-container *ngIf="!success">
|
|
83
|
+
<div *ngIf="loading" class="loader-wrap">
|
|
84
|
+
<div class="login-dlg-loader"></div>
|
|
85
|
+
</div>
|
|
86
|
+
<div class="login-dlg-elm">
|
|
87
|
+
<div class="p-inputgroup">
|
|
88
|
+
<span class="p-inputgroup-addon">
|
|
89
|
+
<i class="material-icons-round">person</i>
|
|
90
|
+
</span>
|
|
91
|
+
<input disabled pInputText type="text" placeholder="{{properties.username?.placeHolder}}" [value]="decodeToken?.email" />
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
|
|
95
|
+
<div class="login-dlg-elm">
|
|
96
|
+
<div class="p-inputgroup">
|
|
97
|
+
<span class="p-inputgroup-addon">
|
|
98
|
+
<i class="material-icons-round">lock</i>
|
|
99
|
+
</span>
|
|
100
|
+
<input [disabled]="loading" (keydown.enter)="clickLogin()" pInputText type="password"
|
|
101
|
+
placeholder="{{properties.password?.placeHolder}}" [(ngModel)]="password"
|
|
102
|
+
autofocus />
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
<div class="login-dlg-elm">
|
|
106
|
+
<button style="width: 100%;" pButton type="button" label="{{properties.loginButton?.placeHolder}}" (click)="clickLogin()"
|
|
107
|
+
[disabled]="!password || loading"></button>
|
|
108
|
+
</div>
|
|
109
|
+
|
|
110
|
+
<div class="login-dlg-elm login-dlg-suggest" style="display:flex;align-items: center;user-select: none;">
|
|
111
|
+
<span>{{properties.logoutButton?.message}}</span>
|
|
112
|
+
<button class="p-button-text" pButton type="button" label="{{properties.logoutButton?.placeHolder}}"
|
|
113
|
+
(click)="clickLogout()"></button>
|
|
114
|
+
</div>
|
|
115
|
+
</ng-container>
|
|
116
|
+
|
|
117
|
+
<ng-container *ngIf="success">
|
|
118
|
+
<div style="margin-top:35px;"></div>
|
|
119
|
+
<div class="check-animation-wrap">
|
|
120
|
+
<div class="check-main-container">
|
|
121
|
+
<div class="check-container">
|
|
122
|
+
<div class="check-background">
|
|
123
|
+
<svg viewBox="0 0 65 51" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
124
|
+
<path d="M7 25L27.3077 44L58.5 7" stroke="white" stroke-width="13" stroke-linecap="round"
|
|
125
|
+
stroke-linejoin="round"></path>
|
|
126
|
+
</svg>
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</ng-container>
|
|
132
|
+
</div>
|
|
133
|
+
</div>`, isInline: true, styles: ["#login-dlg-wrap{width:100%;max-width:400px;margin:0 auto;padding:30px;height:100%}.login-dlg-elm{margin-top:1rem}.login-dlg-elm.login-dlg-suggest{display:flex;align-items:center;-webkit-user-select:none;user-select:none;border-bottom:solid 1px #ddd;border-radius:5px;padding:5px 10px;background:#f9f9f9;box-shadow:1px 5px 10px -12px #000}#login-dlg-header{display:flex;flex-direction:column;align-items:center;justify-content:center}#login-dlg-header h3{font-weight:700;font-size:.9rem;color:orange;text-align:center}#login-logo{height:55px;width:55px;background-size:contain!important}#login-dlg-content .p-inputgroup{height:45px}#login-dlg-content .p-inputgroup .p-inputgroup-addon{height:45px;border-radius:15px 0 0 15px;width:50px}#login-dlg-content *{font-size:.9rem}#login-dlg-content .p-inputgroup .p-inputgroup-addon *{font-size:1rem}#login-dlg-content .p-inputgroup input{height:45px;border-radius:0 15px 15px 0}#login-dlg-content button{height:45px;border-radius:15px}.check-animation-wrap{top:0;left:0;position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:calc(100% - 200px);min-height:400px}.check-main-container{width:100%;height:100vh;display:flex;flex-flow:column;justify-content:center;align-items:center}.check-container{width:6.25rem;height:7.5rem;display:flex;flex-flow:column;align-items:center;justify-content:space-between}.check-container .check-background{width:100%;height:calc(100% - 1.25rem);background:linear-gradient(to bottom right,#5de593,#41d67c);box-shadow:0 0 0 65px #ffffff40 inset,0 0 0 65px #ffffff40 inset;transform:scale(.84);border-radius:50%;animation:animateContainer .75s ease-out forwards .75s;display:flex;align-items:center;justify-content:center;opacity:0}.check-container .check-background svg{width:65%;transform:translateY(.25rem);stroke-dasharray:80;stroke-dashoffset:80;animation:animateCheck .35s forwards 1.25s ease-out;min-width:auto!important}.check-container .check-shadow{bottom:calc(-15% - 5px);left:0;border-radius:50%;background:radial-gradient(closest-side,rgba(73,218,131,1),transparent);animation:animateShadow .75s ease-out forwards .75s}@keyframes animateContainer{0%{opacity:0;transform:scale(0);box-shadow:0 0 0 65px #ffffff40 inset,0 0 0 65px #ffffff40 inset}25%{opacity:1;transform:scale(.9);box-shadow:0 0 0 65px #ffffff40 inset,0 0 0 65px #ffffff40 inset}43.75%{transform:scale(1.15);box-shadow:0 0 0 43.334px #ffffff40 inset,0 0 0 65px #ffffff40 inset}62.5%{transform:scale(1);box-shadow:0 0 #ffffff40 inset,0 0 0 21.667px #ffffff40 inset}81.25%{box-shadow:0 0 #ffffff40 inset,0 0 #ffffff40 inset}to{opacity:1;box-shadow:0 0 #ffffff40 inset,0 0 #ffffff40 inset}}@keyframes animateCheck{0%{stroke-dashoffset:80}to{stroke-dashoffset:0}}@keyframes animateShadow{0%{opacity:0;width:100%;height:15%}25%{opacity:.25}43.75%{width:40%;height:7%;opacity:.35}to{width:85%;height:15%;opacity:.25}}#login-dlg-wrap .loader-wrap{display:flex;justify-content:center;align-items:center;height:100%;width:100%;position:absolute;top:0;left:0;z-index:100;background:#ffffff42;backdrop-filter:blur(1px)}#login-dlg-wrap .login-dlg-loader{border:15px solid #e7e7e7;border-top:15px solid #52dba1;border-radius:50%;width:100px;height:100px;animation:spinloader 2s linear infinite}#login-dlg-wrap .loader-wrap:before{content:\"\";position:absolute;width:70px;height:70px;transform:translate(-50%,-50%);z-index:1;border:15px solid #e7e7e700;border-top:15px solid #52dba1c9;border-radius:50%;animation:spinloader .75s linear infinite}@keyframes spinloader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"], components: [{ type: i4.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.InputText, selector: "[pInputText]" }, { type: i7.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: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenLoginDialogComponent, decorators: [{
|
|
135
|
+
type: Component,
|
|
136
|
+
args: [{
|
|
137
|
+
styles: [`
|
|
138
|
+
#login-dlg-wrap {
|
|
139
|
+
width: 100%;
|
|
140
|
+
max-width: 400px;
|
|
141
|
+
margin: 0 auto;
|
|
142
|
+
padding: 30px;
|
|
143
|
+
height: 100%;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
.login-dlg-elm {
|
|
147
|
+
margin-top: 1rem;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.login-dlg-elm.login-dlg-suggest {
|
|
151
|
+
display: flex ;
|
|
152
|
+
align-items: center;
|
|
153
|
+
user-select: none;
|
|
154
|
+
border-bottom: solid 1px #ddd;
|
|
155
|
+
border-radius: 5px;
|
|
156
|
+
padding: 5px 10px;
|
|
157
|
+
background: #f9f9f9;
|
|
158
|
+
box-shadow: 1px 5px 10px -12px #000;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
#login-dlg-header {
|
|
162
|
+
display: flex;
|
|
163
|
+
flex-direction: column;
|
|
164
|
+
align-items: center;
|
|
165
|
+
justify-content: center;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
#login-dlg-header h3 {
|
|
169
|
+
font-weight: bold;
|
|
170
|
+
font-size: 0.9rem;
|
|
171
|
+
color: orange;
|
|
172
|
+
text-align: center;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
#login-logo {
|
|
176
|
+
height: 55px;
|
|
177
|
+
width: 55px;
|
|
178
|
+
/* background: url("/assets/images/logo-300px.png") no-repeat; */
|
|
179
|
+
background-size: contain !important;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
#login-dlg-content .p-inputgroup {
|
|
183
|
+
height: 45px;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
#login-dlg-content .p-inputgroup .p-inputgroup-addon {
|
|
187
|
+
height: 45px;
|
|
188
|
+
border-radius: 15px 0 0 15px;
|
|
189
|
+
width: 50px;
|
|
190
|
+
}
|
|
191
|
+
#login-dlg-content *{
|
|
192
|
+
font-size: .9rem;
|
|
193
|
+
/* font-family: 'Lexend', 'Roboto', sans-serif, 'material-icons-round'; */
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
#login-dlg-content .p-inputgroup .p-inputgroup-addon * {
|
|
197
|
+
font-size: 1rem;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
#login-dlg-content .p-inputgroup input {
|
|
201
|
+
height: 45px;
|
|
202
|
+
border-radius: 0 15px 15px 0;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
#login-dlg-content button {
|
|
206
|
+
height: 45px;
|
|
207
|
+
border-radius: 15px;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/*check animation block*/
|
|
211
|
+
|
|
212
|
+
.check-animation-wrap {
|
|
213
|
+
top: 0;
|
|
214
|
+
left: 0;
|
|
215
|
+
position: absolute;
|
|
216
|
+
display: flex;
|
|
217
|
+
flex-direction: column;
|
|
218
|
+
align-items: center;
|
|
219
|
+
justify-content: center;
|
|
220
|
+
width: 100%;
|
|
221
|
+
height: calc(100% - 200px);
|
|
222
|
+
min-height: 400px;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
.check-main-container {
|
|
226
|
+
width: 100%;
|
|
227
|
+
height: 100vh;
|
|
228
|
+
display: flex;
|
|
229
|
+
flex-flow: column;
|
|
230
|
+
justify-content: center;
|
|
231
|
+
align-items: center;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
.check-container {
|
|
235
|
+
width: 6.25rem;
|
|
236
|
+
height: 7.5rem;
|
|
237
|
+
display: flex;
|
|
238
|
+
flex-flow: column;
|
|
239
|
+
align-items: center;
|
|
240
|
+
justify-content: space-between;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
.check-container .check-background {
|
|
244
|
+
width: 100%;
|
|
245
|
+
height: calc(100% - 1.25rem);
|
|
246
|
+
background: linear-gradient(to bottom right, #5de593, #41d67c);
|
|
247
|
+
box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
|
|
248
|
+
transform: scale(0.84);
|
|
249
|
+
border-radius: 50%;
|
|
250
|
+
animation: animateContainer 0.75s ease-out forwards 0.75s;
|
|
251
|
+
display: flex;
|
|
252
|
+
align-items: center;
|
|
253
|
+
justify-content: center;
|
|
254
|
+
opacity: 0;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
.check-container .check-background svg {
|
|
258
|
+
width: 65%;
|
|
259
|
+
transform: translateY(0.25rem);
|
|
260
|
+
stroke-dasharray: 80;
|
|
261
|
+
stroke-dashoffset: 80;
|
|
262
|
+
animation: animateCheck 0.35s forwards 1.25s ease-out;
|
|
263
|
+
min-width: auto !important;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.check-container .check-shadow {
|
|
267
|
+
bottom: calc(-15% - 5px);
|
|
268
|
+
left: 0;
|
|
269
|
+
border-radius: 50%;
|
|
270
|
+
background: radial-gradient(closest-side, rgba(73, 218, 131, 1), transparent);
|
|
271
|
+
animation: animateShadow 0.75s ease-out forwards 0.75s;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
@keyframes animateContainer {
|
|
275
|
+
0% {
|
|
276
|
+
opacity: 0;
|
|
277
|
+
transform: scale(0);
|
|
278
|
+
box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
25% {
|
|
282
|
+
opacity: 1;
|
|
283
|
+
transform: scale(0.9);
|
|
284
|
+
box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
43.75% {
|
|
288
|
+
transform: scale(1.15);
|
|
289
|
+
box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
62.5% {
|
|
293
|
+
transform: scale(1);
|
|
294
|
+
box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
81.25% {
|
|
298
|
+
box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
100% {
|
|
302
|
+
opacity: 1;
|
|
303
|
+
box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
@keyframes animateCheck {
|
|
308
|
+
from {
|
|
309
|
+
stroke-dashoffset: 80;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
to {
|
|
313
|
+
stroke-dashoffset: 0;
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
@keyframes animateShadow {
|
|
318
|
+
0% {
|
|
319
|
+
opacity: 0;
|
|
320
|
+
width: 100%;
|
|
321
|
+
height: 15%;
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
25% {
|
|
325
|
+
opacity: 0.25;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
43.75% {
|
|
329
|
+
width: 40%;
|
|
330
|
+
height: 7%;
|
|
331
|
+
opacity: 0.35;
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
100% {
|
|
335
|
+
width: 85%;
|
|
336
|
+
height: 15%;
|
|
337
|
+
opacity: 0.25;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
#login-dlg-wrap .loader-wrap {
|
|
341
|
+
display: flex;
|
|
342
|
+
justify-content: center;
|
|
343
|
+
align-items: center;
|
|
344
|
+
height:100%;
|
|
345
|
+
width:100%;
|
|
346
|
+
position: absolute;
|
|
347
|
+
top: 0;
|
|
348
|
+
left: 0;
|
|
349
|
+
z-index: 100;
|
|
350
|
+
background: #ffffff42;
|
|
351
|
+
backdrop-filter: blur(1px);
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
#login-dlg-wrap .login-dlg-loader {
|
|
355
|
+
border: 15px solid #e7e7e7;
|
|
356
|
+
border-top: 15px solid #52dba1;
|
|
357
|
+
border-radius: 50%;
|
|
358
|
+
width: 100px;
|
|
359
|
+
height: 100px;
|
|
360
|
+
animation: spinloader 2s linear infinite;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
#login-dlg-wrap .loader-wrap::before {
|
|
364
|
+
content: "";
|
|
365
|
+
position: absolute;
|
|
366
|
+
width: 70px;
|
|
367
|
+
height: 70px;
|
|
368
|
+
transform: translate(-50%, -50%);
|
|
369
|
+
z-index: 1;
|
|
370
|
+
border: 15px solid #e7e7e700;
|
|
371
|
+
border-top: 15px solid #52dba1c9;
|
|
372
|
+
border-radius: 50%;
|
|
373
|
+
animation: spinloader .75s linear infinite;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
@keyframes spinloader {
|
|
377
|
+
0% { transform: rotate(0deg); }
|
|
378
|
+
100% { transform: rotate(360deg); }
|
|
379
|
+
}
|
|
380
|
+
`],
|
|
381
|
+
template: `<p-toast [key]="messageKey" position="top-center"></p-toast>
|
|
382
|
+
<div id="login-dlg-wrap">
|
|
383
|
+
<div id="login-dlg-header">
|
|
384
|
+
<div id="login-logo" class="p-mb-2" style="background: url('{{properties.logoImage}}') no-repeat"></div>
|
|
385
|
+
<h3 *ngIf="!success" [innerHTML]="sanitizedTitle"></h3>
|
|
386
|
+
<h3 *ngIf="success" style="color:green !important;">{{properties.loginSuccessMessage}}</h3>
|
|
387
|
+
</div>
|
|
388
|
+
<div id="login-dlg-content">
|
|
389
|
+
<ng-container *ngIf="!success">
|
|
390
|
+
<div *ngIf="loading" class="loader-wrap">
|
|
391
|
+
<div class="login-dlg-loader"></div>
|
|
392
|
+
</div>
|
|
393
|
+
<div class="login-dlg-elm">
|
|
394
|
+
<div class="p-inputgroup">
|
|
395
|
+
<span class="p-inputgroup-addon">
|
|
396
|
+
<i class="material-icons-round">person</i>
|
|
397
|
+
</span>
|
|
398
|
+
<input disabled pInputText type="text" placeholder="{{properties.username?.placeHolder}}" [value]="decodeToken?.email" />
|
|
399
|
+
</div>
|
|
400
|
+
</div>
|
|
401
|
+
|
|
402
|
+
<div class="login-dlg-elm">
|
|
403
|
+
<div class="p-inputgroup">
|
|
404
|
+
<span class="p-inputgroup-addon">
|
|
405
|
+
<i class="material-icons-round">lock</i>
|
|
406
|
+
</span>
|
|
407
|
+
<input [disabled]="loading" (keydown.enter)="clickLogin()" pInputText type="password"
|
|
408
|
+
placeholder="{{properties.password?.placeHolder}}" [(ngModel)]="password"
|
|
409
|
+
autofocus />
|
|
410
|
+
</div>
|
|
411
|
+
</div>
|
|
412
|
+
<div class="login-dlg-elm">
|
|
413
|
+
<button style="width: 100%;" pButton type="button" label="{{properties.loginButton?.placeHolder}}" (click)="clickLogin()"
|
|
414
|
+
[disabled]="!password || loading"></button>
|
|
415
|
+
</div>
|
|
416
|
+
|
|
417
|
+
<div class="login-dlg-elm login-dlg-suggest" style="display:flex;align-items: center;user-select: none;">
|
|
418
|
+
<span>{{properties.logoutButton?.message}}</span>
|
|
419
|
+
<button class="p-button-text" pButton type="button" label="{{properties.logoutButton?.placeHolder}}"
|
|
420
|
+
(click)="clickLogout()"></button>
|
|
421
|
+
</div>
|
|
422
|
+
</ng-container>
|
|
423
|
+
|
|
424
|
+
<ng-container *ngIf="success">
|
|
425
|
+
<div style="margin-top:35px;"></div>
|
|
426
|
+
<div class="check-animation-wrap">
|
|
427
|
+
<div class="check-main-container">
|
|
428
|
+
<div class="check-container">
|
|
429
|
+
<div class="check-background">
|
|
430
|
+
<svg viewBox="0 0 65 51" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
431
|
+
<path d="M7 25L27.3077 44L58.5 7" stroke="white" stroke-width="13" stroke-linecap="round"
|
|
432
|
+
stroke-linejoin="round"></path>
|
|
433
|
+
</svg>
|
|
434
|
+
</div>
|
|
435
|
+
</div>
|
|
436
|
+
</div>
|
|
437
|
+
</div>
|
|
438
|
+
</ng-container>
|
|
439
|
+
</div>
|
|
440
|
+
</div>`,
|
|
441
|
+
selector: "app-localize-logindlg",
|
|
442
|
+
providers: [MessageService],
|
|
443
|
+
encapsulation: ViewEncapsulation.None,
|
|
444
|
+
}]
|
|
445
|
+
}], ctorParameters: function () { return [{ type: i1.MessageService }, { type: i0.ChangeDetectorRef }, { type: i2.DynamicDialogRef }, { type: i2.DynamicDialogConfig }, { type: i3.DomSanitizer }, { type: i0.Injector }]; } });
|
|
446
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUtdG9rZW4tbG9naW4tZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWNrYWdlL2NvbXBvbmVudHMvbG9jYWxpemUtdG9rZW4tbG9naW4tZGlhbG9nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUlULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTdDLE9BQU8sRUFBYyx1QkFBdUIsRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7OztBQXVUeEYsTUFBTSxPQUFPLGlDQUFpQztJQWE1QyxZQUNtQixjQUE4QixFQUM5QixHQUFzQixFQUN0QixNQUF3QixFQUN4QixTQUE4QixFQUM5QixTQUF1QixFQUN2QixRQUFrQjtRQUxsQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBa0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBcUI7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUN2QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBbEI1QixlQUFVLEdBQUcsK0JBQStCLENBQUM7UUFvQnBELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVyxDQUFDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUM7UUFFbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQXhCRCxJQUFJLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNyRCxJQUFJLE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNyRCxJQUFJLGNBQWMsS0FBSyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBd0I1RixTQUFTO1FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFFNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7WUFDMUIsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtZQUM5QixlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNO1lBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNwQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2xDLGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3BELGdCQUFnQixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ3JDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNsRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsb0NBQW9DLENBQUMsQ0FBQztZQUNyRCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLEtBQUssQ0FBQyxTQUFTO1FBQ3JCLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVTtRQUNkLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxTQUFTLENBQUMsT0FBZTtRQUMvQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBR0QsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7OEhBOUVVLGlDQUFpQztrSEFBakMsaUNBQWlDLGdEQUhqQyxDQUFDLGNBQWMsQ0FBQywwQkE3RGpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQTJESDsyRkFLSSxpQ0FBaUM7a0JBclQ3QyxTQUFTO21CQUFDO29CQUNULE1BQU0sRUFBRSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtUFIsQ0FBQztvQkFDRixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBMkRIO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFNBQVMsRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDM0IsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSW5qZWN0b3IsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xyXG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSBcInByaW1lbmcvZHluYW1pY2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBJTG9naW5EaWFsb2dDb25maWcsIElMb2dpbkRpYWxvZ1Byb3BlcnRpZXMgfSBmcm9tIFwiLi4vbW9kZWxzL2xvY2FsaXplLXRva2VuLW1vZGVsc1wiO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xyXG5pbXBvcnQgeyBKd3RQYXlsb2FkLCBMb2NhbGl6ZUFwaUxvZ2luU2VydmljZSwgd2FpdEZvciB9IGZyb20gXCJAc2FtYmF0aDk5OS9sb2NhbGl6ZS1hcGlcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0eWxlczogW2BcclxuICAjbG9naW4tZGxnLXdyYXAge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICBcclxuICAubG9naW4tZGxnLWVsbSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gIH1cclxuXHJcbiAgLmxvZ2luLWRsZy1lbG0ubG9naW4tZGxnLXN1Z2dlc3Qge1xyXG4gICAgZGlzcGxheTogZmxleCA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2RkZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcclxuICAgIGJveC1zaGFkb3c6IDFweCA1cHggMTBweCAtMTJweCAjMDAwO1xyXG4gIH1cclxuICBcclxuICAjbG9naW4tZGxnLWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgI2xvZ2luLWRsZy1oZWFkZXIgaDMge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgIGNvbG9yOiBvcmFuZ2U7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gICNsb2dpbi1sb2dvIHtcclxuICAgIGhlaWdodDogNTVweDtcclxuICAgIHdpZHRoOiA1NXB4O1xyXG4gICAgLyogYmFja2dyb3VuZDogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbG9nby0zMDBweC5wbmdcIikgbm8tcmVwZWF0OyAqL1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gICNsb2dpbi1kbGctY29udGVudCAucC1pbnB1dGdyb3VwIHtcclxuICAgIGhlaWdodDogNDVweDtcclxuICB9XHJcbiAgXHJcbiAgI2xvZ2luLWRsZy1jb250ZW50IC5wLWlucHV0Z3JvdXAgLnAtaW5wdXRncm91cC1hZGRvbiB7XHJcbiAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4IDAgMCAxNXB4O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgfVxyXG4gICNsb2dpbi1kbGctY29udGVudCAqe1xyXG4gICAgZm9udC1zaXplOiAuOXJlbTtcclxuICAgIC8qIGZvbnQtZmFtaWx5OiAnTGV4ZW5kJywgJ1JvYm90bycsIHNhbnMtc2VyaWYsICdtYXRlcmlhbC1pY29ucy1yb3VuZCc7ICovXHJcbiAgfVxyXG4gIFxyXG4gICNsb2dpbi1kbGctY29udGVudCAucC1pbnB1dGdyb3VwIC5wLWlucHV0Z3JvdXAtYWRkb24gKiB7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgfVxyXG4gIFxyXG4gICNsb2dpbi1kbGctY29udGVudCAucC1pbnB1dGdyb3VwIGlucHV0IHtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgMTVweCAxNXB4IDA7XHJcbiAgfVxyXG4gIFxyXG4gICNsb2dpbi1kbGctY29udGVudCBidXR0b24ge1xyXG4gICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICB9XHJcbiAgXHJcbiAgLypjaGVjayBhbmltYXRpb24gYmxvY2sqL1xyXG4gIFxyXG4gIC5jaGVjay1hbmltYXRpb24td3JhcCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjAwcHgpO1xyXG4gICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5jaGVjay1tYWluLWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIC5jaGVjay1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDYuMjVyZW07XHJcbiAgICBoZWlnaHQ6IDcuNXJlbTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgfVxyXG4gIFxyXG4gIC5jaGVjay1jb250YWluZXIgLmNoZWNrLWJhY2tncm91bmQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgIzVkZTU5MywgIzQxZDY3Yyk7XHJcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBhbmltYXRpb246IGFuaW1hdGVDb250YWluZXIgMC43NXMgZWFzZS1vdXQgZm9yd2FyZHMgMC43NXM7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbiAgXHJcbiAgLmNoZWNrLWNvbnRhaW5lciAuY2hlY2stYmFja2dyb3VuZCBzdmcge1xyXG4gICAgd2lkdGg6IDY1JTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjI1cmVtKTtcclxuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDgwO1xyXG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDgwO1xyXG4gICAgYW5pbWF0aW9uOiBhbmltYXRlQ2hlY2sgMC4zNXMgZm9yd2FyZHMgMS4yNXMgZWFzZS1vdXQ7XHJcbiAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgLmNoZWNrLWNvbnRhaW5lciAuY2hlY2stc2hhZG93IHtcclxuICAgIGJvdHRvbTogY2FsYygtMTUlIC0gNXB4KTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2xvc2VzdC1zaWRlLCByZ2JhKDczLCAyMTgsIDEzMSwgMSksIHRyYW5zcGFyZW50KTtcclxuICAgIGFuaW1hdGlvbjogYW5pbWF0ZVNoYWRvdyAwLjc1cyBlYXNlLW91dCBmb3J3YXJkcyAwLjc1cztcclxuICB9XHJcbiAgXHJcbiAgQGtleWZyYW1lcyBhbmltYXRlQ29udGFpbmVyIHtcclxuICAgIDAlIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0LCAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAyNSUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XHJcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0O1xyXG4gICAgfVxyXG4gIFxyXG4gICAgNDMuNzUlIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcclxuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNDMuMzM0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0O1xyXG4gICAgfVxyXG4gIFxyXG4gICAgNjIuNSUge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMjEuNjY3cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDtcclxuICAgIH1cclxuICBcclxuICAgIDgxLjI1JSB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0LCAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDtcclxuICAgIH1cclxuICBcclxuICAgIDEwMCUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBrZXlmcmFtZXMgYW5pbWF0ZUNoZWNrIHtcclxuICAgIGZyb20ge1xyXG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogODA7XHJcbiAgICB9XHJcbiAgXHJcbiAgICB0byB7XHJcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBAa2V5ZnJhbWVzIGFuaW1hdGVTaGFkb3cge1xyXG4gICAgMCUge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxNSU7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAyNSUge1xyXG4gICAgICBvcGFjaXR5OiAwLjI1O1xyXG4gICAgfVxyXG4gIFxyXG4gICAgNDMuNzUlIHtcclxuICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgaGVpZ2h0OiA3JTtcclxuICAgICAgb3BhY2l0eTogMC4zNTtcclxuICAgIH1cclxuICBcclxuICAgIDEwMCUge1xyXG4gICAgICB3aWR0aDogODUlO1xyXG4gICAgICBoZWlnaHQ6IDE1JTtcclxuICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgIH1cclxuICB9XHJcbiAgI2xvZ2luLWRsZy13cmFwIC5sb2FkZXItd3JhcCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY0MjtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpO1xyXG4gIH1cclxuXHJcbiAgI2xvZ2luLWRsZy13cmFwIC5sb2dpbi1kbGctbG9hZGVyIHtcclxuICAgIGJvcmRlcjogMTVweCBzb2xpZCAjZTdlN2U3O1xyXG4gICAgYm9yZGVyLXRvcDogMTVweCBzb2xpZCAjNTJkYmExO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIGFuaW1hdGlvbjogc3BpbmxvYWRlciAycyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgfVxyXG5cclxuICAjbG9naW4tZGxnLXdyYXAgLmxvYWRlci13cmFwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYm9yZGVyOiAxNXB4IHNvbGlkICNlN2U3ZTcwMDtcclxuICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgIzUyZGJhMWM5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYW5pbWF0aW9uOiBzcGlubG9hZGVyIC43NXMgbGluZWFyIGluZmluaXRlO1xyXG4gIH1cclxuXHJcbiAgQGtleWZyYW1lcyBzcGlubG9hZGVyIHtcclxuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbiAgfVxyXG4gIGBdLFxyXG4gIHRlbXBsYXRlOiBgPHAtdG9hc3QgW2tleV09XCJtZXNzYWdlS2V5XCIgcG9zaXRpb249XCJ0b3AtY2VudGVyXCI+PC9wLXRvYXN0PlxyXG4gIDxkaXYgaWQ9XCJsb2dpbi1kbGctd3JhcFwiPlxyXG4gICAgPGRpdiBpZD1cImxvZ2luLWRsZy1oZWFkZXJcIj5cclxuICAgICAgPGRpdiBpZD1cImxvZ2luLWxvZ29cIiBjbGFzcz1cInAtbWItMlwiIHN0eWxlPVwiYmFja2dyb3VuZDogdXJsKCd7e3Byb3BlcnRpZXMubG9nb0ltYWdlfX0nKSBuby1yZXBlYXRcIj48L2Rpdj5cclxuICAgICAgPGgzICpuZ0lmPVwiIXN1Y2Nlc3NcIiBbaW5uZXJIVE1MXT1cInNhbml0aXplZFRpdGxlXCI+PC9oMz5cclxuICAgICAgPGgzICpuZ0lmPVwic3VjY2Vzc1wiIHN0eWxlPVwiY29sb3I6Z3JlZW4gIWltcG9ydGFudDtcIj57e3Byb3BlcnRpZXMubG9naW5TdWNjZXNzTWVzc2FnZX19PC9oMz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBpZD1cImxvZ2luLWRsZy1jb250ZW50XCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3VjY2Vzc1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJsb2FkZXItd3JhcFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxvZ2luLWRsZy1sb2FkZXJcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibG9naW4tZGxnLWVsbVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInAtaW5wdXRncm91cFwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtaW5wdXRncm91cC1hZGRvblwiPlxyXG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtcm91bmRcIj5wZXJzb248L2k+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPGlucHV0IGRpc2FibGVkIHBJbnB1dFRleHQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cInt7cHJvcGVydGllcy51c2VybmFtZT8ucGxhY2VIb2xkZXJ9fVwiIFt2YWx1ZV09XCJkZWNvZGVUb2tlbj8uZW1haWxcIiAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvZ2luLWRsZy1lbG1cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLWlucHV0Z3JvdXBcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwLWlucHV0Z3JvdXAtYWRkb25cIj5cclxuICAgICAgICAgICAgICA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zLXJvdW5kXCI+bG9jazwvaT5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8aW5wdXQgW2Rpc2FibGVkXT1cImxvYWRpbmdcIiAoa2V5ZG93bi5lbnRlcik9XCJjbGlja0xvZ2luKClcIiBwSW5wdXRUZXh0IHR5cGU9XCJwYXNzd29yZFwiIFxyXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3twcm9wZXJ0aWVzLnBhc3N3b3JkPy5wbGFjZUhvbGRlcn19XCIgWyhuZ01vZGVsKV09XCJwYXNzd29yZFwiXHJcbiAgICAgICAgICAgICAgYXV0b2ZvY3VzIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibG9naW4tZGxnLWVsbVwiPlxyXG4gICAgICAgICAgPGJ1dHRvbiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiIHBCdXR0b24gdHlwZT1cImJ1dHRvblwiIGxhYmVsPVwie3twcm9wZXJ0aWVzLmxvZ2luQnV0dG9uPy5wbGFjZUhvbGRlcn19XCIgKGNsaWNrKT1cImNsaWNrTG9naW4oKVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhcGFzc3dvcmQgfHwgbG9hZGluZ1wiPjwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsb2dpbi1kbGctZWxtIGxvZ2luLWRsZy1zdWdnZXN0XCIgc3R5bGU9XCJkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6IGNlbnRlcjt1c2VyLXNlbGVjdDogbm9uZTtcIj5cclxuICAgICAgICAgIDxzcGFuPnt7cHJvcGVydGllcy5sb2dvdXRCdXR0b24/Lm1lc3NhZ2V9fTwvc3Bhbj5cclxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJwLWJ1dHRvbi10ZXh0XCIgcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbGFiZWw9XCJ7e3Byb3BlcnRpZXMubG9nb3V0QnV0dG9uPy5wbGFjZUhvbGRlcn19XCIgXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGlja0xvZ291dCgpXCI+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gIFxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VjY2Vzc1wiPlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tdG9wOjM1cHg7XCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrLWFuaW1hdGlvbi13cmFwXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2stbWFpbi1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1iYWNrZ3JvdW5kXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgNjUgNTFcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk03IDI1TDI3LjMwNzcgNDRMNTguNSA3XCIgc3Ryb2tlPVwid2hpdGVcIiBzdHJva2Utd2lkdGg9XCIxM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+YCxcclxuICBzZWxlY3RvcjogXCJhcHAtbG9jYWxpemUtbG9naW5kbGdcIixcclxuICBwcm92aWRlcnM6IFtNZXNzYWdlU2VydmljZV0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW5Mb2dpbkRpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZWFkb25seSBtZXNzYWdlS2V5ID0gXCIkbG9jYWxpemUtYXBpLXRva2VuLWxvZ2luLWRsZ1wiO1xyXG4gIHBhc3N3b3JkOiBhbnk7XHJcbiAgcmVhZG9ubHkgZGVjb2RlVG9rZW46IEp3dFBheWxvYWQgfCBudWxsO1xyXG4gIGdldCBsb2FkaW5nKCkgeyByZXR1cm4gdGhpcy5sb2dpblNlcnZpY2UuaXNMb2FkaW5nOyB9XHJcbiAgZ2V0IHN1Y2Nlc3MoKSB7IHJldHVybiB0aGlzLmxvZ2luU2VydmljZS5pc1N1Y2Nlc3M7IH1cclxuICBnZXQgc2FuaXRpemVkVGl0bGUoKSB7IHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLnByb3BlcnRpZXMudGl0bGUgPz8gJycpOyB9XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IElMb2dpbkRpYWxvZ0NvbmZpZ1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ291dD86ICgpID0+IGFueVxyXG4gIHJlYWRvbmx5IHByb3BlcnRpZXM6IElMb2dpbkRpYWxvZ1Byb3BlcnRpZXM7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBsb2dpblNlcnZpY2U6IExvY2FsaXplQXBpTG9naW5TZXJ2aWNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHQ6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkbGdSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRsZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgdGhpcy5jb25maWcgPSB0aGlzLmRsZ0NvbmZpZy5kYXRhLmxvZ2luQ29uZmlnO1xyXG4gICAgdGhpcy5sb2dpblNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChMb2NhbGl6ZUFwaUxvZ2luU2VydmljZSk7XHJcbiAgICB0aGlzLnByb3BlcnRpZXMgPSB0aGlzLmNvbmZpZy5wcm9wZXJ0aWVzITtcclxuICAgIHRoaXMuZGVjb2RlVG9rZW4gPSB0aGlzLmxvZ2luU2VydmljZS5kZWNvZGVkVG9rZW47XHJcblxyXG4gICAgdGhpcy5sb2dvdXQgPSB0aGlzLmNvbmZpZy5sb2dvdXRGdW5jO1xyXG4gICAgdGhpcy5jb25maWd1cmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uZmlndXJlKCkge1xyXG4gICAgdGhpcy5kbGdDb25maWcuY2xvc2FibGUgPSBmYWxzZTtcclxuICAgIHRoaXMuZGxnQ29uZmlnLmRpc21pc3NhYmxlTWFzayA9IGZhbHNlO1xyXG4gICAgdGhpcy5kbGdDb25maWcubW9kYWwgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMubG9naW5TZXJ2aWNlLmNvbmZpZ3VyZSh7XHJcbiAgICAgIGxvZ2luVXJsOiB0aGlzLmNvbmZpZy5sb2dpblVybCxcclxuICAgICAgcmVmcmVzaFRva2VuVHRsOiB0aGlzLmNvbmZpZy5leHBpcmUsXHJcbiAgICAgIG9uU3VjY2VzczogdGhpcy5vblN1Y2Nlc3MuYmluZCh0aGlzKSxcclxuICAgICAgb25GYWlsdXJlOiB0aGlzLnNob3dFcnJvci5iaW5kKHRoaXMpLFxyXG4gICAgICBvbkVycm9yOiB0aGlzLnNob3dFcnJvci5iaW5kKHRoaXMpLFxyXG4gICAgICBsb2dpbkZ1bmN0aW9uOiB0aGlzLmNvbmZpZy5sb2dpbkZ1bmN0aW9uPy5iaW5kKHRoaXMpLFxyXG4gICAgICBwYXNzd29yZFJlc29sdmVyOiAoKSA9PiB0aGlzLnBhc3N3b3JkLFxyXG4gICAgICBwYXNzd29yZFZhbGlkYXRvcjogdGhpcy5wcm9wZXJ0aWVzPy5wYXNzd29yZFZhbGlkYXRvcj8uYmluZCh0aGlzKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGVjb2RlVG9rZW4pIHtcclxuICAgICAgdGhpcy5zaG93RXJyb3IoXCJJbnZhbGlkIFRva2VuLiBQbGVhc2UgbG9naW4gYWdhaW4uXCIpO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMubG9nb3V0Py4oKSwgMjAwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmNkdC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIG9uU3VjY2VzcygpIHtcclxuICAgIGF3YWl0IHdhaXRGb3IoMjAwMCk7XHJcbiAgICB0aGlzLmRsZ1JlZi5jbG9zZSh0cnVlKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGNsaWNrTG9naW4oKSB7XHJcbiAgICBhd2FpdCB0aGlzLmxvZ2luU2VydmljZS5jbGlja0xvZ2luKCk7XHJcbiAgfVxyXG5cclxuICBjbGlja0xvZ291dCgpIHtcclxuICAgIHRoaXMubG9nb3V0Py4oKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2hvd0Vycm9yKHN1bW1hcnk6IHN0cmluZykge1xyXG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoeyBrZXk6IHRoaXMubWVzc2FnZUtleSwgc2V2ZXJpdHk6IFwiZXJyb3JcIiwgc3VtbWFyeSB9KTtcclxuICB9XHJcblxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9naW5TZXJ2aWNlLnVuQ29uZmlndXJlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { LocalizeTokenLoginDialogComponent } from "../components/localize-token-login-dialog.component";
|
|
4
|
+
import { ToastModule } from "primeng/toast";
|
|
5
|
+
import { InputTextModule } from "primeng/inputtext";
|
|
6
|
+
import { ButtonModule } from "primeng/button";
|
|
7
|
+
import { FormsModule } from '@angular/forms';
|
|
8
|
+
import { LocalizeTokenDialogService } from "../services/localize-token-dialog.service";
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class LocalizeTokenModule {
|
|
11
|
+
}
|
|
12
|
+
LocalizeTokenModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
+
LocalizeTokenModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenModule, declarations: [LocalizeTokenLoginDialogComponent], imports: [CommonModule,
|
|
14
|
+
ToastModule,
|
|
15
|
+
InputTextModule,
|
|
16
|
+
FormsModule,
|
|
17
|
+
ButtonModule], exports: [LocalizeTokenLoginDialogComponent] });
|
|
18
|
+
LocalizeTokenModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenModule, providers: [LocalizeTokenDialogService], imports: [[
|
|
19
|
+
CommonModule,
|
|
20
|
+
ToastModule,
|
|
21
|
+
InputTextModule,
|
|
22
|
+
FormsModule,
|
|
23
|
+
ButtonModule,
|
|
24
|
+
]] });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenModule, decorators: [{
|
|
26
|
+
type: NgModule,
|
|
27
|
+
args: [{
|
|
28
|
+
declarations: [LocalizeTokenLoginDialogComponent],
|
|
29
|
+
exports: [LocalizeTokenLoginDialogComponent],
|
|
30
|
+
imports: [
|
|
31
|
+
CommonModule,
|
|
32
|
+
ToastModule,
|
|
33
|
+
InputTextModule,
|
|
34
|
+
FormsModule,
|
|
35
|
+
ButtonModule,
|
|
36
|
+
],
|
|
37
|
+
providers: [LocalizeTokenDialogService],
|
|
38
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
39
|
+
}]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUtdG9rZW4ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhY2thZ2UvbW9kZWxzL2xvY2FsaXplLXRva2VuLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOztBQWV2RixNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO2lIQUFuQixtQkFBbUIsaUJBWmYsaUNBQWlDLGFBRzlDLFlBQVk7UUFDWixXQUFXO1FBQ1gsZUFBZTtRQUNmLFdBQVc7UUFDWCxZQUFZLGFBTkosaUNBQWlDO2lIQVdoQyxtQkFBbUIsYUFIbkIsQ0FBQywwQkFBMEIsQ0FBQyxZQVA5QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLFdBQVc7WUFDWCxZQUFZO1NBQ2I7MkZBSVUsbUJBQW1CO2tCQWIvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlDQUFpQyxDQUFDO29CQUNqRCxPQUFPLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztvQkFDNUMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDdkMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IExvY2FsaXplVG9rZW5Mb2dpbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRzL2xvY2FsaXplLXRva2VuLWxvZ2luLWRpYWxvZy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy90b2FzdFwiO1xyXG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9pbnB1dHRleHRcIjtcclxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvYnV0dG9uXCI7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZVRva2VuRGlhbG9nU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9sb2NhbGl6ZS10b2tlbi1kaWFsb2cuc2VydmljZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtMb2NhbGl6ZVRva2VuTG9naW5EaWFsb2dDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtMb2NhbGl6ZVRva2VuTG9naW5EaWFsb2dDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFRvYXN0TW9kdWxlLFxyXG4gICAgSW5wdXRUZXh0TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBCdXR0b25Nb2R1bGUsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtMb2NhbGl6ZVRva2VuRGlhbG9nU2VydmljZV0sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemVUb2tlbk1vZHVsZSB7IH1cclxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@sambath999/localize-api";
|
|
4
|
+
import * as i2 from "./localize-token-dialog.service";
|
|
5
|
+
export class LocalizeTokenConfigureService {
|
|
6
|
+
constructor(tokenService, apiService, loginDialogService) {
|
|
7
|
+
this.api = apiService;
|
|
8
|
+
this.token = tokenService;
|
|
9
|
+
this.loginDialog = loginDialogService;
|
|
10
|
+
}
|
|
11
|
+
initialize(tokenConfig, apiConfig) {
|
|
12
|
+
// Initialize the LocalizeApiTokenService with the provided token configuration
|
|
13
|
+
this.token.init(tokenConfig);
|
|
14
|
+
// Initialize the LocalizeApiService with the provided API configuration
|
|
15
|
+
this.api.init(apiConfig);
|
|
16
|
+
console.log('LocalizeTokenConfigureService initialized with token and API configurations.');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
LocalizeTokenConfigureService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenConfigureService, deps: [{ token: i1.LocalizeApiTokenService }, { token: i1.LocalizeApiService }, { token: i2.LocalizeTokenDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
+
LocalizeTokenConfigureService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenConfigureService, providedIn: 'root' });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenConfigureService, decorators: [{
|
|
22
|
+
type: Injectable,
|
|
23
|
+
args: [{
|
|
24
|
+
providedIn: 'root'
|
|
25
|
+
}]
|
|
26
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizeApiTokenService }, { type: i1.LocalizeApiService }, { type: i2.LocalizeTokenDialogService }]; } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUtdG9rZW4tY29uZmlndXJlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFja2FnZS9zZXJ2aWNlcy9sb2NhbGl6ZS10b2tlbi1jb25maWd1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTzNDLE1BQU0sT0FBTyw2QkFBNkI7SUFLeEMsWUFBWSxZQUFxQyxFQUMvQyxVQUE4QixFQUM5QixrQkFBOEM7UUFDOUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztJQUN4QyxDQUFDO0lBRUQsVUFBVSxDQUFDLFdBQWlDLEVBQUUsU0FBOEI7UUFDMUUsK0VBQStFO1FBQy9FLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTdCLHdFQUF3RTtRQUN4RSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV6QixPQUFPLENBQUMsR0FBRyxDQUFDLDhFQUE4RSxDQUFDLENBQUM7SUFFOUYsQ0FBQzs7MEhBdEJVLDZCQUE2Qjs4SEFBN0IsNkJBQTZCLGNBRjVCLE1BQU07MkZBRVAsNkJBQTZCO2tCQUh6QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTG9jYWxpemVUb2tlbkRpYWxvZ1NlcnZpY2UgfSBmcm9tICcuL2xvY2FsaXplLXRva2VuLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxpemVBcGlTZXJ2aWNlLCBMb2NhbGl6ZUFwaVRva2VuU2VydmljZSwgSUxvY2FsaXplVG9rZW5Db25maWcsIElMb2NhbGl6ZUFwaUNvbmZpZ3MgfSBmcm9tICdAc2FtYmF0aDk5OS9sb2NhbGl6ZS1hcGknO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemVUb2tlbkNvbmZpZ3VyZVNlcnZpY2Uge1xyXG4gIHJlYWRvbmx5IGFwaTogTG9jYWxpemVBcGlTZXJ2aWNlO1xyXG4gIHJlYWRvbmx5IHRva2VuOiBMb2NhbGl6ZUFwaVRva2VuU2VydmljZTtcclxuICByZWFkb25seSBsb2dpbkRpYWxvZzogTG9jYWxpemVUb2tlbkRpYWxvZ1NlcnZpY2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHRva2VuU2VydmljZTogTG9jYWxpemVBcGlUb2tlblNlcnZpY2UsXHJcbiAgICBhcGlTZXJ2aWNlOiBMb2NhbGl6ZUFwaVNlcnZpY2UsXHJcbiAgICBsb2dpbkRpYWxvZ1NlcnZpY2U6IExvY2FsaXplVG9rZW5EaWFsb2dTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmFwaSA9IGFwaVNlcnZpY2U7XHJcbiAgICB0aGlzLnRva2VuID0gdG9rZW5TZXJ2aWNlO1xyXG4gICAgdGhpcy5sb2dpbkRpYWxvZyA9IGxvZ2luRGlhbG9nU2VydmljZTtcclxuICB9XHJcblxyXG4gIGluaXRpYWxpemUodG9rZW5Db25maWc6IElMb2NhbGl6ZVRva2VuQ29uZmlnLCBhcGlDb25maWc6IElMb2NhbGl6ZUFwaUNvbmZpZ3MpIHtcclxuICAgIC8vIEluaXRpYWxpemUgdGhlIExvY2FsaXplQXBpVG9rZW5TZXJ2aWNlIHdpdGggdGhlIHByb3ZpZGVkIHRva2VuIGNvbmZpZ3VyYXRpb25cclxuICAgIHRoaXMudG9rZW4uaW5pdCh0b2tlbkNvbmZpZyk7XHJcblxyXG4gICAgLy8gSW5pdGlhbGl6ZSB0aGUgTG9jYWxpemVBcGlTZXJ2aWNlIHdpdGggdGhlIHByb3ZpZGVkIEFQSSBjb25maWd1cmF0aW9uXHJcbiAgICB0aGlzLmFwaS5pbml0KGFwaUNvbmZpZyk7XHJcblxyXG4gICAgY29uc29sZS5sb2coJ0xvY2FsaXplVG9rZW5Db25maWd1cmVTZXJ2aWNlIGluaXRpYWxpemVkIHdpdGggdG9rZW4gYW5kIEFQSSBjb25maWd1cmF0aW9ucy4nKTtcclxuXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { DialogService } from 'primeng/dynamicdialog';
|
|
3
|
+
import { LocalizeTokenLoginDialogComponent } from '../components/localize-token-login-dialog.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class LocalizeTokenDialogService {
|
|
6
|
+
constructor(injector) {
|
|
7
|
+
this.injector = injector;
|
|
8
|
+
}
|
|
9
|
+
async openLoginDialog(loginConfig, config) {
|
|
10
|
+
config = this.intercepDialogConfig(config);
|
|
11
|
+
this.initConfig(loginConfig);
|
|
12
|
+
config.data = { ...(config.data || {}), ...{ loginConfig } };
|
|
13
|
+
const dialogService = this.injector.get(DialogService);
|
|
14
|
+
const dialog = dialogService.open(LocalizeTokenLoginDialogComponent, config);
|
|
15
|
+
await new Promise((resolve) => dialog.onClose.subscribe(res => {
|
|
16
|
+
if (res) {
|
|
17
|
+
resolve();
|
|
18
|
+
}
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
intercepDialogConfig(config) {
|
|
22
|
+
config ?? (config = {
|
|
23
|
+
header: 'Login',
|
|
24
|
+
style: { 'max-width': '400px', width: '100%', 'height': '650px' },
|
|
25
|
+
modal: true,
|
|
26
|
+
closable: false,
|
|
27
|
+
showHeader: false,
|
|
28
|
+
});
|
|
29
|
+
config = {
|
|
30
|
+
...config, ...{
|
|
31
|
+
contentStyle: { 'height': '100%', 'border-radius': '20px' }
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
config.style = { ...config.style, ...{ 'border-radius': '20px' } };
|
|
35
|
+
return config;
|
|
36
|
+
}
|
|
37
|
+
initConfig(loginConfig) {
|
|
38
|
+
loginConfig ?? (loginConfig = {});
|
|
39
|
+
loginConfig.properties ?? (loginConfig.properties = {
|
|
40
|
+
title: 'Your session is expired!<br/> Please login again to continue.',
|
|
41
|
+
loginSuccessMessage: 'You have successfully logged in.',
|
|
42
|
+
logoImage: '/assets/images/logo-300px.png',
|
|
43
|
+
username: { placeHolder: 'Username' },
|
|
44
|
+
password: { placeHolder: 'Password' },
|
|
45
|
+
loginButton: { placeHolder: 'Login' },
|
|
46
|
+
logoutButton: {
|
|
47
|
+
message: 'No, I want to login with another user.',
|
|
48
|
+
placeHolder: 'Logout'
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
LocalizeTokenDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenDialogService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
54
|
+
LocalizeTokenDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenDialogService, providedIn: 'root' });
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: LocalizeTokenDialogService, decorators: [{
|
|
56
|
+
type: Injectable,
|
|
57
|
+
args: [{
|
|
58
|
+
providedIn: 'root'
|
|
59
|
+
}]
|
|
60
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUtdG9rZW4tZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFja2FnZS9zZXJ2aWNlcy9sb2NhbGl6ZS10b2tlbi1kaWFsb2cuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQXVCLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scURBQXFELENBQUM7O0FBTXhHLE1BQU0sT0FBTywwQkFBMEI7SUFFckMsWUFBNkIsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUFJLENBQUM7SUFFcEQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxXQUErQixFQUFFLE1BQTRCO1FBRWpGLE1BQU0sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU3QixNQUFNLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFFN0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUU3RSxNQUFNLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDbEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDN0IsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsT0FBTyxFQUFFLENBQUM7YUFDWDtRQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBRU8sb0JBQW9CLENBQUMsTUFBNEI7UUFDdkQsTUFBTSxLQUFOLE1BQU0sR0FBSztZQUNULE1BQU0sRUFBRSxPQUFPO1lBQ2YsS0FBSyxFQUFFLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7WUFDakUsS0FBSyxFQUFFLElBQUk7WUFDWCxRQUFRLEVBQUUsS0FBSztZQUNmLFVBQVUsRUFBRSxLQUFLO1NBQ2xCLEVBQUE7UUFFRCxNQUFNLEdBQUc7WUFDUCxHQUFHLE1BQU0sRUFBRSxHQUFHO2dCQUNaLFlBQVksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRTthQUM1RDtTQUNGLENBQUE7UUFDRCxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQztRQUNuRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBR08sVUFBVSxDQUFDLFdBQStCO1FBQ2hELFdBQVcsS0FBWCxXQUFXLEdBQUssRUFBRSxFQUFBO1FBQ2xCLFdBQVcsQ0FBQyxVQUFVLEtBQXRCLFdBQVcsQ0FBQyxVQUFVLEdBQUs7WUFDekIsS0FBSyxFQUFFLCtEQUErRDtZQUN0RSxtQkFBbUIsRUFBRSxrQ0FBa0M7WUFDdkQsU0FBUyxFQUFFLCtCQUErQjtZQUMxQyxRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFO1lBQ3JDLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUU7WUFDckMsV0FBVyxFQUFFLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRTtZQUNyQyxZQUFZLEVBQUU7Z0JBQ1osT0FBTyxFQUFFLHdDQUF3QztnQkFDakQsV0FBVyxFQUFFLFFBQVE7YUFDdEI7U0FDRixFQUFBO0lBQ0gsQ0FBQzs7dUhBdkRVLDBCQUEwQjsySEFBMUIsMEJBQTBCLGNBRnpCLE1BQU07MkZBRVAsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UsIER5bmFtaWNEaWFsb2dDb25maWcgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZVRva2VuTG9naW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2xvY2FsaXplLXRva2VuLWxvZ2luLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJTG9naW5EaWFsb2dDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvbG9jYWxpemUtdG9rZW4tbW9kZWxzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW5EaWFsb2dTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHsgfVxyXG5cclxuICBhc3luYyBvcGVuTG9naW5EaWFsb2cobG9naW5Db25maWc6IElMb2dpbkRpYWxvZ0NvbmZpZywgY29uZmlnPzogRHluYW1pY0RpYWxvZ0NvbmZpZykge1xyXG5cclxuICAgIGNvbmZpZyA9IHRoaXMuaW50ZXJjZXBEaWFsb2dDb25maWcoY29uZmlnKTtcclxuICAgIHRoaXMuaW5pdENvbmZpZyhsb2dpbkNvbmZpZyk7XHJcblxyXG4gICAgY29uZmlnLmRhdGEgPSB7IC4uLihjb25maWcuZGF0YSB8fCB7fSksIC4uLnsgbG9naW5Db25maWcgfSB9O1xyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1NlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChEaWFsb2dTZXJ2aWNlKTtcclxuICAgIGNvbnN0IGRpYWxvZyA9IGRpYWxvZ1NlcnZpY2Uub3BlbihMb2NhbGl6ZVRva2VuTG9naW5EaWFsb2dDb21wb25lbnQsIGNvbmZpZyk7XHJcblxyXG4gICAgYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+XHJcbiAgICAgIGRpYWxvZy5vbkNsb3NlLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgIHJlc29sdmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW50ZXJjZXBEaWFsb2dDb25maWcoY29uZmlnPzogRHluYW1pY0RpYWxvZ0NvbmZpZykge1xyXG4gICAgY29uZmlnID8/PSB7XHJcbiAgICAgIGhlYWRlcjogJ0xvZ2luJyxcclxuICAgICAgc3R5bGU6IHsgJ21heC13aWR0aCc6ICc0MDBweCcsIHdpZHRoOiAnMTAwJScsICdoZWlnaHQnOiAnNjUwcHgnIH0sXHJcbiAgICAgIG1vZGFsOiB0cnVlLFxyXG4gICAgICBjbG9zYWJsZTogZmFsc2UsXHJcbiAgICAgIHNob3dIZWFkZXI6IGZhbHNlLFxyXG4gICAgfVxyXG5cclxuICAgIGNvbmZpZyA9IHtcclxuICAgICAgLi4uY29uZmlnLCAuLi57XHJcbiAgICAgICAgY29udGVudFN0eWxlOiB7ICdoZWlnaHQnOiAnMTAwJScsICdib3JkZXItcmFkaXVzJzogJzIwcHgnIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgY29uZmlnLnN0eWxlID0geyAuLi5jb25maWcuc3R5bGUsIC4uLnsgJ2JvcmRlci1yYWRpdXMnOiAnMjBweCcgfSB9O1xyXG4gICAgcmV0dXJuIGNvbmZpZztcclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIGluaXRDb25maWcobG9naW5Db25maWc6IElMb2dpbkRpYWxvZ0NvbmZpZykge1xyXG4gICAgbG9naW5Db25maWcgPz89IHt9XHJcbiAgICBsb2dpbkNvbmZpZy5wcm9wZXJ0aWVzID8/PSB7XHJcbiAgICAgIHRpdGxlOiAnWW91ciBzZXNzaW9uIGlzIGV4cGlyZWQhPGJyLz4gUGxlYXNlIGxvZ2luIGFnYWluIHRvIGNvbnRpbnVlLicsXHJcbiAgICAgIGxvZ2luU3VjY2Vzc01lc3NhZ2U6ICdZb3UgaGF2ZSBzdWNjZXNzZnVsbHkgbG9nZ2VkIGluLicsXHJcbiAgICAgIGxvZ29JbWFnZTogJy9hc3NldHMvaW1hZ2VzL2xvZ28tMzAwcHgucG5nJyxcclxuICAgICAgdXNlcm5hbWU6IHsgcGxhY2VIb2xkZXI6ICdVc2VybmFtZScgfSxcclxuICAgICAgcGFzc3dvcmQ6IHsgcGxhY2VIb2xkZXI6ICdQYXNzd29yZCcgfSxcclxuICAgICAgbG9naW5CdXR0b246IHsgcGxhY2VIb2xkZXI6ICdMb2dpbicgfSxcclxuICAgICAgbG9nb3V0QnV0dG9uOiB7XHJcbiAgICAgICAgbWVzc2FnZTogJ05vLCBJIHdhbnQgdG8gbG9naW4gd2l0aCBhbm90aGVyIHVzZXIuJyxcclxuICAgICAgICBwbGFjZUhvbGRlcjogJ0xvZ291dCdcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|