@morozeckiy/dd-lib 0.7.38 → 0.7.44

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 (106) hide show
  1. package/assets/images/svg/eds-2-m.svg +34 -0
  2. package/assets/images/svg/eds-2.svg +34 -0
  3. package/assets/scss/common.scss +4 -4
  4. package/assets/scss/theme.scss +2 -2
  5. package/assets/scss/titles.scss +2 -2
  6. package/assets/styles.scss +12 -12
  7. package/fesm2022/morozeckiy-dd-lib.mjs +545 -461
  8. package/fesm2022/morozeckiy-dd-lib.mjs.map +1 -1
  9. package/lib/common/lib-common-button.d.ts +1 -1
  10. package/lib/common/lib-common-input-text.d.ts +1 -1
  11. package/lib/components/footer/footer-links-block/footer-link/footer-link.component.d.ts +7 -0
  12. package/lib/components/footer/footer-links-block/footer-links-block.component.d.ts +7 -0
  13. package/lib/components/footer/footer.component.d.ts +21 -3
  14. package/lib/components/index.d.ts +2 -0
  15. package/lib/core/dialog/modal-base/modal-common.component.d.ts +1 -1
  16. package/lib/core/services/destroy.service.d.ts +3 -0
  17. package/lib/lib-input/lib-input.component.d.ts +5 -6
  18. package/lib/lib-search-input/lib-search-input.component.d.ts +2 -3
  19. package/lib/lib-select/lib-select.component.d.ts +6 -5
  20. package/lib/svg-icons/svg-icon.model.d.ts +96 -82
  21. package/morozeckiy-dd-lib-0.7.44.tgz +0 -0
  22. package/package.json +4 -6
  23. package/esm2022/lib/common/const.mjs +0 -10
  24. package/esm2022/lib/common/lib-common-button.mjs +0 -65
  25. package/esm2022/lib/common/lib-common-input-text.mjs +0 -211
  26. package/esm2022/lib/components/data-empty/data-empty.component.mjs +0 -20
  27. package/esm2022/lib/components/error-page/error-page.component.mjs +0 -32
  28. package/esm2022/lib/components/footer/footer.component.mjs +0 -22
  29. package/esm2022/lib/components/index.mjs +0 -7
  30. package/esm2022/lib/components/main-shared/main-shared.component.mjs +0 -16
  31. package/esm2022/lib/components/not-found/not-found.component.mjs +0 -29
  32. package/esm2022/lib/components/tech-works/tech-works.component.mjs +0 -29
  33. package/esm2022/lib/core/dialog/dialog-config.mjs +0 -15
  34. package/esm2022/lib/core/dialog/dialog-container.component.mjs +0 -40
  35. package/esm2022/lib/core/dialog/dialog-ref.mjs +0 -19
  36. package/esm2022/lib/core/dialog/dialog.service.mjs +0 -106
  37. package/esm2022/lib/core/dialog/modal-base/modal-base.component.mjs +0 -52
  38. package/esm2022/lib/core/dialog/modal-base/modal-common.component.mjs +0 -13
  39. package/esm2022/lib/core/directives/auto-height.directive.mjs +0 -36
  40. package/esm2022/lib/core/directives/ban-symbol.directive.mjs +0 -36
  41. package/esm2022/lib/core/directives/click-outside.directive.mjs +0 -42
  42. package/esm2022/lib/core/directives/counter.directive.mjs +0 -76
  43. package/esm2022/lib/core/directives/declension.directive.mjs +0 -40
  44. package/esm2022/lib/core/directives/drop-down-position.directive.mjs +0 -66
  45. package/esm2022/lib/core/directives/fixed-position.directive.mjs +0 -89
  46. package/esm2022/lib/core/directives/list-keyboard-navigation.directive.mjs +0 -57
  47. package/esm2022/lib/core/directives/max-num.directive.mjs +0 -56
  48. package/esm2022/lib/core/directives/phone-mask.directive.mjs +0 -34
  49. package/esm2022/lib/core/directives/resize-textarea.directive.mjs +0 -26
  50. package/esm2022/lib/core/directives/selectable-item.directive.mjs +0 -29
  51. package/esm2022/lib/core/directives/triangle.directive.mjs +0 -75
  52. package/esm2022/lib/core/index.mjs +0 -37
  53. package/esm2022/lib/core/pipes/filter-tabs.pipe.mjs +0 -31
  54. package/esm2022/lib/core/pipes/filter.pipe.mjs +0 -44
  55. package/esm2022/lib/core/pipes/highlight.pipe.mjs +0 -23
  56. package/esm2022/lib/core/pipes/reverse.pipe.mjs +0 -17
  57. package/esm2022/lib/core/pipes/safe.pipe.mjs +0 -34
  58. package/esm2022/lib/core/services/date.service.mjs +0 -119
  59. package/esm2022/lib/core/services/destroy.service.mjs +0 -15
  60. package/esm2022/lib/core/services/fetcher.service.mjs +0 -76
  61. package/esm2022/lib/core/services/interceptors.service.mjs +0 -27
  62. package/esm2022/lib/core/services/svg-icons.service.mjs +0 -26
  63. package/esm2022/lib/core/services/theme-constructor.service.mjs +0 -70
  64. package/esm2022/lib/core/services/validators.service.mjs +0 -106
  65. package/esm2022/lib/core/toast/index.mjs +0 -5
  66. package/esm2022/lib/core/toast/toast/toast-animations.mjs +0 -9
  67. package/esm2022/lib/core/toast/toast/toast.component.mjs +0 -62
  68. package/esm2022/lib/core/toast/toast-config.mjs +0 -35
  69. package/esm2022/lib/core/toast/toast-ref.mjs +0 -15
  70. package/esm2022/lib/core/toast/toast.service.mjs +0 -74
  71. package/esm2022/lib/core/tooltip/tooltip.component.mjs +0 -27
  72. package/esm2022/lib/core/tooltip/tooltip.directive.mjs +0 -179
  73. package/esm2022/lib/lib-accordion/lib-accordion.component.mjs +0 -15
  74. package/esm2022/lib/lib-back-button/lib-back-button.component.mjs +0 -37
  75. package/esm2022/lib/lib-button/lib-button.component.mjs +0 -26
  76. package/esm2022/lib/lib-calendar/lib-calendar.component.mjs +0 -316
  77. package/esm2022/lib/lib-card/lib-card.component.mjs +0 -34
  78. package/esm2022/lib/lib-checkbox/lib-checkbox.component.mjs +0 -72
  79. package/esm2022/lib/lib-comment-input/lib-comment-input.component.mjs +0 -20
  80. package/esm2022/lib/lib-date-input/lib-date-input.component.mjs +0 -117
  81. package/esm2022/lib/lib-date-range/lib-date-range.component.mjs +0 -117
  82. package/esm2022/lib/lib-disclaimer/lib-disclaimer.component.mjs +0 -26
  83. package/esm2022/lib/lib-file-loader/lib-file-loader.component.mjs +0 -116
  84. package/esm2022/lib/lib-file-upload/lib-file-upload.component.mjs +0 -37
  85. package/esm2022/lib/lib-filter/lib-filter.component.mjs +0 -29
  86. package/esm2022/lib/lib-filter-button/lib-filter-button.component.mjs +0 -41
  87. package/esm2022/lib/lib-image-loader/lib-image-loader.component.mjs +0 -14
  88. package/esm2022/lib/lib-info-card/lib-info-card.component.mjs +0 -30
  89. package/esm2022/lib/lib-input/lib-input.component.mjs +0 -99
  90. package/esm2022/lib/lib-loader/lib-loader.component.mjs +0 -22
  91. package/esm2022/lib/lib-period/lib-period.component.mjs +0 -118
  92. package/esm2022/lib/lib-radio/lib-radio.component.mjs +0 -78
  93. package/esm2022/lib/lib-search-input/lib-search-input.component.mjs +0 -209
  94. package/esm2022/lib/lib-select/lib-select.component.mjs +0 -384
  95. package/esm2022/lib/lib-skeleton/lib-skeleton.component.mjs +0 -45
  96. package/esm2022/lib/lib-sort/lib-sort.component.mjs +0 -44
  97. package/esm2022/lib/lib-step/lib-step.component.mjs +0 -19
  98. package/esm2022/lib/lib-svg/lib-svg.component.mjs +0 -75
  99. package/esm2022/lib/lib-svg-icon/lib-svg-icon.component.mjs +0 -61
  100. package/esm2022/lib/lib-tabs-fragment/lib-tabs-fragment.component.mjs +0 -92
  101. package/esm2022/lib/lib-textarea/lib-textarea.component.mjs +0 -62
  102. package/esm2022/lib/svg-icons/svg-icon.model.mjs +0 -409
  103. package/esm2022/lib/utils/decorators.mjs +0 -102
  104. package/esm2022/morozeckiy-dd-lib.mjs +0 -5
  105. package/esm2022/public-api.mjs +0 -41
  106. package/morozeckiy-dd-lib-0.7.38.tgz +0 -0
@@ -1,106 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Validators } from '@angular/forms';
3
- import { of } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- export class ValidatorsService {
6
- constructor() { }
7
- /** валидатор совпадения пароллей. При использовании указывать поля pswd & confPswd*/
8
- static passEqual(passwordKey, passwordConfirmationKey) {
9
- return (group) => {
10
- const passwordInput = group.controls[passwordKey];
11
- const passwordConfirmationInput = group.controls[passwordConfirmationKey];
12
- if (passwordInput.value !== passwordConfirmationInput.value) {
13
- return passwordConfirmationInput.setErrors({ notEquivalent: true });
14
- }
15
- else {
16
- return passwordConfirmationInput.setErrors(null);
17
- }
18
- };
19
- }
20
- static passNotEqual(el) {
21
- if (!el.get('pswd') || !el.get('oldPswd')) {
22
- return null;
23
- }
24
- if (!(el.dirty || el.touched) || el.get('pswd')?.value !== el.get('oldPswd')?.value) {
25
- return null;
26
- }
27
- return {
28
- passNotEqual: 'Старый и новый пароли не должны совпадать',
29
- };
30
- }
31
- static wrongLogin() {
32
- return {
33
- wrongMail: 'Неверный логин!',
34
- };
35
- }
36
- static wrongLoginOrPswd() {
37
- return {
38
- wrongLogin: 'Неверный логин или пароль!',
39
- };
40
- }
41
- static existLogin() {
42
- return {
43
- mailErr: 'Пользователь с таким адресом уже зарегистрирован.',
44
- };
45
- }
46
- /** валидатор имени*/
47
- static getNameValid() {
48
- return [Validators.required, Validators.pattern(/^[A-ZА-Яa-zа-яЁё0-9- .]+$/), Validators.maxLength(35)];
49
- }
50
- /** валидатор email*/
51
- static getMailValid(el) {
52
- const pattern = /^([A-Za-z0-9+_-]+\.)*[A-Za-z0-9+_-]+@[A-Za-z0-9+_-]+(\.[A-Za-z0-9+_-]+)*\.[A-Za-z]{2,6}$/;
53
- if (!el?.value) {
54
- return of({
55
- required: 'Это поле обязательно для заполнения',
56
- });
57
- }
58
- else if (!pattern.test(el.value) && el.value !== 'test_admin' && el.value !== 'admin') {
59
- return of({
60
- email: 'Некорректно введены данные',
61
- });
62
- }
63
- else {
64
- return of(null);
65
- }
66
- }
67
- static getErrorText(error) {
68
- const presetErrors = ['minlength', 'maxlength', 'email', 'required', 'pattern'];
69
- if (error) {
70
- const key = Object.keys(error)?.[0];
71
- if (key && presetErrors.includes(key)) {
72
- switch (key) {
73
- case 'minlength': {
74
- return `Не менее ${error['minlength'].requiredLength} символов`;
75
- }
76
- case 'maxlength': {
77
- return `Не более${error['maxlength'].requiredLength} символов`;
78
- }
79
- case 'pattern': {
80
- return `Неверно заполнено поле`;
81
- }
82
- case 'email': {
83
- return `Неверно введен email`;
84
- }
85
- case 'required': {
86
- return `Обязательное поле`;
87
- }
88
- default: {
89
- return 'Неверно введен текст';
90
- }
91
- }
92
- }
93
- else if (key && !presetErrors.includes(key)) {
94
- return error[key];
95
- }
96
- }
97
- return undefined;
98
- }
99
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ValidatorsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
100
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ValidatorsService, providedIn: 'root' }); }
101
- }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ValidatorsService, decorators: [{
103
- type: Injectable,
104
- args: [{ providedIn: 'root' }]
105
- }], ctorParameters: () => [] });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS9zZXJ2aWNlcy92YWxpZGF0b3JzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQStDLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hGLE9BQU8sRUFBYSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBR3BDLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsZ0JBQWUsQ0FBQztJQUVoQixxRkFBcUY7SUFDOUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxXQUFtQixFQUFFLHVCQUErQjtRQUMxRSxPQUFPLENBQUMsS0FBZ0IsRUFBRSxFQUFFO1lBQzFCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEQsTUFBTSx5QkFBeUIsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDMUUsSUFBSSxhQUFhLENBQUMsS0FBSyxLQUFLLHlCQUF5QixDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUM1RCxPQUFPLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3RFLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBbUI7UUFDNUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFF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NUIsQ0FBQztvQkFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDO3dCQUNSLE9BQU8sc0JBQXNCLENBQUE7b0JBQy9CLENBQUM7Z0JBRUgsQ0FBQztZQUNILENBQUM7aUJBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzlDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ25CLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs4R0FuR1UsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7QWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgVmFsaWRhdG9yc1NlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgLyoqINCy0LDQu9C40LTQsNGC0L7RgCDRgdC+0LLQv9Cw0LTQtdC90LjRjyDQv9Cw0YDQvtC70LvQtdC5LiDQn9GA0Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Lgg0YPQutCw0LfRi9Cy0LDRgtGMINC/0L7Qu9GPIHBzd2QgJiBjb25mUHN3ZCovXHJcbiAgcHVibGljIHN0YXRpYyBwYXNzRXF1YWwocGFzc3dvcmRLZXk6IHN0cmluZywgcGFzc3dvcmRDb25maXJtYXRpb25LZXk6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMge1xyXG4gICAgcmV0dXJuIChncm91cDogRm9ybUdyb3VwKSA9PiB7XHJcbiAgICAgIGNvbnN0IHBhc3N3b3JkSW5wdXQgPSBncm91cC5jb250cm9sc1twYXNzd29yZEtleV07XHJcbiAgICAgIGNvbnN0IHBhc3N3b3JkQ29uZmlybWF0aW9uSW5wdXQgPSBncm91cC5jb250cm9sc1twYXNzd29yZENvbmZpcm1hdGlvbktleV07XHJcbiAgICAgIGlmIChwYXNzd29yZElucHV0LnZhbHVlICE9PSBwYXNzd29yZENvbmZpcm1hdGlvbklucHV0LnZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkQ29uZmlybWF0aW9uSW5wdXQuc2V0RXJyb3JzKHsgbm90RXF1aXZhbGVudDogdHJ1ZSB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gcGFzc3dvcmRDb25maXJtYXRpb25JbnB1dC5zZXRFcnJvcnMobnVsbCk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIHBhc3NOb3RFcXVhbChlbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgaWYgKCFlbC5nZXQoJ3Bzd2QnKSB8fCAhZWwuZ2V0KCdvbGRQc3dkJykpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAoIShlbC5kaXJ0eSB8fCBlbC50b3VjaGVkKSB8fCBlbC5nZXQoJ3Bzd2QnKT8udmFsdWUgIT09IGVsLmdldCgnb2xkUHN3ZCcpPy52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgIHBhc3NOb3RFcXVhbDogJ9Ch0YLQsNGA0YvQuSDQuCDQvdC+0LLRi9C5INC/0LDRgNC+0LvQuCDQvdC1INC00L7Qu9C20L3RiyDRgdC+0LLQv9Cw0LTQsNGC0YwnLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgd3JvbmdMb2dpbigpOiBWYWxpZGF0aW9uRXJyb3JzIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHdyb25nTWFpbDogJ9Cd0LXQstC10YDQvdGL0Lkg0LvQvtCz0LjQvSEnLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgd3JvbmdMb2dpbk9yUHN3ZCgpOiBWYWxpZGF0aW9uRXJyb3JzIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHdyb25nTG9naW46ICfQndC10LLQtdGA0L3Ri9C5INC70L7Qs9C40L0g0LjQu9C4INC/0LDRgNC+0LvRjCEnLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZXhpc3RMb2dpbigpOiBWYWxpZGF0aW9uRXJyb3JzIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG1haWxFcnI6ICfQn9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0YEg0YLQsNC60LjQvCDQsNC00YDQtdGB0L7QvCDRg9C20LUg0LfQsNGA0LXQs9C40YHRgtGA0LjRgNC+0LLQsNC9LicsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLyoqINCy0LDQu9C40LTQsNGC0L7RgCDQuNC80LXQvdC4Ki9cclxuICBwdWJsaWMgc3RhdGljIGdldE5hbWVWYWxpZCgpIHtcclxuICAgIHJldHVybiBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKC9eW0EtWtCQLdCvYS160LAt0Y/QgdGRMC05LSAuXSskLyksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDM1KV07XHJcbiAgfVxyXG5cclxuICAvKiog0LLQsNC70LjQtNCw0YLQvtGAIGVtYWlsKi9cclxuICBwdWJsaWMgc3RhdGljIGdldE1haWxWYWxpZChlbD86IEFic3RyYWN0Q29udHJvbCk6IE9ic2VydmFibGU8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHtcclxuICAgIGNvbnN0IHBhdHRlcm4gPVxyXG4gICAgICAvXihbQS1aYS16MC05K18tXStcXC4pKltBLVphLXowLTkrXy1dK0BbQS1aYS16MC05K18tXSsoXFwuW0EtWmEtejAtOStfLV0rKSpcXC5bQS1aYS16XXsyLDZ9JC87XHJcbiAgICBpZiAoIWVsPy52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gb2Yoe1xyXG4gICAgICAgIHJlcXVpcmVkOiAn0K3RgtC+INC/0L7Qu9C1INC+0LHRj9C30LDRgtC10LvRjNC90L4g0LTQu9GPINC30LDQv9C+0LvQvdC10L3QuNGPJyxcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKCFwYXR0ZXJuLnRlc3QoZWwudmFsdWUpICYmIGVsLnZhbHVlICE9PSAndGVzdF9hZG1pbicgJiYgZWwudmFsdWUgIT09ICdhZG1pbicpIHtcclxuICAgICAgcmV0dXJuIG9mKHtcclxuICAgICAgICBlbWFpbDogJ9Cd0LXQutC+0YDRgNC10LrRgtC90L4g0LLQstC10LTQtdC90Ysg0LTQsNC90L3Ri9C1JyxcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gb2YobnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGdldEVycm9yVGV4dChlcnJvcjogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgY29uc3QgcHJlc2V0RXJyb3JzID0gWydtaW5sZW5ndGgnLCAnbWF4bGVuZ3RoJywgJ2VtYWlsJywgJ3JlcXVpcmVkJywgJ3BhdHRlcm4nXVxyXG4gICAgaWYgKGVycm9yKSB7XHJcbiAgICAgIGNvbnN0IGtleSA9IE9iamVjdC5rZXlzKGVycm9yKT8uWzBdO1xyXG4gICAgICBpZiAoa2V5ICYmIHByZXNldEVycm9ycy5pbmNsdWRlcyhrZXkpKSB7XHJcbiAgICAgICAgc3dpdGNoIChrZXkpIHtcclxuICAgICAgICAgIGNhc2UgJ21pbmxlbmd0aCc6IHtcclxuICAgICAgICAgICAgcmV0dXJuIGDQndC1INC80LXQvdC10LUgJHtlcnJvclsnbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9INGB0LjQvNCy0L7Qu9C+0LJgXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjYXNlICdtYXhsZW5ndGgnOiB7XHJcbiAgICAgICAgICAgIHJldHVybiBg0J3QtSDQsdC+0LvQtdC1JHtlcnJvclsnbWF4bGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9INGB0LjQvNCy0L7Qu9C+0LJgXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjYXNlICdwYXR0ZXJuJzoge1xyXG4gICAgICAgICAgICByZXR1cm4gYNCd0LXQstC10YDQvdC+INC30LDQv9C+0LvQvdC10L3QviDQv9C+0LvQtWBcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNhc2UgJ2VtYWlsJzoge1xyXG4gICAgICAgICAgICByZXR1cm4gYNCd0LXQstC10YDQvdC+INCy0LLQtdC00LXQvSBlbWFpbGBcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNhc2UgJ3JlcXVpcmVkJzoge1xyXG4gICAgICAgICAgICByZXR1cm4gYNCe0LHRj9C30LDRgtC10LvRjNC90L7QtSDQv9C+0LvQtWBcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICAgICAgcmV0dXJuICfQndC10LLQtdGA0L3QviDQstCy0LXQtNC10L0g0YLQtdC60YHRgidcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKGtleSAmJiAhcHJlc2V0RXJyb3JzLmluY2x1ZGVzKGtleSkpIHtcclxuICAgICAgICByZXR1cm4gZXJyb3Jba2V5XVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,5 +0,0 @@
1
- export * from './toast.service';
2
- export * from './toast/toast.component';
3
- export * from './toast-config';
4
- export * from './toast-ref';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL3RvYXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx5QkFBeUIsQ0FBQTtBQUN2QyxjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsYUFBYSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90b2FzdC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi90b2FzdC90b2FzdC5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3QtY29uZmlnJ1xyXG5leHBvcnQgKiBmcm9tICcuL3RvYXN0LXJlZidcclxuIl19
@@ -1,9 +0,0 @@
1
- import { animate, state, style, transition, trigger, } from '@angular/animations';
2
- export const toastAnimations = {
3
- fadeToast: trigger('fadeAnimation', [
4
- state('default', style({ opacity: 1 })),
5
- transition('void => *', [style({ opacity: 0 }), animate('{{ fadeIn }}ms')]),
6
- transition('default => closing', animate('{{ fadeOut }}ms', style({ opacity: 0 }))),
7
- ]),
8
- };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtYW5pbWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2NvcmUvdG9hc3QvdG9hc3QvdG9hc3QtYW5pbWF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUE0QixLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEdBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUxRyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBRXhCO0lBQ0YsU0FBUyxFQUFFLE9BQU8sQ0FBQyxlQUFlLEVBQUU7UUFDbEMsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztRQUNyQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUMsT0FBTyxFQUFFLENBQUMsRUFBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUN6RSxVQUFVLENBQ1Isb0JBQW9CLEVBQ3BCLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUNoRDtLQUNGLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthbmltYXRlLCBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcix9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IHRvYXN0QW5pbWF0aW9uczoge1xyXG4gIHJlYWRvbmx5IGZhZGVUb2FzdDogQW5pbWF0aW9uVHJpZ2dlck1ldGFkYXRhO1xyXG59ID0ge1xyXG4gIGZhZGVUb2FzdDogdHJpZ2dlcignZmFkZUFuaW1hdGlvbicsIFtcclxuICAgIHN0YXRlKCdkZWZhdWx0Jywgc3R5bGUoe29wYWNpdHk6IDF9KSksXHJcbiAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBbc3R5bGUoe29wYWNpdHk6IDB9KSwgYW5pbWF0ZSgne3sgZmFkZUluIH19bXMnKV0pLFxyXG4gICAgdHJhbnNpdGlvbihcclxuICAgICAgJ2RlZmF1bHQgPT4gY2xvc2luZycsXHJcbiAgICAgIGFuaW1hdGUoJ3t7IGZhZGVPdXQgfX1tcycsIHN0eWxlKHtvcGFjaXR5OiAwfSkpLFxyXG4gICAgKSxcclxuICBdKSxcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFRvYXN0QW5pbWF0aW9uU3RhdGUgPSAnZGVmYXVsdCcgfCAnY2xvc2luZyc7XHJcbiJdfQ==
@@ -1,62 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
2
- import { defaultToastConfig, TOAST_CONFIG_TOKEN } from "../toast-config";
3
- import { toastAnimations } from "./toast-animations";
4
- import { OverlayModule } from "@angular/cdk/overlay";
5
- import { BehaviorSubject } from "rxjs";
6
- import { AsyncPipe } from "@angular/common";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../toast-config";
9
- import * as i2 from "../toast-ref";
10
- export class ToastComponent {
11
- constructor(data, toastConfig, ref) {
12
- this.data = data;
13
- this.toastConfig = toastConfig;
14
- this.ref = ref;
15
- this.callEvent = new EventEmitter();
16
- this.animationState$ = new BehaviorSubject('default');
17
- }
18
- ngOnInit() {
19
- this.intervalId = setTimeout(() => this.animationState$.next('closing'), this.toastConfig.interval);
20
- }
21
- onClickDesc($event) {
22
- if ($event.target.tagName === 'A') {
23
- this.callEvent.emit();
24
- }
25
- }
26
- ngOnDestroy() {
27
- clearTimeout(this.intervalId);
28
- }
29
- close() {
30
- this.ref.close();
31
- }
32
- onFadeFinished(event) {
33
- const { toState } = event;
34
- const isFadeOut = toState === 'closing';
35
- const itFinished = this.animationState$.getValue() === 'closing';
36
- if (isFadeOut && itFinished) {
37
- this.close();
38
- }
39
- }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ToastComponent, deps: [{ token: i1.ToastData }, { token: i1.ToastConfig }, { token: i2.ToastRef }], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: ToastComponent, isStandalone: true, selector: "dd-toast", outputs: { callEvent: "callEvent" }, providers: [
42
- {
43
- provide: TOAST_CONFIG_TOKEN,
44
- useValue: defaultToastConfig,
45
- }
46
- ], ngImport: i0, template: "<div class=\"toast {{ data.type }}\" (click)=\"close()\"\r\n [@fadeAnimation]=\"{value: (animationState$ | async), params:\r\n { fadeIn: toastConfig!.animation!.fadeIn, fadeOut: toastConfig!.animation!.fadeOut }}\"\r\n (@fadeAnimation.done)=\"onFadeFinished($event)\">\r\n<!-- <dd-lib-svg-icon [icon]=\"data.type\"></dd-lib-svg-icon>-->\r\n @if (data.type === 'success') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM11.824 6.16L7.288 10.696C7.176 10.808 7.024 10.872 6.864 10.872C6.704 10.872 6.552 10.808 6.44 10.696L4.176 8.432C3.944 8.2 3.944 7.816 4.176 7.584C4.408 7.352 4.792 7.352 5.024 7.584L6.864 9.424L10.976 5.312C11.208 5.08 11.592 5.08 11.824 5.312C12.056 5.544 12.056 5.92 11.824 6.16Z\"\r\n fill=\"#07B700\"/>\r\n </svg>\r\n }\r\n @if (data.type === 'warning') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM7.4 4.8C7.4 4.472 7.672 4.2 8 4.2C8.328 4.2 8.6 4.472 8.6 4.8V8.8C8.6 9.128 8.328 9.4 8 9.4C7.672 9.4 7.4 9.128 7.4 8.8V4.8ZM8.736 11.504C8.696 11.608 8.64 11.688 8.568 11.768C8.488 11.84 8.4 11.896 8.304 11.936C8.208 11.976 8.104 12 8 12C7.896 12 7.792 11.976 7.696 11.936C7.6 11.896 7.512 11.84 7.432 11.768C7.36 11.688 7.304 11.608 7.264 11.504C7.224 11.408 7.2 11.304 7.2 11.2C7.2 11.096 7.224 10.992 7.264 10.896C7.304 10.8 7.36 10.712 7.432 10.632C7.512 10.56 7.6 10.504 7.696 10.464C7.888 10.384 8.112 10.384 8.304 10.464C8.4 10.504 8.488 10.56 8.568 10.632C8.64 10.712 8.696 10.8 8.736 10.896C8.776 10.992 8.8 11.096 8.8 11.2C8.8 11.304 8.776 11.408 8.736 11.504Z\"\r\n fill=\"#FAAD14\"/>\r\n </svg>\r\n\r\n }\r\n @if (data.type === 'danger') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM10.688 9.84C10.92 10.072 10.92 10.456 10.688 10.688C10.568 10.808 10.416 10.864 10.264 10.864C10.112 10.864 9.96 10.808 9.84 10.688L8 8.848L6.16 10.688C6.04 10.808 5.888 10.864 5.736 10.864C5.584 10.864 5.432 10.808 5.312 10.688C5.08 10.456 5.08 10.072 5.312 9.84L7.152 8L5.312 6.16C5.08 5.928 5.08 5.544 5.312 5.312C5.544 5.08 5.928 5.08 6.16 5.312L8 7.152L9.84 5.312C10.072 5.08 10.456 5.08 10.688 5.312C10.92 5.544 10.92 5.928 10.688 6.16L8.848 8L10.688 9.84Z\"\r\n fill=\"#FF3645\"/>\r\n </svg>\r\n\r\n }\r\n @if (data.type === 'info') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16ZM8.6 11.2C8.6 11.528 8.328 11.8 8 11.8C7.672 11.8 7.4 11.528 7.4 11.2V7.2C7.4 6.872 7.672 6.6 8 6.6C8.328 6.6 8.6 6.872 8.6 7.2L8.6 11.2ZM7.264 4.496C7.304 4.392 7.36 4.312 7.432 4.232C7.512 4.16 7.6 4.104 7.696 4.064C7.792 4.024 7.896 4 8 4C8.104 4 8.208 4.024 8.304 4.064C8.4 4.104 8.488 4.16 8.568 4.232C8.64 4.312 8.696 4.392 8.736 4.496C8.776 4.592 8.8 4.696 8.8 4.8C8.8 4.904 8.776 5.008 8.736 5.104C8.696 5.2 8.64 5.288 8.568 5.368C8.488 5.44 8.4 5.496 8.304 5.536C8.112 5.616 7.888 5.616 7.696 5.536C7.6 5.496 7.512 5.44 7.432 5.368C7.36 5.288 7.304 5.2 7.264 5.104C7.224 5.008 7.2 4.904 7.2 4.8C7.2 4.696 7.224 4.592 7.264 4.496Z\"\r\n fill=\"#007BFB\"/>\r\n </svg>\r\n\r\n }\r\n <div class=\"ml-24\">\r\n <div [innerHTML]=\"data.title\"></div>\r\n <div (click)=\"onClickDesc($event)\" [innerHTML]=\"data.description\"></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block}.toast{position:relative;margin-bottom:20px;display:flex;align-items:center;padding:20px;background:#eefaf3;border-radius:12px;opacity:1;max-width:350px;width:100%}.toast.success{background-color:var(--light-green-color)}.toast.info{background-color:var(--light-blue-color)}.toast.warning{background-color:var(--yellow-card)}.toast.danger{background-color:var(--red-light-color)}\n"], dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "pipe", type: AsyncPipe, name: "async" }], animations: [toastAnimations.fadeToast], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
47
- }
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ToastComponent, decorators: [{
49
- type: Component,
50
- args: [{ selector: 'dd-toast', standalone: true, imports: [
51
- OverlayModule,
52
- AsyncPipe,
53
- ], providers: [
54
- {
55
- provide: TOAST_CONFIG_TOKEN,
56
- useValue: defaultToastConfig,
57
- }
58
- ], animations: [toastAnimations.fadeToast], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"toast {{ data.type }}\" (click)=\"close()\"\r\n [@fadeAnimation]=\"{value: (animationState$ | async), params:\r\n { fadeIn: toastConfig!.animation!.fadeIn, fadeOut: toastConfig!.animation!.fadeOut }}\"\r\n (@fadeAnimation.done)=\"onFadeFinished($event)\">\r\n<!-- <dd-lib-svg-icon [icon]=\"data.type\"></dd-lib-svg-icon>-->\r\n @if (data.type === 'success') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM11.824 6.16L7.288 10.696C7.176 10.808 7.024 10.872 6.864 10.872C6.704 10.872 6.552 10.808 6.44 10.696L4.176 8.432C3.944 8.2 3.944 7.816 4.176 7.584C4.408 7.352 4.792 7.352 5.024 7.584L6.864 9.424L10.976 5.312C11.208 5.08 11.592 5.08 11.824 5.312C12.056 5.544 12.056 5.92 11.824 6.16Z\"\r\n fill=\"#07B700\"/>\r\n </svg>\r\n }\r\n @if (data.type === 'warning') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM7.4 4.8C7.4 4.472 7.672 4.2 8 4.2C8.328 4.2 8.6 4.472 8.6 4.8V8.8C8.6 9.128 8.328 9.4 8 9.4C7.672 9.4 7.4 9.128 7.4 8.8V4.8ZM8.736 11.504C8.696 11.608 8.64 11.688 8.568 11.768C8.488 11.84 8.4 11.896 8.304 11.936C8.208 11.976 8.104 12 8 12C7.896 12 7.792 11.976 7.696 11.936C7.6 11.896 7.512 11.84 7.432 11.768C7.36 11.688 7.304 11.608 7.264 11.504C7.224 11.408 7.2 11.304 7.2 11.2C7.2 11.096 7.224 10.992 7.264 10.896C7.304 10.8 7.36 10.712 7.432 10.632C7.512 10.56 7.6 10.504 7.696 10.464C7.888 10.384 8.112 10.384 8.304 10.464C8.4 10.504 8.488 10.56 8.568 10.632C8.64 10.712 8.696 10.8 8.736 10.896C8.776 10.992 8.8 11.096 8.8 11.2C8.8 11.304 8.776 11.408 8.736 11.504Z\"\r\n fill=\"#FAAD14\"/>\r\n </svg>\r\n\r\n }\r\n @if (data.type === 'danger') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0ZM10.688 9.84C10.92 10.072 10.92 10.456 10.688 10.688C10.568 10.808 10.416 10.864 10.264 10.864C10.112 10.864 9.96 10.808 9.84 10.688L8 8.848L6.16 10.688C6.04 10.808 5.888 10.864 5.736 10.864C5.584 10.864 5.432 10.808 5.312 10.688C5.08 10.456 5.08 10.072 5.312 9.84L7.152 8L5.312 6.16C5.08 5.928 5.08 5.544 5.312 5.312C5.544 5.08 5.928 5.08 6.16 5.312L8 7.152L9.84 5.312C10.072 5.08 10.456 5.08 10.688 5.312C10.92 5.544 10.92 5.928 10.688 6.16L8.848 8L10.688 9.84Z\"\r\n fill=\"#FF3645\"/>\r\n </svg>\r\n\r\n }\r\n @if (data.type === 'info') {\r\n <svg fill=\"none\" height=\"16\" viewBox=\"0 0 16 16\" width=\"16\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M8 16C12.408 16 16 12.408 16 8C16 3.592 12.408 0 8 0C3.592 0 0 3.592 0 8C0 12.408 3.592 16 8 16ZM8.6 11.2C8.6 11.528 8.328 11.8 8 11.8C7.672 11.8 7.4 11.528 7.4 11.2V7.2C7.4 6.872 7.672 6.6 8 6.6C8.328 6.6 8.6 6.872 8.6 7.2L8.6 11.2ZM7.264 4.496C7.304 4.392 7.36 4.312 7.432 4.232C7.512 4.16 7.6 4.104 7.696 4.064C7.792 4.024 7.896 4 8 4C8.104 4 8.208 4.024 8.304 4.064C8.4 4.104 8.488 4.16 8.568 4.232C8.64 4.312 8.696 4.392 8.736 4.496C8.776 4.592 8.8 4.696 8.8 4.8C8.8 4.904 8.776 5.008 8.736 5.104C8.696 5.2 8.64 5.288 8.568 5.368C8.488 5.44 8.4 5.496 8.304 5.536C8.112 5.616 7.888 5.616 7.696 5.536C7.6 5.496 7.512 5.44 7.432 5.368C7.36 5.288 7.304 5.2 7.264 5.104C7.224 5.008 7.2 4.904 7.2 4.8C7.2 4.696 7.224 4.592 7.264 4.496Z\"\r\n fill=\"#007BFB\"/>\r\n </svg>\r\n\r\n }\r\n <div class=\"ml-24\">\r\n <div [innerHTML]=\"data.title\"></div>\r\n <div (click)=\"onClickDesc($event)\" [innerHTML]=\"data.description\"></div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block}.toast{position:relative;margin-bottom:20px;display:flex;align-items:center;padding:20px;background:#eefaf3;border-radius:12px;opacity:1;max-width:350px;width:100%}.toast.success{background-color:var(--light-green-color)}.toast.info{background-color:var(--light-blue-color)}.toast.warning{background-color:var(--yellow-card)}.toast.danger{background-color:var(--red-light-color)}\n"] }]
59
- }], ctorParameters: () => [{ type: i1.ToastData }, { type: i1.ToastConfig }, { type: i2.ToastRef }], propDecorators: { callEvent: [{
60
- type: Output
61
- }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS90b2FzdC90b2FzdC90b2FzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL3RvYXN0L3RvYXN0L3RvYXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUE2QixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFDLGtCQUFrQixFQUFFLGtCQUFrQixFQUF5QixNQUFNLGlCQUFpQixDQUFDO0FBRS9GLE9BQU8sRUFBQyxlQUFlLEVBQXNCLE1BQU0sb0JBQW9CLENBQUM7QUFDeEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7O0FBb0IxQyxNQUFNLE9BQU8sY0FBYztJQU16QixZQUNXLElBQWUsRUFDZixXQUF3QixFQUN4QixHQUFhO1FBRmIsU0FBSSxHQUFKLElBQUksQ0FBVztRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFFBQUcsR0FBSCxHQUFHLENBQVU7UUFSUCxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QyxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFzQixTQUFTLENBQUMsQ0FBQztJQVM3RSxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUNNLFdBQVcsQ0FBQyxNQUFrQjtRQUNuQyxJQUFLLE1BQU0sQ0FBQyxNQUFzQixDQUFDLE9BQU8sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBQ00sV0FBVztRQUNoQixZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sY0FBYyxDQUFDLEtBQVU7UUFDOUIsTUFBTSxFQUFDLE9BQU8sRUFBQyxHQUFHLEtBQUssQ0FBQztRQUN4QixNQUFNLFNBQVMsR0FBSSxPQUErQixLQUFLLFNBQVMsQ0FBQztRQUNqRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxLQUFLLFNBQVMsQ0FBQztRQUVqRSxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQzs4R0FyQ1UsY0FBYztrR0FBZCxjQUFjLDRGQVhkO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsUUFBUSxFQUFFLGtCQUFrQjthQUM3QjtTQUNGLDBCQ3BCSCxnMUhBeUNBLDBjRDdCSSxhQUFhLDBCQUNiLFNBQVMsZ0NBVUMsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDOzsyRkFHNUIsY0FBYztrQkFsQjFCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUDt3QkFDUCxhQUFhO3dCQUNiLFNBQVM7cUJBQ1YsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixRQUFRLEVBQUUsa0JBQWtCO3lCQUM3QjtxQkFDRixjQUdXLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxtQkFDdEIsdUJBQXVCLENBQUMsTUFBTTsrSEFHOUIsU0FBUztzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2RlZmF1bHRUb2FzdENvbmZpZywgVE9BU1RfQ09ORklHX1RPS0VOLCBUb2FzdENvbmZpZywgVG9hc3REYXRhfSBmcm9tIFwiLi4vdG9hc3QtY29uZmlnXCI7XHJcbmltcG9ydCB7VG9hc3RSZWZ9IGZyb20gXCIuLi90b2FzdC1yZWZcIjtcclxuaW1wb3J0IHt0b2FzdEFuaW1hdGlvbnMsIFRvYXN0QW5pbWF0aW9uU3RhdGV9IGZyb20gXCIuL3RvYXN0LWFuaW1hdGlvbnNcIjtcclxuaW1wb3J0IHtPdmVybGF5TW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7QXN5bmNQaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RkLXRvYXN0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE92ZXJsYXlNb2R1bGUsXHJcbiAgICBBc3luY1BpcGUsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogVE9BU1RfQ09ORklHX1RPS0VOLFxyXG4gICAgICB1c2VWYWx1ZTogZGVmYXVsdFRvYXN0Q29uZmlnLFxyXG4gICAgfVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RvYXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdG9hc3QuY29tcG9uZW50LnNjc3MnLFxyXG4gIGFuaW1hdGlvbnM6IFt0b2FzdEFuaW1hdGlvbnMuZmFkZVRvYXN0XSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjYWxsRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgcHVibGljIGFuaW1hdGlvblN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VG9hc3RBbmltYXRpb25TdGF0ZT4oJ2RlZmF1bHQnKTtcclxuXHJcbiAgcHJpdmF0ZSBpbnRlcnZhbElkOiBudW1iZXIgfCB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcmVhZG9ubHkgZGF0YTogVG9hc3REYXRhLFxyXG4gICAgcmVhZG9ubHkgdG9hc3RDb25maWc6IFRvYXN0Q29uZmlnLFxyXG4gICAgcmVhZG9ubHkgcmVmOiBUb2FzdFJlZixcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW50ZXJ2YWxJZCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hbmltYXRpb25TdGF0ZSQubmV4dCgnY2xvc2luZycpLCB0aGlzLnRvYXN0Q29uZmlnLmludGVydmFsKTtcclxuICB9XHJcbiAgcHVibGljIG9uQ2xpY2tEZXNjKCRldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCgkZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS50YWdOYW1lID09PSAnQScpIHtcclxuICAgICAgdGhpcy5jYWxsRXZlbnQuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBjbGVhclRpbWVvdXQodGhpcy5pbnRlcnZhbElkKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZSgpIHtcclxuICAgIHRoaXMucmVmLmNsb3NlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25GYWRlRmluaXNoZWQoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3Qge3RvU3RhdGV9ID0gZXZlbnQ7XHJcbiAgICBjb25zdCBpc0ZhZGVPdXQgPSAodG9TdGF0ZSBhcyBUb2FzdEFuaW1hdGlvblN0YXRlKSA9PT0gJ2Nsb3NpbmcnO1xyXG4gICAgY29uc3QgaXRGaW5pc2hlZCA9IHRoaXMuYW5pbWF0aW9uU3RhdGUkLmdldFZhbHVlKCkgPT09ICdjbG9zaW5nJztcclxuXHJcbiAgICBpZiAoaXNGYWRlT3V0ICYmIGl0RmluaXNoZWQpIHtcclxuICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidG9hc3QgIHt7IGRhdGEudHlwZSB9fVwiIChjbGljayk9XCJjbG9zZSgpXCJcclxuICAgICBbQGZhZGVBbmltYXRpb25dPVwie3ZhbHVlOiAoYW5pbWF0aW9uU3RhdGUkIHwgYXN5bmMpLCBwYXJhbXM6XHJcbiAgICAgICAgeyBmYWRlSW46IHRvYXN0Q29uZmlnIS5hbmltYXRpb24hLmZhZGVJbiwgZmFkZU91dDogdG9hc3RDb25maWchLmFuaW1hdGlvbiEuZmFkZU91dCB9fVwiXHJcbiAgICAgKEBmYWRlQW5pbWF0aW9uLmRvbmUpPVwib25GYWRlRmluaXNoZWQoJGV2ZW50KVwiPlxyXG48IS0tICA8ZGQtbGliLXN2Zy1pY29uIFtpY29uXT1cImRhdGEudHlwZVwiPjwvZGQtbGliLXN2Zy1pY29uPi0tPlxyXG4gIEBpZiAoZGF0YS50eXBlID09PSAnc3VjY2VzcycpIHtcclxuICAgIDxzdmcgZmlsbD1cIm5vbmVcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICA8cGF0aFxyXG4gICAgICAgIGQ9XCJNOCAwQzMuNTkyIDAgMCAzLjU5MiAwIDhDMCAxMi40MDggMy41OTIgMTYgOCAxNkMxMi40MDggMTYgMTYgMTIuNDA4IDE2IDhDMTYgMy41OTIgMTIuNDA4IDAgOCAwWk0xMS44MjQgNi4xNkw3LjI4OCAxMC42OTZDNy4xNzYgMTAuODA4IDcuMDI0IDEwLjg3MiA2Ljg2NCAxMC44NzJDNi43MDQgMTAuODcyIDYuNTUyIDEwLjgwOCA2LjQ0IDEwLjY5Nkw0LjE3NiA4LjQzMkMzLjk0NCA4LjIgMy45NDQgNy44MTYgNC4xNzYgNy41ODRDNC40MDggNy4zNTIgNC43OTIgNy4zNTIgNS4wMjQgNy41ODRMNi44NjQgOS40MjRMMTAuOTc2IDUuMzEyQzExLjIwOCA1LjA4IDExLjU5MiA1LjA4IDExLjgyNCA1LjMxMkMxMi4wNTYgNS41NDQgMTIuMDU2IDUuOTIgMTEuODI0IDYuMTZaXCJcclxuICAgICAgICBmaWxsPVwiIzA3QjcwMFwiLz5cclxuICAgIDwvc3ZnPlxyXG4gIH1cclxuICBAaWYgKGRhdGEudHlwZSA9PT0gJ3dhcm5pbmcnKSB7XHJcbiAgICA8c3ZnIGZpbGw9XCJub25lXCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBkPVwiTTggMEMzLjU5MiAwIDAgMy41OTIgMCA4QzAgMTIuNDA4IDMuNTkyIDE2IDggMTZDMTIuNDA4IDE2IDE2IDEyLjQwOCAxNiA4QzE2IDMuNTkyIDEyLjQwOCAwIDggMFpNNy40IDQuOEM3LjQgNC40NzIgNy42NzIgNC4yIDggNC4yQzguMzI4IDQuMiA4LjYgNC40NzIgOC42IDQuOFY4LjhDOC42IDkuMTI4IDguMzI4IDkuNCA4IDkuNEM3LjY3MiA5LjQgNy40IDkuMTI4IDcuNCA4LjhWNC44Wk04LjczNiAxMS41MDRDOC42OTYgMTEuNjA4IDguNjQgMTEuNjg4IDguNTY4IDExLjc2OEM4LjQ4OCAxMS44NCA4LjQgMTEuODk2IDguMzA0IDExLjkzNkM4LjIwOCAxMS45NzYgOC4xMDQgMTIgOCAxMkM3Ljg5NiAxMiA3Ljc5MiAxMS45NzYgNy42OTYgMTEuOTM2QzcuNiAxMS44OTYgNy41MTIgMTEuODQgNy40MzIgMTEuNzY4QzcuMzYgMTEuNjg4IDcuMzA0IDExLjYwOCA3LjI2NCAxMS41MDRDNy4yMjQgMTEuNDA4IDcuMiAxMS4zMDQgNy4yIDExLjJDNy4yIDExLjA5NiA3LjIyNCAxMC45OTIgNy4yNjQgMTAuODk2QzcuMzA0IDEwLjggNy4zNiAxMC43MTIgNy40MzIgMTAuNjMyQzcuNTEyIDEwLjU2IDcuNiAxMC41MDQgNy42OTYgMTAuNDY0QzcuODg4IDEwLjM4NCA4LjExMiAxMC4zODQgOC4zMDQgMTAuNDY0QzguNCAxMC41MDQgOC40ODggMTAuNTYgOC41NjggMTAuNjMyQzguNjQgMTAuNzEyIDguNjk2IDEwLjggOC43MzYgMTAuODk2QzguNzc2IDEwLjk5MiA4LjggMTEuMDk2IDguOCAxMS4yQzguOCAxMS4zMDQgOC43NzYgMTEuNDA4IDguNzM2IDExLjUwNFpcIlxyXG4gICAgICAgIGZpbGw9XCIjRkFBRDE0XCIvPlxyXG4gICAgPC9zdmc+XHJcblxyXG4gIH1cclxuICBAaWYgKGRhdGEudHlwZSA9PT0gJ2RhbmdlcicpIHtcclxuICAgIDxzdmcgZmlsbD1cIm5vbmVcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICA8cGF0aFxyXG4gICAgICAgIGQ9XCJNOCAwQzMuNTkyIDAgMCAzLjU5MiAwIDhDMCAxMi40MDggMy41OTIgMTYgOCAxNkMxMi40MDggMTYgMTYgMTIuNDA4IDE2IDhDMTYgMy41OTIgMTIuNDA4IDAgOCAwWk0xMC42ODggOS44NEMxMC45MiAxMC4wNzIgMTAuOTIgMTAuNDU2IDEwLjY4OCAxMC42ODhDMTAuNTY4IDEwLjgwOCAxMC40MTYgMTAuODY0IDEwLjI2NCAxMC44NjRDMTAuMTEyIDEwLjg2NCA5Ljk2IDEwLjgwOCA5Ljg0IDEwLjY4OEw4IDguODQ4TDYuMTYgMTAuNjg4QzYuMDQgMTAuODA4IDUuODg4IDEwLjg2NCA1LjczNiAxMC44NjRDNS41ODQgMTAuODY0IDUuNDMyIDEwLjgwOCA1LjMxMiAxMC42ODhDNS4wOCAxMC40NTYgNS4wOCAxMC4wNzIgNS4zMTIgOS44NEw3LjE1MiA4TDUuMzEyIDYuMTZDNS4wOCA1LjkyOCA1LjA4IDUuNTQ0IDUuMzEyIDUuMzEyQzUuNTQ0IDUuMDggNS45MjggNS4wOCA2LjE2IDUuMzEyTDggNy4xNTJMOS44NCA1LjMxMkMxMC4wNzIgNS4wOCAxMC40NTYgNS4wOCAxMC42ODggNS4zMTJDMTAuOTIgNS41NDQgMTAuOTIgNS45MjggMTAuNjg4IDYuMTZMOC44NDggOEwxMC42ODggOS44NFpcIlxyXG4gICAgICAgIGZpbGw9XCIjRkYzNjQ1XCIvPlxyXG4gICAgPC9zdmc+XHJcblxyXG4gIH1cclxuICBAaWYgKGRhdGEudHlwZSA9PT0gJ2luZm8nKSB7XHJcbiAgICA8c3ZnIGZpbGw9XCJub25lXCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBkPVwiTTggMTZDMTIuNDA4IDE2IDE2IDEyLjQwOCAxNiA4QzE2IDMuNTkyIDEyLjQwOCAwIDggMEMzLjU5MiAwIDAgMy41OTIgMCA4QzAgMTIuNDA4IDMuNTkyIDE2IDggMTZaTTguNiAxMS4yQzguNiAxMS41MjggOC4zMjggMTEuOCA4IDExLjhDNy42NzIgMTEuOCA3LjQgMTEuNTI4IDcuNCAxMS4yVjcuMkM3LjQgNi44NzIgNy42NzIgNi42IDggNi42QzguMzI4IDYuNiA4LjYgNi44NzIgOC42IDcuMkw4LjYgMTEuMlpNNy4yNjQgNC40OTZDNy4zMDQgNC4zOTIgNy4zNiA0LjMxMiA3LjQzMiA0LjIzMkM3LjUxMiA0LjE2IDcuNiA0LjEwNCA3LjY5NiA0LjA2NEM3Ljc5MiA0LjAyNCA3Ljg5NiA0IDggNEM4LjEwNCA0IDguMjA4IDQuMDI0IDguMzA0IDQuMDY0QzguNCA0LjEwNCA4LjQ4OCA0LjE2IDguNTY4IDQuMjMyQzguNjQgNC4zMTIgOC42OTYgNC4zOTIgOC43MzYgNC40OTZDOC43NzYgNC41OTIgOC44IDQuNjk2IDguOCA0LjhDOC44IDQuOTA0IDguNzc2IDUuMDA4IDguNzM2IDUuMTA0QzguNjk2IDUuMiA4LjY0IDUuMjg4IDguNTY4IDUuMzY4QzguNDg4IDUuNDQgOC40IDUuNDk2IDguMzA0IDUuNTM2QzguMTEyIDUuNjE2IDcuODg4IDUuNjE2IDcuNjk2IDUuNTM2QzcuNiA1LjQ5NiA3LjUxMiA1LjQ0IDcuNDMyIDUuMzY4QzcuMzYgNS4yODggNy4zMDQgNS4yIDcuMjY0IDUuMTA0QzcuMjI0IDUuMDA4IDcuMiA0LjkwNCA3LjIgNC44QzcuMiA0LjY5NiA3LjIyNCA0LjU5MiA3LjI2NCA0LjQ5NlpcIlxyXG4gICAgICAgIGZpbGw9XCIjMDA3QkZCXCIvPlxyXG4gICAgPC9zdmc+XHJcblxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwibWwtMjRcIj5cclxuICAgIDxkaXYgW2lubmVySFRNTF09XCJkYXRhLnRpdGxlXCI+PC9kaXY+XHJcbiAgICA8ZGl2IChjbGljayk9XCJvbkNsaWNrRGVzYygkZXZlbnQpXCIgW2lubmVySFRNTF09XCJkYXRhLmRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,35 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export class ToastTypeData {
3
- }
4
- export class ToastData extends ToastTypeData {
5
- constructor(type, data) {
6
- super();
7
- this.type = type;
8
- if (data) {
9
- Object.assign(this, data);
10
- }
11
- }
12
- }
13
- export class ToastConfig {
14
- }
15
- export const defaultToastConfig = {
16
- position: {
17
- top: 20,
18
- right: 20,
19
- },
20
- animation: {
21
- fadeOut: 2500,
22
- fadeIn: 300,
23
- },
24
- interval: 5000
25
- };
26
- export const TOAST_CONFIG_TOKEN = new InjectionToken('toast config');
27
- export const provideToast = (config = defaultToastConfig) => {
28
- return [
29
- {
30
- provide: TOAST_CONFIG_TOKEN,
31
- useValue: { ...defaultToastConfig, ...config }
32
- }
33
- ];
34
- };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS90b2FzdC90b2FzdC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFFcEUsTUFBTSxPQUFPLGFBQWE7Q0FPekI7QUFDRCxNQUFNLE9BQU8sU0FBVSxTQUFRLGFBQWE7SUFHMUMsWUFBWSxJQUFlLEVBQUUsSUFBb0I7UUFDL0MsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDM0IsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUlELE1BQU0sT0FBTyxXQUFXO0NBVXZCO0FBRUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWdCO0lBQzdDLFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxFQUFFO1FBQ1AsS0FBSyxFQUFFLEVBQUU7S0FDVjtJQUNELFNBQVMsRUFBRTtRQUNULE9BQU8sRUFBRSxJQUFJO1FBQ2IsTUFBTSxFQUFFLEdBQUc7S0FDWjtJQUNELFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFjLGNBQWMsQ0FBQyxDQUFDO0FBR2xGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLFNBQStCLGtCQUFrQixFQUFjLEVBQUU7SUFDNUYsT0FBTztRQUNMO1lBQ0UsT0FBTyxFQUFFLGtCQUFrQjtZQUMzQixRQUFRLEVBQUUsRUFBRSxHQUFHLGtCQUFrQixFQUFFLEdBQUcsTUFBTSxFQUFFO1NBQy9DO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyLCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgVG9hc3RUeXBlRGF0YSB7XHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgdGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHRlbXBsYXRlQ29udGV4dD86IHt9O1xyXG5cclxuXHJcbn1cclxuZXhwb3J0IGNsYXNzIFRvYXN0RGF0YSBleHRlbmRzIFRvYXN0VHlwZURhdGEge1xyXG4gIHR5cGUhOiBUb2FzdFR5cGU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHR5cGU6IFRvYXN0VHlwZSwgZGF0YT86IFRvYXN0VHlwZURhdGEgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy50eXBlID0gdHlwZTtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgZGF0YSlcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRvYXN0VHlwZSA9ICd3YXJuaW5nJyB8ICdpbmZvJyB8ICdzdWNjZXNzJyB8ICdkYW5nZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRvYXN0Q29uZmlnIHtcclxuIHB1YmxpYyBwb3NpdGlvbj86IHtcclxuICAgIHRvcDogbnVtYmVyO1xyXG4gICAgcmlnaHQ6IG51bWJlcjtcclxuICB9O1xyXG4gIHB1YmxpYyBhbmltYXRpb24/OiB7XHJcbiAgICBmYWRlT3V0OiBudW1iZXI7XHJcbiAgICBmYWRlSW46IG51bWJlcjtcclxuICB9O1xyXG4gIHB1YmxpYyBpbnRlcnZhbD86IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZGVmYXVsdFRvYXN0Q29uZmlnOiBUb2FzdENvbmZpZyA9IHtcclxuICBwb3NpdGlvbjoge1xyXG4gICAgdG9wOiAyMCxcclxuICAgIHJpZ2h0OiAyMCxcclxuICB9LFxyXG4gIGFuaW1hdGlvbjoge1xyXG4gICAgZmFkZU91dDogMjUwMCxcclxuICAgIGZhZGVJbjogMzAwLFxyXG4gIH0sXHJcbiAgaW50ZXJ2YWw6IDUwMDBcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBUT0FTVF9DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48VG9hc3RDb25maWc+KCd0b2FzdCBjb25maWcnKTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgcHJvdmlkZVRvYXN0ID0gKGNvbmZpZzogUGFydGlhbDxUb2FzdENvbmZpZz4gPSBkZWZhdWx0VG9hc3RDb25maWcpOiBQcm92aWRlcltdID0+IHtcclxuICByZXR1cm4gW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBUT0FTVF9DT05GSUdfVE9LRU4sXHJcbiAgICAgIHVzZVZhbHVlOiB7IC4uLmRlZmF1bHRUb2FzdENvbmZpZywgLi4uY29uZmlnIH1cclxuICAgIH1cclxuICBdO1xyXG59O1xyXG4iXX0=
@@ -1,15 +0,0 @@
1
- export class ToastRef {
2
- constructor(overlay) {
3
- this.overlay = overlay;
4
- }
5
- close() {
6
- this.overlay.dispose();
7
- }
8
- isVisible() {
9
- return this.overlay && this.overlay.overlayElement;
10
- }
11
- getPosition() {
12
- return this.overlay.overlayElement.getBoundingClientRect();
13
- }
14
- }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS90b2FzdC90b2FzdC1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLFFBQVE7SUFDbkIsWUFBNkIsT0FBbUI7UUFBbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUNoRCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7SUFDckQsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUE7SUFDNUQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPdmVybGF5UmVmfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcblxyXG5leHBvcnQgY2xhc3MgVG9hc3RSZWYge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgb3ZlcmxheTogT3ZlcmxheVJlZikge1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLm92ZXJsYXkuZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgaXNWaXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheSAmJiB0aGlzLm92ZXJsYXkub3ZlcmxheUVsZW1lbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRQb3NpdGlvbigpIHtcclxuICAgIHJldHVybiB0aGlzLm92ZXJsYXkub3ZlcmxheUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcclxuICB9XHJcbn1cclxuIl19
@@ -1,74 +0,0 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { TOAST_CONFIG_TOKEN, ToastConfig, ToastData } from "./toast-config";
3
- import { ToastRef } from "./toast-ref";
4
- import { ComponentPortal, PortalInjector } from "@angular/cdk/portal";
5
- import { ToastComponent } from "./toast/toast.component";
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/cdk/overlay";
8
- import * as i2 from "./toast-config";
9
- export class ToastService {
10
- constructor(overlay, parentInjector, toastConfig) {
11
- this.overlay = overlay;
12
- this.parentInjector = parentInjector;
13
- this.toastConfig = toastConfig;
14
- }
15
- warning(data) {
16
- const toast = new ToastData('warning', data);
17
- this.show(toast);
18
- }
19
- info(data) {
20
- const toast = new ToastData('info', data);
21
- this.show(toast);
22
- }
23
- success(data) {
24
- const toast = new ToastData('success', data);
25
- this.show(toast);
26
- }
27
- danger(data) {
28
- const toast = new ToastData('danger', data);
29
- this.show(toast);
30
- }
31
- //todo В ПРИВАТ
32
- show(data) {
33
- const positionStrategy = this.getPositionStrategy();
34
- const overlayRef = this.overlay.create({ positionStrategy });
35
- const toastRef = new ToastRef(overlayRef);
36
- this.lastToast = toastRef;
37
- const injector = this.getInjector(data, toastRef, this.toastConfig, this.parentInjector);
38
- const toastPortal = new ComponentPortal(ToastComponent, null, injector);
39
- overlayRef.attach(toastPortal);
40
- return toastRef;
41
- }
42
- getPositionStrategy() {
43
- return this.overlay.position()
44
- .global()
45
- .top(this.getPosition())
46
- .right(this.toastConfig?.position?.right + 'px');
47
- }
48
- getPosition() {
49
- const lastToastIsVisible = this.lastToast && this.lastToast.isVisible();
50
- const position = lastToastIsVisible
51
- ? this.lastToast?.getPosition().bottom
52
- : this.toastConfig?.position?.top;
53
- return position + 'px';
54
- }
55
- getInjector(data, toastRef, toastConfig, parentInjector) {
56
- const tokens = new WeakMap();
57
- tokens.set(ToastData, data);
58
- tokens.set(ToastRef, toastRef);
59
- tokens.set(ToastConfig, toastConfig);
60
- return new PortalInjector(parentInjector, tokens);
61
- }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: TOAST_CONFIG_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
63
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ToastService, providedIn: 'root' }); }
64
- }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ToastService, decorators: [{
66
- type: Injectable,
67
- args: [{
68
- providedIn: 'root'
69
- }]
70
- }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.Injector }, { type: i2.ToastConfig, decorators: [{
71
- type: Inject,
72
- args: [TOAST_CONFIG_TOKEN]
73
- }] }] });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2NvcmUvdG9hc3QvdG9hc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQU8sTUFBTSxFQUFFLFVBQVUsRUFBcUMsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUFDLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQWdCLE1BQU0sZ0JBQWdCLENBQUM7QUFDekYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNyQyxPQUFPLEVBQUMsZUFBZSxFQUFFLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUt2RCxNQUFNLE9BQU8sWUFBWTtJQUV2QixZQUNVLE9BQWdCLEVBQ2hCLGNBQXdCLEVBQ0ssV0FBd0I7UUFGckQsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBVTtRQUNLLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQzNELENBQUM7SUFHRSxPQUFPLENBQUMsSUFBbUI7UUFDaEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUNNLElBQUksQ0FBQyxJQUFtQjtRQUM3QixNQUFNLEtBQUssR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBQ00sT0FBTyxDQUFDLElBQW1CO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksU0FBUyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFDTSxNQUFNLENBQUMsSUFBbUI7UUFDL0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxTQUFTLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELGVBQWU7SUFDUixJQUFJLENBQUMsSUFBZTtRQUN6QixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBRTdELE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RixNQUFNLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3hFLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFL0IsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO2FBQzNCLE1BQU0sRUFBRTthQUNSLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDdkIsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sV0FBVztRQUNoQixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN4RSxNQUFNLFFBQVEsR0FBRyxrQkFBa0I7WUFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUMsTUFBTTtZQUN0QyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDO1FBRXBDLE9BQU8sUUFBUSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRU0sV0FBVyxDQUFDLElBQWUsRUFBRSxRQUFrQixFQUFFLFdBQXdCLEVBQUUsY0FBd0I7UUFDeEcsTUFBTSxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM1QixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUVyQyxPQUFPLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNwRCxDQUFDOzhHQS9EVSxZQUFZLGlFQUtkLGtCQUFrQjtrSEFMaEIsWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFNRyxNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SG9zdCwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciwgT3B0aW9uYWwsIFNlbGYsIFNraXBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtPdmVybGF5LCBQb3NpdGlvblN0cmF0ZWd5fSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHtUT0FTVF9DT05GSUdfVE9LRU4sIFRvYXN0Q29uZmlnLCBUb2FzdERhdGEsIFRvYXN0VHlwZURhdGF9IGZyb20gXCIuL3RvYXN0LWNvbmZpZ1wiO1xyXG5pbXBvcnQge1RvYXN0UmVmfSBmcm9tIFwiLi90b2FzdC1yZWZcIjtcclxuaW1wb3J0IHtDb21wb25lbnRQb3J0YWwsIFBvcnRhbEluamVjdG9yfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xyXG5pbXBvcnQge1RvYXN0Q29tcG9uZW50fSBmcm9tIFwiLi90b2FzdC90b2FzdC5jb21wb25lbnRcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvYXN0U2VydmljZSB7XHJcbiAgcHJpdmF0ZSBsYXN0VG9hc3Q6IFRvYXN0UmVmIHwgdW5kZWZpbmVkO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHJpdmF0ZSBwYXJlbnRJbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgIEBJbmplY3QoVE9BU1RfQ09ORklHX1RPS0VOKSBwcm90ZWN0ZWQgdG9hc3RDb25maWc6IFRvYXN0Q29uZmlnXHJcbiAgKSB7IH1cclxuXHJcblxyXG4gIHB1YmxpYyB3YXJuaW5nKGRhdGE6IFRvYXN0VHlwZURhdGEpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRvYXN0ID0gbmV3IFRvYXN0RGF0YSgnd2FybmluZycsIGRhdGEpXHJcbiAgICB0aGlzLnNob3codG9hc3QpO1xyXG4gIH1cclxuICBwdWJsaWMgaW5mbyhkYXRhOiBUb2FzdFR5cGVEYXRhKTogdm9pZCB7XHJcbiAgICBjb25zdCB0b2FzdCA9IG5ldyBUb2FzdERhdGEoJ2luZm8nLCBkYXRhKVxyXG4gICAgdGhpcy5zaG93KHRvYXN0KTtcclxuICB9XHJcbiAgcHVibGljIHN1Y2Nlc3MoZGF0YTogVG9hc3RUeXBlRGF0YSk6IHZvaWQge1xyXG4gICAgY29uc3QgdG9hc3QgPSBuZXcgVG9hc3REYXRhKCdzdWNjZXNzJywgZGF0YSlcclxuICAgIHRoaXMuc2hvdyh0b2FzdCk7XHJcbiAgfVxyXG4gIHB1YmxpYyBkYW5nZXIoZGF0YTogVG9hc3RUeXBlRGF0YSk6IHZvaWQge1xyXG4gICAgY29uc3QgdG9hc3QgPSBuZXcgVG9hc3REYXRhKCdkYW5nZXInLCBkYXRhKVxyXG4gICAgdGhpcy5zaG93KHRvYXN0KTtcclxuICB9XHJcblxyXG4gIC8vdG9kbyDQkiDQn9Cg0JjQktCQ0KJcclxuICBwdWJsaWMgc2hvdyhkYXRhOiBUb2FzdERhdGEpOiBUb2FzdFJlZiB7XHJcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KCk7XHJcbiAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7IHBvc2l0aW9uU3RyYXRlZ3kgfSk7XHJcblxyXG4gICAgY29uc3QgdG9hc3RSZWYgPSBuZXcgVG9hc3RSZWYob3ZlcmxheVJlZik7XHJcbiAgICB0aGlzLmxhc3RUb2FzdCA9IHRvYXN0UmVmO1xyXG4gICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLmdldEluamVjdG9yKGRhdGEsIHRvYXN0UmVmLCB0aGlzLnRvYXN0Q29uZmlnLCB0aGlzLnBhcmVudEluamVjdG9yKTtcclxuICAgIGNvbnN0IHRvYXN0UG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChUb2FzdENvbXBvbmVudCwgbnVsbCwgaW5qZWN0b3IpO1xyXG4gICAgb3ZlcmxheVJlZi5hdHRhY2godG9hc3RQb3J0YWwpO1xyXG5cclxuICAgIHJldHVybiB0b2FzdFJlZjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRQb3NpdGlvblN0cmF0ZWd5KCk6IFBvc2l0aW9uU3RyYXRlZ3kge1xyXG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheS5wb3NpdGlvbigpXHJcbiAgICAgIC5nbG9iYWwoKVxyXG4gICAgICAudG9wKHRoaXMuZ2V0UG9zaXRpb24oKSlcclxuICAgICAgLnJpZ2h0KHRoaXMudG9hc3RDb25maWc/LnBvc2l0aW9uPy5yaWdodCArICdweCcpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFBvc2l0aW9uKCkge1xyXG4gICAgY29uc3QgbGFzdFRvYXN0SXNWaXNpYmxlID0gdGhpcy5sYXN0VG9hc3QgJiYgdGhpcy5sYXN0VG9hc3QuaXNWaXNpYmxlKCk7XHJcbiAgICBjb25zdCBwb3NpdGlvbiA9IGxhc3RUb2FzdElzVmlzaWJsZVxyXG4gICAgICA/IHRoaXMubGFzdFRvYXN0Py5nZXRQb3NpdGlvbigpLmJvdHRvbVxyXG4gICAgICA6IHRoaXMudG9hc3RDb25maWc/LnBvc2l0aW9uPy50b3A7XHJcblxyXG4gICAgcmV0dXJuIHBvc2l0aW9uICsgJ3B4JztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRJbmplY3RvcihkYXRhOiBUb2FzdERhdGEsIHRvYXN0UmVmOiBUb2FzdFJlZiwgdG9hc3RDb25maWc6IFRvYXN0Q29uZmlnLCBwYXJlbnRJbmplY3RvcjogSW5qZWN0b3IpOiBQb3J0YWxJbmplY3RvciB7XHJcbiAgICBjb25zdCB0b2tlbnMgPSBuZXcgV2Vha01hcCgpO1xyXG4gICAgdG9rZW5zLnNldChUb2FzdERhdGEsIGRhdGEpO1xyXG4gICAgdG9rZW5zLnNldChUb2FzdFJlZiwgdG9hc3RSZWYpO1xyXG4gICAgdG9rZW5zLnNldChUb2FzdENvbmZpZywgdG9hc3RDb25maWcpO1xyXG5cclxuICAgIHJldHVybiBuZXcgUG9ydGFsSW5qZWN0b3IocGFyZW50SW5qZWN0b3IsIHRva2Vucyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,27 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Inject, InjectionToken, TemplateRef } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { TriangleDirective } from "../directives/triangle.directive";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- export const TOOLTIP_DATA = new InjectionToken('Подсказка');
7
- export class TooltipComponent {
8
- get asString() {
9
- return typeof this.tooltipData === 'string' ? this.tooltipData : false;
10
- }
11
- get asTemplate() {
12
- return this.tooltipData instanceof TemplateRef ? this.tooltipData : false;
13
- }
14
- constructor(tooltipData) {
15
- this.tooltipData = tooltipData;
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TooltipComponent, deps: [{ token: TOOLTIP_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: TooltipComponent, isStandalone: true, selector: "dd-tooltip", ngImport: i0, template: "<div class=\"tooltip-container\">\r\n @if (asString; as string) {\r\n {{ string }}\r\n } @if (asTemplate; as template) {\r\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\r\n }\r\n <svg class=\"tooltip-container__triangle\" width=\"16\" height=\"16\">\r\n <polyline points=\"8,0 0,8 8,16\"></polyline>\r\n </svg>\r\n</div>\r\n", styles: [":host{position:relative}.tooltip-container{position:relative;display:block;max-width:312px;padding:6px 12px;background:var(--tooltip-bgc);border-radius:8px;box-sizing:border-box;box-shadow:0 14px 64px -4px #18274b0f,0 8px 22px -6px #18274b0f}.tooltip-container__triangle{width:16px;height:16px;position:absolute;fill:var(--white-color);stroke:var(--white-color);box-shadow:#18274b0f 0 14px 64px -4px,#18274b0f 0 8px 22px -6px}:host-context(.left) svg{top:calc(50% - 8px);right:-8px;rotate:180deg}:host-context(.right) svg{top:calc(50% - 8px);left:-8px}:host-context(.top) svg{right:calc(50% - 8px);bottom:-8px;rotate:-90deg}:host-context(.bottom) svg{right:calc(50% - 8px);top:-8px;rotate:90deg}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TooltipComponent, decorators: [{
21
- type: Component,
22
- args: [{ selector: 'dd-tooltip', standalone: true, imports: [CommonModule, TriangleDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"tooltip-container\">\r\n @if (asString; as string) {\r\n {{ string }}\r\n } @if (asTemplate; as template) {\r\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\r\n }\r\n <svg class=\"tooltip-container__triangle\" width=\"16\" height=\"16\">\r\n <polyline points=\"8,0 0,8 8,16\"></polyline>\r\n </svg>\r\n</div>\r\n", styles: [":host{position:relative}.tooltip-container{position:relative;display:block;max-width:312px;padding:6px 12px;background:var(--tooltip-bgc);border-radius:8px;box-sizing:border-box;box-shadow:0 14px 64px -4px #18274b0f,0 8px 22px -6px #18274b0f}.tooltip-container__triangle{width:16px;height:16px;position:absolute;fill:var(--white-color);stroke:var(--white-color);box-shadow:#18274b0f 0 14px 64px -4px,#18274b0f 0 8px 22px -6px}:host-context(.left) svg{top:calc(50% - 8px);right:-8px;rotate:180deg}:host-context(.right) svg{top:calc(50% - 8px);left:-8px}:host-context(.top) svg{right:calc(50% - 8px);bottom:-8px;rotate:-90deg}:host-context(.bottom) svg{right:calc(50% - 8px);top:-8px;rotate:90deg}\n"] }]
23
- }], ctorParameters: () => [{ type: undefined, decorators: [{
24
- type: Inject,
25
- args: [TOOLTIP_DATA]
26
- }] }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBR25FLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBYyxXQUFXLENBQUMsQ0FBQztBQVV6RSxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLElBQVcsUUFBUTtRQUNqQixPQUFPLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsWUFBWSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUM1RSxDQUFDO0lBRUQsWUFBeUMsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFDakUsQ0FBQzs4R0FWVSxnQkFBZ0Isa0JBU1AsWUFBWTtrR0FUckIsZ0JBQWdCLHNFQ2Y3QixnV0FVQSxrdkJEQVksWUFBWTs7MkZBS1gsZ0JBQWdCO2tCQVI1QixTQUFTOytCQUNFLFlBQVksY0FDVixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLENBQUMsbUJBR3pCLHVCQUF1QixDQUFDLE1BQU07OzBCQVdsQyxNQUFNOzJCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0aW9uVG9rZW4sIFRlbXBsYXRlUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7VHJpYW5nbGVEaXJlY3RpdmV9IGZyb20gXCIuLi9kaXJlY3RpdmVzL3RyaWFuZ2xlLmRpcmVjdGl2ZVwiO1xyXG5cclxuZXhwb3J0IHR5cGUgVG9vbHRpcERhdGEgPSBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuZXhwb3J0IGNvbnN0IFRPT0xUSVBfREFUQSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUb29sdGlwRGF0YT4oJ9Cf0L7QtNGB0LrQsNC30LrQsCcpO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZC10b29sdGlwJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyaWFuZ2xlRGlyZWN0aXZlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCB7XHJcbiAgcHVibGljIGdldCBhc1N0cmluZygpOiBzdHJpbmcgfCBmYWxzZSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHRoaXMudG9vbHRpcERhdGEgPT09ICdzdHJpbmcnID8gdGhpcy50b29sdGlwRGF0YSA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBhc1RlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPHZvaWQ+IHwgZmFsc2Uge1xyXG4gICAgcmV0dXJuIHRoaXMudG9vbHRpcERhdGEgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZiA/IHRoaXMudG9vbHRpcERhdGEgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVE9PTFRJUF9EQVRBKSBwdWJsaWMgdG9vbHRpcERhdGE6IFRvb2x0aXBEYXRhKSB7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRhaW5lclwiPlxyXG4gIEBpZiAoYXNTdHJpbmc7IGFzIHN0cmluZykge1xyXG4gIHt7IHN0cmluZyB9fVxyXG4gIH0gQGlmIChhc1RlbXBsYXRlOyBhcyB0ZW1wbGF0ZSkge1xyXG4gIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XHJcbiAgfVxyXG4gIDxzdmcgY2xhc3M9XCJ0b29sdGlwLWNvbnRhaW5lcl9fdHJpYW5nbGVcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj5cclxuICAgIDxwb2x5bGluZSBwb2ludHM9XCI4LDAgMCw4IDgsMTZcIj48L3BvbHlsaW5lPlxyXG4gIDwvc3ZnPlxyXG48L2Rpdj5cclxuIl19
@@ -1,179 +0,0 @@
1
- import { Directive, HostListener, Injector, Input, } from '@angular/core';
2
- import { ComponentPortal } from '@angular/cdk/portal';
3
- import { TOOLTIP_DATA, TooltipComponent } from './tooltip.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/cdk/overlay";
6
- const TOOLTIP_RIGHT = {
7
- originX: 'start',
8
- originY: 'center',
9
- overlayX: 'start',
10
- overlayY: 'center',
11
- panelClass: 'right',
12
- };
13
- const TOOLTIP_BOTTOM = {
14
- originX: 'center',
15
- originY: 'bottom',
16
- overlayX: 'center',
17
- overlayY: 'top',
18
- panelClass: 'bottom',
19
- };
20
- const TOOLTIP_TOP = {
21
- originX: 'center',
22
- originY: 'top',
23
- overlayX: 'center',
24
- overlayY: 'bottom',
25
- panelClass: 'top',
26
- };
27
- const TOOLTIP_LEFT = {
28
- originX: 'end',
29
- originY: 'center',
30
- overlayX: 'end',
31
- overlayY: 'center',
32
- panelClass: 'left',
33
- };
34
- export class TooltipDirective {
35
- set position(p) {
36
- switch (p) {
37
- case 'top': {
38
- this._position = TOOLTIP_TOP;
39
- break;
40
- }
41
- case 'right': {
42
- this._position = TOOLTIP_RIGHT;
43
- break;
44
- }
45
- case 'bottom': {
46
- this._position = TOOLTIP_BOTTOM;
47
- break;
48
- }
49
- case 'left': {
50
- this._position = TOOLTIP_LEFT;
51
- break;
52
- }
53
- }
54
- }
55
- constructor(element, overlay, viewContainer, rdr) {
56
- this.element = element;
57
- this.overlay = overlay;
58
- this.viewContainer = viewContainer;
59
- this.rdr = rdr;
60
- this.withClick = false;
61
- this.overlayRef = null;
62
- }
63
- onClick(targetElement) {
64
- if (!this.ddTooltip) {
65
- return;
66
- }
67
- const clickedInside = this.element.nativeElement.contains(targetElement.target);
68
- if (!clickedInside) {
69
- if (this.overlayRef?.hasAttached() === true) {
70
- this.overlayRef?.detach();
71
- }
72
- }
73
- }
74
- showTooltipOnClick() {
75
- if (!this.ddTooltip) {
76
- return;
77
- }
78
- const overlay = document.getElementsByClassName('cdk-overlay-container')?.[0];
79
- if (overlay && overlay.firstChild) {
80
- overlay.removeChild(overlay.firstChild);
81
- }
82
- if (this.overlayRef?.hasAttached() === true) {
83
- this.overlayRef?.detach();
84
- return;
85
- }
86
- this.attachTooltip();
87
- }
88
- showTooltip() {
89
- if (!this.ddTooltip) {
90
- return;
91
- }
92
- if (this.withClick) {
93
- return;
94
- }
95
- if (this.overlayRef?.hasAttached() === true) {
96
- return;
97
- }
98
- this.attachTooltip();
99
- }
100
- hideTooltip() {
101
- if (this.withClick) {
102
- return;
103
- }
104
- if (this.overlayRef?.hasAttached() === true) {
105
- this.overlayRef?.detach();
106
- }
107
- }
108
- ngOnDestroy() {
109
- this.overlayRef?.dispose();
110
- }
111
- attachTooltip() {
112
- if (this.overlayRef === null) {
113
- const positionStrategy = this.getPositionStrategy();
114
- this.overlayRef = this.overlay.create({ positionStrategy });
115
- }
116
- const injector = Injector.create({
117
- providers: [
118
- {
119
- provide: TOOLTIP_DATA,
120
- useValue: this.ddTooltip.toString(),
121
- },
122
- ],
123
- });
124
- const component = new ComponentPortal(TooltipComponent, this.viewContainer, injector);
125
- this.overlayRef.attach(component);
126
- }
127
- getPositionStrategy() {
128
- let positions;
129
- if (!this._position) {
130
- positions = [
131
- TOOLTIP_RIGHT,
132
- TOOLTIP_TOP,
133
- TOOLTIP_BOTTOM,
134
- TOOLTIP_LEFT
135
- ];
136
- }
137
- else {
138
- positions = [this._position];
139
- }
140
- return this.overlay
141
- .position()
142
- .flexibleConnectedTo(this.element)
143
- .withPositions(positions);
144
- }
145
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
146
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.2", type: TooltipDirective, isStandalone: true, selector: "[ddTooltip]", inputs: { ddTooltip: "ddTooltip", withClick: "withClick", position: "position" }, host: { listeners: { "document:click": "onClick($event)", "click": "showTooltipOnClick()", "mouseenter": "showTooltip()", "focus": "showTooltip()", "mouseleave": "hideTooltip()", "blur": "hideTooltip()" } }, ngImport: i0 }); }
147
- }
148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: TooltipDirective, decorators: [{
149
- type: Directive,
150
- args: [{
151
- selector: '[ddTooltip]',
152
- standalone: true,
153
- }]
154
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }], propDecorators: { ddTooltip: [{
155
- type: Input
156
- }], withClick: [{
157
- type: Input
158
- }], position: [{
159
- type: Input
160
- }], onClick: [{
161
- type: HostListener,
162
- args: ['document:click', ['$event']]
163
- }], showTooltipOnClick: [{
164
- type: HostListener,
165
- args: ['click']
166
- }], showTooltip: [{
167
- type: HostListener,
168
- args: ['mouseenter']
169
- }, {
170
- type: HostListener,
171
- args: ['focus']
172
- }], hideTooltip: [{
173
- type: HostListener,
174
- args: ['mouseleave']
175
- }, {
176
- type: HostListener,
177
- args: ['blur']
178
- }] } });
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osUUFBUSxFQUNSLEtBQUssR0FLTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDOzs7QUFJbkUsTUFBTSxhQUFhLEdBQXNCO0lBQ3ZDLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFVBQVUsRUFBRSxPQUFPO0NBQ3BCLENBQUE7QUFDRCxNQUFNLGNBQWMsR0FBc0I7SUFDeEMsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLFFBQVE7SUFDakIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsUUFBUSxFQUFFLEtBQUs7SUFDZixVQUFVLEVBQUUsUUFBUTtDQUNyQixDQUFBO0FBQ0QsTUFBTSxXQUFXLEdBQXNCO0lBQ3JDLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxLQUFLO0lBQ2QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsVUFBVSxFQUFFLEtBQUs7Q0FDbEIsQ0FBQTtBQUNELE1BQU0sWUFBWSxHQUFzQjtJQUN0QyxPQUFPLEVBQUUsS0FBSztJQUNkLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFFBQVEsRUFBRSxLQUFLO0lBQ2YsUUFBUSxFQUFFLFFBQVE7SUFDbEIsVUFBVSxFQUFFLE1BQU07Q0FDbkIsQ0FBQTtBQU1ELE1BQU0sT0FB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QUFDLE9BQU8sQ0FBQzthQUNqQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs4R0FqSVUsZ0JBQWdCO2tHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs0SkFFaUIsU0FBUztzQkFBeEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNjLFFBQVE7c0JBQTNCLEtBQUs7Z0JBK0JDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFlbkMsa0JBQWtCO3NCQUR4QixZQUFZO3VCQUFDLE9BQU87Z0JBbUJkLFdBQVc7c0JBRmpCLFlBQVk7dUJBQUMsWUFBWTs7c0JBQ3pCLFlBQVk7dUJBQUMsT0FBTztnQkFpQmQsV0FBVztzQkFGakIsWUFBWTt1QkFBQyxZQUFZOztzQkFDekIsWUFBWTt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIFJlbmRlcmVyMixcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Nvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5UmVmLCBQb3NpdGlvblN0cmF0ZWd5fSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7Q29tcG9uZW50UG9ydGFsfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHtUT09MVElQX0RBVEEsIFRvb2x0aXBDb21wb25lbnR9IGZyb20gJy4vdG9vbHRpcC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IHR5cGUgVFRvb2xUaXBQb3NpdGlvbnMgPSAndG9wJyB8ICdyaWdodCcgfCAnYm90dG9tJyB8ICdsZWZ0J1xyXG5cclxuY29uc3QgVE9PTFRJUF9SSUdIVDogQ29ubmVjdGVkUG9zaXRpb24gPSB7XHJcbiAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICBvdmVybGF5WTogJ2NlbnRlcicsXHJcbiAgcGFuZWxDbGFzczogJ3JpZ2h0JyxcclxufVxyXG5jb25zdCBUT09MVElQX0JPVFRPTTogQ29ubmVjdGVkUG9zaXRpb24gPSB7XHJcbiAgb3JpZ2luWDogJ2NlbnRlcicsXHJcbiAgb3JpZ2luWTogJ2JvdHRvbScsXHJcbiAgb3ZlcmxheVg6ICdjZW50ZXInLFxyXG4gIG92ZXJsYXlZOiAndG9wJyxcclxuICBwYW5lbENsYXNzOiAnYm90dG9tJyxcclxufVxyXG5jb25zdCBUT09MVElQX1RPUDogQ29ubmVjdGVkUG9zaXRpb24gPSB7XHJcbiAgb3JpZ2luWDogJ2NlbnRlcicsXHJcbiAgb3JpZ2luWTogJ3RvcCcsXHJcbiAgb3ZlcmxheVg6ICdjZW50ZXInLFxyXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICBwYW5lbENsYXNzOiAndG9wJyxcclxufVxyXG5jb25zdCBUT09MVElQX0xFRlQ6IENvbm5lY3RlZFBvc2l0aW9uID0ge1xyXG4gIG9yaWdpblg6ICdlbmQnLFxyXG4gIG9yaWdpblk6ICdjZW50ZXInLFxyXG4gIG92ZXJsYXlYOiAnZW5kJyxcclxuICBvdmVybGF5WTogJ2NlbnRlcicsXHJcbiAgcGFuZWxDbGFzczogJ2xlZnQnLFxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tkZFRvb2x0aXBdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgcHVibGljIGRkVG9vbHRpcCE6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB3aXRoQ2xpY2sgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHBvc2l0aW9uKHA6VFRvb2xUaXBQb3NpdGlvbnMgfCB1bmRlZmluZWQpIHtcclxuICAgIHN3aXRjaCAocCkge1xyXG4gICAgICBjYXNlICd0b3AnOiB7XHJcbiAgICAgICAgdGhpcy5fcG9zaXRpb24gPSBUT09MVElQX1RPUDtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdyaWdodCc6IHtcclxuICAgICAgICB0aGlzLl9wb3NpdGlvbiA9IFRPT0xUSVBfUklHSFRcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdib3R0b20nOiB7XHJcbiAgICAgICAgdGhpcy5fcG9zaXRpb24gPSBUT09MVElQX0JPVFRPTVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ2xlZnQnOiB7XHJcbiAgICAgICAgdGhpcy5fcG9zaXRpb24gPSBUT09MVElQX0xFRlRcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBwcml2YXRlIF9wb3NpdGlvbj86IENvbm5lY3RlZFBvc2l0aW9uXHJcbiAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSByZHI6IFJlbmRlcmVyMixcclxuICApIHt9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgb25DbGljayh0YXJnZXRFbGVtZW50OiBFdmVudCkge1xyXG4gICAgaWYgKCF0aGlzLmRkVG9vbHRpcCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnModGFyZ2V0RWxlbWVudC50YXJnZXQpO1xyXG5cclxuICAgIGlmICghY2xpY2tlZEluc2lkZSkge1xyXG4gICAgICBpZiAodGhpcy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpID09PSB0cnVlKSB7XHJcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxyXG4gIHB1YmxpYyBzaG93VG9vbHRpcE9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGRUb29sdGlwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IG92ZXJsYXkgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdjZGstb3ZlcmxheS1jb250YWluZXInKT8uWzBdO1xyXG4gICAgaWYgKG92ZXJsYXkgJiYgb3ZlcmxheS5maXJzdENoaWxkKSB7XHJcbiAgICAgIG92ZXJsYXkucmVtb3ZlQ2hpbGQob3ZlcmxheS5maXJzdENoaWxkKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYXR0YWNoVG9vbHRpcCgpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnKVxyXG4gIHB1YmxpYyBzaG93VG9vbHRpcCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kZFRvb2x0aXApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMud2l0aENsaWNrKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkgPT09IHRydWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYXR0YWNoVG9vbHRpcCgpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXHJcbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXHJcbiAgcHVibGljIGhpZGVUb29sdGlwKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMud2l0aENsaWNrKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhdHRhY2hUb29sdGlwKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMub3ZlcmxheVJlZiA9PT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KCk7XHJcbiAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoeyBwb3NpdGlvblN0cmF0ZWd5IH0pO1xyXG4gICAgfVxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBUT09MVElQX0RBVEEsXHJcbiAgICAgICAgICB1c2VWYWx1ZTogdGhpcy5kZFRvb2x0aXAudG9TdHJpbmcoKSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50UG9ydGFsKFRvb2x0aXBDb21wb25lbnQsIHRoaXMudmlld0NvbnRhaW5lciwgaW5qZWN0b3IpO1xyXG4gICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaChjb21wb25lbnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQb3NpdGlvblN0cmF0ZWd5KCk6IFBvc2l0aW9uU3RyYXRlZ3kge1xyXG4gICAgbGV0IHBvc2l0aW9uczogQ29ubmVjdGVkUG9zaXRpb25bXVxyXG4gICAgaWYgKCF0aGlzLl9wb3NpdGlvbikge1xyXG4gICAgICBwb3NpdGlvbnMgPSBbXHJcbiAgICAgICAgVE9PTFRJUF9SSUdIVCxcclxuICAgICAgICBUT09MVElQX1RPUCxcclxuICAgICAgICBUT09MVElQX0JPVFRPTSxcclxuICAgICAgICBUT09MVElQX0xFRlRcclxuICAgICAgXVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcG9zaXRpb25zID0gW3RoaXMuX3Bvc2l0aW9uXVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLm92ZXJsYXlcclxuICAgICAgLnBvc2l0aW9uKClcclxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbGVtZW50KVxyXG4gICAgICAud2l0aFBvc2l0aW9ucyhwb3NpdGlvbnMpO1xyXG4gIH1cclxufVxyXG4iXX0=