@flywheel-io/vision 0.11.2 → 0.12.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.
Files changed (109) hide show
  1. package/components/button/button.component.d.ts +2 -1
  2. package/components/button/button.directives.d.ts +37 -0
  3. package/components/button/button.module.d.ts +5 -4
  4. package/components/card/card-attribute/card-attribute.component.d.ts +7 -0
  5. package/components/card/card-author/card-author.component.d.ts +7 -0
  6. package/components/card/card-content/card-content.component.d.ts +5 -0
  7. package/components/card/card-footer/card-footer.component.d.ts +9 -0
  8. package/components/card/card-header/card-header.component.d.ts +8 -0
  9. package/components/card/card.component.d.ts +12 -0
  10. package/components/card/card.module.d.ts +15 -0
  11. package/components/dialog/dialog-confirm.component.d.ts +22 -0
  12. package/components/dialog/dialog-simple.component.d.ts +19 -0
  13. package/components/dialog/dialog.component.d.ts +41 -0
  14. package/components/dialog/dialogs.module.d.ts +15 -0
  15. package/components/icon-button/icon-button.component.d.ts +1 -0
  16. package/components/{dialog → legacy/dialog}/choice-dialog.component.d.ts +4 -1
  17. package/components/{dialog → legacy/dialog}/confirm-dialog.component.d.ts +4 -1
  18. package/components/{dialog → legacy/dialog}/dialog.module.d.ts +4 -1
  19. package/components/{dialog → legacy/dialog}/dialog.service.d.ts +3 -0
  20. package/components/{dialog → legacy/dialog}/error-dialog.component.d.ts +4 -1
  21. package/components/{dialog → legacy/dialog}/portal-dialog.component.d.ts +4 -1
  22. package/components/{notification → legacy/notification}/notification.module.d.ts +2 -2
  23. package/components/stepper/step.component.d.ts +20 -0
  24. package/components/stepper/stepper.component.d.ts +23 -0
  25. package/components/stepper/stepper.module.d.ts +11 -0
  26. package/esm2020/components/alert/alert.component.mjs +2 -2
  27. package/esm2020/components/button/button.component.mjs +7 -4
  28. package/esm2020/components/button/button.directives.mjs +129 -0
  29. package/esm2020/components/button/button.module.mjs +24 -3
  30. package/esm2020/components/button-group/button-group.component.mjs +2 -2
  31. package/esm2020/components/card/card-attribute/card-attribute.component.mjs +17 -0
  32. package/esm2020/components/card/card-author/card-author.component.mjs +15 -0
  33. package/esm2020/components/card/card-content/card-content.component.mjs +11 -0
  34. package/esm2020/components/card/card-footer/card-footer.component.mjs +29 -0
  35. package/esm2020/components/card/card-header/card-header.component.mjs +19 -0
  36. package/esm2020/components/card/card.component.mjs +27 -0
  37. package/esm2020/components/card/card.module.mjs +57 -0
  38. package/esm2020/components/dialog/dialog-confirm.component.mjs +56 -0
  39. package/esm2020/components/dialog/dialog-simple.component.mjs +46 -0
  40. package/esm2020/components/dialog/dialog.component.mjs +122 -0
  41. package/esm2020/components/dialog/dialogs.module.mjs +66 -0
  42. package/esm2020/components/icon-button/icon-button.component.mjs +6 -3
  43. package/esm2020/components/legacy/dialog/choice-dialog.component.mjs +107 -0
  44. package/esm2020/components/legacy/dialog/confirm-dialog.component.mjs +61 -0
  45. package/esm2020/components/legacy/dialog/dialog.module.mjs +82 -0
  46. package/esm2020/components/legacy/dialog/dialog.service.mjs +75 -0
  47. package/esm2020/components/legacy/dialog/error-dialog.component.mjs +52 -0
  48. package/esm2020/components/legacy/dialog/portal-dialog.component.mjs +109 -0
  49. package/esm2020/components/legacy/notification/notification/notification.component.mjs +74 -0
  50. package/esm2020/components/legacy/notification/notification/notification.model.mjs +9 -0
  51. package/esm2020/components/legacy/notification/notification-container/notification-container.component.mjs +98 -0
  52. package/esm2020/components/legacy/notification/notification-timer.service.mjs +29 -0
  53. package/esm2020/components/legacy/notification/notification.module.mjs +51 -0
  54. package/esm2020/components/legacy/notification/notification.service.mjs +36 -0
  55. package/esm2020/components/legacy/popover/popover-trigger.component.mjs +66 -0
  56. package/esm2020/components/legacy/popover/popover-trigger.directive.mjs +139 -0
  57. package/esm2020/components/{popover → legacy/popover}/popover.component.mjs +1 -1
  58. package/esm2020/components/{popover → legacy/popover}/popover.module.mjs +1 -1
  59. package/esm2020/components/stepper/step.component.mjs +52 -0
  60. package/esm2020/components/stepper/stepper.component.mjs +95 -0
  61. package/esm2020/components/stepper/stepper.module.mjs +37 -0
  62. package/esm2020/components/text-input/text-input.component.mjs +2 -2
  63. package/esm2020/public-api.mjs +31 -16
  64. package/fesm2015/flywheel-io-vision.mjs +962 -192
  65. package/fesm2015/flywheel-io-vision.mjs.map +1 -1
  66. package/fesm2020/flywheel-io-vision.mjs +951 -187
  67. package/fesm2020/flywheel-io-vision.mjs.map +1 -1
  68. package/package.json +1 -9
  69. package/public-api.d.ts +30 -15
  70. package/scss/config/general.scss +4 -0
  71. package/scss/config/typography.scss +1 -1
  72. package/scss/config/vision-colors.scss +2 -2
  73. package/styles.css +8 -4
  74. package/elements/README.md +0 -20
  75. package/elements/elements.d.ts +0 -3
  76. package/elements/index.d.ts +0 -5
  77. package/elements/polyfills.d.ts +0 -57
  78. package/elements/public-api.d.ts +0 -1
  79. package/esm2020/components/dialog/choice-dialog.component.mjs +0 -90
  80. package/esm2020/components/dialog/confirm-dialog.component.mjs +0 -54
  81. package/esm2020/components/dialog/dialog.module.mjs +0 -79
  82. package/esm2020/components/dialog/dialog.service.mjs +0 -72
  83. package/esm2020/components/dialog/error-dialog.component.mjs +0 -49
  84. package/esm2020/components/dialog/portal-dialog.component.mjs +0 -106
  85. package/esm2020/components/notification/notification/notification.component.mjs +0 -74
  86. package/esm2020/components/notification/notification/notification.model.mjs +0 -9
  87. package/esm2020/components/notification/notification-container/notification-container.component.mjs +0 -98
  88. package/esm2020/components/notification/notification-timer.service.mjs +0 -29
  89. package/esm2020/components/notification/notification.module.mjs +0 -51
  90. package/esm2020/components/notification/notification.service.mjs +0 -36
  91. package/esm2020/components/popover/popover-trigger.component.mjs +0 -66
  92. package/esm2020/components/popover/popover-trigger.directive.mjs +0 -139
  93. package/esm2020/elements/elements.mjs +0 -59
  94. package/esm2020/elements/flywheel-io-vision-elements.mjs +0 -5
  95. package/esm2020/elements/polyfills.mjs +0 -60
  96. package/esm2020/elements/public-api.mjs +0 -2
  97. package/fesm2015/flywheel-io-vision-elements.mjs +0 -83
  98. package/fesm2015/flywheel-io-vision-elements.mjs.map +0 -1
  99. package/fesm2020/flywheel-io-vision-elements.mjs +0 -83
  100. package/fesm2020/flywheel-io-vision-elements.mjs.map +0 -1
  101. /package/components/{notification → legacy/notification}/notification/notification.component.d.ts +0 -0
  102. /package/components/{notification → legacy/notification}/notification/notification.model.d.ts +0 -0
  103. /package/components/{notification → legacy/notification}/notification-container/notification-container.component.d.ts +0 -0
  104. /package/components/{notification → legacy/notification}/notification-timer.service.d.ts +0 -0
  105. /package/components/{notification → legacy/notification}/notification.service.d.ts +0 -0
  106. /package/components/{popover → legacy/popover}/popover-trigger.component.d.ts +0 -0
  107. /package/components/{popover → legacy/popover}/popover-trigger.directive.d.ts +0 -0
  108. /package/components/{popover → legacy/popover}/popover.component.d.ts +0 -0
  109. /package/components/{popover → legacy/popover}/popover.module.d.ts +0 -0
@@ -1,49 +0,0 @@
1
- import { Component, HostBinding, Inject } from '@angular/core';
2
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/dialog";
5
- import * as i2 from "@angular/material/button";
6
- import * as i3 from "../shared/pipes/translate.pipe";
7
- export class FwErrorDialogComponent {
8
- constructor(data, ref) {
9
- this.data = data;
10
- this.ref = ref;
11
- this.class = 'mat-dialog-component';
12
- this['test-id'] = 'error-dialog';
13
- this.message = this.data.message;
14
- this.ref.disableClose = false;
15
- }
16
- }
17
- FwErrorDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwErrorDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
18
- FwErrorDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwErrorDialogComponent, selector: "fw-error-dialog", host: { properties: { "attr.class": "this.class", "attr.test-id": "this['test-id']" } }, ngImport: i0, template: `
19
- <div mat-dialog-content>{{ message }}</div>
20
- <div mat-dialog-actions align="end">
21
- <button test-id="close-button" mat-stroked-button mat-dialog-close>
22
- {{ 'common.actions.close' | translate }}
23
- </button>
24
- </div>
25
- `, isInline: true, dependencies: [{ kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwErrorDialogComponent, decorators: [{
27
- type: Component,
28
- args: [{
29
- selector: 'fw-error-dialog',
30
- template: `
31
- <div mat-dialog-content>{{ message }}</div>
32
- <div mat-dialog-actions align="end">
33
- <button test-id="close-button" mat-stroked-button mat-dialog-close>
34
- {{ 'common.actions.close' | translate }}
35
- </button>
36
- </div>
37
- `,
38
- }]
39
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
40
- type: Inject,
41
- args: [MAT_DIALOG_DATA]
42
- }] }, { type: i1.MatDialogRef }]; }, propDecorators: { class: [{
43
- type: HostBinding,
44
- args: ['attr.class']
45
- }], 'test-id': [{
46
- type: HostBinding,
47
- args: ['attr.test-id']
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2RpYWxvZy9lcnJvci1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDOzs7OztBQWlCekUsTUFBTSxPQUFPLHNCQUFzQjtJQUtqQyxZQUNtQyxJQUF1QixFQUNoRCxHQUF5QztRQURoQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUNoRCxRQUFHLEdBQUgsR0FBRyxDQUFzQztRQU54QixVQUFLLEdBQUcsc0JBQXNCLENBQUM7UUFDN0IsZUFBUyxHQUFHLGNBQWMsQ0FBQztRQUNqRCxZQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFNakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLENBQUM7O21IQVZVLHNCQUFzQixrQkFNdkIsZUFBZTt1R0FOZCxzQkFBc0IsZ0pBVHZCOzs7Ozs7O0dBT1Q7MkZBRVUsc0JBQXNCO2tCQVhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRTs7Ozs7OztHQU9UO2lCQUNGOzswQkFPSSxNQUFNOzJCQUFDLGVBQWU7dUVBTEUsS0FBSztzQkFBL0IsV0FBVzt1QkFBQyxZQUFZO2dCQUNJLFNBQVM7c0JBQXJDLFdBQVc7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZ3RXJyb3JEaWFsb2dEYXRhIHtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1lcnJvci1kaWFsb2cnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgbWF0LWRpYWxvZy1jb250ZW50Pnt7IG1lc3NhZ2UgfX08L2Rpdj5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBhbGlnbj1cImVuZFwiPlxuICAgICAgPGJ1dHRvbiB0ZXN0LWlkPVwiY2xvc2UtYnV0dG9uXCIgbWF0LXN0cm9rZWQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2U+XG4gICAgICAgIHt7ICdjb21tb24uYWN0aW9ucy5jbG9zZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBGd0Vycm9yRGlhbG9nQ29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmNsYXNzJykgY2xhc3MgPSAnbWF0LWRpYWxvZy1jb21wb25lbnQnO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIudGVzdC1pZCcpICd0ZXN0LWlkJyA9ICdlcnJvci1kaWFsb2cnO1xuICBwdWJsaWMgbWVzc2FnZSA9IHRoaXMuZGF0YS5tZXNzYWdlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIGRhdGE6IEZ3RXJyb3JEaWFsb2dEYXRhLFxuICAgIHByaXZhdGUgcmVmOiBNYXREaWFsb2dSZWY8RndFcnJvckRpYWxvZ0NvbXBvbmVudD4sXG4gICkge1xuICAgIHRoaXMucmVmLmRpc2FibGVDbG9zZSA9IGZhbHNlO1xuICB9XG59XG4iXX0=
@@ -1,106 +0,0 @@
1
- import { ComponentPortal, TemplatePortal, } from '@angular/cdk/portal';
2
- import { Component, HostBinding, Inject, SimpleChange, } from '@angular/core';
3
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
4
- import { Subject } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "@angular/material/button";
9
- import * as i3 from "@angular/material/dialog";
10
- import * as i4 from "@angular/material/icon";
11
- import * as i5 from "@angular/cdk/portal";
12
- import * as i6 from "../shared/pipes/translate.pipe";
13
- export class FwPortalDialogComponent {
14
- constructor(data, viewContainerRef) {
15
- this.data = data;
16
- this.viewContainerRef = viewContainerRef;
17
- this.class = 'mat-dialog-component';
18
- this['test-id'] = 'portal-dialog';
19
- this.content = this.data.content;
20
- this.title = this.data.title;
21
- this.destroyed$ = new Subject();
22
- if (this.data.component) {
23
- this.portal = new ComponentPortal(this.data.component.type, this.viewContainerRef);
24
- }
25
- else if (this.data.template) {
26
- this.portal = new TemplatePortal(this.data.template, this.viewContainerRef);
27
- }
28
- else {
29
- throw new Error('One of [component, template] was not provided.');
30
- }
31
- }
32
- ngOnDestroy() {
33
- this.destroyed$.next(undefined);
34
- }
35
- attached(ref) {
36
- if (this.data.component) {
37
- ref = ref;
38
- if (this.data.component.outputs) {
39
- for (const [key, observer] of Object.entries(this.data.component.outputs)) {
40
- const output$ = ref[key];
41
- if (typeof output$?.pipe === 'function' && typeof output$.subscribe === 'function') {
42
- output$.pipe(takeUntil(this.destroyed$)).subscribe(observer);
43
- }
44
- }
45
- }
46
- if (this.data.component.inputs) {
47
- const changes = {};
48
- for (const [key, value] of Object.entries(this.data.component.inputs)) {
49
- ref.instance[key] = value;
50
- changes[key] = new SimpleChange(value, value, true);
51
- }
52
- ref.instance.ngOnChanges?.(changes);
53
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
54
- ref.changeDetectorRef.markForCheck();
55
- }
56
- }
57
- }
58
- }
59
- FwPortalDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwPortalDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
60
- FwPortalDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwPortalDialogComponent, selector: "fw-portal-dialog", host: { properties: { "attr.class": "this.class", "attr.test-id": "this['test-id']" } }, ngImport: i0, template: `
61
- <ng-container *ngIf="title">
62
- <h1 mat-dialog-title>{{ title }}</h1>
63
- <button test-id="dialog-close-corner" mat-icon-button mat-dialog-close>
64
- <mat-icon>close</mat-icon>
65
- </button>
66
- </ng-container>
67
- <mat-dialog-content>
68
- <p *ngIf="content" class="content">{{ content }}</p>
69
- <ng-template [cdkPortalOutlet]="portal" (attached)="attached($event)"></ng-template>
70
- </mat-dialog-content>
71
- <mat-dialog-actions align="end">
72
- <button test-id="dialog-close-button" mat-stroked-button mat-dialog-close>
73
- {{ 'common.actions.close' | translate }}
74
- </button>
75
- </mat-dialog-actions>
76
- `, isInline: true, styles: [":host{min-width:200px}.content{margin-bottom:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i3.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwPortalDialogComponent, decorators: [{
78
- type: Component,
79
- args: [{ selector: 'fw-portal-dialog', template: `
80
- <ng-container *ngIf="title">
81
- <h1 mat-dialog-title>{{ title }}</h1>
82
- <button test-id="dialog-close-corner" mat-icon-button mat-dialog-close>
83
- <mat-icon>close</mat-icon>
84
- </button>
85
- </ng-container>
86
- <mat-dialog-content>
87
- <p *ngIf="content" class="content">{{ content }}</p>
88
- <ng-template [cdkPortalOutlet]="portal" (attached)="attached($event)"></ng-template>
89
- </mat-dialog-content>
90
- <mat-dialog-actions align="end">
91
- <button test-id="dialog-close-button" mat-stroked-button mat-dialog-close>
92
- {{ 'common.actions.close' | translate }}
93
- </button>
94
- </mat-dialog-actions>
95
- `, styles: [":host{min-width:200px}.content{margin-bottom:30px}\n"] }]
96
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
97
- type: Inject,
98
- args: [MAT_DIALOG_DATA]
99
- }] }, { type: i0.ViewContainerRef }]; }, propDecorators: { class: [{
100
- type: HostBinding,
101
- args: ['attr.class']
102
- }], 'test-id': [{
103
- type: HostBinding,
104
- args: ['attr.test-id']
105
- }] } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9kaWFsb2cvcG9ydGFsLWRpYWxvZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGVBQWUsRUFHZixjQUFjLEdBQ2YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsU0FBUyxFQUdULFdBQVcsRUFDWCxNQUFNLEVBRU4sWUFBWSxHQUliLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUE0QzNDLE1BQU0sT0FBTyx1QkFBdUI7SUFTbEMsWUFDbUMsSUFBd0IsRUFDakQsZ0JBQWtDO1FBRFQsU0FBSSxHQUFKLElBQUksQ0FBb0I7UUFDakQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQVZqQixVQUFLLEdBQUcsc0JBQXNCLENBQUM7UUFDN0IsZUFBUyxHQUFHLGVBQWUsQ0FBQztRQUN6RCxZQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFNUIsVUFBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRWhCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBTWpDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDcEY7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDN0U7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUErQjtRQUN0QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ3ZCLEdBQUcsR0FBRyxHQUEwQixDQUFDO1lBQ2pDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFO2dCQUMvQixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDekUsTUFBTSxPQUFPLEdBQTBCLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDaEQsSUFBSSxPQUFPLE9BQU8sRUFBRSxJQUFJLEtBQUssVUFBVSxJQUFJLE9BQU8sT0FBTyxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUU7d0JBQ2xGLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztxQkFDOUQ7aUJBQ0Y7YUFDRjtZQUNELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFO2dCQUM5QixNQUFNLE9BQU8sR0FBa0IsRUFBRSxDQUFDO2dCQUNsQyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFDckUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7b0JBQzFCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLFlBQVksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2lCQUNyRDtnQkFDRCxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNwQyx5RUFBeUU7Z0JBQ3pFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUN0QztTQUNGO0lBQ0gsQ0FBQzs7b0hBaERVLHVCQUF1QixrQkFVeEIsZUFBZTt3R0FWZCx1QkFBdUIsaUpBM0J4Qjs7Ozs7Ozs7Ozs7Ozs7OztHQWdCVDsyRkFXVSx1QkFBdUI7a0JBN0JuQyxTQUFTOytCQUNFLGtCQUFrQixZQUNsQjs7Ozs7Ozs7Ozs7Ozs7OztHQWdCVDs7MEJBcUJFLE1BQU07MkJBQUMsZUFBZTsyRUFURSxLQUFLO3NCQUEvQixXQUFXO3VCQUFDLFlBQVk7Z0JBQ0ksU0FBUztzQkFBckMsV0FBVzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgQ29tcG9uZW50VHlwZSxcbiAgUG9ydGFsLFxuICBUZW1wbGF0ZVBvcnRhbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZSxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW50ZXJmYWNlIENvbXBvbmVudFNwZWMge1xuICB0eXBlOiBDb21wb25lbnRUeXBlPHVua25vd24+LFxuICBpbnB1dHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBvdXRwdXRzPzogUmVjb3JkPHN0cmluZywgKHZhbHVlOiB1bmtub3duKSA9PiB2b2lkPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZ3UG9ydGFsRGlhbG9nRGF0YSB7XG4gIGNvbXBvbmVudD86IENvbXBvbmVudFNwZWM7XG4gIGNvbnRlbnQ/OiBzdHJpbmc7XG4gIHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gIHRpdGxlPzogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1wb3J0YWwtZGlhbG9nJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGl0bGVcIj5cbiAgICAgIDxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IHRpdGxlIH19PC9oMT5cbiAgICAgIDxidXR0b24gdGVzdC1pZD1cImRpYWxvZy1jbG9zZS1jb3JuZXJcIiBtYXQtaWNvbi1idXR0b24gbWF0LWRpYWxvZy1jbG9zZT5cbiAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8cCAqbmdJZj1cImNvbnRlbnRcIiBjbGFzcz1cImNvbnRlbnRcIj57eyBjb250ZW50IH19PC9wPlxuICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwicG9ydGFsXCIgKGF0dGFjaGVkKT1cImF0dGFjaGVkKCRldmVudClcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxtYXQtZGlhbG9nLWFjdGlvbnMgYWxpZ249XCJlbmRcIj5cbiAgICAgIDxidXR0b24gdGVzdC1pZD1cImRpYWxvZy1jbG9zZS1idXR0b25cIiBtYXQtc3Ryb2tlZC1idXR0b24gbWF0LWRpYWxvZy1jbG9zZT5cbiAgICAgICAge3sgJ2NvbW1vbi5hY3Rpb25zLmNsb3NlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICA6aG9zdCB7XG4gICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICBgXSxcbn0pXG5leHBvcnQgY2xhc3MgRndQb3J0YWxEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuY2xhc3MnKSBjbGFzcyA9ICdtYXQtZGlhbG9nLWNvbXBvbmVudCc7XG4gIEBIb3N0QmluZGluZygnYXR0ci50ZXN0LWlkJykgJ3Rlc3QtaWQnID0gJ3BvcnRhbC1kaWFsb2cnO1xuICBjb250ZW50ID0gdGhpcy5kYXRhLmNvbnRlbnQ7XG4gIHBvcnRhbDogUG9ydGFsPHVua25vd24+O1xuICB0aXRsZSA9IHRoaXMuZGF0YS50aXRsZTtcblxuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIGRhdGE6IEZ3UG9ydGFsRGlhbG9nRGF0YSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICkge1xuICAgIGlmICh0aGlzLmRhdGEuY29tcG9uZW50KSB7XG4gICAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5kYXRhLmNvbXBvbmVudC50eXBlLCB0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhLnRlbXBsYXRlKSB7XG4gICAgICB0aGlzLnBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLmRhdGEudGVtcGxhdGUsIHRoaXMudmlld0NvbnRhaW5lclJlZik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignT25lIG9mIFtjb21wb25lbnQsIHRlbXBsYXRlXSB3YXMgbm90IHByb3ZpZGVkLicpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KHVuZGVmaW5lZCk7XG4gIH1cblxuICBhdHRhY2hlZChyZWY6IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGF0YS5jb21wb25lbnQpIHtcbiAgICAgIHJlZiA9IHJlZiBhcyBDb21wb25lbnRSZWY8bmV2ZXI+O1xuICAgICAgaWYgKHRoaXMuZGF0YS5jb21wb25lbnQub3V0cHV0cykge1xuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIG9ic2VydmVyXSBvZiBPYmplY3QuZW50cmllcyh0aGlzLmRhdGEuY29tcG9uZW50Lm91dHB1dHMpKSB7XG4gICAgICAgICAgY29uc3Qgb3V0cHV0JDogRXZlbnRFbWl0dGVyPHVua25vd24+ID0gcmVmW2tleV07XG4gICAgICAgICAgaWYgKHR5cGVvZiBvdXRwdXQkPy5waXBlID09PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBvdXRwdXQkLnN1YnNjcmliZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgb3V0cHV0JC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUob2JzZXJ2ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuZGF0YS5jb21wb25lbnQuaW5wdXRzKSB7XG4gICAgICAgIGNvbnN0IGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMgPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModGhpcy5kYXRhLmNvbXBvbmVudC5pbnB1dHMpKSB7XG4gICAgICAgICAgcmVmLmluc3RhbmNlW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICBjaGFuZ2VzW2tleV0gPSBuZXcgU2ltcGxlQ2hhbmdlKHZhbHVlLCB2YWx1ZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmVmLmluc3RhbmNlLm5nT25DaGFuZ2VzPy4oY2hhbmdlcyk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9uby1leHBsaWNpdC1jaGFuZ2UtZGV0ZWN0aW9uLWFwaXNcbiAgICAgICAgcmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -1,74 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewEncapsulation, } from '@angular/core';
2
- import { FwNotificationTimerService } from '../notification-timer.service';
3
- import { FwNotificationType } from './notification.model';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../notification-timer.service";
6
- export class FwNotificationComponent {
7
- constructor(cdr, timerService) {
8
- this.cdr = cdr;
9
- this.timerService = timerService;
10
- this.notificationDuration = 9000;
11
- this.ready = new EventEmitter();
12
- this.dismiss = new EventEmitter();
13
- }
14
- get cssClass() {
15
- let cssClass = 'fw-notification';
16
- switch (this.notification?.type) {
17
- case FwNotificationType.Error:
18
- return cssClass += ' error';
19
- case FwNotificationType.Info:
20
- return cssClass += ' info';
21
- case FwNotificationType.Success:
22
- return cssClass += ' success';
23
- case FwNotificationType.Wait:
24
- return cssClass += ' wait';
25
- case FwNotificationType.Warning:
26
- return cssClass += ' warning';
27
- default:
28
- return cssClass;
29
- }
30
- }
31
- onClickDismiss() {
32
- this.dismiss.emit(this.notification.id);
33
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
34
- this.cdr.markForCheck();
35
- }
36
- ngAfterViewInit() {
37
- this.ready.emit(this);
38
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
39
- this.cdr.markForCheck();
40
- }
41
- startTimer() {
42
- this.timerService.start(this.notificationDuration).then(() => {
43
- this.onClickDismiss();
44
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
45
- this.cdr.markForCheck();
46
- });
47
- }
48
- stopTimer() {
49
- this.timerService.stop();
50
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
51
- this.cdr.markForCheck();
52
- }
53
- }
54
- FwNotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FwNotificationTimerService }], target: i0.ɵɵFactoryTarget.Component });
55
- FwNotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwNotificationComponent, selector: "fw-notification", inputs: { notification: "notification", notificationDuration: "notificationDuration" }, outputs: { ready: "ready", dismiss: "dismiss" }, host: { listeners: { "click": "onClickDismiss()" }, properties: { "class": "this.cssClass" } }, providers: [FwNotificationTimerService], ngImport: i0, template: '{{ notification?.message }}', isInline: true, styles: ["fw-notification{display:block;border-radius:4px;box-sizing:border-box;margin:5px 24px;max-width:33vw;min-width:344px;padding:14px 16px;transform-origin:center;background-color:#2f96b4;border:1px solid rgba(255,255,255,.7019607843);box-shadow:0 0 12px #999;color:#fff;opacity:.99;white-space:pre-wrap}fw-notification.error{background-color:#bd362f}fw-notification.info{background-color:#2f96b4}fw-notification.success{background-color:#51a351}fw-notification.wait{background-color:#2f96b4}fw-notification.warning{background-color:#f89406}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationComponent, decorators: [{
57
- type: Component,
58
- args: [{ selector: 'fw-notification', template: '{{ notification?.message }}', providers: [FwNotificationTimerService], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["fw-notification{display:block;border-radius:4px;box-sizing:border-box;margin:5px 24px;max-width:33vw;min-width:344px;padding:14px 16px;transform-origin:center;background-color:#2f96b4;border:1px solid rgba(255,255,255,.7019607843);box-shadow:0 0 12px #999;color:#fff;opacity:.99;white-space:pre-wrap}fw-notification.error{background-color:#bd362f}fw-notification.info{background-color:#2f96b4}fw-notification.success{background-color:#51a351}fw-notification.wait{background-color:#2f96b4}fw-notification.warning{background-color:#f89406}\n"] }]
59
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FwNotificationTimerService }]; }, propDecorators: { notification: [{
60
- type: Input
61
- }], notificationDuration: [{
62
- type: Input
63
- }], ready: [{
64
- type: Output
65
- }], dismiss: [{
66
- type: Output
67
- }], cssClass: [{
68
- type: HostBinding,
69
- args: ['class']
70
- }], onClickDismiss: [{
71
- type: HostListener,
72
- args: ['click']
73
- }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQWdCLE1BQU0sc0JBQXNCLENBQUM7OztBQVd4RSxNQUFNLE9BQU8sdUJBQXVCO0lBOEJsQyxZQUFvQixHQUFzQixFQUFVLFlBQXdDO1FBQXhFLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQTRCO1FBNUJuRix5QkFBb0IsR0FBVyxJQUFJLENBQUM7UUFDbkMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUEyQixDQUFDO1FBQ3BELFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBMkIvQyxDQUFDO0lBekJELElBQTBCLFFBQVE7UUFDaEMsSUFBSSxRQUFRLEdBQUcsaUJBQWlCLENBQUM7UUFDakMsUUFBUSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRTtZQUMvQixLQUFLLGtCQUFrQixDQUFDLEtBQUs7Z0JBQzNCLE9BQU8sUUFBUSxJQUFJLFFBQVEsQ0FBQztZQUM5QixLQUFLLGtCQUFrQixDQUFDLElBQUk7Z0JBQzFCLE9BQU8sUUFBUSxJQUFJLE9BQU8sQ0FBQztZQUM3QixLQUFLLGtCQUFrQixDQUFDLE9BQU87Z0JBQzdCLE9BQU8sUUFBUSxJQUFJLFVBQVUsQ0FBQztZQUNoQyxLQUFLLGtCQUFrQixDQUFDLElBQUk7Z0JBQzFCLE9BQU8sUUFBUSxJQUFJLE9BQU8sQ0FBQztZQUM3QixLQUFLLGtCQUFrQixDQUFDLE9BQU87Z0JBQzdCLE9BQU8sUUFBUSxJQUFJLFVBQVUsQ0FBQztZQUNoQztnQkFDRSxPQUFPLFFBQVEsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFc0IsY0FBYztRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFLRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIseUVBQXlFO1FBQ3pFLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzNELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0Qix5RUFBeUU7WUFDekUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6Qix5RUFBeUU7UUFDekUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDOztvSEFuRFUsdUJBQXVCO3dHQUF2Qix1QkFBdUIsbVJBTHZCLENBQUMsMEJBQTBCLENBQUMsMEJBRDdCLDZCQUE2QjsyRkFNNUIsdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNFLGlCQUFpQixZQUVqQiw2QkFBNkIsYUFDNUIsQ0FBQywwQkFBMEIsQ0FBQyxpQkFDeEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTtpSkFJdEMsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBRW1CLFFBQVE7c0JBQWpDLFdBQVc7dUJBQUMsT0FBTztnQkFrQkcsY0FBYztzQkFBcEMsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGd05vdGlmaWNhdGlvblRpbWVyU2VydmljZSB9IGZyb20gJy4uL25vdGlmaWNhdGlvbi10aW1lci5zZXJ2aWNlJztcbmltcG9ydCB7IEZ3Tm90aWZpY2F0aW9uVHlwZSwgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1ub3RpZmljYXRpb24nLFxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGU6ICd7eyBub3RpZmljYXRpb24/Lm1lc3NhZ2UgfX0nLFxuICBwcm92aWRlcnM6IFtGd05vdGlmaWNhdGlvblRpbWVyU2VydmljZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcblxuZXhwb3J0IGNsYXNzIEZ3Tm90aWZpY2F0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uO1xuICBASW5wdXQoKSBub3RpZmljYXRpb25EdXJhdGlvbjogbnVtYmVyID0gOTAwMDtcbiAgQE91dHB1dCgpIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxGd05vdGlmaWNhdGlvbkNvbXBvbmVudD4oKTtcbiAgQE91dHB1dCgpIGRpc21pc3MgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IGNzc0NsYXNzKCk6IHN0cmluZyB7XG4gICAgbGV0IGNzc0NsYXNzID0gJ2Z3LW5vdGlmaWNhdGlvbic7XG4gICAgc3dpdGNoICh0aGlzLm5vdGlmaWNhdGlvbj8udHlwZSkge1xuICAgICAgY2FzZSBGd05vdGlmaWNhdGlvblR5cGUuRXJyb3I6XG4gICAgICAgIHJldHVybiBjc3NDbGFzcyArPSAnIGVycm9yJztcbiAgICAgIGNhc2UgRndOb3RpZmljYXRpb25UeXBlLkluZm86XG4gICAgICAgIHJldHVybiBjc3NDbGFzcyArPSAnIGluZm8nO1xuICAgICAgY2FzZSBGd05vdGlmaWNhdGlvblR5cGUuU3VjY2VzczpcbiAgICAgICAgcmV0dXJuIGNzc0NsYXNzICs9ICcgc3VjY2Vzcyc7XG4gICAgICBjYXNlIEZ3Tm90aWZpY2F0aW9uVHlwZS5XYWl0OlxuICAgICAgICByZXR1cm4gY3NzQ2xhc3MgKz0gJyB3YWl0JztcbiAgICAgIGNhc2UgRndOb3RpZmljYXRpb25UeXBlLldhcm5pbmc6XG4gICAgICAgIHJldHVybiBjc3NDbGFzcyArPSAnIHdhcm5pbmcnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGNzc0NsYXNzO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgb25DbGlja0Rpc21pc3MoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNtaXNzLmVtaXQodGhpcy5ub3RpZmljYXRpb24uaWQpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9uby1leHBsaWNpdC1jaGFuZ2UtZGV0ZWN0aW9uLWFwaXNcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSB0aW1lclNlcnZpY2U6IEZ3Tm90aWZpY2F0aW9uVGltZXJTZXJ2aWNlKSB7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWFkeS5lbWl0KHRoaXMpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9uby1leHBsaWNpdC1jaGFuZ2UtZGV0ZWN0aW9uLWFwaXNcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHN0YXJ0VGltZXIoKTogdm9pZCB7XG4gICAgdGhpcy50aW1lclNlcnZpY2Uuc3RhcnQodGhpcy5ub3RpZmljYXRpb25EdXJhdGlvbikudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLm9uQ2xpY2tEaXNtaXNzKCk7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHJ4LWFuZ3VsYXIvbm8tZXhwbGljaXQtY2hhbmdlLWRldGVjdGlvbi1hcGlzXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIHN0b3BUaW1lcigpOiB2b2lkIHtcbiAgICB0aGlzLnRpbWVyU2VydmljZS5zdG9wKCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEByeC1hbmd1bGFyL25vLWV4cGxpY2l0LWNoYW5nZS1kZXRlY3Rpb24tYXBpc1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbn1cbiJdfQ==
@@ -1,9 +0,0 @@
1
- export var FwNotificationType;
2
- (function (FwNotificationType) {
3
- FwNotificationType["Error"] = "error";
4
- FwNotificationType["Info"] = "info";
5
- FwNotificationType["Success"] = "success";
6
- FwNotificationType["Wait"] = "wait";
7
- FwNotificationType["Warning"] = "warning";
8
- })(FwNotificationType || (FwNotificationType = {}));
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksa0JBTVg7QUFORCxXQUFZLGtCQUFrQjtJQUM1QixxQ0FBZSxDQUFBO0lBQ2YsbUNBQWEsQ0FBQTtJQUNiLHlDQUFtQixDQUFBO0lBQ25CLG1DQUFhLENBQUE7SUFDYix5Q0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBTlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQU03QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZ3Tm90aWZpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcblxuZXhwb3J0IGVudW0gRndOb3RpZmljYXRpb25UeXBlIHtcbiAgRXJyb3IgPSAnZXJyb3InLFxuICBJbmZvID0gJ2luZm8nLFxuICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxuICBXYWl0ID0gJ3dhaXQnLFxuICBXYXJuaW5nID0gJ3dhcm5pbmcnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vdGlmaWNhdGlvbiB7XG4gIGlkPzogc3RyaW5nXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICB0eXBlOiBGd05vdGlmaWNhdGlvblR5cGVcbiAgcmVmPzogRndOb3RpZmljYXRpb25Db21wb25lbnRcbn0iXX0=
@@ -1,98 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation, } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../notification.service";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "../../button/button.component";
7
- import * as i4 from "@angular/material/icon";
8
- import * as i5 from "../notification/notification.component";
9
- export class FwNotificationContainerComponent {
10
- constructor(cdr, notificationService) {
11
- this.cdr = cdr;
12
- this.notificationService = notificationService;
13
- this.limit = 3;
14
- this.notifications = [];
15
- this.expanded = false;
16
- this.subscriptions = {
17
- notifications: Subscription.EMPTY,
18
- };
19
- this.subscriptions.notifications = this.notificationService.notifications$.subscribe((notifications) => {
20
- this.notifications = notifications;
21
- if (notifications.length === 0) {
22
- this.expanded = false;
23
- }
24
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
25
- this.cdr.markForCheck();
26
- });
27
- }
28
- get classes() {
29
- return [
30
- 'fw-notification-container',
31
- this.notifications.length === 2 ? 'duo' : null,
32
- this.notifications.length >= 3 ? 'triple' : null,
33
- ].filter(Boolean).join(' ');
34
- }
35
- ;
36
- ngOnDestroy() {
37
- for (const subscription of Object.values(this.subscriptions)) {
38
- subscription.unsubscribe();
39
- }
40
- }
41
- notificationClass(index) {
42
- let cssClass;
43
- const level = this.notifications.length > this.limit
44
- ? index - (this.notifications.length - this.limit)
45
- : index;
46
- if (this.expanded) {
47
- cssClass = 'default';
48
- }
49
- else {
50
- cssClass = level >= 0 ? `level-${level}` : 'hidden';
51
- }
52
- return cssClass;
53
- }
54
- getEmptyNotification(notification) {
55
- return { ...notification, message: ' ' }; // take up a line but show no content
56
- }
57
- onReady(notification) {
58
- const currentNotification = this.notifications[this.notifications.length - 1];
59
- currentNotification.ref = notification;
60
- notification.startTimer();
61
- }
62
- onDismiss(notificationId) {
63
- const notification = this.notifications.find(currentNotification => currentNotification.id === notificationId);
64
- if (notification?.ref) {
65
- notification.ref.stopTimer();
66
- }
67
- if (notification?.id) {
68
- this.notificationService.dismiss(notification.id);
69
- }
70
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
71
- this.cdr.markForCheck();
72
- }
73
- clearAll() {
74
- this.notificationService.dismissAll();
75
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
76
- this.cdr.markForCheck();
77
- }
78
- onShowMore() {
79
- this.expanded = true;
80
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
81
- this.cdr.markForCheck();
82
- }
83
- onShowLess() {
84
- this.expanded = false;
85
- // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
86
- this.cdr.markForCheck();
87
- }
88
- }
89
- FwNotificationContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationContainerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FwNotificationService }], target: i0.ɵɵFactoryTarget.Component });
90
- FwNotificationContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwNotificationContainerComponent, selector: "fw-notification-container", host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: "<div role=\"list\">\n <fw-notification *ngFor=\"let notification of notifications; index as $index\"\n (ready)=\"onReady($event)\"\n (dismiss)=\"onDismiss($event)\"\n [class]=\"notificationClass($index)\"\n [notification]=\"expanded || $index === notifications.length - 1 ? notification : getEmptyNotification(notification)\"\n [attr.aria-label]=\"notification.type + ' : ' + notification.message\"\n role=\"listitem\"\n ></fw-notification>\n <div class=\"buttons\">\n <fw-button *ngIf=\"expanded\" (click)=\"onShowLess()\" mat-button aria-label=\"show less\" layout=\"compact\" size=\"small\">\n <mat-icon>expand_less</mat-icon>\n </fw-button>\n <fw-button *ngIf=\"!expanded && notifications.length > 1\" (click)=\"onShowMore()\" mat-button aria-label=\"show more\" layout=\"compact\" size=\"small\">\n <mat-icon>expand_more</mat-icon>\n </fw-button>\n <fw-button (click)=\"clearAll()\" mat-button class=\"clear-all\" aria-label=\"clear all\" layout=\"compact\" size=\"small\">\n Clear All\n </fw-button>\n </div>\n</div>\n", styles: ["fw-notification-container{position:absolute;right:0;top:0;margin-top:20px;z-index:999999}fw-notification-container>div{display:flex;flex-direction:column-reverse}fw-notification-container .buttons{display:none;position:absolute;top:-5px;right:25px}fw-notification-container .buttons button{color:#fff;background-color:#919292;margin-left:2px}fw-notification-container .buttons button.mat-button{line-height:24px!important;margin:0 0 0 2px!important}fw-notification-container:hover .buttons{display:flex}fw-notification-container .hidden{display:none}fw-notification-container fw-notification:last-of-type{margin-top:24px}fw-notification-container.duo fw-notification.level-0{transform:scale(.95) translateY(-51px)}fw-notification-container.triple fw-notification.level-1{transform:scale(.95) translateY(-51px)}fw-notification-container.triple fw-notification.level-0{transform:scale(.9) translateY(-108px)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.FwButtonComponent, selector: "fw-button", inputs: ["color", "size", "type", "disabled", "leftIcon", "rightIcon"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FwNotificationComponent, selector: "fw-notification", inputs: ["notification", "notificationDuration"], outputs: ["ready", "dismiss"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationContainerComponent, decorators: [{
92
- type: Component,
93
- args: [{ selector: 'fw-notification-container', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div role=\"list\">\n <fw-notification *ngFor=\"let notification of notifications; index as $index\"\n (ready)=\"onReady($event)\"\n (dismiss)=\"onDismiss($event)\"\n [class]=\"notificationClass($index)\"\n [notification]=\"expanded || $index === notifications.length - 1 ? notification : getEmptyNotification(notification)\"\n [attr.aria-label]=\"notification.type + ' : ' + notification.message\"\n role=\"listitem\"\n ></fw-notification>\n <div class=\"buttons\">\n <fw-button *ngIf=\"expanded\" (click)=\"onShowLess()\" mat-button aria-label=\"show less\" layout=\"compact\" size=\"small\">\n <mat-icon>expand_less</mat-icon>\n </fw-button>\n <fw-button *ngIf=\"!expanded && notifications.length > 1\" (click)=\"onShowMore()\" mat-button aria-label=\"show more\" layout=\"compact\" size=\"small\">\n <mat-icon>expand_more</mat-icon>\n </fw-button>\n <fw-button (click)=\"clearAll()\" mat-button class=\"clear-all\" aria-label=\"clear all\" layout=\"compact\" size=\"small\">\n Clear All\n </fw-button>\n </div>\n</div>\n", styles: ["fw-notification-container{position:absolute;right:0;top:0;margin-top:20px;z-index:999999}fw-notification-container>div{display:flex;flex-direction:column-reverse}fw-notification-container .buttons{display:none;position:absolute;top:-5px;right:25px}fw-notification-container .buttons button{color:#fff;background-color:#919292;margin-left:2px}fw-notification-container .buttons button.mat-button{line-height:24px!important;margin:0 0 0 2px!important}fw-notification-container:hover .buttons{display:flex}fw-notification-container .hidden{display:none}fw-notification-container fw-notification:last-of-type{margin-top:24px}fw-notification-container.duo fw-notification.level-0{transform:scale(.95) translateY(-51px)}fw-notification-container.triple fw-notification.level-1{transform:scale(.95) translateY(-51px)}fw-notification-container.triple fw-notification.level-0{transform:scale(.9) translateY(-108px)}\n"] }]
94
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FwNotificationService }]; }, propDecorators: { classes: [{
95
- type: HostBinding,
96
- args: ['attr.class']
97
- }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLWNvbnRhaW5lci9ub3RpZmljYXRpb24tY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24tY29udGFpbmVyL25vdGlmaWNhdGlvbi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsV0FBVyxFQUVYLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBYXBDLE1BQU0sT0FBTyxnQ0FBZ0M7SUFpQjNDLFlBQW9CLEdBQXNCLEVBQVUsbUJBQTBDO1FBQTFFLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF1QjtRQVI5RixVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1Ysa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ25DLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFVCxrQkFBYSxHQUFHO1lBQ3RCLGFBQWEsRUFBRSxZQUFZLENBQUMsS0FBSztTQUNsQyxDQUFDO1FBR0EsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxhQUE2QixFQUFFLEVBQUU7WUFDckgsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7WUFDbkMsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7YUFDdkI7WUFDRCx5RUFBeUU7WUFDekUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUF6QkQsSUFBK0IsT0FBTztRQUNwQyxPQUFPO1lBQ0wsMkJBQTJCO1lBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQzlDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJO1NBQ2pELENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQUEsQ0FBQztJQXFCRixXQUFXO1FBQ1QsS0FBSyxNQUFNLFlBQVksSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM1RCxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixJQUFJLFFBQWdCLENBQUM7UUFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUs7WUFDbEQsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDbEQsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUVWLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixRQUFRLEdBQUcsU0FBUyxDQUFDO1NBQ3RCO2FBQU07WUFDTCxRQUFRLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBVSxLQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3ZEO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELG9CQUFvQixDQUFDLFlBQTBCO1FBQzdDLE9BQU8sRUFBRSxHQUFHLFlBQVksRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxxQ0FBcUM7SUFDakYsQ0FBQztJQUVELE9BQU8sQ0FBQyxZQUFxQztRQUMzQyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDOUUsbUJBQW1CLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQztRQUN2QyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFNBQVMsQ0FBQyxjQUFzQjtRQUM5QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxLQUFLLGNBQWMsQ0FBQyxDQUFDO1FBQy9HLElBQUksWUFBWSxFQUFFLEdBQUcsRUFBRTtZQUNyQixZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQzlCO1FBQ0QsSUFBSSxZQUFZLEVBQUUsRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25EO1FBQ0QseUVBQXlFO1FBQ3pFLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEMseUVBQXlFO1FBQ3pFLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQix5RUFBeUU7UUFDekUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7OzZIQXZGVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyx5SENyQjdDLHlqQ0FxQkE7MkZEQWEsZ0NBQWdDO2tCQVA1QyxTQUFTOytCQUNFLDJCQUEyQixpQkFHdEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs0SUFHaEIsT0FBTztzQkFBckMsV0FBVzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGd05vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGd05vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1ub3RpZmljYXRpb24tY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24tY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGd05vdGlmaWNhdGlvbkNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBIb3N0QmluZGluZygnYXR0ci5jbGFzcycpIGdldCBjbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdmdy1ub3RpZmljYXRpb24tY29udGFpbmVyJyxcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5sZW5ndGggPT09IDIgPyAnZHVvJyA6IG51bGwsXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMubGVuZ3RoID49IDMgPyAndHJpcGxlJyA6IG51bGwsXG4gICAgXS5maWx0ZXIoQm9vbGVhbikuam9pbignICcpO1xuICB9O1xuXG4gIGxpbWl0ID0gMztcbiAgbm90aWZpY2F0aW9uczogTm90aWZpY2F0aW9uW10gPSBbXTtcbiAgZXhwYW5kZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbnMgPSB7XG4gICAgbm90aWZpY2F0aW9uczogU3Vic2NyaXB0aW9uLkVNUFRZLFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBGd05vdGlmaWNhdGlvblNlcnZpY2UpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubm90aWZpY2F0aW9ucyA9IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5ub3RpZmljYXRpb25zJC5zdWJzY3JpYmUoKG5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbltdKSA9PiB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMgPSBub3RpZmljYXRpb25zO1xuICAgICAgaWYgKG5vdGlmaWNhdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9uby1leHBsaWNpdC1jaGFuZ2UtZGV0ZWN0aW9uLWFwaXNcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBzdWJzY3JpcHRpb24gb2YgT2JqZWN0LnZhbHVlcyh0aGlzLnN1YnNjcmlwdGlvbnMpKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBub3RpZmljYXRpb25DbGFzcyhpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBsZXQgY3NzQ2xhc3M6IHN0cmluZztcbiAgICBjb25zdCBsZXZlbCA9IHRoaXMubm90aWZpY2F0aW9ucy5sZW5ndGggPiB0aGlzLmxpbWl0XG4gICAgICA/IGluZGV4IC0gKHRoaXMubm90aWZpY2F0aW9ucy5sZW5ndGggLSB0aGlzLmxpbWl0KVxuICAgICAgOiBpbmRleDtcblxuICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICBjc3NDbGFzcyA9ICdkZWZhdWx0JztcbiAgICB9IGVsc2Uge1xuICAgICAgY3NzQ2xhc3MgPSBsZXZlbCA+PSAwID8gYGxldmVsLSR7IGxldmVsIH1gIDogJ2hpZGRlbic7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc0NsYXNzO1xuICB9XG5cbiAgZ2V0RW1wdHlOb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pOiBOb3RpZmljYXRpb24ge1xuICAgIHJldHVybiB7IC4uLm5vdGlmaWNhdGlvbiwgbWVzc2FnZTogJyAnIH07IC8vIHRha2UgdXAgYSBsaW5lIGJ1dCBzaG93IG5vIGNvbnRlbnRcbiAgfVxuXG4gIG9uUmVhZHkobm90aWZpY2F0aW9uOiBGd05vdGlmaWNhdGlvbkNvbXBvbmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnROb3RpZmljYXRpb24gPSB0aGlzLm5vdGlmaWNhdGlvbnNbdGhpcy5ub3RpZmljYXRpb25zLmxlbmd0aCAtIDFdO1xuICAgIGN1cnJlbnROb3RpZmljYXRpb24ucmVmID0gbm90aWZpY2F0aW9uO1xuICAgIG5vdGlmaWNhdGlvbi5zdGFydFRpbWVyKCk7XG4gIH1cblxuICBvbkRpc21pc3Mobm90aWZpY2F0aW9uSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IHRoaXMubm90aWZpY2F0aW9ucy5maW5kKGN1cnJlbnROb3RpZmljYXRpb24gPT4gY3VycmVudE5vdGlmaWNhdGlvbi5pZCA9PT0gbm90aWZpY2F0aW9uSWQpO1xuICAgIGlmIChub3RpZmljYXRpb24/LnJlZikge1xuICAgICAgbm90aWZpY2F0aW9uLnJlZi5zdG9wVGltZXIoKTtcbiAgICB9XG4gICAgaWYgKG5vdGlmaWNhdGlvbj8uaWQpIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5kaXNtaXNzKG5vdGlmaWNhdGlvbi5pZCk7XG4gICAgfVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9uby1leHBsaWNpdC1jaGFuZ2UtZGV0ZWN0aW9uLWFwaXNcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIGNsZWFyQWxsKCk6IHZvaWQge1xuICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5kaXNtaXNzQWxsKCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEByeC1hbmd1bGFyL25vLWV4cGxpY2l0LWNoYW5nZS1kZXRlY3Rpb24tYXBpc1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25TaG93TW9yZSgpOiB2b2lkIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHJ4LWFuZ3VsYXIvbm8tZXhwbGljaXQtY2hhbmdlLWRldGVjdGlvbi1hcGlzXG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvblNob3dMZXNzKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSBmYWxzZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHJ4LWFuZ3VsYXIvbm8tZXhwbGljaXQtY2hhbmdlLWRldGVjdGlvbi1hcGlzXG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiIsIjxkaXYgcm9sZT1cImxpc3RcIj5cbiAgPGZ3LW5vdGlmaWNhdGlvbiAqbmdGb3I9XCJsZXQgbm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnM7IGluZGV4IGFzICRpbmRleFwiXG4gICAgKHJlYWR5KT1cIm9uUmVhZHkoJGV2ZW50KVwiXG4gICAgKGRpc21pc3MpPVwib25EaXNtaXNzKCRldmVudClcIlxuICAgIFtjbGFzc109XCJub3RpZmljYXRpb25DbGFzcygkaW5kZXgpXCJcbiAgICBbbm90aWZpY2F0aW9uXT1cImV4cGFuZGVkIHx8ICRpbmRleCA9PT0gbm90aWZpY2F0aW9ucy5sZW5ndGggLSAxID8gbm90aWZpY2F0aW9uIDogZ2V0RW1wdHlOb3RpZmljYXRpb24obm90aWZpY2F0aW9uKVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJub3RpZmljYXRpb24udHlwZSArICcgOiAnICsgbm90aWZpY2F0aW9uLm1lc3NhZ2VcIlxuICAgIHJvbGU9XCJsaXN0aXRlbVwiXG4gID48L2Z3LW5vdGlmaWNhdGlvbj5cbiAgPGRpdiBjbGFzcz1cImJ1dHRvbnNcIj5cbiAgICA8ZnctYnV0dG9uICpuZ0lmPVwiZXhwYW5kZWRcIiAoY2xpY2spPVwib25TaG93TGVzcygpXCIgbWF0LWJ1dHRvbiBhcmlhLWxhYmVsPVwic2hvdyBsZXNzXCIgbGF5b3V0PVwiY29tcGFjdFwiIHNpemU9XCJzbWFsbFwiPlxuICAgICAgPG1hdC1pY29uPmV4cGFuZF9sZXNzPC9tYXQtaWNvbj5cbiAgICA8L2Z3LWJ1dHRvbj5cbiAgICA8ZnctYnV0dG9uICpuZ0lmPVwiIWV4cGFuZGVkICYmIG5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMVwiIChjbGljayk9XCJvblNob3dNb3JlKClcIiBtYXQtYnV0dG9uIGFyaWEtbGFiZWw9XCJzaG93IG1vcmVcIiBsYXlvdXQ9XCJjb21wYWN0XCIgc2l6ZT1cInNtYWxsXCI+XG4gICAgICA8bWF0LWljb24+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgIDwvZnctYnV0dG9uPlxuICAgIDxmdy1idXR0b24gKGNsaWNrKT1cImNsZWFyQWxsKClcIiBtYXQtYnV0dG9uIGNsYXNzPVwiY2xlYXItYWxsXCIgYXJpYS1sYWJlbD1cImNsZWFyIGFsbFwiIGxheW91dD1cImNvbXBhY3RcIiBzaXplPVwic21hbGxcIj5cbiAgICAgIENsZWFyIEFsbFxuICAgIDwvZnctYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,29 +0,0 @@
1
- export class FwNotificationTimerService {
2
- constructor() {
3
- this.now = 0;
4
- this.remainingDuration = 0;
5
- }
6
- start(duration) {
7
- return new Promise((resolve) => {
8
- this.remainingDuration = duration;
9
- this.resolver = resolve;
10
- this.continue();
11
- });
12
- }
13
- stop() {
14
- clearTimeout(this.timerId);
15
- this.remainingDuration = 0;
16
- }
17
- pause() {
18
- clearTimeout(this.timerId);
19
- this.remainingDuration =
20
- this.remainingDuration - new Date().getTime() - this.now;
21
- }
22
- continue() {
23
- this.now = new Date().getTime();
24
- this.timerId = window.setTimeout(() => {
25
- this.resolver();
26
- }, this.remainingDuration);
27
- }
28
- }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXRpbWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXRpbWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLDBCQUEwQjtJQUF2QztRQUVVLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFDUixzQkFBaUIsR0FBRyxDQUFDLENBQUM7SUE0QmhDLENBQUM7SUF6QkMsS0FBSyxDQUFDLFFBQWdCO1FBQ3BCLE9BQU8sSUFBSSxPQUFPLENBQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNuQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJO1FBQ0YsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxLQUFLO1FBQ0gsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsaUJBQWlCO1lBQ3BCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDN0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNwQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEIsQ0FBQyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBGd05vdGlmaWNhdGlvblRpbWVyU2VydmljZSB7XG4gIHByaXZhdGUgdGltZXJJZDogbnVtYmVyO1xuICBwcml2YXRlIG5vdyA9IDA7XG4gIHByaXZhdGUgcmVtYWluaW5nRHVyYXRpb24gPSAwO1xuICBwcml2YXRlIHJlc29sdmVyOiAoKSA9PiB2b2lkO1xuXG4gIHN0YXJ0KGR1cmF0aW9uOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcbiAgICAgIHRoaXMucmVtYWluaW5nRHVyYXRpb24gPSBkdXJhdGlvbjtcbiAgICAgIHRoaXMucmVzb2x2ZXIgPSByZXNvbHZlO1xuICAgICAgdGhpcy5jb250aW51ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgc3RvcCgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lcklkKTtcbiAgICB0aGlzLnJlbWFpbmluZ0R1cmF0aW9uID0gMDtcbiAgfVxuXG4gIHBhdXNlKCk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVySWQpO1xuICAgIHRoaXMucmVtYWluaW5nRHVyYXRpb24gPVxuICAgICAgdGhpcy5yZW1haW5pbmdEdXJhdGlvbiAtIG5ldyBEYXRlKCkuZ2V0VGltZSgpIC0gdGhpcy5ub3c7XG4gIH1cblxuICBjb250aW51ZSgpOiB2b2lkIHtcbiAgICB0aGlzLm5vdyA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgIHRoaXMudGltZXJJZCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVzb2x2ZXIoKTtcbiAgICB9LCB0aGlzLnJlbWFpbmluZ0R1cmF0aW9uKTtcbiAgfVxufVxuIl19
@@ -1,51 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { MatButtonModule } from '@angular/material/button';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { FwButtonModule } from '../button/button.module';
6
- import { FwButtonGroupModule } from '../button-group/button-group.module';
7
- import { FwNotificationService } from './notification.service';
8
- import { FwNotificationComponent } from './notification/notification.component';
9
- import { FwNotificationContainerComponent } from './notification-container/notification-container.component';
10
- import * as i0 from "@angular/core";
11
- export class FwNotificationModule {
12
- }
13
- FwNotificationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- FwNotificationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationModule, declarations: [FwNotificationComponent,
15
- FwNotificationContainerComponent], imports: [CommonModule,
16
- FwButtonModule,
17
- FwButtonGroupModule,
18
- MatButtonModule,
19
- MatIconModule], exports: [FwNotificationComponent,
20
- FwNotificationContainerComponent] });
21
- FwNotificationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationModule, providers: [
22
- FwNotificationService,
23
- ], imports: [CommonModule,
24
- FwButtonModule,
25
- FwButtonGroupModule,
26
- MatButtonModule,
27
- MatIconModule] });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationModule, decorators: [{
29
- type: NgModule,
30
- args: [{
31
- imports: [
32
- CommonModule,
33
- FwButtonModule,
34
- FwButtonGroupModule,
35
- MatButtonModule,
36
- MatIconModule,
37
- ],
38
- exports: [
39
- FwNotificationComponent,
40
- FwNotificationContainerComponent,
41
- ],
42
- declarations: [
43
- FwNotificationComponent,
44
- FwNotificationContainerComponent,
45
- ],
46
- providers: [
47
- FwNotificationService,
48
- ],
49
- }]
50
- }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDJEQUEyRCxDQUFDOztBQXNCN0csTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGlCQVB6Qix1QkFBdUI7UUFDdkIsZ0NBQWdDLGFBWmhDLFlBQVk7UUFDWixjQUFjO1FBQ2QsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixhQUFhLGFBR2IsdUJBQXVCO1FBQ3ZCLGdDQUFnQztrSEFVM0Isb0JBQW9CLGFBSmxCO1FBQ1AscUJBQXFCO0tBQ3hCLFlBaEJHLFlBQVk7UUFDWixjQUFjO1FBQ2QsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixhQUFhOzJGQWNSLG9CQUFvQjtrQkFwQmhDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsYUFBYTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLHVCQUF1Qjt3QkFDdkIsZ0NBQWdDO3FCQUNuQztvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsdUJBQXVCO3dCQUN2QixnQ0FBZ0M7cUJBQ25DO29CQUNELFNBQVMsRUFBRTt3QkFDUCxxQkFBcUI7cUJBQ3hCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBGd0J1dHRvbk1vZHVsZSB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24ubW9kdWxlJztcbmltcG9ydCB7IEZ3QnV0dG9uR3JvdXBNb2R1bGUgfSBmcm9tICcuLi9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLm1vZHVsZSc7XG5pbXBvcnQgeyBGd05vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZ3Tm90aWZpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd05vdGlmaWNhdGlvbkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9uLWNvbnRhaW5lci9ub3RpZmljYXRpb24tY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZ3QnV0dG9uTW9kdWxlLFxuICAgICAgICBGd0J1dHRvbkdyb3VwTW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEZ3Tm90aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgICAgICBGd05vdGlmaWNhdGlvbkNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBGd05vdGlmaWNhdGlvbkNvbXBvbmVudCxcbiAgICAgICAgRndOb3RpZmljYXRpb25Db250YWluZXJDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgRndOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZ3Tm90aWZpY2F0aW9uTW9kdWxlIHt9Il19
@@ -1,36 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export function genId() {
5
- return String.prototype.padStart(24, Math.floor(Math.random() * Date.now()).toString(16));
6
- }
7
- export class FwNotificationService {
8
- constructor() {
9
- this.notifications$ = new BehaviorSubject([]);
10
- this.notificationQueue = [];
11
- }
12
- show(notification) {
13
- if (!notification.id) {
14
- notification.id = genId();
15
- }
16
- this.notificationQueue.push(notification);
17
- this.notifications$.next(this.notificationQueue);
18
- }
19
- dismiss(notificationId) {
20
- this.notificationQueue = this.notificationQueue.filter((v) => v.id !== notificationId);
21
- this.notifications$.next(this.notificationQueue);
22
- }
23
- dismissAll() {
24
- this.notificationQueue = [];
25
- this.notifications$.next(this.notificationQueue);
26
- }
27
- }
28
- FwNotificationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
- FwNotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationService, providedIn: 'root' });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwNotificationService, decorators: [{
31
- type: Injectable,
32
- args: [{
33
- providedIn: 'root',
34
- }]
35
- }] });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUl2QyxNQUFNLFVBQVUsS0FBSztJQUNuQixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUM1RixDQUFDO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUhsQztRQUlXLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQzFELHNCQUFpQixHQUFtQixFQUFFLENBQUM7S0FvQmhEO0lBbEJDLElBQUksQ0FBQyxZQUEwQjtRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRTtZQUNwQixZQUFZLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO1NBQzNCO1FBRUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsT0FBTyxDQUFDLGNBQXNCO1FBQzVCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLGNBQWMsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNuRCxDQUFDOztrSEFyQlUscUJBQXFCO3NIQUFyQixxQkFBcUIsY0FGcEIsTUFBTTsyRkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5tb2RlbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5JZCgpOiBzdHJpbmcge1xuICByZXR1cm4gU3RyaW5nLnByb3RvdHlwZS5wYWRTdGFydCgyNCwgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogRGF0ZS5ub3coKSkudG9TdHJpbmcoMTYpKTtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEZ3Tm90aWZpY2F0aW9uU2VydmljZSB7XG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOb3RpZmljYXRpb25bXT4oW10pO1xuICBwcml2YXRlIG5vdGlmaWNhdGlvblF1ZXVlOiBOb3RpZmljYXRpb25bXSA9IFtdO1xuXG4gIHNob3cobm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pOiB2b2lkIHtcbiAgICBpZiAoIW5vdGlmaWNhdGlvbi5pZCkge1xuICAgICAgbm90aWZpY2F0aW9uLmlkID0gZ2VuSWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLm5vdGlmaWNhdGlvblF1ZXVlLnB1c2gobm90aWZpY2F0aW9uKTtcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnMkLm5leHQodGhpcy5ub3RpZmljYXRpb25RdWV1ZSk7XG4gIH1cblxuICBkaXNtaXNzKG5vdGlmaWNhdGlvbklkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLm5vdGlmaWNhdGlvblF1ZXVlID0gdGhpcy5ub3RpZmljYXRpb25RdWV1ZS5maWx0ZXIoKHYpID0+IHYuaWQgIT09IG5vdGlmaWNhdGlvbklkKTtcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnMkLm5leHQodGhpcy5ub3RpZmljYXRpb25RdWV1ZSk7XG4gIH1cblxuICBkaXNtaXNzQWxsKCk6IHZvaWQge1xuICAgIHRoaXMubm90aWZpY2F0aW9uUXVldWUgPSBbXTtcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnMkLm5leHQodGhpcy5ub3RpZmljYXRpb25RdWV1ZSk7XG4gIH1cbn1cblxuIl19
@@ -1,66 +0,0 @@
1
- import { TemplatePortal } from '@angular/cdk/portal';
2
- import { Component, HostBinding, HostListener, Input, TemplateRef, ViewChild, } from '@angular/core';
3
- import { FwPopoverTriggerDirective } from './popover-trigger.directive';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/cdk/overlay";
6
- export class FwPopoverTriggerComponent extends FwPopoverTriggerDirective {
7
- constructor(element, overlay, viewContainerRef) {
8
- super(element, overlay, viewContainerRef);
9
- this.element = element;
10
- this.overlay = overlay;
11
- this.viewContainerRef = viewContainerRef;
12
- this.position = 'below';
13
- this.class = 'fw-popover-trigger';
14
- }
15
- showPopover() {
16
- const overlay = this.getOverlay();
17
- overlay.detach();
18
- if (this.fwPopoverTriggerFor) {
19
- // as a web component it is not possible to have a reference to this.popover
20
- this.popoverHTML = document.querySelector(`fw-popover#${this.fwPopoverTriggerFor}`).innerHTML;
21
- overlay.attach(new TemplatePortal(this.popoverTemplateRef, this.viewContainerRef));
22
- }
23
- }
24
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
25
- hidePopover(e) {
26
- }
27
- }
28
- FwPopoverTriggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwPopoverTriggerComponent, deps: [{ token: i0.ElementRef }, { token: i1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
29
- FwPopoverTriggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwPopoverTriggerComponent, selector: "fw-popover-trigger", inputs: { fwPopoverTriggerFor: "fwPopoverTriggerFor", position: "position" }, host: { listeners: { "mouseenter": "showPopover($event)", "mouseleave": "hidePopover($event)" }, properties: { "attr.trigger-for": "this.fwPopoverTriggerFor", "class": "this.class" } }, viewQueries: [{ propertyName: "popoverTemplateRef", first: true, predicate: TemplateRef, descendants: true }], usesInheritance: true, ngImport: i0, template: `
30
- <ng-content></ng-content>
31
- <!-- for web component support -->
32
- <ng-template>
33
- <div [innerHTML]="popoverHTML"></div>
34
- </ng-template>`, isInline: true });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwPopoverTriggerComponent, decorators: [{
36
- type: Component,
37
- args: [{
38
- selector: 'fw-popover-trigger',
39
- template: `
40
- <ng-content></ng-content>
41
- <!-- for web component support -->
42
- <ng-template>
43
- <div [innerHTML]="popoverHTML"></div>
44
- </ng-template>`,
45
- }]
46
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { fwPopoverTriggerFor: [{
47
- type: HostBinding,
48
- args: ['attr.trigger-for']
49
- }, {
50
- type: Input
51
- }], position: [{
52
- type: Input
53
- }], class: [{
54
- type: HostBinding,
55
- args: ['class']
56
- }], showPopover: [{
57
- type: HostListener,
58
- args: ['mouseenter', ['$event']]
59
- }], hidePopover: [{
60
- type: HostListener,
61
- args: ['mouseleave', ['$event']]
62
- }], popoverTemplateRef: [{
63
- type: ViewChild,
64
- args: [TemplateRef]
65
- }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10cmlnZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci10cmlnZ2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUNMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBcUIseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBVzNGLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx5QkFBeUI7SUF1QnRFLFlBQ1MsT0FBbUIsRUFDbkIsT0FBZ0IsRUFDaEIsZ0JBQWtDO1FBRXpDLEtBQUssQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFKbkMsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF4QmxDLGFBQVEsR0FBc0IsT0FBTyxDQUFDO1FBQ3pCLFVBQUssR0FBRyxvQkFBb0IsQ0FBQztJQTBCbkQsQ0FBQztJQXhCdUMsV0FBVztRQUNqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzVCLDRFQUE0RTtZQUM1RSxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsY0FBZSxJQUFJLENBQUMsbUJBQW9CLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNoRyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1NBQ3BGO0lBQ0gsQ0FBQztJQUVELDZEQUE2RDtJQUNyQixXQUFXLENBQUMsQ0FBYTtJQUNqRSxDQUFDOztzSEFqQlUseUJBQXlCOzBHQUF6Qix5QkFBeUIsc1hBb0J6QixXQUFXLHVFQTNCWjs7Ozs7bUJBS087MkZBRU4seUJBQXlCO2tCQVRyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7bUJBS087aUJBQ2xCO3NKQUUyQyxtQkFBbUI7c0JBQTVELFdBQVc7dUJBQUMsa0JBQWtCOztzQkFBRyxLQUFLO2dCQUM5QixRQUFRO3NCQUFoQixLQUFLO2dCQUNnQixLQUFLO3NCQUExQixXQUFXO3VCQUFDLE9BQU87Z0JBRW9CLFdBQVc7c0JBQWxELFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVdFLFdBQVc7c0JBQWxELFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUlkLGtCQUFrQjtzQkFBekMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRndQb3BvdmVyUG9zaXRpb24sIEZ3UG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuL3BvcG92ZXItdHJpZ2dlci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1wb3BvdmVyLXRyaWdnZXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8IS0tIGZvciB3ZWIgY29tcG9uZW50IHN1cHBvcnQgLS0+XG4gICAgPG5nLXRlbXBsYXRlPlxuICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInBvcG92ZXJIVE1MXCI+PC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5gLFxufSlcbmV4cG9ydCBjbGFzcyBGd1BvcG92ZXJUcmlnZ2VyQ29tcG9uZW50IGV4dGVuZHMgRndQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSB7XG4gIEBIb3N0QmluZGluZygnYXR0ci50cmlnZ2VyLWZvcicpIEBJbnB1dCgpIGZ3UG9wb3ZlclRyaWdnZXJGb3I6IHN0cmluZztcbiAgQElucHV0KCkgcG9zaXRpb246IEZ3UG9wb3ZlclBvc2l0aW9uID0gJ2JlbG93JztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ2Z3LXBvcG92ZXItdHJpZ2dlcic7XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicsIFsnJGV2ZW50J10pIHNob3dQb3BvdmVyKCk6IHZvaWQge1xuICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLmdldE92ZXJsYXkoKTtcbiAgICBvdmVybGF5LmRldGFjaCgpO1xuICAgIGlmICh0aGlzLmZ3UG9wb3ZlclRyaWdnZXJGb3IpIHtcbiAgICAgIC8vIGFzIGEgd2ViIGNvbXBvbmVudCBpdCBpcyBub3QgcG9zc2libGUgdG8gaGF2ZSBhIHJlZmVyZW5jZSB0byB0aGlzLnBvcG92ZXJcbiAgICAgIHRoaXMucG9wb3ZlckhUTUwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBmdy1wb3BvdmVyIyR7IHRoaXMuZndQb3BvdmVyVHJpZ2dlckZvciB9YCkuaW5uZXJIVE1MO1xuICAgICAgb3ZlcmxheS5hdHRhY2gobmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMucG9wb3ZlclRlbXBsYXRlUmVmLCB0aGlzLnZpZXdDb250YWluZXJSZWYpKTtcbiAgICB9XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBbJyRldmVudCddKSBoaWRlUG9wb3ZlcihlOiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gIH1cblxuICAvLyBmb3Igd2ViIGNvbXBvbmVudCBzdXBwb3J0XG4gIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYpIHBvcG92ZXJUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHBvcG92ZXJIVE1MOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICkge1xuICAgIHN1cGVyKGVsZW1lbnQsIG92ZXJsYXksIHZpZXdDb250YWluZXJSZWYpO1xuICB9XG5cblxufVxuIl19