adb-shared 6.0.2 → 6.0.3
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/esm2022/adb-shared.mjs +4 -4
- package/esm2022/lib/components/adb-artportalen-nav/adb-artportalen-footer.component.mjs +48 -48
- package/esm2022/lib/components/adb-artportalen-nav/adb-artportalen-nav.component.mjs +112 -112
- package/esm2022/lib/components/adb-artportalen-nav/adb-artportalen-nav.module.mjs +58 -66
- package/esm2022/lib/components/adb-artportalen-nav/environment.service.mjs +16 -16
- package/esm2022/lib/components/adb-artportalen-nav/navigation.model.mjs +1 -1
- package/esm2022/lib/components/adb-buttons/adb-buttons.module.mjs +19 -19
- package/esm2022/lib/components/adb-buttons/help-button.component.mjs +35 -35
- package/esm2022/lib/components/adb-confirm-modal/adb-confirm-modal.mjs +29 -29
- package/esm2022/lib/components/adb-confirm-modal/adb-modal.module.mjs +23 -23
- package/esm2022/lib/components/adb-confirm-modal/adb-modal.service.mjs +46 -46
- package/esm2022/lib/components/adb-dropdown/adb-dropdown.directive.mjs +100 -100
- package/esm2022/lib/components/adb-dropdown/adb-dropdown.module.mjs +24 -24
- package/esm2022/lib/components/adb-dropdown/adb-dropdown.service.mjs +10 -10
- package/esm2022/lib/components/adb-dropdown/adb-dropdown2.directive.mjs +119 -119
- package/esm2022/lib/components/adb-header/adb-header.module.mjs +49 -57
- package/esm2022/lib/components/adb-header/adb-nav.component.mjs +115 -115
- package/esm2022/lib/components/adb-header/environment.service.mjs +16 -16
- package/esm2022/lib/components/adb-header/navigation.model.mjs +1 -1
- package/esm2022/lib/components/adb-rich-editor/adb-rich-editor.component.mjs +84 -65
- package/esm2022/lib/components/adb-rich-editor/adb-rich-editor.module.mjs +19 -19
- package/esm2022/lib/components/adb-toast/adb-toast.mjs +25 -25
- package/esm2022/lib/components/adb-toast/adb-toast.module.mjs +23 -23
- package/esm2022/lib/components/adb-toast/adb-toast.service.mjs +55 -55
- package/esm2022/lib/components/date-picker/adb-date-picker.component.mjs +177 -177
- package/esm2022/lib/components/date-picker/adb-date-picker.directive.mjs +220 -220
- package/esm2022/lib/components/date-picker/adb-date-picker.module.mjs +25 -25
- package/esm2022/lib/components/date-picker/adb-date-picker.service.mjs +10 -10
- package/esm2022/lib/components/pagers/infinite-scroll.component.mjs +47 -47
- package/esm2022/lib/components/pagers/pager-base.directive.mjs +57 -57
- package/esm2022/lib/components/pagers/pager-inline.mjs +49 -49
- package/esm2022/lib/components/pagers/pager.mjs +53 -53
- package/esm2022/lib/components/pagers/pagers.module.mjs +26 -26
- package/esm2022/lib/directives/click-outside.directive.mjs +28 -28
- package/esm2022/lib/directives/directives.module.mjs +21 -21
- package/esm2022/lib/directives/file-upload.directive.mjs +36 -36
- package/esm2022/lib/directives/focus.directive.mjs +34 -34
- package/esm2022/lib/directives/redlist-badge-class.directive.mjs +44 -44
- package/esm2022/lib/directives/risk-class.directive.mjs +37 -37
- package/esm2022/lib/pipes/date.pipe.mjs +22 -22
- package/esm2022/lib/pipes/emptyValue.pipe.mjs +22 -22
- package/esm2022/lib/pipes/highlight-html.pipe.mjs +46 -46
- package/esm2022/lib/pipes/highlight.pipe.mjs +46 -46
- package/esm2022/lib/pipes/number-spacing.pipe.mjs +21 -21
- package/esm2022/lib/pipes/pipes.module.mjs +22 -22
- package/esm2022/lib/pipes/rich.pipe.mjs +36 -36
- package/esm2022/public-api.mjs +41 -41
- package/fesm2022/adb-shared.mjs +1817 -1815
- package/fesm2022/adb-shared.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/components/adb-artportalen-nav/adb-artportalen-footer.component.d.ts +23 -23
- package/lib/components/adb-artportalen-nav/adb-artportalen-nav.component.d.ts +41 -41
- package/lib/components/adb-artportalen-nav/adb-artportalen-nav.module.d.ts +16 -17
- package/lib/components/adb-artportalen-nav/environment.service.d.ts +7 -7
- package/lib/components/adb-artportalen-nav/navigation.model.d.ts +18 -18
- package/lib/components/adb-buttons/adb-buttons.module.d.ts +9 -9
- package/lib/components/adb-buttons/help-button.component.d.ts +13 -13
- package/lib/components/adb-confirm-modal/adb-confirm-modal.d.ts +20 -20
- package/lib/components/adb-confirm-modal/adb-modal.module.d.ts +10 -10
- package/lib/components/adb-confirm-modal/adb-modal.service.d.ts +18 -18
- package/lib/components/adb-dropdown/adb-dropdown.directive.d.ts +21 -21
- package/lib/components/adb-dropdown/adb-dropdown.module.d.ts +11 -11
- package/lib/components/adb-dropdown/adb-dropdown.service.d.ts +7 -7
- package/lib/components/adb-dropdown/adb-dropdown2.directive.d.ts +23 -23
- package/lib/components/adb-header/adb-header.module.d.ts +15 -16
- package/lib/components/adb-header/adb-nav.component.d.ts +41 -41
- package/lib/components/adb-header/environment.service.d.ts +7 -7
- package/lib/components/adb-header/navigation.model.d.ts +29 -29
- package/lib/components/adb-rich-editor/adb-rich-editor.component.d.ts +24 -22
- package/lib/components/adb-rich-editor/adb-rich-editor.module.d.ts +9 -9
- package/lib/components/adb-toast/adb-toast.d.ts +11 -11
- package/lib/components/adb-toast/adb-toast.module.d.ts +10 -10
- package/lib/components/adb-toast/adb-toast.service.d.ts +36 -36
- package/lib/components/date-picker/adb-date-picker.component.d.ts +64 -64
- package/lib/components/date-picker/adb-date-picker.directive.d.ts +47 -47
- package/lib/components/date-picker/adb-date-picker.module.d.ts +12 -12
- package/lib/components/date-picker/adb-date-picker.service.d.ts +8 -8
- package/lib/components/pagers/infinite-scroll.component.d.ts +15 -15
- package/lib/components/pagers/pager-base.directive.d.ts +16 -16
- package/lib/components/pagers/pager-inline.d.ts +16 -16
- package/lib/components/pagers/pager.d.ts +22 -22
- package/lib/components/pagers/pagers.module.d.ts +11 -11
- package/lib/directives/click-outside.directive.d.ts +10 -10
- package/lib/directives/directives.module.d.ts +11 -11
- package/lib/directives/file-upload.directive.d.ts +12 -12
- package/lib/directives/focus.directive.d.ts +11 -11
- package/lib/directives/redlist-badge-class.directive.d.ts +7 -7
- package/lib/directives/risk-class.directive.d.ts +7 -7
- package/lib/pipes/date.pipe.d.ts +10 -10
- package/lib/pipes/emptyValue.pipe.d.ts +7 -7
- package/lib/pipes/highlight-html.pipe.d.ts +10 -10
- package/lib/pipes/highlight.pipe.d.ts +9 -9
- package/lib/pipes/number-spacing.pipe.d.ts +7 -7
- package/lib/pipes/pipes.module.d.ts +12 -12
- package/lib/pipes/rich.pipe.d.ts +11 -11
- package/package.json +5 -5
- package/public-api.d.ts +38 -38
|
@@ -1,65 +1,84 @@
|
|
|
1
|
-
import { Component, forwardRef } from "@angular/core";
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
this.
|
|
9
|
-
|
|
10
|
-
this.
|
|
11
|
-
this.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const textarea = this.el.nativeElement.querySelector('textarea');
|
|
18
|
-
const selectionStart = textarea.selectionStart;
|
|
19
|
-
let selectionEnd = textarea.selectionEnd;
|
|
20
|
-
while (selectionEnd > selectionStart && textarea.value[selectionEnd - 1] === ' ') {
|
|
21
|
-
selectionEnd--;
|
|
22
|
-
}
|
|
23
|
-
textarea.setSelectionRange(selectionStart, selectionEnd);
|
|
24
|
-
}
|
|
25
|
-
onItalicClick() {
|
|
26
|
-
const textarea = this.el.nativeElement.querySelector('textarea');
|
|
27
|
-
if (textarea) {
|
|
28
|
-
const selectionStart = textarea.selectionStart;
|
|
29
|
-
const selectionEnd = textarea.selectionEnd;
|
|
30
|
-
let currentValue = textarea.value;
|
|
31
|
-
let modifiedText = `${currentValue.substring(0, selectionStart)}_${currentValue.substring(selectionStart, selectionEnd)}_${currentValue.substring(selectionEnd)}`;
|
|
32
|
-
this.text = modifiedText;
|
|
33
|
-
this.onChange(this.text);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
this.
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
1
|
+
import { Component, forwardRef, Input } from "@angular/core";
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
export class AdbRichEditorComponent {
|
|
7
|
+
constructor(renderer, el) {
|
|
8
|
+
this.renderer = renderer;
|
|
9
|
+
this.el = el;
|
|
10
|
+
this.hasTaxon = true;
|
|
11
|
+
this.hasRefernce = true;
|
|
12
|
+
//ControlValueAccessor
|
|
13
|
+
this.onChange = () => { };
|
|
14
|
+
this.onTouched = () => { };
|
|
15
|
+
}
|
|
16
|
+
onDoubleClick() {
|
|
17
|
+
const textarea = this.el.nativeElement.querySelector('textarea');
|
|
18
|
+
const selectionStart = textarea.selectionStart;
|
|
19
|
+
let selectionEnd = textarea.selectionEnd;
|
|
20
|
+
while (selectionEnd > selectionStart && textarea.value[selectionEnd - 1] === ' ') {
|
|
21
|
+
selectionEnd--;
|
|
22
|
+
}
|
|
23
|
+
textarea.setSelectionRange(selectionStart, selectionEnd);
|
|
24
|
+
}
|
|
25
|
+
onItalicClick() {
|
|
26
|
+
const textarea = this.el.nativeElement.querySelector('textarea');
|
|
27
|
+
if (textarea) {
|
|
28
|
+
const selectionStart = textarea.selectionStart;
|
|
29
|
+
const selectionEnd = textarea.selectionEnd;
|
|
30
|
+
let currentValue = textarea.value;
|
|
31
|
+
let modifiedText = `${currentValue.substring(0, selectionStart)}_${currentValue.substring(selectionStart, selectionEnd)}_${currentValue.substring(selectionEnd)}`;
|
|
32
|
+
this.text = modifiedText;
|
|
33
|
+
this.onChange(this.text);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
onTaxonClick() {
|
|
37
|
+
const textarea = this.el.nativeElement.querySelector('textarea');
|
|
38
|
+
if (textarea) {
|
|
39
|
+
const start = textarea.selectionStart;
|
|
40
|
+
const end = textarea.selectionEnd;
|
|
41
|
+
const originalText = textarea.value;
|
|
42
|
+
const charBefore = start > 0 ? originalText[start - 1] : '';
|
|
43
|
+
const charAfter = end < originalText.length ? originalText[end] : '';
|
|
44
|
+
const spaceBefore = charBefore && !/\s/.test(charBefore) ? ' ' : '';
|
|
45
|
+
const spaceAfter = charAfter && !/\s/.test(charAfter) ? ' ' : '';
|
|
46
|
+
const newText = originalText.slice(0, start) + spaceBefore + '[Name](taxon:0)' + spaceAfter + originalText.slice(end);
|
|
47
|
+
this.text = newText;
|
|
48
|
+
this.onChange(this.text);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
onTextChange() {
|
|
52
|
+
this.onChange(this.text);
|
|
53
|
+
}
|
|
54
|
+
writeValue(value) {
|
|
55
|
+
this.text = value;
|
|
56
|
+
}
|
|
57
|
+
registerOnChange(fn) {
|
|
58
|
+
this.onChange = fn;
|
|
59
|
+
}
|
|
60
|
+
registerOnTouched(fn) {
|
|
61
|
+
this.onTouched = fn;
|
|
62
|
+
}
|
|
63
|
+
setDisabledState(isDisabled) {
|
|
64
|
+
}
|
|
65
|
+
ngOnDestroy() {
|
|
66
|
+
}
|
|
67
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbRichEditorComponent, selector: "adb-rich-editor", inputs: { hasTaxon: "hasTaxon", hasRefernce: "hasRefernce" }, providers: [{
|
|
69
|
+
provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
|
|
70
|
+
multi: true
|
|
71
|
+
}], ngImport: i0, template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'adb-rich-editor', providers: [{
|
|
76
|
+
provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
|
|
77
|
+
multi: true
|
|
78
|
+
}], template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n" }]
|
|
79
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { hasTaxon: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], hasRefernce: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}] } });
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFVBQVUsRUFBRSxLQUFLLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVV6RSxNQUFNLE9BQU8sc0JBQXNCO0lBSy9CLFlBQW9CLFFBQW1CLEVBQVUsRUFBYztRQUEzQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUh0RCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBbUQ1QixzQkFBc0I7UUFDdEIsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQixjQUFTLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBbkR3QyxDQUFDO0lBR3BFLGFBQWE7UUFDVCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQztRQUMvQyxJQUFJLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO1FBQ3pDLE9BQU8sWUFBWSxHQUFHLGNBQWMsSUFBSSxRQUFRLENB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QVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO0lBRXJDLENBQUM7SUFFRCxXQUFXO0lBQ1gsQ0FBQztpSUEzRVEsc0JBQXNCO3FIQUF0QixzQkFBc0Isd0dBTHBCLENBQUM7Z0JBQ1IsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLEVBQUM7Z0JBQ2pGLEtBQUssRUFBRSxJQUFJO2FBQ2QsQ0FBQywwQkNUTiw4ZUFPQTs7MkZESWEsc0JBQXNCO2tCQVJsQyxTQUFTOytCQUNJLGlCQUFpQixhQUVoQixDQUFDOzRCQUNSLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFDLEdBQUcsRUFBRSx1QkFBdUIsRUFBQzs0QkFDakYsS0FBSyxFQUFFLElBQUk7eUJBQ2QsQ0FBQzt1R0FJTyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FkYi1yaWNoLWVkaXRvcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQWRiUmljaEVkaXRvckNvbXBvbmVudCksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGJSaWNoRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBoYXNUYXhvbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBoYXNSZWZlcm5jZSA9IHRydWU7XHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XHJcblxyXG5cclxuICAgIG9uRG91YmxlQ2xpY2soKSB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRleHRhcmVhLnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgICAgIGxldCBzZWxlY3Rpb25FbmQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25FbmQ7XHJcbiAgICAgICAgd2hpbGUgKHNlbGVjdGlvbkVuZCA+IHNlbGVjdGlvblN0YXJ0ICYmIHRleHRhcmVhLnZhbHVlW3NlbGVjdGlvbkVuZCAtIDFdID09PSAnICcpIHtcclxuICAgICAgICAgICAgc2VsZWN0aW9uRW5kLS07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZXh0YXJlYS5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkl0YWxpY0NsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHRleHRhcmVhID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RleHRhcmVhJyk7XHJcbiAgICAgICAgaWYgKHRleHRhcmVhKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gdGV4dGFyZWEuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IHRleHRhcmVhLnNlbGVjdGlvbkVuZDtcclxuICAgICAgICAgICAgbGV0IGN1cnJlbnRWYWx1ZSA9IHRleHRhcmVhLnZhbHVlO1xyXG4gICAgICAgICAgICBsZXQgbW9kaWZpZWRUZXh0ID0gYCR7Y3VycmVudFZhbHVlLnN1YnN0cmluZygwLCBzZWxlY3Rpb25TdGFydCl9XyR7Y3VycmVudFZhbHVlLnN1YnN0cmluZyhzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKX1fJHtjdXJyZW50VmFsdWUuc3Vic3RyaW5nKHNlbGVjdGlvbkVuZCl9YDtcclxuICAgICAgICAgICAgdGhpcy50ZXh0ID0gbW9kaWZpZWRUZXh0O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBvblRheG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBpZiAodGV4dGFyZWEpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25TdGFydDtcclxuICAgICAgICAgICAgY29uc3QgZW5kID0gdGV4dGFyZWEuc2VsZWN0aW9uRW5kO1xyXG4gICAgICAgICAgICBjb25zdCBvcmlnaW5hbFRleHQgPSB0ZXh0YXJlYS52YWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgY2hhckJlZm9yZSA9IHN0YXJ0ID4gMCA/IG9yaWdpbmFsVGV4dFtzdGFydCAtIDFdIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYXJBZnRlciA9IGVuZCA8IG9yaWdpbmFsVGV4dC5sZW5ndGggPyBvcmlnaW5hbFRleHRbZW5kXSA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgc3BhY2VCZWZvcmUgPSBjaGFyQmVmb3JlICYmICEvXFxzLy50ZXN0KGNoYXJCZWZvcmUpID8gJyAnIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwYWNlQWZ0ZXIgPSBjaGFyQWZ0ZXIgJiYgIS9cXHMvLnRlc3QoY2hhckFmdGVyKSA/ICcgJyA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgbmV3VGV4dCA9IG9yaWdpbmFsVGV4dC5zbGljZSgwLCBzdGFydCkgKyBzcGFjZUJlZm9yZSArICdbTmFtZV0odGF4b246MCknICsgc3BhY2VBZnRlciArIG9yaWdpbmFsVGV4dC5zbGljZShlbmQpO1xyXG4gICAgICAgICAgICB0aGlzLnRleHQgPSBuZXdUZXh0O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uVGV4dENoYW5nZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9Db250cm9sVmFsdWVBY2Nlc3NvclxyXG4gICAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHsgfTtcclxuICAgIG9uVG91Y2hlZDogYW55ID0gKCkgPT4geyB9O1xyXG5cclxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudGV4dCA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG59IiwiPGRpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMyBtYi0xXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIm9uSXRhbGljQ2xpY2soKVwiPjxzcGFuIGNsYXNzPVwiZmFzIGZhLWl0YWxpY1wiPjwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaGFzVGF4b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIm9uVGF4b25DbGljaygpXCI+PHNwYW4gY2xhc3M9XCJmYXIgZmEtcGF3XCI+PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8dGV4dGFyZWEgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cInRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiIChkYmxjbGljayk9XCJvbkRvdWJsZUNsaWNrKClcIj48L3RleHRhcmVhPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { CommonModule } from "@angular/common";
|
|
2
|
-
import { NgModule } from "@angular/core";
|
|
3
|
-
import { AdbRichEditorComponent } from "./adb-rich-editor.component";
|
|
4
|
-
import { FormsModule } from "@angular/forms";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class AdbRichEditorModule {
|
|
7
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
8
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
9
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
imports: [CommonModule, FormsModule],
|
|
15
|
-
declarations: [AdbRichEditorComponent],
|
|
16
|
-
exports: [AdbRichEditorComponent]
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { CommonModule } from "@angular/common";
|
|
2
|
+
import { NgModule } from "@angular/core";
|
|
3
|
+
import { AdbRichEditorComponent } from "./adb-rich-editor.component";
|
|
4
|
+
import { FormsModule } from "@angular/forms";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class AdbRichEditorModule {
|
|
7
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, declarations: [AdbRichEditorComponent], imports: [CommonModule, FormsModule], exports: [AdbRichEditorComponent] }); }
|
|
9
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, imports: [CommonModule, FormsModule] }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, decorators: [{
|
|
12
|
+
type: NgModule,
|
|
13
|
+
args: [{
|
|
14
|
+
imports: [CommonModule, FormsModule],
|
|
15
|
+
declarations: [AdbRichEditorComponent],
|
|
16
|
+
exports: [AdbRichEditorComponent]
|
|
17
|
+
}]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxtQkFBbUI7aUlBQW5CLG1CQUFtQjtrSUFBbkIsbUJBQW1CLGlCQUhiLHNCQUFzQixhQUQzQixZQUFZLEVBQUMsV0FBVyxhQUV4QixzQkFBc0I7a0lBRXZCLG1CQUFtQixZQUpsQixZQUFZLEVBQUMsV0FBVzs7MkZBSXpCLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUMsV0FBVyxDQUFDO29CQUNuQyxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFkYkRpcmVjdGl2ZXNNb2R1bGUgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBBZGJSaWNoRWRpdG9yQ29tcG9uZW50IH0gZnJvbSBcIi4vYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsRm9ybXNNb2R1bGVdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbQWRiUmljaEVkaXRvckNvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbQWRiUmljaEVkaXRvckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkYlJpY2hFZGl0b3JNb2R1bGUgeyB9Il19
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { ToastType } from './adb-toast.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./adb-toast.service";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@ngx-translate/core";
|
|
7
|
-
export class AdbToast {
|
|
8
|
-
constructor(toastService) {
|
|
9
|
-
this.toastService = toastService;
|
|
10
|
-
this.toastType = ToastType;
|
|
11
|
-
this.toastService.$toasts.subscribe(toasts => {
|
|
12
|
-
this.toasts = toasts;
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
onRemoveToast(toast) {
|
|
16
|
-
this.toastService.remove(toast);
|
|
17
|
-
}
|
|
18
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
19
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
22
|
-
type: Component,
|
|
23
|
-
args: [{ template: "<div class=\"position-fixed bottom-0 end-0\" style=\"z-index: 50000;min-width: 15rem;\">\r\n <div class=\"alert alert-dismissible\" role=\"alert\" *ngFor=\"let toast of toasts\"\r\n [class.alert-primary]=\"toast.type===toastType.Primary\"\r\n [class.alert-success]=\"toast.type===toastType.Success\"\r\n [class.alert-warning]=\"toast.type===toastType.Warn\"\r\n [class.alert-danger]=\"toast.type===toastType.Danger\">\r\n <div class=\"d-flex align-items-center justify-content-between pb-1\" *ngIf=\"toast.header\">\r\n <div class=\"fw-bold pb-1\" *ngIf=\"!toast.headerValue\">{{toast.header|translate}}</div>\r\n <div class=\"fw-bold pb-1\" *ngIf=\"toast.headerValue\">{{(toast.header|translate:toast.headerValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"d-flex align-items-center justify-content-between mt-1\">\r\n <div *ngIf=\"!toast.messageValue\">{{toast.message|translate}}</div>\r\n <div *ngIf=\"toast.messageValue\">{{(toast.message|translate:toast.messageValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
24
|
-
}], ctorParameters:
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { ToastType } from './adb-toast.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./adb-toast.service";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@ngx-translate/core";
|
|
7
|
+
export class AdbToast {
|
|
8
|
+
constructor(toastService) {
|
|
9
|
+
this.toastService = toastService;
|
|
10
|
+
this.toastType = ToastType;
|
|
11
|
+
this.toastService.$toasts.subscribe(toasts => {
|
|
12
|
+
this.toasts = toasts;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
onRemoveToast(toast) {
|
|
16
|
+
this.toastService.remove(toast);
|
|
17
|
+
}
|
|
18
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToast, deps: [{ token: i1.AdbToastService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbToast, selector: "ng-component", ngImport: i0, template: "<div class=\"position-fixed bottom-0 end-0\" style=\"z-index: 50000;min-width: 15rem;\">\r\n <div class=\"alert alert-dismissible\" role=\"alert\" *ngFor=\"let toast of toasts\"\r\n [class.alert-primary]=\"toast.type===toastType.Primary\"\r\n [class.alert-success]=\"toast.type===toastType.Success\"\r\n [class.alert-warning]=\"toast.type===toastType.Warn\"\r\n [class.alert-danger]=\"toast.type===toastType.Danger\">\r\n <div class=\"d-flex align-items-center justify-content-between pb-1\" *ngIf=\"toast.header\">\r\n <div class=\"fw-bold pb-1\" *ngIf=\"!toast.headerValue\">{{toast.header|translate}}</div>\r\n <div class=\"fw-bold pb-1\" *ngIf=\"toast.headerValue\">{{(toast.header|translate:toast.headerValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"d-flex align-items-center justify-content-between mt-1\">\r\n <div *ngIf=\"!toast.messageValue\">{{toast.message|translate}}</div>\r\n <div *ngIf=\"toast.messageValue\">{{(toast.message|translate:toast.messageValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n </div>\r\n</div>", 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: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToast, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ template: "<div class=\"position-fixed bottom-0 end-0\" style=\"z-index: 50000;min-width: 15rem;\">\r\n <div class=\"alert alert-dismissible\" role=\"alert\" *ngFor=\"let toast of toasts\"\r\n [class.alert-primary]=\"toast.type===toastType.Primary\"\r\n [class.alert-success]=\"toast.type===toastType.Success\"\r\n [class.alert-warning]=\"toast.type===toastType.Warn\"\r\n [class.alert-danger]=\"toast.type===toastType.Danger\">\r\n <div class=\"d-flex align-items-center justify-content-between pb-1\" *ngIf=\"toast.header\">\r\n <div class=\"fw-bold pb-1\" *ngIf=\"!toast.headerValue\">{{toast.header|translate}}</div>\r\n <div class=\"fw-bold pb-1\" *ngIf=\"toast.headerValue\">{{(toast.header|translate:toast.headerValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"d-flex align-items-center justify-content-between mt-1\">\r\n <div *ngIf=\"!toast.messageValue\">{{toast.message|translate}}</div>\r\n <div *ngIf=\"toast.messageValue\">{{(toast.message|translate:toast.messageValue )}}</div>\r\n <button type=\"button\" class=\"btn-close\" (click)=\"onRemoveToast(toast)\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.AdbToastService }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXRvYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJ0ZGF0YS1zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2FkYi10b2FzdC9hZGItdG9hc3QudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcnRkYXRhLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvYWRiLXRvYXN0L2FkYi10b2FzdC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFpQyxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFJL0UsTUFBTSxPQUFPLFFBQVE7SUFHakIsWUFBbUIsWUFBNkI7UUFBN0IsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBRGhELGNBQVMsR0FBRyxTQUFTLENBQUM7UUFFbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELGFBQWEsQ0FBQyxLQUFtQjtRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO2lJQVZRLFFBQVE7cUhBQVIsUUFBUSxvRENOckIsczRDQWlCTTs7MkZEWE8sUUFBUTtrQkFIcEIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWRiVG9hc3RTZXJ2aWNlLCBUb2FzdE1lc3NhZ2UsIFRvYXN0VHlwZSB9IGZyb20gJy4vYWRiLXRvYXN0LnNlcnZpY2UnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHRlbXBsYXRlVXJsOiAnYWRiLXRvYXN0Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGJUb2FzdCB7XHJcbiAgICB0b2FzdHM6IFRvYXN0TWVzc2FnZVtdO1xyXG4gICAgdG9hc3RUeXBlID0gVG9hc3RUeXBlO1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIHRvYXN0U2VydmljZTogQWRiVG9hc3RTZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuJHRvYXN0cy5zdWJzY3JpYmUodG9hc3RzID0+IHtcclxuICAgICAgICAgICAgdGhpcy50b2FzdHMgPSB0b2FzdHM7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBvblJlbW92ZVRvYXN0KHRvYXN0OiBUb2FzdE1lc3NhZ2UpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5yZW1vdmUodG9hc3QpO1xyXG4gICAgfVxyXG59IiwiPGRpdiBjbGFzcz1cInBvc2l0aW9uLWZpeGVkIGJvdHRvbS0wIGVuZC0wXCIgc3R5bGU9XCJ6LWluZGV4OiA1MDAwMDttaW4td2lkdGg6IDE1cmVtO1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRpc21pc3NpYmxlXCIgcm9sZT1cImFsZXJ0XCIgKm5nRm9yPVwibGV0IHRvYXN0IG9mIHRvYXN0c1wiXHJcbiAgICAgICAgW2NsYXNzLmFsZXJ0LXByaW1hcnldPVwidG9hc3QudHlwZT09PXRvYXN0VHlwZS5QcmltYXJ5XCJcclxuICAgICAgICBbY2xhc3MuYWxlcnQtc3VjY2Vzc109XCJ0b2FzdC50eXBlPT09dG9hc3RUeXBlLlN1Y2Nlc3NcIlxyXG4gICAgICAgIFtjbGFzcy5hbGVydC13YXJuaW5nXT1cInRvYXN0LnR5cGU9PT10b2FzdFR5cGUuV2FyblwiXHJcbiAgICAgICAgW2NsYXNzLmFsZXJ0LWRhbmdlcl09XCJ0b2FzdC50eXBlPT09dG9hc3RUeXBlLkRhbmdlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHBiLTFcIiAqbmdJZj1cInRvYXN0LmhlYWRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnctYm9sZCBwYi0xXCIgKm5nSWY9XCIhdG9hc3QuaGVhZGVyVmFsdWVcIj57e3RvYXN0LmhlYWRlcnx0cmFuc2xhdGV9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnctYm9sZCBwYi0xXCIgKm5nSWY9XCJ0b2FzdC5oZWFkZXJWYWx1ZVwiPnt7KHRvYXN0LmhlYWRlcnx0cmFuc2xhdGU6dG9hc3QuaGVhZGVyVmFsdWUgKX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlXCIgKGNsaWNrKT1cIm9uUmVtb3ZlVG9hc3QodG9hc3QpXCIgZGF0YS1icy1kaXNtaXNzPVwiYWxlcnRcIiBhcmlhLWxhYmVsPVwiQ2xvc2VcIj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0xXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhdG9hc3QubWVzc2FnZVZhbHVlXCI+e3t0b2FzdC5tZXNzYWdlfHRyYW5zbGF0ZX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0b2FzdC5tZXNzYWdlVmFsdWVcIj57eyh0b2FzdC5tZXNzYWdlfHRyYW5zbGF0ZTp0b2FzdC5tZXNzYWdlVmFsdWUgKX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlXCIgKGNsaWNrKT1cIm9uUmVtb3ZlVG9hc3QodG9hc3QpXCIgZGF0YS1icy1kaXNtaXNzPVwiYWxlcnRcIiBhcmlhLWxhYmVsPVwiQ2xvc2VcIj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { CommonModule } from "@angular/common";
|
|
2
|
-
import { NgModule } from "@angular/core";
|
|
3
|
-
import { TranslateModule } from "@ngx-translate/core";
|
|
4
|
-
import { AdbDirectivesModule } from "../../directives/directives.module";
|
|
5
|
-
import { AdbToast } from "./adb-toast";
|
|
6
|
-
import { AdbToastService } from "./adb-toast.service";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@ngx-translate/core";
|
|
9
|
-
export class AdbToastModule {
|
|
10
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
11
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
12
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
15
|
-
type: NgModule,
|
|
16
|
-
args: [{
|
|
17
|
-
imports: [CommonModule, TranslateModule.forChild(), AdbDirectivesModule],
|
|
18
|
-
declarations: [AdbToast],
|
|
19
|
-
exports: [AdbToast],
|
|
20
|
-
providers: [AdbToastService]
|
|
21
|
-
}]
|
|
22
|
-
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { CommonModule } from "@angular/common";
|
|
2
|
+
import { NgModule } from "@angular/core";
|
|
3
|
+
import { TranslateModule } from "@ngx-translate/core";
|
|
4
|
+
import { AdbDirectivesModule } from "../../directives/directives.module";
|
|
5
|
+
import { AdbToast } from "./adb-toast";
|
|
6
|
+
import { AdbToastService } from "./adb-toast.service";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@ngx-translate/core";
|
|
9
|
+
export class AdbToastModule {
|
|
10
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbToastModule, declarations: [AdbToast], imports: [CommonModule, i1.TranslateModule, AdbDirectivesModule], exports: [AdbToast] }); }
|
|
12
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastModule, providers: [AdbToastService], imports: [CommonModule, TranslateModule.forChild(), AdbDirectivesModule] }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastModule, decorators: [{
|
|
15
|
+
type: NgModule,
|
|
16
|
+
args: [{
|
|
17
|
+
imports: [CommonModule, TranslateModule.forChild(), AdbDirectivesModule],
|
|
18
|
+
declarations: [AdbToast],
|
|
19
|
+
exports: [AdbToast],
|
|
20
|
+
providers: [AdbToastService]
|
|
21
|
+
}]
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXRvYXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItdG9hc3QvYWRiLXRvYXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQVF0RCxNQUFNLE9BQU8sY0FBYztpSUFBZCxjQUFjO2tJQUFkLGNBQWMsaUJBSlIsUUFBUSxhQURiLFlBQVksc0JBQThCLG1CQUFtQixhQUU3RCxRQUFRO2tJQUdULGNBQWMsYUFGWixDQUFDLGVBQWUsQ0FBQyxZQUhsQixZQUFZLEVBQUUsZUFBZSxDQUFDLFFBQVEsRUFBRSxFQUFFLG1CQUFtQjs7MkZBSzlELGNBQWM7a0JBTjFCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQztvQkFDeEUsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO29CQUN4QixPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7b0JBQ25CLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgQWRiRGlyZWN0aXZlc01vZHVsZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlXCI7XHJcbmltcG9ydCB7IEFkYlRvYXN0IH0gZnJvbSBcIi4vYWRiLXRvYXN0XCI7XHJcbmltcG9ydCB7IEFkYlRvYXN0U2VydmljZSB9IGZyb20gXCIuL2FkYi10b2FzdC5zZXJ2aWNlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksIEFkYkRpcmVjdGl2ZXNNb2R1bGVdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbQWRiVG9hc3RdLFxyXG4gICAgZXhwb3J0czogW0FkYlRvYXN0XSxcclxuICAgIHByb3ZpZGVyczogW0FkYlRvYXN0U2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkYlRvYXN0TW9kdWxlIHsgfSJdfQ==
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { of, Subject } from "rxjs";
|
|
3
|
-
import { delay } from "rxjs/operators";
|
|
4
|
-
import { AdbToast } from "./adb-toast";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class AdbToastService {
|
|
7
|
-
constructor(componentFactoryResolver, rendererFactory, appRef, injector) {
|
|
8
|
-
this.componentFactoryResolver = componentFactoryResolver;
|
|
9
|
-
this.rendererFactory = rendererFactory;
|
|
10
|
-
this.appRef = appRef;
|
|
11
|
-
this.injector = injector;
|
|
12
|
-
this.toasts = new Array();
|
|
13
|
-
this.toastsSubject = new Subject();
|
|
14
|
-
this.$toasts = this.toastsSubject.asObservable();
|
|
15
|
-
}
|
|
16
|
-
add(toastMessage, time = 4000) {
|
|
17
|
-
this.addContainer();
|
|
18
|
-
toastMessage.type = toastMessage.type ? toastMessage.type : ToastType.Primary;
|
|
19
|
-
toastMessage.index = this.toasts.length;
|
|
20
|
-
toastMessage.delay = of(toastMessage).pipe(delay(time)).subscribe(toast => {
|
|
21
|
-
this.remove(toast);
|
|
22
|
-
});
|
|
23
|
-
this.toasts.push(toastMessage);
|
|
24
|
-
this.toastsSubject.next(this.toasts);
|
|
25
|
-
}
|
|
26
|
-
remove(toast) {
|
|
27
|
-
this.toasts = this.toasts?.filter(x => x.index !== toast.index);
|
|
28
|
-
this.toastsSubject.next(this.toasts);
|
|
29
|
-
}
|
|
30
|
-
addContainer() {
|
|
31
|
-
if (!this.container) {
|
|
32
|
-
this.renderer = this.rendererFactory.createRenderer(null, null);
|
|
33
|
-
//create container i top
|
|
34
|
-
this.container = this.renderer.createElement('div');
|
|
35
|
-
this.renderer.appendChild(document.body, this.container);
|
|
36
|
-
let componentRef = this.componentFactoryResolver.resolveComponentFactory(AdbToast).create(this.injector);
|
|
37
|
-
this.appRef.attachView(componentRef.hostView);
|
|
38
|
-
const element = componentRef.hostView.rootNodes[0];
|
|
39
|
-
this.container.prepend(element);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
43
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
44
|
-
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
46
|
-
type: Injectable
|
|
47
|
-
}], ctorParameters:
|
|
48
|
-
export var ToastType;
|
|
49
|
-
(function (ToastType) {
|
|
50
|
-
ToastType[ToastType["Primary"] = 1] = "Primary";
|
|
51
|
-
ToastType[ToastType["Success"] = 2] = "Success";
|
|
52
|
-
ToastType[ToastType["Warn"] = 3] = "Warn";
|
|
53
|
-
ToastType[ToastType["Danger"] = 4] = "Danger";
|
|
54
|
-
})(ToastType || (ToastType = {}));
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { of, Subject } from "rxjs";
|
|
3
|
+
import { delay } from "rxjs/operators";
|
|
4
|
+
import { AdbToast } from "./adb-toast";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class AdbToastService {
|
|
7
|
+
constructor(componentFactoryResolver, rendererFactory, appRef, injector) {
|
|
8
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
|
9
|
+
this.rendererFactory = rendererFactory;
|
|
10
|
+
this.appRef = appRef;
|
|
11
|
+
this.injector = injector;
|
|
12
|
+
this.toasts = new Array();
|
|
13
|
+
this.toastsSubject = new Subject();
|
|
14
|
+
this.$toasts = this.toastsSubject.asObservable();
|
|
15
|
+
}
|
|
16
|
+
add(toastMessage, time = 4000) {
|
|
17
|
+
this.addContainer();
|
|
18
|
+
toastMessage.type = toastMessage.type ? toastMessage.type : ToastType.Primary;
|
|
19
|
+
toastMessage.index = this.toasts.length;
|
|
20
|
+
toastMessage.delay = of(toastMessage).pipe(delay(time)).subscribe(toast => {
|
|
21
|
+
this.remove(toast);
|
|
22
|
+
});
|
|
23
|
+
this.toasts.push(toastMessage);
|
|
24
|
+
this.toastsSubject.next(this.toasts);
|
|
25
|
+
}
|
|
26
|
+
remove(toast) {
|
|
27
|
+
this.toasts = this.toasts?.filter(x => x.index !== toast.index);
|
|
28
|
+
this.toastsSubject.next(this.toasts);
|
|
29
|
+
}
|
|
30
|
+
addContainer() {
|
|
31
|
+
if (!this.container) {
|
|
32
|
+
this.renderer = this.rendererFactory.createRenderer(null, null);
|
|
33
|
+
//create container i top
|
|
34
|
+
this.container = this.renderer.createElement('div');
|
|
35
|
+
this.renderer.appendChild(document.body, this.container);
|
|
36
|
+
let componentRef = this.componentFactoryResolver.resolveComponentFactory(AdbToast).create(this.injector);
|
|
37
|
+
this.appRef.attachView(componentRef.hostView);
|
|
38
|
+
const element = componentRef.hostView.rootNodes[0];
|
|
39
|
+
this.container.prepend(element);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.RendererFactory2 }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
43
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastService }); }
|
|
44
|
+
}
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbToastService, decorators: [{
|
|
46
|
+
type: Injectable
|
|
47
|
+
}], ctorParameters: () => [{ type: i0.ComponentFactoryResolver }, { type: i0.RendererFactory2 }, { type: i0.ApplicationRef }, { type: i0.Injector }] });
|
|
48
|
+
export var ToastType;
|
|
49
|
+
(function (ToastType) {
|
|
50
|
+
ToastType[ToastType["Primary"] = 1] = "Primary";
|
|
51
|
+
ToastType[ToastType["Success"] = 2] = "Success";
|
|
52
|
+
ToastType[ToastType["Warn"] = 3] = "Warn";
|
|
53
|
+
ToastType[ToastType["Danger"] = 4] = "Danger";
|
|
54
|
+
})(ToastType || (ToastType = {}));
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXRvYXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcnRkYXRhLXNoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvYWRiLXRvYXN0L2FkYi10b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNkQsVUFBVSxFQUF5QyxNQUFNLGVBQWUsQ0FBQztBQUM3SSxPQUFPLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFdkMsTUFBTSxPQUFPLGVBQWU7SUFReEIsWUFDWSx3QkFBa0QsRUFDbEQsZUFBaUMsRUFDakMsTUFBc0IsRUFDdEIsUUFBa0I7UUFIbEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVh0QixXQUFNLEdBQUcsSUFBSSxLQUFLLEVBQWdCLENBQUM7UUFDbkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBa0IsQ0FBQztRQUN0RCxZQUFPLEdBQStCLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7SUFVeEUsQ0FBQztJQUVELEdBQUcsQ0FBQyxZQUEwQixFQUFFLElBQUksR0FBRyxJQUFJO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixZQUFZLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDOUUsWUFBWSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN4QyxZQUFZLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFtQjtRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxZQUFZO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDaEUsd0JBQXdCO1lBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDekQsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlDLE1BQU0sT0FBTyxHQUFJLFlBQVksQ0FBQyxRQUFpQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQWdCLENBQUM7WUFDNUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNMLENBQUM7aUlBMUNRLGVBQWU7cUlBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVTs7QUFzRFgsTUFBTSxDQUFOLElBQVksU0FLWDtBQUxELFdBQVksU0FBUztJQUNqQiwrQ0FBVyxDQUFBO0lBQ1gsK0NBQVcsQ0FBQTtJQUNYLHlDQUFRLENBQUE7SUFDUiw2Q0FBVSxDQUFBO0FBQ2QsQ0FBQyxFQUxXLFNBQVMsS0FBVCxTQUFTLFFBS3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwbGljYXRpb25SZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRW1iZWRkZWRWaWV3UmVmLCBJbmplY3RhYmxlLCBJbmplY3RvciwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBkZWxheSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBBZGJUb2FzdCB9IGZyb20gXCIuL2FkYi10b2FzdFwiO1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBZGJUb2FzdFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSB0b2FzdHMgPSBuZXcgQXJyYXk8VG9hc3RNZXNzYWdlPigpO1xyXG4gICAgcHJpdmF0ZSB0b2FzdHNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8VG9hc3RNZXNzYWdlW10+KCk7XHJcbiAgICAkdG9hc3RzOiBPYnNlcnZhYmxlPFRvYXN0TWVzc2FnZVtdPiA9IHRoaXMudG9hc3RzU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgIHJlbmRlcmVyOiBSZW5kZXJlcjI7XHJcbiAgICBkb21FbGVtZW50OiBIVE1MRWxlbWVudDtcclxuICAgIGNvbnRhaW5lcjogYW55O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIsXHJcbiAgICAgICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkKHRvYXN0TWVzc2FnZTogVG9hc3RNZXNzYWdlLCB0aW1lID0gNDAwMCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkQ29udGFpbmVyKCk7XHJcbiAgICAgICAgdG9hc3RNZXNzYWdlLnR5cGUgPSB0b2FzdE1lc3NhZ2UudHlwZSA/IHRvYXN0TWVzc2FnZS50eXBlIDogVG9hc3RUeXBlLlByaW1hcnk7XHJcbiAgICAgICAgdG9hc3RNZXNzYWdlLmluZGV4ID0gdGhpcy50b2FzdHMubGVuZ3RoO1xyXG4gICAgICAgIHRvYXN0TWVzc2FnZS5kZWxheSA9IG9mKHRvYXN0TWVzc2FnZSkucGlwZShkZWxheSh0aW1lKSkuc3Vic2NyaWJlKHRvYXN0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZW1vdmUodG9hc3QpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMudG9hc3RzLnB1c2godG9hc3RNZXNzYWdlKTtcclxuICAgICAgICB0aGlzLnRvYXN0c1N1YmplY3QubmV4dCh0aGlzLnRvYXN0cyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlKHRvYXN0OiBUb2FzdE1lc3NhZ2UpIHtcclxuICAgICAgICB0aGlzLnRvYXN0cyA9IHRoaXMudG9hc3RzPy5maWx0ZXIoeCA9PiB4LmluZGV4ICE9PSB0b2FzdC5pbmRleCk7XHJcbiAgICAgICAgdGhpcy50b2FzdHNTdWJqZWN0Lm5leHQodGhpcy50b2FzdHMpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYWRkQ29udGFpbmVyKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5jb250YWluZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xyXG4gICAgICAgICAgICAvL2NyZWF0ZSBjb250YWluZXIgaSB0b3BcclxuICAgICAgICAgICAgdGhpcy5jb250YWluZXIgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHRoaXMuY29udGFpbmVyKTtcclxuICAgICAgICAgICAgbGV0IGNvbXBvbmVudFJlZiA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KEFkYlRvYXN0KS5jcmVhdGUodGhpcy5pbmplY3Rvcik7XHJcbiAgICAgICAgICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcclxuICAgICAgICAgICAgY29uc3QgZWxlbWVudCA9IChjb21wb25lbnRSZWYuaG9zdFZpZXcgYXMgRW1iZWRkZWRWaWV3UmVmPGFueT4pLnJvb3ROb2Rlc1swXSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICAgICAgdGhpcy5jb250YWluZXIucHJlcGVuZChlbGVtZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBUb2FzdE1lc3NhZ2Uge1xyXG4gICAgaGVhZGVyPzogc3RyaW5nLFxyXG4gICAgaGVhZGVyVmFsdWU/OiBhbnk7XHJcbiAgICBtZXNzYWdlOiBzdHJpbmcsXHJcbiAgICBtZXNzYWdlVmFsdWU/OiBhbnk7XHJcbiAgICB0eXBlPzogVG9hc3RUeXBlLFxyXG4gICAgaW5kZXg/OiBudW1iZXI7XHJcbiAgICBkZWxheT86IGFueTtcclxufVxyXG5leHBvcnQgZW51bSBUb2FzdFR5cGUge1xyXG4gICAgUHJpbWFyeSA9IDEsXHJcbiAgICBTdWNjZXNzID0gMixcclxuICAgIFdhcm4gPSAzLFxyXG4gICAgRGFuZ2VyID0gNFxyXG59Il19
|