@design-factory/design-factory 15.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +47 -0
  3. package/assets/.gitkeep +0 -0
  4. package/assets/fonts/amadeus-bold/amadeus-bold.svg +5131 -0
  5. package/assets/fonts/amadeus-bold/amadeus-bold.ttf +0 -0
  6. package/assets/fonts/amadeus-bold/amadeus-bold.woff +0 -0
  7. package/assets/fonts/amadeus-bold/amadeus-bold.woff2 +0 -0
  8. package/assets/fonts/amadeus-full/amadeus-full-bold.woff +0 -0
  9. package/assets/fonts/amadeus-full/amadeus-full-bold.woff2 +0 -0
  10. package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff +0 -0
  11. package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff2 +0 -0
  12. package/assets/fonts/amadeus-full/amadeus-full-italic.woff +0 -0
  13. package/assets/fonts/amadeus-full/amadeus-full-italic.woff2 +0 -0
  14. package/assets/fonts/amadeus-full/amadeus-full-light.woff +0 -0
  15. package/assets/fonts/amadeus-full/amadeus-full-light.woff2 +0 -0
  16. package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff +0 -0
  17. package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff2 +0 -0
  18. package/assets/fonts/amadeus-full/amadeus-full-regular.woff +0 -0
  19. package/assets/fonts/amadeus-full/amadeus-full-regular.woff2 +0 -0
  20. package/assets/fonts/amadeus-full/amadeus-full-thin.woff +0 -0
  21. package/assets/fonts/amadeus-full/amadeus-full-thin.woff2 +0 -0
  22. package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff +0 -0
  23. package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff2 +0 -0
  24. package/assets/fonts/amadeus-light/amadeus-light.svg +8658 -0
  25. package/assets/fonts/amadeus-light/amadeus-light.ttf +0 -0
  26. package/assets/fonts/amadeus-light/amadeus-light.woff +0 -0
  27. package/assets/fonts/amadeus-light/amadeus-light.woff2 +0 -0
  28. package/assets/fonts/amadeus-regular/amadeus-regular.svg +5131 -0
  29. package/assets/fonts/amadeus-regular/amadeus-regular.ttf +0 -0
  30. package/assets/fonts/amadeus-regular/amadeus-regular.woff +0 -0
  31. package/assets/fonts/amadeus-regular/amadeus-regular.woff2 +0 -0
  32. package/assets/fonts/amadeus-thin/amadeus-thin.svg +5131 -0
  33. package/assets/fonts/amadeus-thin/amadeus-thin.ttf +0 -0
  34. package/assets/fonts/amadeus-thin/amadeus-thin.woff +0 -0
  35. package/assets/fonts/amadeus-thin/amadeus-thin.woff2 +0 -0
  36. package/assets/fonts/icon-font/light/df-light-300.svg +1709 -0
  37. package/assets/fonts/icon-font/light/df-light-300.ttf +0 -0
  38. package/assets/fonts/icon-font/light/df-light-300.woff +0 -0
  39. package/assets/fonts/icon-font/light/df-light-300.woff2 +0 -0
  40. package/assets/fonts/icon-font/solid/df-solid-900.svg +1709 -0
  41. package/assets/fonts/icon-font/solid/df-solid-900.ttf +0 -0
  42. package/assets/fonts/icon-font/solid/df-solid-900.woff +0 -0
  43. package/assets/fonts/icon-font/solid/df-solid-900.woff2 +0 -0
  44. package/assets/fonts/noto/notosans-bold.woff +0 -0
  45. package/assets/fonts/noto/notosans-bold.woff2 +0 -0
  46. package/assets/fonts/noto/notosans-bolditalic.woff +0 -0
  47. package/assets/fonts/noto/notosans-bolditalic.woff2 +0 -0
  48. package/assets/fonts/noto/notosans-italic.woff +0 -0
  49. package/assets/fonts/noto/notosans-italic.woff2 +0 -0
  50. package/assets/fonts/noto/notosans-light.woff +0 -0
  51. package/assets/fonts/noto/notosans-light.woff2 +0 -0
  52. package/assets/fonts/noto/notosans-lightitalic.woff +0 -0
  53. package/assets/fonts/noto/notosans-lightitalic.woff2 +0 -0
  54. package/assets/fonts/noto/notosans-regular.woff +0 -0
  55. package/assets/fonts/noto/notosans-regular.woff2 +0 -0
  56. package/assets/fonts/noto/notosans-thin.woff +0 -0
  57. package/assets/fonts/noto/notosans-thin.woff2 +0 -0
  58. package/assets/fonts/noto/notosans-thinitalic.woff +0 -0
  59. package/assets/fonts/noto/notosans-thinitalic.woff2 +0 -0
  60. package/assets/fonts/noto/notosansarabic-bold.woff +0 -0
  61. package/assets/fonts/noto/notosansarabic-bold.woff2 +0 -0
  62. package/assets/fonts/noto/notosansarabic-light.woff +0 -0
  63. package/assets/fonts/noto/notosansarabic-light.woff2 +0 -0
  64. package/assets/fonts/noto/notosansarabic-regular.woff +0 -0
  65. package/assets/fonts/noto/notosansarabic-regular.woff2 +0 -0
  66. package/assets/fonts/noto/notosansarabic-thin.woff +0 -0
  67. package/assets/fonts/noto/notosansarabic-thin.woff2 +0 -0
  68. package/assets/fonts/noto/notosansgeorgian-bold.woff +0 -0
  69. package/assets/fonts/noto/notosansgeorgian-bold.woff2 +0 -0
  70. package/assets/fonts/noto/notosansgeorgian-light.woff +0 -0
  71. package/assets/fonts/noto/notosansgeorgian-light.woff2 +0 -0
  72. package/assets/fonts/noto/notosansgeorgian-regular.woff +0 -0
  73. package/assets/fonts/noto/notosansgeorgian-regular.woff2 +0 -0
  74. package/assets/fonts/noto/notosansgeorgian-thin.woff +0 -0
  75. package/assets/fonts/noto/notosansgeorgian-thin.woff2 +0 -0
  76. package/assets/fonts/noto/notosanshebrew-bold.woff +0 -0
  77. package/assets/fonts/noto/notosanshebrew-bold.woff2 +0 -0
  78. package/assets/fonts/noto/notosanshebrew-light.woff +0 -0
  79. package/assets/fonts/noto/notosanshebrew-light.woff2 +0 -0
  80. package/assets/fonts/noto/notosanshebrew-regular.woff +0 -0
  81. package/assets/fonts/noto/notosanshebrew-regular.woff2 +0 -0
  82. package/assets/fonts/noto/notosanshebrew-thin.woff +0 -0
  83. package/assets/fonts/noto/notosanshebrew-thin.woff2 +0 -0
  84. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.svg +19926 -0
  85. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.ttf +0 -0
  86. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff +0 -0
  87. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff2 +0 -0
  88. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff +0 -0
  89. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff2 +0 -0
  90. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff +0 -0
  91. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff2 +0 -0
  92. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff +0 -0
  93. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff2 +0 -0
  94. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff +0 -0
  95. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff2 +0 -0
  96. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff +0 -0
  97. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff2 +0 -0
  98. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff +0 -0
  99. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff2 +0 -0
  100. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.svg +19165 -0
  101. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.ttf +0 -0
  102. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff +0 -0
  103. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff2 +0 -0
  104. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.svg +20412 -0
  105. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.ttf +0 -0
  106. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff +0 -0
  107. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff2 +0 -0
  108. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.svg +20019 -0
  109. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.ttf +0 -0
  110. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff +0 -0
  111. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff2 +0 -0
  112. package/assets/icon-amadeus.svg +1 -0
  113. package/assets/readme.png +0 -0
  114. package/design-factory-utilities.scss +5 -0
  115. package/design-factory.css +3 -0
  116. package/design-factory.scss +1 -0
  117. package/environment.d.ts +4 -0
  118. package/esm2022/design-factory.mjs +5 -0
  119. package/esm2022/environment.mjs +5 -0
  120. package/esm2022/index.mjs +5 -0
  121. package/esm2022/lib/angular/accessibility/accessibility.module.mjs +19 -0
  122. package/esm2022/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.mjs +32 -0
  123. package/esm2022/lib/angular/accessibility/directives/skip-link.directive.mjs +64 -0
  124. package/esm2022/lib/angular/alert/alert.module.mjs +17 -0
  125. package/esm2022/lib/angular/animation/ngbTransition.mjs +76 -0
  126. package/esm2022/lib/angular/animation/util.mjs +30 -0
  127. package/esm2022/lib/angular/card/card-advanced.module.mjs +17 -0
  128. package/esm2022/lib/angular/card/manage-card-selection.directive.mjs +47 -0
  129. package/esm2022/lib/angular/datepicker/closedatepicker.directive.mjs +38 -0
  130. package/esm2022/lib/angular/datepicker/datepicker-keyboard-nav.service.mjs +39 -0
  131. package/esm2022/lib/angular/datepicker/datepicker-range.directive.mjs +101 -0
  132. package/esm2022/lib/angular/datepicker/datepicker-range.service.mjs +97 -0
  133. package/esm2022/lib/angular/datepicker/datepicker.module.mjs +42 -0
  134. package/esm2022/lib/angular/footer/footer.module.mjs +17 -0
  135. package/esm2022/lib/angular/icon/amadeus-icon.mjs +79 -0
  136. package/esm2022/lib/angular/icon/icon.module.mjs +17 -0
  137. package/esm2022/lib/angular/icon/insert/insert-icon.directive.mjs +47 -0
  138. package/esm2022/lib/angular/icon/insert/insert-icon.module.mjs +17 -0
  139. package/esm2022/lib/angular/inputs/click/trigger-click.directive.mjs +28 -0
  140. package/esm2022/lib/angular/inputs/icon/inputicon.directive.mjs +95 -0
  141. package/esm2022/lib/angular/inputs/input-advanced.module.mjs +19 -0
  142. package/esm2022/lib/angular/mediaqueries/ifMedia.directive.mjs +52 -0
  143. package/esm2022/lib/angular/mediaqueries/media.module.mjs +17 -0
  144. package/esm2022/lib/angular/mediaqueries/media.service.mjs +46 -0
  145. package/esm2022/lib/angular/mediaqueries/mediaUtils.service.mjs +185 -0
  146. package/esm2022/lib/angular/modal/modal.service.mjs +36 -0
  147. package/esm2022/lib/angular/popover/config/popover.config.mjs +16 -0
  148. package/esm2022/lib/angular/popover/popover.module.mjs +17 -0
  149. package/esm2022/lib/angular/progressbar/progressbar.component.mjs +158 -0
  150. package/esm2022/lib/angular/progressbar/progressbar.module.mjs +18 -0
  151. package/esm2022/lib/angular/progressindicator/default/default-spinner.component.mjs +23 -0
  152. package/esm2022/lib/angular/progressindicator/progressindicator-backdrop.component.mjs +29 -0
  153. package/esm2022/lib/angular/progressindicator/progressindicator-config.mjs +25 -0
  154. package/esm2022/lib/angular/progressindicator/progressindicator-container.component.mjs +52 -0
  155. package/esm2022/lib/angular/progressindicator/progressindicator-ref.mjs +8 -0
  156. package/esm2022/lib/angular/progressindicator/progressindicator.directive.mjs +39 -0
  157. package/esm2022/lib/angular/progressindicator/progressindicator.module.mjs +45 -0
  158. package/esm2022/lib/angular/progressindicator/progressindicator.service.mjs +170 -0
  159. package/esm2022/lib/angular/right-to-left/directionDetection.service.mjs +32 -0
  160. package/esm2022/lib/angular/selects/events/manage-badge-events.directive.mjs +65 -0
  161. package/esm2022/lib/angular/selects/nav/manage-nav-select.directive.mjs +108 -0
  162. package/esm2022/lib/angular/selects/option-highlight.directive.mjs +59 -0
  163. package/esm2022/lib/angular/selects/select.model.mjs +2 -0
  164. package/esm2022/lib/angular/selects/select.module.mjs +22 -0
  165. package/esm2022/lib/angular/sidenav/dfSideNavAnimation.mjs +73 -0
  166. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.mjs +94 -0
  167. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.module.mjs +18 -0
  168. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.service.mjs +37 -0
  169. package/esm2022/lib/angular/sidenav/dfSideNavCollapseConfig.mjs +27 -0
  170. package/esm2022/lib/angular/sidenav/excludeTrap.directive.mjs +55 -0
  171. package/esm2022/lib/angular/sidenav/manage-sidenav.directive.mjs +26 -0
  172. package/esm2022/lib/angular/sidenav/sidenav-config.mjs +25 -0
  173. package/esm2022/lib/angular/sidenav/sidenav.component.mjs +86 -0
  174. package/esm2022/lib/angular/sidenav/sidenav.module.mjs +52 -0
  175. package/esm2022/lib/angular/sidenav/sidenav.service.mjs +315 -0
  176. package/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +50 -0
  177. package/esm2022/lib/angular/slider/direction/sliderdirection.directive.mjs +33 -0
  178. package/esm2022/lib/angular/slider/lib/change-context.mjs +3 -0
  179. package/esm2022/lib/angular/slider/lib/compatibility-helper.mjs +15 -0
  180. package/esm2022/lib/angular/slider/lib/event-listener-helper.mjs +77 -0
  181. package/esm2022/lib/angular/slider/lib/event-listener.mjs +3 -0
  182. package/esm2022/lib/angular/slider/lib/math-helper.mjs +15 -0
  183. package/esm2022/lib/angular/slider/lib/options.mjs +123 -0
  184. package/esm2022/lib/angular/slider/lib/pointer-type.mjs +9 -0
  185. package/esm2022/lib/angular/slider/lib/slider-element.directive.mjs +187 -0
  186. package/esm2022/lib/angular/slider/lib/slider-handle.directive.mjs +62 -0
  187. package/esm2022/lib/angular/slider/lib/slider-label.directive.mjs +38 -0
  188. package/esm2022/lib/angular/slider/lib/slider.component.mjs +2020 -0
  189. package/esm2022/lib/angular/slider/lib/tooltip-wrapper.component.mjs +20 -0
  190. package/esm2022/lib/angular/slider/lib/value-helper.mjs +50 -0
  191. package/esm2022/lib/angular/slider/slider.module.mjs +29 -0
  192. package/esm2022/lib/angular/toast/toast.module.mjs +17 -0
  193. package/esm2022/lib/angular/tooltip/tooltip.module.mjs +18 -0
  194. package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +33 -0
  195. package/esm2022/lib/angular/utils/scrollbar.service.mjs +79 -0
  196. package/esm2022/lib/index.mjs +172 -0
  197. package/fesm2022/design-factory.mjs +5664 -0
  198. package/fesm2022/design-factory.mjs.map +1 -0
  199. package/index.d.ts +4 -0
  200. package/lib/angular/accessibility/accessibility.module.d.ts +10 -0
  201. package/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.d.ts +13 -0
  202. package/lib/angular/accessibility/directives/skip-link.directive.d.ts +15 -0
  203. package/lib/angular/alert/alert.module.d.ts +8 -0
  204. package/lib/angular/animation/ngbTransition.d.ts +16 -0
  205. package/lib/angular/animation/util.d.ts +14 -0
  206. package/lib/angular/card/card-advanced.module.d.ts +8 -0
  207. package/lib/angular/card/manage-card-selection.directive.d.ts +13 -0
  208. package/lib/angular/datepicker/closedatepicker.directive.d.ts +10 -0
  209. package/lib/angular/datepicker/datepicker-keyboard-nav.service.d.ts +7 -0
  210. package/lib/angular/datepicker/datepicker-range.directive.d.ts +31 -0
  211. package/lib/angular/datepicker/datepicker-range.service.d.ts +32 -0
  212. package/lib/angular/datepicker/datepicker.module.d.ts +12 -0
  213. package/lib/angular/footer/footer.module.d.ts +8 -0
  214. package/lib/angular/icon/amadeus-icon.d.ts +5 -0
  215. package/lib/angular/icon/icon.module.d.ts +8 -0
  216. package/lib/angular/icon/insert/insert-icon.directive.d.ts +12 -0
  217. package/lib/angular/icon/insert/insert-icon.module.d.ts +8 -0
  218. package/lib/angular/inputs/click/trigger-click.directive.d.ts +9 -0
  219. package/lib/angular/inputs/icon/inputicon.directive.d.ts +28 -0
  220. package/lib/angular/inputs/input-advanced.module.d.ts +10 -0
  221. package/lib/angular/mediaqueries/ifMedia.directive.d.ts +26 -0
  222. package/lib/angular/mediaqueries/media.module.d.ts +8 -0
  223. package/lib/angular/mediaqueries/media.service.d.ts +24 -0
  224. package/lib/angular/mediaqueries/mediaUtils.service.d.ts +75 -0
  225. package/lib/angular/modal/modal.service.d.ts +13 -0
  226. package/lib/angular/popover/config/popover.config.d.ts +8 -0
  227. package/lib/angular/popover/popover.module.d.ts +7 -0
  228. package/lib/angular/progressbar/progressbar.component.d.ts +71 -0
  229. package/lib/angular/progressbar/progressbar.module.d.ts +9 -0
  230. package/lib/angular/progressindicator/default/default-spinner.component.d.ts +8 -0
  231. package/lib/angular/progressindicator/progressindicator-backdrop.component.d.ts +8 -0
  232. package/lib/angular/progressindicator/progressindicator-config.d.ts +54 -0
  233. package/lib/angular/progressindicator/progressindicator-container.component.d.ts +13 -0
  234. package/lib/angular/progressindicator/progressindicator-ref.d.ts +9 -0
  235. package/lib/angular/progressindicator/progressindicator.directive.d.ts +18 -0
  236. package/lib/angular/progressindicator/progressindicator.module.d.ts +15 -0
  237. package/lib/angular/progressindicator/progressindicator.service.d.ts +33 -0
  238. package/lib/angular/right-to-left/directionDetection.service.d.ts +12 -0
  239. package/lib/angular/selects/events/manage-badge-events.directive.d.ts +16 -0
  240. package/lib/angular/selects/nav/manage-nav-select.directive.d.ts +20 -0
  241. package/lib/angular/selects/option-highlight.directive.d.ts +19 -0
  242. package/lib/angular/selects/select.model.d.ts +1 -0
  243. package/lib/angular/selects/select.module.d.ts +13 -0
  244. package/lib/angular/sidenav/dfSideNavAnimation.d.ts +7 -0
  245. package/lib/angular/sidenav/dfSideNavCollapse.d.ts +48 -0
  246. package/lib/angular/sidenav/dfSideNavCollapse.module.d.ts +9 -0
  247. package/lib/angular/sidenav/dfSideNavCollapse.service.d.ts +24 -0
  248. package/lib/angular/sidenav/dfSideNavCollapseConfig.d.ts +17 -0
  249. package/lib/angular/sidenav/excludeTrap.directive.d.ts +30 -0
  250. package/lib/angular/sidenav/manage-sidenav.directive.d.ts +10 -0
  251. package/lib/angular/sidenav/sidenav-config.d.ts +17 -0
  252. package/lib/angular/sidenav/sidenav.component.d.ts +43 -0
  253. package/lib/angular/sidenav/sidenav.module.d.ts +14 -0
  254. package/lib/angular/sidenav/sidenav.service.d.ts +178 -0
  255. package/lib/angular/sidenav/sidenavlist.component.d.ts +25 -0
  256. package/lib/angular/slider/direction/sliderdirection.directive.d.ts +12 -0
  257. package/lib/angular/slider/lib/change-context.d.ts +6 -0
  258. package/lib/angular/slider/lib/compatibility-helper.d.ts +7 -0
  259. package/lib/angular/slider/lib/event-listener-helper.d.ts +13 -0
  260. package/lib/angular/slider/lib/event-listener.d.ts +7 -0
  261. package/lib/angular/slider/lib/math-helper.d.ts +6 -0
  262. package/lib/angular/slider/lib/options.d.ts +241 -0
  263. package/lib/angular/slider/lib/pointer-type.d.ts +7 -0
  264. package/lib/angular/slider/lib/slider-element.directive.d.ts +47 -0
  265. package/lib/angular/slider/lib/slider-handle.directive.d.ts +19 -0
  266. package/lib/angular/slider/lib/slider-label.directive.d.ts +11 -0
  267. package/lib/angular/slider/lib/slider.component.d.ts +190 -0
  268. package/lib/angular/slider/lib/tooltip-wrapper.component.d.ts +10 -0
  269. package/lib/angular/slider/lib/value-helper.d.ts +13 -0
  270. package/lib/angular/slider/slider.module.d.ts +12 -0
  271. package/lib/angular/toast/toast.module.d.ts +8 -0
  272. package/lib/angular/tooltip/tooltip.module.d.ts +9 -0
  273. package/lib/angular/tooltip/truncate/tooltipTruncate.directive.d.ts +17 -0
  274. package/lib/angular/utils/scrollbar.service.d.ts +46 -0
  275. package/lib/index.d.ts +82 -0
  276. package/package.json +44 -0
  277. package/schematics/collection.json +10 -0
  278. package/schematics/migrations/15_0_0/remove-ngx-slider/index.d.ts +2 -0
  279. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js +113 -0
  280. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js.map +1 -0
  281. package/schematics/migrations/helpers.d.ts +13 -0
  282. package/schematics/migrations/helpers.js +33 -0
  283. package/schematics/migrations/helpers.js.map +1 -0
  284. package/schematics/migrations/migration.json +10 -0
  285. package/schematics/migrations/utils/project_tsconfig_paths.d.ts +16 -0
  286. package/schematics/migrations/utils/project_tsconfig_paths.js +91 -0
  287. package/schematics/migrations/utils/project_tsconfig_paths.js.map +1 -0
  288. package/schematics/migrations/utils/typescript/compiler_host.d.ts +44 -0
  289. package/schematics/migrations/utils/typescript/compiler_host.js +86 -0
  290. package/schematics/migrations/utils/typescript/compiler_host.js.map +1 -0
  291. package/schematics/migrations/utils/typescript/parse_tsconfig.d.ts +9 -0
  292. package/schematics/migrations/utils/typescript/parse_tsconfig.js +30 -0
  293. package/schematics/migrations/utils/typescript/parse_tsconfig.js.map +1 -0
  294. package/schematics/ng-add/index.d.ts +3 -0
  295. package/schematics/ng-add/index.js +84 -0
  296. package/schematics/ng-add/index.js.map +1 -0
  297. package/schematics/ng-add/schema.d.ts +6 -0
  298. package/schematics/ng-add/schema.js +3 -0
  299. package/schematics/ng-add/schema.js.map +1 -0
  300. package/schematics/ng-add/schema.json +15 -0
  301. package/styles/scss/_common.mixins.scss +19 -0
  302. package/styles/scss/_common.scss +57 -0
  303. package/styles/scss/_common.variables.scss +62 -0
  304. package/styles/scss/_variables.scss +56 -0
  305. package/styles/scss/bootstrap/_maps.scss +50 -0
  306. package/styles/scss/bootstrap/_mixins-override.scss +69 -0
  307. package/styles/scss/bootstrap/_rtl-styles-override.scss +125 -0
  308. package/styles/scss/bootstrap/_utilities-override.scss +19 -0
  309. package/styles/scss/bootstrap/_variables.scss +1684 -0
  310. package/styles/scss/components/.gitkeep +0 -0
  311. package/styles/scss/components/accordion/_accordion.scss +87 -0
  312. package/styles/scss/components/accordion/_accordion.variables.scss +8 -0
  313. package/styles/scss/components/alert/_alert.scss +301 -0
  314. package/styles/scss/components/alert/_alert.variables.scss +70 -0
  315. package/styles/scss/components/badge/_badge.scss +160 -0
  316. package/styles/scss/components/badge/_badge.variables.scss +10 -0
  317. package/styles/scss/components/brand-color/_brand-color.mixins.scss +11 -0
  318. package/styles/scss/components/brand-color/_brand-color.scss +18 -0
  319. package/styles/scss/components/brand-color/_brand-color.variables.scss +158 -0
  320. package/styles/scss/components/breadcrumbs/_breadcrumbs.scss +91 -0
  321. package/styles/scss/components/breadcrumbs/_breadcrumbs.variables.scss +13 -0
  322. package/styles/scss/components/button/_button.scss +249 -0
  323. package/styles/scss/components/button/_button.utils.scss +16 -0
  324. package/styles/scss/components/button/_button.variables.scss +27 -0
  325. package/styles/scss/components/button/_button_container.scss +66 -0
  326. package/styles/scss/components/card/_card.scss +73 -0
  327. package/styles/scss/components/card/_card.variables.scss +22 -0
  328. package/styles/scss/components/carousel/_carousel.scss +52 -0
  329. package/styles/scss/components/carousel/_carousel.variables.scss +11 -0
  330. package/styles/scss/components/checkbox/_checkbox.scss +37 -0
  331. package/styles/scss/components/checkbox/_checkbox.variables.scss +6 -0
  332. package/styles/scss/components/collapse/_collapse.scss +35 -0
  333. package/styles/scss/components/collapse/_collapse.variables.scss +7 -0
  334. package/styles/scss/components/datepicker/_datepicker.scss +251 -0
  335. package/styles/scss/components/datepicker/_datepicker.variables.scss +52 -0
  336. package/styles/scss/components/dropdown/_dropdown.mixins.scss +26 -0
  337. package/styles/scss/components/dropdown/_dropdown.scss +81 -0
  338. package/styles/scss/components/dropdown/_dropdown.variables.scss +18 -0
  339. package/styles/scss/components/fieldset/_fieldset.scss +6 -0
  340. package/styles/scss/components/fieldset/_fieldset.variables.scss +2 -0
  341. package/styles/scss/components/fonts/_font-faces.mixins.scss +525 -0
  342. package/styles/scss/components/fonts/_fonts-family.scss +98 -0
  343. package/styles/scss/components/fonts/_fonts.scss +83 -0
  344. package/styles/scss/components/fonts/_fonts.variables.scss +31 -0
  345. package/styles/scss/components/fonts/_icon-font.scss +5107 -0
  346. package/styles/scss/components/fonts/_icon-font.variables.scss +14 -0
  347. package/styles/scss/components/fonts/_multi-lang.mixins.scss +8 -0
  348. package/styles/scss/components/fonts/multi-lang/_arabic.mixins.scss +8 -0
  349. package/styles/scss/components/fonts/multi-lang/_chinese.mixins.scss +12 -0
  350. package/styles/scss/components/fonts/multi-lang/_cyrillic-extended.mixins.scss +11 -0
  351. package/styles/scss/components/fonts/multi-lang/_cyrillic.mixins.scss +10 -0
  352. package/styles/scss/components/fonts/multi-lang/_georgian.mixins.scss +9 -0
  353. package/styles/scss/components/fonts/multi-lang/_hebrew.mixins.scss +9 -0
  354. package/styles/scss/components/fonts/multi-lang/_japanese.mixins.scss +23 -0
  355. package/styles/scss/components/fonts/multi-lang/_korean.mixins.scss +10 -0
  356. package/styles/scss/components/footer/_footer.scss +23 -0
  357. package/styles/scss/components/footer/_footer.variables.scss +13 -0
  358. package/styles/scss/components/form/_form.scss +104 -0
  359. package/styles/scss/components/form/_form.variables.scss +23 -0
  360. package/styles/scss/components/icon/_amadeus-icon.scss +39 -0
  361. package/styles/scss/components/icon/_amadeus-icon.variables.scss +3 -0
  362. package/styles/scss/components/inputs/_inputs.mixin.scss +51 -0
  363. package/styles/scss/components/inputs/_inputs.scss +290 -0
  364. package/styles/scss/components/inputs/_inputs.variables.scss +41 -0
  365. package/styles/scss/components/link/_link.mixins.scss +190 -0
  366. package/styles/scss/components/link/_link.scss +88 -0
  367. package/styles/scss/components/link/_link.variables.scss +55 -0
  368. package/styles/scss/components/list/_list.scss +15 -0
  369. package/styles/scss/components/list/_list.variables.scss +4 -0
  370. package/styles/scss/components/list-group/_list-group.scss +61 -0
  371. package/styles/scss/components/list-group/_list-group.variables.scss +14 -0
  372. package/styles/scss/components/media/_media.scss +42 -0
  373. package/styles/scss/components/media/_media.variables.scss +7 -0
  374. package/styles/scss/components/modal/_modal.scss +147 -0
  375. package/styles/scss/components/modal/_modal.variables.scss +23 -0
  376. package/styles/scss/components/navbar/_navbar.scss +253 -0
  377. package/styles/scss/components/navbar/_navbar.variables.scss +62 -0
  378. package/styles/scss/components/pagination/_pagination.scss +195 -0
  379. package/styles/scss/components/pagination/_pagination.variables.scss +27 -0
  380. package/styles/scss/components/pagination/_pagination_container.scss +14 -0
  381. package/styles/scss/components/popover/_popover.mixin.scss +57 -0
  382. package/styles/scss/components/popover/_popover.scss +25 -0
  383. package/styles/scss/components/popover/_popover.variables.scss +18 -0
  384. package/styles/scss/components/popover/_popover_container.scss +156 -0
  385. package/styles/scss/components/progressbar/_progressbar.scss +74 -0
  386. package/styles/scss/components/progressbar/_progressbar.variables.scss +13 -0
  387. package/styles/scss/components/radio/_radio.scss +25 -0
  388. package/styles/scss/components/radio/_radio.variables.scss +3 -0
  389. package/styles/scss/components/rating/_rating.scss +81 -0
  390. package/styles/scss/components/rating/_rating.variables.scss +20 -0
  391. package/styles/scss/components/scrollspy/_scrollspy.scss +34 -0
  392. package/styles/scss/components/scrollspy/_scrollspy.variables.scss +11 -0
  393. package/styles/scss/components/select/_select.scss +734 -0
  394. package/styles/scss/components/select/_select.variables.scss +85 -0
  395. package/styles/scss/components/separator/_separator.scss +8 -0
  396. package/styles/scss/components/separator/_separator.variables.scss +1 -0
  397. package/styles/scss/components/sidenav/_sidenav.scss +259 -0
  398. package/styles/scss/components/sidenav/_sidenav.variables.scss +87 -0
  399. package/styles/scss/components/skip-links/_skip-links.scss +24 -0
  400. package/styles/scss/components/skip-links/_skip-links.variables.scss +7 -0
  401. package/styles/scss/components/slider/_slider.scss +407 -0
  402. package/styles/scss/components/slider/_slider.variables.scss +58 -0
  403. package/styles/scss/components/speechbubble/_speechbubble.scss +127 -0
  404. package/styles/scss/components/speechbubble/_speechbubble.variables.scss +19 -0
  405. package/styles/scss/components/spinner/_spinner.scss +88 -0
  406. package/styles/scss/components/spinner/_spinner.variables.scss +21 -0
  407. package/styles/scss/components/spinner/_spinner_container.scss +43 -0
  408. package/styles/scss/components/stepper/_stepper.mixins.scss +193 -0
  409. package/styles/scss/components/stepper/_stepper.scss +130 -0
  410. package/styles/scss/components/stepper/_stepper.variables.scss +63 -0
  411. package/styles/scss/components/table/_advancedtables.scss +229 -0
  412. package/styles/scss/components/table/_table.scss +7 -0
  413. package/styles/scss/components/table/_table.variables.scss +24 -0
  414. package/styles/scss/components/tabs/_tabs.scss +123 -0
  415. package/styles/scss/components/tabs/_tabs.variables.scss +32 -0
  416. package/styles/scss/components/toast/_toast.scss +189 -0
  417. package/styles/scss/components/toast/_toast.variables.scss +13 -0
  418. package/styles/scss/components/toggle/_toggle.scss +93 -0
  419. package/styles/scss/components/toggle/_toggle.variables.scss +17 -0
  420. package/styles/scss/components/tooltip/_tooltip.scss +3 -0
  421. package/styles/scss/components/tooltip/_tooltip.variables.scss +5 -0
  422. package/styles/scss/components/tooltip/_tooltip_container.scss +112 -0
  423. package/styles/scss/components/typeahead/_typeahead.scss +45 -0
  424. package/styles/scss/components/typeahead/_typeahead.variables.scss +10 -0
  425. package/styles/scss/df-styles-namespace.scss +160 -0
  426. package/styles/scss/df-styles.scss +107 -0
  427. package/styles/scss/utilities/_common.utilities.scss +70 -0
  428. package/styles/scss/utilities/_form.mixins.scss +26 -0
@@ -0,0 +1,46 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { distinctUntilChanged, map, switchMap } from 'rxjs/operators';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./mediaUtils.service";
5
+ /**
6
+ * Services you can use to get indication about the current width screen of your application
7
+ * the matchMedia JS feature (https://developer.mozilla.org/fr/docs/Web/API/Window/matchMedia)
8
+ */
9
+ export class DfMedia {
10
+ constructor(mediaObserver, _breakPointsService) {
11
+ this.mediaObserver = mediaObserver;
12
+ this._breakPointsService = _breakPointsService;
13
+ }
14
+ initQueries(mediaOrBreakpoints, breakPoints = {}) {
15
+ const queries = [];
16
+ if (Array.isArray(mediaOrBreakpoints)) {
17
+ for (const el of mediaOrBreakpoints) {
18
+ queries.push(breakPoints[el] ? breakPoints[el] : el);
19
+ }
20
+ }
21
+ else {
22
+ queries.push(breakPoints[mediaOrBreakpoints] ? breakPoints[mediaOrBreakpoints] : mediaOrBreakpoints);
23
+ }
24
+ return queries;
25
+ }
26
+ /**
27
+ * Getter to have the observable indication if you are or not in the current scope of your queries
28
+ * If one queries is matching result is `True` otherwise result is `False`
29
+ * @param mediaOrBreakpoints either media query string/Array of string or/and in case of BS usage a
30
+ * string/Array of string of the breakpoints name (sm...).
31
+ */
32
+ getObservable(mediaOrBreakpoints) {
33
+ return this._breakPointsService.breakPoints$.pipe(map(breakpoints => {
34
+ return breakpoints ? this.initQueries(mediaOrBreakpoints, breakpoints) : this.initQueries(mediaOrBreakpoints);
35
+ }), switchMap(query => {
36
+ return this.mediaObserver.observe(query);
37
+ }), map(value => value.matches), distinctUntilChanged());
38
+ }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMedia, deps: [{ token: i1.DfMediaObserver }, { token: i1.DfBreakpoints }], target: i0.ɵɵFactoryTarget.Injectable }); }
40
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMedia, providedIn: 'root' }); }
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMedia, decorators: [{
43
+ type: Injectable,
44
+ args: [{ providedIn: 'root' }]
45
+ }], ctorParameters: function () { return [{ type: i1.DfMediaObserver }, { type: i1.DfBreakpoints }]; } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUd0RTs7O0dBR0c7QUFFSCxNQUFNLE9BQU8sT0FBTztJQUNsQixZQUE2QixhQUE4QixFQUFtQixtQkFBa0M7UUFBbkYsa0JBQWEsR0FBYixhQUFhLENBQWlCO1FBQW1CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBZTtJQUFHLENBQUM7SUFFcEgsV0FBVyxDQUFDLGtCQUFxQyxFQUFFLGNBQXlDLEVBQUU7UUFDNUYsTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1lBQ3JDLEtBQUssTUFBTSxFQUFFLElBQUksa0JBQWtCLEVBQUU7Z0JBQ25DLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ3REO1NBQ0Y7YUFBTTtZQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3RHO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFDLGtCQUFxQztRQUNqRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUMvQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDaEIsT0FBTyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNoSCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQzNCLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7SUFDSixDQUFDOzhHQWhDVSxPQUFPO2tIQUFQLE9BQU8sY0FETSxNQUFNOzsyRkFDbkIsT0FBTztrQkFEbkIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEZkJyZWFrcG9pbnRzLCBEZk1lZGlhT2JzZXJ2ZXIgfSBmcm9tICcuL21lZGlhVXRpbHMuc2VydmljZSc7XG5cbi8qKlxuICogU2VydmljZXMgeW91IGNhbiB1c2UgdG8gZ2V0IGluZGljYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgd2lkdGggc2NyZWVuIG9mIHlvdXIgYXBwbGljYXRpb25cbiAqIHRoZSBtYXRjaE1lZGlhIEpTIGZlYXR1cmUgKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2ZyL2RvY3MvV2ViL0FQSS9XaW5kb3cvbWF0Y2hNZWRpYSlcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBEZk1lZGlhIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBtZWRpYU9ic2VydmVyOiBEZk1lZGlhT2JzZXJ2ZXIsIHByaXZhdGUgcmVhZG9ubHkgX2JyZWFrUG9pbnRzU2VydmljZTogRGZCcmVha3BvaW50cykge31cblxuICBpbml0UXVlcmllcyhtZWRpYU9yQnJlYWtwb2ludHM6IHN0cmluZyB8IHN0cmluZ1tdLCBicmVha1BvaW50czogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9KTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHF1ZXJpZXM6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKEFycmF5LmlzQXJyYXkobWVkaWFPckJyZWFrcG9pbnRzKSkge1xuICAgICAgZm9yIChjb25zdCBlbCBvZiBtZWRpYU9yQnJlYWtwb2ludHMpIHtcbiAgICAgICAgcXVlcmllcy5wdXNoKGJyZWFrUG9pbnRzW2VsXSA/IGJyZWFrUG9pbnRzW2VsXSA6IGVsKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcXVlcmllcy5wdXNoKGJyZWFrUG9pbnRzW21lZGlhT3JCcmVha3BvaW50c10gPyBicmVha1BvaW50c1ttZWRpYU9yQnJlYWtwb2ludHNdIDogbWVkaWFPckJyZWFrcG9pbnRzKTtcbiAgICB9XG4gICAgcmV0dXJuIHF1ZXJpZXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIHRvIGhhdmUgdGhlIG9ic2VydmFibGUgaW5kaWNhdGlvbiBpZiB5b3UgYXJlIG9yIG5vdCBpbiB0aGUgY3VycmVudCBzY29wZSBvZiB5b3VyIHF1ZXJpZXNcbiAgICogSWYgb25lIHF1ZXJpZXMgaXMgbWF0Y2hpbmcgcmVzdWx0IGlzIGBUcnVlYCBvdGhlcndpc2UgcmVzdWx0IGlzIGBGYWxzZWBcbiAgICogQHBhcmFtIG1lZGlhT3JCcmVha3BvaW50cyBlaXRoZXIgbWVkaWEgcXVlcnkgc3RyaW5nL0FycmF5IG9mIHN0cmluZyBvci9hbmQgaW4gY2FzZSBvZiBCUyB1c2FnZSBhXG4gICAqIHN0cmluZy9BcnJheSBvZiBzdHJpbmcgb2YgdGhlIGJyZWFrcG9pbnRzIG5hbWUgKHNtLi4uKS5cbiAgICovXG4gIGdldE9ic2VydmFibGUobWVkaWFPckJyZWFrcG9pbnRzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9icmVha1BvaW50c1NlcnZpY2UuYnJlYWtQb2ludHMkLnBpcGUoXG4gICAgICBtYXAoYnJlYWtwb2ludHMgPT4ge1xuICAgICAgICByZXR1cm4gYnJlYWtwb2ludHMgPyB0aGlzLmluaXRRdWVyaWVzKG1lZGlhT3JCcmVha3BvaW50cywgYnJlYWtwb2ludHMpIDogdGhpcy5pbml0UXVlcmllcyhtZWRpYU9yQnJlYWtwb2ludHMpO1xuICAgICAgfSksXG4gICAgICBzd2l0Y2hNYXAocXVlcnkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tZWRpYU9ic2VydmVyLm9ic2VydmUocXVlcnkpO1xuICAgICAgfSksXG4gICAgICBtYXAodmFsdWUgPT4gdmFsdWUubWF0Y2hlcyksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,185 @@
1
+ import { isPlatformBrowser } from '@angular/common';
2
+ import { Inject, Injectable, InjectionToken, PLATFORM_ID } from '@angular/core';
3
+ import { BehaviorSubject, combineLatest, fromEvent, Subscription } from 'rxjs';
4
+ import { map, take } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ // Default DF breakpoints
7
+ export const DF_BREAKPOINTS_VAR_DEFAULT = {
8
+ xs: '--df-breakpoint-xs',
9
+ sm: '--df-breakpoint-sm',
10
+ md: '--df-breakpoint-md',
11
+ lg: '--df-breakpoint-lg',
12
+ xl: '--df-breakpoint-xl',
13
+ xxl: '--df-breakpoint-xxl',
14
+ xxxl: '--df-breakpoint-xxxl'
15
+ };
16
+ export const BREAKPOINTS_VARS = new InjectionToken('Bootstrap Breakpoints', {
17
+ providedIn: 'root',
18
+ factory() {
19
+ return DF_BREAKPOINTS_VAR_DEFAULT;
20
+ }
21
+ });
22
+ export class DfBreakpoints {
23
+ constructor(_breakPointsVar, platformID) {
24
+ this._breakPointsVar = _breakPointsVar;
25
+ this.platformID = platformID;
26
+ this._breakPoints$ = new BehaviorSubject(null);
27
+ this.initBreakpoints();
28
+ }
29
+ get breakPoints$() {
30
+ return this._breakPoints$.asObservable();
31
+ }
32
+ initBreakpoints() {
33
+ let breakPoints = null;
34
+ if (isPlatformBrowser(this.platformID) && this._breakPoints$.value === null) {
35
+ // we are in a browser so CSS variable are accessible
36
+ // we init the BP only once
37
+ const styles = window.getComputedStyle(document.documentElement);
38
+ const bpArray = [];
39
+ for (const el of Object.keys(this._breakPointsVar)) {
40
+ const curValue = this._breakPointsVar[el];
41
+ const bpValue = Number.parseInt(styles.getPropertyValue(curValue), 10);
42
+ if (isNaN(bpValue)) {
43
+ // We should never enter here. Only if people did not put the correct list of CSS vars...
44
+ // Or if the CSS is not arrived yet.
45
+ // What should we do then?
46
+ // TODO init from the default list provided if we want to?
47
+ }
48
+ else {
49
+ bpArray.push([el, bpValue]);
50
+ }
51
+ }
52
+ breakPoints = this.generate(bpArray);
53
+ // In case the first page contains the directive and the CSS vars are not available
54
+ // We may need to launch a second init at load time.
55
+ if (Object.keys(breakPoints).length === 0) {
56
+ fromEvent(window, 'load')
57
+ .pipe(take(1))
58
+ .subscribe(() => {
59
+ // Init once as the service is available everywhere
60
+ // We do not check if the CSS variable are changing over time
61
+ // here onload the CSS var should be available
62
+ this.initBreakpoints();
63
+ });
64
+ }
65
+ }
66
+ this._breakPoints$.next(breakPoints);
67
+ }
68
+ // Utilities to use if you want to create your own queries with your values.
69
+ // sizes is an array of array BreakPoints with sizes[0] --> identifier of the BreakPoint
70
+ // sizes[1] px value of the BreakPoint
71
+ generate(sizes) {
72
+ sizes = sizes.sort((a, b) => a[1] - b[1]);
73
+ const dict = {};
74
+ for (let i = 0; i < sizes.length; i++) {
75
+ const name = sizes[i][0];
76
+ const min = sizes[i][1];
77
+ const max = i === sizes.length - 1 ? undefined : sizes[i + 1][1];
78
+ if (min === 0) {
79
+ dict[name] = `(max-width: ${max - 0.01}px)`;
80
+ }
81
+ else if (max) {
82
+ dict[name] = `(max-width: ${max - 0.01}px) and (min-width: ${min}px)`;
83
+ }
84
+ else {
85
+ dict[name] = `(min-width: ${min}px)`;
86
+ }
87
+ }
88
+ return dict;
89
+ }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfBreakpoints, deps: [{ token: BREAKPOINTS_VARS }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfBreakpoints, providedIn: 'root' }); }
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfBreakpoints, decorators: [{
94
+ type: Injectable,
95
+ args: [{ providedIn: 'root' }]
96
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
97
+ type: Inject,
98
+ args: [BREAKPOINTS_VARS]
99
+ }] }, { type: Object, decorators: [{
100
+ type: Inject,
101
+ args: [PLATFORM_ID]
102
+ }] }]; } });
103
+ export class DfMediaQuery {
104
+ constructor(platformId) {
105
+ this._isBrowser = isPlatformBrowser(platformId);
106
+ }
107
+ notSupported(query) {
108
+ return { matches: false, media: query, addEventListener: () => { }, removeEventListener: () => { } };
109
+ }
110
+ matchMedia(query) {
111
+ if (this._isBrowser && window.matchMedia) {
112
+ return window.matchMedia(query);
113
+ }
114
+ else {
115
+ return this.notSupported(query);
116
+ }
117
+ }
118
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaQuery, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
119
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaQuery, providedIn: 'root' }); }
120
+ }
121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaQuery, decorators: [{
122
+ type: Injectable,
123
+ args: [{ providedIn: 'root' }]
124
+ }], ctorParameters: function () { return [{ type: Object, decorators: [{
125
+ type: Inject,
126
+ args: [PLATFORM_ID]
127
+ }] }]; } });
128
+ export class DfMediaObserver {
129
+ constructor(_mediaQuery) {
130
+ this._mediaQuery = _mediaQuery;
131
+ this._subscription = new Subscription();
132
+ this._queries = new Map();
133
+ }
134
+ /**
135
+ * Verifies if at least one of the provided media-queries is matching
136
+ * the current viewport
137
+ */
138
+ matches(queries) {
139
+ queries = this._flattenQueries(Array.isArray(queries) ? queries : [queries]);
140
+ return queries.some(q => this._registerQuery(q).mediaQueryList.matches);
141
+ }
142
+ /**
143
+ * Produces an observable for a set of media-queries that will emit
144
+ * meta information for any changes of the given queries.
145
+ * @param value One or more media-queries to be observed.
146
+ * @returns A stream of matches meta object for the given media-queries.
147
+ */
148
+ observe(queries) {
149
+ queries = this._flattenQueries(Array.isArray(queries) ? queries : [queries]);
150
+ return combineLatest(queries.map(q => this._registerQuery(q).mediaQueryList$)).pipe(map((events) => events.reduce((result, event) => {
151
+ result.matches = result.matches || event.matches;
152
+ result.breakpoints[event.media] = event.matches;
153
+ return result;
154
+ }, { matches: false, breakpoints: {} })));
155
+ }
156
+ ngOnDestroy() {
157
+ this._subscription.unsubscribe();
158
+ }
159
+ _flattenQueries(queries) {
160
+ return queries.map(q => q.split(',')).reduce((flat, a) => flat.concat(a));
161
+ }
162
+ _registerQuery(query) {
163
+ if (this._queries.has(query)) {
164
+ return this._queries.get(query);
165
+ }
166
+ const queryList = this._mediaQuery.matchMedia(query);
167
+ const queryList$ = new BehaviorSubject({
168
+ media: query,
169
+ matches: queryList.matches
170
+ });
171
+ this._subscription.add(fromEvent(queryList, 'change').subscribe((event) => {
172
+ queryList$.next(event);
173
+ }));
174
+ const meta = { mediaQueryList: queryList, mediaQueryList$: queryList$ };
175
+ this._queries.set(query, meta);
176
+ return meta;
177
+ }
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaObserver, deps: [{ token: DfMediaQuery }], target: i0.ɵɵFactoryTarget.Injectable }); }
179
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaObserver, providedIn: 'root' }); }
180
+ }
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfMediaObserver, decorators: [{
182
+ type: Injectable,
183
+ args: [{ providedIn: 'root' }]
184
+ }], ctorParameters: function () { return [{ type: DfMediaQuery }]; } });
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWFVdGlscy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL21lZGlhcXVlcmllcy9tZWRpYVV0aWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFhLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNDLHlCQUF5QjtBQUN6QixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRztJQUN4QyxFQUFFLEVBQUUsb0JBQW9CO0lBQ3hCLEVBQUUsRUFBRSxvQkFBb0I7SUFDeEIsRUFBRSxFQUFFLG9CQUFvQjtJQUN4QixFQUFFLEVBQUUsb0JBQW9CO0lBQ3hCLEVBQUUsRUFBRSxvQkFBb0I7SUFDeEIsR0FBRyxFQUFFLHFCQUFxQjtJQUMxQixJQUFJLEVBQUUsc0JBQXNCO0NBQzdCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBQyx1QkFBdUIsRUFBRTtJQUMxRSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPO1FBQ0wsT0FBTywwQkFBMEIsQ0FBQztJQUNwQyxDQUFDO0NBQ0YsQ0FBQyxDQUFDO0FBR0gsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFDNkMsZUFBaUQsRUFDdEQsVUFBa0I7UUFEYixvQkFBZSxHQUFmLGVBQWUsQ0FBa0M7UUFDdEQsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUp6QyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFZLElBQUksQ0FBQyxDQUFDO1FBTXBFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFDM0UscURBQXFEO1lBQ3JELDJCQUEyQjtZQUMzQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBUSxDQUFDO1lBQ3hFLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNuQixLQUFLLE1BQU0sRUFBRSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNsRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ2xCLHlGQUF5RjtvQkFDekYsb0NBQW9DO29CQUNwQywwQkFBMEI7b0JBQzFCLDBEQUEwRDtpQkFDM0Q7cUJBQU07b0JBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO2lCQUM3QjthQUNGO1lBQ0QsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsbUZBQW1GO1lBQ25GLG9EQUFvRDtZQUNwRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDekMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUM7cUJBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQ2IsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDZCxtREFBbUQ7b0JBQ25ELDZEQUE2RDtvQkFDN0QsOENBQThDO29CQUM5QyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3pCLENBQUMsQ0FBQyxDQUFDO2FBQ047U0FDRjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsd0ZBQXdGO0lBQ3hGLHNDQUFzQztJQUN0QyxRQUFRLENBQUMsS0FBYztRQUNyQixLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQyxNQUFNLElBQUksR0FBOEIsRUFBRSxDQUFDO1FBQzNDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3JDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakUsSUFBSSxHQUFHLEtBQUssQ0FBQyxFQUFFO2dCQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxlQUFlLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQzthQUM3QztpQkFBTSxJQUFJLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsZUFBZSxHQUFHLEdBQUcsSUFBSSx1QkFBdUIsR0FBRyxLQUFLLENBQUM7YUFDdkU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsR0FBRyxLQUFLLENBQUM7YUFDdEM7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0FyRVUsYUFBYSxrQkFJZCxnQkFBZ0IsYUFDaEIsV0FBVztrSEFMVixhQUFhLGNBREEsTUFBTTs7MkZBQ25CLGFBQWE7a0JBRHpCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFLN0IsTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUN2QixNQUFNOzJCQUFDLFdBQVc7O0FBOEV2QixNQUFNLE9BQU8sWUFBWTtJQUd2QixZQUFpQyxVQUFrQjtRQUNqRCxJQUFJLENBQUMsVUFBVSxHQUFHLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN4QixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQUUsQ0FBQztJQUNyRyxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDeEMsT0FBTyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pDO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFtQixDQUFDO1NBQ25EO0lBQ0gsQ0FBQzs4R0FqQlUsWUFBWSxrQkFHSCxXQUFXO2tIQUhwQixZQUFZLGNBREMsTUFBTTs7MkZBQ25CLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFJbkIsTUFBTTsyQkFBQyxXQUFXOztBQWtCakMsTUFBTSxPQUFPLGVBQWU7SUFLMUIsWUFBNkIsV0FBeUI7UUFBekIsZ0JBQVcsR0FBWCxXQUFXLENBQWM7UUFKckMsa0JBQWEsR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRCxhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQThCLENBQUM7SUFFVCxDQUFDO0lBRTFEOzs7T0FHRztJQUNILE9BQU8sQ0FBQyxPQUEwQjtRQUNoQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUM3RSxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBRSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsT0FBMEI7UUFDaEMsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0UsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFFLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2xGLEdBQUcsQ0FDRCxDQUFDLE1BQTZCLEVBQXlCLEVBQUUsQ0FDdkQsTUFBTSxDQUFDLE1BQU0sQ0FDWCxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNoQixNQUFNLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNqRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ2hELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsRUFDRCxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBMkIsQ0FDN0QsQ0FDSixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxPQUFpQjtRQUN2QyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxjQUFjLENBQUMsS0FBYTtRQUNsQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDakM7UUFDRCxNQUFNLFNBQVMsR0FBbUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckUsTUFBTSxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQXNCO1lBQzFELEtBQUssRUFBRSxLQUFLO1lBQ1osT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPO1NBQ0osQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixTQUFTLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3hELFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBNEIsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUNILENBQUM7UUFDRixNQUFNLElBQUksR0FBdUIsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUM1RixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQWhFVSxlQUFlO2tIQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPbkRlc3Ryb3ksIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGZyb21FdmVudCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIERlZmF1bHQgREYgYnJlYWtwb2ludHNcbmV4cG9ydCBjb25zdCBERl9CUkVBS1BPSU5UU19WQVJfREVGQVVMVCA9IHtcbiAgeHM6ICctLWRmLWJyZWFrcG9pbnQteHMnLFxuICBzbTogJy0tZGYtYnJlYWtwb2ludC1zbScsXG4gIG1kOiAnLS1kZi1icmVha3BvaW50LW1kJyxcbiAgbGc6ICctLWRmLWJyZWFrcG9pbnQtbGcnLFxuICB4bDogJy0tZGYtYnJlYWtwb2ludC14bCcsXG4gIHh4bDogJy0tZGYtYnJlYWtwb2ludC14eGwnLFxuICB4eHhsOiAnLS1kZi1icmVha3BvaW50LXh4eGwnXG59O1xuXG5leHBvcnQgY29uc3QgQlJFQUtQT0lOVFNfVkFSUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignQm9vdHN0cmFwIEJyZWFrcG9pbnRzJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3RvcnkoKSB7XG4gICAgcmV0dXJuIERGX0JSRUFLUE9JTlRTX1ZBUl9ERUZBVUxUO1xuICB9XG59KTtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBEZkJyZWFrcG9pbnRzIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJlYWtQb2ludHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7fSB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQlJFQUtQT0lOVFNfVkFSUykgcHJpdmF0ZSByZWFkb25seSBfYnJlYWtQb2ludHNWYXI6IHsgW2JyZWFrcG9pbnQ6IHN0cmluZ106IHN0cmluZyB9LFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcmVhZG9ubHkgcGxhdGZvcm1JRDogT2JqZWN0XG4gICkge1xuICAgIHRoaXMuaW5pdEJyZWFrcG9pbnRzKCk7XG4gIH1cblxuICBnZXQgYnJlYWtQb2ludHMkKCk6IE9ic2VydmFibGU8e30gfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMuX2JyZWFrUG9pbnRzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEJyZWFrcG9pbnRzKCkge1xuICAgIGxldCBicmVha1BvaW50cyA9IG51bGw7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JRCkgJiYgdGhpcy5fYnJlYWtQb2ludHMkLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAvLyB3ZSBhcmUgaW4gYSBicm93c2VyIHNvIENTUyB2YXJpYWJsZSBhcmUgYWNjZXNzaWJsZVxuICAgICAgLy8gd2UgaW5pdCB0aGUgQlAgb25seSBvbmNlXG4gICAgICBjb25zdCBzdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpIGFzIGFueTtcbiAgICAgIGNvbnN0IGJwQXJyYXkgPSBbXTtcbiAgICAgIGZvciAoY29uc3QgZWwgb2YgT2JqZWN0LmtleXModGhpcy5fYnJlYWtQb2ludHNWYXIpKSB7XG4gICAgICAgIGNvbnN0IGN1clZhbHVlID0gdGhpcy5fYnJlYWtQb2ludHNWYXJbZWxdO1xuICAgICAgICBjb25zdCBicFZhbHVlID0gTnVtYmVyLnBhcnNlSW50KHN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKGN1clZhbHVlKSwgMTApO1xuICAgICAgICBpZiAoaXNOYU4oYnBWYWx1ZSkpIHtcbiAgICAgICAgICAvLyBXZSBzaG91bGQgbmV2ZXIgZW50ZXIgaGVyZS4gT25seSBpZiBwZW9wbGUgZGlkIG5vdCBwdXQgdGhlIGNvcnJlY3QgbGlzdCBvZiBDU1MgdmFycy4uLlxuICAgICAgICAgIC8vIE9yIGlmIHRoZSBDU1MgaXMgbm90IGFycml2ZWQgeWV0LlxuICAgICAgICAgIC8vIFdoYXQgc2hvdWxkIHdlIGRvIHRoZW4/XG4gICAgICAgICAgLy8gVE9ETyBpbml0IGZyb20gdGhlIGRlZmF1bHQgbGlzdCBwcm92aWRlZCBpZiB3ZSB3YW50IHRvP1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGJwQXJyYXkucHVzaChbZWwsIGJwVmFsdWVdKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnJlYWtQb2ludHMgPSB0aGlzLmdlbmVyYXRlKGJwQXJyYXkpO1xuICAgICAgLy8gSW4gY2FzZSB0aGUgZmlyc3QgcGFnZSBjb250YWlucyB0aGUgZGlyZWN0aXZlIGFuZCB0aGUgQ1NTIHZhcnMgYXJlIG5vdCBhdmFpbGFibGVcbiAgICAgIC8vIFdlIG1heSBuZWVkIHRvIGxhdW5jaCBhIHNlY29uZCBpbml0IGF0IGxvYWQgdGltZS5cbiAgICAgIGlmIChPYmplY3Qua2V5cyhicmVha1BvaW50cykubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGZyb21FdmVudCh3aW5kb3csICdsb2FkJylcbiAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgLy8gSW5pdCBvbmNlIGFzIHRoZSBzZXJ2aWNlIGlzIGF2YWlsYWJsZSBldmVyeXdoZXJlXG4gICAgICAgICAgICAvLyBXZSBkbyBub3QgY2hlY2sgaWYgdGhlIENTUyB2YXJpYWJsZSBhcmUgY2hhbmdpbmcgb3ZlciB0aW1lXG4gICAgICAgICAgICAvLyBoZXJlIG9ubG9hZCB0aGUgQ1NTIHZhciBzaG91bGQgYmUgYXZhaWxhYmxlXG4gICAgICAgICAgICB0aGlzLmluaXRCcmVha3BvaW50cygpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9icmVha1BvaW50cyQubmV4dChicmVha1BvaW50cyk7XG4gIH1cblxuICAvLyBVdGlsaXRpZXMgdG8gdXNlIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSB5b3VyIG93biBxdWVyaWVzIHdpdGggeW91ciB2YWx1ZXMuXG4gIC8vIHNpemVzIGlzIGFuIGFycmF5IG9mIGFycmF5IEJyZWFrUG9pbnRzIHdpdGggc2l6ZXNbMF0gLS0+IGlkZW50aWZpZXIgb2YgdGhlIEJyZWFrUG9pbnRcbiAgLy8gc2l6ZXNbMV0gcHggdmFsdWUgb2YgdGhlIEJyZWFrUG9pbnRcbiAgZ2VuZXJhdGUoc2l6ZXM6IGFueVtdW10pOiB7fSB7XG4gICAgc2l6ZXMgPSBzaXplcy5zb3J0KChhLCBiKSA9PiBhWzFdIC0gYlsxXSk7XG4gICAgY29uc3QgZGljdDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IG5hbWUgPSBzaXplc1tpXVswXTtcbiAgICAgIGNvbnN0IG1pbiA9IHNpemVzW2ldWzFdO1xuICAgICAgY29uc3QgbWF4ID0gaSA9PT0gc2l6ZXMubGVuZ3RoIC0gMSA/IHVuZGVmaW5lZCA6IHNpemVzW2kgKyAxXVsxXTtcbiAgICAgIGlmIChtaW4gPT09IDApIHtcbiAgICAgICAgZGljdFtuYW1lXSA9IGAobWF4LXdpZHRoOiAke21heCAtIDAuMDF9cHgpYDtcbiAgICAgIH0gZWxzZSBpZiAobWF4KSB7XG4gICAgICAgIGRpY3RbbmFtZV0gPSBgKG1heC13aWR0aDogJHttYXggLSAwLjAxfXB4KSBhbmQgKG1pbi13aWR0aDogJHttaW59cHgpYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRpY3RbbmFtZV0gPSBgKG1pbi13aWR0aDogJHttaW59cHgpYDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRpY3Q7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZWRpYVF1ZXJ5TGlzdE1ldGEge1xuICBtZWRpYVF1ZXJ5TGlzdDogTWVkaWFRdWVyeUxpc3Q7XG4gIG1lZGlhUXVlcnlMaXN0JDogQmVoYXZpb3JTdWJqZWN0PE1lZGlhUXVlcnlMaXN0RXZlbnQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lZGlhQnJlYWtwb2ludHNTdGF0ZSB7XG4gIG1hdGNoZXM6IGJvb2xlYW47XG4gIGJyZWFrcG9pbnRzOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfTtcbn1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBEZk1lZGlhUXVlcnkge1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXI6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0KSB7XG4gICAgdGhpcy5faXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCk7XG4gIH1cblxuICBub3RTdXBwb3J0ZWQocXVlcnk6IHN0cmluZyk6IFBhcnRpYWw8TWVkaWFRdWVyeUxpc3Q+IHtcbiAgICByZXR1cm4geyBtYXRjaGVzOiBmYWxzZSwgbWVkaWE6IHF1ZXJ5LCBhZGRFdmVudExpc3RlbmVyOiAoKSA9PiB7fSwgcmVtb3ZlRXZlbnRMaXN0ZW5lcjogKCkgPT4ge30gfTtcbiAgfVxuXG4gIG1hdGNoTWVkaWEocXVlcnk6IHN0cmluZyk6IE1lZGlhUXVlcnlMaXN0IHtcbiAgICBpZiAodGhpcy5faXNCcm93c2VyICYmIHdpbmRvdy5tYXRjaE1lZGlhKSB7XG4gICAgICByZXR1cm4gd2luZG93Lm1hdGNoTWVkaWEocXVlcnkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5ub3RTdXBwb3J0ZWQocXVlcnkpIGFzIE1lZGlhUXVlcnlMaXN0O1xuICAgIH1cbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERmTWVkaWFPYnNlcnZlciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3F1ZXJpZXMgPSBuZXcgTWFwPHN0cmluZywgTWVkaWFRdWVyeUxpc3RNZXRhPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX21lZGlhUXVlcnk6IERmTWVkaWFRdWVyeSkge31cblxuICAvKipcbiAgICogVmVyaWZpZXMgaWYgYXQgbGVhc3Qgb25lIG9mIHRoZSBwcm92aWRlZCBtZWRpYS1xdWVyaWVzIGlzIG1hdGNoaW5nXG4gICAqIHRoZSBjdXJyZW50IHZpZXdwb3J0XG4gICAqL1xuICBtYXRjaGVzKHF1ZXJpZXM6IHN0cmluZ1tdIHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcXVlcmllcyA9IHRoaXMuX2ZsYXR0ZW5RdWVyaWVzKEFycmF5LmlzQXJyYXkocXVlcmllcykgPyBxdWVyaWVzIDogW3F1ZXJpZXNdKTtcbiAgICByZXR1cm4gcXVlcmllcy5zb21lKHEgPT4gdGhpcy5fcmVnaXN0ZXJRdWVyeShxKSEubWVkaWFRdWVyeUxpc3QubWF0Y2hlcyk7XG4gIH1cblxuICAvKipcbiAgICogUHJvZHVjZXMgYW4gb2JzZXJ2YWJsZSBmb3IgYSBzZXQgb2YgbWVkaWEtcXVlcmllcyB0aGF0IHdpbGwgZW1pdFxuICAgKiBtZXRhIGluZm9ybWF0aW9uIGZvciBhbnkgY2hhbmdlcyBvZiB0aGUgZ2l2ZW4gcXVlcmllcy5cbiAgICogQHBhcmFtIHZhbHVlIE9uZSBvciBtb3JlIG1lZGlhLXF1ZXJpZXMgdG8gYmUgb2JzZXJ2ZWQuXG4gICAqIEByZXR1cm5zIEEgc3RyZWFtIG9mIG1hdGNoZXMgbWV0YSBvYmplY3QgZm9yIHRoZSBnaXZlbiBtZWRpYS1xdWVyaWVzLlxuICAgKi9cbiAgb2JzZXJ2ZShxdWVyaWVzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IE9ic2VydmFibGU8TWVkaWFCcmVha3BvaW50c1N0YXRlPiB7XG4gICAgcXVlcmllcyA9IHRoaXMuX2ZsYXR0ZW5RdWVyaWVzKEFycmF5LmlzQXJyYXkocXVlcmllcykgPyBxdWVyaWVzIDogW3F1ZXJpZXNdKTtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChxdWVyaWVzLm1hcChxID0+IHRoaXMuX3JlZ2lzdGVyUXVlcnkocSkhLm1lZGlhUXVlcnlMaXN0JCkpLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChldmVudHM6IE1lZGlhUXVlcnlMaXN0RXZlbnRbXSk6IE1lZGlhQnJlYWtwb2ludHNTdGF0ZSA9PlxuICAgICAgICAgIGV2ZW50cy5yZWR1Y2UoXG4gICAgICAgICAgICAocmVzdWx0LCBldmVudCkgPT4ge1xuICAgICAgICAgICAgICByZXN1bHQubWF0Y2hlcyA9IHJlc3VsdC5tYXRjaGVzIHx8IGV2ZW50Lm1hdGNoZXM7XG4gICAgICAgICAgICAgIHJlc3VsdC5icmVha3BvaW50c1tldmVudC5tZWRpYV0gPSBldmVudC5tYXRjaGVzO1xuICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbWF0Y2hlczogZmFsc2UsIGJyZWFrcG9pbnRzOiB7fSB9IGFzIE1lZGlhQnJlYWtwb2ludHNTdGF0ZVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIF9mbGF0dGVuUXVlcmllcyhxdWVyaWVzOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gcXVlcmllcy5tYXAocSA9PiBxLnNwbGl0KCcsJykpLnJlZHVjZSgoZmxhdCwgYSkgPT4gZmxhdC5jb25jYXQoYSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVnaXN0ZXJRdWVyeShxdWVyeTogc3RyaW5nKTogTWVkaWFRdWVyeUxpc3RNZXRhIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5fcXVlcmllcy5oYXMocXVlcnkpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fcXVlcmllcy5nZXQocXVlcnkpO1xuICAgIH1cbiAgICBjb25zdCBxdWVyeUxpc3Q6IE1lZGlhUXVlcnlMaXN0ID0gdGhpcy5fbWVkaWFRdWVyeS5tYXRjaE1lZGlhKHF1ZXJ5KTtcbiAgICBjb25zdCBxdWVyeUxpc3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNZWRpYVF1ZXJ5TGlzdEV2ZW50Pih7XG4gICAgICBtZWRpYTogcXVlcnksXG4gICAgICBtYXRjaGVzOiBxdWVyeUxpc3QubWF0Y2hlc1xuICAgIH0gYXMgTWVkaWFRdWVyeUxpc3RFdmVudCk7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIGZyb21FdmVudChxdWVyeUxpc3QsICdjaGFuZ2UnKS5zdWJzY3JpYmUoKGV2ZW50OiBFdmVudCkgPT4ge1xuICAgICAgICBxdWVyeUxpc3QkLm5leHQoZXZlbnQgYXMgTWVkaWFRdWVyeUxpc3RFdmVudCk7XG4gICAgICB9KVxuICAgICk7XG4gICAgY29uc3QgbWV0YTogTWVkaWFRdWVyeUxpc3RNZXRhID0geyBtZWRpYVF1ZXJ5TGlzdDogcXVlcnlMaXN0LCBtZWRpYVF1ZXJ5TGlzdCQ6IHF1ZXJ5TGlzdCQgfTtcbiAgICB0aGlzLl9xdWVyaWVzLnNldChxdWVyeSwgbWV0YSk7XG4gICAgcmV0dXJuIG1ldGE7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,36 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@ng-bootstrap/ng-bootstrap";
4
+ export class DfModalService {
5
+ constructor(modalService, rendererFactory) {
6
+ this.modalService = modalService;
7
+ this.rendererFactory = rendererFactory;
8
+ this.renderer = this.rendererFactory.createRenderer(null, null);
9
+ }
10
+ open(content, options) {
11
+ let modalRef;
12
+ if (options && options.container) {
13
+ modalRef = this.modalService.open(content, options);
14
+ }
15
+ else {
16
+ modalRef = this.modalService.open(content, Object.assign({}, { container: 'body' }, options));
17
+ }
18
+ // we add the 'df-modal-open' class to the body when the modal is open. We remove it when the modal is closed/dismissed
19
+ this.renderer.addClass(document.body, 'df-modal-open');
20
+ modalRef.result.then(() => {
21
+ this.renderer.removeClass(document.body, 'df-modal-open');
22
+ }, () => {
23
+ this.renderer.removeClass(document.body, 'df-modal-open');
24
+ });
25
+ return modalRef;
26
+ }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModalService, deps: [{ token: i1.NgbModal }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
28
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModalService, providedIn: 'root' }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModalService, decorators: [{
31
+ type: Injectable,
32
+ args: [{
33
+ providedIn: 'root'
34
+ }]
35
+ }], ctorParameters: function () { return [{ type: i1.NgbModal }, { type: i0.RendererFactory2 }]; } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9tb2RhbC9tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQStCLE1BQU0sZUFBZSxDQUFDOzs7QUFLeEUsTUFBTSxPQUFPLGNBQWM7SUFHekIsWUFBb0IsWUFBc0IsRUFBVSxlQUFpQztRQUFqRSxpQkFBWSxHQUFaLFlBQVksQ0FBVTtRQUFVLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUNuRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQVksRUFBRSxPQUF5QjtRQUMxQyxJQUFJLFFBQXFCLENBQUM7UUFDMUIsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUNoQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ3JEO2FBQU07WUFDTCxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDL0Y7UUFDRCx1SEFBdUg7UUFDdkgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQztRQUN2RCxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbEIsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQztRQUM1RCxDQUFDLEVBQ0QsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQztRQUM1RCxDQUFDLENBQ0YsQ0FBQztRQUNGLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7OEdBekJVLGNBQWM7a0hBQWQsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdiTW9kYWxPcHRpb25zLCBOZ2JNb2RhbFJlZiB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERmTW9kYWxTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIpIHtcbiAgICB0aGlzLnJlbmRlcmVyID0gdGhpcy5yZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIobnVsbCwgbnVsbCk7XG4gIH1cblxuICBvcGVuKGNvbnRlbnQ6IGFueSwgb3B0aW9ucz86IE5nYk1vZGFsT3B0aW9ucyk6IE5nYk1vZGFsUmVmIHtcbiAgICBsZXQgbW9kYWxSZWY6IE5nYk1vZGFsUmVmO1xuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuY29udGFpbmVyKSB7XG4gICAgICBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oY29udGVudCwgb3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3Blbihjb250ZW50LCBPYmplY3QuYXNzaWduKHt9LCB7IGNvbnRhaW5lcjogJ2JvZHknIH0sIG9wdGlvbnMpKTtcbiAgICB9XG4gICAgLy8gd2UgYWRkIHRoZSAnZGYtbW9kYWwtb3BlbicgY2xhc3MgdG8gdGhlIGJvZHkgd2hlbiB0aGUgbW9kYWwgaXMgb3Blbi4gV2UgcmVtb3ZlIGl0IHdoZW4gdGhlIG1vZGFsIGlzIGNsb3NlZC9kaXNtaXNzZWRcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGRvY3VtZW50LmJvZHksICdkZi1tb2RhbC1vcGVuJyk7XG4gICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2RmLW1vZGFsLW9wZW4nKTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2RmLW1vZGFsLW9wZW4nKTtcbiAgICAgIH1cbiAgICApO1xuICAgIHJldHVybiBtb2RhbFJlZjtcbiAgfVxufVxuIl19
@@ -0,0 +1,16 @@
1
+ import { NgbPopoverConfig } from '@ng-bootstrap/ng-bootstrap';
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@ng-bootstrap/ng-bootstrap";
5
+ export class DfPopoverConfig extends NgbPopoverConfig {
6
+ constructor(ngbConfig) {
7
+ super(ngbConfig || { animation: true });
8
+ this.autoClose = 'outside';
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverConfig, deps: [{ token: i1.NgbConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
11
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverConfig }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverConfig, decorators: [{
14
+ type: Injectable
15
+ }], ctorParameters: function () { return [{ type: i1.NgbConfig }]; } });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvcG9wb3Zlci9jb25maWcvcG9wb3Zlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRzNDLE1BQU0sT0FBTyxlQUFnQixTQUFRLGdCQUFnQjtJQUduRCxZQUFZLFNBQXFCO1FBQy9CLEtBQUssQ0FBQyxTQUFTLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUhqQyxjQUFTLEdBQUcsU0FBc0IsQ0FBQztJQUk1QyxDQUFDOzhHQUxVLGVBQWU7a0hBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nYkNvbmZpZywgTmdiUG9wb3ZlckNvbmZpZyB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERmUG9wb3ZlckNvbmZpZyBleHRlbmRzIE5nYlBvcG92ZXJDb25maWcge1xuICBvdmVycmlkZSBhdXRvQ2xvc2UgPSAnb3V0c2lkZScgYXMgJ291dHNpZGUnO1xuXG4gIGNvbnN0cnVjdG9yKG5nYkNvbmZpZz86IE5nYkNvbmZpZykge1xuICAgIHN1cGVyKG5nYkNvbmZpZyB8fCB7IGFuaW1hdGlvbjogdHJ1ZSB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,17 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { NgbPopoverModule, NgbPopoverConfig } from '@ng-bootstrap/ng-bootstrap';
3
+ import { DfPopoverConfig } from './config/popover.config';
4
+ import * as i0 from "@angular/core";
5
+ export class DfPopoverModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverModule, exports: [NgbPopoverModule] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverModule, providers: [{ provide: NgbPopoverConfig, useClass: DfPopoverConfig }], imports: [NgbPopoverModule] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfPopoverModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ exports: [NgbPopoverModule],
14
+ providers: [{ provide: NgbPopoverConfig, useClass: DfPopoverConfig }]
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvcG9wb3Zlci9wb3BvdmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFNMUQsTUFBTSxPQUFPLGVBQWU7OEdBQWYsZUFBZTsrR0FBZixlQUFlLFlBSGhCLGdCQUFnQjsrR0FHZixlQUFlLGFBRmYsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLENBQUMsWUFEM0QsZ0JBQWdCOzsyRkFHZixlQUFlO2tCQUozQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLENBQUM7aUJBQ3RFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYlBvcG92ZXJNb2R1bGUsIE5nYlBvcG92ZXJDb25maWcgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBEZlBvcG92ZXJDb25maWcgfSBmcm9tICcuL2NvbmZpZy9wb3BvdmVyLmNvbmZpZyc7XG5cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtOZ2JQb3BvdmVyTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOZ2JQb3BvdmVyQ29uZmlnLCB1c2VDbGFzczogRGZQb3BvdmVyQ29uZmlnIH1dXG59KVxuZXhwb3J0IGNsYXNzIERmUG9wb3Zlck1vZHVsZSB7fVxuIl19
@@ -0,0 +1,158 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class DfProgressbarComponent {
6
+ constructor() {
7
+ this.infiniteAnimation = false;
8
+ /**
9
+ * Current value of the progressBar. If 'maxValue' is not defined, value represents a percentage. Otherwise, progress
10
+ * bar percentage value will be computed based on the ratio of 'value/maxValue'
11
+ */
12
+ this._value = 0;
13
+ this._maxValue = 100;
14
+ /**
15
+ * Text to be displayed on top of the progressbar
16
+ */
17
+ this._text = '';
18
+ this._percentageValue = 0;
19
+ this.percentageValueChange = new EventEmitter();
20
+ this.computedText = '';
21
+ this.displayProgressBar = false;
22
+ this.FADING_DELAY_MS = 1500; // if triggered by observables, number of milliseconds after progress bar disappears once stopped
23
+ this.animationOngoing = false;
24
+ }
25
+ set value(newValue) {
26
+ this._value = newValue;
27
+ this.updatePercentageValue();
28
+ this.updateText();
29
+ }
30
+ get value() {
31
+ return this._value;
32
+ }
33
+ set maxValue(newValue) {
34
+ this._maxValue = newValue;
35
+ this.updatePercentageValue();
36
+ this.updateText();
37
+ }
38
+ get maxValue() {
39
+ return this._maxValue;
40
+ }
41
+ set text(newText) {
42
+ this._text = newText;
43
+ this.updateText();
44
+ }
45
+ get text() {
46
+ return this._text;
47
+ }
48
+ set percentageValue(newValue) {
49
+ this._percentageValue = newValue;
50
+ this.percentageValueChange.emit(newValue);
51
+ }
52
+ get percentageValue() {
53
+ return this._percentageValue;
54
+ }
55
+ ngOnInit() {
56
+ const isTriggeredByObservables = this.start$ && this.end$;
57
+ if (isTriggeredByObservables) {
58
+ this.startSubscription = this.start$.subscribe((_) => {
59
+ this.animationOngoing = true;
60
+ this.stopAutomaticIncrement();
61
+ this.resetProgressBarValues();
62
+ this.displayProgressBar = true;
63
+ this.startAutomaticIncrement();
64
+ });
65
+ this.endSubscription = this.end$.subscribe((_) => {
66
+ if (this.animationOngoing) {
67
+ this.animationOngoing = false;
68
+ this.stopAutomaticIncrement();
69
+ this.value = 100;
70
+ setTimeout(() => {
71
+ this.displayProgressBar = false;
72
+ }, this.FADING_DELAY_MS);
73
+ }
74
+ });
75
+ }
76
+ else {
77
+ this.displayProgressBar = true;
78
+ }
79
+ }
80
+ ngOnDestroy() {
81
+ if (this.startSubscription) {
82
+ this.startSubscription.unsubscribe();
83
+ }
84
+ if (this.endSubscription) {
85
+ this.endSubscription.unsubscribe();
86
+ }
87
+ this.stopAutomaticIncrement();
88
+ }
89
+ updateText() {
90
+ const precentagePlaceholder = '%PERCENTAGE%';
91
+ if (this.text.includes(precentagePlaceholder)) {
92
+ const advancementInPercents = `${Math.floor(this.percentageValue)}%`;
93
+ this.computedText = this.text.replace(precentagePlaceholder, advancementInPercents);
94
+ return;
95
+ }
96
+ this.computedText = this.text;
97
+ }
98
+ updatePercentageValue() {
99
+ if (this.value > this.maxValue) {
100
+ this.percentageValue = 100;
101
+ return;
102
+ }
103
+ this.percentageValue = Math.floor((this.value / this.maxValue) * 100);
104
+ }
105
+ /**
106
+ * Randomly increase the percentage but making sure that it can never reach 100%
107
+ */
108
+ increasePercentage() {
109
+ const maximumReachableValue = 90;
110
+ const remainingPercentage = maximumReachableValue - this.value;
111
+ const averageIncreaseRatio = 0.015;
112
+ const randomIncreaseRatio = Math.random() * 2 * averageIncreaseRatio;
113
+ this.value += randomIncreaseRatio * remainingPercentage;
114
+ this.updatePercentageValue();
115
+ this.updateText();
116
+ }
117
+ /**
118
+ * Clears the 'setInterval' function so that the automatic increase of the progressbar stops
119
+ */
120
+ stopAutomaticIncrement() {
121
+ clearInterval(this.intervalId);
122
+ }
123
+ /**
124
+ * Periodically calls a function which increments the value of the progressbar
125
+ */
126
+ startAutomaticIncrement() {
127
+ this.intervalId = setInterval(this.increasePercentage.bind(this), 50);
128
+ }
129
+ resetProgressBarValues() {
130
+ this.value = 0;
131
+ this.maxValue = 100;
132
+ }
133
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
134
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfProgressbarComponent, isStandalone: true, selector: "df-progressbar", inputs: { infiniteAnimation: "infiniteAnimation", value: "value", maxValue: "maxValue", text: "text", start$: "start$", end$: "end$", ariaLabelledBy: "ariaLabelledBy", ariaLabel: "ariaLabel" }, outputs: { percentageValueChange: "percentageValueChange" }, ngImport: i0, template: "<ng-container *ngIf=\"displayProgressBar\">\n <div *ngIf=\"computedText\" class=\"progressbar-text mb-2\">{{ computedText }}</div>\n <div class=\"progress\">\n <ng-container *ngIf=\"infiniteAnimation; else withValue\">\n <div\n class=\"progress-bar infinite-animation\"\n role=\"progressbar\"\n aria-valuetext=\"indeterminate\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-label]=\"!ariaLabelledBy && ariaLabel ? ariaLabel : null\"\n ></div>\n </ng-container>\n <ng-template #withValue>\n <div\n [style.width.%]=\"percentageValue\"\n class=\"progress-bar\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"value\"\n aria-valuemin=\"0\"\n [attr.aria-valuemax]=\"maxValue\"\n [attr.aria-valuetext]=\"computedText ? computedText : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-label]=\"!ariaLabelledBy && ariaLabel ? ariaLabel : null\"\n ></div>\n </ng-template>\n </div>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
135
+ }
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarComponent, decorators: [{
137
+ type: Component,
138
+ args: [{ selector: 'df-progressbar', standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"displayProgressBar\">\n <div *ngIf=\"computedText\" class=\"progressbar-text mb-2\">{{ computedText }}</div>\n <div class=\"progress\">\n <ng-container *ngIf=\"infiniteAnimation; else withValue\">\n <div\n class=\"progress-bar infinite-animation\"\n role=\"progressbar\"\n aria-valuetext=\"indeterminate\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-label]=\"!ariaLabelledBy && ariaLabel ? ariaLabel : null\"\n ></div>\n </ng-container>\n <ng-template #withValue>\n <div\n [style.width.%]=\"percentageValue\"\n class=\"progress-bar\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"value\"\n aria-valuemin=\"0\"\n [attr.aria-valuemax]=\"maxValue\"\n [attr.aria-valuetext]=\"computedText ? computedText : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-label]=\"!ariaLabelledBy && ariaLabel ? ariaLabel : null\"\n ></div>\n </ng-template>\n </div>\n</ng-container>\n" }]
139
+ }], propDecorators: { infiniteAnimation: [{
140
+ type: Input
141
+ }], value: [{
142
+ type: Input
143
+ }], maxValue: [{
144
+ type: Input
145
+ }], text: [{
146
+ type: Input
147
+ }], start$: [{
148
+ type: Input
149
+ }], end$: [{
150
+ type: Input
151
+ }], ariaLabelledBy: [{
152
+ type: Input
153
+ }], ariaLabel: [{
154
+ type: Input
155
+ }], percentageValueChange: [{
156
+ type: Output
157
+ }] } });
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3NiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9wcm9ncmVzc2Jhci9wcm9ncmVzc2Jhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVEvQyxNQUFNLE9BQU8sc0JBQXNCO0lBTm5DO1FBT1csc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQ25DOzs7V0FHRztRQUNLLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFhWCxjQUFTLEdBQUcsR0FBRyxDQUFDO1FBYXhCOztXQUVHO1FBQ0ssVUFBSyxHQUFHLEVBQUUsQ0FBQztRQW1DWCxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFVbkIsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV0RCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDM0Isb0JBQWUsR0FBRyxJQUFJLENBQUMsQ0FBQyxpR0FBaUc7UUFJeEgscUJBQWdCLEdBQUcsS0FBSyxDQUFDO0tBc0ZsQztJQXRLQyxJQUNJLEtBQUssQ0FBQyxRQUFnQjtRQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztRQUN2QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJ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QUM7SUFDeEUsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO0lBQ3RCLENBQUM7OEdBN0tVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlVQ1ZuQywyaUNBMkJBLDJDRG5CWSxZQUFZOzsyRkFFWCxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBRWQsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDOzhCQUdkLGlCQUFpQjtzQkFBekIsS0FBSztnQkFRRixLQUFLO3NCQURSLEtBQUs7Z0JBY0YsUUFBUTtzQkFEWCxLQUFLO2dCQWlCRixJQUFJO3NCQURQLEtBQUs7Z0JBY0csTUFBTTtzQkFBZCxLQUFLO2dCQU1HLElBQUk7c0JBQVosS0FBSztnQkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBWUkscUJBQXFCO3NCQUE5QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXByb2dyZXNzYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICdwcm9ncmVzc2Jhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIERmUHJvZ3Jlc3NiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGluZmluaXRlQW5pbWF0aW9uID0gZmFsc2U7XG4gIC8qKlxuICAgKiBDdXJyZW50IHZhbHVlIG9mIHRoZSBwcm9ncmVzc0Jhci4gSWYgJ21heFZhbHVlJyBpcyBub3QgZGVmaW5lZCwgdmFsdWUgcmVwcmVzZW50cyBhIHBlcmNlbnRhZ2UuIE90aGVyd2lzZSwgcHJvZ3Jlc3NcbiAgICogYmFyIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBiZSBjb21wdXRlZCBiYXNlZCBvbiB0aGUgcmF0aW8gb2YgJ3ZhbHVlL21heFZhbHVlJ1xuICAgKi9cbiAgcHJpdmF0ZSBfdmFsdWUgPSAwO1xuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZShuZXdWYWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fdmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLnVwZGF0ZVBlcmNlbnRhZ2VWYWx1ZSgpO1xuICAgIHRoaXMudXBkYXRlVGV4dCgpO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4VmFsdWUgPSAxMDA7XG5cbiAgQElucHV0KClcbiAgc2V0IG1heFZhbHVlKG5ld1ZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMudXBkYXRlUGVyY2VudGFnZVZhbHVlKCk7XG4gICAgdGhpcy51cGRhdGVUZXh0KCk7XG4gIH1cblxuICBnZXQgbWF4VmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4VmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogVGV4dCB0byBiZSBkaXNwbGF5ZWQgb24gdG9wIG9mIHRoZSBwcm9ncmVzc2JhclxuICAgKi9cbiAgcHJpdmF0ZSBfdGV4dCA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCB0ZXh0KG5ld1RleHQ6IHN0cmluZykge1xuICAgIHRoaXMuX3RleHQgPSBuZXdUZXh0O1xuICAgIHRoaXMudXBkYXRlVGV4dCgpO1xuICB9XG5cbiAgZ2V0IHRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHVzZWQgdG8gdHJpZ2dlciB0aGUgc3RhcnQgb2YgdGhlIGxvYWRpbmcuXG4gICAqIFdoZW4gZW1pdHRpbmcsIHByb2dyZXNzYmFyIHdpbGwgc3RhcnQgdG8gcmFuZG9tbHkgaW5jcmVtZW50IHRvd2FyZCAxMDAlLlxuICAgKi9cbiAgQElucHV0KCkgc3RhcnQkPzogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHVzZWQgdG8gdHJpZ2dlciB0aGUgZW5kIG9mIHRoZSBsb2FkaW5nLlxuICAgKiBXaGVuIGVtaXR0aW5nLCBpdCBmb3JjZXMgdGhlIHByb2dyZXNzYmFyIHRvIHJlYWNoIDEwMCUuXG4gICAqL1xuICBASW5wdXQoKSBlbmQkPzogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIC8qKlxuICAgKiBJZCBvZiB0aGUgbGFiZWwgdXNlZCB0byBkZXNjcmliZSB0aGUgcHJvZ3Jlc3MgYmFyLlxuICAgKiBJdCBpcyB1c2VkIGluIHByaW9yaXR5IGNvbXBhcmVkIHRvIHRoZSBhcmlhTGFiZWwuXG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWxsZWRCeT86IHN0cmluZztcblxuICAvKipcbiAgICogQXJpYSBsYWJlbCB1c2VkIHRvIGRlc2NyaWJlIHRoZSBwcm9ncmVzcyBiYXIgaWYgbm8gYXJpYUxhYmVsbGVkQnkgaXMgc3BlY2lmaWVkLlxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gIHByaXZhdGUgX3BlcmNlbnRhZ2VWYWx1ZSA9IDA7XG4gIHNldCBwZXJjZW50YWdlVmFsdWUobmV3VmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3BlcmNlbnRhZ2VWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMucGVyY2VudGFnZVZhbHVlQ2hhbmdlLmVtaXQobmV3VmFsdWUpO1xuICB9XG5cbiAgZ2V0IHBlcmNlbnRhZ2VWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9wZXJjZW50YWdlVmFsdWU7XG4gIH1cblxuICBAT3V0cHV0KCkgcGVyY2VudGFnZVZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgcHVibGljIGNvbXB1dGVkVGV4dCA9ICcnO1xuICBwdWJsaWMgZGlzcGxheVByb2dyZXNzQmFyID0gZmFsc2U7XG4gIHB1YmxpYyBGQURJTkdfREVMQVlfTVMgPSAxNTAwOyAvLyBpZiB0cmlnZ2VyZWQgYnkgb2JzZXJ2YWJsZXMsIG51bWJlciBvZiBtaWxsaXNlY29uZHMgYWZ0ZXIgcHJvZ3Jlc3MgYmFyIGRpc2FwcGVhcnMgb25jZSBzdG9wcGVkXG4gIHByaXZhdGUgc3RhcnRTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZW5kU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIGludGVydmFsSWQ6IGFueTsgLy8gc3RvcmUgdGhlIHJlc3VsdCBvZiAnc2V0SW50ZXJ2YWwnIGZ1bmN0aW9uIHNvIHRoYXQgd2UgY2FuIGNsZWFyIGl0IG9uRGVzdHJveVxuICBwcml2YXRlIGFuaW1hdGlvbk9uZ29pbmcgPSBmYWxzZTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBpc1RyaWdnZXJlZEJ5T2JzZXJ2YWJsZXMgPSB0aGlzLnN0YXJ0JCAmJiB0aGlzLmVuZCQ7XG4gICAgaWYgKGlzVHJpZ2dlcmVkQnlPYnNlcnZhYmxlcykge1xuICAgICAgdGhpcy5zdGFydFN1YnNjcmlwdGlvbiA9IHRoaXMuc3RhcnQkIS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5hbmltYXRpb25PbmdvaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zdG9wQXV0b21hdGljSW5jcmVtZW50KCk7XG4gICAgICAgIHRoaXMucmVzZXRQcm9ncmVzc0JhclZhbHVlcygpO1xuICAgICAgICB0aGlzLmRpc3BsYXlQcm9ncmVzc0JhciA9IHRydWU7XG4gICAgICAgIHRoaXMuc3RhcnRBdXRvbWF0aWNJbmNyZW1lbnQoKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5lbmRTdWJzY3JpcHRpb24gPSB0aGlzLmVuZCQhLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICBpZiAodGhpcy5hbmltYXRpb25PbmdvaW5nKSB7XG4gICAgICAgICAgdGhpcy5hbmltYXRpb25PbmdvaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5zdG9wQXV0b21hdGljSW5jcmVtZW50KCk7XG4gICAgICAgICAgdGhpcy52YWx1ZSA9IDEwMDtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheVByb2dyZXNzQmFyID0gZmFsc2U7XG4gICAgICAgICAgfSwgdGhpcy5GQURJTkdfREVMQVlfTVMpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNwbGF5UHJvZ3Jlc3NCYXIgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLnN0YXJ0U3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN0YXJ0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmVuZFN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5lbmRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5zdG9wQXV0b21hdGljSW5jcmVtZW50KCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVRleHQoKSB7XG4gICAgY29uc3QgcHJlY2VudGFnZVBsYWNlaG9sZGVyID0gJyVQRVJDRU5UQUdFJSc7XG4gICAgaWYgKHRoaXMudGV4dC5pbmNsdWRlcyhwcmVjZW50YWdlUGxhY2Vob2xkZXIpKSB7XG4gICAgICBjb25zdCBhZHZhbmNlbWVudEluUGVyY2VudHMgPSBgJHtNYXRoLmZsb29yKHRoaXMucGVyY2VudGFnZVZhbHVlKX0lYDtcbiAgICAgIHRoaXMuY29tcHV0ZWRUZXh0ID0gdGhpcy50ZXh0LnJlcGxhY2UocHJlY2VudGFnZVBsYWNlaG9sZGVyLCBhZHZhbmNlbWVudEluUGVyY2VudHMpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbXB1dGVkVGV4dCA9IHRoaXMudGV4dDtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUGVyY2VudGFnZVZhbHVlKCkge1xuICAgIGlmICh0aGlzLnZhbHVlID4gdGhpcy5tYXhWYWx1ZSkge1xuICAgICAgdGhpcy5wZXJjZW50YWdlVmFsdWUgPSAxMDA7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMucGVyY2VudGFnZVZhbHVlID0gTWF0aC5mbG9vcigodGhpcy52YWx1ZSAvIHRoaXMubWF4VmFsdWUpICogMTAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSYW5kb21seSBpbmNyZWFzZSB0aGUgcGVyY2VudGFnZSBidXQgbWFraW5nIHN1cmUgdGhhdCBpdCBjYW4gbmV2ZXIgcmVhY2ggMTAwJVxuICAgKi9cbiAgcHJpdmF0ZSBpbmNyZWFzZVBlcmNlbnRhZ2UoKSB7XG4gICAgY29uc3QgbWF4aW11bVJlYWNoYWJsZVZhbHVlID0gOTA7XG4gICAgY29uc3QgcmVtYWluaW5nUGVyY2VudGFnZSA9IG1heGltdW1SZWFjaGFibGVWYWx1ZSAtIHRoaXMudmFsdWU7XG4gICAgY29uc3QgYXZlcmFnZUluY3JlYXNlUmF0aW8gPSAwLjAxNTtcbiAgICBjb25zdCByYW5kb21JbmNyZWFzZVJhdGlvID0gTWF0aC5yYW5kb20oKSAqIDIgKiBhdmVyYWdlSW5jcmVhc2VSYXRpbztcbiAgICB0aGlzLnZhbHVlICs9IHJhbmRvbUluY3JlYXNlUmF0aW8gKiByZW1haW5pbmdQZXJjZW50YWdlO1xuICAgIHRoaXMudXBkYXRlUGVyY2VudGFnZVZhbHVlKCk7XG4gICAgdGhpcy51cGRhdGVUZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSAnc2V0SW50ZXJ2YWwnIGZ1bmN0aW9uIHNvIHRoYXQgdGhlIGF1dG9tYXRpYyBpbmNyZWFzZSBvZiB0aGUgcHJvZ3Jlc3NiYXIgc3RvcHNcbiAgICovXG4gIHByaXZhdGUgc3RvcEF1dG9tYXRpY0luY3JlbWVudCgpIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWxJZCk7XG4gIH1cblxuICAvKipcbiAgICogUGVyaW9kaWNhbGx5IGNhbGxzIGEgZnVuY3Rpb24gd2hpY2ggaW5jcmVtZW50cyB0aGUgdmFsdWUgb2YgdGhlIHByb2dyZXNzYmFyXG4gICAqL1xuICBwcml2YXRlIHN0YXJ0QXV0b21hdGljSW5jcmVtZW50KCkge1xuICAgIHRoaXMuaW50ZXJ2YWxJZCA9IHNldEludGVydmFsKHRoaXMuaW5jcmVhc2VQZXJjZW50YWdlLmJpbmQodGhpcyksIDUwKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRQcm9ncmVzc0JhclZhbHVlcygpIHtcbiAgICB0aGlzLnZhbHVlID0gMDtcbiAgICB0aGlzLm1heFZhbHVlID0gMTAwO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZGlzcGxheVByb2dyZXNzQmFyXCI+XG4gIDxkaXYgKm5nSWY9XCJjb21wdXRlZFRleHRcIiBjbGFzcz1cInByb2dyZXNzYmFyLXRleHQgbWItMlwiPnt7IGNvbXB1dGVkVGV4dCB9fTwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW5maW5pdGVBbmltYXRpb247IGVsc2Ugd2l0aFZhbHVlXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwicHJvZ3Jlc3MtYmFyIGluZmluaXRlLWFuaW1hdGlvblwiXG4gICAgICAgIHJvbGU9XCJwcm9ncmVzc2JhclwiXG4gICAgICAgIGFyaWEtdmFsdWV0ZXh0PVwiaW5kZXRlcm1pbmF0ZVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSB8fCBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCIhYXJpYUxhYmVsbGVkQnkgJiYgYXJpYUxhYmVsID8gYXJpYUxhYmVsIDogbnVsbFwiXG4gICAgICA+PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICN3aXRoVmFsdWU+XG4gICAgICA8ZGl2XG4gICAgICAgIFtzdHlsZS53aWR0aC4lXT1cInBlcmNlbnRhZ2VWYWx1ZVwiXG4gICAgICAgIGNsYXNzPVwicHJvZ3Jlc3MtYmFyXCJcbiAgICAgICAgcm9sZT1cInByb2dyZXNzYmFyXCJcbiAgICAgICAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJ2YWx1ZVwiXG4gICAgICAgIGFyaWEtdmFsdWVtaW49XCIwXCJcbiAgICAgICAgW2F0dHIuYXJpYS12YWx1ZW1heF09XCJtYXhWYWx1ZVwiXG4gICAgICAgIFthdHRyLmFyaWEtdmFsdWV0ZXh0XT1cImNvbXB1dGVkVGV4dCA/IGNvbXB1dGVkVGV4dCA6IG51bGxcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnkgfHwgbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiIWFyaWFMYWJlbGxlZEJ5ICYmIGFyaWFMYWJlbCA/IGFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgPjwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { DfProgressbarComponent } from './progressbar.component';
3
+ import { NgbProgressbarModule } from '@ng-bootstrap/ng-bootstrap';
4
+ import * as i0 from "@angular/core";
5
+ export { DfProgressbarComponent } from './progressbar.component';
6
+ export class DfProgressbarModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarModule, imports: [DfProgressbarComponent], exports: [DfProgressbarComponent, NgbProgressbarModule] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarModule, imports: [DfProgressbarComponent, NgbProgressbarModule] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfProgressbarModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [DfProgressbarComponent],
15
+ exports: [DfProgressbarComponent, NgbProgressbarModule]
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3NiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUVsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU1qRSxNQUFNLE9BQU8sbUJBQW1COzhHQUFuQixtQkFBbUI7K0dBQW5CLG1CQUFtQixZQUhwQixzQkFBc0IsYUFDdEIsc0JBQXNCLEVBQUUsb0JBQW9COytHQUUzQyxtQkFBbUIsWUFIcEIsc0JBQXNCLEVBQ0Usb0JBQW9COzsyRkFFM0MsbUJBQW1CO2tCQUovQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztpQkFDeEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGZQcm9ncmVzc2JhckNvbXBvbmVudCB9IGZyb20gJy4vcHJvZ3Jlc3NiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5nYlByb2dyZXNzYmFyTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG5leHBvcnQgeyBEZlByb2dyZXNzYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzc2Jhci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbRGZQcm9ncmVzc2JhckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtEZlByb2dyZXNzYmFyQ29tcG9uZW50LCBOZ2JQcm9ncmVzc2Jhck1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgRGZQcm9ncmVzc2Jhck1vZHVsZSB7XG59XG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class DfDefaultSpinnerComponent {
6
+ constructor() {
7
+ this.isGlobalSpinner = false;
8
+ this.contentClass = 'spinner-border text-primary';
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDefaultSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfDefaultSpinnerComponent, isStandalone: true, selector: "df-default-spinner", inputs: { isGlobalSpinner: "isGlobalSpinner", contentClass: "contentClass", ariaLabel: "ariaLabel" }, ngImport: i0, template: "<div [ngClass]=\"contentClass\" [attr.role]=\"isGlobalSpinner ? 'alert' : 'status'\">\n <span class=\"visually-hidden\">\n <ng-container *ngIf=\"ariaLabel; else defaultAriaLabel\">{{ ariaLabel }}</ng-container>\n </span>\n</div>\n\n<ng-template #defaultAriaLabel>\n <ng-container i18n=\"@@df.progressindicator.default.spinner.ariaLabel\">Loading...</ng-container>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDefaultSpinnerComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'df-default-spinner', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div [ngClass]=\"contentClass\" [attr.role]=\"isGlobalSpinner ? 'alert' : 'status'\">\n <span class=\"visually-hidden\">\n <ng-container *ngIf=\"ariaLabel; else defaultAriaLabel\">{{ ariaLabel }}</ng-container>\n </span>\n</div>\n\n<ng-template #defaultAriaLabel>\n <ng-container i18n=\"@@df.progressindicator.default.spinner.ariaLabel\">Loading...</ng-container>\n</ng-template>\n" }]
16
+ }], propDecorators: { isGlobalSpinner: [{
17
+ type: Input
18
+ }], contentClass: [{
19
+ type: Input
20
+ }], ariaLabel: [{
21
+ type: Input
22
+ }] } });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1zcGlubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9kZWZhdWx0L2RlZmF1bHQtc3Bpbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvZGVmYXVsdC9kZWZhdWx0LXNwaW5uZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFTL0MsTUFBTSxPQUFPLHlCQUF5QjtJQVB0QztRQVFXLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLGlCQUFZLEdBQUcsNkJBQTZCLENBQUM7S0FFdkQ7OEdBSlkseUJBQXlCO2tHQUF6Qix5QkFBeUIsb0xDVnRDLHFZQVNBLDJDRERZLFlBQVk7OzJGQUVYLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBRWIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7OEJBR2QsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGYtZGVmYXVsdC1zcGlubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RlZmF1bHQtc3Bpbm5lci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBEZkRlZmF1bHRTcGlubmVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaXNHbG9iYWxTcGlubmVyID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNvbnRlbnRDbGFzcyA9ICdzcGlubmVyLWJvcmRlciB0ZXh0LXByaW1hcnknO1xuICBASW5wdXQoKSBhcmlhTGFiZWw/OiBzdHJpbmc7XG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cImNvbnRlbnRDbGFzc1wiIFthdHRyLnJvbGVdPVwiaXNHbG9iYWxTcGlubmVyID8gJ2FsZXJ0JyA6ICdzdGF0dXMnXCI+XG4gIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFyaWFMYWJlbDsgZWxzZSBkZWZhdWx0QXJpYUxhYmVsXCI+e3sgYXJpYUxhYmVsIH19PC9uZy1jb250YWluZXI+XG4gIDwvc3Bhbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRBcmlhTGFiZWw+XG4gIDxuZy1jb250YWluZXIgaTE4bj1cIkBAZGYucHJvZ3Jlc3NpbmRpY2F0b3IuZGVmYXVsdC5zcGlubmVyLmFyaWFMYWJlbFwiPkxvYWRpbmcuLi48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=