@dbg-riskit/angular-testing 9999.9999.9999-rc.445048 → 9999.9999.9999-rc.4579154
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/docs/README.md +5 -6
- package/fesm2022/dbg-riskit-angular-testing.mjs +299 -436
- package/fesm2022/dbg-riskit-angular-testing.mjs.map +1 -1
- package/index.d.ts +467 -3
- package/package.json +16 -19
- package/esm2022/dbg-riskit-angular-testing.mjs +0 -5
- package/esm2022/lib/by.util.mjs +0 -19
- package/esm2022/lib/definitions/data.table.definition.mjs +0 -556
- package/esm2022/lib/definitions/download.menu.page.mjs +0 -90
- package/esm2022/lib/definitions/highlighter.directive.page.mjs +0 -36
- package/esm2022/lib/definitions/layout.component.page.mjs +0 -93
- package/esm2022/lib/definitions/link.definition.mjs +0 -19
- package/esm2022/lib/definitions/link.only.page.mjs +0 -13
- package/esm2022/lib/definitions/login.menu.page.mjs +0 -25
- package/esm2022/lib/definitions/login.page.mjs +0 -51
- package/esm2022/lib/definitions/message.def.mjs +0 -15
- package/esm2022/lib/definitions/message.page.mjs +0 -68
- package/esm2022/lib/definitions/page.base.mjs +0 -64
- package/esm2022/lib/environment.mjs +0 -23
- package/esm2022/lib/events.mjs +0 -60
- package/esm2022/lib/stubs/auth/auth.routing.flow.service.stub.mjs +0 -37
- package/esm2022/lib/stubs/auth/auth.service.stub.mjs +0 -40
- package/esm2022/lib/stubs/auth/well.known.service.stub.mjs +0 -22
- package/esm2022/lib/stubs/http.service.stub.mjs +0 -54
- package/esm2022/lib/stubs/login.menu.stub.component.mjs +0 -19
- package/esm2022/lib/stubs/router/activated.route.stub.mjs +0 -29
- package/esm2022/lib/stubs/router/router.link.stub.mjs +0 -46
- package/esm2022/lib/stubs/router/router.module.stub.mjs +0 -44
- package/esm2022/lib/stubs/router/router.outlet.stub.component.mjs +0 -16
- package/esm2022/lib/stubs/router/router.stub.mjs +0 -79
- package/esm2022/lib/testing.module.mjs +0 -50
- package/esm2022/lib/utils.mjs +0 -48
- package/esm2022/public_api.mjs +0 -48
- package/lib/by.util.d.ts +0 -6
- package/lib/definitions/data.table.definition.d.ts +0 -176
- package/lib/definitions/download.menu.page.d.ts +0 -38
- package/lib/definitions/highlighter.directive.page.d.ts +0 -22
- package/lib/definitions/layout.component.page.d.ts +0 -28
- package/lib/definitions/link.definition.d.ts +0 -11
- package/lib/definitions/link.only.page.d.ts +0 -7
- package/lib/definitions/login.menu.page.d.ts +0 -11
- package/lib/definitions/login.page.d.ts +0 -17
- package/lib/definitions/message.def.d.ts +0 -6
- package/lib/definitions/message.page.d.ts +0 -20
- package/lib/definitions/page.base.d.ts +0 -21
- package/lib/environment.d.ts +0 -4
- package/lib/events.d.ts +0 -22
- package/lib/stubs/auth/auth.routing.flow.service.stub.d.ts +0 -16
- package/lib/stubs/auth/auth.service.stub.d.ts +0 -16
- package/lib/stubs/auth/well.known.service.stub.d.ts +0 -9
- package/lib/stubs/http.service.stub.d.ts +0 -25
- package/lib/stubs/login.menu.stub.component.d.ts +0 -6
- package/lib/stubs/router/activated.route.stub.d.ts +0 -14
- package/lib/stubs/router/router.link.stub.d.ts +0 -15
- package/lib/stubs/router/router.module.stub.d.ts +0 -3
- package/lib/stubs/router/router.outlet.stub.component.d.ts +0 -5
- package/lib/stubs/router/router.stub.d.ts +0 -27
- package/lib/testing.module.d.ts +0 -17
- package/lib/utils.d.ts +0 -3
- package/public_api.d.ts +0 -27
|
@@ -1,32 +1,27 @@
|
|
|
1
1
|
import '@dbg-riskit/angular-polyfill';
|
|
2
|
-
import '
|
|
3
|
-
import { getTestBed, tick, discardPeriodicTasks, TestBed } from '@angular/core/testing';
|
|
2
|
+
import { getTestBed, tick, discardPeriodicTasks } from '@angular/core/testing';
|
|
4
3
|
import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing';
|
|
5
4
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { EventEmitter, Injectable, Component,
|
|
5
|
+
import { EventEmitter, Injectable, Component, input, signal, inject, ChangeDetectionStrategy } from '@angular/core';
|
|
7
6
|
import { MatMenuTrigger, MatMenuItem } from '@angular/material/menu';
|
|
8
7
|
import { By } from '@angular/platform-browser';
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
|
|
13
|
-
import {
|
|
14
|
-
export { LayoutComponent, NoopAnimationMessageComponent, NoopAnimationsCommonViewModule } from '@dbg-riskit/angular-view';
|
|
15
|
-
import { throwError, of, timer, EMPTY, BehaviorSubject } from 'rxjs';
|
|
8
|
+
import { RiskCSVFileDownloadDirective, RiskFileDownloadDirective } from '@dbg-riskit/angular-file';
|
|
9
|
+
import 'file-saver';
|
|
10
|
+
import { RISK_INITIAL_LOAD_SELECTOR, RISK_NO_DATA_SELECTOR, RiskLayoutComponent, RiskLayoutHorizontalDirective, RiskLayoutVerticalDirective, RiskMessageComponent, RISK_GOOD_SELECTOR, RISK_ERROR_SELECTOR, RISK_INFO_SELECTOR, RISK_MESSAGE_SELECTOR, RISK_WARN_SELECTOR, RISK_UPDATE_FAILED_SELECTOR } from '@dbg-riskit/angular-view';
|
|
11
|
+
export { RiskLayoutComponent } from '@dbg-riskit/angular-view';
|
|
12
|
+
import { throwError, of, timer, defer, EMPTY, BehaviorSubject } from 'rxjs';
|
|
16
13
|
import { switchMap, defaultIfEmpty, map } from 'rxjs/operators';
|
|
17
14
|
import { MatCard } from '@angular/material/card';
|
|
18
15
|
import { MatIconButton, MatIconAnchor, MatButton } from '@angular/material/button';
|
|
19
16
|
import { MatButtonToggle } from '@angular/material/button-toggle';
|
|
20
17
|
import { MatIcon } from '@angular/material/icon';
|
|
21
18
|
import { MatTooltip } from '@angular/material/tooltip';
|
|
22
|
-
import {
|
|
23
|
-
import
|
|
24
|
-
import { PagingComponent, DataTableRowDetailExpanderComponent, HIGHLIGHTER_CLASS, DataTableComponent, HighlighterDirective, DataTableModule } from '@dbg-riskit/angular-datatable';
|
|
19
|
+
import { RiskDataTablePagingComponent, RiskDataTableRowDetailExpanderComponent, HIGHLIGHTER_CLASS, RiskDataTableComponent, RiskDataTableColumnCellDirective, RiskDataTableColumnDirective, RiskDataTableColumnFooterDirective, RiskDataTableColumnGroupDirective, RiskDataTableRowDetailDirective, RiskHighlighterDirective } from '@dbg-riskit/angular-datatable';
|
|
20
|
+
import { secureRandom, ReplaySubjectExt, globalScope } from '@dbg-riskit/common';
|
|
25
21
|
import { MatSidenavContainer, MatSidenav } from '@angular/material/sidenav';
|
|
26
22
|
import { MatToolbar } from '@angular/material/toolbar';
|
|
27
|
-
import {
|
|
28
|
-
import
|
|
29
|
-
import { AuthRoutingFlowService, AUTH_CONFIG, AuthService } from '@dbg-riskit/angular-auth';
|
|
23
|
+
import { RouterLink } from '@angular/router';
|
|
24
|
+
import { AUTH_CONFIG, AuthFlow } from '@dbg-riskit/angular-auth';
|
|
30
25
|
import { AUTH_PROVIDER } from '@dbg-riskit/angular-common';
|
|
31
26
|
|
|
32
27
|
// Has to be first in this order
|
|
@@ -136,10 +131,10 @@ class HttpServiceStub {
|
|
|
136
131
|
post(request) {
|
|
137
132
|
return this.get(request);
|
|
138
133
|
}
|
|
139
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
140
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
134
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
135
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpServiceStub }); }
|
|
141
136
|
}
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
137
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpServiceStub, decorators: [{
|
|
143
138
|
type: Injectable
|
|
144
139
|
}] });
|
|
145
140
|
class HttpAsyncServiceStub extends HttpServiceStub {
|
|
@@ -149,14 +144,14 @@ class HttpAsyncServiceStub extends HttpServiceStub {
|
|
|
149
144
|
post(request) {
|
|
150
145
|
return this.get(request);
|
|
151
146
|
}
|
|
152
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
153
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
147
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpAsyncServiceStub, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
148
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpAsyncServiceStub }); }
|
|
154
149
|
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: HttpAsyncServiceStub, decorators: [{
|
|
156
151
|
type: Injectable
|
|
157
152
|
}] });
|
|
158
153
|
|
|
159
|
-
class
|
|
154
|
+
class RiskMessageComponentDef {
|
|
160
155
|
constructor(debugElement) {
|
|
161
156
|
this.debugElement = debugElement;
|
|
162
157
|
if (debugElement == null) {
|
|
@@ -207,6 +202,10 @@ class Page {
|
|
|
207
202
|
// Nothing to do...
|
|
208
203
|
}
|
|
209
204
|
}
|
|
205
|
+
setInput(inputName, value) {
|
|
206
|
+
this.fixture.componentRef.setInput(inputName, value);
|
|
207
|
+
this.detectChanges();
|
|
208
|
+
}
|
|
210
209
|
}
|
|
211
210
|
class PageWithLoading extends Page {
|
|
212
211
|
constructor(fixture) {
|
|
@@ -215,20 +214,20 @@ class PageWithLoading extends Page {
|
|
|
215
214
|
get initialLoadComponent() {
|
|
216
215
|
const element = this.debugElement.query(By.css(RISK_INITIAL_LOAD_SELECTOR));
|
|
217
216
|
if (element) {
|
|
218
|
-
return new
|
|
217
|
+
return new RiskMessageComponentDef(element);
|
|
219
218
|
}
|
|
220
219
|
return null;
|
|
221
220
|
}
|
|
222
221
|
get noDataComponent() {
|
|
223
222
|
const element = this.debugElement.query(By.css(RISK_NO_DATA_SELECTOR));
|
|
224
223
|
if (element) {
|
|
225
|
-
return new
|
|
224
|
+
return new RiskMessageComponentDef(element);
|
|
226
225
|
}
|
|
227
226
|
return null;
|
|
228
227
|
}
|
|
229
228
|
}
|
|
230
229
|
|
|
231
|
-
class
|
|
230
|
+
class RiskCSVDownloadMenuPage extends Page {
|
|
232
231
|
constructor(fixture) {
|
|
233
232
|
super(fixture);
|
|
234
233
|
}
|
|
@@ -250,54 +249,55 @@ class DownloadLink {
|
|
|
250
249
|
this.element = element;
|
|
251
250
|
this.page = page;
|
|
252
251
|
}
|
|
252
|
+
get blobSpy() {
|
|
253
|
+
this.setupBlobConstructorSpy();
|
|
254
|
+
return this._blobSpy;
|
|
255
|
+
}
|
|
256
|
+
get saveSpy() {
|
|
257
|
+
this.setupSaveBlobSpy();
|
|
258
|
+
return this._saveBlobSpy;
|
|
259
|
+
}
|
|
253
260
|
click() {
|
|
254
261
|
this.setupBlobConstructorSpy();
|
|
255
262
|
this.setupSaveBlobSpy();
|
|
256
263
|
click(this.element);
|
|
257
264
|
this.page.detectChanges();
|
|
258
265
|
}
|
|
259
|
-
get blobSpy() {
|
|
260
|
-
this.setupBlobConstructorSpy();
|
|
261
|
-
return this._blobSpy;
|
|
262
|
-
}
|
|
263
266
|
setupBlobConstructorSpy() {
|
|
264
267
|
if (!this._blobSpy) {
|
|
265
268
|
let downloadDirective;
|
|
266
269
|
try {
|
|
267
|
-
downloadDirective = this.element.injector.get(
|
|
270
|
+
downloadDirective = this.element.injector.get(RiskCSVFileDownloadDirective);
|
|
268
271
|
}
|
|
269
272
|
catch (_) {
|
|
270
|
-
downloadDirective = this.element.injector.get(
|
|
273
|
+
downloadDirective = this.element.injector.get(RiskFileDownloadDirective);
|
|
271
274
|
}
|
|
272
275
|
this._blobSpy = spyOn(downloadDirective, 'createBlob').and.callThrough();
|
|
273
276
|
}
|
|
274
277
|
}
|
|
275
|
-
get saveSpy() {
|
|
276
|
-
this.setupSaveBlobSpy();
|
|
277
|
-
return this._saveBlobSpy;
|
|
278
|
-
}
|
|
279
278
|
setupSaveBlobSpy() {
|
|
280
279
|
if (!this._saveBlobSpy) {
|
|
281
|
-
this._saveBlobSpy = spyOn(
|
|
280
|
+
this._saveBlobSpy = spyOn(window, 'saveAs');
|
|
282
281
|
}
|
|
283
282
|
}
|
|
284
283
|
}
|
|
285
284
|
class DownloadTestComponent {
|
|
286
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
287
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
285
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DownloadTestComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
286
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: DownloadTestComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
288
287
|
<a [risk-download]="data"
|
|
289
288
|
[risk-download-content-type]="contentType"
|
|
290
289
|
[risk-download-filename]="filename">Download</a>
|
|
291
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
|
290
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: RiskFileDownloadDirective, selector: "[risk-download]", inputs: ["risk-download", "risk-download-content-type", "risk-download-filename"] }] }); }
|
|
292
291
|
}
|
|
293
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
292
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DownloadTestComponent, decorators: [{
|
|
294
293
|
type: Component,
|
|
295
294
|
args: [{
|
|
296
295
|
template: `
|
|
297
296
|
<a [risk-download]="data"
|
|
298
297
|
[risk-download-content-type]="contentType"
|
|
299
298
|
[risk-download-filename]="filename">Download</a>
|
|
300
|
-
|
|
299
|
+
`,
|
|
300
|
+
imports: [RiskFileDownloadDirective]
|
|
301
301
|
}]
|
|
302
302
|
}] });
|
|
303
303
|
class DownloadTestComponentPage extends Page {
|
|
@@ -305,11 +305,11 @@ class DownloadTestComponentPage extends Page {
|
|
|
305
305
|
super(fixture);
|
|
306
306
|
}
|
|
307
307
|
get downloadLink() {
|
|
308
|
-
return new DownloadLink(this.debugElement.query(By.directive(
|
|
308
|
+
return new DownloadLink(this.debugElement.query(By.directive(RiskFileDownloadDirective)), this);
|
|
309
309
|
}
|
|
310
310
|
}
|
|
311
311
|
|
|
312
|
-
class
|
|
312
|
+
class RiskDataTableDefinition {
|
|
313
313
|
constructor(debugElement, page) {
|
|
314
314
|
this.debugElement = debugElement;
|
|
315
315
|
this.page = page;
|
|
@@ -339,7 +339,7 @@ class DataTableDefinition {
|
|
|
339
339
|
return new RecordsCount(this.debugElement.query(By.css('.risk-data-table-page-count')));
|
|
340
340
|
}
|
|
341
341
|
get pager() {
|
|
342
|
-
return new Pager(this.debugElement.query(By.directive(
|
|
342
|
+
return new Pager(this.debugElement.query(By.directive(RiskDataTablePagingComponent)), this.page);
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
345
|
// <editor-fold defaultstate="collapsed" desc="Table header">
|
|
@@ -431,14 +431,14 @@ class TableSorting {
|
|
|
431
431
|
});
|
|
432
432
|
}
|
|
433
433
|
get currentOrdering() {
|
|
434
|
-
return this.table.component.ordering;
|
|
434
|
+
return this.table.component.ordering();
|
|
435
435
|
}
|
|
436
436
|
checkSorting(firstNRows = this.table.component.rows.length, criterium) {
|
|
437
437
|
// WARN: call data once as it calls .map on all table rows
|
|
438
438
|
const data = this.table.data;
|
|
439
439
|
let ordering;
|
|
440
440
|
if (criterium) {
|
|
441
|
-
ordering = [criterium].concat(this.table.component._defaultOrdering);
|
|
441
|
+
ordering = [criterium].concat(this.table.component._defaultOrdering());
|
|
442
442
|
}
|
|
443
443
|
else {
|
|
444
444
|
ordering = this.currentOrdering;
|
|
@@ -508,12 +508,9 @@ class TableBodyRow {
|
|
|
508
508
|
this.element = element;
|
|
509
509
|
this.page = page;
|
|
510
510
|
}
|
|
511
|
-
expandRow() {
|
|
512
|
-
click(this.element);
|
|
513
|
-
this.page.detectChanges();
|
|
514
|
-
}
|
|
515
511
|
get expander() {
|
|
516
|
-
return new RowExpander(this.element.query(By.directive(
|
|
512
|
+
return new RowExpander(this.element.query(By.directive(RiskDataTableRowDetailExpanderComponent))
|
|
513
|
+
.query(By.directive(MatIconAnchor)));
|
|
517
514
|
}
|
|
518
515
|
get cells() {
|
|
519
516
|
return this.element.queryAll(By.css('td')).map((element) => {
|
|
@@ -533,6 +530,10 @@ class TableBodyRow {
|
|
|
533
530
|
get highlighted() {
|
|
534
531
|
return this.element.nativeElement.classList.contains(HIGHLIGHTER_CLASS);
|
|
535
532
|
}
|
|
533
|
+
expandRow() {
|
|
534
|
+
click(this.element);
|
|
535
|
+
this.page.detectChanges();
|
|
536
|
+
}
|
|
536
537
|
}
|
|
537
538
|
class RowExpander {
|
|
538
539
|
constructor(element) {
|
|
@@ -565,9 +566,6 @@ class TableBodyDetail {
|
|
|
565
566
|
this.element = element;
|
|
566
567
|
this.page = page;
|
|
567
568
|
}
|
|
568
|
-
header() {
|
|
569
|
-
return new TableHeader(this.element.query(By.css('thead')), this.page);
|
|
570
|
-
}
|
|
571
569
|
get body() {
|
|
572
570
|
return new TableBodyDetailBody(this.element.query(By.css('tbody')));
|
|
573
571
|
}
|
|
@@ -577,6 +575,9 @@ class TableBodyDetail {
|
|
|
577
575
|
get colspan() {
|
|
578
576
|
return this.element.children[0].nativeElement.colspan;
|
|
579
577
|
}
|
|
578
|
+
header() {
|
|
579
|
+
return new TableHeader(this.element.query(By.css('thead')), this.page);
|
|
580
|
+
}
|
|
580
581
|
}
|
|
581
582
|
class TableBodyDetailBody {
|
|
582
583
|
constructor(element) {
|
|
@@ -722,23 +723,23 @@ class DataTableDefinitionHosted extends Page {
|
|
|
722
723
|
super(fixture);
|
|
723
724
|
}
|
|
724
725
|
get dataTable() {
|
|
725
|
-
return new
|
|
726
|
+
return new RiskDataTableDefinition(this.debugElement.query(By.directive(RiskDataTableComponent)), this);
|
|
727
|
+
}
|
|
728
|
+
setData(data) {
|
|
729
|
+
this.fixture.componentRef.setInput('data', data);
|
|
730
|
+
this.detectChanges();
|
|
731
|
+
}
|
|
732
|
+
setPageSize(size) {
|
|
733
|
+
this.fixture.componentRef.setInput('pageSize', size);
|
|
734
|
+
this.detectChanges();
|
|
726
735
|
}
|
|
727
736
|
}
|
|
728
737
|
class TestDataTableHostComponent {
|
|
729
738
|
constructor() {
|
|
730
|
-
this.data = [];
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
value2: Math.floor(secureRandom() * 20) + ' - value 2',
|
|
735
|
-
value3: Math.floor(secureRandom() * 20) + ' - value 3'
|
|
736
|
-
});
|
|
737
|
-
}
|
|
738
|
-
this.footer = this.data[0];
|
|
739
|
-
}
|
|
740
|
-
get defaultOrdering() {
|
|
741
|
-
return [
|
|
739
|
+
this.data = input(TestDataTableHostComponent.defaultData, ...(ngDevMode ? [{ debugName: "data" }] : []));
|
|
740
|
+
this.pageSize = input(20, ...(ngDevMode ? [{ debugName: "pageSize" }] : []));
|
|
741
|
+
this.footer = signal(TestDataTableHostComponent.defaultData[0], ...(ngDevMode ? [{ debugName: "footer" }] : []));
|
|
742
|
+
this.defaultOrdering = [
|
|
742
743
|
{
|
|
743
744
|
get: (record) => {
|
|
744
745
|
return record.value3;
|
|
@@ -749,31 +750,40 @@ class TestDataTableHostComponent {
|
|
|
749
750
|
return record.value2;
|
|
750
751
|
}
|
|
751
752
|
];
|
|
752
|
-
|
|
753
|
-
get valueGetter() {
|
|
754
|
-
return (record) => {
|
|
753
|
+
this.valueGetter = (record) => {
|
|
755
754
|
return record.value1;
|
|
756
755
|
};
|
|
757
756
|
}
|
|
758
|
-
static { this
|
|
759
|
-
|
|
760
|
-
<
|
|
761
|
-
|
|
762
|
-
|
|
757
|
+
static { this.defaultData = (() => {
|
|
758
|
+
const data = [];
|
|
759
|
+
for (let i = 0; i < 500; i++) {
|
|
760
|
+
data.push({
|
|
761
|
+
value1: Math.floor(secureRandom() * 20) + ' - value 1',
|
|
762
|
+
value2: Math.floor(secureRandom() * 20) + ' - value 2',
|
|
763
|
+
value3: Math.floor(secureRandom() * 20) + ' - value 3'
|
|
764
|
+
});
|
|
765
|
+
}
|
|
766
|
+
return data;
|
|
767
|
+
})(); }
|
|
768
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TestDataTableHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
769
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: TestDataTableHostComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
770
|
+
<risk-data-table [data]="data()"
|
|
771
|
+
[footer]="footer()"
|
|
772
|
+
[pageSize]="pageSize()"
|
|
763
773
|
[defaultOrdering]="defaultOrdering"
|
|
764
774
|
[striped]="true">
|
|
765
775
|
<risk-data-table-column title="Test Column 1"
|
|
766
776
|
[sortingKey]="valueGetter">
|
|
767
777
|
<ng-template let-record="row" risk-data-table-cell>
|
|
768
|
-
{{record.value1}}
|
|
778
|
+
{{ record.value1 }}
|
|
769
779
|
</ng-template>
|
|
770
780
|
</risk-data-table-column>
|
|
771
781
|
<risk-data-table-column>
|
|
772
782
|
<ng-template risk-data-table-cell let-record="row" let-expanded="expanded">
|
|
773
|
-
<risk-data-table-detail-expander [expanded]="expanded"
|
|
783
|
+
<risk-data-table-detail-expander [expanded]="expanded"/>
|
|
774
784
|
</ng-template>
|
|
775
785
|
<ng-template risk-data-table-footer-cell let-footer="footer">
|
|
776
|
-
{{footer.value1}}
|
|
786
|
+
{{ footer.value1 }}
|
|
777
787
|
</ng-template>
|
|
778
788
|
</risk-data-table-column>
|
|
779
789
|
<!-- Sub detail -->
|
|
@@ -782,47 +792,47 @@ class TestDataTableHostComponent {
|
|
|
782
792
|
<risk-data-table-column title="Test Detail Column 1"
|
|
783
793
|
[sortingKey]="valueGetter">
|
|
784
794
|
<ng-template risk-data-table-cell let-record="row">
|
|
785
|
-
{{record.value1}}
|
|
795
|
+
{{ record.value1 }}
|
|
786
796
|
</ng-template>
|
|
787
797
|
</risk-data-table-column>
|
|
788
798
|
</risk-data-table-column-group>
|
|
789
799
|
<risk-data-table-column-group>
|
|
790
800
|
<risk-data-table-column title="Test Detail Column 2">
|
|
791
801
|
<ng-template risk-data-table-cell let-record="row">
|
|
792
|
-
{{record.value2}}
|
|
802
|
+
{{ record.value2 }}
|
|
793
803
|
</ng-template>
|
|
794
804
|
</risk-data-table-column>
|
|
795
805
|
<risk-data-table-column title="Test Detail Column 3">
|
|
796
806
|
<ng-template risk-data-table-cell let-record="row">
|
|
797
|
-
{{record.value3}}
|
|
807
|
+
{{ record.value3 }}
|
|
798
808
|
</ng-template>
|
|
799
809
|
</risk-data-table-column>
|
|
800
810
|
</risk-data-table-column-group>
|
|
801
|
-
<risk-data-table-column-group
|
|
811
|
+
<risk-data-table-column-group/>
|
|
802
812
|
</risk-data-table-detail-row>
|
|
803
|
-
</risk-data-table>`, isInline: true, dependencies: [{ kind: "
|
|
813
|
+
</risk-data-table>`, isInline: true, dependencies: [{ kind: "directive", type: RiskDataTableColumnCellDirective, selector: "[risk-data-table-cell]" }, { kind: "directive", type: RiskDataTableColumnDirective, selector: "risk-data-table-column", inputs: ["title", "sortingKey", "tooltip", "contentAlign", "headerAlign", "footerAlign", "class"] }, { kind: "directive", type: RiskDataTableColumnFooterDirective, selector: "[risk-data-table-footer-cell]" }, { kind: "directive", type: RiskDataTableColumnGroupDirective, selector: "risk-data-table-column-group" }, { kind: "component", type: RiskDataTableComponent, selector: "risk-data-table", inputs: ["footer", "pageSize", "striped", "showFooter", "allowEmpty", "trackByRowKey", "highlighting", "stickyHeader", "stickyHeaderOffsetTopPx", "data", "defaultOrdering"], exportAs: ["dataTable"] }, { kind: "directive", type: RiskDataTableRowDetailDirective, selector: "risk-data-table-detail-row" }, { kind: "component", type: RiskDataTableRowDetailExpanderComponent, selector: "risk-data-table-detail-expander", inputs: ["expanded"] }] }); }
|
|
804
814
|
}
|
|
805
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
815
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TestDataTableHostComponent, decorators: [{
|
|
806
816
|
type: Component,
|
|
807
817
|
args: [{
|
|
808
818
|
template: `
|
|
809
|
-
<risk-data-table [data]="data"
|
|
810
|
-
[footer]="footer"
|
|
811
|
-
[pageSize]="
|
|
819
|
+
<risk-data-table [data]="data()"
|
|
820
|
+
[footer]="footer()"
|
|
821
|
+
[pageSize]="pageSize()"
|
|
812
822
|
[defaultOrdering]="defaultOrdering"
|
|
813
823
|
[striped]="true">
|
|
814
824
|
<risk-data-table-column title="Test Column 1"
|
|
815
825
|
[sortingKey]="valueGetter">
|
|
816
826
|
<ng-template let-record="row" risk-data-table-cell>
|
|
817
|
-
{{record.value1}}
|
|
827
|
+
{{ record.value1 }}
|
|
818
828
|
</ng-template>
|
|
819
829
|
</risk-data-table-column>
|
|
820
830
|
<risk-data-table-column>
|
|
821
831
|
<ng-template risk-data-table-cell let-record="row" let-expanded="expanded">
|
|
822
|
-
<risk-data-table-detail-expander [expanded]="expanded"
|
|
832
|
+
<risk-data-table-detail-expander [expanded]="expanded"/>
|
|
823
833
|
</ng-template>
|
|
824
834
|
<ng-template risk-data-table-footer-cell let-footer="footer">
|
|
825
|
-
{{footer.value1}}
|
|
835
|
+
{{ footer.value1 }}
|
|
826
836
|
</ng-template>
|
|
827
837
|
</risk-data-table-column>
|
|
828
838
|
<!-- Sub detail -->
|
|
@@ -831,41 +841,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
831
841
|
<risk-data-table-column title="Test Detail Column 1"
|
|
832
842
|
[sortingKey]="valueGetter">
|
|
833
843
|
<ng-template risk-data-table-cell let-record="row">
|
|
834
|
-
{{record.value1}}
|
|
844
|
+
{{ record.value1 }}
|
|
835
845
|
</ng-template>
|
|
836
846
|
</risk-data-table-column>
|
|
837
847
|
</risk-data-table-column-group>
|
|
838
848
|
<risk-data-table-column-group>
|
|
839
849
|
<risk-data-table-column title="Test Detail Column 2">
|
|
840
850
|
<ng-template risk-data-table-cell let-record="row">
|
|
841
|
-
{{record.value2}}
|
|
851
|
+
{{ record.value2 }}
|
|
842
852
|
</ng-template>
|
|
843
853
|
</risk-data-table-column>
|
|
844
854
|
<risk-data-table-column title="Test Detail Column 3">
|
|
845
855
|
<ng-template risk-data-table-cell let-record="row">
|
|
846
|
-
{{record.value3}}
|
|
856
|
+
{{ record.value3 }}
|
|
847
857
|
</ng-template>
|
|
848
858
|
</risk-data-table-column>
|
|
849
859
|
</risk-data-table-column-group>
|
|
850
|
-
<risk-data-table-column-group
|
|
860
|
+
<risk-data-table-column-group/>
|
|
851
861
|
</risk-data-table-detail-row>
|
|
852
|
-
</risk-data-table
|
|
862
|
+
</risk-data-table>`,
|
|
863
|
+
imports: [
|
|
864
|
+
RiskDataTableColumnCellDirective,
|
|
865
|
+
RiskDataTableColumnDirective,
|
|
866
|
+
RiskDataTableColumnFooterDirective,
|
|
867
|
+
RiskDataTableColumnGroupDirective,
|
|
868
|
+
RiskDataTableComponent,
|
|
869
|
+
RiskDataTableRowDetailDirective,
|
|
870
|
+
RiskDataTableRowDetailExpanderComponent
|
|
871
|
+
]
|
|
853
872
|
}]
|
|
854
|
-
}],
|
|
873
|
+
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }] } });
|
|
855
874
|
|
|
856
|
-
class
|
|
875
|
+
class RiskHighLighterDirectiveTestComponent {
|
|
857
876
|
trackBy(index, row) {
|
|
858
877
|
return row.rowData;
|
|
859
878
|
}
|
|
860
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
861
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
862
|
-
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div>`, isInline: true, dependencies: [{ kind: "directive", type:
|
|
879
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskHighLighterDirectiveTestComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
880
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: RiskHighLighterDirectiveTestComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
881
|
+
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div>`, isInline: true, dependencies: [{ kind: "directive", type: RiskHighlighterDirective, selector: "[risk-data-table-highlighter]", inputs: ["risk-data-table-highlighter", "risk-data-table-highlighter-context"] }] }); }
|
|
863
882
|
}
|
|
864
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
883
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskHighLighterDirectiveTestComponent, decorators: [{
|
|
865
884
|
type: Component,
|
|
866
885
|
args: [{
|
|
867
886
|
template: `
|
|
868
|
-
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div
|
|
887
|
+
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div>`,
|
|
888
|
+
imports: [RiskHighlighterDirective]
|
|
869
889
|
}]
|
|
870
890
|
}] });
|
|
871
891
|
class HighLighterDirectivePage extends Page {
|
|
@@ -873,13 +893,13 @@ class HighLighterDirectivePage extends Page {
|
|
|
873
893
|
super(fixture);
|
|
874
894
|
}
|
|
875
895
|
get highlightedElement() {
|
|
876
|
-
return this.debugElement.query(By.directive(
|
|
896
|
+
return this.debugElement.query(By.directive(RiskHighlighterDirective));
|
|
877
897
|
}
|
|
878
898
|
get classList() {
|
|
879
899
|
return this.highlightedElement.nativeElement.classList;
|
|
880
900
|
}
|
|
881
901
|
get highlighter() {
|
|
882
|
-
return this.highlightedElement.injector.get(
|
|
902
|
+
return this.highlightedElement.injector.get(RiskHighlighterDirective);
|
|
883
903
|
}
|
|
884
904
|
}
|
|
885
905
|
|
|
@@ -902,7 +922,7 @@ class ByUtil {
|
|
|
902
922
|
}
|
|
903
923
|
}
|
|
904
924
|
|
|
905
|
-
class
|
|
925
|
+
class RiskLayoutComponentDefinition {
|
|
906
926
|
constructor(debugElement, page) {
|
|
907
927
|
this.debugElement = debugElement;
|
|
908
928
|
this.page = page;
|
|
@@ -925,6 +945,12 @@ class LayoutComponentDefinition {
|
|
|
925
945
|
get sideNav() {
|
|
926
946
|
return this.sideNavContainer.query(By.directive(MatSidenav));
|
|
927
947
|
}
|
|
948
|
+
get sideNavMenu() {
|
|
949
|
+
return this.sideNav.queryAll(ByUtil.or(By.css('[menu-vertical]'), By.css('risk-layout-vertical')));
|
|
950
|
+
}
|
|
951
|
+
get content() {
|
|
952
|
+
return this.sideNavContainer.query(By.css('.risk-layout-content'));
|
|
953
|
+
}
|
|
928
954
|
openSideNav() {
|
|
929
955
|
this.sideNav.componentInstance.open();
|
|
930
956
|
this.page.advanceAndDetectChanges();
|
|
@@ -933,21 +959,15 @@ class LayoutComponentDefinition {
|
|
|
933
959
|
this.sideNav.componentInstance.close();
|
|
934
960
|
this.page.advanceAndDetectChanges(1);
|
|
935
961
|
}
|
|
936
|
-
get sideNavMenu() {
|
|
937
|
-
return this.sideNav.queryAll(ByUtil.or(By.css('[menu-vertical]'), By.css('risk-layout-vertical')));
|
|
938
|
-
}
|
|
939
|
-
get content() {
|
|
940
|
-
return this.sideNavContainer.query(By.css('.risk-layout-content'));
|
|
941
|
-
}
|
|
942
962
|
}
|
|
943
|
-
class
|
|
963
|
+
class RiskLayoutTestComponentHostPage extends Page {
|
|
944
964
|
get layoutComponent() {
|
|
945
|
-
return new
|
|
965
|
+
return new RiskLayoutComponentDefinition(this.debugElement.query(By.directive(RiskLayoutComponent)), this);
|
|
946
966
|
}
|
|
947
967
|
}
|
|
948
|
-
class
|
|
949
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
950
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
968
|
+
class RiskLayoutTestHostComponent {
|
|
969
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskLayoutTestHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
970
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: RiskLayoutTestHostComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
951
971
|
<risk-layout>
|
|
952
972
|
<!-- menu-horizontal -->
|
|
953
973
|
<risk-layout-horizontal>
|
|
@@ -962,9 +982,9 @@ class TestLayoutHostComponent {
|
|
|
962
982
|
|
|
963
983
|
<span>Content</span>
|
|
964
984
|
</risk-layout>
|
|
965
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
|
985
|
+
`, isInline: true, dependencies: [{ kind: "component", type: RiskLayoutComponent, selector: "risk-layout", inputs: ["smallScreenMenuVisible", "smallScreenWidth", "footerVisible", "toolbarBackgroundColor", "backgroundColor"] }, { kind: "directive", type: RiskLayoutHorizontalDirective, selector: "risk-layout-horizontal" }, { kind: "directive", type: RiskLayoutVerticalDirective, selector: "risk-layout-vertical" }] }); }
|
|
966
986
|
}
|
|
967
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
987
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskLayoutTestHostComponent, decorators: [{
|
|
968
988
|
type: Component,
|
|
969
989
|
args: [{
|
|
970
990
|
template: `
|
|
@@ -982,60 +1002,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
982
1002
|
|
|
983
1003
|
<span>Content</span>
|
|
984
1004
|
</risk-layout>
|
|
985
|
-
|
|
1005
|
+
`,
|
|
1006
|
+
imports: [
|
|
1007
|
+
RiskLayoutComponent,
|
|
1008
|
+
RiskLayoutHorizontalDirective,
|
|
1009
|
+
RiskLayoutVerticalDirective
|
|
1010
|
+
]
|
|
986
1011
|
}]
|
|
987
1012
|
}] });
|
|
988
1013
|
|
|
989
|
-
class RouterLinkStubDirective {
|
|
990
|
-
constructor(injector) {
|
|
991
|
-
this.navigatedTo = null;
|
|
992
|
-
this._urlTree = null;
|
|
993
|
-
this.routerStub = injector.get(Router, null);
|
|
994
|
-
}
|
|
995
|
-
ngOnChanges() {
|
|
996
|
-
if (this.linkParams && this.routerStub) {
|
|
997
|
-
this._urlTree = this.routerStub.getURLTree(this.linkParams);
|
|
998
|
-
}
|
|
999
|
-
}
|
|
1000
|
-
onClick() {
|
|
1001
|
-
this.navigatedTo = this.linkParams;
|
|
1002
|
-
if (this.routerStub) {
|
|
1003
|
-
if (Array.isArray(this.navigatedTo)) {
|
|
1004
|
-
this.routerStub.navigate(this.navigatedTo);
|
|
1005
|
-
}
|
|
1006
|
-
else {
|
|
1007
|
-
this.routerStub.navigateByUrl(this.navigatedTo);
|
|
1008
|
-
}
|
|
1009
|
-
}
|
|
1010
|
-
}
|
|
1011
|
-
get urlTree() {
|
|
1012
|
-
return this._urlTree;
|
|
1013
|
-
}
|
|
1014
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouterLinkStubDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1015
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: RouterLinkStubDirective, selector: "[routerLink]", inputs: { linkParams: ["routerLink", "linkParams"] }, host: { listeners: { "click": "onClick()" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
1016
|
-
}
|
|
1017
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouterLinkStubDirective, decorators: [{
|
|
1018
|
-
type: Directive,
|
|
1019
|
-
args: [{
|
|
1020
|
-
/* eslint-disable @angular-eslint/directive-selector */
|
|
1021
|
-
selector: '[routerLink]',
|
|
1022
|
-
/* eslint-enable */
|
|
1023
|
-
host: {
|
|
1024
|
-
'(click)': 'onClick()'
|
|
1025
|
-
}
|
|
1026
|
-
}]
|
|
1027
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { linkParams: [{
|
|
1028
|
-
type: Input,
|
|
1029
|
-
args: ['routerLink']
|
|
1030
|
-
}] } });
|
|
1031
|
-
|
|
1032
1014
|
class LinkDefinition {
|
|
1033
1015
|
constructor(page, link) {
|
|
1034
1016
|
this.page = page;
|
|
1035
1017
|
this.link = link;
|
|
1036
1018
|
}
|
|
1037
1019
|
get stub() {
|
|
1038
|
-
return this.link.injector.get(
|
|
1020
|
+
return this.link.injector.get(RouterLink);
|
|
1039
1021
|
}
|
|
1040
1022
|
get text() {
|
|
1041
1023
|
return this.link.nativeElement.textContent.trim();
|
|
@@ -1051,7 +1033,7 @@ class LinkOnlyPage extends Page {
|
|
|
1051
1033
|
super(fixture);
|
|
1052
1034
|
}
|
|
1053
1035
|
get link() {
|
|
1054
|
-
return new LinkDefinition(this, this.debugElement.query(By.directive(
|
|
1036
|
+
return new LinkDefinition(this, this.debugElement.query(By.directive(RouterLink)));
|
|
1055
1037
|
}
|
|
1056
1038
|
}
|
|
1057
1039
|
|
|
@@ -1074,7 +1056,7 @@ class LoginMenuPage extends Page {
|
|
|
1074
1056
|
}
|
|
1075
1057
|
}
|
|
1076
1058
|
|
|
1077
|
-
class
|
|
1059
|
+
class RiskLoginPage extends Page {
|
|
1078
1060
|
constructor(fixture) {
|
|
1079
1061
|
super(fixture);
|
|
1080
1062
|
}
|
|
@@ -1086,29 +1068,31 @@ class LoginPage extends Page {
|
|
|
1086
1068
|
}
|
|
1087
1069
|
set username(username) {
|
|
1088
1070
|
setNgModelValue(this.usernameElement, username);
|
|
1071
|
+
this.fixture.detectChanges();
|
|
1089
1072
|
}
|
|
1090
1073
|
get passwordElement() {
|
|
1091
1074
|
return this.formElement.query(By.css('input[name=password]'));
|
|
1092
1075
|
}
|
|
1093
1076
|
set password(password) {
|
|
1094
1077
|
setNgModelValue(this.passwordElement, password);
|
|
1078
|
+
this.fixture.detectChanges();
|
|
1095
1079
|
}
|
|
1096
1080
|
get loginButtonElement() {
|
|
1097
1081
|
return this.formElement.query(By.directive(MatButton));
|
|
1098
1082
|
}
|
|
1099
1083
|
get successMessage() {
|
|
1100
|
-
const debugElement = this.debugElement.query(ByUtil.and(By.directive(
|
|
1084
|
+
const debugElement = this.debugElement.query(ByUtil.and(By.directive(RiskMessageComponent), By.css(RISK_GOOD_SELECTOR)));
|
|
1101
1085
|
if (!debugElement) {
|
|
1102
1086
|
return null;
|
|
1103
1087
|
}
|
|
1104
|
-
return new
|
|
1088
|
+
return new RiskMessageComponentDef(debugElement);
|
|
1105
1089
|
}
|
|
1106
1090
|
get errorMessage() {
|
|
1107
|
-
const debugElement = this.debugElement.query(ByUtil.or(ByUtil.and(By.directive(
|
|
1091
|
+
const debugElement = this.debugElement.query(ByUtil.or(ByUtil.and(By.directive(RiskMessageComponent), By.css(RISK_ERROR_SELECTOR)), By.css('h3')));
|
|
1108
1092
|
if (!debugElement) {
|
|
1109
1093
|
return null;
|
|
1110
1094
|
}
|
|
1111
|
-
return new
|
|
1095
|
+
return new RiskMessageComponentDef(debugElement);
|
|
1112
1096
|
}
|
|
1113
1097
|
clickLogin() {
|
|
1114
1098
|
click(this.loginButtonElement.nativeElement);
|
|
@@ -1121,31 +1105,34 @@ class TestMessageHostComponent {
|
|
|
1121
1105
|
constructor() {
|
|
1122
1106
|
this.message = 'custom message';
|
|
1123
1107
|
}
|
|
1124
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1125
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1126
|
-
<risk-error [message]="message"
|
|
1127
|
-
<risk-good [message]="message"
|
|
1128
|
-
<risk-info [message]="message"
|
|
1129
|
-
<risk-message [message]="message"
|
|
1130
|
-
<risk-warn [message]="message"
|
|
1131
|
-
<risk-initial-load [message]="message"
|
|
1132
|
-
<risk-update-failed [message]="message"
|
|
1133
|
-
<risk-no-data [message]="message"
|
|
1134
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
|
1108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TestMessageHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: TestMessageHostComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
1110
|
+
<risk-error [message]="message"/>
|
|
1111
|
+
<risk-good [message]="message"/>
|
|
1112
|
+
<risk-info [message]="message"/>
|
|
1113
|
+
<risk-message [message]="message"/>
|
|
1114
|
+
<risk-warn [message]="message"/>
|
|
1115
|
+
<risk-initial-load [message]="message"/>
|
|
1116
|
+
<risk-update-failed [message]="message"/>
|
|
1117
|
+
<risk-no-data [message]="message"/>
|
|
1118
|
+
`, isInline: true, dependencies: [{ kind: "component", type: RiskMessageComponent, selector: "risk-error, risk-good, risk-info, risk-message, risk-warn, risk-initial-load, risk-no-data, risk-update-failed", inputs: ["message"] }] }); }
|
|
1135
1119
|
}
|
|
1136
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1120
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TestMessageHostComponent, decorators: [{
|
|
1137
1121
|
type: Component,
|
|
1138
1122
|
args: [{
|
|
1139
1123
|
template: `
|
|
1140
|
-
<risk-error [message]="message"
|
|
1141
|
-
<risk-good [message]="message"
|
|
1142
|
-
<risk-info [message]="message"
|
|
1143
|
-
<risk-message [message]="message"
|
|
1144
|
-
<risk-warn [message]="message"
|
|
1145
|
-
<risk-initial-load [message]="message"
|
|
1146
|
-
<risk-update-failed [message]="message"
|
|
1147
|
-
<risk-no-data [message]="message"
|
|
1148
|
-
|
|
1124
|
+
<risk-error [message]="message"/>
|
|
1125
|
+
<risk-good [message]="message"/>
|
|
1126
|
+
<risk-info [message]="message"/>
|
|
1127
|
+
<risk-message [message]="message"/>
|
|
1128
|
+
<risk-warn [message]="message"/>
|
|
1129
|
+
<risk-initial-load [message]="message"/>
|
|
1130
|
+
<risk-update-failed [message]="message"/>
|
|
1131
|
+
<risk-no-data [message]="message"/>
|
|
1132
|
+
`,
|
|
1133
|
+
imports: [
|
|
1134
|
+
RiskMessageComponent
|
|
1135
|
+
]
|
|
1149
1136
|
}]
|
|
1150
1137
|
}] });
|
|
1151
1138
|
class MessageHostedPage extends Page {
|
|
@@ -1153,40 +1140,55 @@ class MessageHostedPage extends Page {
|
|
|
1153
1140
|
super(fixture);
|
|
1154
1141
|
}
|
|
1155
1142
|
get error() {
|
|
1156
|
-
return new
|
|
1143
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_ERROR_SELECTOR)));
|
|
1157
1144
|
}
|
|
1158
1145
|
get good() {
|
|
1159
|
-
return new
|
|
1146
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_GOOD_SELECTOR)));
|
|
1160
1147
|
}
|
|
1161
1148
|
get info() {
|
|
1162
|
-
return new
|
|
1149
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_INFO_SELECTOR)));
|
|
1163
1150
|
}
|
|
1164
1151
|
get message() {
|
|
1165
|
-
return new
|
|
1152
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_MESSAGE_SELECTOR)));
|
|
1166
1153
|
}
|
|
1167
1154
|
get warn() {
|
|
1168
|
-
return new
|
|
1155
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_WARN_SELECTOR)));
|
|
1169
1156
|
}
|
|
1170
1157
|
get initialLoad() {
|
|
1171
|
-
return new
|
|
1158
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_INITIAL_LOAD_SELECTOR)));
|
|
1172
1159
|
}
|
|
1173
1160
|
get noData() {
|
|
1174
|
-
return new
|
|
1161
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_NO_DATA_SELECTOR)));
|
|
1175
1162
|
}
|
|
1176
1163
|
get updateFailed() {
|
|
1177
|
-
return new
|
|
1164
|
+
return new RiskMessageComponentDef(this.debugElement.query(By.css(RISK_UPDATE_FAILED_SELECTOR)));
|
|
1178
1165
|
}
|
|
1179
1166
|
}
|
|
1180
1167
|
|
|
1181
1168
|
const storage = { authRequestedPath: null };
|
|
1182
|
-
class AuthRoutingFlowServiceStub
|
|
1183
|
-
constructor(
|
|
1184
|
-
|
|
1185
|
-
this.
|
|
1169
|
+
class AuthRoutingFlowServiceStub {
|
|
1170
|
+
constructor() {
|
|
1171
|
+
this.authServiceStub = inject(AUTH_PROVIDER);
|
|
1172
|
+
this.authConfig = inject(AUTH_CONFIG);
|
|
1186
1173
|
// cleanup
|
|
1187
1174
|
storage.authRequestedPath = null;
|
|
1188
1175
|
}
|
|
1189
|
-
|
|
1176
|
+
get authFlow() {
|
|
1177
|
+
return this.authConfig.flow;
|
|
1178
|
+
}
|
|
1179
|
+
get authorizationCodeFlow() {
|
|
1180
|
+
return this.authFlow === AuthFlow.AUTHORIZATION_CODE;
|
|
1181
|
+
}
|
|
1182
|
+
get implicitFlow() {
|
|
1183
|
+
return this.authFlow === AuthFlow.IMPLICIT;
|
|
1184
|
+
}
|
|
1185
|
+
get hybridFlow() {
|
|
1186
|
+
return this.authFlow === AuthFlow.HYBRID;
|
|
1187
|
+
}
|
|
1188
|
+
get directFlow() {
|
|
1189
|
+
return this.authFlow === AuthFlow.DIRECT;
|
|
1190
|
+
}
|
|
1191
|
+
logout() {
|
|
1190
1192
|
return this.authServiceStub.logout().pipe(defaultIfEmpty(0), map(() => true));
|
|
1191
1193
|
}
|
|
1192
1194
|
login(username, password) {
|
|
@@ -1195,49 +1197,30 @@ class AuthRoutingFlowServiceStub extends AuthRoutingFlowService {
|
|
|
1195
1197
|
loginViaService() {
|
|
1196
1198
|
return this.authServiceStub.loginViaAuthService();
|
|
1197
1199
|
}
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
}
|
|
1201
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthRoutingFlowServiceStub, decorators: [{
|
|
1202
|
-
type: Injectable
|
|
1203
|
-
}], ctorParameters: function () { return [{ type: i1$3.AuthService, decorators: [{
|
|
1204
|
-
type: Inject,
|
|
1205
|
-
args: [AUTH_PROVIDER]
|
|
1206
|
-
}] }, { type: undefined, decorators: [{
|
|
1207
|
-
type: Inject,
|
|
1208
|
-
args: [AUTH_CONFIG]
|
|
1209
|
-
}] }]; } });
|
|
1210
|
-
|
|
1211
|
-
const WELL_KNOWN = {
|
|
1212
|
-
endpoints: {
|
|
1213
|
-
auth: '/auth',
|
|
1214
|
-
token: '/token',
|
|
1215
|
-
logout: '/logout'
|
|
1216
|
-
},
|
|
1217
|
-
issuer: 'risk-auth'
|
|
1218
|
-
};
|
|
1219
|
-
class WellKnownServiceStub {
|
|
1220
|
-
get wellKnown() {
|
|
1221
|
-
return of(WELL_KNOWN);
|
|
1200
|
+
storeRequestedPath(state) {
|
|
1201
|
+
storage.authRequestedPath = state?.url || null;
|
|
1222
1202
|
}
|
|
1223
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1224
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1203
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthRoutingFlowServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1204
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthRoutingFlowServiceStub }); }
|
|
1225
1205
|
}
|
|
1226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1206
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthRoutingFlowServiceStub, decorators: [{
|
|
1227
1207
|
type: Injectable
|
|
1228
|
-
}] });
|
|
1208
|
+
}], ctorParameters: () => [] });
|
|
1229
1209
|
|
|
1230
|
-
class AuthServiceStub
|
|
1210
|
+
class AuthServiceStub {
|
|
1231
1211
|
constructor() {
|
|
1232
|
-
|
|
1212
|
+
this._loggedInStream = new ReplaySubjectExt(1);
|
|
1233
1213
|
}
|
|
1234
1214
|
get loggedIn() {
|
|
1235
|
-
return of(!!this.user);
|
|
1215
|
+
return defer(() => of(!!this.user));
|
|
1236
1216
|
}
|
|
1237
1217
|
get userProfile() {
|
|
1238
|
-
return of({
|
|
1218
|
+
return defer(() => of(this.user ? {
|
|
1239
1219
|
name: this.user
|
|
1240
|
-
});
|
|
1220
|
+
} : undefined));
|
|
1221
|
+
}
|
|
1222
|
+
get loggedInStream() {
|
|
1223
|
+
return this._loggedInStream.asObservable();
|
|
1241
1224
|
}
|
|
1242
1225
|
loginViaAuthService() {
|
|
1243
1226
|
return of(true);
|
|
@@ -1255,194 +1238,111 @@ class AuthServiceStub extends AuthService {
|
|
|
1255
1238
|
delete this.user;
|
|
1256
1239
|
return EMPTY;
|
|
1257
1240
|
}
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
type: Injectable
|
|
1263
|
-
}], ctorParameters: function () { return []; } });
|
|
1264
|
-
|
|
1265
|
-
class LoginMenuStubComponent {
|
|
1266
|
-
constructor() {
|
|
1267
|
-
this.orientation = 'row';
|
|
1268
|
-
}
|
|
1269
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoginMenuStubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1270
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LoginMenuStubComponent, selector: "login-menu, risk-login-menu", inputs: { orientation: "orientation" }, ngImport: i0, template: '', isInline: true }); }
|
|
1271
|
-
}
|
|
1272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoginMenuStubComponent, decorators: [{
|
|
1273
|
-
type: Component,
|
|
1274
|
-
args: [{
|
|
1275
|
-
selector: 'login-menu, risk-login-menu',
|
|
1276
|
-
template: ''
|
|
1277
|
-
}]
|
|
1278
|
-
}], propDecorators: { orientation: [{
|
|
1279
|
-
type: Input
|
|
1280
|
-
}] } });
|
|
1281
|
-
|
|
1282
|
-
class ActivatedRouteStub {
|
|
1283
|
-
constructor() {
|
|
1284
|
-
// Test parameters
|
|
1285
|
-
this._testParams = {};
|
|
1286
|
-
// ActivatedRoute.params is Observable
|
|
1287
|
-
this.subject = new BehaviorSubject(this.testParams);
|
|
1288
|
-
this.params = this.subject.asObservable();
|
|
1289
|
-
}
|
|
1290
|
-
get testParams() {
|
|
1291
|
-
return this._testParams;
|
|
1292
|
-
}
|
|
1293
|
-
set testParams(params) {
|
|
1294
|
-
this._testParams = params;
|
|
1295
|
-
this.subject.next(params);
|
|
1241
|
+
emitLoginStatusChange(status) {
|
|
1242
|
+
if (this._loggedInStream.lastValue !== status) {
|
|
1243
|
+
this._loggedInStream.next(status);
|
|
1244
|
+
}
|
|
1296
1245
|
}
|
|
1297
|
-
|
|
1298
|
-
get snapshot() {
|
|
1299
|
-
return { params: this.testParams };
|
|
1246
|
+
refreshToken() {
|
|
1300
1247
|
}
|
|
1301
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1302
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1248
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1249
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthServiceStub }); }
|
|
1303
1250
|
}
|
|
1304
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1251
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AuthServiceStub, decorators: [{
|
|
1305
1252
|
type: Injectable
|
|
1306
1253
|
}] });
|
|
1307
1254
|
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1255
|
+
const WELL_KNOWN = {
|
|
1256
|
+
endpoints: {
|
|
1257
|
+
auth: '/auth',
|
|
1258
|
+
token: '/token',
|
|
1259
|
+
logout: '/logout'
|
|
1260
|
+
},
|
|
1261
|
+
issuer: 'risk-auth'
|
|
1262
|
+
};
|
|
1263
|
+
class WellKnownServiceStub {
|
|
1264
|
+
get wellKnown() {
|
|
1265
|
+
return of(WELL_KNOWN);
|
|
1266
|
+
}
|
|
1267
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WellKnownServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1268
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WellKnownServiceStub }); }
|
|
1311
1269
|
}
|
|
1312
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1313
|
-
type:
|
|
1314
|
-
args: [{
|
|
1315
|
-
/* eslint-disable @angular-eslint/component-selector */
|
|
1316
|
-
selector: 'router-outlet',
|
|
1317
|
-
/* eslint-enable */
|
|
1318
|
-
template: ''
|
|
1319
|
-
}]
|
|
1270
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WellKnownServiceStub, decorators: [{
|
|
1271
|
+
type: Injectable
|
|
1320
1272
|
}] });
|
|
1321
1273
|
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
get url() {
|
|
1327
|
-
return this.stub.getCurrentURL();
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1330
|
-
// @dynamic
|
|
1274
|
+
/**
|
|
1275
|
+
* A lightweight Router stub for testing that doesn't require actual routing infrastructure.
|
|
1276
|
+
* Use this when you want complete isolation from the Router and only need to verify navigation calls.
|
|
1277
|
+
*/
|
|
1331
1278
|
class RouterStub {
|
|
1332
1279
|
constructor() {
|
|
1333
|
-
this.
|
|
1334
|
-
this.
|
|
1335
|
-
this.currentUrlTree = this.createUrlTree(['/dashboard']);
|
|
1336
|
-
this.routerState = {
|
|
1337
|
-
snapshot: new Snapshot(this)
|
|
1338
|
-
};
|
|
1339
|
-
this.events = new EventEmitter();
|
|
1280
|
+
this._url = '/';
|
|
1281
|
+
this._events$ = new BehaviorSubject(null);
|
|
1340
1282
|
}
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
return this.createUrlTree(url);
|
|
1344
|
-
}
|
|
1345
|
-
if (url instanceof Object) {
|
|
1346
|
-
return url;
|
|
1347
|
-
}
|
|
1348
|
-
return this.createUrlTree(url.split('/'));
|
|
1283
|
+
get url() {
|
|
1284
|
+
return this._url;
|
|
1349
1285
|
}
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
this.emitNavigate();
|
|
1353
|
-
return url;
|
|
1286
|
+
get events() {
|
|
1287
|
+
return this._events$.asObservable();
|
|
1354
1288
|
}
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1289
|
+
get routerState() {
|
|
1290
|
+
return {
|
|
1291
|
+
snapshot: {
|
|
1292
|
+
url: this._url,
|
|
1293
|
+
root: {}
|
|
1294
|
+
}
|
|
1295
|
+
};
|
|
1359
1296
|
}
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1297
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1298
|
+
navigate(commands, _extras) {
|
|
1299
|
+
this._url = commands.join('/');
|
|
1300
|
+
return Promise.resolve(true);
|
|
1364
1301
|
}
|
|
1365
|
-
|
|
1366
|
-
|
|
1302
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1303
|
+
navigateByUrl(url, _extras) {
|
|
1304
|
+
this._url = typeof url === 'string' ? url : url.toString();
|
|
1305
|
+
return Promise.resolve(true);
|
|
1367
1306
|
}
|
|
1368
|
-
|
|
1369
|
-
|
|
1307
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1308
|
+
createUrlTree(_commands, _navigationExtras) {
|
|
1309
|
+
return {};
|
|
1370
1310
|
}
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
}), {}),
|
|
1379
|
-
queryParams,
|
|
1380
|
-
fragment,
|
|
1381
|
-
queryParamMap: {
|
|
1382
|
-
...new Map(),
|
|
1383
|
-
getAll: () => [],
|
|
1384
|
-
keys: []
|
|
1385
|
-
}
|
|
1386
|
-
};
|
|
1311
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1312
|
+
serializeUrl(_url) {
|
|
1313
|
+
return '';
|
|
1314
|
+
}
|
|
1315
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1316
|
+
parseUrl(_url) {
|
|
1317
|
+
return {};
|
|
1387
1318
|
}
|
|
1388
|
-
|
|
1389
|
-
|
|
1319
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1320
|
+
isActive(_url, _exact) {
|
|
1321
|
+
return false;
|
|
1390
1322
|
}
|
|
1391
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1392
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1323
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RouterStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1324
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RouterStub }); }
|
|
1393
1325
|
}
|
|
1394
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1326
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RouterStub, decorators: [{
|
|
1395
1327
|
type: Injectable
|
|
1396
1328
|
}] });
|
|
1397
1329
|
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
imports: [],
|
|
1402
|
-
declarations: [
|
|
1403
|
-
RouterLinkStubDirective,
|
|
1404
|
-
RouterOutletStubComponent
|
|
1405
|
-
],
|
|
1406
|
-
providers: [
|
|
1407
|
-
{
|
|
1408
|
-
provide: Router,
|
|
1409
|
-
useClass: RouterStub
|
|
1410
|
-
},
|
|
1411
|
-
{
|
|
1412
|
-
provide: ActivatedRoute,
|
|
1413
|
-
useClass: ActivatedRouteStub
|
|
1414
|
-
}
|
|
1415
|
-
],
|
|
1416
|
-
exports: [
|
|
1417
|
-
RouterLinkStubDirective,
|
|
1418
|
-
RouterOutletStubComponent
|
|
1419
|
-
]
|
|
1420
|
-
}
|
|
1421
|
-
};
|
|
1422
|
-
if (customOverrides) {
|
|
1423
|
-
if (customOverrides.add) {
|
|
1424
|
-
override.add = customOverrides.add;
|
|
1425
|
-
}
|
|
1426
|
-
if (customOverrides.set) {
|
|
1427
|
-
override.set = customOverrides.set;
|
|
1428
|
-
}
|
|
1429
|
-
if (customOverrides.remove) {
|
|
1430
|
-
override.remove = customOverrides.remove;
|
|
1431
|
-
}
|
|
1330
|
+
class RiskLoginMenuStubComponent {
|
|
1331
|
+
constructor() {
|
|
1332
|
+
this.orientation = input('row', ...(ngDevMode ? [{ debugName: "orientation" }] : []));
|
|
1432
1333
|
}
|
|
1433
|
-
|
|
1334
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskLoginMenuStubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1335
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: RiskLoginMenuStubComponent, isStandalone: true, selector: "risk-login-menu", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1434
1336
|
}
|
|
1337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RiskLoginMenuStubComponent, decorators: [{
|
|
1338
|
+
type: Component,
|
|
1339
|
+
args: [{
|
|
1340
|
+
selector: 'risk-login-menu',
|
|
1341
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1342
|
+
template: ''
|
|
1343
|
+
}]
|
|
1344
|
+
}], propDecorators: { orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }] } });
|
|
1435
1345
|
|
|
1436
|
-
function disableMaterialAnimations(ngModule) {
|
|
1437
|
-
TestBed.overrideModule(ngModule, {
|
|
1438
|
-
remove: {
|
|
1439
|
-
imports: [CommonViewModule]
|
|
1440
|
-
},
|
|
1441
|
-
add: {
|
|
1442
|
-
imports: [NoopAnimationsCommonViewModule]
|
|
1443
|
-
}
|
|
1444
|
-
});
|
|
1445
|
-
}
|
|
1446
1346
|
function compileTestBed(compileFunction, destroyFunction, stubMatchMedia = true) {
|
|
1447
1347
|
let matchMedia;
|
|
1448
1348
|
beforeEach((done) => {
|
|
@@ -1478,43 +1378,6 @@ function fakeMatchMedia(matches = false) {
|
|
|
1478
1378
|
});
|
|
1479
1379
|
}
|
|
1480
1380
|
|
|
1481
|
-
class TestingModule {
|
|
1482
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1483
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TestingModule, declarations: [DownloadTestComponent,
|
|
1484
|
-
TestDataTableHostComponent,
|
|
1485
|
-
HighLighterDirectiveTestComponent,
|
|
1486
|
-
TestLayoutHostComponent,
|
|
1487
|
-
RouterLinkStubDirective,
|
|
1488
|
-
TestMessageHostComponent,
|
|
1489
|
-
LoginMenuStubComponent,
|
|
1490
|
-
RouterOutletStubComponent], imports: [CommonViewModule,
|
|
1491
|
-
FileModule,
|
|
1492
|
-
DataTableModule] }); }
|
|
1493
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TestingModule, imports: [CommonViewModule,
|
|
1494
|
-
FileModule,
|
|
1495
|
-
DataTableModule] }); }
|
|
1496
|
-
}
|
|
1497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TestingModule, decorators: [{
|
|
1498
|
-
type: NgModule,
|
|
1499
|
-
args: [{
|
|
1500
|
-
imports: [
|
|
1501
|
-
CommonViewModule,
|
|
1502
|
-
FileModule,
|
|
1503
|
-
DataTableModule
|
|
1504
|
-
],
|
|
1505
|
-
declarations: [
|
|
1506
|
-
DownloadTestComponent,
|
|
1507
|
-
TestDataTableHostComponent,
|
|
1508
|
-
HighLighterDirectiveTestComponent,
|
|
1509
|
-
TestLayoutHostComponent,
|
|
1510
|
-
RouterLinkStubDirective,
|
|
1511
|
-
TestMessageHostComponent,
|
|
1512
|
-
LoginMenuStubComponent,
|
|
1513
|
-
RouterOutletStubComponent
|
|
1514
|
-
]
|
|
1515
|
-
}]
|
|
1516
|
-
}] });
|
|
1517
|
-
|
|
1518
1381
|
// WARNING: Do not change order in this file!!! Environment has to be first as it includes polyfills
|
|
1519
1382
|
// Add CachedResourceProviderImpl to compiler configuration
|
|
1520
1383
|
if ('beforeEach' in globalScope && globalScope.beforeEach) {
|
|
@@ -1539,5 +1402,5 @@ if ('beforeEach' in globalScope && globalScope.beforeEach) {
|
|
|
1539
1402
|
* Generated bundle index. Do not edit.
|
|
1540
1403
|
*/
|
|
1541
1404
|
|
|
1542
|
-
export {
|
|
1405
|
+
export { AuthRoutingFlowServiceStub, AuthServiceStub, BUTTON_CLICK_EVENTS, ByUtil, COMPILE_TIMEOUT_INTERVAL, DataTableDefinitionHosted, DownloadLink, DownloadTestComponent, DownloadTestComponentPage, FAKE_HTTP_ASYNC_TIMEOUT, HighLighterDirectivePage, HttpAsyncServiceStub, HttpServiceStub, LinkDefinition, LinkOnlyPage, LoginMenuPage, MessageHostedPage, Page, PageWithLoading, Pager, RecordsCount, RiskCSVDownloadMenuPage, RiskDataTableDefinition, RiskHighLighterDirectiveTestComponent, RiskLayoutComponentDefinition, RiskLayoutTestComponentHostPage, RiskLayoutTestHostComponent, RiskLoginMenuStubComponent, RiskLoginPage, RiskMessageComponentDef, RouterStub, RowExpander, SortingHandle, TableBody, TableBodyCell, TableBodyDetail, TableBodyDetailBody, TableBodyDetailRow, TableBodyRow, TableFooter, TableFooterRow, TableHeader, TableHeaderCell, TableHeaderRow, TableSorting, TestDataTableHostComponent, TestMessageHostComponent, WELL_KNOWN, WellKnownServiceStub, chceckSorting, click, compileTestBed, dispatchEvent, initTestEnvironment, newEvent, setNgModelSelectValue, setNgModelValue, storage };
|
|
1543
1406
|
//# sourceMappingURL=dbg-riskit-angular-testing.mjs.map
|