@dbg-riskit/angular-testing 18.0.0 → 20.0.0
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 +222 -382
- package/fesm2022/dbg-riskit-angular-testing.mjs.map +1 -1
- package/index.d.ts +459 -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, inject, Input } 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 { CSVFileDownloadDirective, FileDownloadDirective } from '@dbg-riskit/angular-file';
|
|
9
|
+
import 'file-saver';
|
|
10
|
+
import { RISK_INITIAL_LOAD_SELECTOR, RISK_NO_DATA_SELECTOR, LayoutComponent, HorizontalLayoutDirective, VerticalLayoutDirective, MessageComponent, 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 { LayoutComponent } from '@dbg-riskit/angular-view';
|
|
12
|
+
import { throwError, of, timer, ReplaySubject, 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';
|
|
19
|
+
import { PagingComponent, DataTableRowDetailExpanderComponent, HIGHLIGHTER_CLASS, DataTableComponent, DataTableColumnDirective, DataTableColumnCellDirective, DataTableColumnFooterDirective, DataTableRowDetailDirective, DataTableColumnGroupDirective, HighlighterDirective } from '@dbg-riskit/angular-datatable';
|
|
22
20
|
import { secureRandom, globalScope } from '@dbg-riskit/common';
|
|
23
|
-
import * as i1$1 from '@dbg-riskit/angular-datatable';
|
|
24
|
-
import { PagingComponent, DataTableRowDetailExpanderComponent, HIGHLIGHTER_CLASS, DataTableComponent, HighlighterDirective, DataTableModule } from '@dbg-riskit/angular-datatable';
|
|
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.12", ngImport: i0, type: HttpServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
135
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HttpServiceStub }); }
|
|
141
136
|
}
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
137
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HttpServiceStub, decorators: [{
|
|
143
138
|
type: Injectable
|
|
144
139
|
}] });
|
|
145
140
|
class HttpAsyncServiceStub extends HttpServiceStub {
|
|
@@ -149,10 +144,10 @@ 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.12", ngImport: i0, type: HttpAsyncServiceStub, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
148
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HttpAsyncServiceStub }); }
|
|
154
149
|
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HttpAsyncServiceStub, decorators: [{
|
|
156
151
|
type: Injectable
|
|
157
152
|
}] });
|
|
158
153
|
|
|
@@ -250,16 +245,20 @@ class DownloadLink {
|
|
|
250
245
|
this.element = element;
|
|
251
246
|
this.page = page;
|
|
252
247
|
}
|
|
248
|
+
get blobSpy() {
|
|
249
|
+
this.setupBlobConstructorSpy();
|
|
250
|
+
return this._blobSpy;
|
|
251
|
+
}
|
|
252
|
+
get saveSpy() {
|
|
253
|
+
this.setupSaveBlobSpy();
|
|
254
|
+
return this._saveBlobSpy;
|
|
255
|
+
}
|
|
253
256
|
click() {
|
|
254
257
|
this.setupBlobConstructorSpy();
|
|
255
258
|
this.setupSaveBlobSpy();
|
|
256
259
|
click(this.element);
|
|
257
260
|
this.page.detectChanges();
|
|
258
261
|
}
|
|
259
|
-
get blobSpy() {
|
|
260
|
-
this.setupBlobConstructorSpy();
|
|
261
|
-
return this._blobSpy;
|
|
262
|
-
}
|
|
263
262
|
setupBlobConstructorSpy() {
|
|
264
263
|
if (!this._blobSpy) {
|
|
265
264
|
let downloadDirective;
|
|
@@ -272,32 +271,29 @@ class DownloadLink {
|
|
|
272
271
|
this._blobSpy = spyOn(downloadDirective, 'createBlob').and.callThrough();
|
|
273
272
|
}
|
|
274
273
|
}
|
|
275
|
-
get saveSpy() {
|
|
276
|
-
this.setupSaveBlobSpy();
|
|
277
|
-
return this._saveBlobSpy;
|
|
278
|
-
}
|
|
279
274
|
setupSaveBlobSpy() {
|
|
280
275
|
if (!this._saveBlobSpy) {
|
|
281
|
-
this._saveBlobSpy = spyOn(
|
|
276
|
+
this._saveBlobSpy = spyOn(window, 'saveAs');
|
|
282
277
|
}
|
|
283
278
|
}
|
|
284
279
|
}
|
|
285
280
|
class DownloadTestComponent {
|
|
286
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
287
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
281
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: DownloadTestComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
282
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: DownloadTestComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
288
283
|
<a [risk-download]="data"
|
|
289
284
|
[risk-download-content-type]="contentType"
|
|
290
285
|
[risk-download-filename]="filename">Download</a>
|
|
291
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
|
286
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: FileDownloadDirective, selector: "[risk-download]", inputs: ["risk-download", "risk-download-content-type", "risk-download-filename"] }] }); }
|
|
292
287
|
}
|
|
293
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: DownloadTestComponent, decorators: [{
|
|
294
289
|
type: Component,
|
|
295
290
|
args: [{
|
|
296
291
|
template: `
|
|
297
292
|
<a [risk-download]="data"
|
|
298
293
|
[risk-download-content-type]="contentType"
|
|
299
294
|
[risk-download-filename]="filename">Download</a>
|
|
300
|
-
|
|
295
|
+
`,
|
|
296
|
+
imports: [FileDownloadDirective]
|
|
301
297
|
}]
|
|
302
298
|
}] });
|
|
303
299
|
class DownloadTestComponentPage extends Page {
|
|
@@ -508,10 +504,6 @@ class TableBodyRow {
|
|
|
508
504
|
this.element = element;
|
|
509
505
|
this.page = page;
|
|
510
506
|
}
|
|
511
|
-
expandRow() {
|
|
512
|
-
click(this.element);
|
|
513
|
-
this.page.detectChanges();
|
|
514
|
-
}
|
|
515
507
|
get expander() {
|
|
516
508
|
return new RowExpander(this.element.query(By.directive(DataTableRowDetailExpanderComponent)).query(By.directive(MatIconAnchor)));
|
|
517
509
|
}
|
|
@@ -533,6 +525,10 @@ class TableBodyRow {
|
|
|
533
525
|
get highlighted() {
|
|
534
526
|
return this.element.nativeElement.classList.contains(HIGHLIGHTER_CLASS);
|
|
535
527
|
}
|
|
528
|
+
expandRow() {
|
|
529
|
+
click(this.element);
|
|
530
|
+
this.page.detectChanges();
|
|
531
|
+
}
|
|
536
532
|
}
|
|
537
533
|
class RowExpander {
|
|
538
534
|
constructor(element) {
|
|
@@ -565,9 +561,6 @@ class TableBodyDetail {
|
|
|
565
561
|
this.element = element;
|
|
566
562
|
this.page = page;
|
|
567
563
|
}
|
|
568
|
-
header() {
|
|
569
|
-
return new TableHeader(this.element.query(By.css('thead')), this.page);
|
|
570
|
-
}
|
|
571
564
|
get body() {
|
|
572
565
|
return new TableBodyDetailBody(this.element.query(By.css('tbody')));
|
|
573
566
|
}
|
|
@@ -577,6 +570,9 @@ class TableBodyDetail {
|
|
|
577
570
|
get colspan() {
|
|
578
571
|
return this.element.children[0].nativeElement.colspan;
|
|
579
572
|
}
|
|
573
|
+
header() {
|
|
574
|
+
return new TableHeader(this.element.query(By.css('thead')), this.page);
|
|
575
|
+
}
|
|
580
576
|
}
|
|
581
577
|
class TableBodyDetailBody {
|
|
582
578
|
constructor(element) {
|
|
@@ -755,8 +751,8 @@ class TestDataTableHostComponent {
|
|
|
755
751
|
return record.value1;
|
|
756
752
|
};
|
|
757
753
|
}
|
|
758
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
759
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
754
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestDataTableHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
755
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: TestDataTableHostComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
760
756
|
<risk-data-table [data]="data"
|
|
761
757
|
[footer]="footer"
|
|
762
758
|
[pageSize]="20"
|
|
@@ -765,15 +761,15 @@ class TestDataTableHostComponent {
|
|
|
765
761
|
<risk-data-table-column title="Test Column 1"
|
|
766
762
|
[sortingKey]="valueGetter">
|
|
767
763
|
<ng-template let-record="row" risk-data-table-cell>
|
|
768
|
-
{{record.value1}}
|
|
764
|
+
{{ record.value1 }}
|
|
769
765
|
</ng-template>
|
|
770
766
|
</risk-data-table-column>
|
|
771
767
|
<risk-data-table-column>
|
|
772
768
|
<ng-template risk-data-table-cell let-record="row" let-expanded="expanded">
|
|
773
|
-
<risk-data-table-detail-expander [expanded]="expanded"
|
|
769
|
+
<risk-data-table-detail-expander [expanded]="expanded"/>
|
|
774
770
|
</ng-template>
|
|
775
771
|
<ng-template risk-data-table-footer-cell let-footer="footer">
|
|
776
|
-
{{footer.value1}}
|
|
772
|
+
{{ footer.value1 }}
|
|
777
773
|
</ng-template>
|
|
778
774
|
</risk-data-table-column>
|
|
779
775
|
<!-- Sub detail -->
|
|
@@ -782,27 +778,27 @@ class TestDataTableHostComponent {
|
|
|
782
778
|
<risk-data-table-column title="Test Detail Column 1"
|
|
783
779
|
[sortingKey]="valueGetter">
|
|
784
780
|
<ng-template risk-data-table-cell let-record="row">
|
|
785
|
-
{{record.value1}}
|
|
781
|
+
{{ record.value1 }}
|
|
786
782
|
</ng-template>
|
|
787
783
|
</risk-data-table-column>
|
|
788
784
|
</risk-data-table-column-group>
|
|
789
785
|
<risk-data-table-column-group>
|
|
790
786
|
<risk-data-table-column title="Test Detail Column 2">
|
|
791
787
|
<ng-template risk-data-table-cell let-record="row">
|
|
792
|
-
{{record.value2}}
|
|
788
|
+
{{ record.value2 }}
|
|
793
789
|
</ng-template>
|
|
794
790
|
</risk-data-table-column>
|
|
795
791
|
<risk-data-table-column title="Test Detail Column 3">
|
|
796
792
|
<ng-template risk-data-table-cell let-record="row">
|
|
797
|
-
{{record.value3}}
|
|
793
|
+
{{ record.value3 }}
|
|
798
794
|
</ng-template>
|
|
799
795
|
</risk-data-table-column>
|
|
800
796
|
</risk-data-table-column-group>
|
|
801
|
-
<risk-data-table-column-group
|
|
797
|
+
<risk-data-table-column-group/>
|
|
802
798
|
</risk-data-table-detail-row>
|
|
803
|
-
</risk-data-table>`, isInline: true, dependencies: [{ kind: "component", type:
|
|
799
|
+
</risk-data-table>`, isInline: true, dependencies: [{ kind: "component", type: DataTableComponent, selector: "risk-data-table", inputs: ["footer", "pageSize", "striped", "showFooter", "allowEmpty", "trackByRowKey", "highlighting", "stickyHeader", "stickyHeaderOffsetTopPx", "defaultOrdering", "data"], exportAs: ["dataTable"] }, { kind: "directive", type: DataTableColumnDirective, selector: "risk-data-table-column", inputs: ["title", "sortingKey", "tooltip", "contentAlign", "headerAlign", "footerAlign", "class"] }, { kind: "directive", type: DataTableColumnCellDirective, selector: "[risk-data-table-cell]" }, { kind: "component", type: DataTableRowDetailExpanderComponent, selector: "risk-data-table-detail-expander", inputs: ["expanded"] }, { kind: "directive", type: DataTableColumnFooterDirective, selector: "[risk-data-table-footer-cell]" }, { kind: "directive", type: DataTableRowDetailDirective, selector: "risk-data-table-detail-row" }, { kind: "directive", type: DataTableColumnGroupDirective, selector: "risk-data-table-column-group" }] }); }
|
|
804
800
|
}
|
|
805
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
801
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestDataTableHostComponent, decorators: [{
|
|
806
802
|
type: Component,
|
|
807
803
|
args: [{
|
|
808
804
|
template: `
|
|
@@ -814,15 +810,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
814
810
|
<risk-data-table-column title="Test Column 1"
|
|
815
811
|
[sortingKey]="valueGetter">
|
|
816
812
|
<ng-template let-record="row" risk-data-table-cell>
|
|
817
|
-
{{record.value1}}
|
|
813
|
+
{{ record.value1 }}
|
|
818
814
|
</ng-template>
|
|
819
815
|
</risk-data-table-column>
|
|
820
816
|
<risk-data-table-column>
|
|
821
817
|
<ng-template risk-data-table-cell let-record="row" let-expanded="expanded">
|
|
822
|
-
<risk-data-table-detail-expander [expanded]="expanded"
|
|
818
|
+
<risk-data-table-detail-expander [expanded]="expanded"/>
|
|
823
819
|
</ng-template>
|
|
824
820
|
<ng-template risk-data-table-footer-cell let-footer="footer">
|
|
825
|
-
{{footer.value1}}
|
|
821
|
+
{{ footer.value1 }}
|
|
826
822
|
</ng-template>
|
|
827
823
|
</risk-data-table-column>
|
|
828
824
|
<!-- Sub detail -->
|
|
@@ -831,25 +827,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
831
827
|
<risk-data-table-column title="Test Detail Column 1"
|
|
832
828
|
[sortingKey]="valueGetter">
|
|
833
829
|
<ng-template risk-data-table-cell let-record="row">
|
|
834
|
-
{{record.value1}}
|
|
830
|
+
{{ record.value1 }}
|
|
835
831
|
</ng-template>
|
|
836
832
|
</risk-data-table-column>
|
|
837
833
|
</risk-data-table-column-group>
|
|
838
834
|
<risk-data-table-column-group>
|
|
839
835
|
<risk-data-table-column title="Test Detail Column 2">
|
|
840
836
|
<ng-template risk-data-table-cell let-record="row">
|
|
841
|
-
{{record.value2}}
|
|
837
|
+
{{ record.value2 }}
|
|
842
838
|
</ng-template>
|
|
843
839
|
</risk-data-table-column>
|
|
844
840
|
<risk-data-table-column title="Test Detail Column 3">
|
|
845
841
|
<ng-template risk-data-table-cell let-record="row">
|
|
846
|
-
{{record.value3}}
|
|
842
|
+
{{ record.value3 }}
|
|
847
843
|
</ng-template>
|
|
848
844
|
</risk-data-table-column>
|
|
849
845
|
</risk-data-table-column-group>
|
|
850
|
-
<risk-data-table-column-group
|
|
846
|
+
<risk-data-table-column-group/>
|
|
851
847
|
</risk-data-table-detail-row>
|
|
852
|
-
</risk-data-table
|
|
848
|
+
</risk-data-table>`,
|
|
849
|
+
imports: [
|
|
850
|
+
DataTableComponent,
|
|
851
|
+
DataTableColumnDirective,
|
|
852
|
+
DataTableColumnCellDirective,
|
|
853
|
+
DataTableRowDetailExpanderComponent,
|
|
854
|
+
DataTableColumnFooterDirective,
|
|
855
|
+
DataTableRowDetailDirective,
|
|
856
|
+
DataTableColumnGroupDirective
|
|
857
|
+
]
|
|
853
858
|
}]
|
|
854
859
|
}], ctorParameters: () => [] });
|
|
855
860
|
|
|
@@ -857,15 +862,16 @@ class HighLighterDirectiveTestComponent {
|
|
|
857
862
|
trackBy(index, row) {
|
|
858
863
|
return row.rowData;
|
|
859
864
|
}
|
|
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:
|
|
865
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HighLighterDirectiveTestComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
866
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: HighLighterDirectiveTestComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
867
|
+
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div>`, isInline: true, dependencies: [{ kind: "directive", type: HighlighterDirective, selector: "[risk-data-table-highlighter]", inputs: ["risk-data-table-highlighter", "risk-data-table-highlighter-context"] }] }); }
|
|
863
868
|
}
|
|
864
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
869
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: HighLighterDirectiveTestComponent, decorators: [{
|
|
865
870
|
type: Component,
|
|
866
871
|
args: [{
|
|
867
872
|
template: `
|
|
868
|
-
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div
|
|
873
|
+
<div [risk-data-table-highlighter]="trackBy" [risk-data-table-highlighter-context]="context"></div>`,
|
|
874
|
+
imports: [HighlighterDirective]
|
|
869
875
|
}]
|
|
870
876
|
}] });
|
|
871
877
|
class HighLighterDirectivePage extends Page {
|
|
@@ -925,6 +931,12 @@ class LayoutComponentDefinition {
|
|
|
925
931
|
get sideNav() {
|
|
926
932
|
return this.sideNavContainer.query(By.directive(MatSidenav));
|
|
927
933
|
}
|
|
934
|
+
get sideNavMenu() {
|
|
935
|
+
return this.sideNav.queryAll(ByUtil.or(By.css('[menu-vertical]'), By.css('risk-layout-vertical')));
|
|
936
|
+
}
|
|
937
|
+
get content() {
|
|
938
|
+
return this.sideNavContainer.query(By.css('.risk-layout-content'));
|
|
939
|
+
}
|
|
928
940
|
openSideNav() {
|
|
929
941
|
this.sideNav.componentInstance.open();
|
|
930
942
|
this.page.advanceAndDetectChanges();
|
|
@@ -933,12 +945,6 @@ class LayoutComponentDefinition {
|
|
|
933
945
|
this.sideNav.componentInstance.close();
|
|
934
946
|
this.page.advanceAndDetectChanges(1);
|
|
935
947
|
}
|
|
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
948
|
}
|
|
943
949
|
class TestLayoutComponentHostPage extends Page {
|
|
944
950
|
get layoutComponent() {
|
|
@@ -946,8 +952,8 @@ class TestLayoutComponentHostPage extends Page {
|
|
|
946
952
|
}
|
|
947
953
|
}
|
|
948
954
|
class TestLayoutHostComponent {
|
|
949
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
950
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
955
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestLayoutHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
956
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: TestLayoutHostComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
951
957
|
<risk-layout>
|
|
952
958
|
<!-- menu-horizontal -->
|
|
953
959
|
<risk-layout-horizontal>
|
|
@@ -962,9 +968,9 @@ class TestLayoutHostComponent {
|
|
|
962
968
|
|
|
963
969
|
<span>Content</span>
|
|
964
970
|
</risk-layout>
|
|
965
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
|
971
|
+
`, isInline: true, dependencies: [{ kind: "component", type: LayoutComponent, selector: "risk-layout", inputs: ["smallScreenMenuVisible", "smallScreenWidth", "footerVisible", "toolbarBackgroundColor", "backgroundColor"] }, { kind: "directive", type: HorizontalLayoutDirective, selector: "risk-layout-horizontal" }, { kind: "directive", type: VerticalLayoutDirective, selector: "risk-layout-vertical" }] }); }
|
|
966
972
|
}
|
|
967
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
973
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestLayoutHostComponent, decorators: [{
|
|
968
974
|
type: Component,
|
|
969
975
|
args: [{
|
|
970
976
|
template: `
|
|
@@ -982,60 +988,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
982
988
|
|
|
983
989
|
<span>Content</span>
|
|
984
990
|
</risk-layout>
|
|
985
|
-
|
|
991
|
+
`,
|
|
992
|
+
imports: [LayoutComponent, HorizontalLayoutDirective, VerticalLayoutDirective]
|
|
986
993
|
}]
|
|
987
994
|
}] });
|
|
988
995
|
|
|
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: "18.2.13", ngImport: i0, type: RouterLinkStubDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1015
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", 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: "18.2.13", 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: () => [{ type: i0.Injector }], propDecorators: { linkParams: [{
|
|
1028
|
-
type: Input,
|
|
1029
|
-
args: ['routerLink']
|
|
1030
|
-
}] } });
|
|
1031
|
-
|
|
1032
996
|
class LinkDefinition {
|
|
1033
997
|
constructor(page, link) {
|
|
1034
998
|
this.page = page;
|
|
1035
999
|
this.link = link;
|
|
1036
1000
|
}
|
|
1037
1001
|
get stub() {
|
|
1038
|
-
return this.link.injector.get(
|
|
1002
|
+
return this.link.injector.get(RouterLink);
|
|
1039
1003
|
}
|
|
1040
1004
|
get text() {
|
|
1041
1005
|
return this.link.nativeElement.textContent.trim();
|
|
@@ -1051,7 +1015,7 @@ class LinkOnlyPage extends Page {
|
|
|
1051
1015
|
super(fixture);
|
|
1052
1016
|
}
|
|
1053
1017
|
get link() {
|
|
1054
|
-
return new LinkDefinition(this, this.debugElement.query(By.directive(
|
|
1018
|
+
return new LinkDefinition(this, this.debugElement.query(By.directive(RouterLink)));
|
|
1055
1019
|
}
|
|
1056
1020
|
}
|
|
1057
1021
|
|
|
@@ -1097,14 +1061,14 @@ class LoginPage extends Page {
|
|
|
1097
1061
|
return this.formElement.query(By.directive(MatButton));
|
|
1098
1062
|
}
|
|
1099
1063
|
get successMessage() {
|
|
1100
|
-
const debugElement = this.debugElement.query(ByUtil.and(By.directive(
|
|
1064
|
+
const debugElement = this.debugElement.query(ByUtil.and(By.directive(MessageComponent), By.css(RISK_GOOD_SELECTOR)));
|
|
1101
1065
|
if (!debugElement) {
|
|
1102
1066
|
return null;
|
|
1103
1067
|
}
|
|
1104
1068
|
return new MessageComponentDef(debugElement);
|
|
1105
1069
|
}
|
|
1106
1070
|
get errorMessage() {
|
|
1107
|
-
const debugElement = this.debugElement.query(ByUtil.or(ByUtil.and(By.directive(
|
|
1071
|
+
const debugElement = this.debugElement.query(ByUtil.or(ByUtil.and(By.directive(MessageComponent), By.css(RISK_ERROR_SELECTOR)), By.css('h3')));
|
|
1108
1072
|
if (!debugElement) {
|
|
1109
1073
|
return null;
|
|
1110
1074
|
}
|
|
@@ -1121,31 +1085,34 @@ class TestMessageHostComponent {
|
|
|
1121
1085
|
constructor() {
|
|
1122
1086
|
this.message = 'custom message';
|
|
1123
1087
|
}
|
|
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:
|
|
1088
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestMessageHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1089
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: TestMessageHostComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
1090
|
+
<risk-error [message]="message"/>
|
|
1091
|
+
<risk-good [message]="message"/>
|
|
1092
|
+
<risk-info [message]="message"/>
|
|
1093
|
+
<risk-message [message]="message"/>
|
|
1094
|
+
<risk-warn [message]="message"/>
|
|
1095
|
+
<risk-initial-load [message]="message"/>
|
|
1096
|
+
<risk-update-failed [message]="message"/>
|
|
1097
|
+
<risk-no-data [message]="message"/>
|
|
1098
|
+
`, isInline: true, dependencies: [{ kind: "component", type: MessageComponent, selector: "risk-error, risk-good, risk-info, risk-message, risk-warn, risk-initial-load, risk-no-data, risk-update-failed", inputs: ["message"] }] }); }
|
|
1135
1099
|
}
|
|
1136
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: TestMessageHostComponent, decorators: [{
|
|
1137
1101
|
type: Component,
|
|
1138
1102
|
args: [{
|
|
1139
1103
|
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
|
-
|
|
1104
|
+
<risk-error [message]="message"/>
|
|
1105
|
+
<risk-good [message]="message"/>
|
|
1106
|
+
<risk-info [message]="message"/>
|
|
1107
|
+
<risk-message [message]="message"/>
|
|
1108
|
+
<risk-warn [message]="message"/>
|
|
1109
|
+
<risk-initial-load [message]="message"/>
|
|
1110
|
+
<risk-update-failed [message]="message"/>
|
|
1111
|
+
<risk-no-data [message]="message"/>
|
|
1112
|
+
`,
|
|
1113
|
+
imports: [
|
|
1114
|
+
MessageComponent
|
|
1115
|
+
]
|
|
1149
1116
|
}]
|
|
1150
1117
|
}] });
|
|
1151
1118
|
class MessageHostedPage extends Page {
|
|
@@ -1179,14 +1146,29 @@ class MessageHostedPage extends Page {
|
|
|
1179
1146
|
}
|
|
1180
1147
|
|
|
1181
1148
|
const storage = { authRequestedPath: null };
|
|
1182
|
-
class AuthRoutingFlowServiceStub
|
|
1183
|
-
constructor(
|
|
1184
|
-
|
|
1185
|
-
this.
|
|
1149
|
+
class AuthRoutingFlowServiceStub {
|
|
1150
|
+
constructor() {
|
|
1151
|
+
this.authServiceStub = inject(AUTH_PROVIDER);
|
|
1152
|
+
this.authConfig = inject(AUTH_CONFIG);
|
|
1186
1153
|
// cleanup
|
|
1187
1154
|
storage.authRequestedPath = null;
|
|
1188
1155
|
}
|
|
1189
|
-
|
|
1156
|
+
get authFlow() {
|
|
1157
|
+
return this.authConfig.flow;
|
|
1158
|
+
}
|
|
1159
|
+
get authorizationCodeFlow() {
|
|
1160
|
+
return this.authFlow === AuthFlow.AUTHORIZATION_CODE;
|
|
1161
|
+
}
|
|
1162
|
+
get implicitFlow() {
|
|
1163
|
+
return this.authFlow === AuthFlow.IMPLICIT;
|
|
1164
|
+
}
|
|
1165
|
+
get hybridFlow() {
|
|
1166
|
+
return this.authFlow === AuthFlow.HYBRID;
|
|
1167
|
+
}
|
|
1168
|
+
get directFlow() {
|
|
1169
|
+
return this.authFlow === AuthFlow.DIRECT;
|
|
1170
|
+
}
|
|
1171
|
+
logout() {
|
|
1190
1172
|
return this.authServiceStub.logout().pipe(defaultIfEmpty(0), map(() => true));
|
|
1191
1173
|
}
|
|
1192
1174
|
login(username, password) {
|
|
@@ -1195,49 +1177,30 @@ class AuthRoutingFlowServiceStub extends AuthRoutingFlowService {
|
|
|
1195
1177
|
loginViaService() {
|
|
1196
1178
|
return this.authServiceStub.loginViaAuthService();
|
|
1197
1179
|
}
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
}
|
|
1201
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthRoutingFlowServiceStub, decorators: [{
|
|
1202
|
-
type: Injectable
|
|
1203
|
-
}], ctorParameters: () => [{ 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);
|
|
1180
|
+
storeRequestedPath(state) {
|
|
1181
|
+
storage.authRequestedPath = state?.url || null;
|
|
1222
1182
|
}
|
|
1223
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1224
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1183
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthRoutingFlowServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1184
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthRoutingFlowServiceStub }); }
|
|
1225
1185
|
}
|
|
1226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1186
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthRoutingFlowServiceStub, decorators: [{
|
|
1227
1187
|
type: Injectable
|
|
1228
|
-
}] });
|
|
1188
|
+
}], ctorParameters: () => [] });
|
|
1229
1189
|
|
|
1230
|
-
class AuthServiceStub
|
|
1190
|
+
class AuthServiceStub {
|
|
1231
1191
|
constructor() {
|
|
1232
|
-
|
|
1192
|
+
this._loggedInStream = new ReplaySubject(1);
|
|
1233
1193
|
}
|
|
1234
1194
|
get loggedIn() {
|
|
1235
1195
|
return of(!!this.user);
|
|
1236
1196
|
}
|
|
1237
1197
|
get userProfile() {
|
|
1238
|
-
return of({
|
|
1198
|
+
return of(this.user ? {
|
|
1239
1199
|
name: this.user
|
|
1240
|
-
});
|
|
1200
|
+
} : undefined);
|
|
1201
|
+
}
|
|
1202
|
+
get loggedInStream() {
|
|
1203
|
+
return this._loggedInStream.asObservable();
|
|
1241
1204
|
}
|
|
1242
1205
|
loginViaAuthService() {
|
|
1243
1206
|
return of(true);
|
|
@@ -1255,194 +1218,108 @@ class AuthServiceStub extends AuthService {
|
|
|
1255
1218
|
delete this.user;
|
|
1256
1219
|
return EMPTY;
|
|
1257
1220
|
}
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
}
|
|
1261
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthServiceStub, decorators: [{
|
|
1262
|
-
type: Injectable
|
|
1263
|
-
}], ctorParameters: () => [] });
|
|
1264
|
-
|
|
1265
|
-
class LoginMenuStubComponent {
|
|
1266
|
-
constructor() {
|
|
1267
|
-
this.orientation = 'row';
|
|
1268
|
-
}
|
|
1269
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginMenuStubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1270
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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: "18.2.13", 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);
|
|
1221
|
+
emitLoginStatusChange(status) {
|
|
1222
|
+
this._loggedInStream.next(status);
|
|
1296
1223
|
}
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
return { params: this.testParams };
|
|
1300
|
-
}
|
|
1301
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActivatedRouteStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1302
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActivatedRouteStub }); }
|
|
1224
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1225
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthServiceStub }); }
|
|
1303
1226
|
}
|
|
1304
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1227
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AuthServiceStub, decorators: [{
|
|
1305
1228
|
type: Injectable
|
|
1306
1229
|
}] });
|
|
1307
1230
|
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1231
|
+
const WELL_KNOWN = {
|
|
1232
|
+
endpoints: {
|
|
1233
|
+
auth: '/auth',
|
|
1234
|
+
token: '/token',
|
|
1235
|
+
logout: '/logout'
|
|
1236
|
+
},
|
|
1237
|
+
issuer: 'risk-auth'
|
|
1238
|
+
};
|
|
1239
|
+
class WellKnownServiceStub {
|
|
1240
|
+
get wellKnown() {
|
|
1241
|
+
return of(WELL_KNOWN);
|
|
1242
|
+
}
|
|
1243
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: WellKnownServiceStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1244
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: WellKnownServiceStub }); }
|
|
1311
1245
|
}
|
|
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
|
-
}]
|
|
1246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: WellKnownServiceStub, decorators: [{
|
|
1247
|
+
type: Injectable
|
|
1320
1248
|
}] });
|
|
1321
1249
|
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
get url() {
|
|
1327
|
-
return this.stub.getCurrentURL();
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1330
|
-
// @dynamic
|
|
1250
|
+
/**
|
|
1251
|
+
* A lightweight Router stub for testing that doesn't require actual routing infrastructure.
|
|
1252
|
+
* Use this when you want complete isolation from the Router and only need to verify navigation calls.
|
|
1253
|
+
*/
|
|
1331
1254
|
class RouterStub {
|
|
1332
1255
|
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();
|
|
1256
|
+
this._url = '/';
|
|
1257
|
+
this._events$ = new BehaviorSubject(null);
|
|
1340
1258
|
}
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
return this.createUrlTree(url);
|
|
1344
|
-
}
|
|
1345
|
-
if (url instanceof Object) {
|
|
1346
|
-
return url;
|
|
1347
|
-
}
|
|
1348
|
-
return this.createUrlTree(url.split('/'));
|
|
1259
|
+
get url() {
|
|
1260
|
+
return this._url;
|
|
1349
1261
|
}
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
this.emitNavigate();
|
|
1353
|
-
return url;
|
|
1262
|
+
get events() {
|
|
1263
|
+
return this._events$.asObservable();
|
|
1354
1264
|
}
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1265
|
+
get routerState() {
|
|
1266
|
+
return {
|
|
1267
|
+
snapshot: {
|
|
1268
|
+
url: this._url,
|
|
1269
|
+
root: {}
|
|
1270
|
+
}
|
|
1271
|
+
};
|
|
1359
1272
|
}
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1273
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1274
|
+
navigate(commands, _extras) {
|
|
1275
|
+
this._url = commands.join('/');
|
|
1276
|
+
return Promise.resolve(true);
|
|
1364
1277
|
}
|
|
1365
|
-
|
|
1366
|
-
|
|
1278
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1279
|
+
navigateByUrl(url, _extras) {
|
|
1280
|
+
this._url = typeof url === 'string' ? url : url.toString();
|
|
1281
|
+
return Promise.resolve(true);
|
|
1367
1282
|
}
|
|
1368
|
-
|
|
1369
|
-
|
|
1283
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1284
|
+
createUrlTree(_commands, _navigationExtras) {
|
|
1285
|
+
return {};
|
|
1370
1286
|
}
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
}), {}),
|
|
1379
|
-
queryParams,
|
|
1380
|
-
fragment,
|
|
1381
|
-
queryParamMap: {
|
|
1382
|
-
...new Map(),
|
|
1383
|
-
getAll: () => [],
|
|
1384
|
-
keys: []
|
|
1385
|
-
}
|
|
1386
|
-
};
|
|
1287
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1288
|
+
serializeUrl(_url) {
|
|
1289
|
+
return '';
|
|
1290
|
+
}
|
|
1291
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1292
|
+
parseUrl(_url) {
|
|
1293
|
+
return {};
|
|
1387
1294
|
}
|
|
1388
|
-
|
|
1389
|
-
|
|
1295
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1296
|
+
isActive(_url, _exact) {
|
|
1297
|
+
return false;
|
|
1390
1298
|
}
|
|
1391
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1392
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1299
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: RouterStub, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1300
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: RouterStub }); }
|
|
1393
1301
|
}
|
|
1394
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1302
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: RouterStub, decorators: [{
|
|
1395
1303
|
type: Injectable
|
|
1396
1304
|
}] });
|
|
1397
1305
|
|
|
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
|
-
}
|
|
1306
|
+
class LoginMenuStubComponent {
|
|
1307
|
+
constructor() {
|
|
1308
|
+
this.orientation = 'row';
|
|
1432
1309
|
}
|
|
1433
|
-
|
|
1310
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginMenuStubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1311
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.12", type: LoginMenuStubComponent, isStandalone: true, selector: "login-menu, risk-login-menu", inputs: { orientation: "orientation" }, ngImport: i0, template: '', isInline: true }); }
|
|
1434
1312
|
}
|
|
1313
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: LoginMenuStubComponent, decorators: [{
|
|
1314
|
+
type: Component,
|
|
1315
|
+
args: [{
|
|
1316
|
+
selector: 'login-menu, risk-login-menu',
|
|
1317
|
+
template: ''
|
|
1318
|
+
}]
|
|
1319
|
+
}], propDecorators: { orientation: [{
|
|
1320
|
+
type: Input
|
|
1321
|
+
}] } });
|
|
1435
1322
|
|
|
1436
|
-
function disableMaterialAnimations(ngModule) {
|
|
1437
|
-
TestBed.overrideModule(ngModule, {
|
|
1438
|
-
remove: {
|
|
1439
|
-
imports: [CommonViewModule]
|
|
1440
|
-
},
|
|
1441
|
-
add: {
|
|
1442
|
-
imports: [NoopAnimationsCommonViewModule]
|
|
1443
|
-
}
|
|
1444
|
-
});
|
|
1445
|
-
}
|
|
1446
1323
|
function compileTestBed(compileFunction, destroyFunction, stubMatchMedia = true) {
|
|
1447
1324
|
let matchMedia;
|
|
1448
1325
|
beforeEach((done) => {
|
|
@@ -1478,43 +1355,6 @@ function fakeMatchMedia(matches = false) {
|
|
|
1478
1355
|
});
|
|
1479
1356
|
}
|
|
1480
1357
|
|
|
1481
|
-
class TestingModule {
|
|
1482
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1483
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", 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: "18.2.13", ngImport: i0, type: TestingModule, imports: [CommonViewModule,
|
|
1494
|
-
FileModule,
|
|
1495
|
-
DataTableModule] }); }
|
|
1496
|
-
}
|
|
1497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", 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
1358
|
// WARNING: Do not change order in this file!!! Environment has to be first as it includes polyfills
|
|
1519
1359
|
// Add CachedResourceProviderImpl to compiler configuration
|
|
1520
1360
|
if ('beforeEach' in globalScope && globalScope.beforeEach) {
|
|
@@ -1539,5 +1379,5 @@ if ('beforeEach' in globalScope && globalScope.beforeEach) {
|
|
|
1539
1379
|
* Generated bundle index. Do not edit.
|
|
1540
1380
|
*/
|
|
1541
1381
|
|
|
1542
|
-
export {
|
|
1382
|
+
export { AuthRoutingFlowServiceStub, AuthServiceStub, BUTTON_CLICK_EVENTS, ByUtil, COMPILE_TIMEOUT_INTERVAL, CSVDownloadMenuPage, DataTableDefinition, DataTableDefinitionHosted, DownloadLink, DownloadTestComponent, DownloadTestComponentPage, FAKE_HTTP_ASYNC_TIMEOUT, HighLighterDirectivePage, HighLighterDirectiveTestComponent, HttpAsyncServiceStub, HttpServiceStub, LayoutComponentDefinition, LinkDefinition, LinkOnlyPage, LoginMenuPage, LoginMenuStubComponent, LoginPage, MessageComponentDef, MessageHostedPage, Page, PageWithLoading, Pager, RecordsCount, RouterStub, RowExpander, SortingHandle, TableBody, TableBodyCell, TableBodyDetail, TableBodyDetailBody, TableBodyDetailRow, TableBodyRow, TableFooter, TableFooterRow, TableHeader, TableHeaderCell, TableHeaderRow, TableSorting, TestDataTableHostComponent, TestLayoutComponentHostPage, TestLayoutHostComponent, TestMessageHostComponent, WELL_KNOWN, WellKnownServiceStub, chceckSorting, click, compileTestBed, dispatchEvent, initTestEnvironment, newEvent, setNgModelSelectValue, setNgModelValue, storage };
|
|
1543
1383
|
//# sourceMappingURL=dbg-riskit-angular-testing.mjs.map
|