design-angular-kit 1.0.0-1 → 1.0.0-11

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 (229) hide show
  1. package/README.md +183 -24
  2. package/assets/i18n/en.json +97 -0
  3. package/assets/i18n/it.json +97 -0
  4. package/esm2020/lib/abstracts/abstract-form.component.mjs +171 -0
  5. package/esm2020/lib/abstracts/abstract.component.mjs +45 -0
  6. package/esm2020/lib/components/components.module.mjs +256 -0
  7. package/esm2020/lib/components/core/accordion/accordion.component.mjs +31 -0
  8. package/esm2020/lib/components/core/alert/alert.component.mjs +69 -0
  9. package/esm2020/lib/components/core/badge/badge.directive.mjs +34 -0
  10. package/esm2020/lib/components/core/button/button.directive.mjs +80 -0
  11. package/esm2020/lib/components/core/callout/callout.component.mjs +84 -0
  12. package/esm2020/lib/components/core/card/card.component.mjs +58 -0
  13. package/esm2020/lib/components/core/carousel/carousel/carousel.component.mjs +79 -0
  14. package/esm2020/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +15 -0
  15. package/esm2020/lib/components/core/chip/chip.component.mjs +89 -0
  16. package/esm2020/lib/components/core/collapse/collapse.component.mjs +101 -0
  17. package/esm2020/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +24 -0
  18. package/esm2020/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +11 -0
  19. package/esm2020/lib/components/core/dimmer/dimmer.component.mjs +59 -0
  20. package/esm2020/lib/components/core/dropdown/dropdown/dropdown.component.mjs +130 -0
  21. package/esm2020/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +68 -0
  22. package/esm2020/lib/components/core/forward/forward.directive.mjs +51 -0
  23. package/esm2020/lib/components/core/link/link.component.mjs +40 -0
  24. package/esm2020/lib/components/core/list/list/list.component.mjs +13 -0
  25. package/esm2020/lib/components/core/list/list-item/list-item.component.mjs +36 -0
  26. package/esm2020/lib/components/core/modal/modal.component.mjs +98 -0
  27. package/esm2020/lib/components/core/notifications/notifications.component.mjs +110 -0
  28. package/esm2020/lib/components/core/pagination/pagination.component.mjs +131 -0
  29. package/esm2020/lib/components/core/popover/popover.directive.mjs +179 -0
  30. package/esm2020/lib/components/core/progress-bar/progress-bar.component.mjs +34 -0
  31. package/esm2020/lib/components/core/progress-button/progress-button.component.mjs +27 -0
  32. package/esm2020/lib/components/core/rating/rating.component.mjs +49 -0
  33. package/esm2020/lib/components/core/spinner/spinner.component.mjs +35 -0
  34. package/esm2020/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +127 -0
  35. package/esm2020/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +19 -0
  36. package/esm2020/lib/components/core/tab/tab-container/tab-container.component.mjs +59 -0
  37. package/esm2020/lib/components/core/tab/tab-item/tab-item.component.mjs +36 -0
  38. package/esm2020/lib/components/core/table/table.component.mjs +57 -0
  39. package/esm2020/lib/components/core/tooltip/tooltip.directive.mjs +143 -0
  40. package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +40 -0
  41. package/esm2020/lib/components/form/input/input.component.mjs +222 -0
  42. package/esm2020/lib/components/form/password-input/password-input.component.mjs +112 -0
  43. package/esm2020/lib/components/form/radio-button/radio-button.component.mjs +68 -0
  44. package/esm2020/lib/components/form/select/select.component.mjs +62 -0
  45. package/esm2020/lib/components/form/textarea/textarea.component.mjs +46 -0
  46. package/esm2020/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +139 -0
  47. package/esm2020/lib/components/form/upload-file-list/upload-file-list.component.mjs +104 -0
  48. package/esm2020/lib/components/navigation/back-button/back-button.component.mjs +69 -0
  49. package/esm2020/lib/components/navigation/back-to-top/back-to-top.component.mjs +64 -0
  50. package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +56 -0
  51. package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +23 -0
  52. package/esm2020/lib/components/navigation/header/header.component.mjs +57 -0
  53. package/esm2020/lib/components/utils/icon/icon.component.mjs +54 -0
  54. package/esm2020/lib/components/utils/language-switcher/language-switcher.component.mjs +39 -0
  55. package/esm2020/lib/components/utils/not-found-page/not-found-page.component.mjs +13 -0
  56. package/esm2020/lib/design-angular-kit.module.mjs +45 -131
  57. package/esm2020/lib/interfaces/core.mjs +16 -0
  58. package/esm2020/lib/interfaces/form.mjs +2 -0
  59. package/esm2020/lib/interfaces/icon.mjs +2 -0
  60. package/esm2020/lib/interfaces/utils.mjs +2 -0
  61. package/esm2020/lib/pipes/mark-matching-text.pipe.mjs +36 -0
  62. package/esm2020/lib/services/notifications/notifications.service.mjs +120 -0
  63. package/esm2020/lib/utils/boolean-input.mjs +15 -0
  64. package/esm2020/lib/utils/file-utils.mjs +73 -0
  65. package/esm2020/lib/utils/regex.mjs +26 -0
  66. package/esm2020/lib/validators/it-validators.mjs +134 -0
  67. package/esm2020/public_api.mjs +67 -36
  68. package/fesm2015/design-angular-kit.mjs +3550 -2712
  69. package/fesm2015/design-angular-kit.mjs.map +1 -1
  70. package/fesm2020/design-angular-kit.mjs +3519 -2722
  71. package/fesm2020/design-angular-kit.mjs.map +1 -1
  72. package/lib/abstracts/abstract-form.component.d.ts +86 -0
  73. package/lib/abstracts/abstract.component.d.ts +30 -0
  74. package/lib/components/components.module.d.ts +60 -0
  75. package/lib/components/core/accordion/accordion.component.d.ts +12 -0
  76. package/lib/components/core/alert/alert.component.d.ts +39 -0
  77. package/lib/components/core/badge/badge.directive.d.ts +16 -0
  78. package/lib/components/core/button/button.directive.d.ts +36 -0
  79. package/lib/components/core/callout/callout.component.d.ts +47 -0
  80. package/lib/components/core/card/card.component.d.ts +41 -0
  81. package/lib/components/core/carousel/carousel/carousel.component.d.ts +50 -0
  82. package/lib/components/core/carousel/carousel-item/carousel-item.component.d.ts +11 -0
  83. package/lib/components/core/chip/chip.component.d.ts +62 -0
  84. package/lib/components/core/collapse/collapse.component.d.ts +60 -0
  85. package/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.d.ts +12 -0
  86. package/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.d.ts +5 -0
  87. package/lib/components/core/dimmer/dimmer.component.d.ts +24 -0
  88. package/lib/components/core/dropdown/dropdown/dropdown.component.d.ts +81 -0
  89. package/lib/components/core/dropdown/dropdown-item/dropdown-item.component.d.ts +39 -0
  90. package/lib/components/core/forward/forward.directive.d.ts +14 -0
  91. package/lib/components/core/link/link.component.d.ts +31 -0
  92. package/lib/components/core/list/list/list.component.d.ts +10 -0
  93. package/lib/components/core/list/list-item/list-item.component.d.ts +24 -0
  94. package/lib/components/core/modal/modal.component.d.ts +59 -0
  95. package/lib/components/core/notifications/notifications.component.d.ts +44 -0
  96. package/lib/components/core/pagination/pagination.component.d.ts +92 -0
  97. package/lib/components/core/popover/popover.directive.d.ts +98 -0
  98. package/lib/components/core/progress-bar/progress-bar.component.d.ts +28 -0
  99. package/lib/components/core/progress-button/progress-button.component.d.ts +22 -0
  100. package/lib/components/core/rating/rating.component.d.ts +24 -0
  101. package/lib/components/core/spinner/spinner.component.d.ts +21 -0
  102. package/lib/components/core/steppers/steppers-container/steppers-container.component.d.ts +104 -0
  103. package/lib/components/core/steppers/steppers-item/steppers-item.component.d.ts +20 -0
  104. package/lib/components/core/tab/tab-container/tab-container.component.d.ts +30 -0
  105. package/lib/components/core/tab/tab-item/tab-item.component.d.ts +34 -0
  106. package/lib/components/core/table/table.component.d.ts +54 -0
  107. package/lib/components/core/tooltip/tooltip.directive.d.ts +81 -0
  108. package/lib/components/form/checkbox/checkbox.component.d.ts +30 -0
  109. package/lib/components/form/input/input.component.d.ts +96 -0
  110. package/lib/components/form/password-input/password-input.component.d.ts +55 -0
  111. package/lib/components/form/radio-button/radio-button.component.d.ts +29 -0
  112. package/lib/components/form/select/select.component.d.ts +30 -0
  113. package/lib/components/form/textarea/textarea.component.d.ts +24 -0
  114. package/lib/components/form/upload-drag-drop/upload-drag-drop.component.d.ts +54 -0
  115. package/lib/components/form/upload-file-list/upload-file-list.component.d.ts +59 -0
  116. package/lib/components/navigation/back-button/back-button.component.d.ts +47 -0
  117. package/lib/components/navigation/back-to-top/back-to-top.component.d.ts +41 -0
  118. package/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +32 -0
  119. package/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.d.ts +22 -0
  120. package/lib/components/navigation/header/header.component.d.ts +24 -0
  121. package/lib/components/utils/icon/icon.component.d.ts +40 -0
  122. package/lib/components/utils/language-switcher/language-switcher.component.d.ts +23 -0
  123. package/lib/components/utils/not-found-page/not-found-page.component.d.ts +5 -0
  124. package/lib/design-angular-kit.module.d.ts +7 -24
  125. package/lib/interfaces/core.d.ts +59 -0
  126. package/lib/interfaces/form.d.ts +67 -0
  127. package/lib/interfaces/icon.d.ts +3 -0
  128. package/lib/interfaces/utils.d.ts +10 -0
  129. package/lib/services/notifications/notifications.service.d.ts +63 -0
  130. package/lib/utils/boolean-input.d.ts +11 -0
  131. package/lib/utils/file-utils.d.ts +32 -0
  132. package/lib/utils/regex.d.ts +25 -0
  133. package/lib/validators/it-validators.d.ts +58 -0
  134. package/package.json +22 -13
  135. package/public_api.d.ts +59 -35
  136. package/esm2020/lib/badge/badge.directive.mjs +0 -83
  137. package/esm2020/lib/breadcrumb/breadcrumb-item.component.mjs +0 -66
  138. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +0 -89
  139. package/esm2020/lib/button/button.directive.mjs +0 -185
  140. package/esm2020/lib/button/button.module.mjs +0 -18
  141. package/esm2020/lib/checkbox/checkbox.component.mjs +0 -138
  142. package/esm2020/lib/collapse/collapse-group.component.mjs +0 -57
  143. package/esm2020/lib/collapse/collapse-item.component.mjs +0 -79
  144. package/esm2020/lib/collapse/collapse.config.mjs +0 -12
  145. package/esm2020/lib/collapse/collapse.directive.mjs +0 -55
  146. package/esm2020/lib/collapse/collapse.module.mjs +0 -22
  147. package/esm2020/lib/dropdown/dropdown-divider.component.mjs +0 -11
  148. package/esm2020/lib/dropdown/dropdown-item.component.mjs +0 -97
  149. package/esm2020/lib/dropdown/dropdown.component.mjs +0 -143
  150. package/esm2020/lib/dropdown/dropdown.config.mjs +0 -12
  151. package/esm2020/lib/dropdown/dropdown.directive.mjs +0 -156
  152. package/esm2020/lib/dropdown/dropdown.module.mjs +0 -25
  153. package/esm2020/lib/enums/icons.enum.mjs +0 -27
  154. package/esm2020/lib/form-input/form-input-password.utils.mjs +0 -154
  155. package/esm2020/lib/form-input/form-input.component.mjs +0 -495
  156. package/esm2020/lib/form-input/it-prefix.directive.mjs +0 -13
  157. package/esm2020/lib/form-input/it-suffix.directive.mjs +0 -13
  158. package/esm2020/lib/form-input/it-text-prefix.directive.mjs +0 -13
  159. package/esm2020/lib/form-input/it-text-suffix.directive.mjs +0 -13
  160. package/esm2020/lib/form-input/mark-matching-text.pipe.mjs +0 -36
  161. package/esm2020/lib/icon/icon.component.mjs +0 -87
  162. package/esm2020/lib/icon/icon.module.mjs +0 -18
  163. package/esm2020/lib/models/Alignment.mjs +0 -15
  164. package/esm2020/lib/models/ButtonSize.mjs +0 -15
  165. package/esm2020/lib/models/InputType.mjs +0 -44
  166. package/esm2020/lib/models/ThemeColor.mjs +0 -30
  167. package/esm2020/lib/popover/popover.config.mjs +0 -17
  168. package/esm2020/lib/popover/popover.directive.mjs +0 -33
  169. package/esm2020/lib/popover/popover.module.mjs +0 -19
  170. package/esm2020/lib/progress-bar/progress-bar.component.mjs +0 -98
  171. package/esm2020/lib/radio/radio.component.mjs +0 -287
  172. package/esm2020/lib/radio/unique-selection-dispatcher.mjs +0 -55
  173. package/esm2020/lib/tabs/tab-group.component.mjs +0 -177
  174. package/esm2020/lib/tabs/tab.component.mjs +0 -73
  175. package/esm2020/lib/tabs/tabs.module.mjs +0 -20
  176. package/esm2020/lib/toggle/toggle.component.mjs +0 -86
  177. package/esm2020/lib/tooltip/tooltip.config.mjs +0 -17
  178. package/esm2020/lib/tooltip/tooltip.directive.mjs +0 -43
  179. package/esm2020/lib/tooltip/tooltip.module.mjs +0 -19
  180. package/esm2020/lib/util/focus-mouse.directive.mjs +0 -32
  181. package/esm2020/lib/util/util.mjs +0 -12
  182. package/esm2020/lib/util/utils.module.mjs +0 -16
  183. package/lib/badge/badge.directive.d.ts +0 -33
  184. package/lib/breadcrumb/breadcrumb-item.component.d.ts +0 -33
  185. package/lib/breadcrumb/breadcrumb.component.d.ts +0 -33
  186. package/lib/button/button.directive.d.ts +0 -72
  187. package/lib/button/button.module.d.ts +0 -8
  188. package/lib/checkbox/checkbox.component.d.ts +0 -61
  189. package/lib/collapse/collapse-group.component.d.ts +0 -16
  190. package/lib/collapse/collapse-item.component.d.ts +0 -46
  191. package/lib/collapse/collapse.config.d.ts +0 -6
  192. package/lib/collapse/collapse.directive.d.ts +0 -25
  193. package/lib/collapse/collapse.module.d.ts +0 -12
  194. package/lib/dropdown/dropdown-divider.component.d.ts +0 -5
  195. package/lib/dropdown/dropdown-item.component.d.ts +0 -56
  196. package/lib/dropdown/dropdown.component.d.ts +0 -65
  197. package/lib/dropdown/dropdown.config.d.ts +0 -6
  198. package/lib/dropdown/dropdown.directive.d.ts +0 -77
  199. package/lib/dropdown/dropdown.module.d.ts +0 -15
  200. package/lib/enums/icons.enum.d.ts +0 -23
  201. package/lib/form-input/form-input-password.utils.d.ts +0 -45
  202. package/lib/form-input/form-input.component.d.ts +0 -283
  203. package/lib/form-input/it-prefix.directive.d.ts +0 -5
  204. package/lib/form-input/it-suffix.directive.d.ts +0 -5
  205. package/lib/form-input/it-text-prefix.directive.d.ts +0 -5
  206. package/lib/form-input/it-text-suffix.directive.d.ts +0 -5
  207. package/lib/icon/icon.component.d.ts +0 -34
  208. package/lib/icon/icon.module.d.ts +0 -8
  209. package/lib/models/Alignment.d.ts +0 -12
  210. package/lib/models/ButtonSize.d.ts +0 -11
  211. package/lib/models/InputType.d.ts +0 -36
  212. package/lib/models/ThemeColor.d.ts +0 -21
  213. package/lib/popover/popover.config.d.ts +0 -11
  214. package/lib/popover/popover.directive.d.ts +0 -20
  215. package/lib/popover/popover.module.d.ts +0 -9
  216. package/lib/progress-bar/progress-bar.component.d.ts +0 -55
  217. package/lib/radio/radio.component.d.ts +0 -116
  218. package/lib/radio/unique-selection-dispatcher.d.ts +0 -36
  219. package/lib/tabs/tab-group.component.d.ts +0 -71
  220. package/lib/tabs/tab.component.d.ts +0 -44
  221. package/lib/tabs/tabs.module.d.ts +0 -10
  222. package/lib/toggle/toggle.component.d.ts +0 -46
  223. package/lib/tooltip/tooltip.config.d.ts +0 -11
  224. package/lib/tooltip/tooltip.directive.d.ts +0 -27
  225. package/lib/tooltip/tooltip.module.d.ts +0 -9
  226. package/lib/util/focus-mouse.directive.d.ts +0 -13
  227. package/lib/util/util.d.ts +0 -5
  228. package/lib/util/utils.module.d.ts +0 -7
  229. /package/lib/{form-input → pipes}/mark-matching-text.pipe.d.ts +0 -0
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectorRef, Component, ElementRef, EventEmitter, inject, Input, Output, Renderer2 } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AbstractComponent {
4
+ constructor() {
5
+ /**
6
+ * The element ID
7
+ */
8
+ this.id = this.getDefaultId();
9
+ this._renderer = inject(Renderer2);
10
+ this._elementRef = inject(ElementRef);
11
+ this._changeDetectorRef = inject(ChangeDetectorRef);
12
+ this.valueChanges = new EventEmitter();
13
+ }
14
+ ngAfterViewInit() {
15
+ this._renderer.removeAttribute(this._elementRef.nativeElement, 'id');
16
+ }
17
+ ngOnChanges(changes) {
18
+ this.valueChanges.next(); // The inputs were changed
19
+ }
20
+ /**
21
+ * Generate unique id for components
22
+ * @private
23
+ */
24
+ getDefaultId() {
25
+ const name = this.constructor.name.replace('Component', '');
26
+ const kebabName = name.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());
27
+ return `it-${kebabName}-${AbstractComponent.instances++}`;
28
+ }
29
+ }
30
+ /**
31
+ * Counter of active instances
32
+ * @private
33
+ */
34
+ AbstractComponent.instances = 0;
35
+ AbstractComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AbstractComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36
+ AbstractComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AbstractComponent, selector: "ng-component", inputs: { id: "id" }, outputs: { valueChanges: "valueChanges" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AbstractComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ template: '' }]
40
+ }], ctorParameters: function () { return []; }, propDecorators: { id: [{
41
+ type: Input
42
+ }], valueChanges: [{
43
+ type: Output
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvYWJzdHJhY3RzL2Fic3RyYWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQzs7QUFHdkIsTUFBTSxPQUFnQixpQkFBaUI7SUF1QnJDO1FBckJBOztXQUVHO1FBQ00sT0FBRSxHQUFXLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQW1CeEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLDBCQUEwQjtJQUN0RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssWUFBWTtRQUNsQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN6RyxPQUFPLE1BQU0sU0FBUyxJQUFJLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7SUFDNUQsQ0FBQzs7QUFuQ0Q7OztHQUdHO0FBQ1ksMkJBQVMsR0FBRyxDQUFDLENBQUM7OEdBaEJULGlCQUFpQjtrR0FBakIsaUJBQWlCLDBJQURoQixFQUFFOzJGQUNILGlCQUFpQjtrQkFEdEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7MEVBTWhCLEVBQUU7c0JBQVYsS0FBSztnQkFLVyxZQUFZO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuXG4gIC8qKlxuICAgKiBUaGUgZWxlbWVudCBJRFxuICAgKi9cbiAgQElucHV0KCkgaWQ6IHN0cmluZyA9IHRoaXMuZ2V0RGVmYXVsdElkKCk7XG5cbiAgLyoqXG4gICAqIEZpcmVkIHdoZW4gY29tcG9uZW50IGlucHV0IGF0dHJpYnV0ZXMgd2FzIGNoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgdmFsdWVDaGFuZ2VzOiBFdmVudEVtaXR0ZXI8dm9pZD47XG5cbiAgLyoqXG4gICAqIENvdW50ZXIgb2YgYWN0aXZlIGluc3RhbmNlc1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgaW5zdGFuY2VzID0gMDtcblxuXG4gIHByb3RlY3RlZCByZWFkb25seSBfcmVuZGVyZXI6IFJlbmRlcmVyMjsgLy8gSW5qZWN0ZWRcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmOyAvLyBJbmplY3RlZFxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjsgLy8gSW5qZWN0ZWRcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9yZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgdGhpcy52YWx1ZUNoYW5nZXMgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2lkJyk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZXMubmV4dCgpOyAvLyBUaGUgaW5wdXRzIHdlcmUgY2hhbmdlZFxuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIHVuaXF1ZSBpZCBmb3IgY29tcG9uZW50c1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBnZXREZWZhdWx0SWQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBuYW1lID0gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLnJlcGxhY2UoJ0NvbXBvbmVudCcsICcnKTtcbiAgICBjb25zdCBrZWJhYk5hbWUgPSBuYW1lLnJlcGxhY2UoL1tBLVpdKyg/IVthLXpdKXxbQS1aXS9nLCAoJCwgb2ZzKSA9PiAob2ZzID8gJy0nIDogJycpICsgJC50b0xvd2VyQ2FzZSgpKTtcbiAgICByZXR1cm4gYGl0LSR7a2ViYWJOYW1lfS0ke0Fic3RyYWN0Q29tcG9uZW50Lmluc3RhbmNlcysrfWA7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,256 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule, NgForOf, NgIf } from '@angular/common';
3
+ import { TranslateModule } from '@ngx-translate/core';
4
+ import { ReactiveFormsModule } from '@angular/forms';
5
+ import { RouterLink } from '@angular/router';
6
+ import { AccordionComponent } from './core/accordion/accordion.component';
7
+ import { AlertComponent } from './core/alert/alert.component';
8
+ import { BadgeDirective } from './core/badge/badge.directive';
9
+ import { ButtonDirective } from './core/button/button.directive';
10
+ import { CalloutComponent } from './core/callout/callout.component';
11
+ import { CardComponent } from './core/card/card.component';
12
+ import { CarouselComponent } from './core/carousel/carousel/carousel.component';
13
+ import { CarouselItemComponent } from './core/carousel/carousel-item/carousel-item.component';
14
+ import { CollapseComponent } from './core/collapse/collapse.component';
15
+ import { DropdownComponent } from './core/dropdown/dropdown/dropdown.component';
16
+ import { DropdownItemComponent } from './core/dropdown/dropdown-item/dropdown-item.component';
17
+ import { LinkComponent } from './core/link/link.component';
18
+ import { ListComponent } from './core/list/list/list.component';
19
+ import { ListItemComponent } from './core/list/list-item/list-item.component';
20
+ import { ModalComponent } from './core/modal/modal.component';
21
+ import { NotificationsComponent } from './core/notifications/notifications.component';
22
+ import { PaginationComponent } from './core/pagination/pagination.component';
23
+ import { PopoverDirective } from './core/popover/popover.directive';
24
+ import { ProgressBarComponent } from './core/progress-bar/progress-bar.component';
25
+ import { ProgressButtonComponent } from './core/progress-button/progress-button.component';
26
+ import { RatingComponent } from './core/rating/rating.component';
27
+ import { SpinnerComponent } from './core/spinner/spinner.component';
28
+ import { SteppersContainerComponent } from './core/steppers/steppers-container/steppers-container.component';
29
+ import { SteppersItemComponent } from './core/steppers/steppers-item/steppers-item.component';
30
+ import { TabContainerComponent } from './core/tab/tab-container/tab-container.component';
31
+ import { TabItemComponent } from './core/tab/tab-item/tab-item.component';
32
+ import { TableComponent } from './core/table/table.component';
33
+ import { TooltipDirective } from './core/tooltip/tooltip.directive';
34
+ import { CheckboxComponent } from './form/checkbox/checkbox.component';
35
+ import { InputComponent } from './form/input/input.component';
36
+ import { PasswordInputComponent } from './form/password-input/password-input.component';
37
+ import { RadioButtonComponent } from './form/radio-button/radio-button.component';
38
+ import { SelectComponent } from './form/select/select.component';
39
+ import { TextareaComponent } from './form/textarea/textarea.component';
40
+ import { UploadDragDropComponent } from './form/upload-drag-drop/upload-drag-drop.component';
41
+ import { UploadFileListComponent } from './form/upload-file-list/upload-file-list.component';
42
+ import { BackButtonComponent } from './navigation/back-button/back-button.component';
43
+ import { BackToTopComponent } from './navigation/back-to-top/back-to-top.component';
44
+ import { BreadcrumbComponent } from './navigation/breadcrumbs/breadcrumb/breadcrumb.component';
45
+ import { BreadcrumbItemComponent } from './navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component';
46
+ import { HeaderComponent } from './navigation/header/header.component';
47
+ import { IconComponent } from './utils/icon/icon.component';
48
+ import { LanguageSwitcherComponent } from './utils/language-switcher/language-switcher.component';
49
+ import { NotFoundPageComponent } from './utils/not-found-page/not-found-page.component';
50
+ import { ChipComponent } from './core/chip/chip.component';
51
+ import { ForwardDirective } from './core/forward/forward.directive';
52
+ import { DimmerComponent } from './core/dimmer/dimmer.component';
53
+ import { DimmerButtonsComponent } from './core/dimmer/dimmer-buttons/dimmer-buttons.component';
54
+ import { DimmerIconComponent } from './core/dimmer/dimmer-icon/dimmer-icon.component';
55
+ import { MarkMatchingTextPipe } from '../pipes/mark-matching-text.pipe';
56
+ import * as i0 from "@angular/core";
57
+ /**
58
+ * Core components
59
+ */
60
+ const core = [
61
+ AccordionComponent,
62
+ AlertComponent,
63
+ BadgeDirective,
64
+ ButtonDirective,
65
+ CalloutComponent,
66
+ CardComponent,
67
+ CarouselComponent,
68
+ CarouselItemComponent,
69
+ ChipComponent,
70
+ CollapseComponent,
71
+ DimmerButtonsComponent,
72
+ DimmerComponent,
73
+ DimmerIconComponent,
74
+ DropdownComponent,
75
+ DropdownItemComponent,
76
+ ForwardDirective,
77
+ LinkComponent,
78
+ ListComponent,
79
+ ListItemComponent,
80
+ ModalComponent,
81
+ NotificationsComponent,
82
+ PaginationComponent,
83
+ PopoverDirective,
84
+ ProgressBarComponent,
85
+ ProgressButtonComponent,
86
+ RatingComponent,
87
+ SpinnerComponent,
88
+ SteppersContainerComponent,
89
+ SteppersItemComponent,
90
+ TabContainerComponent,
91
+ TabItemComponent,
92
+ TableComponent,
93
+ TooltipDirective
94
+ ];
95
+ /**
96
+ * Form components
97
+ */
98
+ const form = [
99
+ CheckboxComponent,
100
+ InputComponent,
101
+ PasswordInputComponent,
102
+ RadioButtonComponent,
103
+ SelectComponent,
104
+ TextareaComponent,
105
+ UploadDragDropComponent,
106
+ UploadFileListComponent
107
+ ];
108
+ /**
109
+ * Navigation Components
110
+ */
111
+ const navigation = [
112
+ BackButtonComponent,
113
+ BackToTopComponent,
114
+ BreadcrumbComponent,
115
+ BreadcrumbItemComponent,
116
+ HeaderComponent
117
+ ];
118
+ /**
119
+ * Utils components
120
+ */
121
+ const utils = [
122
+ IconComponent,
123
+ NotFoundPageComponent,
124
+ LanguageSwitcherComponent,
125
+ MarkMatchingTextPipe
126
+ ];
127
+ export class ComponentsModule {
128
+ }
129
+ ComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
130
+ ComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: ComponentsModule, declarations: [AccordionComponent,
131
+ AlertComponent,
132
+ BadgeDirective,
133
+ ButtonDirective,
134
+ CalloutComponent,
135
+ CardComponent,
136
+ CarouselComponent,
137
+ CarouselItemComponent,
138
+ ChipComponent,
139
+ CollapseComponent,
140
+ DimmerButtonsComponent,
141
+ DimmerComponent,
142
+ DimmerIconComponent,
143
+ DropdownComponent,
144
+ DropdownItemComponent,
145
+ ForwardDirective,
146
+ LinkComponent,
147
+ ListComponent,
148
+ ListItemComponent,
149
+ ModalComponent,
150
+ NotificationsComponent,
151
+ PaginationComponent,
152
+ PopoverDirective,
153
+ ProgressBarComponent,
154
+ ProgressButtonComponent,
155
+ RatingComponent,
156
+ SpinnerComponent,
157
+ SteppersContainerComponent,
158
+ SteppersItemComponent,
159
+ TabContainerComponent,
160
+ TabItemComponent,
161
+ TableComponent,
162
+ TooltipDirective, CheckboxComponent,
163
+ InputComponent,
164
+ PasswordInputComponent,
165
+ RadioButtonComponent,
166
+ SelectComponent,
167
+ TextareaComponent,
168
+ UploadDragDropComponent,
169
+ UploadFileListComponent, BackButtonComponent,
170
+ BackToTopComponent,
171
+ BreadcrumbComponent,
172
+ BreadcrumbItemComponent,
173
+ HeaderComponent, IconComponent,
174
+ NotFoundPageComponent,
175
+ LanguageSwitcherComponent,
176
+ MarkMatchingTextPipe], imports: [CommonModule,
177
+ TranslateModule,
178
+ ReactiveFormsModule,
179
+ NgIf,
180
+ NgForOf,
181
+ RouterLink], exports: [AccordionComponent,
182
+ AlertComponent,
183
+ BadgeDirective,
184
+ ButtonDirective,
185
+ CalloutComponent,
186
+ CardComponent,
187
+ CarouselComponent,
188
+ CarouselItemComponent,
189
+ ChipComponent,
190
+ CollapseComponent,
191
+ DimmerButtonsComponent,
192
+ DimmerComponent,
193
+ DimmerIconComponent,
194
+ DropdownComponent,
195
+ DropdownItemComponent,
196
+ ForwardDirective,
197
+ LinkComponent,
198
+ ListComponent,
199
+ ListItemComponent,
200
+ ModalComponent,
201
+ NotificationsComponent,
202
+ PaginationComponent,
203
+ PopoverDirective,
204
+ ProgressBarComponent,
205
+ ProgressButtonComponent,
206
+ RatingComponent,
207
+ SpinnerComponent,
208
+ SteppersContainerComponent,
209
+ SteppersItemComponent,
210
+ TabContainerComponent,
211
+ TabItemComponent,
212
+ TableComponent,
213
+ TooltipDirective, CheckboxComponent,
214
+ InputComponent,
215
+ PasswordInputComponent,
216
+ RadioButtonComponent,
217
+ SelectComponent,
218
+ TextareaComponent,
219
+ UploadDragDropComponent,
220
+ UploadFileListComponent, BackButtonComponent,
221
+ BackToTopComponent,
222
+ BreadcrumbComponent,
223
+ BreadcrumbItemComponent,
224
+ HeaderComponent, IconComponent,
225
+ NotFoundPageComponent,
226
+ LanguageSwitcherComponent,
227
+ MarkMatchingTextPipe] });
228
+ ComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ComponentsModule, imports: [CommonModule,
229
+ TranslateModule,
230
+ ReactiveFormsModule] });
231
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ComponentsModule, decorators: [{
232
+ type: NgModule,
233
+ args: [{
234
+ declarations: [
235
+ ...core,
236
+ ...form,
237
+ ...navigation,
238
+ ...utils
239
+ ],
240
+ imports: [
241
+ CommonModule,
242
+ TranslateModule,
243
+ ReactiveFormsModule,
244
+ NgIf,
245
+ NgForOf,
246
+ RouterLink
247
+ ],
248
+ exports: [
249
+ ...core,
250
+ ...form,
251
+ ...navigation,
252
+ ...utils
253
+ ]
254
+ }]
255
+ }] });
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvbXBvbmVudHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDOUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdURBQXVELENBQUM7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QjtRQUNoQixjQUFjO1FBQ2QsZ0JBQWdCLEVBT2hCLGlCQUFpQjtRQUNqQixjQUFjO1FBQ2Qsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQixlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLHVCQUF1QjtRQUN2Qix1QkFBdUIsRUFPdkIsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLGVBQWUsRUFPZixhQUFhO1FBQ2IscUJBQXFCO1FBQ3JCLHlCQUF5QjtRQUN6QixvQkFBb0I7OEdBeUJULGdCQUFnQixZQWR6QixZQUFZO1FBQ1osZUFBZTtRQUNmLG1CQUFtQjsyRkFZVixnQkFBZ0I7a0JBdEI1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixHQUFHLElBQUk7d0JBQ1AsR0FBRyxJQUFJO3dCQUNQLEdBQUcsVUFBVTt3QkFDYixHQUFHLEtBQUs7cUJBQ1Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLElBQUk7d0JBQ0osT0FBTzt3QkFDUCxVQUFVO3FCQUNYO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLElBQUk7d0JBQ1AsR0FBRyxJQUFJO3dCQUNQLEdBQUcsVUFBVTt3QkFDYixHQUFHLEtBQUs7cUJBQ1Q7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ0Zvck9mLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQWNjb3JkaW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEFsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYWRnZURpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS9iYWRnZS9iYWRnZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL2J1dHRvbi9idXR0b24uZGlyZWN0aXZlJztcbmltcG9ydCB7IENhbGxvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2FsbG91dC9jYWxsb3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2NhcmQvY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2Fyb3VzZWxDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2Fyb3VzZWwvY2Fyb3VzZWwvY2Fyb3VzZWwuY29tcG9uZW50JztcbmltcG9ydCB7IENhcm91c2VsSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9jYXJvdXNlbC9jYXJvdXNlbC1pdGVtL2Nhcm91c2VsLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IENvbGxhcHNlQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2NvbGxhcHNlL2NvbGxhcHNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9kcm9wZG93bi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJvcGRvd25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2Ryb3Bkb3duL2Ryb3Bkb3duLWl0ZW0vZHJvcGRvd24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS9saW5rL2xpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbGlzdC9saXN0L2xpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2xpc3QvbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9wb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS9wb3BvdmVyL3BvcG92ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2dyZXNzQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3Byb2dyZXNzLWJ1dHRvbi9wcm9ncmVzcy1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFJhdGluZ0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS9yYXRpbmcvcmF0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RlcHBlcnNDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvc3RlcHBlcnMvc3RlcHBlcnMtY29udGFpbmVyL3N0ZXBwZXJzLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RlcHBlcnNJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3N0ZXBwZXJzL3N0ZXBwZXJzLWl0ZW0vc3RlcHBlcnMtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFiQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3RhYi90YWItY29udGFpbmVyL3RhYi1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFiL3RhYi1pdGVtL3RhYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFzc3dvcmRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRhcmVhQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVcGxvYWREcmFnRHJvcENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS91cGxvYWQtZHJhZy1kcm9wL3VwbG9hZC1kcmFnLWRyb3AuY29tcG9uZW50JztcbmltcG9ydCB7IFVwbG9hZEZpbGVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL3VwbG9hZC1maWxlLWxpc3QvdXBsb2FkLWZpbGUtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFja0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vbmF2aWdhdGlvbi9iYWNrLWJ1dHRvbi9iYWNrLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFja1RvVG9wQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uL2JhY2stdG8tdG9wL2JhY2stdG8tdG9wLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCcmVhZGNydW1iQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL25hdmlnYXRpb24vYnJlYWRjcnVtYnMvYnJlYWRjcnVtYi1pdGVtL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuL3V0aWxzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTd2l0Y2hlckNvbXBvbmVudCB9IGZyb20gJy4vdXRpbHMvbGFuZ3VhZ2Utc3dpdGNoZXIvbGFuZ3VhZ2Utc3dpdGNoZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5vdEZvdW5kUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vdXRpbHMvbm90LWZvdW5kLXBhZ2Uvbm90LWZvdW5kLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IENoaXBDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3J3YXJkRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL2ZvcndhcmQvZm9yd2FyZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGltbWVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2RpbW1lci9kaW1tZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERpbW1lckJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvZGltbWVyL2RpbW1lci1idXR0b25zL2RpbW1lci1idXR0b25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaW1tZXJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2RpbW1lci9kaW1tZXItaWNvbi9kaW1tZXItaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFya01hdGNoaW5nVGV4dFBpcGUgfSBmcm9tICcuLi9waXBlcy9tYXJrLW1hdGNoaW5nLXRleHQucGlwZSc7XG5cblxuLyoqXG4gKiBDb3JlIGNvbXBvbmVudHNcbiAqL1xuY29uc3QgY29yZSA9IFtcbiAgQWNjb3JkaW9uQ29tcG9uZW50LFxuICBBbGVydENvbXBvbmVudCxcbiAgQmFkZ2VEaXJlY3RpdmUsXG4gIEJ1dHRvbkRpcmVjdGl2ZSxcbiAgQ2FsbG91dENvbXBvbmVudCxcbiAgQ2FyZENvbXBvbmVudCxcbiAgQ2Fyb3VzZWxDb21wb25lbnQsXG4gIENhcm91c2VsSXRlbUNvbXBvbmVudCxcbiAgQ2hpcENvbXBvbmVudCxcbiAgQ29sbGFwc2VDb21wb25lbnQsXG4gIERpbW1lckJ1dHRvbnNDb21wb25lbnQsXG4gIERpbW1lckNvbXBvbmVudCxcbiAgRGltbWVySWNvbkNvbXBvbmVudCxcbiAgRHJvcGRvd25Db21wb25lbnQsXG4gIERyb3Bkb3duSXRlbUNvbXBvbmVudCxcbiAgRm9yd2FyZERpcmVjdGl2ZSxcbiAgTGlua0NvbXBvbmVudCxcbiAgTGlzdENvbXBvbmVudCxcbiAgTGlzdEl0ZW1Db21wb25lbnQsXG4gIE1vZGFsQ29tcG9uZW50LFxuICBOb3RpZmljYXRpb25zQ29tcG9uZW50LFxuICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICBQb3BvdmVyRGlyZWN0aXZlLFxuICBQcm9ncmVzc0JhckNvbXBvbmVudCxcbiAgUHJvZ3Jlc3NCdXR0b25Db21wb25lbnQsXG4gIFJhdGluZ0NvbXBvbmVudCxcbiAgU3Bpbm5lckNvbXBvbmVudCxcbiAgU3RlcHBlcnNDb250YWluZXJDb21wb25lbnQsXG4gIFN0ZXBwZXJzSXRlbUNvbXBvbmVudCxcbiAgVGFiQ29udGFpbmVyQ29tcG9uZW50LFxuICBUYWJJdGVtQ29tcG9uZW50LFxuICBUYWJsZUNvbXBvbmVudCxcbiAgVG9vbHRpcERpcmVjdGl2ZVxuXTtcblxuLyoqXG4gKiBGb3JtIGNvbXBvbmVudHNcbiAqL1xuY29uc3QgZm9ybSA9IFtcbiAgQ2hlY2tib3hDb21wb25lbnQsXG4gIElucHV0Q29tcG9uZW50LFxuICBQYXNzd29yZElucHV0Q29tcG9uZW50LFxuICBSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgU2VsZWN0Q29tcG9uZW50LFxuICBUZXh0YXJlYUNvbXBvbmVudCxcbiAgVXBsb2FkRHJhZ0Ryb3BDb21wb25lbnQsXG4gIFVwbG9hZEZpbGVMaXN0Q29tcG9uZW50XG5dO1xuXG4vKipcbiAqIE5hdmlnYXRpb24gQ29tcG9uZW50c1xuICovXG5jb25zdCBuYXZpZ2F0aW9uID0gW1xuICBCYWNrQnV0dG9uQ29tcG9uZW50LFxuICBCYWNrVG9Ub3BDb21wb25lbnQsXG4gIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gIEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50LFxuICBIZWFkZXJDb21wb25lbnRcbl07XG5cbi8qKlxuICogVXRpbHMgY29tcG9uZW50c1xuICovXG5jb25zdCB1dGlscyA9IFtcbiAgSWNvbkNvbXBvbmVudCxcbiAgTm90Rm91bmRQYWdlQ29tcG9uZW50LFxuICBMYW5ndWFnZVN3aXRjaGVyQ29tcG9uZW50LFxuICBNYXJrTWF0Y2hpbmdUZXh0UGlwZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgLi4uY29yZSxcbiAgICAuLi5mb3JtLFxuICAgIC4uLm5hdmlnYXRpb24sXG4gICAgLi4udXRpbHNcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBOZ0lmLFxuICAgIE5nRm9yT2YsXG4gICAgUm91dGVyTGlua1xuICBdLFxuICBleHBvcnRzOiBbXG4gICAgLi4uY29yZSxcbiAgICAuLi5mb3JtLFxuICAgIC4uLm5hdmlnYXRpb24sXG4gICAgLi4udXRpbHNcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDb21wb25lbnRzTW9kdWxlIHtcbn1cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { CollapseComponent } from '../collapse/collapse.component';
3
+ import * as i0 from "@angular/core";
4
+ export class AccordionComponent extends CollapseComponent {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.isCollapsed = true;
8
+ }
9
+ ngAfterViewInit() {
10
+ super.ngAfterViewInit();
11
+ this._renderer.removeAttribute(this._elementRef.nativeElement, 'title');
12
+ this.isCollapsed = !this.isOpenedOnStart;
13
+ this.onHide.subscribe(() => {
14
+ this.isCollapsed = true;
15
+ this._changeDetectorRef.detectChanges();
16
+ });
17
+ this.onShow.subscribe(() => {
18
+ this.isCollapsed = false;
19
+ this._changeDetectorRef.detectChanges();
20
+ });
21
+ }
22
+ }
23
+ AccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AccordionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
24
+ AccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AccordionComponent, selector: "it-accordion[title]", inputs: { title: "title" }, exportAs: ["itAccordion"], usesInheritance: true, ngImport: i0, template: "<div class=\"accordion\">\n <div class=\"accordion-item\">\n\n <h2 class=\"accordion-header\" id=\"collapse-{{id}}-heading\">\n <button\n class=\"accordion-button\"\n type=\"button\"\n data-bs-toggle=\"collapse\"\n [class.collapsed]=\"isCollapsed\"\n [attr.data-bs-target]=\"'#collapse-' + id\"\n [attr.aria-controls]=\"'collapse-' + id\"\n [attr.aria-expanded]=\"isOpenedOnStart ? 'true' : 'false'\">\n {{title}}\n </button>\n </h2>\n\n <div #collapse id=\"collapse-{{id}}\" role=\"region\"\n class=\"accordion-collapse collapse {{class}}\"\n [attr.aria-labelledby]=\"'collapse-' + id + '-heading'\">\n\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AccordionComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'it-accordion[title]', exportAs: 'itAccordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"accordion\">\n <div class=\"accordion-item\">\n\n <h2 class=\"accordion-header\" id=\"collapse-{{id}}-heading\">\n <button\n class=\"accordion-button\"\n type=\"button\"\n data-bs-toggle=\"collapse\"\n [class.collapsed]=\"isCollapsed\"\n [attr.data-bs-target]=\"'#collapse-' + id\"\n [attr.aria-controls]=\"'collapse-' + id\"\n [attr.aria-expanded]=\"isOpenedOnStart ? 'true' : 'false'\">\n {{title}}\n </button>\n </h2>\n\n <div #collapse id=\"collapse-{{id}}\" role=\"region\"\n class=\"accordion-collapse collapse {{class}}\"\n [attr.aria-labelledby]=\"'collapse-' + id + '-heading'\">\n\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n\n" }]
28
+ }], propDecorators: { title: [{
29
+ type: Input
30
+ }] } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVFuRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsaUJBQWlCO0lBTnpEOztRQWFFLGdCQUFXLEdBQVksSUFBSSxDQUFDO0tBaUI3QjtJQWZVLGVBQWU7UUFDdEIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXhFLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7K0dBdEJVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHlJQ1QvQixrekJBMkJBOzJGRGxCYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UscUJBQXFCLFlBRXJCLGFBQWEsbUJBQ04sdUJBQXVCLENBQUMsTUFBTTs4QkFPdEMsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbGxhcHNlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29sbGFwc2UvY29sbGFwc2UuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXQtYWNjb3JkaW9uW3RpdGxlXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBleHBvcnRBczogJ2l0QWNjb3JkaW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3JkaW9uQ29tcG9uZW50IGV4dGVuZHMgQ29sbGFwc2VDb21wb25lbnQge1xuXG4gIC8qKlxuICAgKiBBY2NvcmRpb24gVGl0bGVcbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlITogc3RyaW5nO1xuXG4gIGlzQ29sbGFwc2VkOiBib29sZWFuID0gdHJ1ZTtcblxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3RpdGxlJyk7XG5cbiAgICB0aGlzLmlzQ29sbGFwc2VkID0gIXRoaXMuaXNPcGVuZWRPblN0YXJ0O1xuICAgIHRoaXMub25IaWRlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmlzQ29sbGFwc2VkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgICB0aGlzLm9uU2hvdy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5pc0NvbGxhcHNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJhY2NvcmRpb25cIj5cbiAgPGRpdiBjbGFzcz1cImFjY29yZGlvbi1pdGVtXCI+XG5cbiAgICA8aDIgY2xhc3M9XCJhY2NvcmRpb24taGVhZGVyXCIgaWQ9XCJjb2xsYXBzZS17e2lkfX0taGVhZGluZ1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImFjY29yZGlvbi1idXR0b25cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgZGF0YS1icy10b2dnbGU9XCJjb2xsYXBzZVwiXG4gICAgICAgIFtjbGFzcy5jb2xsYXBzZWRdPVwiaXNDb2xsYXBzZWRcIlxuICAgICAgICBbYXR0ci5kYXRhLWJzLXRhcmdldF09XCInI2NvbGxhcHNlLScgKyBpZFwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ2NvbGxhcHNlLScgKyBpZFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNPcGVuZWRPblN0YXJ0ID8gJ3RydWUnIDogJ2ZhbHNlJ1wiPlxuICAgICAgICB7e3RpdGxlfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvaDI+XG5cbiAgICA8ZGl2ICNjb2xsYXBzZSBpZD1cImNvbGxhcHNlLXt7aWR9fVwiIHJvbGU9XCJyZWdpb25cIlxuICAgICAgICAgY2xhc3M9XCJhY2NvcmRpb24tY29sbGFwc2UgY29sbGFwc2Uge3tjbGFzc319XCJcbiAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCInY29sbGFwc2UtJyArIGlkICsgJy1oZWFkaW5nJ1wiPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiYWNjb3JkaW9uLWJvZHlcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbiJdfQ==
@@ -0,0 +1,69 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { isTrueBooleanInput } from '../../../utils/boolean-input';
3
+ import { AbstractComponent } from '../../../abstracts/abstract.component';
4
+ import { Alert } from 'bootstrap-italia';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "../../utils/icon/icon.component";
8
+ import * as i3 from "@ngx-translate/core";
9
+ export class AlertComponent extends AbstractComponent {
10
+ constructor() {
11
+ super(...arguments);
12
+ /**
13
+ * The alert color
14
+ * @default info
15
+ */
16
+ this.color = 'info';
17
+ /**
18
+ * This event fires immediately when the instance's close method is called.
19
+ */
20
+ this.onClose = new EventEmitter();
21
+ /**
22
+ * This event fires when the alert has been closed (it will wait for CSS transitions to complete).
23
+ */
24
+ this.onClosed = new EventEmitter();
25
+ }
26
+ get isDismissible() {
27
+ return isTrueBooleanInput(this.dismissible);
28
+ }
29
+ ngAfterViewInit() {
30
+ super.ngAfterViewInit();
31
+ if (this.alertElement) {
32
+ const element = this.alertElement.nativeElement;
33
+ this.alert = Alert.getOrCreateInstance(element);
34
+ element.addEventListener('close.bs.alert', event => this.onClose.emit(event));
35
+ element.addEventListener('closed.bs.alert', event => this.onClosed.emit(event));
36
+ }
37
+ }
38
+ /**
39
+ * Close an alert by removing it from the DOM.
40
+ * If the `.fade` and `.show` classes are present in the element, the alert will be closed with a disappearing effect.
41
+ */
42
+ close() {
43
+ this.alert?.close();
44
+ }
45
+ /**
46
+ * The alert is removed
47
+ */
48
+ dispose() {
49
+ this.alert?.dispose();
50
+ }
51
+ }
52
+ AlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
53
+ AlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AlertComponent, selector: "it-alert", inputs: { color: "color", dismissible: "dismissible" }, outputs: { onClose: "onClose", onClosed: "onClosed" }, viewQueries: [{ propertyName: "alertElement", first: true, predicate: ["alertElement"], descendants: true }], exportAs: ["itAlert"], usesInheritance: true, ngImport: i0, template: "<div class=\"alert alert-{{color}}\" #alertElement\n [class.alert-dismissible]=\"isDismissible\"\n [class.fade]=\"isDismissible\"\n [class.show]=\"isDismissible\"\n role=\"alert\">\n <h4 class=\"alert-heading\">\n <ng-content select=\"[heading]\"></ng-content>\n </h4>\n\n <ng-content></ng-content>\n\n <button *ngIf=\"isDismissible\"\n type=\"button\"\n class=\"btn-close\"\n data-bs-dismiss=\"alert\"\n [attr.aria-label]=\"'it.core.close-alert'|translate\">\n <it-icon name=\"close\"></it-icon>\n </button>\n</div>\n", styles: [".alert-heading:empty{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "class"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertComponent, decorators: [{
55
+ type: Component,
56
+ args: [{ selector: 'it-alert', exportAs: 'itAlert', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"alert alert-{{color}}\" #alertElement\n [class.alert-dismissible]=\"isDismissible\"\n [class.fade]=\"isDismissible\"\n [class.show]=\"isDismissible\"\n role=\"alert\">\n <h4 class=\"alert-heading\">\n <ng-content select=\"[heading]\"></ng-content>\n </h4>\n\n <ng-content></ng-content>\n\n <button *ngIf=\"isDismissible\"\n type=\"button\"\n class=\"btn-close\"\n data-bs-dismiss=\"alert\"\n [attr.aria-label]=\"'it.core.close-alert'|translate\">\n <it-icon name=\"close\"></it-icon>\n </button>\n</div>\n", styles: [".alert-heading:empty{display:none}\n"] }]
57
+ }], propDecorators: { color: [{
58
+ type: Input
59
+ }], dismissible: [{
60
+ type: Input
61
+ }], onClose: [{
62
+ type: Output
63
+ }], onClosed: [{
64
+ type: Output
65
+ }], alertElement: [{
66
+ type: ViewChild,
67
+ args: ['alertElement']
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hbGVydC9hbGVydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2SCxPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7OztBQVN6QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGlCQUFpQjtJQVByRDs7UUFTRTs7O1dBR0c7UUFDTSxVQUFLLEdBQWUsTUFBTSxDQUFDO1FBT3BDOztXQUVHO1FBQ08sWUFBTyxHQUF3QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVEOztXQUVHO1FBQ08sYUFBUSxHQUF3QixJQUFJLFlBQVksRUFBRSxDQUFDO0tBcUM5RDtJQTlCQyxJQUFJLGFBQWE7UUFDZixPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRVEsZUFBZTtRQUN0QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDO1lBQ2hELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBRWhELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDOUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNqRjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLO1FBQ1YsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxPQUFPO1FBQ1osSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDOzsyR0F6RFUsY0FBYzsrRkFBZCxjQUFjLDJUQ2IzQix1a0JBbUJBOzJGRE5hLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsVUFBVSxZQUdWLFNBQVMsbUJBQ0YsdUJBQXVCLENBQUMsTUFBTTs4QkFRdEMsS0FBSztzQkFBYixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0ksT0FBTztzQkFBaEIsTUFBTTtnQkFLRyxRQUFRO3NCQUFqQixNQUFNO2dCQUk0QixZQUFZO3NCQUE5QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWxlcnRDb2xvciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGlzVHJ1ZUJvb2xlYW5JbnB1dCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2Jvb2xlYW4taW5wdXQnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9hYnN0cmFjdHMvYWJzdHJhY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnYm9vdHN0cmFwLWl0YWxpYSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l0LWFsZXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdpdEFsZXJ0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQWxlcnRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENvbXBvbmVudCB7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGVydCBjb2xvclxuICAgKiBAZGVmYXVsdCBpbmZvXG4gICAqL1xuICBASW5wdXQoKSBjb2xvcjogQWxlcnRDb2xvciA9ICdpbmZvJztcblxuICAvKipcbiAgICogSW5zZXJ0cyB0aGUgY2xvc2UgYnV0dG9uXG4gICAqL1xuICBASW5wdXQoKSBkaXNtaXNzaWJsZT86IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogVGhpcyBldmVudCBmaXJlcyBpbW1lZGlhdGVseSB3aGVuIHRoZSBpbnN0YW5jZSdzIGNsb3NlIG1ldGhvZCBpcyBjYWxsZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgb25DbG9zZTogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogVGhpcyBldmVudCBmaXJlcyB3aGVuIHRoZSBhbGVydCBoYXMgYmVlbiBjbG9zZWQgKGl0IHdpbGwgd2FpdCBmb3IgQ1NTIHRyYW5zaXRpb25zIHRvIGNvbXBsZXRlKS5cbiAgICovXG4gIEBPdXRwdXQoKSBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcml2YXRlIGFsZXJ0PzogQWxlcnQ7XG5cbiAgQFZpZXdDaGlsZCgnYWxlcnRFbGVtZW50JykgcHJpdmF0ZSBhbGVydEVsZW1lbnQ/OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuXG4gIGdldCBpc0Rpc21pc3NpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5kaXNtaXNzaWJsZSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG5cbiAgICBpZiAodGhpcy5hbGVydEVsZW1lbnQpIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmFsZXJ0RWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgICAgdGhpcy5hbGVydCA9IEFsZXJ0LmdldE9yQ3JlYXRlSW5zdGFuY2UoZWxlbWVudCk7XG5cbiAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xvc2UuYnMuYWxlcnQnLCBldmVudCA9PiB0aGlzLm9uQ2xvc2UuZW1pdChldmVudCkpO1xuICAgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbG9zZWQuYnMuYWxlcnQnLCBldmVudCA9PiB0aGlzLm9uQ2xvc2VkLmVtaXQoZXZlbnQpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2UgYW4gYWxlcnQgYnkgcmVtb3ZpbmcgaXQgZnJvbSB0aGUgRE9NLlxuICAgKiBJZiB0aGUgYC5mYWRlYCBhbmQgYC5zaG93YCBjbGFzc2VzIGFyZSBwcmVzZW50IGluIHRoZSBlbGVtZW50LCB0aGUgYWxlcnQgd2lsbCBiZSBjbG9zZWQgd2l0aCBhIGRpc2FwcGVhcmluZyBlZmZlY3QuXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5hbGVydD8uY2xvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYWxlcnQgaXMgcmVtb3ZlZFxuICAgKi9cbiAgcHVibGljIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5hbGVydD8uZGlzcG9zZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQte3tjb2xvcn19XCIgI2FsZXJ0RWxlbWVudFxuICAgICBbY2xhc3MuYWxlcnQtZGlzbWlzc2libGVdPVwiaXNEaXNtaXNzaWJsZVwiXG4gICAgIFtjbGFzcy5mYWRlXT1cImlzRGlzbWlzc2libGVcIlxuICAgICBbY2xhc3Muc2hvd109XCJpc0Rpc21pc3NpYmxlXCJcbiAgICAgcm9sZT1cImFsZXJ0XCI+XG4gIDxoNCBjbGFzcz1cImFsZXJ0LWhlYWRpbmdcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGluZ11cIj48L25nLWNvbnRlbnQ+XG4gIDwvaDQ+XG5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gIDxidXR0b24gKm5nSWY9XCJpc0Rpc21pc3NpYmxlXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cImJ0bi1jbG9zZVwiXG4gICAgICAgICAgZGF0YS1icy1kaXNtaXNzPVwiYWxlcnRcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2l0LmNvcmUuY2xvc2UtYWxlcnQnfHRyYW5zbGF0ZVwiPlxuICAgIDxpdC1pY29uIG5hbWU9XCJjbG9zZVwiPjwvaXQtaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ import { Directive, HostBinding, Input } from '@angular/core';
2
+ import { isTrueBooleanInput } from '../../../utils/boolean-input';
3
+ import * as i0 from "@angular/core";
4
+ export class BadgeDirective {
5
+ get badgeClass() {
6
+ let badgeClass = 'badge';
7
+ if (isTrueBooleanInput(this.rounded)) {
8
+ badgeClass += ` rounded-pill`;
9
+ }
10
+ if (this.color) {
11
+ badgeClass += ` bg-${this.color}`;
12
+ }
13
+ return badgeClass;
14
+ }
15
+ }
16
+ BadgeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BadgeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
+ BadgeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: BadgeDirective, selector: "[itBadge]", inputs: { color: ["itBadge", "color"], rounded: "rounded" }, host: { properties: { "class": "this.badgeClass" } }, exportAs: ["itBadge"], ngImport: i0 });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BadgeDirective, decorators: [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: '[itBadge]',
22
+ exportAs: 'itBadge'
23
+ }]
24
+ }], propDecorators: { color: [{
25
+ type: Input,
26
+ args: ['itBadge']
27
+ }], rounded: [{
28
+ type: Input,
29
+ args: ['rounded']
30
+ }], badgeClass: [{
31
+ type: HostBinding,
32
+ args: ['class']
33
+ }] } });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhZGdlL2JhZGdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFnQixrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQU1oRixNQUFNLE9BQU8sY0FBYztJQVl6QixJQUNJLFVBQVU7UUFDWixJQUFJLFVBQVUsR0FBRyxPQUFPLENBQUM7UUFDekIsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDcEMsVUFBVSxJQUFJLGVBQWUsQ0FBQztTQUMvQjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLFVBQVUsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNuQztRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7OzJHQXZCVSxjQUFjOytGQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFKMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLFNBQVM7aUJBQ3BCOzhCQU1tQixLQUFLO3NCQUF0QixLQUFLO3VCQUFDLFNBQVM7Z0JBS0UsT0FBTztzQkFBeEIsS0FBSzt1QkFBQyxTQUFTO2dCQUdaLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhZGdlQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2NvcmUnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBpc1RydWVCb29sZWFuSW5wdXQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ib29sZWFuLWlucHV0JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2l0QmFkZ2VdJyxcbiAgZXhwb3J0QXM6ICdpdEJhZGdlJ1xufSlcbmV4cG9ydCBjbGFzcyBCYWRnZURpcmVjdGl2ZSB7XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgYmFkZ2UgY29sb3JcbiAgICovXG4gIEBJbnB1dCgnaXRCYWRnZScpIGNvbG9yPzogQmFkZ2VDb2xvcjtcblxuICAvKipcbiAgICogU2hvdyByb3VuZGVkIGJhZGdlXG4gICAqL1xuICBASW5wdXQoJ3JvdW5kZWQnKSByb3VuZGVkPzogQm9vbGVhbklucHV0O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgYmFkZ2VDbGFzcygpOiBzdHJpbmcge1xuICAgIGxldCBiYWRnZUNsYXNzID0gJ2JhZGdlJztcbiAgICBpZiAoaXNUcnVlQm9vbGVhbklucHV0KHRoaXMucm91bmRlZCkpIHtcbiAgICAgIGJhZGdlQ2xhc3MgKz0gYCByb3VuZGVkLXBpbGxgO1xuICAgIH1cbiAgICBpZiAodGhpcy5jb2xvcikge1xuICAgICAgYmFkZ2VDbGFzcyArPSBgIGJnLSR7dGhpcy5jb2xvcn1gO1xuICAgIH1cblxuICAgIHJldHVybiBiYWRnZUNsYXNzO1xuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,80 @@
1
+ import { ContentChildren, Directive, Host, HostBinding, HostListener, Input, Optional } from '@angular/core';
2
+ import { IconComponent } from '../../utils/icon/icon.component';
3
+ import { isTrueBooleanInput } from '../../../utils/boolean-input';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../progress-button/progress-button.component";
6
+ export class ButtonDirective {
7
+ constructor(progressButtonComponent) {
8
+ this.progressButtonComponent = progressButtonComponent;
9
+ this.isFocus = false;
10
+ }
11
+ onFocus() {
12
+ this.isFocus = true;
13
+ }
14
+ onBlur() {
15
+ this.isFocus = false;
16
+ }
17
+ get hostClasses() {
18
+ let cssClass = 'btn';
19
+ if (this.color) {
20
+ cssClass += ` btn-${this.color}`;
21
+ }
22
+ if (this.size) {
23
+ cssClass += ` btn-${this.size}`;
24
+ }
25
+ if (this.block) {
26
+ cssClass += ' btn-block';
27
+ }
28
+ if (isTrueBooleanInput(this.disabled)) {
29
+ cssClass += ' disabled';
30
+ }
31
+ if (this.isFocus) {
32
+ cssClass += ' focus--mouse';
33
+ }
34
+ if (this.icons?.length && !this.progressButtonComponent) {
35
+ cssClass += ' btn-icon';
36
+ }
37
+ if (!!this.progressButtonComponent) {
38
+ cssClass += ' btn-progress';
39
+ }
40
+ return cssClass;
41
+ }
42
+ }
43
+ ButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ButtonDirective, deps: [{ token: i1.ProgressButtonComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
44
+ ButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: ButtonDirective, selector: "[itButton]", inputs: { color: ["itButton", "color"], size: "size", block: "block", disabled: "disabled" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "disabled": "this.disabled", "class": "this.hostClasses" } }, queries: [{ propertyName: "icons", predicate: IconComponent }], exportAs: ["itButton"], ngImport: i0 });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ButtonDirective, decorators: [{
46
+ type: Directive,
47
+ args: [{
48
+ selector: '[itButton]',
49
+ exportAs: 'itButton'
50
+ }]
51
+ }], ctorParameters: function () { return [{ type: i1.ProgressButtonComponent, decorators: [{
52
+ type: Optional
53
+ }, {
54
+ type: Host
55
+ }] }]; }, propDecorators: { color: [{
56
+ type: Input,
57
+ args: ['itButton']
58
+ }], size: [{
59
+ type: Input
60
+ }], block: [{
61
+ type: Input
62
+ }], disabled: [{
63
+ type: Input
64
+ }, {
65
+ type: HostBinding,
66
+ args: ['disabled']
67
+ }], icons: [{
68
+ type: ContentChildren,
69
+ args: [IconComponent]
70
+ }], onFocus: [{
71
+ type: HostListener,
72
+ args: ['focus']
73
+ }], onBlur: [{
74
+ type: HostListener,
75
+ args: ['blur']
76
+ }], hostClasses: [{
77
+ type: HostBinding,
78
+ args: ['class']
79
+ }] } });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9idXR0b24vYnV0dG9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXhILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQU9oRixNQUFNLE9BQU8sZUFBZTtJQTZCMUIsWUFDOEIsdUJBQWdEO1FBQWhELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFIdEUsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUt4QixDQUFDO0lBR0QsT0FBTztRQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFHRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQ0ksV0FBVztRQUNiLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztRQUVyQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxRQUFRLElBQUksUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDbEM7UUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDYixRQUFRLElBQUksUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDakM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxRQUFRLElBQUksWUFBWSxDQUFDO1NBQzFCO1FBRUQsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsUUFBUSxJQUFJLFdBQVcsQ0FBQztTQUN6QjtRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixRQUFRLElBQUksZUFBZSxDQUFDO1NBQzdCO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtZQUN2RCxRQUFRLElBQUksV0FBVyxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQ2xDLFFBQVEsSUFBSSxlQUFlLENBQUM7U0FDN0I7UUFFRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzs0R0E3RVUsZUFBZTtnR0FBZixlQUFlLG1UQXlCVCxhQUFhOzJGQXpCbkIsZUFBZTtrQkFKM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCOzswQkErQkksUUFBUTs7MEJBQUksSUFBSTs0Q0F6QkEsS0FBSztzQkFBdkIsS0FBSzt1QkFBQyxVQUFVO2dCQUtSLElBQUk7c0JBQVosS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSzRCLFFBQVE7c0JBQXpDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsVUFBVTtnQkFLQSxLQUFLO3NCQUFwQyxlQUFlO3VCQUFDLGFBQWE7Z0JBVTlCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPO2dCQU1yQixNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTTtnQkFNaEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSG9zdCwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9wdGlvbmFsLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbG9yLCBCdXR0b25TaXplIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9jb3JlJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi91dGlscy9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgaXNUcnVlQm9vbGVhbklucHV0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYm9vbGVhbi1pbnB1dCc7XG5pbXBvcnQgeyBQcm9ncmVzc0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL3Byb2dyZXNzLWJ1dHRvbi9wcm9ncmVzcy1idXR0b24uY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2l0QnV0dG9uXScsXG4gIGV4cG9ydEFzOiAnaXRCdXR0b24nXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkRpcmVjdGl2ZSB7XG5cbiAgLyoqXG4gICAqIEJ1dHRvbiBjb2xvclxuICAgKi9cbiAgQElucHV0KCdpdEJ1dHRvbicpIGNvbG9yPzogQnV0dG9uQ29sb3I7XG5cbiAgLyoqXG4gICAqIEJ1dHRvbiBzaXplXG4gICAqL1xuICBASW5wdXQoKSBzaXplPzogQnV0dG9uU2l6ZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGJ1dHRvbiBvY2N1cGllcyBhbGwgdGhlIHdpZHRoIGF2YWlsYWJsZSB0byBpdC5cbiAgICovXG4gIEBJbnB1dCgpIGJsb2NrPzogQnV0dG9uU2l6ZTtcblxuICAvKipcbiAgICogSWYgYnV0dG9uIGlzIGRpc2FibGVkXG4gICAqL1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2Rpc2FibGVkJykgZGlzYWJsZWQ/OiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBpY29uIGNoaWxkcmVuXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKEljb25Db21wb25lbnQpIGljb25zPzogUXVlcnlMaXN0PEljb25Db21wb25lbnQ+O1xuXG4gIHByaXZhdGUgaXNGb2N1cyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBIb3N0KCkgcHJpdmF0ZSBwcm9ncmVzc0J1dHRvbkNvbXBvbmVudDogUHJvZ3Jlc3NCdXR0b25Db21wb25lbnRcbiAgKSB7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1cycpXG4gIG9uRm9jdXMoKSB7XG4gICAgdGhpcy5pc0ZvY3VzID0gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICBvbkJsdXIoKSB7XG4gICAgdGhpcy5pc0ZvY3VzID0gZmFsc2U7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgbGV0IGNzc0NsYXNzID0gJ2J0bic7XG5cbiAgICBpZiAodGhpcy5jb2xvcikge1xuICAgICAgY3NzQ2xhc3MgKz0gYCBidG4tJHt0aGlzLmNvbG9yfWA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2l6ZSkge1xuICAgICAgY3NzQ2xhc3MgKz0gYCBidG4tJHt0aGlzLnNpemV9YDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5ibG9jaykge1xuICAgICAgY3NzQ2xhc3MgKz0gJyBidG4tYmxvY2snO1xuICAgIH1cblxuICAgIGlmIChpc1RydWVCb29sZWFuSW5wdXQodGhpcy5kaXNhYmxlZCkpIHtcbiAgICAgIGNzc0NsYXNzICs9ICcgZGlzYWJsZWQnO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzRm9jdXMpIHtcbiAgICAgIGNzc0NsYXNzICs9ICcgZm9jdXMtLW1vdXNlJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pY29ucz8ubGVuZ3RoICYmICF0aGlzLnByb2dyZXNzQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICBjc3NDbGFzcyArPSAnIGJ0bi1pY29uJztcbiAgICB9XG5cbiAgICBpZiAoISF0aGlzLnByb2dyZXNzQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICBjc3NDbGFzcyArPSAnIGJ0bi1wcm9ncmVzcyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc0NsYXNzO1xuICB9XG5cbn1cbiJdfQ==