@wizishop/angular-components 0.0.168 → 14.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/angular-components.scss +6 -640
  2. package/{esm2015/lib/animations/in-out/in-out-x.animation.js → esm2020/lib/animations/in-out/in-out-x.animation.mjs} +0 -0
  3. package/{esm2015/lib/animations/in-out/in-out-y.animation.js → esm2020/lib/animations/in-out/in-out-y.animation.mjs} +0 -0
  4. package/esm2020/lib/components/alert/alert.component.mjs +30 -0
  5. package/esm2020/lib/components/alert-popup/alert-popup-module.mjs +21 -0
  6. package/esm2020/lib/components/alert-popup/alert-popup.component.mjs +41 -0
  7. package/esm2020/lib/components/alert-popup/alert-popup.service.mjs +30 -0
  8. package/esm2020/lib/components/back/back.component.mjs +12 -0
  9. package/esm2020/lib/components/block/block.component.mjs +44 -0
  10. package/esm2020/lib/components/button/button.component.mjs +155 -0
  11. package/esm2020/lib/components/calendar/calendar.component.mjs +196 -0
  12. package/esm2020/lib/components/checkbox/checkbox.component.mjs +70 -0
  13. package/esm2020/lib/components/checkbox/checkbox.module.mjs +25 -0
  14. package/esm2020/lib/components/delete/delete.component.mjs +12 -0
  15. package/esm2020/lib/components/dropdown/dropdown.component.mjs +26 -0
  16. package/esm2020/lib/components/edit-in-place/edit-in-place.component.mjs +202 -0
  17. package/{esm2015/lib/components/filters/filter-item.dto.js → esm2020/lib/components/filters/filter-item.dto.mjs} +0 -0
  18. package/esm2020/lib/components/filters/filters.component.mjs +41 -0
  19. package/esm2020/lib/components/free-popin/free-popin.component.mjs +63 -0
  20. package/esm2020/lib/components/header-page/header-page.component.mjs +24 -0
  21. package/esm2020/lib/components/hn/h1/h1.component.mjs +18 -0
  22. package/esm2020/lib/components/hn/h2/h2.component.mjs +13 -0
  23. package/esm2020/lib/components/hn/h3/h3.component.mjs +18 -0
  24. package/esm2020/lib/components/hn/h4/h4.component.mjs +18 -0
  25. package/esm2020/lib/components/image/image.component.mjs +17 -0
  26. package/esm2020/lib/components/info/info.component.mjs +12 -0
  27. package/esm2020/lib/components/inputs/input/input.component.mjs +162 -0
  28. package/esm2020/lib/components/inputs/input/input.module.mjs +37 -0
  29. package/esm2020/lib/components/inputs/input-search/input-search.component.mjs +54 -0
  30. package/esm2020/lib/components/inputs/input-search/input-search.module.mjs +33 -0
  31. package/esm2020/lib/components/inputs/input-with-select/input-with-select.component.mjs +62 -0
  32. package/{esm2015/lib/components/inputs/input-with-select/option-item.dto.js → esm2020/lib/components/inputs/input-with-select/option-item.dto.mjs} +0 -0
  33. package/esm2020/lib/components/label/label.component.mjs +34 -0
  34. package/esm2020/lib/components/link/link.component.mjs +51 -0
  35. package/esm2020/lib/components/loader/loader.component.mjs +20 -0
  36. package/esm2020/lib/components/loader/loader.module.mjs +25 -0
  37. package/esm2020/lib/components/logo/logo.component.mjs +20 -0
  38. package/esm2020/lib/components/multiple-search/multiple-search.component.mjs +115 -0
  39. package/esm2020/lib/components/multiple-search-plus/multiple-search-plus.component.mjs +93 -0
  40. package/{esm2015/lib/components/multiple-search-plus/shared/multiple-search-plus-option.model.js → esm2020/lib/components/multiple-search-plus/shared/multiple-search-plus-option.model.mjs} +0 -0
  41. package/{esm2015/lib/components/multiple-search-plus/shared/multiple-search-plus-results.model.js → esm2020/lib/components/multiple-search-plus/shared/multiple-search-plus-results.model.mjs} +0 -0
  42. package/esm2020/lib/components/pagination/pagination.component.mjs +50 -0
  43. package/esm2020/lib/components/pagination/pagination.module.mjs +33 -0
  44. package/esm2020/lib/components/pagination/pipes/array-pages.pipe.mjs +28 -0
  45. package/esm2020/lib/components/pagination/pipes/custom-text.pipe.mjs +34 -0
  46. package/esm2020/lib/components/pagination/pipes/is-last-page.pipe.mjs +25 -0
  47. package/esm2020/lib/components/popin/popin.component.mjs +67 -0
  48. package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +74 -0
  49. package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +25 -0
  50. package/esm2020/lib/components/radio/radio.component.mjs +57 -0
  51. package/esm2020/lib/components/search/search.component.mjs +86 -0
  52. package/{esm2015/lib/components/search/shared/search-option.model.js → esm2020/lib/components/search/shared/search-option.model.mjs} +0 -0
  53. package/esm2020/lib/components/selected-list/selected-list.component.mjs +62 -0
  54. package/{esm2015/lib/components/selected-list/shared/selected-list-option.model.js → esm2020/lib/components/selected-list/shared/selected-list-option.model.mjs} +0 -0
  55. package/{esm2015/lib/components/selects/call-to-action.model.js → esm2020/lib/components/selects/call-to-action.model.mjs} +0 -0
  56. package/esm2020/lib/components/selects/select/select.component.mjs +133 -0
  57. package/esm2020/lib/components/selects/select-in-text/select-in-text.component.mjs +102 -0
  58. package/{esm2015/lib/components/selects/select-items.dto.js → esm2020/lib/components/selects/select-items.dto.mjs} +0 -0
  59. package/esm2020/lib/components/separator/separator.component.mjs +17 -0
  60. package/esm2020/lib/components/settings/settings.component.mjs +12 -0
  61. package/esm2020/lib/components/shared-components.module.mjs +301 -0
  62. package/esm2020/lib/components/snackbar/snackbar.component.mjs +84 -0
  63. package/esm2020/lib/components/state/state.component.mjs +16 -0
  64. package/esm2020/lib/components/switch/switch.component.mjs +54 -0
  65. package/esm2020/lib/components/tab/tab.component.mjs +33 -0
  66. package/esm2020/lib/components/table/directives/checkBoxRow.directive.mjs +95 -0
  67. package/{esm2015/lib/components/table/directives/column.directive.js → esm2020/lib/components/table/directives/column.directive.mjs} +20 -17
  68. package/esm2020/lib/components/table/directives/columnHeader.directive.mjs +205 -0
  69. package/esm2020/lib/components/table/directives/raw.directive.mjs +30 -0
  70. package/esm2020/lib/components/table/shared/filters-table.service.mjs +68 -0
  71. package/esm2020/lib/components/table/shared/table-checkbox-id.service.mjs +20 -0
  72. package/{esm2015/lib/components/table/shared/table-filters-group.model.js → esm2020/lib/components/table/shared/table-filters-group.model.mjs} +0 -0
  73. package/{esm2015/lib/components/table/shared/table-filters.model.js → esm2020/lib/components/table/shared/table-filters.model.mjs} +0 -0
  74. package/esm2020/lib/components/table/table.component.mjs +147 -0
  75. package/esm2020/lib/components/table/table.module.mjs +46 -0
  76. package/esm2020/lib/components/tag/tag.component.mjs +35 -0
  77. package/esm2020/lib/components/text/text.component.mjs +15 -0
  78. package/esm2020/lib/components/text-area/text-area.component.mjs +73 -0
  79. package/esm2020/lib/components/tooltip/tooltip.component.mjs +30 -0
  80. package/esm2020/lib/components/tooltip/tooltip.module.mjs +25 -0
  81. package/esm2020/lib/components/tree/tree.component.mjs +23 -0
  82. package/{esm2015/lib/components/tree/tree.dto.js → esm2020/lib/components/tree/tree.dto.mjs} +0 -0
  83. package/esm2020/lib/components/tree/tree.module.mjs +29 -0
  84. package/esm2020/lib/components/upload/upload.component.mjs +36 -0
  85. package/esm2020/lib/components/wrapper/wrapper.component.mjs +18 -0
  86. package/esm2020/lib/components/wrapper-blocs/wrapper-blocs.component.mjs +19 -0
  87. package/esm2020/lib/directives/abstract-debounce/abstract-debounce.directive.mjs +37 -0
  88. package/esm2020/lib/directives/abstract-debounce/debounce-keyup.directive.mjs +24 -0
  89. package/esm2020/lib/directives/auto-hide/auto-hide.directive.mjs +50 -0
  90. package/esm2020/lib/directives/keyboard-events/keypress-enter.directive.mjs +25 -0
  91. package/esm2020/lib/directives/ng-var.directive.mjs +32 -0
  92. package/esm2020/lib/directives/shared-directives.module.mjs +25 -0
  93. package/esm2020/lib/directives/zindex-toggle/zindex-toggle.directive.mjs +44 -0
  94. package/esm2020/lib/pipes/select/select-filters.pipe.mjs +19 -0
  95. package/esm2020/lib/pipes/selected-list/are-all-options-selected.pipe.mjs +17 -0
  96. package/esm2020/lib/pipes/shared-pipes.module.mjs +29 -0
  97. package/esm2020/lib/pipes/tree/format-object-to-recursif-tree.pipe.mjs +41 -0
  98. package/esm2020/lib/pipes/tree/format-object-to-simple-tree.pipe.mjs +49 -0
  99. package/esm2020/lib/services/dom.service.mjs +59 -0
  100. package/esm2020/lib/services/multiple-selection.service.mjs +62 -0
  101. package/{esm2015/lib/utils/html-container.class.js → esm2020/lib/utils/html-container.class.mjs} +0 -0
  102. package/{esm2015/lib/utils/slection-item.interface.js → esm2020/lib/utils/slection-item.interface.mjs} +0 -0
  103. package/esm2020/lib/wizi-components.module.mjs +34 -0
  104. package/esm2020/public-api.mjs +90 -0
  105. package/esm2020/wizishop-angular-components.mjs +5 -0
  106. package/fesm2015/wizishop-angular-components.mjs +4224 -0
  107. package/fesm2015/wizishop-angular-components.mjs.map +1 -0
  108. package/fesm2020/wizishop-angular-components.mjs +4214 -0
  109. package/fesm2020/wizishop-angular-components.mjs.map +1 -0
  110. package/index.d.ts +5 -0
  111. package/lib/components/alert/alert.component.d.ts +3 -0
  112. package/lib/components/alert-popup/alert-popup-module.d.ts +6 -0
  113. package/lib/components/alert-popup/alert-popup.component.d.ts +3 -0
  114. package/lib/components/alert-popup/alert-popup.service.d.ts +3 -0
  115. package/lib/components/back/back.component.d.ts +3 -0
  116. package/lib/components/block/block.component.d.ts +3 -0
  117. package/lib/components/button/button.component.d.ts +3 -2
  118. package/lib/components/calendar/calendar.component.d.ts +3 -0
  119. package/lib/components/checkbox/checkbox.component.d.ts +3 -0
  120. package/lib/components/checkbox/checkbox.module.d.ts +7 -0
  121. package/lib/components/delete/delete.component.d.ts +3 -0
  122. package/lib/components/dropdown/dropdown.component.d.ts +3 -0
  123. package/lib/components/edit-in-place/edit-in-place.component.d.ts +3 -0
  124. package/lib/components/filters/filters.component.d.ts +3 -0
  125. package/lib/components/free-popin/free-popin.component.d.ts +3 -0
  126. package/lib/components/header-page/header-page.component.d.ts +3 -1
  127. package/lib/components/hn/h1/h1.component.d.ts +3 -2
  128. package/lib/components/hn/h2/h2.component.d.ts +3 -0
  129. package/lib/components/hn/h3/h3.component.d.ts +3 -0
  130. package/lib/components/hn/h4/h4.component.d.ts +3 -0
  131. package/lib/components/image/image.component.d.ts +4 -1
  132. package/lib/components/info/info.component.d.ts +3 -0
  133. package/lib/components/inputs/input/input.component.d.ts +4 -1
  134. package/lib/components/inputs/input/input.module.d.ts +10 -0
  135. package/lib/components/inputs/input-search/input-search.component.d.ts +3 -0
  136. package/lib/components/inputs/input-search/input-search.module.d.ts +9 -0
  137. package/lib/components/inputs/input-with-select/input-with-select.component.d.ts +3 -0
  138. package/lib/components/label/label.component.d.ts +3 -0
  139. package/lib/components/link/link.component.d.ts +3 -0
  140. package/lib/components/loader/loader.component.d.ts +3 -0
  141. package/lib/components/loader/loader.module.d.ts +7 -0
  142. package/lib/components/logo/logo.component.d.ts +5 -2
  143. package/lib/components/multiple-search/multiple-search.component.d.ts +4 -1
  144. package/lib/components/multiple-search-plus/multiple-search-plus.component.d.ts +3 -0
  145. package/lib/components/pagination/pagination.component.d.ts +3 -0
  146. package/lib/components/pagination/pagination.module.d.ts +11 -0
  147. package/lib/components/pagination/pipes/array-pages.pipe.d.ts +3 -0
  148. package/lib/components/pagination/pipes/custom-text.pipe.d.ts +3 -0
  149. package/lib/components/pagination/pipes/is-last-page.pipe.d.ts +3 -0
  150. package/lib/components/popin/popin.component.d.ts +3 -0
  151. package/lib/components/progress-bar/progress-bar.component.d.ts +3 -0
  152. package/lib/components/progress-bar/progress-bar.module.d.ts +7 -0
  153. package/lib/components/radio/radio.component.d.ts +4 -1
  154. package/lib/components/search/search.component.d.ts +3 -0
  155. package/lib/components/selected-list/selected-list.component.d.ts +3 -0
  156. package/lib/components/selects/select/select.component.d.ts +3 -0
  157. package/lib/components/selects/select-in-text/select-in-text.component.d.ts +4 -1
  158. package/lib/components/separator/separator.component.d.ts +3 -0
  159. package/lib/components/settings/settings.component.d.ts +3 -0
  160. package/lib/components/shared-components.module.d.ts +78 -0
  161. package/lib/components/snackbar/snackbar.component.d.ts +3 -0
  162. package/lib/components/state/state.component.d.ts +3 -0
  163. package/lib/components/switch/switch.component.d.ts +4 -1
  164. package/lib/components/tab/tab.component.d.ts +3 -0
  165. package/lib/components/table/directives/checkBoxRow.directive.d.ts +3 -0
  166. package/lib/components/table/directives/column.directive.d.ts +3 -0
  167. package/lib/components/table/directives/columnHeader.directive.d.ts +3 -0
  168. package/lib/components/table/directives/raw.directive.d.ts +3 -0
  169. package/lib/components/table/shared/filters-table.service.d.ts +3 -0
  170. package/lib/components/table/shared/table-checkbox-id.service.d.ts +3 -0
  171. package/lib/components/table/table.component.d.ts +3 -0
  172. package/lib/components/table/table.module.d.ts +15 -0
  173. package/lib/components/tag/tag.component.d.ts +3 -0
  174. package/lib/components/text/text.component.d.ts +3 -0
  175. package/lib/components/text-area/text-area.component.d.ts +3 -2
  176. package/lib/components/tooltip/tooltip.component.d.ts +3 -0
  177. package/lib/components/tooltip/tooltip.module.d.ts +7 -0
  178. package/lib/components/tree/tree.component.d.ts +3 -0
  179. package/lib/components/tree/tree.module.d.ts +8 -0
  180. package/lib/components/upload/upload.component.d.ts +3 -0
  181. package/lib/components/wrapper/wrapper.component.d.ts +3 -0
  182. package/lib/components/wrapper-blocs/wrapper-blocs.component.d.ts +3 -0
  183. package/lib/directives/abstract-debounce/abstract-debounce.directive.d.ts +3 -0
  184. package/lib/directives/abstract-debounce/debounce-keyup.directive.d.ts +3 -0
  185. package/lib/directives/auto-hide/auto-hide.directive.d.ts +3 -0
  186. package/lib/directives/keyboard-events/keypress-enter.directive.d.ts +3 -0
  187. package/lib/directives/ng-var.directive.d.ts +3 -0
  188. package/lib/directives/shared-directives.module.d.ts +12 -0
  189. package/lib/directives/zindex-toggle/zindex-toggle.directive.d.ts +3 -0
  190. package/lib/pipes/select/select-filters.pipe.d.ts +3 -0
  191. package/lib/pipes/selected-list/are-all-options-selected.pipe.d.ts +3 -0
  192. package/lib/pipes/shared-pipes.module.d.ts +10 -0
  193. package/lib/pipes/tree/format-object-to-recursif-tree.pipe.d.ts +3 -0
  194. package/lib/pipes/tree/format-object-to-simple-tree.pipe.d.ts +3 -0
  195. package/lib/services/dom.service.d.ts +3 -0
  196. package/lib/services/multiple-selection.service.d.ts +3 -0
  197. package/lib/wizi-components.module.d.ts +9 -0
  198. package/package.json +20 -8
  199. package/public-api.d.ts +0 -7
  200. package/wizishop-angular-components-14.0.3.tgz +0 -0
  201. package/bundles/wizishop-angular-components.umd.js +0 -4684
  202. package/bundles/wizishop-angular-components.umd.js.map +0 -1
  203. package/bundles/wizishop-angular-components.umd.min.js +0 -16
  204. package/bundles/wizishop-angular-components.umd.min.js.map +0 -1
  205. package/esm2015/lib/components/alert/alert.component.js +0 -26
  206. package/esm2015/lib/components/alert-popup/alert-popup-module.js +0 -16
  207. package/esm2015/lib/components/alert-popup/alert-popup.component.js +0 -41
  208. package/esm2015/lib/components/alert-popup/alert-popup.service.js +0 -30
  209. package/esm2015/lib/components/back/back.component.js +0 -12
  210. package/esm2015/lib/components/block/block.component.js +0 -35
  211. package/esm2015/lib/components/block-with-checkbox/block-with-checkbox.component.js +0 -51
  212. package/esm2015/lib/components/breadcrumbs/breadcrumbs.component.js +0 -25
  213. package/esm2015/lib/components/breadcrumbs/breadcrumbs.dto.js +0 -2
  214. package/esm2015/lib/components/button/button.component.js +0 -134
  215. package/esm2015/lib/components/calendar/calendar.component.js +0 -185
  216. package/esm2015/lib/components/card-price/card-price.component.js +0 -37
  217. package/esm2015/lib/components/checkbox/checkbox.component.js +0 -62
  218. package/esm2015/lib/components/checkbox/checkbox.module.js +0 -18
  219. package/esm2015/lib/components/confirm-delete/confirm-delete.component.js +0 -36
  220. package/esm2015/lib/components/delete/delete.component.js +0 -12
  221. package/esm2015/lib/components/dropdown/dropdown.component.js +0 -24
  222. package/esm2015/lib/components/edit-in-place/edit-in-place.component.js +0 -190
  223. package/esm2015/lib/components/filters/filters.component.js +0 -39
  224. package/esm2015/lib/components/free-popin/free-popin.component.js +0 -55
  225. package/esm2015/lib/components/header-page/header-page.component.js +0 -22
  226. package/esm2015/lib/components/hn/h1/h1.component.js +0 -22
  227. package/esm2015/lib/components/hn/h2/h2.component.js +0 -13
  228. package/esm2015/lib/components/hn/h3/h3.component.js +0 -18
  229. package/esm2015/lib/components/hn/h4/h4.component.js +0 -18
  230. package/esm2015/lib/components/image/image.component.js +0 -15
  231. package/esm2015/lib/components/info/info.component.js +0 -12
  232. package/esm2015/lib/components/inputs/input/input.component.js +0 -128
  233. package/esm2015/lib/components/inputs/input/input.module.js +0 -24
  234. package/esm2015/lib/components/inputs/input-search/input-search.component.js +0 -49
  235. package/esm2015/lib/components/inputs/input-search/input-search.module.js +0 -22
  236. package/esm2015/lib/components/inputs/input-with-select/input-with-select.component.js +0 -54
  237. package/esm2015/lib/components/label/label.component.js +0 -33
  238. package/esm2015/lib/components/link/link.component.js +0 -48
  239. package/esm2015/lib/components/loader/loader.component.js +0 -19
  240. package/esm2015/lib/components/loader/loader.module.js +0 -18
  241. package/esm2015/lib/components/logo/logo.component.js +0 -17
  242. package/esm2015/lib/components/mosaic/mosaic.component.js +0 -47
  243. package/esm2015/lib/components/multiple-search/multiple-search.component.js +0 -113
  244. package/esm2015/lib/components/multiple-search-plus/multiple-search-plus.component.js +0 -83
  245. package/esm2015/lib/components/pagination/pagination.component.js +0 -44
  246. package/esm2015/lib/components/pagination/pagination.module.js +0 -24
  247. package/esm2015/lib/components/pagination/pipes/array-pages.pipe.js +0 -24
  248. package/esm2015/lib/components/pagination/pipes/custom-text.pipe.js +0 -33
  249. package/esm2015/lib/components/pagination/pipes/is-last-page.pipe.js +0 -21
  250. package/esm2015/lib/components/popin/popin.component.js +0 -56
  251. package/esm2015/lib/components/progress-bar/progress-bar.component.js +0 -74
  252. package/esm2015/lib/components/progress-bar/progress-bar.module.js +0 -18
  253. package/esm2015/lib/components/radio/radio.component.js +0 -51
  254. package/esm2015/lib/components/search/search.component.js +0 -75
  255. package/esm2015/lib/components/selected-list/selected-list.component.js +0 -51
  256. package/esm2015/lib/components/selects/select/select.component.js +0 -117
  257. package/esm2015/lib/components/selects/select-in-text/select-in-text.component.js +0 -89
  258. package/esm2015/lib/components/separator/separator.component.js +0 -18
  259. package/esm2015/lib/components/settings/settings.component.js +0 -13
  260. package/esm2015/lib/components/shared-components.module.js +0 -181
  261. package/esm2015/lib/components/snackbar/snackbar.component.js +0 -63
  262. package/esm2015/lib/components/state/state.component.js +0 -18
  263. package/esm2015/lib/components/switch/switch.component.js +0 -44
  264. package/esm2015/lib/components/tab/tab.component.js +0 -30
  265. package/esm2015/lib/components/table/directives/checkBoxRow.directive.js +0 -92
  266. package/esm2015/lib/components/table/directives/columnHeader.directive.js +0 -192
  267. package/esm2015/lib/components/table/directives/raw.directive.js +0 -29
  268. package/esm2015/lib/components/table/shared/filters-table.service.js +0 -70
  269. package/esm2015/lib/components/table/shared/table-checkbox-id.service.js +0 -18
  270. package/esm2015/lib/components/table/table.component.js +0 -130
  271. package/esm2015/lib/components/table/table.module.js +0 -31
  272. package/esm2015/lib/components/tag/tag.component.js +0 -30
  273. package/esm2015/lib/components/text/text.component.js +0 -16
  274. package/esm2015/lib/components/text-area/text-area.component.js +0 -67
  275. package/esm2015/lib/components/token-check/token-check.component.js +0 -21
  276. package/esm2015/lib/components/tooltip/tooltip.component.js +0 -27
  277. package/esm2015/lib/components/tooltip/tooltip.module.js +0 -18
  278. package/esm2015/lib/components/tree/tree.component.js +0 -20
  279. package/esm2015/lib/components/tree/tree.module.js +0 -20
  280. package/esm2015/lib/components/upload/upload.component.js +0 -31
  281. package/esm2015/lib/components/wrapper/wrapper.component.js +0 -18
  282. package/esm2015/lib/components/wrapper-blocs/wrapper-blocs.component.js +0 -19
  283. package/esm2015/lib/components/wrapper-sidebar/wrapper-sidebar.component.js +0 -19
  284. package/esm2015/lib/directives/abstract-debounce/abstract-debounce.directive.js +0 -34
  285. package/esm2015/lib/directives/abstract-debounce/debounce-keyup.directive.js +0 -21
  286. package/esm2015/lib/directives/auto-hide/auto-hide.directive.js +0 -48
  287. package/esm2015/lib/directives/keyboard-events/keypress-enter.directive.js +0 -21
  288. package/esm2015/lib/directives/ng-var.directive.js +0 -33
  289. package/esm2015/lib/directives/shared-directives.module.js +0 -20
  290. package/esm2015/lib/directives/zindex-toggle/zindex-toggle.directive.js +0 -43
  291. package/esm2015/lib/pipes/select/select-filters.pipe.js +0 -15
  292. package/esm2015/lib/pipes/selected-list/are-all-options-selected.pipe.js +0 -13
  293. package/esm2015/lib/pipes/shared-pipes.module.js +0 -22
  294. package/esm2015/lib/pipes/tree/format-object-to-recursif-tree.pipe.js +0 -37
  295. package/esm2015/lib/pipes/tree/format-object-to-simple-tree.pipe.js +0 -45
  296. package/esm2015/lib/services/dom.service.js +0 -64
  297. package/esm2015/lib/services/multiple-selection.service.js +0 -61
  298. package/esm2015/lib/wizi-components.module.js +0 -21
  299. package/esm2015/public-api.js +0 -97
  300. package/esm2015/wizishop-angular-components.js +0 -21
  301. package/fesm2015/wizishop-angular-components.js +0 -4041
  302. package/fesm2015/wizishop-angular-components.js.map +0 -1
  303. package/lib/components/block-with-checkbox/block-with-checkbox.component.d.ts +0 -19
  304. package/lib/components/breadcrumbs/breadcrumbs.component.d.ts +0 -10
  305. package/lib/components/breadcrumbs/breadcrumbs.dto.d.ts +0 -5
  306. package/lib/components/card-price/card-price.component.d.ts +0 -18
  307. package/lib/components/confirm-delete/confirm-delete.component.d.ts +0 -14
  308. package/lib/components/mosaic/mosaic.component.d.ts +0 -21
  309. package/lib/components/token-check/token-check.component.d.ts +0 -9
  310. package/lib/components/wrapper-sidebar/wrapper-sidebar.component.d.ts +0 -6
  311. package/wizishop-angular-components-0.0.168.tgz +0 -0
  312. package/wizishop-angular-components.d.ts +0 -20
  313. package/wizishop-angular-components.metadata.json +0 -1
@@ -0,0 +1,4224 @@
1
+ import * as i1$2 from '@wizishop/ng-wizi-bulma';
2
+ import { NwbAllModule, NwbFilterGroup } from '@wizishop/ng-wizi-bulma';
3
+ import * as i0 from '@angular/core';
4
+ import { Component, ViewEncapsulation, Input, EventEmitter, Directive, Output, HostListener, Injectable, NgModule, Inject, Pipe, ContentChildren, ViewChild } from '@angular/core';
5
+ import * as i1 from '@angular/common';
6
+ import { CommonModule, DOCUMENT } from '@angular/common';
7
+ import * as i2 from '@angular/forms';
8
+ import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
9
+ import * as i4 from 'ngx-perfect-scrollbar';
10
+ import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';
11
+ import { Subject, merge, fromEvent, ReplaySubject, interval } from 'rxjs';
12
+ import { takeUntil, debounceTime, distinctUntilChanged, tap, map, takeWhile } from 'rxjs/operators';
13
+ import * as i1$1 from '@angular/cdk/overlay';
14
+ import { CdkTableModule } from '@angular/cdk/table';
15
+ import { trigger, transition, style, animate, state } from '@angular/animations';
16
+ import { TagInputModule } from 'ngx-chips';
17
+ import * as i1$3 from '@ngx-translate/core';
18
+ import { TranslateModule } from '@ngx-translate/core';
19
+ import * as i2$1 from '@angular/router';
20
+ import { RouterModule } from '@angular/router';
21
+
22
+ class LoaderComponent {
23
+ constructor() {
24
+ this.text = '';
25
+ this.small = false;
26
+ }
27
+ }
28
+ LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: LoaderComponent, selector: "wac-loader", inputs: { text: "text", small: "small" }, ngImport: i0, template: "<div class=\"wac-loader\" [ngClass]=\"{ 'is-small': small }\">\n <div class=\"loader loader1\">\n <div>\n <div>\n <div>\n <div>\n <div>\n <div></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"is-textcentered\" *ngIf=\"text != ''\" [innerHTML]=\"text\"></p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoaderComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'wac-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-loader\" [ngClass]=\"{ 'is-small': small }\">\n <div class=\"loader loader1\">\n <div>\n <div>\n <div>\n <div>\n <div>\n <div></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"is-textcentered\" *ngIf=\"text != ''\" [innerHTML]=\"text\"></p>\n</div>\n" }]
33
+ }], propDecorators: { text: [{
34
+ type: Input
35
+ }], small: [{
36
+ type: Input
37
+ }] } });
38
+
39
+ class AbstractDebounceDirective {
40
+ constructor() {
41
+ this.debounceTime = 500;
42
+ this.onEventChange = new EventEmitter();
43
+ this.emitEvent$ = new Subject();
44
+ this.subscription$ = new Subject();
45
+ }
46
+ ngOnInit() {
47
+ this.emitEvent$
48
+ .pipe(takeUntil(this.subscription$), debounceTime(this.debounceTime), distinctUntilChanged(), tap(value => this.emitChange(value)))
49
+ .subscribe();
50
+ }
51
+ emitChange(value) {
52
+ this.onEventChange.emit(value);
53
+ }
54
+ ngOnDestroy() {
55
+ this.subscription$.next();
56
+ this.subscription$.complete();
57
+ }
58
+ }
59
+ AbstractDebounceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AbstractDebounceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
60
+ AbstractDebounceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: AbstractDebounceDirective, selector: "AbstractDebounceDirective", inputs: { debounceTime: "debounceTime" }, outputs: { onEventChange: "onEventChange" }, ngImport: i0 });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AbstractDebounceDirective, decorators: [{
62
+ type: Directive,
63
+ args: [{
64
+ selector: 'AbstractDebounceDirective'
65
+ }]
66
+ }], ctorParameters: function () { return []; }, propDecorators: { debounceTime: [{
67
+ type: Input
68
+ }], onEventChange: [{
69
+ type: Output
70
+ }] } });
71
+
72
+ class DebounceKeyupDirective extends AbstractDebounceDirective {
73
+ constructor() {
74
+ super();
75
+ }
76
+ onKeyUp(event) {
77
+ event.preventDefault();
78
+ this.emitEvent$.next(event);
79
+ }
80
+ }
81
+ DebounceKeyupDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DebounceKeyupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
82
+ DebounceKeyupDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]", host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DebounceKeyupDirective, decorators: [{
84
+ type: Directive,
85
+ args: [{
86
+ selector: 'input[debounceKeyUp]'
87
+ }]
88
+ }], ctorParameters: function () { return []; }, propDecorators: { onKeyUp: [{
89
+ type: HostListener,
90
+ args: ['keyup', ['$event']]
91
+ }] } });
92
+
93
+ class InputSearchComponent {
94
+ constructor() {
95
+ this.placeholder = '';
96
+ this.smallPadding = false; // todo Try to be more flexible like changing type : export type PaddingConfig = "default" | "small" | "big" | "no-padding";
97
+ this.innerValue = '';
98
+ this.changeDebounced = new EventEmitter(); // debounced
99
+ this.onTouchedCallback = () => { };
100
+ this.onChangeCallback = () => { };
101
+ }
102
+ get value() {
103
+ return this.innerValue;
104
+ }
105
+ set value(v) {
106
+ if (v !== this.innerValue) {
107
+ this.innerValue = v;
108
+ this.onChangeCallback(v);
109
+ }
110
+ }
111
+ writeValue(value) {
112
+ if (value !== this.innerValue) {
113
+ this.innerValue = value;
114
+ }
115
+ }
116
+ registerOnChange(fn) {
117
+ this.onChangeCallback = fn;
118
+ }
119
+ registerOnTouched(fn) {
120
+ this.onTouchedCallback = fn;
121
+ }
122
+ handleDebouncedKeyUp() {
123
+ this.changeDebounced.emit(this.value);
124
+ }
125
+ }
126
+ InputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
+ InputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: InputSearchComponent, selector: "wac-input-search", inputs: { placeholder: "placeholder", smallPadding: "smallPadding", id: "id" }, outputs: { changeDebounced: "changeDebounced" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-input-search\" [ngClass]=\"smallPadding ? 'small-padding' : ''\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]" }] });
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputSearchComponent, decorators: [{
129
+ type: Component,
130
+ args: [{ selector: 'wac-input-search', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], template: "<div class=\"wac-field-input-search\" [ngClass]=\"smallPadding ? 'small-padding' : ''\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n" }]
131
+ }], propDecorators: { placeholder: [{
132
+ type: Input
133
+ }], smallPadding: [{
134
+ type: Input
135
+ }], id: [{
136
+ type: Input
137
+ }], changeDebounced: [{
138
+ type: Output
139
+ }] } });
140
+
141
+ class DomService {
142
+ constructor(componentFactoryResolver, appRef, injector, overlayContainer) {
143
+ this.componentFactoryResolver = componentFactoryResolver;
144
+ this.appRef = appRef;
145
+ this.injector = injector;
146
+ this.overlayContainer = overlayContainer;
147
+ this.documentEventSource = new Subject();
148
+ this.documentEventDone = this.documentEventSource.asObservable();
149
+ this.eventInitialisation = true;
150
+ this.documentScrollSource = new Subject();
151
+ this.documentScrollDone = this.documentScrollSource.asObservable();
152
+ }
153
+ documentEvent() {
154
+ this.setDocumentEventListener();
155
+ return this.documentEventDone;
156
+ }
157
+ setDocumentEventListener() {
158
+ if (!this.eventInitialisation) {
159
+ return;
160
+ }
161
+ this.eventInitialisation = false;
162
+ document.body.addEventListener('click', event => {
163
+ this.documentEventSource.next(event.target);
164
+ });
165
+ }
166
+ documentScroll() {
167
+ return this.documentScrollDone;
168
+ }
169
+ setScrollEventListener() {
170
+ window.onscroll = () => {
171
+ this.documentScrollSource.next(window);
172
+ };
173
+ }
174
+ attachComponentPortal(component, injector) {
175
+ const componentRef = this.componentFactoryResolver
176
+ .resolveComponentFactory(component)
177
+ .create(injector ? injector : this.injector);
178
+ this.appRef.attachView(componentRef.hostView);
179
+ this.overlayContainer.getContainerElement().appendChild(this._getComponentRootNode(componentRef));
180
+ return componentRef;
181
+ }
182
+ /** Gets the root HTMLElement for an instantiated component. */
183
+ _getComponentRootNode(componentRef) {
184
+ return componentRef.hostView.rootNodes[0];
185
+ }
186
+ }
187
+ DomService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DomService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }, { token: i1$1.OverlayContainer }], target: i0.ɵɵFactoryTarget.Injectable });
188
+ DomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DomService, providedIn: 'root' });
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DomService, decorators: [{
190
+ type: Injectable,
191
+ args: [{
192
+ providedIn: 'root'
193
+ }]
194
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i0.Injector }, { type: i1$1.OverlayContainer }]; } });
195
+
196
+ class AutoHideDirective {
197
+ constructor(_elementRef, domService) {
198
+ this._elementRef = _elementRef;
199
+ this.domService = domService;
200
+ this.forceOn = null;
201
+ this.clickOutside = new EventEmitter();
202
+ }
203
+ ngAfterViewInit() {
204
+ this.subscription = this.domService.documentEvent().subscribe((targetElement) => {
205
+ const clickedInside = this._elementRef.nativeElement.contains(targetElement);
206
+ const classNameFromElement = targetElement.getAttribute('class');
207
+ if (!clickedInside && (classNameFromElement === null || !classNameFromElement.includes(this.triggerElement))) {
208
+ this.clickOutside.emit(null);
209
+ }
210
+ if (this.forceOn != null && classNameFromElement !== null) {
211
+ let needToClose = true;
212
+ this.forceOn.forEach(v => {
213
+ if (!classNameFromElement.includes(v)) {
214
+ needToClose = false;
215
+ }
216
+ });
217
+ if (needToClose) {
218
+ this.clickOutside.emit(null);
219
+ }
220
+ }
221
+ });
222
+ }
223
+ ngOnDestroy() {
224
+ this.subscription.unsubscribe();
225
+ }
226
+ }
227
+ AutoHideDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AutoHideDirective, deps: [{ token: i0.ElementRef }, { token: DomService }], target: i0.ɵɵFactoryTarget.Directive });
228
+ AutoHideDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: { triggerElement: "triggerElement", forceOn: "forceOn" }, outputs: { clickOutside: "clickOutside" }, ngImport: i0 });
229
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AutoHideDirective, decorators: [{
230
+ type: Directive,
231
+ args: [{
232
+ selector: '[wzAutoHide]'
233
+ }]
234
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: DomService }]; }, propDecorators: { triggerElement: [{
235
+ type: Input
236
+ }], forceOn: [{
237
+ type: Input
238
+ }], clickOutside: [{
239
+ type: Output,
240
+ args: ['clickOutside']
241
+ }] } });
242
+
243
+ class ZindexToggleDirective {
244
+ constructor(currentElement, renderer) {
245
+ this.currentElement = currentElement;
246
+ this.renderer = renderer;
247
+ this.isActived = false;
248
+ }
249
+ set isActive(value) {
250
+ this.isActived = value;
251
+ this.switchToggle();
252
+ }
253
+ get isActive() {
254
+ return this.isActived;
255
+ }
256
+ ngOnInit() {
257
+ }
258
+ switchToggle() {
259
+ if (this.isActived) {
260
+ this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');
261
+ this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');
262
+ }
263
+ else {
264
+ this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');
265
+ this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');
266
+ }
267
+ }
268
+ ngOnDestroy() {
269
+ }
270
+ }
271
+ ZindexToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ZindexToggleDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
272
+ ZindexToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: { isActive: ["zIndexToggle", "isActive"] }, outputs: { onEventChange: "onEventChange" }, ngImport: i0 });
273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ZindexToggleDirective, decorators: [{
274
+ type: Directive,
275
+ args: [{
276
+ selector: '[zIndexToggle]'
277
+ }]
278
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { onEventChange: [{
279
+ type: Output
280
+ }], isActive: [{
281
+ type: Input,
282
+ args: ['zIndexToggle']
283
+ }] } });
284
+
285
+ class VarDirective {
286
+ constructor(templateRef, vcRef) {
287
+ this.templateRef = templateRef;
288
+ this.vcRef = vcRef;
289
+ this.context = {
290
+ $implicit: null,
291
+ ngVar: null,
292
+ };
293
+ this.hasView = false;
294
+ }
295
+ // https://stackoverflow.com/questions/38582293/how-to-declare-a-variable-in-a-template-in-angular
296
+ set ngVar(context) {
297
+ this.context.$implicit = this.context.ngVar = context;
298
+ if (!this.hasView) {
299
+ this.vcRef.createEmbeddedView(this.templateRef, this.context);
300
+ this.hasView = true;
301
+ }
302
+ }
303
+ }
304
+ VarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: VarDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
305
+ VarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: VarDirective, selector: "[ngVar]", inputs: { ngVar: "ngVar" }, ngImport: i0 });
306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: VarDirective, decorators: [{
307
+ type: Directive,
308
+ args: [{
309
+ selector: '[ngVar]',
310
+ }]
311
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; }, propDecorators: { ngVar: [{
312
+ type: Input
313
+ }] } });
314
+
315
+ class KeypressEnterDirective {
316
+ constructor() {
317
+ this.KEYPRESS_ENTER = "Enter";
318
+ this.keypressEnter = new EventEmitter();
319
+ }
320
+ onKeypress(event) {
321
+ if (event.key === this.KEYPRESS_ENTER) {
322
+ this.keypressEnter.next(true);
323
+ }
324
+ }
325
+ }
326
+ KeypressEnterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: KeypressEnterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
327
+ KeypressEnterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: KeypressEnterDirective, selector: "[keypressEnter]", outputs: { keypressEnter: "keypressEnter" }, host: { listeners: { "keypress": "onKeypress($event)" } }, ngImport: i0 });
328
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: KeypressEnterDirective, decorators: [{
329
+ type: Directive,
330
+ args: [{ selector: '[keypressEnter]' }]
331
+ }], ctorParameters: function () { return []; }, propDecorators: { onKeypress: [{
332
+ type: HostListener,
333
+ args: ['keypress', ['$event']]
334
+ }], keypressEnter: [{
335
+ type: Output
336
+ }] } });
337
+
338
+ const directives$1 = [DebounceKeyupDirective, AbstractDebounceDirective, AutoHideDirective, ZindexToggleDirective, VarDirective, KeypressEnterDirective];
339
+ class SharedDirectives {
340
+ }
341
+ SharedDirectives.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedDirectives, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
342
+ SharedDirectives.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: SharedDirectives, declarations: [DebounceKeyupDirective, AbstractDebounceDirective, AutoHideDirective, ZindexToggleDirective, VarDirective, KeypressEnterDirective], imports: [CommonModule, FormsModule], exports: [DebounceKeyupDirective, AbstractDebounceDirective, AutoHideDirective, ZindexToggleDirective, VarDirective, KeypressEnterDirective] });
343
+ SharedDirectives.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedDirectives, imports: [CommonModule, FormsModule] });
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedDirectives, decorators: [{
345
+ type: NgModule,
346
+ args: [{
347
+ imports: [CommonModule, FormsModule],
348
+ declarations: directives$1,
349
+ exports: directives$1
350
+ }]
351
+ }] });
352
+
353
+ const inOutY = trigger('inOutYAnimation', [
354
+ transition(':enter', [
355
+ style({ transform: 'scaleY(0)', height: 0, opacity: 0 }),
356
+ animate('.3s ease-out', style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }))
357
+ ]),
358
+ transition(':leave', [
359
+ style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }),
360
+ animate('.3s ease-in', style({ transform: 'scaleY(0)', height: 0, opacity: 0 }))
361
+ ])
362
+ ]);
363
+
364
+ class CheckboxComponent {
365
+ constructor() {
366
+ this.label = '';
367
+ this.alone = false;
368
+ this.checked = false;
369
+ this.hasInput = false;
370
+ this.inputPlaceholder = '';
371
+ this.id = '';
372
+ this.whiteSpace = true;
373
+ this.disabled = false;
374
+ }
375
+ registerOnChange(fn) {
376
+ this._onChange = fn;
377
+ }
378
+ registerOnTouched(fn) {
379
+ this._onTouched = fn;
380
+ }
381
+ setDisabledState(isDisabled) {
382
+ this.disabled = isDisabled;
383
+ }
384
+ writeValue(obj) {
385
+ this.value = obj;
386
+ }
387
+ onChange(value) {
388
+ if (this._onChange) {
389
+ this._onChange(value);
390
+ }
391
+ }
392
+ onTextInputChange(value) {
393
+ if (this._onTextInputChange) {
394
+ this._onTextInputChange(value);
395
+ }
396
+ }
397
+ inputClick($event) {
398
+ $event.stopPropagation();
399
+ }
400
+ }
401
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
402
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CheckboxComponent, selector: "wac-checkbox", inputs: { label: "label", value: "value", type: "type", alone: "alone", checked: "checked", hasInput: "hasInput", inputPlaceholder: "inputPlaceholder", id: "id", name: "name", whiteSpace: "whiteSpace" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'wac-field-checkbox--nowrap': type === 'column', 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <input\n type=\"checkbox\"\n [id]=\"id\"\n class=\"is-checkradio\"\n [name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"value\"\n [checked]=\"checked\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [inOutY] });
403
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckboxComponent, decorators: [{
404
+ type: Component,
405
+ args: [{ selector: 'wac-checkbox', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], animations: [inOutY], template: "<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'wac-field-checkbox--nowrap': type === 'column', 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <input\n type=\"checkbox\"\n [id]=\"id\"\n class=\"is-checkradio\"\n [name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"value\"\n [checked]=\"checked\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n" }]
406
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
407
+ type: Input
408
+ }], value: [{
409
+ type: Input
410
+ }], type: [{
411
+ type: Input
412
+ }], alone: [{
413
+ type: Input
414
+ }], checked: [{
415
+ type: Input
416
+ }], hasInput: [{
417
+ type: Input
418
+ }], inputPlaceholder: [{
419
+ type: Input
420
+ }], id: [{
421
+ type: Input
422
+ }], name: [{
423
+ type: Input
424
+ }], whiteSpace: [{
425
+ type: Input
426
+ }] } });
427
+
428
+ class HtmlContainer {
429
+ constructor(hostElement, appRef, componentFactoryResolver, injector) {
430
+ this.hostElement = hostElement;
431
+ this.appRef = appRef;
432
+ this.componentFactoryResolver = componentFactoryResolver;
433
+ this.injector = injector;
434
+ this.attached = false;
435
+ }
436
+ attach(component) {
437
+ if (this.attached) {
438
+ throw new Error('component has already been attached');
439
+ }
440
+ this.attached = true;
441
+ const childComponentFactory = this.componentFactoryResolver.resolveComponentFactory(component);
442
+ let componentRef = childComponentFactory.create(this.injector);
443
+ this.appRef.attachView(componentRef.hostView);
444
+ this.disposeFn = () => {
445
+ this.appRef.detachView(componentRef.hostView);
446
+ componentRef.destroy();
447
+ };
448
+ this.hostElement.appendChild(componentRef.hostView.rootNodes[0]);
449
+ return componentRef;
450
+ }
451
+ dispose() {
452
+ if (this.attached) {
453
+ this.disposeFn();
454
+ }
455
+ }
456
+ }
457
+
458
+ class TableCheckboxIdService {
459
+ constructor() {
460
+ this.nbCheckboxInstances = 0;
461
+ TableCheckboxIdService.tableInstance++;
462
+ this.currentTableInstance = TableCheckboxIdService.tableInstance;
463
+ }
464
+ getUniqueId() {
465
+ this.nbCheckboxInstances++;
466
+ return `wac-table-${this.currentTableInstance}-${this.nbCheckboxInstances}`;
467
+ }
468
+ }
469
+ TableCheckboxIdService.tableInstance = 0;
470
+ TableCheckboxIdService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableCheckboxIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
471
+ TableCheckboxIdService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableCheckboxIdService });
472
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableCheckboxIdService, decorators: [{
473
+ type: Injectable
474
+ }], ctorParameters: function () { return []; } });
475
+
476
+ class CheckBoxRow {
477
+ constructor(currentRow, appRef, renderer, document, resolver, injector, tableCheckboxIdService) {
478
+ this.currentRow = currentRow;
479
+ this.appRef = appRef;
480
+ this.renderer = renderer;
481
+ this.document = document;
482
+ this.resolver = resolver;
483
+ this.injector = injector;
484
+ this.tableCheckboxIdService = tableCheckboxIdService;
485
+ this.checkBoxValueChange = new EventEmitter();
486
+ }
487
+ set checkBoxValue(value) {
488
+ this._value = value;
489
+ if (this.checkboxComponentRef) {
490
+ this.setCheckBoxValue();
491
+ }
492
+ }
493
+ get checkBoxValue() {
494
+ return this._value;
495
+ }
496
+ ngOnInit() {
497
+ this.createCheckBoxComponent();
498
+ this.handleChecboxInputs();
499
+ this.handleCheckboxOutputs();
500
+ }
501
+ createCheckBoxComponent() {
502
+ // Create the container
503
+ this.checkBoxElement = document.createElement('div');
504
+ this.checkBoxElement.className = 'wac-table__body__line__cell wac-table__body__line__cell--checkbox';
505
+ // Insert divCheckBox in the DOM as the first child of the row
506
+ this.renderer.insertBefore(this.currentRow.nativeElement, this.checkBoxElement, this.currentRow.nativeElement.firstChild);
507
+ // Insert the CheckBoxComponent inside the container (DOM and Angular DOM)
508
+ this.htmlContainer = new HtmlContainer(this.checkBoxElement, this.appRef, this.resolver, this.injector);
509
+ this.checkboxComponentRef = this.htmlContainer.attach(CheckboxComponent);
510
+ }
511
+ handleChecboxInputs() {
512
+ this.checkboxComponentRef.instance.id = this.checkBoxId ? '' + this.checkBoxId : this.tableCheckboxIdService.getUniqueId();
513
+ this.checkboxComponentRef.instance.name = this.checkBoxName ? this.checkBoxName : undefined;
514
+ this.checkboxComponentRef.instance.alone = true;
515
+ this.setCheckBoxValue();
516
+ }
517
+ setCheckBoxValue() {
518
+ this.checkboxComponentRef.instance.value = this.checkBoxValue;
519
+ }
520
+ handleCheckboxOutputs() {
521
+ // Detect checkbox changes
522
+ this.checkboxComponentRef.instance.registerOnChange(() => {
523
+ this._toggleCheckbox();
524
+ });
525
+ }
526
+ _toggleCheckbox() {
527
+ this.checkBoxValueChange.emit(this.checkBoxValue);
528
+ }
529
+ getElement() {
530
+ return this.checkBoxElement.querySelector('.wac-field-checkbox');
531
+ }
532
+ isActive() {
533
+ return !!this.checkboxComponentRef.instance.value;
534
+ }
535
+ setActive(isActive) {
536
+ this.checkboxComponentRef.instance.value = isActive; //? does not trigger output
537
+ }
538
+ ngOnDestroy() {
539
+ this.htmlContainer.dispose();
540
+ }
541
+ }
542
+ CheckBoxRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckBoxRow, deps: [{ token: i0.ElementRef }, { token: i0.ApplicationRef }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: TableCheckboxIdService }], target: i0.ɵɵFactoryTarget.Directive });
543
+ CheckBoxRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: CheckBoxRow, selector: "[checkBoxRow]", inputs: { checkBoxId: "checkBoxId", checkBoxName: "checkBoxName", checkBoxValue: "checkBoxValue" }, outputs: { checkBoxValueChange: "checkBoxValueChange" }, ngImport: i0 });
544
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckBoxRow, decorators: [{
545
+ type: Directive,
546
+ args: [{
547
+ selector: '[checkBoxRow]'
548
+ }]
549
+ }], ctorParameters: function () {
550
+ return [{ type: i0.ElementRef }, { type: i0.ApplicationRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
551
+ type: Inject,
552
+ args: [DOCUMENT]
553
+ }] }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: TableCheckboxIdService }];
554
+ }, propDecorators: { checkBoxId: [{
555
+ type: Input,
556
+ args: ['checkBoxId']
557
+ }], checkBoxName: [{
558
+ type: Input,
559
+ args: ['checkBoxName']
560
+ }], checkBoxValue: [{
561
+ type: Input,
562
+ args: ['checkBoxValue']
563
+ }], checkBoxValueChange: [{
564
+ type: Output
565
+ }] } });
566
+
567
+ class MultiSelectionService {
568
+ constructor() {
569
+ this.activeChanges = new Subject();
570
+ this.activeChanges$ = this.activeChanges.asObservable();
571
+ }
572
+ handle(items, toggleSingleItem = false) {
573
+ if (!items || !items.first) {
574
+ this.destroy();
575
+ return;
576
+ }
577
+ this.destroy(); // close previous subsciption
578
+ this.items = items;
579
+ const clicks$ = this.getListeners();
580
+ this.subscription = merge(...clicks$).subscribe(({ component, isShift: isShiftKeyPressed, index }) => {
581
+ if (!isShiftKeyPressed) {
582
+ if (toggleSingleItem) {
583
+ component.setActive(!component.isActive());
584
+ }
585
+ this.activeChanges.next([index]);
586
+ this.lastIndex = index;
587
+ return;
588
+ }
589
+ const start = index;
590
+ const end = this.lastIndex;
591
+ const [first, last] = [Math.min(start, end), Math.max(start, end) + 1];
592
+ const itemsSelection = this.items.toArray().slice(first, last);
593
+ const isBeginnerItemActive = this.items.get(end).isActive();
594
+ itemsSelection.forEach(current => current.setActive(isBeginnerItemActive));
595
+ window.getSelection().removeAllRanges(); // remove text selection
596
+ const indexInRange = Array.from({ length: last - first }, (x, i) => i + first);
597
+ this.activeChanges.next(indexInRange);
598
+ });
599
+ }
600
+ getListeners() {
601
+ return this.items.map((item, index) => {
602
+ return fromEvent(item.getElement(), 'click').pipe(map((event) => {
603
+ return {
604
+ index,
605
+ isShift: event.shiftKey,
606
+ component: item
607
+ };
608
+ }))
609
+ .pipe(debounceTime(100)); // debounced, because when clicking on a wac-checkbox it is emitted twice and can not find why
610
+ });
611
+ }
612
+ getActives() {
613
+ return this.items.filter(item => item.isActive());
614
+ }
615
+ destroy() {
616
+ var _a;
617
+ (_a = this.subscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
618
+ }
619
+ }
620
+ MultiSelectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultiSelectionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
621
+ MultiSelectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultiSelectionService });
622
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultiSelectionService, decorators: [{
623
+ type: Injectable
624
+ }], ctorParameters: function () { return []; } });
625
+
626
+ class TableRow {
627
+ constructor(currentCell, renderer, document) {
628
+ this.currentCell = currentCell;
629
+ this.renderer = renderer;
630
+ this.document = document;
631
+ }
632
+ ngAfterViewInit() {
633
+ this.applyCustomStylesOnCell();
634
+ }
635
+ applyCustomStylesOnCell() {
636
+ this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line');
637
+ }
638
+ }
639
+ TableRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableRow, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
640
+ TableRow.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: TableRow, selector: "[tableRow]", ngImport: i0 });
641
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableRow, decorators: [{
642
+ type: Directive,
643
+ args: [{
644
+ // The selector has the same name as the tableRaw selector in table.component.html
645
+ selector: '[tableRow]'
646
+ }]
647
+ }], ctorParameters: function () {
648
+ return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
649
+ type: Inject,
650
+ args: [DOCUMENT]
651
+ }] }];
652
+ } });
653
+
654
+ class FiltersTableService {
655
+ constructor(filterRoutingBuilder) {
656
+ this.filterRoutingBuilder = filterRoutingBuilder;
657
+ this.filterGroups = new Map();
658
+ this.sortSubject = new Subject();
659
+ }
660
+ getTableFilterGroup(dataTableName) {
661
+ if (this.filterGroups.has(dataTableName)) {
662
+ return this.filterGroups.get(dataTableName);
663
+ }
664
+ const dataTableFilters = {
665
+ sort: undefined,
666
+ order: undefined,
667
+ searchValue: undefined,
668
+ totalItems: 0,
669
+ itemsPerPage: 0,
670
+ currentPage: 0
671
+ };
672
+ const filterGroup = this.filterRoutingBuilder.group(dataTableFilters, dataTableName);
673
+ filterGroup.tableFiltersValuesChange$ = new ReplaySubject(1);
674
+ filterGroup.tableFiltersValuesDebouncedChange$ = filterGroup.tableFiltersValuesChange$.pipe(debounceTime(300));
675
+ this.filterGroups.set(dataTableName, filterGroup);
676
+ return filterGroup;
677
+ }
678
+ /**
679
+ * Use to reset the others sorts of the table
680
+ * @param dataTableName
681
+ * @param sortName
682
+ * @param order
683
+ */
684
+ emitSortChange(dataTableName, sortName, order) {
685
+ this.sortSubject.next({ dataTableName, sortName, order });
686
+ }
687
+ getSortChangeListner() {
688
+ return this.sortSubject.asObservable();
689
+ }
690
+ setPaginationFilters(dataTableName, totalItems, itemsPerPage, currentPage) {
691
+ const filterGroup = this.getTableFilterGroup(dataTableName);
692
+ filterGroup.setValues({
693
+ itemsPerPage,
694
+ currentPage
695
+ });
696
+ }
697
+ /*
698
+ Add defaults filters in the URL if they not exists.
699
+ */
700
+ setInitialPaginationFiltersIfNotExist(dataTableName, itemsPerPage, currentPage) {
701
+ const filterGroup = this.getTableFilterGroup(dataTableName);
702
+ filterGroup.setValues({
703
+ itemsPerPage: filterGroup.get('itemsPerPage') ? parseInt(filterGroup.get('itemsPerPage')) : itemsPerPage,
704
+ currentPage: filterGroup.get('currentPage') ? parseInt(filterGroup.get('currentPage')) : currentPage
705
+ });
706
+ }
707
+ }
708
+ FiltersTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FiltersTableService, deps: [{ token: i1$2.NwbFilterRoutingBuilder }], target: i0.ɵɵFactoryTarget.Injectable });
709
+ FiltersTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FiltersTableService, providedIn: 'root' });
710
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FiltersTableService, decorators: [{
711
+ type: Injectable,
712
+ args: [{
713
+ providedIn: 'root'
714
+ }]
715
+ }], ctorParameters: function () { return [{ type: i1$2.NwbFilterRoutingBuilder }]; } });
716
+
717
+ class PagniationIsLastPage {
718
+ /**
719
+ * Return true, if the current page is the last page. Otherwise, return false.
720
+ * @param currentPage
721
+ * @param totalItems
722
+ * @param itemsPerPage
723
+ */
724
+ transform(currentPage, totalItems, itemsPerPage) {
725
+ if (!(currentPage >= 0 && totalItems >= 0 && itemsPerPage >= 0)) {
726
+ throw new Error('currentPage or totalItems or itemsPerPage is/are missing in PagniationIsLastPage pipe.');
727
+ }
728
+ return currentPage === Math.ceil(totalItems / itemsPerPage);
729
+ }
730
+ }
731
+ PagniationIsLastPage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationIsLastPage, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
732
+ PagniationIsLastPage.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: PagniationIsLastPage, name: "IsLastPage" });
733
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationIsLastPage, decorators: [{
734
+ type: Pipe,
735
+ args: [{
736
+ name: 'IsLastPage'
737
+ }]
738
+ }] });
739
+
740
+ class PagniationArrayTotalPages {
741
+ /**
742
+ * Return an incremental array corresponding with the number page
743
+ * [ 1, 2, 3 ..., last page number ]
744
+ * @param totalItems
745
+ * @param itemsPerPage
746
+ */
747
+ transform(totalItems, itemsPerPage) {
748
+ if (!(totalItems >= 0 && itemsPerPage >= 0)) {
749
+ throw new Error('totalItems or itemsPerPage missing in ArrayTotalPages pipe.');
750
+ }
751
+ const arrayLength = Math.ceil(totalItems / itemsPerPage);
752
+ return Array.apply(null, { length: arrayLength })
753
+ .map(Number.call, Number)
754
+ .map(x => x + 1);
755
+ }
756
+ }
757
+ PagniationArrayTotalPages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationArrayTotalPages, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
758
+ PagniationArrayTotalPages.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: PagniationArrayTotalPages, name: "ArrayTotalPages" });
759
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationArrayTotalPages, decorators: [{
760
+ type: Pipe,
761
+ args: [{
762
+ name: 'ArrayTotalPages'
763
+ }]
764
+ }] });
765
+
766
+ class PagniationText {
767
+ constructor(translateService) {
768
+ this.translateService = translateService;
769
+ }
770
+ /**
771
+ * Update pagination text if at least one entrie change
772
+ * @param currentPage
773
+ * @param totalItems
774
+ * @param itemsPerPage
775
+ */
776
+ transform(currentPage, totalItems, itemsPerPage) {
777
+ let currentItemsLow = 0, currentItemsHigh = 0;
778
+ if (totalItems) {
779
+ currentItemsLow = (parseInt(currentPage) - 1) * parseInt(itemsPerPage) + 1;
780
+ currentItemsHigh = parseInt(currentPage) * parseInt(itemsPerPage);
781
+ }
782
+ if (currentItemsHigh > totalItems) {
783
+ currentItemsHigh = totalItems;
784
+ }
785
+ return this.translateService.get('wac.PaginationComponent.on', { low: currentItemsLow, high: currentItemsHigh, total: totalItems });
786
+ }
787
+ }
788
+ PagniationText.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationText, deps: [{ token: i1$3.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe });
789
+ PagniationText.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: PagniationText, name: "customPagniationText" });
790
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PagniationText, decorators: [{
791
+ type: Pipe,
792
+ args: [{
793
+ name: 'customPagniationText'
794
+ }]
795
+ }], ctorParameters: function () { return [{ type: i1$3.TranslateService }]; } });
796
+
797
+ class PaginationComponent {
798
+ constructor() {
799
+ this.pageChange = new EventEmitter();
800
+ }
801
+ set pagination(pagination) {
802
+ this._pagination = pagination;
803
+ }
804
+ get pagination() {
805
+ return this._pagination;
806
+ }
807
+ decrementPage() {
808
+ if (this.pagination.currentPage <= 1) {
809
+ return;
810
+ }
811
+ this.pagination.currentPage--;
812
+ this.pageChange.emit(this.pagination);
813
+ }
814
+ incrementPage() {
815
+ const isLastPage = new PagniationIsLastPage().transform(this.pagination.currentPage, this.pagination.totalItems, this.pagination.itemsPerPage);
816
+ if (isLastPage) {
817
+ return;
818
+ }
819
+ this.pagination.currentPage++;
820
+ this.pageChange.emit(this.pagination);
821
+ }
822
+ onGotoPageChange(event) {
823
+ this.pagination.currentPage = parseInt(event.target.value);
824
+ this.pageChange.emit(this.pagination);
825
+ }
826
+ }
827
+ PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
828
+ PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: PaginationComponent, selector: "wac-pagination", inputs: { pagination: "pagination" }, outputs: { pageChange: "pageChange" }, ngImport: i0, template: "<div class=\"wac-pagination\" *ngIf=\"pagination && pagination.itemsPerPage\">\n <div class=\"wac-pagination__wrapper\">\n <div class=\"wac-pagination__wrapper__page\">\n <p>{{ 'wac.PaginationComponent.page' | translate }}</p>\n\n <select name=\"page\" (change)=\"onGotoPageChange($event)\">\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\n {{ pageIndex }}\n </option>\n </ng-container>\n </select>\n </div>\n\n <div class=\"wac-pagination__wrapper__elements\">\n <p>{{ pagination.currentPage | customPagniationText: pagination.totalItems:pagination.itemsPerPage | async}}</p>\n </div>\n\n <div class=\"wac-pagination__wrapper__arrows\">\n <div\n (click)=\"decrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--left\"\n [ngClass]=\"{ 'wac-pagination__wrapper__arrows__arrow--disabled': pagination.currentPage === 1 }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n <div\n (click)=\"incrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--right\"\n [ngClass]=\"{\n 'wac-pagination__wrapper__arrows__arrow--disabled':\n pagination.currentPage | IsLastPage: pagination.totalItems:pagination.itemsPerPage\n }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: PagniationArrayTotalPages, name: "ArrayTotalPages" }, { kind: "pipe", type: PagniationIsLastPage, name: "IsLastPage" }, { kind: "pipe", type: PagniationText, name: "customPagniationText" }] });
829
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PaginationComponent, decorators: [{
830
+ type: Component,
831
+ args: [{ selector: 'wac-pagination', template: "<div class=\"wac-pagination\" *ngIf=\"pagination && pagination.itemsPerPage\">\n <div class=\"wac-pagination__wrapper\">\n <div class=\"wac-pagination__wrapper__page\">\n <p>{{ 'wac.PaginationComponent.page' | translate }}</p>\n\n <select name=\"page\" (change)=\"onGotoPageChange($event)\">\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\n {{ pageIndex }}\n </option>\n </ng-container>\n </select>\n </div>\n\n <div class=\"wac-pagination__wrapper__elements\">\n <p>{{ pagination.currentPage | customPagniationText: pagination.totalItems:pagination.itemsPerPage | async}}</p>\n </div>\n\n <div class=\"wac-pagination__wrapper__arrows\">\n <div\n (click)=\"decrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--left\"\n [ngClass]=\"{ 'wac-pagination__wrapper__arrows__arrow--disabled': pagination.currentPage === 1 }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n <div\n (click)=\"incrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--right\"\n [ngClass]=\"{\n 'wac-pagination__wrapper__arrows__arrow--disabled':\n pagination.currentPage | IsLastPage: pagination.totalItems:pagination.itemsPerPage\n }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n </div>\n </div>\n</div>\n" }]
832
+ }], ctorParameters: function () { return []; }, propDecorators: { pagination: [{
833
+ type: Input
834
+ }], pageChange: [{
835
+ type: Output
836
+ }] } });
837
+
838
+ class TableComponent {
839
+ constructor(filtersTableService, tableCheckboxIdService, multiSelectionService) {
840
+ this.filtersTableService = filtersTableService;
841
+ this.tableCheckboxIdService = tableCheckboxIdService;
842
+ this.multiSelectionService = multiSelectionService;
843
+ this.tableFiltersChange = new EventEmitter();
844
+ this.placeholder = '';
845
+ /// Input/Output of checkbox ///
846
+ /** Pass to true to display checkbox in the header table */
847
+ this.checkbox = false;
848
+ this.toggleAllCheckBox = new EventEmitter(); // todo replace by checkBoxSelectionChange
849
+ this.checkBoxSelectionChange = new EventEmitter(); // todo add to doc
850
+ /// Input to disable section ///
851
+ /** Pass to true to hide search input */
852
+ this.disableSearch = false;
853
+ /** Pass to true to hide the pagniator */
854
+ this.disablePagniation = false;
855
+ /// Input for loader on table body ///
856
+ this.isLoading = false;
857
+ }
858
+ ngOnInit() {
859
+ this.headerCheckBoxId = this.tableCheckboxIdService.getUniqueId(); // Create checkbox unique id
860
+ /* Handle routing filters */
861
+ if (this.tableRoutingName) {
862
+ this.filtersTableService.setInitialPaginationFiltersIfNotExist(this.tableRoutingName, this.tableFilters.itemsPerPage, this.tableFilters.currentPage);
863
+ this._tableFiltersGroup = this.filtersTableService.getTableFilterGroup(this.tableRoutingName);
864
+ this.setTablesFilters();
865
+ // Listen to filters changes with debounced time to limit multiple api calls
866
+ this.filterGroupChangeSub = this._tableFiltersGroup.valuesChange$.subscribe(() => {
867
+ this.setTablesFilters();
868
+ });
869
+ }
870
+ this.multiSelectionService.activeChanges$.subscribe(selectionIndexRawCheckChange => {
871
+ this.checkBoxSelectionChange.emit(selectionIndexRawCheckChange);
872
+ });
873
+ }
874
+ ngAfterViewInit() {
875
+ this.multiSelectionService.handle(this.checkBoxRows);
876
+ this.checkBoxRows.changes.subscribe(() => {
877
+ this.multiSelectionService.handle(this.checkBoxRows);
878
+ });
879
+ console.log('this.tableRows', this.tableRows);
880
+ }
881
+ onToggleAllCheckBox(event) {
882
+ this.toggleAllCheckBox.emit(event.target.checked);
883
+ }
884
+ searchChange() {
885
+ // Reset table filters
886
+ this.tableFilters.sort = undefined;
887
+ this.tableFilters.order = undefined;
888
+ this.tableFilters.currentPage = 1;
889
+ this.tableFiltersChange.emit(this.tableFilters);
890
+ // Reset routing filters
891
+ if (this._tableFiltersGroup) {
892
+ this._tableFiltersGroup.setValues({
893
+ searchValue: this.tableFilters.searchValue,
894
+ sort: undefined,
895
+ order: undefined,
896
+ currentPage: 1
897
+ });
898
+ }
899
+ }
900
+ pageChange() {
901
+ this.tableFiltersChange.emit(this.tableFilters);
902
+ if (this._tableFiltersGroup) {
903
+ this._tableFiltersGroup.setValues({
904
+ itemsPerPage: this.tableFilters.itemsPerPage,
905
+ currentPage: this.tableFilters.currentPage
906
+ });
907
+ }
908
+ }
909
+ /**
910
+ * Set tableFilters from routing data existing in the url
911
+ * */
912
+ setTablesFilters() {
913
+ this.tableFilters = {
914
+ sort: this._tableFiltersGroup.get('sort'),
915
+ order: this._tableFiltersGroup.get('order') ? this._tableFiltersGroup.get('order') === 'true' : undefined,
916
+ searchValue: this._tableFiltersGroup.get('searchValue'),
917
+ itemsPerPage: this._tableFiltersGroup.get('itemsPerPage') ? parseInt(this._tableFiltersGroup.get('itemsPerPage')) : 0,
918
+ currentPage: this._tableFiltersGroup.get('currentPage') ? parseInt(this._tableFiltersGroup.get('currentPage')) : 0,
919
+ totalItems: this.tableFilters.totalItems
920
+ };
921
+ this.tableFiltersChange.emit(this.tableFilters);
922
+ this._tableFiltersGroup.tableFiltersValuesChange$.next(this.tableFilters);
923
+ }
924
+ ngOnDestroy() {
925
+ if (this.filterGroupChangeSub) {
926
+ this.filterGroupChangeSub.unsubscribe();
927
+ }
928
+ this.multiSelectionService.destroy();
929
+ }
930
+ }
931
+ TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableComponent, deps: [{ token: FiltersTableService }, { token: TableCheckboxIdService }, { token: MultiSelectionService }], target: i0.ɵɵFactoryTarget.Component });
932
+ TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableComponent, selector: "wac-table", inputs: { tableFilters: "tableFilters", tableRoutingName: "tableRoutingName", placeholder: "placeholder", checkbox: "checkbox", disableSearch: "disableSearch", disablePagniation: "disablePagniation", isLoading: "isLoading" }, outputs: { tableFiltersChange: "tableFiltersChange", toggleAllCheckBox: "toggleAllCheckBox", checkBoxSelectionChange: "checkBoxSelectionChange" }, providers: [
933
+ TableCheckboxIdService,
934
+ MultiSelectionService
935
+ ], queries: [{ propertyName: "checkBoxRows", predicate: CheckBoxRow }, { propertyName: "tableRows", predicate: TableRow }], ngImport: i0, template: "<div class=\"wac-table\">\n <!-- Header section -->\n <div class=\"wac-table__head\" id=\"headerTable\">\n <div *ngIf=\"checkbox\" class=\"wac-table__head__cell wac-table__head__cell--checkbox\">\n <wac-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wac-checkbox>\n </div>\n\n <!-- Header contents are added with the headerCell directive -->\n <ng-content select=\"[headerCell]\"></ng-content>\n </div>\n\n <!-- Search section -->\n <div *ngIf=\"!disableSearch\" class=\"wac-table__search\">\n <wac-input-search\n [(ngModel)]=\"tableFilters.searchValue\"\n (changeDebounced)=\"searchChange()\"\n [placeholder]=\"placeholder\"\n [smallPadding]=\"true\"\n ></wac-input-search>\n </div>\n\n <!-- Body section -->\n <div class=\"wac-table__body\">\n <!-- Loader on body -->\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n <!-- Body contents are added with the tableRow directive -->\n <ng-content select=\".complex-table\" *ngIf=\"!isLoading\"></ng-content>\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\n </div>\n\n <!-- Pagination section -->\n <wac-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wac-pagination>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: InputSearchComponent, selector: "wac-input-search", inputs: ["placeholder", "smallPadding", "id"], outputs: ["changeDebounced"] }, { kind: "component", type: LoaderComponent, selector: "wac-loader", inputs: ["text", "small"] }, { kind: "component", type: CheckboxComponent, selector: "wac-checkbox", inputs: ["label", "value", "type", "alone", "checked", "hasInput", "inputPlaceholder", "id", "name", "whiteSpace"] }, { kind: "component", type: PaginationComponent, selector: "wac-pagination", inputs: ["pagination"], outputs: ["pageChange"] }], encapsulation: i0.ViewEncapsulation.None });
936
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableComponent, decorators: [{
937
+ type: Component,
938
+ args: [{ selector: 'wac-table', encapsulation: ViewEncapsulation.None, providers: [
939
+ TableCheckboxIdService,
940
+ MultiSelectionService
941
+ ], template: "<div class=\"wac-table\">\n <!-- Header section -->\n <div class=\"wac-table__head\" id=\"headerTable\">\n <div *ngIf=\"checkbox\" class=\"wac-table__head__cell wac-table__head__cell--checkbox\">\n <wac-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wac-checkbox>\n </div>\n\n <!-- Header contents are added with the headerCell directive -->\n <ng-content select=\"[headerCell]\"></ng-content>\n </div>\n\n <!-- Search section -->\n <div *ngIf=\"!disableSearch\" class=\"wac-table__search\">\n <wac-input-search\n [(ngModel)]=\"tableFilters.searchValue\"\n (changeDebounced)=\"searchChange()\"\n [placeholder]=\"placeholder\"\n [smallPadding]=\"true\"\n ></wac-input-search>\n </div>\n\n <!-- Body section -->\n <div class=\"wac-table__body\">\n <!-- Loader on body -->\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n <!-- Body contents are added with the tableRow directive -->\n <ng-content select=\".complex-table\" *ngIf=\"!isLoading\"></ng-content>\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\n </div>\n\n <!-- Pagination section -->\n <wac-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wac-pagination>\n</div>\n" }]
942
+ }], ctorParameters: function () { return [{ type: FiltersTableService }, { type: TableCheckboxIdService }, { type: MultiSelectionService }]; }, propDecorators: { checkBoxRows: [{
943
+ type: ContentChildren,
944
+ args: [CheckBoxRow]
945
+ }], tableRows: [{
946
+ type: ContentChildren,
947
+ args: [TableRow]
948
+ }], tableFilters: [{
949
+ type: Input
950
+ }], tableFiltersChange: [{
951
+ type: Output
952
+ }], tableRoutingName: [{
953
+ type: Input
954
+ }], placeholder: [{
955
+ type: Input
956
+ }], checkbox: [{
957
+ type: Input
958
+ }], toggleAllCheckBox: [{
959
+ type: Output
960
+ }], checkBoxSelectionChange: [{
961
+ type: Output
962
+ }], disableSearch: [{
963
+ type: Input
964
+ }], disablePagniation: [{
965
+ type: Input
966
+ }], isLoading: [{
967
+ type: Input
968
+ }] } });
969
+
970
+ class TagComponent {
971
+ constructor() {
972
+ this.label = '';
973
+ this.hasClose = false;
974
+ this.big = false;
975
+ this.isOpen = true;
976
+ this.isOpenChange = new EventEmitter();
977
+ }
978
+ toggleTag() {
979
+ this.isOpen = !this.isOpen;
980
+ this.isOpenChange.next(this.isOpen);
981
+ }
982
+ }
983
+ TagComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
984
+ TagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TagComponent, selector: "wac-tag", inputs: { label: "label", class: "class", hasClose: "hasClose", big: "big", isOpen: "isOpen" }, outputs: { isOpenChange: "isOpenChange" }, ngImport: i0, template: "<div class=\"wac-tag\" [classList]=\"'wac-tag--' + class\" [ngClass]=\"{ hover: hasClose, 'big': big }\">\n {{ label }}\n <span class=\"wac-tag__close\" *ngIf=\"hasClose\" (click)=\"toggleTag()\"><i class=\"fas fa-times\"></i></span>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
985
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TagComponent, decorators: [{
986
+ type: Component,
987
+ args: [{ selector: 'wac-tag', template: "<div class=\"wac-tag\" [classList]=\"'wac-tag--' + class\" [ngClass]=\"{ hover: hasClose, 'big': big }\">\n {{ label }}\n <span class=\"wac-tag__close\" *ngIf=\"hasClose\" (click)=\"toggleTag()\"><i class=\"fas fa-times\"></i></span>\n</div>\n" }]
988
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
989
+ type: Input
990
+ }], class: [{
991
+ type: Input
992
+ }], hasClose: [{
993
+ type: Input
994
+ }], big: [{
995
+ type: Input
996
+ }], isOpen: [{
997
+ type: Input
998
+ }], isOpenChange: [{
999
+ type: Output
1000
+ }] } });
1001
+
1002
+ class TabComponent {
1003
+ constructor() {
1004
+ this.underline = false;
1005
+ this.button = false;
1006
+ this.tabs = [];
1007
+ this.index = 0;
1008
+ this.indexChange = new EventEmitter();
1009
+ }
1010
+ valueChanged(i) {
1011
+ this.index = i;
1012
+ this.indexChange.emit(this.index);
1013
+ }
1014
+ }
1015
+ TabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1016
+ TabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TabComponent, selector: "wac-tab", inputs: { underline: "underline", button: "button", tabs: "tabs", index: "index" }, outputs: { indexChange: "indexChange" }, ngImport: i0, template: "<div class=\"wac-tab\" [ngClass]=\"{'wac-tab--underline': underline, 'wac-tab--button' : button}\">\n <div class=\"wac-tab__wrapper\">\n <a\n *ngFor=\"let tab of tabs\"\n class=\"wac-tab__wrapper__tab\"\n [ngClass]=\"index === tab.index ? 'wac-tab__wrapper__tab--selected' : ''\"\n (click)=\"valueChanged(tab.index)\"\n >\n {{ tab.label }}\n </a>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], encapsulation: i0.ViewEncapsulation.None });
1017
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TabComponent, decorators: [{
1018
+ type: Component,
1019
+ args: [{ selector: 'wac-tab', encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-tab\" [ngClass]=\"{'wac-tab--underline': underline, 'wac-tab--button' : button}\">\n <div class=\"wac-tab__wrapper\">\n <a\n *ngFor=\"let tab of tabs\"\n class=\"wac-tab__wrapper__tab\"\n [ngClass]=\"index === tab.index ? 'wac-tab__wrapper__tab--selected' : ''\"\n (click)=\"valueChanged(tab.index)\"\n >\n {{ tab.label }}\n </a>\n </div>\n</div>\n" }]
1020
+ }], ctorParameters: function () { return []; }, propDecorators: { underline: [{
1021
+ type: Input
1022
+ }], button: [{
1023
+ type: Input
1024
+ }], tabs: [{
1025
+ type: Input
1026
+ }], index: [{
1027
+ type: Input
1028
+ }], indexChange: [{
1029
+ type: Output
1030
+ }] } });
1031
+
1032
+ class ButtonComponent {
1033
+ constructor() {
1034
+ this.extraClasses = 'is-info'; // todo make a list of existing class
1035
+ this.label = '';
1036
+ this.icon = '';
1037
+ this.widthAuto = false;
1038
+ this.contentHorizontalPosition = 'center';
1039
+ this.iconFontSize = 12;
1040
+ this.hasLoader = false;
1041
+ this.disabled = false;
1042
+ this.whiteSpaceNowrap = false;
1043
+ this.opacity = false;
1044
+ // TODO MAKE ANNIMATION AVAILABLE FOR MOBILE as CONFIRM DELETE DO (because, its doeant show the text and trigger click)
1045
+ this.animation = false;
1046
+ this.animationRight = false;
1047
+ this.animationText = '';
1048
+ this.confirmDelete = false;
1049
+ this.confirmDeleteText = '';
1050
+ this.confirmDeletePosition = 'right';
1051
+ this.click = new EventEmitter();
1052
+ this.isLoadingChange = new EventEmitter();
1053
+ this._isLoading = false;
1054
+ this.interval = null;
1055
+ this.waitForConfirmDelete = false;
1056
+ this.buttonMaxWidth = '0px';
1057
+ this.buttonWidth = '0px';
1058
+ this.buttonMaxWidthDelete = '0px';
1059
+ this.buttonWidthDelete = '0px';
1060
+ this.currentLoading = 0;
1061
+ }
1062
+ set isLoading(isLoading) {
1063
+ this._isLoading = isLoading;
1064
+ this.isLoadingChange.next(isLoading);
1065
+ this.toggleLoading();
1066
+ }
1067
+ get isLoading() {
1068
+ return this._isLoading;
1069
+ }
1070
+ ngOnInit() {
1071
+ if (this.confirmDelete) {
1072
+ this.waitForConfirmDelete = true;
1073
+ }
1074
+ }
1075
+ toggleLoading() {
1076
+ this.currentLoading = this.isLoading ? 10 : 100;
1077
+ interval(200).pipe(takeWhile(time => this.isLoading)).subscribe(() => {
1078
+ if (this.currentLoading < 85) {
1079
+ this.currentLoading += Math.floor(Math.random() * 15);
1080
+ }
1081
+ });
1082
+ }
1083
+ addMaxWidth() {
1084
+ this.buttonMaxWidth = this.buttonWidth + 'px';
1085
+ }
1086
+ resetMaxWidth() {
1087
+ this.buttonMaxWidth = '0px';
1088
+ }
1089
+ addMaxWidthDelete() {
1090
+ this.buttonMaxWidthDelete = this.buttonWidthDelete + 'px';
1091
+ }
1092
+ resetMaxWidthDelete() {
1093
+ this.buttonMaxWidthDelete = '0px';
1094
+ this.waitForConfirmDelete = true;
1095
+ }
1096
+ onButtonClick(event) {
1097
+ event.stopPropagation();
1098
+ if (this.disabled) {
1099
+ return;
1100
+ }
1101
+ if (this.hasLoader) {
1102
+ this.isLoading = false;
1103
+ setTimeout(() => {
1104
+ this.isLoading = true;
1105
+ }, 0);
1106
+ }
1107
+ if (!this.waitForConfirmDelete) {
1108
+ this.click.emit(event);
1109
+ if (this.confirmDelete) {
1110
+ this.resetMaxWidthDelete();
1111
+ }
1112
+ }
1113
+ else {
1114
+ this.waitForConfirmDelete = false;
1115
+ }
1116
+ }
1117
+ ngAfterViewInit() {
1118
+ setTimeout(() => {
1119
+ if (this.animation) {
1120
+ this.buttonWidth = this.calculWidth.nativeElement.offsetWidth;
1121
+ }
1122
+ if (this.confirmDelete) {
1123
+ this.buttonWidthDelete = this.calculWidthDelete.nativeElement.offsetWidth;
1124
+ }
1125
+ }, 1000);
1126
+ }
1127
+ }
1128
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1129
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ButtonComponent, selector: "wac-button", inputs: { extraClasses: "extraClasses", label: "label", icon: "icon", iconNext: "iconNext", widthAuto: "widthAuto", contentHorizontalPosition: "contentHorizontalPosition", iconFontSize: "iconFontSize", hasLoader: "hasLoader", disabled: "disabled", whiteSpaceNowrap: "whiteSpaceNowrap", opacity: "opacity", animation: "animation", animationRight: "animationRight", animationText: "animationText", confirmDelete: "confirmDelete", confirmDeleteText: "confirmDeleteText", confirmDeletePosition: "confirmDeletePosition", isLoading: "isLoading" }, outputs: { click: "click", isLoadingChange: "isLoadingChange" }, viewQueries: [{ propertyName: "calculWidth", first: true, predicate: ["calculWidth"], descendants: true }, { propertyName: "calculWidthDelete", first: true, predicate: ["calculWidthDelete"], descendants: true }], ngImport: i0, template: "<a\n [class]=\"'wac-button ' + extraClasses\"\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\n [ngClass]=\"[\n label === '' ? 'alone' : '',\n animationRight ? 'animation-right' : '',\n animation ? 'animationText' : '',\n isLoading ? 'is-loading' : '',\n opacity ? 'opacity' : '',\n disabled ? 'disabled' : '',\n widthAuto ? 'width-auto' : '',\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\n ]\"\n [ngStyle]=\"{\n 'text-align': contentHorizontalPosition\n }\"\n>\n <span class=\"wac-button__wrapper\">\n <i *ngIf=\"icon !== ''\" [ngClass]=\"icon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext !== ''\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\n </span>\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\n </span>\n <span\n class=\"wac-button__loader\"\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\n *ngIf=\"isLoading\"\n [style.width]=\"currentLoading + '%'\"\n >\n <span *ngIf=\"extraClasses.includes('is-outlined')\">\n <i *ngIf=\"icon !== ''\" [ngClass]=\"icon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext !== ''\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n\n </span>\n</a>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }] });
1130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ButtonComponent, decorators: [{
1131
+ type: Component,
1132
+ args: [{ selector: 'wac-button', template: "<a\n [class]=\"'wac-button ' + extraClasses\"\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\n [ngClass]=\"[\n label === '' ? 'alone' : '',\n animationRight ? 'animation-right' : '',\n animation ? 'animationText' : '',\n isLoading ? 'is-loading' : '',\n opacity ? 'opacity' : '',\n disabled ? 'disabled' : '',\n widthAuto ? 'width-auto' : '',\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\n ]\"\n [ngStyle]=\"{\n 'text-align': contentHorizontalPosition\n }\"\n>\n <span class=\"wac-button__wrapper\">\n <i *ngIf=\"icon !== ''\" [ngClass]=\"icon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext !== ''\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\n </span>\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\n </span>\n <span\n class=\"wac-button__loader\"\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\n *ngIf=\"isLoading\"\n [style.width]=\"currentLoading + '%'\"\n >\n <span *ngIf=\"extraClasses.includes('is-outlined')\">\n <i *ngIf=\"icon !== ''\" [ngClass]=\"icon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext !== ''\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n\n </span>\n</a>\n" }]
1133
+ }], ctorParameters: function () { return []; }, propDecorators: { extraClasses: [{
1134
+ type: Input
1135
+ }], label: [{
1136
+ type: Input
1137
+ }], icon: [{
1138
+ type: Input
1139
+ }], iconNext: [{
1140
+ type: Input
1141
+ }], widthAuto: [{
1142
+ type: Input
1143
+ }], contentHorizontalPosition: [{
1144
+ type: Input
1145
+ }], iconFontSize: [{
1146
+ type: Input
1147
+ }], hasLoader: [{
1148
+ type: Input
1149
+ }], disabled: [{
1150
+ type: Input
1151
+ }], whiteSpaceNowrap: [{
1152
+ type: Input
1153
+ }], opacity: [{
1154
+ type: Input
1155
+ }], animation: [{
1156
+ type: Input
1157
+ }], animationRight: [{
1158
+ type: Input
1159
+ }], animationText: [{
1160
+ type: Input
1161
+ }], confirmDelete: [{
1162
+ type: Input
1163
+ }], confirmDeleteText: [{
1164
+ type: Input
1165
+ }], confirmDeletePosition: [{
1166
+ type: Input
1167
+ }], click: [{
1168
+ type: Output
1169
+ }], isLoading: [{
1170
+ type: Input
1171
+ }], isLoadingChange: [{
1172
+ type: Output
1173
+ }], calculWidth: [{
1174
+ type: ViewChild,
1175
+ args: ['calculWidth']
1176
+ }], calculWidthDelete: [{
1177
+ type: ViewChild,
1178
+ args: ['calculWidthDelete']
1179
+ }] } });
1180
+
1181
+ class InfoComponent {
1182
+ constructor() { }
1183
+ }
1184
+ InfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1185
+ InfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: InfoComponent, selector: "wac-info", ngImport: i0, template: "<div class=\"wac-info\">\n <div class=\"wac-info__wrapper\">\n <i class=\"fas fa-info-circle\"></i>\n <div class=\"wac-info__wrapper__sublevel\">\n <div class=\"wac-info__wrapper__sublevel__container\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n" });
1186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InfoComponent, decorators: [{
1187
+ type: Component,
1188
+ args: [{ selector: 'wac-info', template: "<div class=\"wac-info\">\n <div class=\"wac-info__wrapper\">\n <i class=\"fas fa-info-circle\"></i>\n <div class=\"wac-info__wrapper__sublevel\">\n <div class=\"wac-info__wrapper__sublevel__container\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n" }]
1189
+ }], ctorParameters: function () { return []; } });
1190
+
1191
+ class SettingsComponent {
1192
+ constructor() { }
1193
+ }
1194
+ SettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SettingsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1195
+ SettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SettingsComponent, selector: "wac-settings", ngImport: i0, template: "<div class=\"wac-settings\">\n <div class=\"wac-settings__wrapper\">\n <i class=\"fas fa-cog\"></i>\n </div>\n</div>\n", encapsulation: i0.ViewEncapsulation.None });
1196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SettingsComponent, decorators: [{
1197
+ type: Component,
1198
+ args: [{ selector: 'wac-settings', encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-settings\">\n <div class=\"wac-settings__wrapper\">\n <i class=\"fas fa-cog\"></i>\n </div>\n</div>\n" }]
1199
+ }], ctorParameters: function () { return []; } });
1200
+
1201
+ class DeleteComponent {
1202
+ constructor() { }
1203
+ }
1204
+ DeleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DeleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1205
+ DeleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: DeleteComponent, selector: "wac-delete", ngImport: i0, template: "<div class=\"wac-delete\">\n <div class=\"wac-delete__wrapper\">\n <i class=\"fas fa-trash\"></i>\n </div>\n</div>\n" });
1206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DeleteComponent, decorators: [{
1207
+ type: Component,
1208
+ args: [{ selector: 'wac-delete', template: "<div class=\"wac-delete\">\n <div class=\"wac-delete__wrapper\">\n <i class=\"fas fa-trash\"></i>\n </div>\n</div>\n" }]
1209
+ }], ctorParameters: function () { return []; } });
1210
+
1211
+ class DropdownComponent {
1212
+ constructor() {
1213
+ this.hasIcons = false;
1214
+ this.items = [];
1215
+ this.userInput = new EventEmitter();
1216
+ }
1217
+ onUserInput(itemIndex) {
1218
+ this.userInput.emit(itemIndex);
1219
+ }
1220
+ }
1221
+ DropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1222
+ DropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: DropdownComponent, selector: "wac-dropdown", inputs: { hasIcons: "hasIcons", items: "items" }, outputs: { userInput: "userInput" }, ngImport: i0, template: "<div class=\"wac-dropdown\">\n <div class=\"wac-dropdown__wrapper\">\n <i class=\"wac-dropdown__wrapper__icon far fa-ellipsis-v\"></i>\n <div class=\"wac-dropdown__wrapper__sublevel\">\n <ul class=\"wac-dropdown__wrapper__sublevel__container\">\n <li\n *ngFor=\"let item of items\"\n class=\"wac-dropdown__wrapper__sublevel__container__item\"\n (click)=\"onUserInput(item.index)\"\n >\n <i\n *ngIf=\"hasIcons\"\n [class]=\"item.icon\"\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\n ></i>\n <span>{{ item.label }}</span>\n </li>\n </ul>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: DropdownComponent, decorators: [{
1224
+ type: Component,
1225
+ args: [{ selector: 'wac-dropdown', template: "<div class=\"wac-dropdown\">\n <div class=\"wac-dropdown__wrapper\">\n <i class=\"wac-dropdown__wrapper__icon far fa-ellipsis-v\"></i>\n <div class=\"wac-dropdown__wrapper__sublevel\">\n <ul class=\"wac-dropdown__wrapper__sublevel__container\">\n <li\n *ngFor=\"let item of items\"\n class=\"wac-dropdown__wrapper__sublevel__container__item\"\n (click)=\"onUserInput(item.index)\"\n >\n <i\n *ngIf=\"hasIcons\"\n [class]=\"item.icon\"\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\n ></i>\n <span>{{ item.label }}</span>\n </li>\n </ul>\n </div>\n </div>\n</div>\n" }]
1226
+ }], ctorParameters: function () { return []; }, propDecorators: { hasIcons: [{
1227
+ type: Input
1228
+ }], items: [{
1229
+ type: Input
1230
+ }], userInput: [{
1231
+ type: Output
1232
+ }] } });
1233
+
1234
+ class ImageComponent {
1235
+ constructor() {
1236
+ this.src = '';
1237
+ }
1238
+ }
1239
+ ImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1240
+ ImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ImageComponent, selector: "wac-image", inputs: { src: "src" }, ngImport: i0, template: "<div class=\"wac-image\">\n <div class=\"wac-image__wrapper\" [ngClass]=\"src === '' ? 'empty' : ''\" [style.background-image]=\"'url(' + src + ')'\">\n <i class=\"fal fa-images\" *ngIf=\"src === ''\"></i>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1241
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ImageComponent, decorators: [{
1242
+ type: Component,
1243
+ args: [{ selector: 'wac-image', template: "<div class=\"wac-image\">\n <div class=\"wac-image__wrapper\" [ngClass]=\"src === '' ? 'empty' : ''\" [style.background-image]=\"'url(' + src + ')'\">\n <i class=\"fal fa-images\" *ngIf=\"src === ''\"></i>\n </div>\n</div>\n" }]
1244
+ }], ctorParameters: function () { return []; }, propDecorators: { src: [{
1245
+ type: Input
1246
+ }] } });
1247
+
1248
+ class BackComponent {
1249
+ constructor() { }
1250
+ }
1251
+ BackComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: BackComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1252
+ BackComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: BackComponent, selector: "wac-back", ngImport: i0, template: "<div class=\"wac-back\">\n <div class=\"wac-back__wrapper\">\n <i class=\"fas fa-chevron-left\"></i>\n </div>\n</div>\n" });
1253
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: BackComponent, decorators: [{
1254
+ type: Component,
1255
+ args: [{ selector: 'wac-back', template: "<div class=\"wac-back\">\n <div class=\"wac-back__wrapper\">\n <i class=\"fas fa-chevron-left\"></i>\n </div>\n</div>\n" }]
1256
+ }], ctorParameters: function () { return []; } });
1257
+
1258
+ class SeparatorComponent {
1259
+ constructor() {
1260
+ this.dashed = false;
1261
+ }
1262
+ }
1263
+ SeparatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1264
+ SeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SeparatorComponent, selector: "wac-separator", inputs: { dashed: "dashed" }, ngImport: i0, template: "<div class=\"wac-separator\" [ngClass]=\"dashed ? 'dashed' : ''\"></div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
1265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SeparatorComponent, decorators: [{
1266
+ type: Component,
1267
+ args: [{ selector: 'wac-separator', encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-separator\" [ngClass]=\"dashed ? 'dashed' : ''\"></div>\n" }]
1268
+ }], ctorParameters: function () { return []; }, propDecorators: { dashed: [{
1269
+ type: Input
1270
+ }] } });
1271
+
1272
+ class LogoComponent {
1273
+ constructor() {
1274
+ this.isDropizi = false;
1275
+ this.isWhite = false;
1276
+ }
1277
+ }
1278
+ LogoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1279
+ LogoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: LogoComponent, selector: "wac-logo", inputs: { isDropizi: "isDropizi", isWhite: "isWhite" }, ngImport: i0, template: "<div class=\"wac-logo\">\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"isDropizi\">\n <svg id=\"Calque_1\" data-name=\"Calque 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 102.33 40\">\n <defs>\n <style>\n .cls-0 {\n fill: #fa096a;\n }\n </style>\n </defs>\n <title>Logo_Dropizi</title>\n <path\n id=\"Logo_Dropizi-2\"\n data-name=\"Logo Dropizi-2\"\n class=\"cls-0\"\n d=\"M83,44.94a4.87,4.87,0,0,1-4.36-7,3.81,3.81,0,0,1-.72-2l-.3-5.69a9.61,9.61,0,0,1-3.43,2,13.51,13.51,0,0,1-3.34.63l-1.06,0L70,36.29a3.75,3.75,0,0,1-3.54,3.94l-2.25.11H64a3.69,3.69,0,0,1-3-1.56,12.82,12.82,0,0,1-7.68,2.61,13.45,13.45,0,0,1-5.37-1.14,3.67,3.67,0,0,1-2.46,1.09l-2.15.12h-.2a3.76,3.76,0,0,1-3.17-1.74l-3.29-5.25L36.84,38a3.78,3.78,0,0,1-1,2.7A3.74,3.74,0,0,1,33.28,42L31,42.09h-.19a3.77,3.77,0,0,1-3.06-1.58,12.62,12.62,0,0,1-1.62.87,15,15,0,0,1-5.35,1.24L13.49,43H13.3a3.76,3.76,0,0,1-3.74-3.54L8.5,19.3A3.75,3.75,0,0,1,12,15.36L19.37,15c.3,0,.59,0,.88,0a14.67,14.67,0,0,1,4.56.7,13.17,13.17,0,0,1,1.74.7,3.73,3.73,0,0,1,3.06-1.91l7.14-.37c.35,0,.69,0,1,0,3.65,0,6,1.12,7.41,2.57A13.29,13.29,0,0,1,49,14.33a12.05,12.05,0,0,1,4.44-.82c.23,0,.45,0,.69,0a13.63,13.63,0,0,1,5.2,1.35l.22.11a3.75,3.75,0,0,1,3.25-2.29l5.32-.27c.7,0,1.38-.06,2-.06.92,0,1.78,0,2.57.11a10.17,10.17,0,0,1,4.16,1.26l.37.24a3.78,3.78,0,0,1,3.22-2.2l2.18-.12h.2a3.89,3.89,0,0,1,2,.57,3.63,3.63,0,0,1,2.07-.79l12.9-.67h.11c0-.24-.07-.47-.09-.71a4.88,4.88,0,0,1,4.62-5.12h.25a4.86,4.86,0,0,1,4.88,4.62v.26A4.89,4.89,0,0,1,109,12a3.62,3.62,0,0,1,.72,2l1.06,20.14,0,0a3.75,3.75,0,0,1-3.54,3.94l-2.18.11h-.2a3.83,3.83,0,0,1-2-.57,3.54,3.54,0,0,1-2.06.78l-12.9.68h-.1c0,.24.07.47.09.71a4.87,4.87,0,0,1-1.25,3.51,4.82,4.82,0,0,1-3.37,1.6Zm-2-4.87v.11a2,2,0,0,0,2.1,1.9h0a2,2,0,0,0,1.9-2V40a2,2,0,0,0-2-1.9H83A2,2,0,0,0,81.05,40.07ZM19.54,17.84l-7.34.39a.89.89,0,0,0-.84.93l1.06,20.17a.89.89,0,0,0,.92.83l7.33-.39a11.89,11.89,0,0,0,4.32-1,9.7,9.7,0,0,0,3.3-2.36,8.91,8.91,0,0,0,1.46-2.14L30,38.4a.88.88,0,0,0,.92.84l2.25-.12A.88.88,0,0,0,34,38.2h0l-.34-6.38a.88.88,0,0,1,.84-.93h0l2.67-.14a.89.89,0,0,1,.8.41l4.41,7a.92.92,0,0,0,.8.42l2.17-.12a.88.88,0,0,0,.72-1.34l-4.25-7A.88.88,0,0,1,42,29c.22-.18.44-.37.64-.56a10.07,10.07,0,0,0,.5,3,9.65,9.65,0,0,0,2,3.45,11.39,11.39,0,0,0,3.45,2.5,10,10,0,0,0,8.09.47,11,11,0,0,0,6.08-6l.08-.18.26,4.91a.89.89,0,0,0,.92.84l2.25-.12a.89.89,0,0,0,.84-.92L66.86,31a.87.87,0,0,1,.83-.92h0l3-.16a10.49,10.49,0,0,0,2.6-.5A6.87,6.87,0,0,0,75.75,28a6.67,6.67,0,0,0,1.68-2.36l0-.12A8.77,8.77,0,0,0,78,21.73a9,9,0,0,0-.77-3.49,4.1,4.1,0,0,0-.22-.41,4.71,4.71,0,0,0-1.63-1.63,7.28,7.28,0,0,0-3-.87,28.9,28.9,0,0,0-4.16,0l-5.33.28a.86.86,0,0,0-.61.29.9.9,0,0,0-.22.63L62.33,21a10.85,10.85,0,0,0-.8-1A11.54,11.54,0,0,0,54,16.38,9.3,9.3,0,0,0,50,17a10.46,10.46,0,0,0-3.46,2.22,11.5,11.5,0,0,0-1.92,2.41q-1-5.05-7.73-4.7l-7.14.37a.88.88,0,0,0-.84.93l.22,4.15a9.5,9.5,0,0,0-5.19-4,12.2,12.2,0,0,0-3.65-.56C20.05,17.82,19.79,17.82,19.54,17.84Zm63.22-3.31-2.17.12a.9.9,0,0,0-.61.29.87.87,0,0,0-.23.64l1.06,20.15a.88.88,0,0,0,.93.84L84,36.45a.83.83,0,0,0,.61-.29.87.87,0,0,0,.23-.63l-1-20.09a1,1,0,0,0-1-.9Zm11.48,3.85a.9.9,0,0,1,.07.87L86.94,35a.88.88,0,0,0,.06.86.85.85,0,0,0,.76.4l12.9-.67h0a.76.76,0,0,0,.72-.8h0l-.13-2.48a.75.75,0,0,0-.8-.72l-6.21.33a.89.89,0,0,1-.84-1.26l7.37-15.74a.9.9,0,0,0-.07-.87.87.87,0,0,0-.78-.39L87,14.31a.75.75,0,0,0-.71.8l.13,2.49a.74.74,0,0,0,.25.52.75.75,0,0,0,.55.2L93.46,18h.05A.89.89,0,0,1,94.24,18.38ZM106,13.31l-2.24.12a.89.89,0,0,0-.85.93l.85,16.15v.1l.2,3.83a1,1,0,0,0,1,.91l2.18-.11h0a.9.9,0,0,0,.83-.93l-1.06-20.16a.88.88,0,0,0-.88-.84Zm-3.32-3.5v.1a2,2,0,0,0,4-.1V9.7a2,2,0,0,0-2-1.9h-.1a2,2,0,0,0-1.91,2ZM16.25,35.28l-.66-12.51a.87.87,0,0,1,.23-.64.83.83,0,0,1,.61-.29l3.3-.18a6,6,0,0,1,4.87,1.62,7.74,7.74,0,0,1,1.92,5.19,7.71,7.71,0,0,1-1.37,5.35A6,6,0,0,1,20.47,36l-3.31.17h0a.88.88,0,0,1-.88-.84Zm36.61-.55A6.9,6.9,0,0,1,48,32.44a5.3,5.3,0,0,1-1.12-2.17,6.7,6.7,0,0,1-.09-2.6,11,11,0,0,1,2.57-5.41,6.42,6.42,0,0,1,2.07-1.58,5.52,5.52,0,0,1,2.4-.52,6.36,6.36,0,0,1,2.64.66,5.45,5.45,0,0,1,3.3,3.78A8.32,8.32,0,0,1,59,30.1a10.69,10.69,0,0,1-1.66,2.54,6.76,6.76,0,0,1-2.07,1.57,5.42,5.42,0,0,1-2.31.52.27.27,0,0,1-.09,0Zm-19.2-7.84a.83.83,0,0,1-.29-.61l-.26-4.91a.87.87,0,0,1,.83-.92l2.22-.12a5.2,5.2,0,0,1,3.39.63,3.08,3.08,0,0,1,1,2.41,3.29,3.29,0,0,1-.8,2.6,5.23,5.23,0,0,1-3.43,1l-2.07.11h0a.89.89,0,0,1-.59-.23Zm32.93-1.41-.31-5.84a.9.9,0,0,1,.23-.64.86.86,0,0,1,.61-.29l2.4-.12a8.81,8.81,0,0,1,2,.09,3.1,3.1,0,0,1,1.33.57,2.58,2.58,0,0,1,.75,1.09A6.22,6.22,0,0,1,73.94,22a4.16,4.16,0,0,1-.79,3.14A4.63,4.63,0,0,1,70,26.19l-2.51.13h0a.9.9,0,0,1-.89-.84Z\"\n transform=\"translate(-8.49 -4.94)\"\n />\n </svg>\n </div>\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"!isDropizi\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128.044 40\">\n <defs>\n <style>\n .cls-1 {\n fill: #a4c445;\n }\n .cls-2 {\n fill: #52aecd;\n }\n </style>\n </defs>\n <g id=\"Logo_WiziShop\" transform=\"translate(0.024 0)\">\n <path\n id=\"Shop\"\n class=\"cls-1\"\n d=\"M50.812,38.431V12.3a2.468,2.468,0,0,1,2.452-1.643A2.307,2.307,0,0,1,55.446,12a7.058,7.058,0,0,1,4.107-1.348A5.245,5.245,0,0,1,63.218,12,6.1,6.1,0,0,1,64.7,16.365v7.208h-.012q0,7.282-5.835,7.282a8.453,8.453,0,0,1-3.224-.674v8.25A2.471,2.471,0,0,1,53.178,40,2.419,2.419,0,0,1,50.812,38.431Zm4.805-21.845V26a7.046,7.046,0,0,0,2.709.834c1.1-.012,1.655-1.091,1.655-3.248V15.912c0-.65-.4-.981-1.226-.981A3.59,3.59,0,0,0,55.617,16.586ZM33.858,19.614q0-9.727,7.159-9.721,4.1,0,5.762,3.065a15.8,15.8,0,0,1,1.067,6.656q0,4.56-1.226,6.8-1.655,3.144-6.031,3.138Q33.858,29.556,33.858,19.614Zm4.462,0c0,3.947.846,5.909,2.538,5.909,1.741.012,2.623-1.961,2.623-5.909q0-5.682-2.538-5.688Q38.315,13.926,38.321,19.614Zm-35.8,8.4A5.577,5.577,0,0,1,.172,23.917L0,22.262l4.536-.6a12.942,12.942,0,0,0,.613,2.317,1.976,1.976,0,0,0,2.01,1.189,1.375,1.375,0,0,0,1.226-.674A4.161,4.161,0,0,0,9,22.4c0-1.2-.736-2.623-2.219-4.266s-2.954-3.273-4.4-4.867A10,10,0,0,1,.025,7.2a9.322,9.322,0,0,1,.441-2.77Q1.955.012,6.84.012a7.629,7.629,0,0,1,4.585,1.5,5.555,5.555,0,0,1,2.317,4.131l.172,1.655-4.585.588a12.943,12.943,0,0,0-.613-2.317,1.976,1.976,0,0,0-2.01-1.189c-.7,0-1.189.429-1.483,1.275A3.756,3.756,0,0,0,4.965,7q0,2.537,4.622,7.416t4.622,8.017a7.691,7.691,0,0,1-1.876,4.72,6.225,6.225,0,0,1-5.185,2.39A7.665,7.665,0,0,1,2.525,28.011Zm23.488-.368V15.3c0-.552-.343-.821-1.042-.821a3.356,3.356,0,0,0-2.954,1.569v11.6a2.629,2.629,0,0,1-2.538,1.716,2.589,2.589,0,0,1-2.452-1.728V1.729A2.578,2.578,0,0,1,19.479,0a2.641,2.641,0,0,1,2.538,1.729v9.292a7.611,7.611,0,0,1,3.751-1.042,5.039,5.039,0,0,1,3.665,1.459,5.748,5.748,0,0,1,1.483,4.3V27.631a2.548,2.548,0,0,1-2.366,1.728l-.136,0A2.521,2.521,0,0,1,26.013,27.643Z\"\n transform=\"translate(63.32 0)\"\n />\n <path\n id=\"Wizi\"\n class=\"cls-2\"\n d=\"M13.341,28.661,12.2,22.617l-1.226,6.044a2.9,2.9,0,0,1-2.353,1.189,3.26,3.26,0,0,1-2.44-1.1L.064,2.55A1.793,1.793,0,0,1,.591.674,2.977,2.977,0,0,1,2.6,0c1.287,0,2.047.478,2.28,1.422L8.535,18.707l1.312-6.055a2.228,2.228,0,0,1,2.524-1.876,2.035,2.035,0,0,1,2.183,1.876l1.213,6.142Q16.816,12.6,18,6.3c.785-4.2,2.06-6.3,3.8-6.3a2.717,2.717,0,0,1,1.054.221,1.774,1.774,0,0,1,1.41,2.329l-6.032,26.1a2.881,2.881,0,0,1-2.354,1.2A3.247,3.247,0,0,1,13.341,28.661Zm39.816-.356V11.67c.293-.6,1.139-.895,2.537-.895,1.336,0,2.182.294,2.538.895V28.305c-.355.65-1.2.968-2.538.968C54.3,29.273,53.451,28.955,53.157,28.305Zm-15.667.968c-1.287-.147-1.924-.772-1.924-1.863a2.936,2.936,0,0,1,.343-1.5l7.16-10.984H37.33a2.307,2.307,0,0,1-1.765-2.182,2.226,2.226,0,0,1,1.778-2.182h10.1a2.144,2.144,0,0,1,1.679,2.1q0,1.8-2.574,5.529-2.483,3.366-4.879,6.73h5.7v-.013a2.235,2.235,0,0,1,0,4.364Zm-11.5-.968V11.67c.294-.6,1.14-.895,2.538-.895,1.336,0,2.182.294,2.537.895V28.305c-.355.65-1.2.968-2.537.968C27.131,29.273,26.285,28.955,25.991,28.305ZM53.9,8.054a2,2,0,0,1-.747-1.544A1.858,1.858,0,0,1,53.9,5a2.969,2.969,0,0,1,3.58,0,1.859,1.859,0,0,1,.748,1.508,1.962,1.962,0,0,1-.748,1.544,2.833,2.833,0,0,1-3.58,0Zm-27.165,0a2,2,0,0,1-.748-1.544A1.859,1.859,0,0,1,26.739,5a2.968,2.968,0,0,1,3.579,0,1.892,1.892,0,0,1,.748,1.508,1.959,1.959,0,0,1-.748,1.544,2.832,2.832,0,0,1-3.579,0Z\"\n transform=\"translate(-0.024 0.086)\"\n />\n </g>\n </svg>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
1280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LogoComponent, decorators: [{
1281
+ type: Component,
1282
+ args: [{ selector: 'wac-logo', encapsulation: ViewEncapsulation.None, template: "<div class=\"wac-logo\">\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"isDropizi\">\n <svg id=\"Calque_1\" data-name=\"Calque 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 102.33 40\">\n <defs>\n <style>\n .cls-0 {\n fill: #fa096a;\n }\n </style>\n </defs>\n <title>Logo_Dropizi</title>\n <path\n id=\"Logo_Dropizi-2\"\n data-name=\"Logo Dropizi-2\"\n class=\"cls-0\"\n d=\"M83,44.94a4.87,4.87,0,0,1-4.36-7,3.81,3.81,0,0,1-.72-2l-.3-5.69a9.61,9.61,0,0,1-3.43,2,13.51,13.51,0,0,1-3.34.63l-1.06,0L70,36.29a3.75,3.75,0,0,1-3.54,3.94l-2.25.11H64a3.69,3.69,0,0,1-3-1.56,12.82,12.82,0,0,1-7.68,2.61,13.45,13.45,0,0,1-5.37-1.14,3.67,3.67,0,0,1-2.46,1.09l-2.15.12h-.2a3.76,3.76,0,0,1-3.17-1.74l-3.29-5.25L36.84,38a3.78,3.78,0,0,1-1,2.7A3.74,3.74,0,0,1,33.28,42L31,42.09h-.19a3.77,3.77,0,0,1-3.06-1.58,12.62,12.62,0,0,1-1.62.87,15,15,0,0,1-5.35,1.24L13.49,43H13.3a3.76,3.76,0,0,1-3.74-3.54L8.5,19.3A3.75,3.75,0,0,1,12,15.36L19.37,15c.3,0,.59,0,.88,0a14.67,14.67,0,0,1,4.56.7,13.17,13.17,0,0,1,1.74.7,3.73,3.73,0,0,1,3.06-1.91l7.14-.37c.35,0,.69,0,1,0,3.65,0,6,1.12,7.41,2.57A13.29,13.29,0,0,1,49,14.33a12.05,12.05,0,0,1,4.44-.82c.23,0,.45,0,.69,0a13.63,13.63,0,0,1,5.2,1.35l.22.11a3.75,3.75,0,0,1,3.25-2.29l5.32-.27c.7,0,1.38-.06,2-.06.92,0,1.78,0,2.57.11a10.17,10.17,0,0,1,4.16,1.26l.37.24a3.78,3.78,0,0,1,3.22-2.2l2.18-.12h.2a3.89,3.89,0,0,1,2,.57,3.63,3.63,0,0,1,2.07-.79l12.9-.67h.11c0-.24-.07-.47-.09-.71a4.88,4.88,0,0,1,4.62-5.12h.25a4.86,4.86,0,0,1,4.88,4.62v.26A4.89,4.89,0,0,1,109,12a3.62,3.62,0,0,1,.72,2l1.06,20.14,0,0a3.75,3.75,0,0,1-3.54,3.94l-2.18.11h-.2a3.83,3.83,0,0,1-2-.57,3.54,3.54,0,0,1-2.06.78l-12.9.68h-.1c0,.24.07.47.09.71a4.87,4.87,0,0,1-1.25,3.51,4.82,4.82,0,0,1-3.37,1.6Zm-2-4.87v.11a2,2,0,0,0,2.1,1.9h0a2,2,0,0,0,1.9-2V40a2,2,0,0,0-2-1.9H83A2,2,0,0,0,81.05,40.07ZM19.54,17.84l-7.34.39a.89.89,0,0,0-.84.93l1.06,20.17a.89.89,0,0,0,.92.83l7.33-.39a11.89,11.89,0,0,0,4.32-1,9.7,9.7,0,0,0,3.3-2.36,8.91,8.91,0,0,0,1.46-2.14L30,38.4a.88.88,0,0,0,.92.84l2.25-.12A.88.88,0,0,0,34,38.2h0l-.34-6.38a.88.88,0,0,1,.84-.93h0l2.67-.14a.89.89,0,0,1,.8.41l4.41,7a.92.92,0,0,0,.8.42l2.17-.12a.88.88,0,0,0,.72-1.34l-4.25-7A.88.88,0,0,1,42,29c.22-.18.44-.37.64-.56a10.07,10.07,0,0,0,.5,3,9.65,9.65,0,0,0,2,3.45,11.39,11.39,0,0,0,3.45,2.5,10,10,0,0,0,8.09.47,11,11,0,0,0,6.08-6l.08-.18.26,4.91a.89.89,0,0,0,.92.84l2.25-.12a.89.89,0,0,0,.84-.92L66.86,31a.87.87,0,0,1,.83-.92h0l3-.16a10.49,10.49,0,0,0,2.6-.5A6.87,6.87,0,0,0,75.75,28a6.67,6.67,0,0,0,1.68-2.36l0-.12A8.77,8.77,0,0,0,78,21.73a9,9,0,0,0-.77-3.49,4.1,4.1,0,0,0-.22-.41,4.71,4.71,0,0,0-1.63-1.63,7.28,7.28,0,0,0-3-.87,28.9,28.9,0,0,0-4.16,0l-5.33.28a.86.86,0,0,0-.61.29.9.9,0,0,0-.22.63L62.33,21a10.85,10.85,0,0,0-.8-1A11.54,11.54,0,0,0,54,16.38,9.3,9.3,0,0,0,50,17a10.46,10.46,0,0,0-3.46,2.22,11.5,11.5,0,0,0-1.92,2.41q-1-5.05-7.73-4.7l-7.14.37a.88.88,0,0,0-.84.93l.22,4.15a9.5,9.5,0,0,0-5.19-4,12.2,12.2,0,0,0-3.65-.56C20.05,17.82,19.79,17.82,19.54,17.84Zm63.22-3.31-2.17.12a.9.9,0,0,0-.61.29.87.87,0,0,0-.23.64l1.06,20.15a.88.88,0,0,0,.93.84L84,36.45a.83.83,0,0,0,.61-.29.87.87,0,0,0,.23-.63l-1-20.09a1,1,0,0,0-1-.9Zm11.48,3.85a.9.9,0,0,1,.07.87L86.94,35a.88.88,0,0,0,.06.86.85.85,0,0,0,.76.4l12.9-.67h0a.76.76,0,0,0,.72-.8h0l-.13-2.48a.75.75,0,0,0-.8-.72l-6.21.33a.89.89,0,0,1-.84-1.26l7.37-15.74a.9.9,0,0,0-.07-.87.87.87,0,0,0-.78-.39L87,14.31a.75.75,0,0,0-.71.8l.13,2.49a.74.74,0,0,0,.25.52.75.75,0,0,0,.55.2L93.46,18h.05A.89.89,0,0,1,94.24,18.38ZM106,13.31l-2.24.12a.89.89,0,0,0-.85.93l.85,16.15v.1l.2,3.83a1,1,0,0,0,1,.91l2.18-.11h0a.9.9,0,0,0,.83-.93l-1.06-20.16a.88.88,0,0,0-.88-.84Zm-3.32-3.5v.1a2,2,0,0,0,4-.1V9.7a2,2,0,0,0-2-1.9h-.1a2,2,0,0,0-1.91,2ZM16.25,35.28l-.66-12.51a.87.87,0,0,1,.23-.64.83.83,0,0,1,.61-.29l3.3-.18a6,6,0,0,1,4.87,1.62,7.74,7.74,0,0,1,1.92,5.19,7.71,7.71,0,0,1-1.37,5.35A6,6,0,0,1,20.47,36l-3.31.17h0a.88.88,0,0,1-.88-.84Zm36.61-.55A6.9,6.9,0,0,1,48,32.44a5.3,5.3,0,0,1-1.12-2.17,6.7,6.7,0,0,1-.09-2.6,11,11,0,0,1,2.57-5.41,6.42,6.42,0,0,1,2.07-1.58,5.52,5.52,0,0,1,2.4-.52,6.36,6.36,0,0,1,2.64.66,5.45,5.45,0,0,1,3.3,3.78A8.32,8.32,0,0,1,59,30.1a10.69,10.69,0,0,1-1.66,2.54,6.76,6.76,0,0,1-2.07,1.57,5.42,5.42,0,0,1-2.31.52.27.27,0,0,1-.09,0Zm-19.2-7.84a.83.83,0,0,1-.29-.61l-.26-4.91a.87.87,0,0,1,.83-.92l2.22-.12a5.2,5.2,0,0,1,3.39.63,3.08,3.08,0,0,1,1,2.41,3.29,3.29,0,0,1-.8,2.6,5.23,5.23,0,0,1-3.43,1l-2.07.11h0a.89.89,0,0,1-.59-.23Zm32.93-1.41-.31-5.84a.9.9,0,0,1,.23-.64.86.86,0,0,1,.61-.29l2.4-.12a8.81,8.81,0,0,1,2,.09,3.1,3.1,0,0,1,1.33.57,2.58,2.58,0,0,1,.75,1.09A6.22,6.22,0,0,1,73.94,22a4.16,4.16,0,0,1-.79,3.14A4.63,4.63,0,0,1,70,26.19l-2.51.13h0a.9.9,0,0,1-.89-.84Z\"\n transform=\"translate(-8.49 -4.94)\"\n />\n </svg>\n </div>\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"!isDropizi\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128.044 40\">\n <defs>\n <style>\n .cls-1 {\n fill: #a4c445;\n }\n .cls-2 {\n fill: #52aecd;\n }\n </style>\n </defs>\n <g id=\"Logo_WiziShop\" transform=\"translate(0.024 0)\">\n <path\n id=\"Shop\"\n class=\"cls-1\"\n d=\"M50.812,38.431V12.3a2.468,2.468,0,0,1,2.452-1.643A2.307,2.307,0,0,1,55.446,12a7.058,7.058,0,0,1,4.107-1.348A5.245,5.245,0,0,1,63.218,12,6.1,6.1,0,0,1,64.7,16.365v7.208h-.012q0,7.282-5.835,7.282a8.453,8.453,0,0,1-3.224-.674v8.25A2.471,2.471,0,0,1,53.178,40,2.419,2.419,0,0,1,50.812,38.431Zm4.805-21.845V26a7.046,7.046,0,0,0,2.709.834c1.1-.012,1.655-1.091,1.655-3.248V15.912c0-.65-.4-.981-1.226-.981A3.59,3.59,0,0,0,55.617,16.586ZM33.858,19.614q0-9.727,7.159-9.721,4.1,0,5.762,3.065a15.8,15.8,0,0,1,1.067,6.656q0,4.56-1.226,6.8-1.655,3.144-6.031,3.138Q33.858,29.556,33.858,19.614Zm4.462,0c0,3.947.846,5.909,2.538,5.909,1.741.012,2.623-1.961,2.623-5.909q0-5.682-2.538-5.688Q38.315,13.926,38.321,19.614Zm-35.8,8.4A5.577,5.577,0,0,1,.172,23.917L0,22.262l4.536-.6a12.942,12.942,0,0,0,.613,2.317,1.976,1.976,0,0,0,2.01,1.189,1.375,1.375,0,0,0,1.226-.674A4.161,4.161,0,0,0,9,22.4c0-1.2-.736-2.623-2.219-4.266s-2.954-3.273-4.4-4.867A10,10,0,0,1,.025,7.2a9.322,9.322,0,0,1,.441-2.77Q1.955.012,6.84.012a7.629,7.629,0,0,1,4.585,1.5,5.555,5.555,0,0,1,2.317,4.131l.172,1.655-4.585.588a12.943,12.943,0,0,0-.613-2.317,1.976,1.976,0,0,0-2.01-1.189c-.7,0-1.189.429-1.483,1.275A3.756,3.756,0,0,0,4.965,7q0,2.537,4.622,7.416t4.622,8.017a7.691,7.691,0,0,1-1.876,4.72,6.225,6.225,0,0,1-5.185,2.39A7.665,7.665,0,0,1,2.525,28.011Zm23.488-.368V15.3c0-.552-.343-.821-1.042-.821a3.356,3.356,0,0,0-2.954,1.569v11.6a2.629,2.629,0,0,1-2.538,1.716,2.589,2.589,0,0,1-2.452-1.728V1.729A2.578,2.578,0,0,1,19.479,0a2.641,2.641,0,0,1,2.538,1.729v9.292a7.611,7.611,0,0,1,3.751-1.042,5.039,5.039,0,0,1,3.665,1.459,5.748,5.748,0,0,1,1.483,4.3V27.631a2.548,2.548,0,0,1-2.366,1.728l-.136,0A2.521,2.521,0,0,1,26.013,27.643Z\"\n transform=\"translate(63.32 0)\"\n />\n <path\n id=\"Wizi\"\n class=\"cls-2\"\n d=\"M13.341,28.661,12.2,22.617l-1.226,6.044a2.9,2.9,0,0,1-2.353,1.189,3.26,3.26,0,0,1-2.44-1.1L.064,2.55A1.793,1.793,0,0,1,.591.674,2.977,2.977,0,0,1,2.6,0c1.287,0,2.047.478,2.28,1.422L8.535,18.707l1.312-6.055a2.228,2.228,0,0,1,2.524-1.876,2.035,2.035,0,0,1,2.183,1.876l1.213,6.142Q16.816,12.6,18,6.3c.785-4.2,2.06-6.3,3.8-6.3a2.717,2.717,0,0,1,1.054.221,1.774,1.774,0,0,1,1.41,2.329l-6.032,26.1a2.881,2.881,0,0,1-2.354,1.2A3.247,3.247,0,0,1,13.341,28.661Zm39.816-.356V11.67c.293-.6,1.139-.895,2.537-.895,1.336,0,2.182.294,2.538.895V28.305c-.355.65-1.2.968-2.538.968C54.3,29.273,53.451,28.955,53.157,28.305Zm-15.667.968c-1.287-.147-1.924-.772-1.924-1.863a2.936,2.936,0,0,1,.343-1.5l7.16-10.984H37.33a2.307,2.307,0,0,1-1.765-2.182,2.226,2.226,0,0,1,1.778-2.182h10.1a2.144,2.144,0,0,1,1.679,2.1q0,1.8-2.574,5.529-2.483,3.366-4.879,6.73h5.7v-.013a2.235,2.235,0,0,1,0,4.364Zm-11.5-.968V11.67c.294-.6,1.14-.895,2.538-.895,1.336,0,2.182.294,2.537.895V28.305c-.355.65-1.2.968-2.537.968C27.131,29.273,26.285,28.955,25.991,28.305ZM53.9,8.054a2,2,0,0,1-.747-1.544A1.858,1.858,0,0,1,53.9,5a2.969,2.969,0,0,1,3.58,0,1.859,1.859,0,0,1,.748,1.508,1.962,1.962,0,0,1-.748,1.544,2.833,2.833,0,0,1-3.58,0Zm-27.165,0a2,2,0,0,1-.748-1.544A1.859,1.859,0,0,1,26.739,5a2.968,2.968,0,0,1,3.579,0,1.892,1.892,0,0,1,.748,1.508,1.959,1.959,0,0,1-.748,1.544,2.832,2.832,0,0,1-3.579,0Z\"\n transform=\"translate(-0.024 0.086)\"\n />\n </g>\n </svg>\n </div>\n</div>\n" }]
1283
+ }], ctorParameters: function () { return []; }, propDecorators: { isDropizi: [{
1284
+ type: Input
1285
+ }], isWhite: [{
1286
+ type: Input
1287
+ }] } });
1288
+
1289
+ class RadioComponent {
1290
+ constructor() {
1291
+ this.label = '';
1292
+ this.id = '';
1293
+ this.alone = false;
1294
+ this.changeInput = new EventEmitter();
1295
+ this.disabled = false;
1296
+ }
1297
+ registerOnChange(fn) {
1298
+ this._onChange = fn;
1299
+ }
1300
+ registerOnTouched(fn) {
1301
+ this._onTouched = fn;
1302
+ }
1303
+ setDisabledState(isDisabled) {
1304
+ this.disabled = isDisabled;
1305
+ }
1306
+ writeValue(obj) {
1307
+ this.value = obj;
1308
+ }
1309
+ onChange(value) {
1310
+ if (this._onChange) {
1311
+ this._onChange(value);
1312
+ }
1313
+ }
1314
+ valueInput(value) {
1315
+ this.changeInput.emit(value);
1316
+ }
1317
+ }
1318
+ RadioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: RadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1319
+ RadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: RadioComponent, selector: "wac-radio", inputs: { label: "label", options: "options", value: "value", type: "type", id: "id", name: "name", alone: "alone" }, outputs: { changeInput: "changeInput" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioComponent, multi: true }], ngImport: i0, template: "<div class=\"wac-radio\" *ngFor=\"let option of options\" [ngClass]=\"{ 'wac-radio--nowrap': type === 'column', alone: alone }\">\n <div class=\"wac-radio__row\">\n <input\n type=\"radio\"\n [id]=\"option.id\"\n class=\"is-checkradio\"\n [name]=\"option.name\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"option.id\">{{ option.label }}</label>\n <div class=\"wac-radio__input\" *ngIf=\"value && option.value && option.hasInput\">\n <input type=\"text\" [placeholder]=\"option.placeholderInput\" (blur)=\"valueInput($event)\" />\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
1320
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: RadioComponent, decorators: [{
1321
+ type: Component,
1322
+ args: [{ selector: 'wac-radio', encapsulation: ViewEncapsulation.None, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioComponent, multi: true }], template: "<div class=\"wac-radio\" *ngFor=\"let option of options\" [ngClass]=\"{ 'wac-radio--nowrap': type === 'column', alone: alone }\">\n <div class=\"wac-radio__row\">\n <input\n type=\"radio\"\n [id]=\"option.id\"\n class=\"is-checkradio\"\n [name]=\"option.name\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"option.id\">{{ option.label }}</label>\n <div class=\"wac-radio__input\" *ngIf=\"value && option.value && option.hasInput\">\n <input type=\"text\" [placeholder]=\"option.placeholderInput\" (blur)=\"valueInput($event)\" />\n </div>\n </div>\n</div>\n" }]
1323
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
1324
+ type: Input
1325
+ }], options: [{
1326
+ type: Input
1327
+ }], value: [{
1328
+ type: Input
1329
+ }], type: [{
1330
+ type: Input
1331
+ }], id: [{
1332
+ type: Input
1333
+ }], name: [{
1334
+ type: Input
1335
+ }], alone: [{
1336
+ type: Input
1337
+ }], changeInput: [{
1338
+ type: Output
1339
+ }] } });
1340
+
1341
+ class StateComponent {
1342
+ constructor() {
1343
+ this.state = 'success';
1344
+ }
1345
+ }
1346
+ StateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: StateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1347
+ StateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: StateComponent, selector: "wac-state", inputs: { state: "state" }, ngImport: i0, template: "<div [class]=\"'wac-state ' + state\"></div>\n", encapsulation: i0.ViewEncapsulation.None });
1348
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: StateComponent, decorators: [{
1349
+ type: Component,
1350
+ args: [{ selector: 'wac-state', encapsulation: ViewEncapsulation.None, template: "<div [class]=\"'wac-state ' + state\"></div>\n" }]
1351
+ }], ctorParameters: function () { return []; }, propDecorators: { state: [{
1352
+ type: Input
1353
+ }] } });
1354
+
1355
+ const inOutX = trigger('inOutXAnimation', [
1356
+ transition(':enter', [
1357
+ style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }),
1358
+ animate('.3s ease-out', style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }))
1359
+ ]),
1360
+ transition(':leave', [
1361
+ style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }),
1362
+ animate('.3s ease-in', style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }))
1363
+ ])
1364
+ ]);
1365
+
1366
+ class LabelComponent {
1367
+ constructor() {
1368
+ this.index = 0;
1369
+ this.label = '';
1370
+ this.deleted = false;
1371
+ this.onDeleteLabel = new EventEmitter();
1372
+ }
1373
+ deleteLabel() {
1374
+ this.deleted = true;
1375
+ this.onDeleteLabel.emit({
1376
+ index: this.index,
1377
+ label: this.label
1378
+ });
1379
+ }
1380
+ }
1381
+ LabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1382
+ LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: LabelComponent, selector: "wac-label", inputs: { index: "index", label: "label", deleted: "deleted" }, outputs: { onDeleteLabel: "onDeleteLabel" }, ngImport: i0, template: "<div *ngIf=\"!deleted\" [@inOutXAnimation] class=\"wac-label\">\n <div class=\"wac-label__wrapper\">\n {{ label }}\n <i class=\"far fa-times\" (click)=\"deleteLabel()\"></i>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [inOutX], encapsulation: i0.ViewEncapsulation.None });
1383
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LabelComponent, decorators: [{
1384
+ type: Component,
1385
+ args: [{ selector: 'wac-label', encapsulation: ViewEncapsulation.None, animations: [inOutX], template: "<div *ngIf=\"!deleted\" [@inOutXAnimation] class=\"wac-label\">\n <div class=\"wac-label__wrapper\">\n {{ label }}\n <i class=\"far fa-times\" (click)=\"deleteLabel()\"></i>\n </div>\n</div>\n" }]
1386
+ }], ctorParameters: function () { return []; }, propDecorators: { index: [{
1387
+ type: Input
1388
+ }], label: [{
1389
+ type: Input
1390
+ }], deleted: [{
1391
+ type: Input
1392
+ }], onDeleteLabel: [{
1393
+ type: Output
1394
+ }] } });
1395
+
1396
+ class CalendarComponent {
1397
+ constructor() {
1398
+ this.type = 'input';
1399
+ this.options = {
1400
+ displayMode: 'inline',
1401
+ showHeader: false,
1402
+ showFooter: true,
1403
+ showButton: true
1404
+ };
1405
+ this.position = 'bottom';
1406
+ this.dateSelected = new Date();
1407
+ this.typeDate = 'datetime-local';
1408
+ this.noMargin = false;
1409
+ this.selected = new EventEmitter();
1410
+ this.changeData = new EventEmitter();
1411
+ this.open = false;
1412
+ this.startLabel = '';
1413
+ this.endLabel = '';
1414
+ }
1415
+ changeDate(event) {
1416
+ this.currentDate = new Date(new Date(event.startDate).setHours(0, 0, 0, 0));
1417
+ this.dateSelected = new Date(new Date(new Date(event.startDate).setHours(0, 0, 0, 0)).getTime() +
1418
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1419
+ parseInt(this.currentMinutes, 0) * 60000);
1420
+ this.triggerChange({
1421
+ startDate: this.dateSelected,
1422
+ endDate: this.dateSelected
1423
+ });
1424
+ }
1425
+ triggerChange(event) {
1426
+ this.changeData.emit(event);
1427
+ }
1428
+ openCalendar(value = null) {
1429
+ if (value === 'close') {
1430
+ if (this.open) {
1431
+ this.open = false;
1432
+ }
1433
+ }
1434
+ else {
1435
+ this.open = !this.open;
1436
+ }
1437
+ }
1438
+ ngOnInit() {
1439
+ if (this.type === 'edit' && this.label) {
1440
+ const splitLabel = this.label.split('{x}');
1441
+ if (splitLabel.length > 1) {
1442
+ this.startLabel = splitLabel[0];
1443
+ this.endLabel = splitLabel[1];
1444
+ }
1445
+ else {
1446
+ this.startLabel = this.label;
1447
+ }
1448
+ }
1449
+ this.currentHours =
1450
+ new Date(this.dateSelected).getHours() < 10 ? '0' + new Date(this.dateSelected).getHours() : new Date(this.dateSelected).getHours();
1451
+ this.currentMinutes =
1452
+ new Date(this.dateSelected).getMinutes() < 10
1453
+ ? '0' + new Date(this.dateSelected).getMinutes()
1454
+ : new Date(this.dateSelected).getMinutes();
1455
+ this.currentDate = new Date(this.dateSelected).setHours(0, 0, 0, 0);
1456
+ if (this.typeDate === 'date') {
1457
+ this.currentHours = '00';
1458
+ this.currentMinutes = '00';
1459
+ }
1460
+ }
1461
+ verifKeyup(events) {
1462
+ events.target.value = events.target.value.replace(/\D+/g, '');
1463
+ }
1464
+ verifHours(events) {
1465
+ const value = parseInt(events.target.value, 0);
1466
+ events.target.value = this.currentHours = value < 24 ? (value < 10 ? '0' + value : value) : 23;
1467
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1468
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1469
+ parseInt(this.currentMinutes, 0) * 60000);
1470
+ this.dateSelected = dateData;
1471
+ this.triggerChange({
1472
+ startDate: dateData,
1473
+ endDate: dateData
1474
+ });
1475
+ }
1476
+ verifMinutes(events) {
1477
+ const value = parseInt(events.target.value, 0);
1478
+ events.target.value = this.currentMinutes = value < 60 ? (value < 10 ? '0' + value : value) : 59;
1479
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1480
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1481
+ parseInt(this.currentMinutes, 0) * 60000);
1482
+ this.dateSelected = dateData;
1483
+ this.triggerChange({
1484
+ startDate: dateData,
1485
+ endDate: dateData
1486
+ });
1487
+ }
1488
+ addHours(target) {
1489
+ target.value = this.currentHours =
1490
+ parseInt(target.value, 0) + 1 < 24
1491
+ ? parseInt(target.value, 0) + 1 < 10
1492
+ ? '0' + (parseInt(target.value, 0) + 1)
1493
+ : parseInt(target.value, 0) + 1
1494
+ : parseInt(target.value, 0) < 10
1495
+ ? '0' + parseInt(target.value, 0)
1496
+ : parseInt(target.value, 0);
1497
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1498
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1499
+ parseInt(this.currentMinutes, 0) * 60000);
1500
+ this.dateSelected = dateData;
1501
+ this.triggerChange({
1502
+ startDate: dateData,
1503
+ endDate: dateData
1504
+ });
1505
+ }
1506
+ removeHours(target) {
1507
+ target.value = this.currentHours =
1508
+ parseInt(target.value, 0) - 1 > -1
1509
+ ? parseInt(target.value, 0) - 1 < 10
1510
+ ? '0' + (parseInt(target.value, 0) - 1)
1511
+ : parseInt(target.value, 0) - 1
1512
+ : parseInt(target.value, 0) < 10
1513
+ ? '0' + parseInt(target.value, 0)
1514
+ : parseInt(target.value, 0);
1515
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1516
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1517
+ parseInt(this.currentMinutes, 0) * 60000);
1518
+ this.dateSelected = dateData;
1519
+ this.triggerChange({
1520
+ startDate: dateData,
1521
+ endDate: dateData
1522
+ });
1523
+ }
1524
+ addMinutes(target) {
1525
+ target.value = this.currentMinutes =
1526
+ parseInt(target.value, 0) + 1 < 60
1527
+ ? parseInt(target.value, 0) + 1 < 10
1528
+ ? '0' + (parseInt(target.value, 0) + 1)
1529
+ : parseInt(target.value, 0) + 1
1530
+ : parseInt(target.value, 0) < 10
1531
+ ? '0' + parseInt(target.value, 0)
1532
+ : parseInt(target.value, 0);
1533
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1534
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1535
+ parseInt(this.currentMinutes, 0) * 60000);
1536
+ this.dateSelected = dateData;
1537
+ this.triggerChange({
1538
+ startDate: dateData,
1539
+ endDate: dateData
1540
+ });
1541
+ }
1542
+ removeMinutes(target) {
1543
+ target.value = this.currentMinutes =
1544
+ parseInt(target.value, 0) - 1 > -1
1545
+ ? parseInt(target.value, 0) - 1 < 10
1546
+ ? '0' + (parseInt(target.value, 0) - 1)
1547
+ : parseInt(target.value, 0) - 1
1548
+ : parseInt(target.value, 0) < 10
1549
+ ? '0' + parseInt(target.value, 0)
1550
+ : parseInt(target.value, 0);
1551
+ const dateData = new Date(new Date(new Date(this.currentDate).setHours(0, 0, 0, 0)).getTime() +
1552
+ parseInt(this.currentHours, 0) * 60 * 60 * 1000 +
1553
+ parseInt(this.currentMinutes, 0) * 60000);
1554
+ this.dateSelected = dateData;
1555
+ this.triggerChange({
1556
+ startDate: dateData,
1557
+ endDate: dateData
1558
+ });
1559
+ }
1560
+ }
1561
+ CalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1562
+ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CalendarComponent, selector: "wac-calendar", inputs: { label: "label", type: "type", options: "options", position: "position", dateSelected: "dateSelected", typeDate: "typeDate", noMargin: "noMargin" }, outputs: { selected: "selected", changeData: "changeData" }, ngImport: i0, template: "<div\n class=\"wac-calendar\"\n [ngClass]=\"{\n 'wac-calendar--input': type === 'input',\n 'wac-calendar--edit': type === 'edit',\n 'wac-calendar--select': type === 'select',\n 'wac-calendar--no-margin': noMargin,\n 'wac-calendar--open': open\n }\"\n [zIndexToggle]=\"open\"\n>\n <p class=\"wac-calendar__label\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\n <div class=\"wac-calendar__wrapper\">\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__input__icon\">\n <i class=\"far fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__input__date\">\n {{ dateSelected | date: 'dd/MM/yyyy' }}\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n {{ dateSelected | date: 'HH:mm' }}\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\n {{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__select__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__select__date\">\n {{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}\n </div>\n </div>\n </div>\n <div\n class=\"wac-calendar__absolute\"\n [ngClass]=\"{\n top: position === 'top',\n bottom: position === 'bottom',\n left: position === 'left',\n right: position === 'right',\n 'right-top': position === 'right-top',\n 'right-bottom': position === 'right-bottom',\n 'left-top': position === 'left-top',\n 'left-bottom': position === 'left-bottom',\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\n }\"\n >\n <nwb-date-picker #datePicker (change)=\"changeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"date\" [value]=\"dateSelected\" />\n </nwb-date-picker>\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\n <div class=\"wac-calendar__absolute__time__wrapper\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"addHours(hours)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"removeHours(hours)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\n <input #hours type=\"text\" value=\"{{ currentHours }}\" (keyup)=\"verifKeyup($event)\" (blur)=\"verifHours($event)\" />\n </div>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\n <input #minutes type=\"text\" value=\"{{ currentMinutes }}\" (keyup)=\"verifKeyup($event)\" (blur)=\"verifMinutes($event)\" />\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"addMinutes(minutes)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"removeMinutes(minutes)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.NwbDatePickerComponent, selector: "nwb-date-picker", inputs: ["options"], outputs: ["change", "clear"] }, { kind: "directive", type: i1$2.NwbDatePickerInputStartDirective, selector: "input[nwbDatepickerStart]", inputs: ["nwbDatepickerStart"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
1563
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CalendarComponent, decorators: [{
1564
+ type: Component,
1565
+ args: [{ selector: 'wac-calendar', template: "<div\n class=\"wac-calendar\"\n [ngClass]=\"{\n 'wac-calendar--input': type === 'input',\n 'wac-calendar--edit': type === 'edit',\n 'wac-calendar--select': type === 'select',\n 'wac-calendar--no-margin': noMargin,\n 'wac-calendar--open': open\n }\"\n [zIndexToggle]=\"open\"\n>\n <p class=\"wac-calendar__label\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\n <div class=\"wac-calendar__wrapper\">\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__input__icon\">\n <i class=\"far fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__input__date\">\n {{ dateSelected | date: 'dd/MM/yyyy' }}\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n {{ dateSelected | date: 'HH:mm' }}\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\n {{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__select__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__select__date\">\n {{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}\n </div>\n </div>\n </div>\n <div\n class=\"wac-calendar__absolute\"\n [ngClass]=\"{\n top: position === 'top',\n bottom: position === 'bottom',\n left: position === 'left',\n right: position === 'right',\n 'right-top': position === 'right-top',\n 'right-bottom': position === 'right-bottom',\n 'left-top': position === 'left-top',\n 'left-bottom': position === 'left-bottom',\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\n }\"\n >\n <nwb-date-picker #datePicker (change)=\"changeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"date\" [value]=\"dateSelected\" />\n </nwb-date-picker>\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\n <div class=\"wac-calendar__absolute__time__wrapper\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"addHours(hours)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"removeHours(hours)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\n <input #hours type=\"text\" value=\"{{ currentHours }}\" (keyup)=\"verifKeyup($event)\" (blur)=\"verifHours($event)\" />\n </div>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\n <input #minutes type=\"text\" value=\"{{ currentMinutes }}\" (keyup)=\"verifKeyup($event)\" (blur)=\"verifMinutes($event)\" />\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"addMinutes(minutes)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"removeMinutes(minutes)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\n</div>\n" }]
1566
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
1567
+ type: Input
1568
+ }], type: [{
1569
+ type: Input
1570
+ }], options: [{
1571
+ type: Input
1572
+ }], position: [{
1573
+ type: Input
1574
+ }], dateSelected: [{
1575
+ type: Input
1576
+ }], typeDate: [{
1577
+ type: Input
1578
+ }], noMargin: [{
1579
+ type: Input
1580
+ }], selected: [{
1581
+ type: Output
1582
+ }], changeData: [{
1583
+ type: Output
1584
+ }] } });
1585
+
1586
+ class WzEditInPlaceComponent {
1587
+ constructor() {
1588
+ this.config = {};
1589
+ this.customChange = new EventEmitter();
1590
+ this.objectKeys = Object.keys;
1591
+ this.editing = false;
1592
+ this.onChange = Function.prototype;
1593
+ this.onTouched = Function.prototype;
1594
+ }
1595
+ get value() {
1596
+ return this.currentValue;
1597
+ }
1598
+ set value(v) {
1599
+ if (v !== this.currentValue) {
1600
+ this.currentValue = v;
1601
+ }
1602
+ }
1603
+ writeValue(value) {
1604
+ if (value !== null) {
1605
+ if (this.config.currency) {
1606
+ this.currentValue = this.parseValueToNumber(value);
1607
+ if (this.config.separator !== '.') {
1608
+ this.currentValue = this.parseValueToSeparator(this.currentValue);
1609
+ }
1610
+ this.currentValue += this.config.currency;
1611
+ }
1612
+ else {
1613
+ this.currentValue = value;
1614
+ }
1615
+ }
1616
+ }
1617
+ registerOnChange(fn) {
1618
+ this.onChange = fn;
1619
+ }
1620
+ registerOnTouched(fn) {
1621
+ this.onTouched = fn;
1622
+ }
1623
+ _setValue(v) {
1624
+ if (this.type === 'select') {
1625
+ this.onChange(v);
1626
+ }
1627
+ else if (typeof this.config.currency === 'string') {
1628
+ v = this.parseValueToNumber(v);
1629
+ this.onChange(v);
1630
+ if (this.config.separator !== '.') {
1631
+ v = this.parseValueToSeparator(v);
1632
+ }
1633
+ v = v + this.config.currency;
1634
+ this.customChange.emit(v);
1635
+ }
1636
+ else {
1637
+ this.onChange(v);
1638
+ }
1639
+ this.writeValue(v);
1640
+ this.value = v;
1641
+ }
1642
+ ngAfterViewChecked() {
1643
+ if (this.input && this.editing) {
1644
+ this.input.nativeElement.focus();
1645
+ if (this.config.selectTextUponClick && this.firstEdit && this.preValue && this.input.nativeElement.value) {
1646
+ this.input.nativeElement.select();
1647
+ this.firstEdit = false;
1648
+ }
1649
+ }
1650
+ this.initialized = true;
1651
+ }
1652
+ startEditing() {
1653
+ if (!this.editing) {
1654
+ this.editing = true;
1655
+ this.currentValue = this.checkAndRemoveCurrency(this.currentValue);
1656
+ this.firstEdit = true;
1657
+ }
1658
+ }
1659
+ edit() {
1660
+ this.preValue = this.currentValue;
1661
+ this.editing = true;
1662
+ }
1663
+ onSubmit() {
1664
+ this.editing = false;
1665
+ if (this.currentValue !== this.preValue) {
1666
+ if (typeof this.config.handler === 'function') {
1667
+ this.isLoading = true;
1668
+ this.config.handler(this.currentValue, this.config.data).subscribe(data => {
1669
+ let hasChanged;
1670
+ this.isLoading = false;
1671
+ if (typeof data !== 'boolean') {
1672
+ this.currentValue = data.value;
1673
+ hasChanged = data.success;
1674
+ }
1675
+ else {
1676
+ hasChanged = data;
1677
+ }
1678
+ if (hasChanged) {
1679
+ this._setValue(this.currentValue);
1680
+ }
1681
+ else {
1682
+ this._setValue(this.preValue);
1683
+ }
1684
+ }, () => {
1685
+ this.isLoading = false;
1686
+ this._setValue(this.preValue);
1687
+ });
1688
+ }
1689
+ else {
1690
+ this._setValue(this.currentValue);
1691
+ }
1692
+ }
1693
+ else {
1694
+ if (typeof this.config.currency === 'string') {
1695
+ this.currentValue = this.currentValue + this.config.currency;
1696
+ }
1697
+ }
1698
+ }
1699
+ checkAndRemoveCurrency(value) {
1700
+ if (typeof this.config.currency === 'string') {
1701
+ return value.slice(0, -1);
1702
+ }
1703
+ return value;
1704
+ }
1705
+ parseValueToNumber(value) {
1706
+ if (!isNaN(value) && value !== '') {
1707
+ return parseFloat(value);
1708
+ }
1709
+ if (typeof this.config.currency === 'string') {
1710
+ const indexComma = value.indexOf(',');
1711
+ const indexDot = value.indexOf('.');
1712
+ if (indexComma > 0 && indexDot === -1) {
1713
+ const parsedValue = value.replace(',', '.');
1714
+ if (!isNaN(parsedValue)) {
1715
+ return parseFloat(parsedValue);
1716
+ }
1717
+ }
1718
+ if (indexDot > 0 && indexComma === -1) {
1719
+ if (!isNaN(value)) {
1720
+ return parseFloat(value);
1721
+ }
1722
+ }
1723
+ return 0;
1724
+ }
1725
+ }
1726
+ parseValueToSeparator(value) {
1727
+ if (typeof this.config.separator === 'string') {
1728
+ value = parseFloat(value).toFixed(2);
1729
+ return value.replace('.', this.config.separator);
1730
+ }
1731
+ return value;
1732
+ }
1733
+ ngOnChanges(changes) {
1734
+ if (this.initialized) {
1735
+ this.currentValue = this.checkAndRemoveCurrency(this.currentValue) + this.config.currency;
1736
+ this.customChange.emit(this.value);
1737
+ }
1738
+ }
1739
+ selectOption(event) {
1740
+ this.currentValue = event.target.innerText;
1741
+ this.closeSelect(event);
1742
+ event.stopPropagation();
1743
+ this.customChange.emit(event.target.value);
1744
+ }
1745
+ closeSelect(event) {
1746
+ this.editing = false;
1747
+ this.isLoading = false;
1748
+ event.stopPropagation();
1749
+ }
1750
+ }
1751
+ WzEditInPlaceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WzEditInPlaceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1752
+ WzEditInPlaceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: WzEditInPlaceComponent, selector: "wac-edit-in-place", inputs: { type: "type", nwbOptions: "nwbOptions", config: "config", label: "label" }, outputs: { customChange: "customChange" }, providers: [
1753
+ {
1754
+ provide: NG_VALUE_ACCESSOR,
1755
+ useExisting: WzEditInPlaceComponent,
1756
+ multi: true
1757
+ }
1758
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [class.nwb-wrapper--editable]=\"type === 'select' || (!editing && !isLoading)\" class=\"wac-edit-in-place nwb-wrapper\" (click)=\"startEditing()\">\n <span\n data-text=\"dd\"\n [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"\n [class.nwb-editing]=\"type === 'select' ? '' : editing\"\n [ngClass]=\"type === 'select' ? 'nwbSelect' : ''\"\n >\n {{ currentValue }}\n </span>\n\n <input\n #input\n *ngIf=\"type !== 'select' && editing\"\n [class.nwb-editable]=\"!editing\"\n [class.nwb-editing]=\"editing\"\n [class.nwb-is-loading]=\"isLoading\"\n type=\"text\"\n [(ngModel)]=\"value\"\n (focus)=\"edit()\"\n (blur)=\"onSubmit()\"\n (keyup.enter)=\"onSubmit()\"\n [ngStyle]=\"{ 'width.px': inputWidth }\"\n />\n <div class=\"nwbSelect__container\" *ngIf=\"type === 'select' && editing\">\n <div class=\"nwbSelect__background\" (click)=\"closeSelect($event)\"></div>\n <ng-container *ngFor=\"let nwbOption of objectKeys(nwbOptions)\">\n <button\n *ngIf=\"nwbOptions[nwbOption]\"\n [ngClass]=\"\n nwbOptions[nwbOption].label === currentValue\n ? 'nwbSelect__container__item nwbSelect__container__item--selected'\n : 'nwbSelect__container__item'\n \"\n (click)=\"selectOption($event)\"\n [value]=\"nwbOptions[nwbOption].value\"\n >\n {{ nwbOptions[nwbOption].label ? nwbOptions[nwbOption].label : nwbOptions[nwbOption].value }}\n </button>\n </ng-container>\n </div>\n\n <span class=\"nwb-loader\" [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"></span>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
1759
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WzEditInPlaceComponent, decorators: [{
1760
+ type: Component,
1761
+ args: [{ selector: 'wac-edit-in-place', encapsulation: ViewEncapsulation.None, providers: [
1762
+ {
1763
+ provide: NG_VALUE_ACCESSOR,
1764
+ useExisting: WzEditInPlaceComponent,
1765
+ multi: true
1766
+ }
1767
+ ], template: "<div [class.nwb-wrapper--editable]=\"type === 'select' || (!editing && !isLoading)\" class=\"wac-edit-in-place nwb-wrapper\" (click)=\"startEditing()\">\n <span\n data-text=\"dd\"\n [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"\n [class.nwb-editing]=\"type === 'select' ? '' : editing\"\n [ngClass]=\"type === 'select' ? 'nwbSelect' : ''\"\n >\n {{ currentValue }}\n </span>\n\n <input\n #input\n *ngIf=\"type !== 'select' && editing\"\n [class.nwb-editable]=\"!editing\"\n [class.nwb-editing]=\"editing\"\n [class.nwb-is-loading]=\"isLoading\"\n type=\"text\"\n [(ngModel)]=\"value\"\n (focus)=\"edit()\"\n (blur)=\"onSubmit()\"\n (keyup.enter)=\"onSubmit()\"\n [ngStyle]=\"{ 'width.px': inputWidth }\"\n />\n <div class=\"nwbSelect__container\" *ngIf=\"type === 'select' && editing\">\n <div class=\"nwbSelect__background\" (click)=\"closeSelect($event)\"></div>\n <ng-container *ngFor=\"let nwbOption of objectKeys(nwbOptions)\">\n <button\n *ngIf=\"nwbOptions[nwbOption]\"\n [ngClass]=\"\n nwbOptions[nwbOption].label === currentValue\n ? 'nwbSelect__container__item nwbSelect__container__item--selected'\n : 'nwbSelect__container__item'\n \"\n (click)=\"selectOption($event)\"\n [value]=\"nwbOptions[nwbOption].value\"\n >\n {{ nwbOptions[nwbOption].label ? nwbOptions[nwbOption].label : nwbOptions[nwbOption].value }}\n </button>\n </ng-container>\n </div>\n\n <span class=\"nwb-loader\" [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"></span>\n</div>\n" }]
1768
+ }], propDecorators: { type: [{
1769
+ type: Input
1770
+ }], nwbOptions: [{
1771
+ type: Input
1772
+ }], config: [{
1773
+ type: Input
1774
+ }], label: [{
1775
+ type: Input
1776
+ }], customChange: [{
1777
+ type: Output
1778
+ }], input: [{
1779
+ type: ViewChild,
1780
+ args: ['input']
1781
+ }] } });
1782
+
1783
+ class ProgressBarComponent {
1784
+ constructor(translateService) {
1785
+ this.translateService = translateService;
1786
+ this.valueLength = null;
1787
+ this.min = null;
1788
+ this.max = null;
1789
+ }
1790
+ progressBarClass(spanNumber = -1) {
1791
+ const length = this.valueLength;
1792
+ const min = this.min;
1793
+ const max = this.max;
1794
+ if (spanNumber === 1) {
1795
+ return {
1796
+ 'is-danger': length > max,
1797
+ 'is-success': length >= min && length <= max
1798
+ };
1799
+ }
1800
+ else if (spanNumber === 2) {
1801
+ return {
1802
+ 'is-success': length === max,
1803
+ 'is-danger': length > max
1804
+ };
1805
+ }
1806
+ else {
1807
+ return {
1808
+ 'is-warning': length < min,
1809
+ 'is-danger': length > max,
1810
+ 'is-success': length >= min && length <= max
1811
+ };
1812
+ }
1813
+ }
1814
+ progressBarSpanPosition(index) {
1815
+ const min = this.min;
1816
+ const max = this.max;
1817
+ const maxSize = this.progressBarGetMaxSize(max);
1818
+ const successMin = (min / maxSize) * 100;
1819
+ const successMax = (max / maxSize) * 100;
1820
+ return index === 1 ? successMin : successMax;
1821
+ }
1822
+ progressBarGetMaxSize(max) {
1823
+ return max + max / 4;
1824
+ }
1825
+ progressBarGetTextInfo() {
1826
+ const length = this.valueLength;
1827
+ const min = this.min;
1828
+ const max = this.max;
1829
+ if (length < min) {
1830
+ return this.translateService.instant('wac.input.progressbar.information.too.short');
1831
+ }
1832
+ else if (length > max) {
1833
+ return this.translateService.instant('wac.input.progressbar.information.too.long');
1834
+ }
1835
+ else {
1836
+ return this.translateService.instant('wac.input.progressbar.information.good');
1837
+ }
1838
+ }
1839
+ }
1840
+ ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarComponent, deps: [{ token: i1$3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
1841
+ ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: { valueLength: "valueLength", min: "min", max: "max" }, ngImport: i0, template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1842
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarComponent, decorators: [{
1843
+ type: Component,
1844
+ args: [{ selector: 'wac-progress-bar', template: "<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n" }]
1845
+ }], ctorParameters: function () { return [{ type: i1$3.TranslateService }]; }, propDecorators: { valueLength: [{
1846
+ type: Input
1847
+ }], min: [{
1848
+ type: Input
1849
+ }], max: [{
1850
+ type: Input
1851
+ }] } });
1852
+
1853
+ class TextAreaComponent {
1854
+ constructor() {
1855
+ // todo simplify and improve progress bar
1856
+ this.label = '';
1857
+ this.value = '';
1858
+ this.placeholder = '';
1859
+ this.textInfo = null;
1860
+ this.textError = null;
1861
+ this.size = null;
1862
+ this.min = null;
1863
+ this.max = null;
1864
+ this.progressBar = false;
1865
+ this.disabled = false;
1866
+ this.id = 'wac-textarea__' +
1867
+ Math.random()
1868
+ .toString(36)
1869
+ .substr(2, 9);
1870
+ }
1871
+ registerOnChange(fn) {
1872
+ this._onChange = fn;
1873
+ }
1874
+ registerOnTouched(fn) {
1875
+ this._onTouched = fn;
1876
+ }
1877
+ setDisabledState(isDisabled) {
1878
+ this.disabled = isDisabled;
1879
+ }
1880
+ writeValue(obj) {
1881
+ this.value = obj;
1882
+ }
1883
+ onChange(value) {
1884
+ if (this._onChange) {
1885
+ this._onChange(value);
1886
+ this.writeValue(value);
1887
+ }
1888
+ }
1889
+ onBlur() {
1890
+ if (this._onTouched) {
1891
+ this._onTouched();
1892
+ }
1893
+ }
1894
+ }
1895
+ TextAreaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1896
+ TextAreaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TextAreaComponent, selector: "wac-text-area", inputs: { label: "label", value: "value", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", size: "size", min: "min", max: "max", progressBar: "progressBar" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], ngImport: i0, template: "<div class=\"field wac-text-area\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': textError }\">\n <textarea\n class=\"textarea\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': textError, 'has-help-text': textInfo != '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n ></textarea>\n\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n >{{ value ? value.length : 0 }}/{{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }] });
1897
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TextAreaComponent, decorators: [{
1898
+ type: Component,
1899
+ args: [{ selector: 'wac-text-area', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }], template: "<div class=\"field wac-text-area\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': textError }\">\n <textarea\n class=\"textarea\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': textError, 'has-help-text': textInfo != '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n ></textarea>\n\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n >{{ value ? value.length : 0 }}/{{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
1900
+ }], propDecorators: { label: [{
1901
+ type: Input
1902
+ }], value: [{
1903
+ type: Input
1904
+ }], placeholder: [{
1905
+ type: Input
1906
+ }], textInfo: [{
1907
+ type: Input
1908
+ }], textError: [{
1909
+ type: Input
1910
+ }], size: [{
1911
+ type: Input
1912
+ }], min: [{
1913
+ type: Input
1914
+ }], max: [{
1915
+ type: Input
1916
+ }], progressBar: [{
1917
+ type: Input
1918
+ }] } });
1919
+
1920
+ class H1Component {
1921
+ constructor() {
1922
+ this.withImg = false;
1923
+ }
1924
+ ngOnInit() { }
1925
+ }
1926
+ H1Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H1Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
1927
+ H1Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: H1Component, selector: "wac-h1", inputs: { withImg: "withImg" }, ngImport: i0, template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg}\"><ng-content></ng-content></h1>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1928
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H1Component, decorators: [{
1929
+ type: Component,
1930
+ args: [{ selector: 'wac-h1', template: "<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg}\"><ng-content></ng-content></h1>\n" }]
1931
+ }], ctorParameters: function () { return []; }, propDecorators: { withImg: [{
1932
+ type: Input
1933
+ }] } });
1934
+
1935
+ class H2Component {
1936
+ constructor() { }
1937
+ ngOnInit() { }
1938
+ }
1939
+ H2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
1940
+ H2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: H2Component, selector: "wac-h2", ngImport: i0, template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" });
1941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H2Component, decorators: [{
1942
+ type: Component,
1943
+ args: [{ selector: 'wac-h2', template: "<h2 class=\"wac-h2\"><ng-content></ng-content></h2>\n" }]
1944
+ }], ctorParameters: function () { return []; } });
1945
+
1946
+ class H3Component {
1947
+ constructor() {
1948
+ this.grey = false;
1949
+ }
1950
+ ngOnInit() { }
1951
+ }
1952
+ H3Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H3Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
1953
+ H3Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: H3Component, selector: "wac-h3", inputs: { grey: "grey" }, ngImport: i0, template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1954
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H3Component, decorators: [{
1955
+ type: Component,
1956
+ args: [{ selector: 'wac-h3', template: "<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h3>\n" }]
1957
+ }], ctorParameters: function () { return []; }, propDecorators: { grey: [{
1958
+ type: Input
1959
+ }] } });
1960
+
1961
+ class HeaderPageComponent {
1962
+ constructor() {
1963
+ this.withImg = false;
1964
+ }
1965
+ ngOnInit() { }
1966
+ }
1967
+ HeaderPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: HeaderPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1968
+ HeaderPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: HeaderPageComponent, selector: "wac-header-page", inputs: { title: "title", linkBack: "linkBack", withImg: "withImg" }, ngImport: i0, template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\">\n <div class=\"wac-header-page__maxWidth__top__left\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <a *ngIf=\"linkBack\" [routerLink]=\"linkBack\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "component", type: H1Component, selector: "wac-h1", inputs: ["withImg"] }] });
1969
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: HeaderPageComponent, decorators: [{
1970
+ type: Component,
1971
+ args: [{ selector: 'wac-header-page', template: "<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\">\n <div class=\"wac-header-page__maxWidth__top__left\">\n <!-- TODO Hard to use when only want a button and not a router link -->\n <a *ngIf=\"linkBack\" [routerLink]=\"linkBack\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n" }]
1972
+ }], ctorParameters: function () { return []; }, propDecorators: { title: [{
1973
+ type: Input
1974
+ }], linkBack: [{
1975
+ type: Input
1976
+ }], withImg: [{
1977
+ type: Input
1978
+ }] } });
1979
+
1980
+ class TooltipComponent {
1981
+ constructor() {
1982
+ this.tooltipText = '';
1983
+ this.tooltipLink = '';
1984
+ this.tooltipUrl = '#';
1985
+ }
1986
+ ngOnInit() {
1987
+ if (this.tooltipIcon === '') {
1988
+ this.tooltipIcon = 'fas fa-info-circle';
1989
+ }
1990
+ }
1991
+ }
1992
+ TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1993
+ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TooltipComponent, selector: "wac-tooltip", inputs: { tooltipIcon: "tooltipIcon", tooltipText: "tooltipText", tooltipLink: "tooltipLink", tooltipUrl: "tooltipUrl" }, ngImport: i0, template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1994
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TooltipComponent, decorators: [{
1995
+ type: Component,
1996
+ args: [{ selector: 'wac-tooltip', template: "<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n" }]
1997
+ }], ctorParameters: function () { return []; }, propDecorators: { tooltipIcon: [{
1998
+ type: Input
1999
+ }], tooltipText: [{
2000
+ type: Input
2001
+ }], tooltipLink: [{
2002
+ type: Input
2003
+ }], tooltipUrl: [{
2004
+ type: Input
2005
+ }] } });
2006
+
2007
+ class InputComponent {
2008
+ constructor() {
2009
+ this.label = '';
2010
+ this.value = '';
2011
+ this.type = 'text';
2012
+ this.placeholder = '';
2013
+ this.textInfo = null;
2014
+ this.textError = null;
2015
+ this.size = null;
2016
+ this.isNumber = null;
2017
+ this.withoutBlock = false;
2018
+ this.icon = '';
2019
+ this.big = false;
2020
+ this.medium = false;
2021
+ this.boldLabel = 'false';
2022
+ this.min = null;
2023
+ this.max = null;
2024
+ this.disableMargin = false;
2025
+ this.textPrepend = null;
2026
+ this.textAppend = null;
2027
+ this.progressBar = false;
2028
+ this.extraClasses = '';
2029
+ this.keyPreventDefault = [];
2030
+ this.showTooltip = false;
2031
+ this.textTooltip = '';
2032
+ this.iconTooltip = '';
2033
+ this.urlTooltip = '';
2034
+ this.linkTooltip = '';
2035
+ this.padding = false;
2036
+ this.disabled = false;
2037
+ this.indication = '';
2038
+ this.success = false;
2039
+ this.indicationLeft = false;
2040
+ this.keypressEnter = new EventEmitter();
2041
+ this.KEYPRESS_ENTER = "Enter";
2042
+ this.id = 'wz-input_' +
2043
+ Math.random()
2044
+ .toString(36)
2045
+ .substr(2, 9);
2046
+ }
2047
+ registerOnChange(fn) {
2048
+ this._onChange = fn;
2049
+ }
2050
+ registerOnTouched(fn) {
2051
+ this._onTouched = fn;
2052
+ }
2053
+ setDisabledState(isDisabled) {
2054
+ this.disabled = isDisabled;
2055
+ }
2056
+ writeValue(obj) {
2057
+ this.value = obj;
2058
+ }
2059
+ onChange(value) {
2060
+ if (this._onChange) {
2061
+ this._onChange(value);
2062
+ }
2063
+ }
2064
+ onBlur() {
2065
+ if (this._onTouched) {
2066
+ this._onTouched();
2067
+ }
2068
+ }
2069
+ checkNumberValue(value) {
2070
+ if (this.min && this.min > value) {
2071
+ this.value = this.min;
2072
+ }
2073
+ if (this.max && this.max < value) {
2074
+ this.value = this.max;
2075
+ }
2076
+ }
2077
+ onFocusOut() {
2078
+ if (this.type === 'number') {
2079
+ this.checkNumberValue(this.value);
2080
+ }
2081
+ }
2082
+ keyPress(event) {
2083
+ if (this.keyPreventDefault.includes(event.key)) {
2084
+ event.preventDefault();
2085
+ }
2086
+ if (event.key === this.KEYPRESS_ENTER) {
2087
+ this.keypressEnter.next(true);
2088
+ }
2089
+ }
2090
+ }
2091
+ InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2092
+ InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: InputComponent, selector: "wac-input", inputs: { label: "label", value: "value", type: "type", placeholder: "placeholder", textInfo: "textInfo", textError: "textError", size: "size", isNumber: "isNumber", withoutBlock: "withoutBlock", icon: "icon", big: "big", medium: "medium", boldLabel: "boldLabel", min: "min", max: "max", disableMargin: "disableMargin", textPrepend: "textPrepend", textAppend: "textAppend", progressBar: "progressBar", extraClasses: "extraClasses", keyPreventDefault: "keyPreventDefault", showTooltip: "showTooltip", textTooltip: "textTooltip", iconTooltip: "iconTooltip", urlTooltip: "urlTooltip", linkTooltip: "linkTooltip", padding: "padding", disabled: "disabled", indication: "indication", success: "success", indicationLeft: "indicationLeft" }, outputs: { keypressEnter: "keypressEnter" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], ngImport: i0, template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel == 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"value && size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': textError,\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"textError && !textAppend && !indicationLeft\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TooltipComponent, selector: "wac-tooltip", inputs: ["tooltipIcon", "tooltipText", "tooltipLink", "tooltipUrl"] }, { kind: "component", type: ProgressBarComponent, selector: "wac-progress-bar", inputs: ["valueLength", "min", "max"] }] });
2093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputComponent, decorators: [{
2094
+ type: Component,
2095
+ args: [{ selector: 'wac-input', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }], template: "<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock\">\n <label\n [ngClass]=\"[boldLabel == 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"value && size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': textError,\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"textError && !textAppend && !indicationLeft\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n" }]
2096
+ }], propDecorators: { label: [{
2097
+ type: Input
2098
+ }], value: [{
2099
+ type: Input
2100
+ }], type: [{
2101
+ type: Input
2102
+ }], placeholder: [{
2103
+ type: Input
2104
+ }], textInfo: [{
2105
+ type: Input
2106
+ }], textError: [{
2107
+ type: Input
2108
+ }], size: [{
2109
+ type: Input
2110
+ }], isNumber: [{
2111
+ type: Input
2112
+ }], withoutBlock: [{
2113
+ type: Input
2114
+ }], icon: [{
2115
+ type: Input
2116
+ }], big: [{
2117
+ type: Input
2118
+ }], medium: [{
2119
+ type: Input
2120
+ }], boldLabel: [{
2121
+ type: Input
2122
+ }], min: [{
2123
+ type: Input
2124
+ }], max: [{
2125
+ type: Input
2126
+ }], disableMargin: [{
2127
+ type: Input
2128
+ }], textPrepend: [{
2129
+ type: Input
2130
+ }], textAppend: [{
2131
+ type: Input
2132
+ }], progressBar: [{
2133
+ type: Input
2134
+ }], extraClasses: [{
2135
+ type: Input
2136
+ }], keyPreventDefault: [{
2137
+ type: Input
2138
+ }], showTooltip: [{
2139
+ type: Input
2140
+ }], textTooltip: [{
2141
+ type: Input
2142
+ }], iconTooltip: [{
2143
+ type: Input
2144
+ }], urlTooltip: [{
2145
+ type: Input
2146
+ }], linkTooltip: [{
2147
+ type: Input
2148
+ }], padding: [{
2149
+ type: Input
2150
+ }], disabled: [{
2151
+ type: Input
2152
+ }], indication: [{
2153
+ type: Input
2154
+ }], success: [{
2155
+ type: Input
2156
+ }], indicationLeft: [{
2157
+ type: Input
2158
+ }], keypressEnter: [{
2159
+ type: Output
2160
+ }] } });
2161
+
2162
+ class LinkComponent {
2163
+ constructor(renderer2) {
2164
+ this.renderer2 = renderer2;
2165
+ this.target = '_self';
2166
+ }
2167
+ set href(link) {
2168
+ this._link = link;
2169
+ this.setAttributesLink();
2170
+ }
2171
+ get href() {
2172
+ return this._link;
2173
+ }
2174
+ ngOnInit() { }
2175
+ ngAfterViewInit() {
2176
+ this.setAttributesLink();
2177
+ }
2178
+ setAttributesLink() {
2179
+ if (!this.linkComponent) {
2180
+ return;
2181
+ }
2182
+ if (this.href) {
2183
+ this.renderer2.setAttribute(this.linkComponent.nativeElement, "href", this.href);
2184
+ this.renderer2.setAttribute(this.linkComponent.nativeElement, "target", this.target);
2185
+ }
2186
+ else {
2187
+ this.renderer2.removeAttribute(this.linkComponent.nativeElement, "href");
2188
+ this.renderer2.removeAttribute(this.linkComponent.nativeElement, "target");
2189
+ }
2190
+ }
2191
+ }
2192
+ LinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LinkComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2193
+ LinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: LinkComponent, selector: "wac-link", inputs: { href: "href", target: "target", id: "id", class: "class" }, viewQueries: [{ propertyName: "linkComponent", first: true, predicate: ["linkComponent"], descendants: true }], ngImport: i0, template: "<a #linkComponent class=\"wac-link\" [ngClass]=\"{ class: class }\" [id]=\"{ id: id }\"><ng-content></ng-content></a>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LinkComponent, decorators: [{
2195
+ type: Component,
2196
+ args: [{ selector: 'wac-link', template: "<a #linkComponent class=\"wac-link\" [ngClass]=\"{ class: class }\" [id]=\"{ id: id }\"><ng-content></ng-content></a>\n" }]
2197
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { href: [{
2198
+ type: Input
2199
+ }], target: [{
2200
+ type: Input
2201
+ }], id: [{
2202
+ type: Input
2203
+ }], class: [{
2204
+ type: Input
2205
+ }], linkComponent: [{
2206
+ type: ViewChild,
2207
+ args: ['linkComponent']
2208
+ }] } });
2209
+
2210
+ class SwitchComponent {
2211
+ constructor() {
2212
+ // todo add ngmodel and review texts display (textState is mandaoty in order to display textStateEnable and textStateDisable)
2213
+ this.value = false;
2214
+ this.textState = '';
2215
+ this.textStateEnable = '';
2216
+ this.textStateDisable = '';
2217
+ this.showInput = false;
2218
+ this.danger = false;
2219
+ this.whiteSpace = false;
2220
+ this.switchChange = new EventEmitter(); // todo set emitted type
2221
+ this.changeInput = new EventEmitter(); // todo set emitted type
2222
+ }
2223
+ ngOnInit() {
2224
+ this.id = 'switch-' + Math.floor(Math.random() * Math.floor(1000));
2225
+ }
2226
+ changeValue(event) {
2227
+ this.switchChange.emit(event.target.checked);
2228
+ }
2229
+ triggerInput() {
2230
+ this.changeInput.emit(this.valueInput);
2231
+ }
2232
+ }
2233
+ SwitchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2234
+ SwitchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SwitchComponent, selector: "wac-switch", inputs: { value: "value", textState: "textState", textStateEnable: "textStateEnable", textStateDisable: "textStateDisable", showInput: "showInput", placholderInput: "placholderInput", danger: "danger", whiteSpace: "whiteSpace" }, outputs: { switchChange: "switchChange", changeInput: "changeInput" }, ngImport: i0, template: "<div class=\"wac-switch\">\n <input type=\"checkbox\" [checked]=\"value\" (change)=\"changeValue($event)\" [id]=\"id\" [ngClass]=\"{ danger: danger }\"/>\n <label [for]=\"id\" class=\"wac-switch__label\">\n <span class=\"wac-switch__label__text\"\n ><ng-content></ng-content\n ><span\n *ngIf=\"textState\"\n [ngStyle]=\"{'whiteSpace': whiteSpace ? 'nowrap' :'normal'}\"\n >{{ textState }} <strong class=\"disable\" *ngIf=\"textStateDisable\">{{ textStateDisable }}</strong>\n <strong class=\"enable\" *ngIf=\"textStateEnable\">{{ textStateEnable }}</strong></span\n ></span\n >\n </label>\n</div>\n<div class=\"wac-show-input\" *ngIf=\"showInput && value\">\n <input [placeholder]=\"placholderInput\" type=\"text\" [(ngModel)]=\"valueInput\" (blur)=\"triggerInput()\" />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
2235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SwitchComponent, decorators: [{
2236
+ type: Component,
2237
+ args: [{ selector: 'wac-switch', template: "<div class=\"wac-switch\">\n <input type=\"checkbox\" [checked]=\"value\" (change)=\"changeValue($event)\" [id]=\"id\" [ngClass]=\"{ danger: danger }\"/>\n <label [for]=\"id\" class=\"wac-switch__label\">\n <span class=\"wac-switch__label__text\"\n ><ng-content></ng-content\n ><span\n *ngIf=\"textState\"\n [ngStyle]=\"{'whiteSpace': whiteSpace ? 'nowrap' :'normal'}\"\n >{{ textState }} <strong class=\"disable\" *ngIf=\"textStateDisable\">{{ textStateDisable }}</strong>\n <strong class=\"enable\" *ngIf=\"textStateEnable\">{{ textStateEnable }}</strong></span\n ></span\n >\n </label>\n</div>\n<div class=\"wac-show-input\" *ngIf=\"showInput && value\">\n <input [placeholder]=\"placholderInput\" type=\"text\" [(ngModel)]=\"valueInput\" (blur)=\"triggerInput()\" />\n</div>\n" }]
2238
+ }], ctorParameters: function () { return []; }, propDecorators: { value: [{
2239
+ type: Input
2240
+ }], textState: [{
2241
+ type: Input
2242
+ }], textStateEnable: [{
2243
+ type: Input
2244
+ }], textStateDisable: [{
2245
+ type: Input
2246
+ }], showInput: [{
2247
+ type: Input
2248
+ }], placholderInput: [{
2249
+ type: Input
2250
+ }], danger: [{
2251
+ type: Input
2252
+ }], whiteSpace: [{
2253
+ type: Input
2254
+ }], switchChange: [{
2255
+ type: Output
2256
+ }], changeInput: [{
2257
+ type: Output
2258
+ }] } });
2259
+
2260
+ class AlertComponent {
2261
+ constructor() {
2262
+ this.icon = true;
2263
+ this.warning = false;
2264
+ this.success = false;
2265
+ this.alert = false;
2266
+ this.iconClass = 'fas fa-info';
2267
+ }
2268
+ ngOnInit() { }
2269
+ }
2270
+ AlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2271
+ AlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: AlertComponent, selector: "wac-alert", inputs: { icon: "icon", warning: "warning", success: "success", alert: "alert", iconClass: "iconClass" }, ngImport: i0, template: "<div class=\"wac-alert\" [ngClass]=\"{ success: success, warning: warning, alert: alert }\">\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\n <p><ng-content></ng-content></p> <!-- ! Refacto : Remove p tag, attention \u00E0 wizi-admin -->\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2272
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertComponent, decorators: [{
2273
+ type: Component,
2274
+ args: [{ selector: 'wac-alert', template: "<div class=\"wac-alert\" [ngClass]=\"{ success: success, warning: warning, alert: alert }\">\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\n <p><ng-content></ng-content></p> <!-- ! Refacto : Remove p tag, attention \u00E0 wizi-admin -->\n</div>\n" }]
2275
+ }], ctorParameters: function () { return []; }, propDecorators: { icon: [{
2276
+ type: Input
2277
+ }], warning: [{
2278
+ type: Input
2279
+ }], success: [{
2280
+ type: Input
2281
+ }], alert: [{
2282
+ type: Input
2283
+ }], iconClass: [{
2284
+ type: Input
2285
+ }] } });
2286
+
2287
+ class TextComponent {
2288
+ constructor() { }
2289
+ ngOnInit() { }
2290
+ }
2291
+ TextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2292
+ TextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TextComponent, selector: "wac-text", inputs: { textClass: "textClass" }, ngImport: i0, template: "<div class=\"wac-text\" [class]=\"textClass\">\n <p><ng-content></ng-content></p>\n</div>\n" });
2293
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TextComponent, decorators: [{
2294
+ type: Component,
2295
+ args: [{ selector: 'wac-text', template: "<div class=\"wac-text\" [class]=\"textClass\">\n <p><ng-content></ng-content></p>\n</div>\n" }]
2296
+ }], ctorParameters: function () { return []; }, propDecorators: { textClass: [{
2297
+ type: Input
2298
+ }] } });
2299
+
2300
+ const pipes$1 = [PagniationArrayTotalPages, PagniationIsLastPage, PagniationText];
2301
+ class PaginationModule {
2302
+ }
2303
+ PaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2304
+ PaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: PaginationModule, declarations: [PaginationComponent, PagniationArrayTotalPages, PagniationIsLastPage, PagniationText], imports: [CommonModule,
2305
+ FormsModule,
2306
+ TranslateModule], exports: [PaginationComponent] });
2307
+ PaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PaginationModule, imports: [CommonModule,
2308
+ FormsModule,
2309
+ TranslateModule] });
2310
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PaginationModule, decorators: [{
2311
+ type: NgModule,
2312
+ args: [{
2313
+ imports: [
2314
+ CommonModule,
2315
+ FormsModule,
2316
+ TranslateModule
2317
+ ],
2318
+ exports: [PaginationComponent],
2319
+ declarations: [PaginationComponent, ...pipes$1],
2320
+ providers: [],
2321
+ }]
2322
+ }] });
2323
+
2324
+ class CheckboxModule {
2325
+ }
2326
+ CheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2327
+ CheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: CheckboxModule, declarations: [CheckboxComponent], imports: [CommonModule,
2328
+ FormsModule], exports: [CheckboxComponent] });
2329
+ CheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckboxModule, imports: [CommonModule,
2330
+ FormsModule] });
2331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CheckboxModule, decorators: [{
2332
+ type: NgModule,
2333
+ args: [{
2334
+ imports: [
2335
+ CommonModule,
2336
+ FormsModule,
2337
+ ],
2338
+ exports: [CheckboxComponent],
2339
+ declarations: [CheckboxComponent],
2340
+ providers: [],
2341
+ }]
2342
+ }] });
2343
+
2344
+ class ProgressBarModule {
2345
+ }
2346
+ ProgressBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2347
+ ProgressBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarModule, declarations: [ProgressBarComponent], imports: [CommonModule,
2348
+ FormsModule], exports: [ProgressBarComponent] });
2349
+ ProgressBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarModule, imports: [CommonModule,
2350
+ FormsModule] });
2351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ProgressBarModule, decorators: [{
2352
+ type: NgModule,
2353
+ args: [{
2354
+ imports: [
2355
+ CommonModule,
2356
+ FormsModule,
2357
+ ],
2358
+ exports: [ProgressBarComponent],
2359
+ declarations: [ProgressBarComponent],
2360
+ providers: [],
2361
+ }]
2362
+ }] });
2363
+
2364
+ class TooltipModule {
2365
+ }
2366
+ TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2367
+ TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: TooltipModule, declarations: [TooltipComponent], imports: [CommonModule,
2368
+ FormsModule], exports: [TooltipComponent] });
2369
+ TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TooltipModule, imports: [CommonModule,
2370
+ FormsModule] });
2371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TooltipModule, decorators: [{
2372
+ type: NgModule,
2373
+ args: [{
2374
+ imports: [
2375
+ CommonModule,
2376
+ FormsModule
2377
+ ],
2378
+ exports: [TooltipComponent],
2379
+ declarations: [TooltipComponent],
2380
+ providers: [],
2381
+ }]
2382
+ }] });
2383
+
2384
+ class InputModule {
2385
+ }
2386
+ InputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2387
+ InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: InputModule, declarations: [InputComponent], imports: [CommonModule,
2388
+ FormsModule,
2389
+ SharedDirectives,
2390
+ TooltipModule,
2391
+ ProgressBarModule], exports: [InputComponent] });
2392
+ InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputModule, imports: [CommonModule,
2393
+ FormsModule,
2394
+ SharedDirectives,
2395
+ TooltipModule,
2396
+ ProgressBarModule] });
2397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputModule, decorators: [{
2398
+ type: NgModule,
2399
+ args: [{
2400
+ imports: [
2401
+ CommonModule,
2402
+ FormsModule,
2403
+ SharedDirectives,
2404
+ TooltipModule,
2405
+ ProgressBarModule
2406
+ ],
2407
+ exports: [InputComponent],
2408
+ declarations: [InputComponent],
2409
+ providers: [],
2410
+ }]
2411
+ }] });
2412
+
2413
+ class InputSearchModule {
2414
+ }
2415
+ InputSearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2416
+ InputSearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: InputSearchModule, declarations: [InputSearchComponent], imports: [CommonModule,
2417
+ FormsModule,
2418
+ InputModule,
2419
+ SharedDirectives], exports: [InputSearchComponent] });
2420
+ InputSearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputSearchModule, imports: [CommonModule,
2421
+ FormsModule,
2422
+ InputModule,
2423
+ SharedDirectives] });
2424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputSearchModule, decorators: [{
2425
+ type: NgModule,
2426
+ args: [{
2427
+ imports: [
2428
+ CommonModule,
2429
+ FormsModule,
2430
+ InputModule,
2431
+ SharedDirectives
2432
+ ],
2433
+ exports: [InputSearchComponent],
2434
+ declarations: [InputSearchComponent],
2435
+ providers: [],
2436
+ }]
2437
+ }] });
2438
+
2439
+ class LoaderModule {
2440
+ }
2441
+ LoaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2442
+ LoaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: LoaderModule, declarations: [LoaderComponent], imports: [CommonModule,
2443
+ FormsModule], exports: [LoaderComponent] });
2444
+ LoaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoaderModule, imports: [CommonModule,
2445
+ FormsModule] });
2446
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: LoaderModule, decorators: [{
2447
+ type: NgModule,
2448
+ args: [{
2449
+ imports: [
2450
+ CommonModule,
2451
+ FormsModule,
2452
+ ],
2453
+ exports: [LoaderComponent],
2454
+ declarations: [LoaderComponent],
2455
+ providers: [],
2456
+ }]
2457
+ }] });
2458
+
2459
+ class TableColumn {
2460
+ constructor(currentCell, renderer, document) {
2461
+ this.currentCell = currentCell;
2462
+ this.renderer = renderer;
2463
+ this.document = document;
2464
+ this.centerCellValue = ['left', 'center', 'right'];
2465
+ }
2466
+ ngAfterViewInit() {
2467
+ this.applyCustomStylesOnCell();
2468
+ }
2469
+ applyCustomStylesOnCell() {
2470
+ this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';
2471
+ this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line__cell');
2472
+ if (this.centerCell) {
2473
+ if (this.centerCellValue.indexOf(this.centerCell) === -1) {
2474
+ throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';
2475
+ }
2476
+ let className = 'wac-table__body__line__cell--center' + '--' + this.centerCell;
2477
+ this.renderer.addClass(this.currentCell.nativeElement, className);
2478
+ }
2479
+ }
2480
+ }
2481
+ TableColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableColumn, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
2482
+ TableColumn.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: TableColumn, selector: "[tableColumn]", inputs: { columnSize: "columnSize", centerCell: "centerCell" }, ngImport: i0 });
2483
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableColumn, decorators: [{
2484
+ type: Directive,
2485
+ args: [{
2486
+ selector: '[tableColumn]'
2487
+ }]
2488
+ }], ctorParameters: function () {
2489
+ return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
2490
+ type: Inject,
2491
+ args: [DOCUMENT]
2492
+ }] }];
2493
+ }, propDecorators: { columnSize: [{
2494
+ type: Input,
2495
+ args: ['columnSize']
2496
+ }], centerCell: [{
2497
+ type: Input,
2498
+ args: ['centerCell']
2499
+ }] } });
2500
+
2501
+ class TableColumnHeader {
2502
+ constructor(currentCell, renderer, document, filtersTableService) {
2503
+ this.currentCell = currentCell;
2504
+ this.renderer = renderer;
2505
+ this.document = document;
2506
+ this.filtersTableService = filtersTableService;
2507
+ this._headerName = '';
2508
+ this.filterRouting = false; // Optional. Set to true to use Filter Routing.
2509
+ this.onSortChange = new EventEmitter(); // Emit the sort value (true, false, undefuned) of the current sort icon when clicking
2510
+ this.tableFiltersChange = new EventEmitter();
2511
+ this.centerCellValue = ['left', 'center', 'right'];
2512
+ this.subscriptions = [];
2513
+ }
2514
+ set headerName(value) {
2515
+ this._headerName = value;
2516
+ this.setHeaderName();
2517
+ }
2518
+ get headerName() {
2519
+ return this._headerName;
2520
+ }
2521
+ ngOnInit() {
2522
+ if (this.tableName && this.sortName) {
2523
+ if (this.filterRouting) {
2524
+ this.handleSortRouting();
2525
+ }
2526
+ else {
2527
+ this.handleSortBasic();
2528
+ }
2529
+ }
2530
+ }
2531
+ ngAfterViewInit() {
2532
+ this.applyCustomStylesOnCell();
2533
+ this.renderHeaderColumn();
2534
+ }
2535
+ handleSortRouting() {
2536
+ this.filterGroup = this.filtersTableService.getTableFilterGroup(this.tableName);
2537
+ const filterGroupChangeSub = this.filterGroup.valuesChange$.subscribe((filters) => {
2538
+ if (!filters || !filters.length) {
2539
+ return;
2540
+ }
2541
+ const filterSort = filters.filter(filter => filter.key === 'sort')[0];
2542
+ if (this.sortName !== filterSort.value) {
2543
+ this.resetSortIcon();
2544
+ }
2545
+ });
2546
+ this.subscriptions.push(filterGroupChangeSub);
2547
+ }
2548
+ handleSortBasic() {
2549
+ const sortChangeSub = this.filtersTableService.getSortChangeListner().subscribe(sort => {
2550
+ if (this.tableName === sort.dataTableName && this.sortName !== sort.sortName) {
2551
+ // Reset the current sort icon
2552
+ this.resetSortIcon();
2553
+ }
2554
+ });
2555
+ this.subscriptions.push(sortChangeSub);
2556
+ }
2557
+ resetSortIcon() {
2558
+ // Replace current icon with default icon
2559
+ this.contentHeader.className = this.contentHeader.className.replace(this.getCurrentSortIcon(), 'idle');
2560
+ }
2561
+ applyCustomStylesOnCell() {
2562
+ this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';
2563
+ this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__head__cell');
2564
+ if (this.centerCell) {
2565
+ if (this.centerCellValue.indexOf(this.centerCell) === -1) {
2566
+ throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';
2567
+ }
2568
+ let className = 'wac-table__head__cell--center' + '--' + this.centerCell;
2569
+ this.renderer.addClass(this.currentCell.nativeElement, className);
2570
+ }
2571
+ }
2572
+ renderHeaderColumn() {
2573
+ this.createHeaderContent();
2574
+ this.renderer.appendChild(this.currentCell.nativeElement, this.contentHeader);
2575
+ }
2576
+ createHeaderContent() {
2577
+ this.contentHeader = document.createElement('a');
2578
+ this.contentHeader.className = 'wac-table__head__cell__search';
2579
+ this.setHeaderName();
2580
+ if (this.tableName && this.sortName) {
2581
+ this.handleSort();
2582
+ }
2583
+ }
2584
+ setHeaderName() {
2585
+ if (!this.contentHeader) {
2586
+ return;
2587
+ }
2588
+ this.contentHeader.innerHTML = this.headerName;
2589
+ }
2590
+ handleSort() {
2591
+ // Set icon in the header column cell
2592
+ this.contentHeader.className += ' wac-table__head__cell__search--' + this.getInitialSortIcon();
2593
+ // On click on the content header, change the icon and emit event
2594
+ this.renderer.listen(this.contentHeader, 'click', () => {
2595
+ const currentIcon = this.getCurrentSortIcon();
2596
+ let newIcon;
2597
+ let newSort, newOrder;
2598
+ switch (currentIcon) {
2599
+ case 'idle':
2600
+ newIcon = 'up';
2601
+ newSort = this.sortName;
2602
+ newOrder = true;
2603
+ break;
2604
+ case 'up':
2605
+ newIcon = 'down';
2606
+ newSort = this.sortName;
2607
+ newOrder = false;
2608
+ break;
2609
+ case 'down':
2610
+ newIcon = 'idle';
2611
+ break;
2612
+ default:
2613
+ newIcon = 'idle';
2614
+ break;
2615
+ }
2616
+ // Replace the icon
2617
+ this.contentHeader.className = this.contentHeader.className.replace(currentIcon, newIcon);
2618
+ this.emitEvents(newSort, newOrder);
2619
+ });
2620
+ }
2621
+ getInitialSortIcon() {
2622
+ if (!this.filterRouting) {
2623
+ return 'idle';
2624
+ }
2625
+ // Get Initial Sort Icon for Routing Filter
2626
+ let initialSortIcon = 'idle';
2627
+ if (this.filterGroup.get('sort') === this.sortName) {
2628
+ initialSortIcon = this.filterGroup.get('order') == 'true' ? 'up' : 'down';
2629
+ }
2630
+ return initialSortIcon;
2631
+ }
2632
+ getCurrentSortIcon() {
2633
+ const regexp = /wac-table__head__cell__search--(?<icon>\w+)/;
2634
+ const { groups } = regexp.exec(this.contentHeader.className);
2635
+ return groups.icon;
2636
+ }
2637
+ emitEvents(newSort, newOrder) {
2638
+ if (this.filterRouting) {
2639
+ // Will send the filter routing value has changes event
2640
+ this.filterGroup.setValues({
2641
+ sort: newSort,
2642
+ order: newOrder,
2643
+ currentPage: 1
2644
+ });
2645
+ }
2646
+ else {
2647
+ // Send the event sort change
2648
+ this.filtersTableService.emitSortChange(this.tableName, this.sortName, newOrder);
2649
+ }
2650
+ if (this.tableFilters) {
2651
+ this.tableFilters.sort = this.sortName;
2652
+ this.tableFilters.order = newOrder;
2653
+ this.tableFilters.currentPage = 1;
2654
+ this.tableFiltersChange.emit(this.tableFilters);
2655
+ }
2656
+ this.onSortChange.emit(newOrder);
2657
+ }
2658
+ ngOnDestroy() {
2659
+ this.subscriptions.forEach(subscription => {
2660
+ subscription.unsubscribe();
2661
+ });
2662
+ }
2663
+ }
2664
+ TableColumnHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableColumnHeader, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: FiltersTableService }], target: i0.ɵɵFactoryTarget.Directive });
2665
+ TableColumnHeader.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.7", type: TableColumnHeader, selector: "[headerCell]", inputs: { headerName: "headerName", columnSize: "columnSize", filterRouting: "filterRouting", tableName: "tableName", sortName: "sortName", centerCell: "centerCell", tableFilters: "tableFilters" }, outputs: { onSortChange: "onSortChange", tableFiltersChange: "tableFiltersChange" }, ngImport: i0 });
2666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableColumnHeader, decorators: [{
2667
+ type: Directive,
2668
+ args: [{
2669
+ // The selector has the same name as the headerCell selector in table.component.html
2670
+ selector: '[headerCell]'
2671
+ }]
2672
+ }], ctorParameters: function () {
2673
+ return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
2674
+ type: Inject,
2675
+ args: [DOCUMENT]
2676
+ }] }, { type: FiltersTableService }];
2677
+ }, propDecorators: { headerName: [{
2678
+ type: Input,
2679
+ args: ['headerName']
2680
+ }], columnSize: [{
2681
+ type: Input,
2682
+ args: ['columnSize']
2683
+ }], filterRouting: [{
2684
+ type: Input,
2685
+ args: ['filterRouting']
2686
+ }], tableName: [{
2687
+ type: Input,
2688
+ args: ['tableName']
2689
+ }], sortName: [{
2690
+ type: Input,
2691
+ args: ['sortName']
2692
+ }], centerCell: [{
2693
+ type: Input,
2694
+ args: ['centerCell']
2695
+ }], onSortChange: [{
2696
+ type: Output
2697
+ }], tableFilters: [{
2698
+ type: Input
2699
+ }], tableFiltersChange: [{
2700
+ type: Output
2701
+ }] } });
2702
+
2703
+ const directives = [TableColumn, CheckBoxRow, TableColumnHeader, TableRow,];
2704
+ class TableModule {
2705
+ }
2706
+ TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2707
+ TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: TableModule, declarations: [TableComponent, TableColumn, CheckBoxRow, TableColumnHeader, TableRow], imports: [CommonModule,
2708
+ FormsModule,
2709
+ InputSearchModule,
2710
+ LoaderModule,
2711
+ CheckboxModule,
2712
+ PaginationModule], exports: [TableComponent, TableColumn, CheckBoxRow, TableColumnHeader, TableRow] });
2713
+ TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableModule, imports: [CommonModule,
2714
+ FormsModule,
2715
+ InputSearchModule,
2716
+ LoaderModule,
2717
+ CheckboxModule,
2718
+ PaginationModule] });
2719
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableModule, decorators: [{
2720
+ type: NgModule,
2721
+ args: [{
2722
+ imports: [
2723
+ CommonModule,
2724
+ FormsModule,
2725
+ InputSearchModule,
2726
+ LoaderModule,
2727
+ CheckboxModule,
2728
+ PaginationModule
2729
+ ],
2730
+ exports: [TableComponent, ...directives],
2731
+ declarations: [TableComponent, ...directives],
2732
+ providers: [],
2733
+ }]
2734
+ }] });
2735
+
2736
+ class UploadComponent {
2737
+ constructor() {
2738
+ this.label = 'Choisir les images à importer';
2739
+ this.type = 'button';
2740
+ this.icon = 'far fa-images';
2741
+ this.image = 'assets/angular-components/images/upload/icon_picture.svg';
2742
+ this.labelImage = 'Glisser-déposer votre image ici';
2743
+ this.open = new EventEmitter();
2744
+ }
2745
+ ngOnInit() { }
2746
+ triggerEvent(event) {
2747
+ this.open.emit(event);
2748
+ }
2749
+ }
2750
+ UploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: UploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2751
+ UploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: UploadComponent, selector: "wac-upload", inputs: { label: "label", type: "type", icon: "icon", image: "image", labelImage: "labelImage" }, outputs: { open: "open" }, ngImport: i0, template: "<div class=\"wac-upload\" [ngClass]=\"{ portrait: type === 'portrait', landscape: type === 'landscape' }\">\n <div class=\"wac-upload__wrapper\">\n <div *ngIf=\"(type === 'portrait' || type === 'landscape') && image\" class=\"wac-upload__wrapper__visual\">\n <img [src]=\"image\" />\n <strong [innerHTML]=\"labelImage\"></strong>\n </div>\n <span *ngIf=\"(type === 'portrait' || type === 'landscape') && image\">ou</span>\n <button (click)=\"triggerEvent($event)\">\n <span *ngIf=\"icon\"><i [classList]=\"icon\"></i></span>\n <span [innerHTML]=\"label\"></span>\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2752
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: UploadComponent, decorators: [{
2753
+ type: Component,
2754
+ args: [{ selector: 'wac-upload', template: "<div class=\"wac-upload\" [ngClass]=\"{ portrait: type === 'portrait', landscape: type === 'landscape' }\">\n <div class=\"wac-upload__wrapper\">\n <div *ngIf=\"(type === 'portrait' || type === 'landscape') && image\" class=\"wac-upload__wrapper__visual\">\n <img [src]=\"image\" />\n <strong [innerHTML]=\"labelImage\"></strong>\n </div>\n <span *ngIf=\"(type === 'portrait' || type === 'landscape') && image\">ou</span>\n <button (click)=\"triggerEvent($event)\">\n <span *ngIf=\"icon\"><i [classList]=\"icon\"></i></span>\n <span [innerHTML]=\"label\"></span>\n </button>\n </div>\n</div>\n" }]
2755
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
2756
+ type: Input
2757
+ }], type: [{
2758
+ type: Input
2759
+ }], icon: [{
2760
+ type: Input
2761
+ }], image: [{
2762
+ type: Input
2763
+ }], labelImage: [{
2764
+ type: Input
2765
+ }], open: [{
2766
+ type: Output
2767
+ }] } });
2768
+
2769
+ class H4Component {
2770
+ constructor() {
2771
+ this.grey = false;
2772
+ }
2773
+ ngOnInit() { }
2774
+ }
2775
+ H4Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H4Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
2776
+ H4Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: H4Component, selector: "wac-h4", inputs: { grey: "grey" }, ngImport: i0, template: "<h4 class=\"wac-h4\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h4>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2777
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: H4Component, decorators: [{
2778
+ type: Component,
2779
+ args: [{ selector: 'wac-h4', template: "<h4 class=\"wac-h4\" [ngClass]=\"{ grey: grey }\"><ng-content></ng-content></h4>\n" }]
2780
+ }], ctorParameters: function () { return []; }, propDecorators: { grey: [{
2781
+ type: Input
2782
+ }] } });
2783
+
2784
+ class SelectInTextComponent {
2785
+ constructor() {
2786
+ this.type = 'default';
2787
+ this.alwaysOpen = false;
2788
+ this.openCategories = false;
2789
+ this.currentLabel = '';
2790
+ this.currentLabelIcon = '';
2791
+ this.maxWidth = '100%';
2792
+ this.selectValue = new EventEmitter();
2793
+ this.clickOnCallToAction = new EventEmitter();
2794
+ }
2795
+ set items(items) {
2796
+ this._items = items;
2797
+ this.setInitialValues();
2798
+ }
2799
+ get items() {
2800
+ return this._items;
2801
+ }
2802
+ ngOnInit() {
2803
+ this.currentLabel = this.placeholder;
2804
+ this.setInitialValues();
2805
+ }
2806
+ setInitialValues() {
2807
+ if (!this.items.length) {
2808
+ return;
2809
+ }
2810
+ const itemSelected = this.getItemSelected();
2811
+ this.setCurrentItem(itemSelected);
2812
+ }
2813
+ onClose() {
2814
+ this.openCategories = false;
2815
+ }
2816
+ customTB(index, item) {
2817
+ return item.id;
2818
+ }
2819
+ onSelectItem(index) {
2820
+ this.unselectAll();
2821
+ const itemSelected = this.items[index];
2822
+ this.setCurrentItem(itemSelected);
2823
+ this.selectValue.emit(index);
2824
+ }
2825
+ onClickCallToAction() {
2826
+ this.clickOnCallToAction.emit(this.callToAction.value);
2827
+ }
2828
+ getItemSelected() {
2829
+ let itemSelected = null;
2830
+ this.items.forEach(item => {
2831
+ if (!item.selected) {
2832
+ return;
2833
+ }
2834
+ itemSelected = item;
2835
+ });
2836
+ return itemSelected;
2837
+ }
2838
+ setCurrentItem(itemSelected) {
2839
+ if (!itemSelected) {
2840
+ return;
2841
+ }
2842
+ itemSelected.selected = true;
2843
+ this.currentLabel = itemSelected.name;
2844
+ this.currentLabelIcon = itemSelected.icon;
2845
+ }
2846
+ unselectAll() {
2847
+ this.items.forEach(item => item.selected = false);
2848
+ }
2849
+ }
2850
+ SelectInTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectInTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2851
+ SelectInTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SelectInTextComponent, selector: "wac-select-in-text", inputs: { items: "items", placeholder: "placeholder", label: "label", maxWidthItems: "maxWidthItems", type: "type", callToAction: "callToAction", preText: "preText", postText: "postText", alwaysOpen: "alwaysOpen", maxWidth: "maxWidth" }, outputs: { selectValue: "selectValue", clickOnCallToAction: "clickOnCallToAction" }, ngImport: i0, template: "<div class=\"wac-select-in-text\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\">\n <div class=\"wac-select-in-text__prepend\" [innerHTML]=\"preText\" *ngIf=\"preText\"></div>\n <div #current class=\"wac-select-in-text__current\" (click)=\"openCategories = !openCategories\">\n <span>{{ currentLabel }}</span>\n <div\n class=\"wac-select-in-text__content\"\n [ngClass]=\"{ hidden: !openCategories && !alwaysOpen, open: type === 'open' }\"\n [ngStyle]=\"{ 'max-width': maxWidthItems }\"\n >\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length > 0\">\n <div class=\"wac-select-in-text__content__item\" *ngFor=\"let item of items; trackBy : customTB; let index = index;\">\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(index)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n </perfect-scrollbar>\n </div>\n </div>\n <div class=\"wac-select-in-text__after\" [innerHTML]=\"postText\" *ngIf=\"postText\"></div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "component", type: i4.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }] });
2852
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectInTextComponent, decorators: [{
2853
+ type: Component,
2854
+ args: [{ selector: 'wac-select-in-text', template: "<div class=\"wac-select-in-text\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\">\n <div class=\"wac-select-in-text__prepend\" [innerHTML]=\"preText\" *ngIf=\"preText\"></div>\n <div #current class=\"wac-select-in-text__current\" (click)=\"openCategories = !openCategories\">\n <span>{{ currentLabel }}</span>\n <div\n class=\"wac-select-in-text__content\"\n [ngClass]=\"{ hidden: !openCategories && !alwaysOpen, open: type === 'open' }\"\n [ngStyle]=\"{ 'max-width': maxWidthItems }\"\n >\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length > 0\">\n <div class=\"wac-select-in-text__content__item\" *ngFor=\"let item of items; trackBy : customTB; let index = index;\">\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(index)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n </perfect-scrollbar>\n </div>\n </div>\n <div class=\"wac-select-in-text__after\" [innerHTML]=\"postText\" *ngIf=\"postText\"></div>\n</div>\n" }]
2855
+ }], ctorParameters: function () { return []; }, propDecorators: { items: [{
2856
+ type: Input
2857
+ }], placeholder: [{
2858
+ type: Input
2859
+ }], label: [{
2860
+ type: Input
2861
+ }], maxWidthItems: [{
2862
+ type: Input
2863
+ }], type: [{
2864
+ type: Input
2865
+ }], callToAction: [{
2866
+ type: Input
2867
+ }], preText: [{
2868
+ type: Input
2869
+ }], postText: [{
2870
+ type: Input
2871
+ }], alwaysOpen: [{
2872
+ type: Input
2873
+ }], maxWidth: [{
2874
+ type: Input
2875
+ }], selectValue: [{
2876
+ type: Output
2877
+ }], clickOnCallToAction: [{
2878
+ type: Output
2879
+ }] } });
2880
+
2881
+ class SelectFiltersPipe {
2882
+ transform(items, filterName) {
2883
+ return items.filter(item => {
2884
+ const regexp = new RegExp(filterName, 'i');
2885
+ return regexp.test(item.name);
2886
+ });
2887
+ }
2888
+ }
2889
+ SelectFiltersPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectFiltersPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2890
+ SelectFiltersPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: SelectFiltersPipe, name: "selectFilters" });
2891
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectFiltersPipe, decorators: [{
2892
+ type: Pipe,
2893
+ args: [{
2894
+ name: 'selectFilters'
2895
+ }]
2896
+ }] });
2897
+
2898
+ class SelectComponent {
2899
+ constructor(translateService) {
2900
+ this.translateService = translateService;
2901
+ this.search = false;
2902
+ this.searchValue = '';
2903
+ this.searchValueChange = new EventEmitter();
2904
+ this.type = 'default';
2905
+ this.maxWidth = '100%';
2906
+ this.disabled = false;
2907
+ this.selectValue = new EventEmitter(); // todo rename more explicit
2908
+ this.clickOnCallToAction = new EventEmitter();
2909
+ this.openCategories = false;
2910
+ this.indexItemSelected = -1;
2911
+ // ControlValueAccessor methods
2912
+ this.onChange = () => { };
2913
+ this.onTouch = () => { };
2914
+ }
2915
+ set items(items) {
2916
+ this._items = items;
2917
+ this.setIndexItemSelected();
2918
+ }
2919
+ get items() {
2920
+ return this._items;
2921
+ }
2922
+ set callToAction(callToAction) {
2923
+ this._calllToAction = callToAction;
2924
+ }
2925
+ get callToAction() {
2926
+ return this._calllToAction;
2927
+ }
2928
+ ngOnInit() {
2929
+ }
2930
+ onClose() {
2931
+ this.openCategories = false;
2932
+ }
2933
+ customTB(item, index) {
2934
+ return `${item.id}-${index}`;
2935
+ }
2936
+ onSelectItem(id) {
2937
+ this.unselectAll();
2938
+ this.setIndexItemSelectedById(id);
2939
+ const itemSelected = this.getItemSelected();
2940
+ itemSelected.selected = true;
2941
+ this.selectValue.emit(this.indexItemSelected);
2942
+ this.onChange(itemSelected);
2943
+ }
2944
+ onClickCallToAction() {
2945
+ this.onClose();
2946
+ this.clickOnCallToAction.emit(this.callToAction.value);
2947
+ }
2948
+ onSearcheValueChange() {
2949
+ this.searchValueChange.emit(this.searchValue);
2950
+ }
2951
+ getItemSelected() {
2952
+ return this.items[this.indexItemSelected];
2953
+ }
2954
+ showCategories() {
2955
+ this.openCategories = true;
2956
+ setTimeout(() => {
2957
+ var _a;
2958
+ (_a = this.searchElement.nativeElement) === null || _a === void 0 ? void 0 : _a.focus();
2959
+ }, 0);
2960
+ }
2961
+ unselectAll() {
2962
+ this.items.forEach(item => item.selected = false);
2963
+ }
2964
+ setIndexItemSelectedById(id) {
2965
+ this.indexItemSelected = this.items.findIndex(item => item.id === id);
2966
+ }
2967
+ setIndexItemSelected() {
2968
+ this.indexItemSelected = this.items.findIndex(item => item.selected);
2969
+ }
2970
+ writeValue(selectItem) {
2971
+ if (!selectItem) {
2972
+ return;
2973
+ }
2974
+ this.unselectAll();
2975
+ selectItem.selected = true;
2976
+ this.setIndexItemSelectedById(selectItem.id);
2977
+ }
2978
+ registerOnChange(fn) {
2979
+ this.onChange = fn;
2980
+ }
2981
+ registerOnTouched(fn) {
2982
+ this.onTouch = fn;
2983
+ }
2984
+ }
2985
+ SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectComponent, deps: [{ token: i1$3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
2986
+ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SelectComponent, selector: "wac-select", inputs: { items: "items", placeholder: "placeholder", label: "label", maxWidthItems: "maxWidthItems", search: "search", searchValue: "searchValue", type: "type", callToAction: "callToAction", maxWidth: "maxWidth", disabled: "disabled" }, outputs: { searchValueChange: "searchValueChange", selectValue: "selectValue", clickOnCallToAction: "clickOnCallToAction" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true }], viewQueries: [{ propertyName: "searchElement", first: true, predicate: ["search"], descendants: true }], ngImport: i0, template: "<p *ngIf=\"label\" [innerHTML]=\"label\" class=\"wac-select__label\"></p>\n\n<div class=\"wac-select\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n\n <div class=\"wac-select__current\" [ngClass]=\"{ 'select-disabled' : disabled }\" (click)=\"!disabled && openCategories = !openCategories\" *ngIf=\"!search\">\n <span *ngIf=\"indexItemSelected !== -1\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span [innerHTML]=\"indexItemSelected !== -1 ? items[indexItemSelected].name : placeholder\"></span><span><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__current wac-select__current--withSearch\" [ngClass]=\"{ 'select-disabled' : disabled, 'open-search': openCategories }\" *ngIf=\"search\">\n <div class=\"wac-select__current__search\" *ngIf=\"openCategories && !disabled\">\n <i class=\"far fa-search\"></i>\n <input #search type=\"text\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearcheValueChange()\" (keypressEnter)=\"onClickCallToAction()\"/>\n </div>\n <span (click)=\"openCategories = !openCategories;\" *ngIf=\"items[indexItemSelected]?.icon && !openCategories\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span (click)=\"showCategories()\" [innerHTML]=\"items[indexItemSelected]?.name ? items[indexItemSelected].name : placeholder\"></span>\n <span (click)=\"openCategories = !openCategories;\"><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openCategories, open: type === 'open' }\" [ngStyle]=\"{ 'max-width': maxWidthItems }\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length\">\n\n <div *ngIf=\"callToAction\" class=\"wac-select__content__cta\">\n <div (click)=\"onClickCallToAction()\">\n <i *ngIf=\"callToAction.icon\" [classList]=\"callToAction.icon\"></i><strong *ngIf=\"callToAction.boldText\">{{ callToAction.boldText }}</strong\n ><span>{{ callToAction?.name }}</span>\n </div>\n </div>\n\n <div\n *ngFor=\"let item of items | selectFilters: searchValue; let index = index;\"\n (click)=\"onClose()\"\n class=\"wac-select__content__item\"\n >\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n\n </perfect-scrollbar>\n\n <div *ngIf=\"!(items | selectFilters: searchValue)?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "directive", type: KeypressEnterDirective, selector: "[keypressEnter]", outputs: ["keypressEnter"] }, { kind: "component", type: i4.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: SelectFiltersPipe, name: "selectFilters" }] });
2987
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectComponent, decorators: [{
2988
+ type: Component,
2989
+ args: [{ selector: 'wac-select', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true }], template: "<p *ngIf=\"label\" [innerHTML]=\"label\" class=\"wac-select__label\"></p>\n\n<div class=\"wac-select\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n\n <div class=\"wac-select__current\" [ngClass]=\"{ 'select-disabled' : disabled }\" (click)=\"!disabled && openCategories = !openCategories\" *ngIf=\"!search\">\n <span *ngIf=\"indexItemSelected !== -1\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span [innerHTML]=\"indexItemSelected !== -1 ? items[indexItemSelected].name : placeholder\"></span><span><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__current wac-select__current--withSearch\" [ngClass]=\"{ 'select-disabled' : disabled, 'open-search': openCategories }\" *ngIf=\"search\">\n <div class=\"wac-select__current__search\" *ngIf=\"openCategories && !disabled\">\n <i class=\"far fa-search\"></i>\n <input #search type=\"text\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearcheValueChange()\" (keypressEnter)=\"onClickCallToAction()\"/>\n </div>\n <span (click)=\"openCategories = !openCategories;\" *ngIf=\"items[indexItemSelected]?.icon && !openCategories\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span (click)=\"showCategories()\" [innerHTML]=\"items[indexItemSelected]?.name ? items[indexItemSelected].name : placeholder\"></span>\n <span (click)=\"openCategories = !openCategories;\"><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openCategories, open: type === 'open' }\" [ngStyle]=\"{ 'max-width': maxWidthItems }\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length\">\n\n <div *ngIf=\"callToAction\" class=\"wac-select__content__cta\">\n <div (click)=\"onClickCallToAction()\">\n <i *ngIf=\"callToAction.icon\" [classList]=\"callToAction.icon\"></i><strong *ngIf=\"callToAction.boldText\">{{ callToAction.boldText }}</strong\n ><span>{{ callToAction?.name }}</span>\n </div>\n </div>\n\n <div\n *ngFor=\"let item of items | selectFilters: searchValue; let index = index;\"\n (click)=\"onClose()\"\n class=\"wac-select__content__item\"\n >\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n\n </perfect-scrollbar>\n\n <div *ngIf=\"!(items | selectFilters: searchValue)?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>" }]
2990
+ }], ctorParameters: function () { return [{ type: i1$3.TranslateService }]; }, propDecorators: { items: [{
2991
+ type: Input
2992
+ }], placeholder: [{
2993
+ type: Input
2994
+ }], label: [{
2995
+ type: Input
2996
+ }], maxWidthItems: [{
2997
+ type: Input
2998
+ }], search: [{
2999
+ type: Input
3000
+ }], searchValue: [{
3001
+ type: Input
3002
+ }], searchValueChange: [{
3003
+ type: Output
3004
+ }], type: [{
3005
+ type: Input
3006
+ }], callToAction: [{
3007
+ type: Input
3008
+ }], maxWidth: [{
3009
+ type: Input
3010
+ }], disabled: [{
3011
+ type: Input
3012
+ }], selectValue: [{
3013
+ type: Output
3014
+ }], clickOnCallToAction: [{
3015
+ type: Output
3016
+ }], searchElement: [{
3017
+ type: ViewChild,
3018
+ args: ['search']
3019
+ }] } });
3020
+
3021
+ class MultipleSearchComponent {
3022
+ constructor(translateService) {
3023
+ this.translateService = translateService;
3024
+ this.options = [];
3025
+ this.alwaysOpen = false;
3026
+ this.label = '';
3027
+ this.placeholder = '';
3028
+ this.icon = '';
3029
+ this.query = '';
3030
+ this.search = '';
3031
+ this.openSelect = false;
3032
+ this.error = 'wac.simpleSearchComponent.error';
3033
+ this.showError = false;
3034
+ }
3035
+ ngOnInit() {
3036
+ this.setPlaceholder();
3037
+ this.setLabel();
3038
+ this.setQuery();
3039
+ this.setIcon();
3040
+ }
3041
+ setSearchValueToQuery(value) {
3042
+ if (value.code !== 'Enter') {
3043
+ this.search = encodeURI(value.target.value);
3044
+ }
3045
+ else {
3046
+ this.submitForm();
3047
+ }
3048
+ }
3049
+ submitForm() {
3050
+ if (this.search) {
3051
+ if (this.search.length > 0) {
3052
+ window.location.href = this.query.replace('{s}', this.search);
3053
+ }
3054
+ else {
3055
+ this.displayError();
3056
+ }
3057
+ }
3058
+ else {
3059
+ this.displayError();
3060
+ }
3061
+ }
3062
+ setPlaceholder(value) {
3063
+ if (value) {
3064
+ this.placeholder = this.options[value].placeholder;
3065
+ }
3066
+ else {
3067
+ this.placeholder = this.options[0].placeholder;
3068
+ }
3069
+ }
3070
+ setLabel(value) {
3071
+ if (value) {
3072
+ this.label = this.options[value].label;
3073
+ }
3074
+ else {
3075
+ this.label = this.options[0].label;
3076
+ }
3077
+ }
3078
+ setQuery(value) {
3079
+ if (value) {
3080
+ this.query = this.options[value].queries;
3081
+ }
3082
+ else {
3083
+ this.query = this.options[0].queries;
3084
+ }
3085
+ }
3086
+ displayError() {
3087
+ this.showError = true;
3088
+ setTimeout(() => {
3089
+ this.hideError();
3090
+ }, 2000);
3091
+ }
3092
+ hideError() {
3093
+ this.showError = false;
3094
+ }
3095
+ setIcon(value) {
3096
+ if (value) {
3097
+ this.icon = this.options[value].icon;
3098
+ }
3099
+ else {
3100
+ this.icon = this.options[0].icon;
3101
+ }
3102
+ }
3103
+ openFuncSelect() {
3104
+ this.openSelect = !this.openSelect;
3105
+ }
3106
+ closeSelect() {
3107
+ this.openSelect = false;
3108
+ }
3109
+ resetAllVue(value) {
3110
+ this.setPlaceholder(value);
3111
+ this.setLabel(value);
3112
+ this.setQuery(value);
3113
+ this.setIcon(value);
3114
+ this.search = '';
3115
+ this.closeSelect();
3116
+ }
3117
+ }
3118
+ MultipleSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultipleSearchComponent, deps: [{ token: i1$3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
3119
+ MultipleSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: MultipleSearchComponent, selector: "wac-multiple-search", inputs: { options: "options", alwaysOpen: "alwaysOpen" }, ngImport: i0, template: "<div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"openFuncSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect || alwaysOpen\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <i [ngClass]=\"option.icon\"></i>\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\">\n <form [action]=\"query\" method=\"get\">\n <button type=\"submit\" (click)=\"submitForm()\"><i class=\"fal fa-search\"></i></button>\n <input #inputSearch type=\"text\" required [placeholder]=\"placeholder\" (keyup)=\"setSearchValueToQuery($event)\" />\n </form>\n </div>\n </div>\n <div class=\"wac-multiple-search__error\" *ngIf=\"showError\">{{ error | translate}}</div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] });
3120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultipleSearchComponent, decorators: [{
3121
+ type: Component,
3122
+ args: [{ selector: 'wac-multiple-search', template: "<div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"openFuncSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect || alwaysOpen\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <i [ngClass]=\"option.icon\"></i>\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\">\n <form [action]=\"query\" method=\"get\">\n <button type=\"submit\" (click)=\"submitForm()\"><i class=\"fal fa-search\"></i></button>\n <input #inputSearch type=\"text\" required [placeholder]=\"placeholder\" (keyup)=\"setSearchValueToQuery($event)\" />\n </form>\n </div>\n </div>\n <div class=\"wac-multiple-search__error\" *ngIf=\"showError\">{{ error | translate}}</div>\n</div>\n" }]
3123
+ }], ctorParameters: function () { return [{ type: i1$3.TranslateService }]; }, propDecorators: { options: [{
3124
+ type: Input
3125
+ }], alwaysOpen: [{
3126
+ type: Input
3127
+ }] } });
3128
+
3129
+ class MultipleSearchPlusComponent {
3130
+ constructor() {
3131
+ this.label = '';
3132
+ this.placeholder = '';
3133
+ this.openSelect = false;
3134
+ this.openSearchResults = false;
3135
+ this.isLoading = true;
3136
+ this.searchValue = new EventEmitter();
3137
+ this.optionsChange = new EventEmitter();
3138
+ }
3139
+ ngOnInit() {
3140
+ this.setCurrentOption();
3141
+ this.setPlaceholder();
3142
+ this.setLabel();
3143
+ }
3144
+ setSearchValue(value) {
3145
+ if (value.target.value != '') {
3146
+ this.openSearchResults = true;
3147
+ }
3148
+ else {
3149
+ this.openSearchResults = false;
3150
+ }
3151
+ this.searchValue.emit({ currentOption: this.options[this.currentOption].code, value: value.target.value });
3152
+ }
3153
+ setCurrentOption(value) {
3154
+ this.currentOption = value || 0;
3155
+ }
3156
+ setPlaceholder(value) {
3157
+ this.placeholder = value ? this.options[value].placeholder : this.options[0].placeholder;
3158
+ }
3159
+ setLabel(value) {
3160
+ this.label = value ? this.options[value].label : this.options[0].label;
3161
+ }
3162
+ onToggleSelect() {
3163
+ this.openSelect = !this.openSelect;
3164
+ }
3165
+ closeSelect() {
3166
+ this.openSelect = false;
3167
+ }
3168
+ closeSearchResults() {
3169
+ this.openSearchResults = false;
3170
+ }
3171
+ resetAllVue(value) {
3172
+ this.searchResults = undefined;
3173
+ this.setCurrentOption(value);
3174
+ this.setPlaceholder(value);
3175
+ this.setLabel(value);
3176
+ this.openSearchResults = false;
3177
+ this.closeSelect();
3178
+ }
3179
+ addResult(index) {
3180
+ let alreadyExist = false;
3181
+ this.options[this.currentOption].table.forEach(elem => {
3182
+ if (elem.id == this.searchResults[index].id) {
3183
+ alreadyExist = true;
3184
+ }
3185
+ });
3186
+ if (!alreadyExist) {
3187
+ this.options[this.currentOption].table.push(this.searchResults[index]);
3188
+ }
3189
+ this.resetAllVue(this.currentOption);
3190
+ this.optionsChange.emit({ currentOption: this.options[this.currentOption].code, action: 'add' });
3191
+ }
3192
+ deleteResult(indexItem, index) {
3193
+ this.options[index].table.splice(indexItem, 1);
3194
+ this.optionsChange.emit({ currentOption: this.options[index].code, action: 'delete' });
3195
+ }
3196
+ }
3197
+ MultipleSearchPlusComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultipleSearchPlusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3198
+ MultipleSearchPlusComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: MultipleSearchPlusComponent, selector: "wac-multiple-search-plus", inputs: { options: "options", searchResults: "searchResults" }, outputs: { searchValue: "searchValue", optionsChange: "optionsChange" }, ngImport: i0, template: "<div class=\"wac-multiple-search-plus\" [zIndexToggle]=\"openSelect || openSearchResults\">\n <!-- Multiple select with search input -->\n <div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect }\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" *ngIf=\"options.length > 1\" [ngClass]=\"{ open: openSelect }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"onToggleSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\" wzAutoHide (clickOutside)=\"closeSearchResults()\">\n <button><i class=\"fal fa-search\"></i></button>\n <input\n #inputSearch\n type=\"text\"\n [placeholder]=\"placeholder\"\n debounceKeyUp\n [debounceTime]=\"500\"\n (onEventChange)=\"setSearchValue($event)\"\n />\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSearchResults\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let res of searchResults; let i = index\"\n (click)=\"addResult(i); inputSearch.value = ''\"\n >\n <wac-image *ngIf=\"res.image\" [src]=\"res.image\"></wac-image>\n <wac-text>#{{ res.id }} {{ res.name }}</wac-text>\n </div>\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading && !searchResults\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Results checked -->\n <div *ngFor=\"let option of options; let i = index\">\n <div class=\"wac-multiple-search-plus__wrapper\" *ngIf=\"option.table.length\">\n <wac-h3>{{ option.title }}</wac-h3>\n <div class=\"wac-multiple-search-plus__wrapper__block hover default\" *ngFor=\"let item of option.table; let indexItem = index\">\n <wac-image *ngIf=\"item.image\" [src]=\"item.image\"></wac-image>\n <wac-text>{{ item.name }}</wac-text>\n <span (click)=\"deleteResult(indexItem, i)\"><i class=\"fas fa-times\"></i></span>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]" }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "component", type: LoaderComponent, selector: "wac-loader", inputs: ["text", "small"] }, { kind: "component", type: ImageComponent, selector: "wac-image", inputs: ["src"] }, { kind: "component", type: H3Component, selector: "wac-h3", inputs: ["grey"] }, { kind: "component", type: TextComponent, selector: "wac-text", inputs: ["textClass"] }] });
3199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: MultipleSearchPlusComponent, decorators: [{
3200
+ type: Component,
3201
+ args: [{ selector: 'wac-multiple-search-plus', template: "<div class=\"wac-multiple-search-plus\" [zIndexToggle]=\"openSelect || openSearchResults\">\n <!-- Multiple select with search input -->\n <div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect }\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" *ngIf=\"options.length > 1\" [ngClass]=\"{ open: openSelect }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"onToggleSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\" wzAutoHide (clickOutside)=\"closeSearchResults()\">\n <button><i class=\"fal fa-search\"></i></button>\n <input\n #inputSearch\n type=\"text\"\n [placeholder]=\"placeholder\"\n debounceKeyUp\n [debounceTime]=\"500\"\n (onEventChange)=\"setSearchValue($event)\"\n />\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSearchResults\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let res of searchResults; let i = index\"\n (click)=\"addResult(i); inputSearch.value = ''\"\n >\n <wac-image *ngIf=\"res.image\" [src]=\"res.image\"></wac-image>\n <wac-text>#{{ res.id }} {{ res.name }}</wac-text>\n </div>\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading && !searchResults\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Results checked -->\n <div *ngFor=\"let option of options; let i = index\">\n <div class=\"wac-multiple-search-plus__wrapper\" *ngIf=\"option.table.length\">\n <wac-h3>{{ option.title }}</wac-h3>\n <div class=\"wac-multiple-search-plus__wrapper__block hover default\" *ngFor=\"let item of option.table; let indexItem = index\">\n <wac-image *ngIf=\"item.image\" [src]=\"item.image\"></wac-image>\n <wac-text>{{ item.name }}</wac-text>\n <span (click)=\"deleteResult(indexItem, i)\"><i class=\"fas fa-times\"></i></span>\n </div>\n </div>\n </div>\n</div>\n" }]
3202
+ }], ctorParameters: function () { return []; }, propDecorators: { options: [{
3203
+ type: Input
3204
+ }], searchResults: [{
3205
+ type: Input
3206
+ }], searchValue: [{
3207
+ type: Output
3208
+ }], optionsChange: [{
3209
+ type: Output
3210
+ }] } });
3211
+
3212
+ class InputWithSelectComponent {
3213
+ constructor() {
3214
+ this.showSelect = false;
3215
+ this.inputValueChange = new EventEmitter();
3216
+ this.selectValueChange = new EventEmitter();
3217
+ }
3218
+ ngOnInit() {
3219
+ this.options.forEach((item) => {
3220
+ if (item.active) {
3221
+ this.currentLabel = item.label;
3222
+ }
3223
+ });
3224
+ }
3225
+ onClickItem(index) {
3226
+ this.unActiveAll();
3227
+ const optionSelected = this.options[index];
3228
+ optionSelected.active = true;
3229
+ this.currentLabel = optionSelected.label;
3230
+ this.showSelect = false;
3231
+ this.selectValueChange.emit(index);
3232
+ }
3233
+ onToggleSelect() {
3234
+ this.showSelect = !this.showSelect;
3235
+ }
3236
+ onCloseSelect() {
3237
+ this.showSelect = false;
3238
+ }
3239
+ onChangeInputValue(e) {
3240
+ this.inputValueChange.emit(e.target.value);
3241
+ }
3242
+ unActiveAll() {
3243
+ this.options.forEach((item) => {
3244
+ item.active = false;
3245
+ });
3246
+ }
3247
+ }
3248
+ InputWithSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputWithSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3249
+ InputWithSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: InputWithSelectComponent, selector: "wac-input-with-select", inputs: { label: "label", text: "text", options: "options", placeholder: "placeholder", id: "id" }, outputs: { inputValueChange: "inputValueChange", selectValueChange: "selectValueChange" }, ngImport: i0, template: "<div class=\"wac-input-with-select\" [zIndexToggle]=\"showSelect\">\n <label class=\"wac-input-with-select__label\" [for]=\"id\" [innerHTML]=\"label\"></label>\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\" wzAutoHide (clickOutside)=\"onCloseSelect()\">\n <input [id]=\"id\" type=\"text\" [placeholder]=\"placeholder\" (change)=\"onChangeInputValue($event)\" />\n <div class=\"wac-input-with-select__wrapper__left__current\">\n <span (click)=\"onToggleSelect()\">{{ currentLabel }}</span>\n </div>\n <div class=\"wac-input-with-select__wrapper__left__select\" *ngIf=\"showSelect\">\n <div class=\"wac-input-with-select__wrapper__left__select__item\" *ngFor=\"let option of options; let index = index\">\n <div (click)=\"onClickItem(index)\">{{ option.label }}</div>\n </div>\n </div>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <p [innerHTML]=\"text\"></p>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }] });
3250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: InputWithSelectComponent, decorators: [{
3251
+ type: Component,
3252
+ args: [{ selector: 'wac-input-with-select', template: "<div class=\"wac-input-with-select\" [zIndexToggle]=\"showSelect\">\n <label class=\"wac-input-with-select__label\" [for]=\"id\" [innerHTML]=\"label\"></label>\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\" wzAutoHide (clickOutside)=\"onCloseSelect()\">\n <input [id]=\"id\" type=\"text\" [placeholder]=\"placeholder\" (change)=\"onChangeInputValue($event)\" />\n <div class=\"wac-input-with-select__wrapper__left__current\">\n <span (click)=\"onToggleSelect()\">{{ currentLabel }}</span>\n </div>\n <div class=\"wac-input-with-select__wrapper__left__select\" *ngIf=\"showSelect\">\n <div class=\"wac-input-with-select__wrapper__left__select__item\" *ngFor=\"let option of options; let index = index\">\n <div (click)=\"onClickItem(index)\">{{ option.label }}</div>\n </div>\n </div>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <p [innerHTML]=\"text\"></p>\n </div>\n </div>\n</div>\n" }]
3253
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
3254
+ type: Input
3255
+ }], text: [{
3256
+ type: Input
3257
+ }], options: [{
3258
+ type: Input
3259
+ }], placeholder: [{
3260
+ type: Input
3261
+ }], id: [{
3262
+ type: Input
3263
+ }], inputValueChange: [{
3264
+ type: Output
3265
+ }], selectValueChange: [{
3266
+ type: Output
3267
+ }] } });
3268
+
3269
+ class PopinComponent {
3270
+ constructor(domService) {
3271
+ this.domService = domService;
3272
+ this.visible = false;
3273
+ this.visibleChange = new EventEmitter();
3274
+ this.response = new EventEmitter();
3275
+ this.background = true;
3276
+ this.firstOpen = true;
3277
+ }
3278
+ ngOnInit() {
3279
+ this.domService.setDocumentEventListener();
3280
+ }
3281
+ validatePopin() {
3282
+ this.response.emit(true);
3283
+ this.closePopin();
3284
+ }
3285
+ refusePopin() {
3286
+ this.response.emit(false);
3287
+ this.closePopin();
3288
+ }
3289
+ closePopin() {
3290
+ if (!this.firstOpen) { //trick for auto-hide directive that close immediatly the pop-in
3291
+ this.visible = false;
3292
+ this.visibleChange.emit(this.visible);
3293
+ this.firstOpen = true;
3294
+ }
3295
+ else {
3296
+ this.firstOpen = false;
3297
+ }
3298
+ }
3299
+ }
3300
+ PopinComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PopinComponent, deps: [{ token: DomService }], target: i0.ɵɵFactoryTarget.Component });
3301
+ PopinComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: PopinComponent, selector: "wac-popin", inputs: { title: "title", content: "content", imgSrc: "imgSrc", okButtonLabel: "okButtonLabel", koButtonLabel: "koButtonLabel", okButtonClass: "okButtonClass", koButtonClass: "koButtonClass", visible: "visible", background: "background" }, outputs: { visibleChange: "visibleChange", response: "response" }, ngImport: i0, template: "<div class=\"wac-free\" *ngIf=\"visible\">\n <div class=\"wac-free__wrapper\" wzAutoHide (clickOutside)=\"closePopin()\">\n <a class=\"wac-free__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free__wrapper__content\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\">\n <img [src]=\"imgSrc\" alt=\"barre admin\" />\n\n <h2 class=\"wac-popin__wrapper__title\" [innerHTML]=\"title\"></h2>\n\n <p class=\"wac-popin__wrapper__text\" [innerHTML]=\"content\"></p>\n </perfect-scrollbar>\n </div>\n <div class=\"wac-free__wrapper__buttons\">\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free__background\" *ngIf=\"background\"></div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "component", type: i4.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }, { kind: "component", type: ButtonComponent, selector: "wac-button", inputs: ["extraClasses", "label", "icon", "iconNext", "widthAuto", "contentHorizontalPosition", "iconFontSize", "hasLoader", "disabled", "whiteSpaceNowrap", "opacity", "animation", "animationRight", "animationText", "confirmDelete", "confirmDeleteText", "confirmDeletePosition", "isLoading"], outputs: ["click", "isLoadingChange"] }] });
3302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: PopinComponent, decorators: [{
3303
+ type: Component,
3304
+ args: [{ selector: 'wac-popin', template: "<div class=\"wac-free\" *ngIf=\"visible\">\n <div class=\"wac-free__wrapper\" wzAutoHide (clickOutside)=\"closePopin()\">\n <a class=\"wac-free__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free__wrapper__content\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\">\n <img [src]=\"imgSrc\" alt=\"barre admin\" />\n\n <h2 class=\"wac-popin__wrapper__title\" [innerHTML]=\"title\"></h2>\n\n <p class=\"wac-popin__wrapper__text\" [innerHTML]=\"content\"></p>\n </perfect-scrollbar>\n </div>\n <div class=\"wac-free__wrapper__buttons\">\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free__background\" *ngIf=\"background\"></div>\n</div>\n" }]
3305
+ }], ctorParameters: function () { return [{ type: DomService }]; }, propDecorators: { title: [{
3306
+ type: Input
3307
+ }], content: [{
3308
+ type: Input
3309
+ }], imgSrc: [{
3310
+ type: Input
3311
+ }], okButtonLabel: [{
3312
+ type: Input
3313
+ }], koButtonLabel: [{
3314
+ type: Input
3315
+ }], okButtonClass: [{
3316
+ type: Input
3317
+ }], koButtonClass: [{
3318
+ type: Input
3319
+ }], visible: [{
3320
+ type: Input
3321
+ }], visibleChange: [{
3322
+ type: Output
3323
+ }], response: [{
3324
+ type: Output
3325
+ }], background: [{
3326
+ type: Input
3327
+ }] } });
3328
+
3329
+ class FreePopinComponent {
3330
+ constructor(domService) {
3331
+ this.domService = domService;
3332
+ this.visible = false;
3333
+ this.disableCloseOutside = false;
3334
+ this.visibleChange = new EventEmitter();
3335
+ this.response = new EventEmitter();
3336
+ this.background = true;
3337
+ this.zIndex = 9999;
3338
+ this.firstOpen = true;
3339
+ }
3340
+ ngOnInit() {
3341
+ this.domService.setDocumentEventListener();
3342
+ }
3343
+ validatePopin() {
3344
+ this.response.emit(true);
3345
+ this.closePopin();
3346
+ }
3347
+ refusePopin() {
3348
+ this.response.emit(false);
3349
+ this.closePopin();
3350
+ }
3351
+ closePopin() {
3352
+ if (!this.firstOpen || this.disableCloseOutside) {
3353
+ this.visible = false;
3354
+ this.visibleChange.emit(this.visible);
3355
+ this.firstOpen = true;
3356
+ }
3357
+ else {
3358
+ this.firstOpen = false;
3359
+ }
3360
+ }
3361
+ }
3362
+ FreePopinComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FreePopinComponent, deps: [{ token: DomService }], target: i0.ɵɵFactoryTarget.Component });
3363
+ FreePopinComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: FreePopinComponent, selector: "wac-free-popin", inputs: { okButtonLabel: "okButtonLabel", koButtonLabel: "koButtonLabel", visible: "visible", disableCloseOutside: "disableCloseOutside", background: "background", zIndex: "zIndex" }, outputs: { visibleChange: "visibleChange", response: "response" }, ngImport: i0, template: "<div class=\"wac-free-popin\" *ngIf=\"visible\" [ngStyle]=\"{'z-index': zIndex}\">\n <div class=\"wac-free-popin__wrapper\" wzAutoHide (clickOutside)=\"!disableCloseOutside ? closePopin() : ''\">\n <a class=\"wac-free-popin__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free-popin__wrapper__content\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\">\n <ng-content></ng-content>\n </perfect-scrollbar>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons\">\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free-popin__background\" *ngIf=\"background\"></div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "component", type: i4.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }, { kind: "component", type: ButtonComponent, selector: "wac-button", inputs: ["extraClasses", "label", "icon", "iconNext", "widthAuto", "contentHorizontalPosition", "iconFontSize", "hasLoader", "disabled", "whiteSpaceNowrap", "opacity", "animation", "animationRight", "animationText", "confirmDelete", "confirmDeleteText", "confirmDeletePosition", "isLoading"], outputs: ["click", "isLoadingChange"] }] });
3364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FreePopinComponent, decorators: [{
3365
+ type: Component,
3366
+ args: [{ selector: 'wac-free-popin', template: "<div class=\"wac-free-popin\" *ngIf=\"visible\" [ngStyle]=\"{'z-index': zIndex}\">\n <div class=\"wac-free-popin__wrapper\" wzAutoHide (clickOutside)=\"!disableCloseOutside ? closePopin() : ''\">\n <a class=\"wac-free-popin__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free-popin__wrapper__content\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\">\n <ng-content></ng-content>\n </perfect-scrollbar>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons\">\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free-popin__background\" *ngIf=\"background\"></div>\n</div>\n" }]
3367
+ }], ctorParameters: function () { return [{ type: DomService }]; }, propDecorators: { okButtonLabel: [{
3368
+ type: Input
3369
+ }], koButtonLabel: [{
3370
+ type: Input
3371
+ }], visible: [{
3372
+ type: Input
3373
+ }], disableCloseOutside: [{
3374
+ type: Input
3375
+ }], visibleChange: [{
3376
+ type: Output
3377
+ }], response: [{
3378
+ type: Output
3379
+ }], background: [{
3380
+ type: Input
3381
+ }], zIndex: [{
3382
+ type: Input
3383
+ }] } });
3384
+
3385
+ class BlockComponent {
3386
+ constructor() {
3387
+ this.titleBlock = ''; // Titre interne au block
3388
+ this.titleExternalBlock = false; // Titre externe au block
3389
+ this.sticky = false; // add sticky to block
3390
+ this.simple = false;
3391
+ this.noFullHeight = false; // not full height
3392
+ this.icon = '';
3393
+ this.titleUppercase = true;
3394
+ this.borderRadius = false;
3395
+ this.removePadding = false;
3396
+ this.stretchHeight = false;
3397
+ }
3398
+ }
3399
+ BlockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: BlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3400
+ BlockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: BlockComponent, selector: "wac-block", inputs: { titleBlock: "titleBlock", titleExternalBlock: "titleExternalBlock", sticky: "sticky", simple: "simple", noFullHeight: "noFullHeight", icon: "icon", titleUppercase: "titleUppercase", borderRadius: "borderRadius", removePadding: "removePadding", stretchHeight: "stretchHeight" }, ngImport: i0, template: "<div\n class=\"wac-block\"\n [ngClass]=\"{ 'wac-block__external': titleExternalBlock, sticky: sticky, noFullHeight: noFullHeight, 'stretch': stretchHeight, 'border-radius': borderRadius, 'no-padding' : removePadding }\"\n>\n <h2 *ngIf=\"titleBlock.length\" class=\"wac-block__title\" [ngClass]=\"{ 'is-simple': simple, 'no-uppercase': !titleUppercase }\">\n {{ titleBlock }} <i *ngIf=\"icon\" [ngClass]=\"icon\"></i>\n </h2>\n <div class=\"wac-block__content\">\n <ng-content></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3401
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: BlockComponent, decorators: [{
3402
+ type: Component,
3403
+ args: [{ selector: 'wac-block', template: "<div\n class=\"wac-block\"\n [ngClass]=\"{ 'wac-block__external': titleExternalBlock, sticky: sticky, noFullHeight: noFullHeight, 'stretch': stretchHeight, 'border-radius': borderRadius, 'no-padding' : removePadding }\"\n>\n <h2 *ngIf=\"titleBlock.length\" class=\"wac-block__title\" [ngClass]=\"{ 'is-simple': simple, 'no-uppercase': !titleUppercase }\">\n {{ titleBlock }} <i *ngIf=\"icon\" [ngClass]=\"icon\"></i>\n </h2>\n <div class=\"wac-block__content\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
3404
+ }], ctorParameters: function () { return []; }, propDecorators: { titleBlock: [{
3405
+ type: Input
3406
+ }], titleExternalBlock: [{
3407
+ type: Input
3408
+ }], sticky: [{
3409
+ type: Input
3410
+ }], simple: [{
3411
+ type: Input
3412
+ }], noFullHeight: [{
3413
+ type: Input
3414
+ }], icon: [{
3415
+ type: Input
3416
+ }], titleUppercase: [{
3417
+ type: Input
3418
+ }], borderRadius: [{
3419
+ type: Input
3420
+ }], removePadding: [{
3421
+ type: Input
3422
+ }], stretchHeight: [{
3423
+ type: Input
3424
+ }] } });
3425
+
3426
+ class WrapperComponent {
3427
+ constructor() {
3428
+ this.size = 'fullsize';
3429
+ }
3430
+ ngOnInit() { }
3431
+ }
3432
+ WrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3433
+ WrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: WrapperComponent, selector: "wac-wrapper", inputs: { size: "size" }, ngImport: i0, template: "<div class=\"wac-wrapper\" [ngClass]=\"{ fullsize: size === 'fullsize', 'max-width': size === 'max-width' }\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WrapperComponent, decorators: [{
3435
+ type: Component,
3436
+ args: [{ selector: 'wac-wrapper', template: "<div class=\"wac-wrapper\" [ngClass]=\"{ fullsize: size === 'fullsize', 'max-width': size === 'max-width' }\">\n <ng-content></ng-content>\n</div>\n" }]
3437
+ }], ctorParameters: function () { return []; }, propDecorators: { size: [{
3438
+ type: Input
3439
+ }] } });
3440
+
3441
+ class FiltersComponent {
3442
+ constructor() {
3443
+ this.labelRestart = 'Afficher toutes les catégories';
3444
+ this.filterChange = new EventEmitter();
3445
+ }
3446
+ ngOnInit() {
3447
+ this.options.forEach((item, index) => {
3448
+ if (item.active) {
3449
+ this.filterActiveIndex = '' + index;
3450
+ }
3451
+ });
3452
+ }
3453
+ activeFilter(index) {
3454
+ this.options[index].active = true;
3455
+ this.filterActiveIndex = '' + index;
3456
+ this.filterChange.emit(index);
3457
+ }
3458
+ resetFilter() {
3459
+ this.options.forEach((item) => {
3460
+ item.active = false;
3461
+ });
3462
+ this.filterActiveIndex = null;
3463
+ this.filterChange.emit(-1);
3464
+ }
3465
+ }
3466
+ FiltersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3467
+ FiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: FiltersComponent, selector: "wac-filters", inputs: { options: "options", labelRestart: "labelRestart" }, outputs: { filterChange: "filterChange" }, ngImport: i0, template: "<div class=\"wac-filters\">\n <div class=\"wac-filters__wrapper\" *ngIf=\"!filterActiveIndex\">\n <button *ngFor=\"let option of options; let i = index\">\n <span class=\"event\" (click)=\"activeFilter(i)\"></span><span [innerHTML]=\"option.name\"></span>\n </button>\n </div>\n <div class=\"wac-filters__wrapper\" *ngIf=\"filterActiveIndex\">\n <button (click)=\"resetFilter()\" class=\"active\">\n <i class=\"fas fa-times\"></i><span [innerHTML]=\"options[filterActiveIndex].name\"></span>\n </button>\n <span (click)=\"resetFilter()\">{{ labelRestart }}</span>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3468
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FiltersComponent, decorators: [{
3469
+ type: Component,
3470
+ args: [{ selector: 'wac-filters', template: "<div class=\"wac-filters\">\n <div class=\"wac-filters__wrapper\" *ngIf=\"!filterActiveIndex\">\n <button *ngFor=\"let option of options; let i = index\">\n <span class=\"event\" (click)=\"activeFilter(i)\"></span><span [innerHTML]=\"option.name\"></span>\n </button>\n </div>\n <div class=\"wac-filters__wrapper\" *ngIf=\"filterActiveIndex\">\n <button (click)=\"resetFilter()\" class=\"active\">\n <i class=\"fas fa-times\"></i><span [innerHTML]=\"options[filterActiveIndex].name\"></span>\n </button>\n <span (click)=\"resetFilter()\">{{ labelRestart }}</span>\n </div>\n</div>\n" }]
3471
+ }], ctorParameters: function () { return []; }, propDecorators: { options: [{
3472
+ type: Input
3473
+ }], labelRestart: [{
3474
+ type: Input
3475
+ }], filterChange: [{
3476
+ type: Output
3477
+ }] } });
3478
+
3479
+ class WrapperBlocsComponent {
3480
+ constructor() {
3481
+ this.sidebar = false;
3482
+ }
3483
+ ngOnInit() {
3484
+ }
3485
+ }
3486
+ WrapperBlocsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WrapperBlocsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3487
+ WrapperBlocsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: WrapperBlocsComponent, selector: "wac-wrapper-blocs", inputs: { sidebar: "sidebar" }, ngImport: i0, template: "<div class=\"wac-wrapper-blocs\" [ngClass]=\"{'sidebar': sidebar}\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3488
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WrapperBlocsComponent, decorators: [{
3489
+ type: Component,
3490
+ args: [{ selector: 'wac-wrapper-blocs', template: "<div class=\"wac-wrapper-blocs\" [ngClass]=\"{'sidebar': sidebar}\">\n <ng-content></ng-content>\n</div>\n" }]
3491
+ }], ctorParameters: function () { return []; }, propDecorators: { sidebar: [{
3492
+ type: Input
3493
+ }] } });
3494
+
3495
+ class SnackbarComponent {
3496
+ constructor() {
3497
+ this.visible = false;
3498
+ this.visibleChange = new EventEmitter();
3499
+ this.response = new EventEmitter();
3500
+ this.manualClose = false;
3501
+ }
3502
+ ngOnInit() {
3503
+ if (this.duration > 0) {
3504
+ this.timer = setTimeout(() => this.manualClose = true, this.duration);
3505
+ }
3506
+ }
3507
+ validate() {
3508
+ this.response.emit(true);
3509
+ this.closeSnackbar();
3510
+ this.manualClose = true;
3511
+ }
3512
+ refuse() {
3513
+ this.response.emit(false);
3514
+ this.closeSnackbar();
3515
+ this.manualClose = true;
3516
+ }
3517
+ closeSnackbar() {
3518
+ this.visible = false;
3519
+ this.visibleChange.emit(this.visible);
3520
+ }
3521
+ }
3522
+ SnackbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3523
+ SnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SnackbarComponent, selector: "wac-snackbar", inputs: { message: "message", textButtonOk: "textButtonOk", textButtonKo: "textButtonKo", duration: "duration", color: "color", buttonColor: "buttonColor", visible: "visible" }, outputs: { visibleChange: "visibleChange", response: "response" }, ngImport: i0, template: "<div class=\"wac-snackbar\">\n <div [class]=\"'notification is-active ' + ((color) ? color : 'is-transparent')\"\n [@state]=\"visible ? 'active': 'inactive'\"\n >\n <div class=\"columns\">\n <div class=\"column notification--message\" [ngClass]=\"{'is-half': textButtonOk}\"\n [innerHTML]=\"message\">\n </div>\n <div class=\"column is-half\">\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"validate()\">{{textButtonOk}}\n </button>\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"refuse()\">{{textButtonKo}}\n </button>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
3524
+ trigger('state', [
3525
+ state('void', style({
3526
+ bottom: '-100px'
3527
+ })),
3528
+ state('inactive', style({
3529
+ bottom: '-100px'
3530
+ })),
3531
+ state('active', style({
3532
+ bottom: '0px'
3533
+ })),
3534
+ transition('void => active', animate(300)),
3535
+ transition('active => inactive', animate(300))
3536
+ ])
3537
+ ], encapsulation: i0.ViewEncapsulation.None });
3538
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SnackbarComponent, decorators: [{
3539
+ type: Component,
3540
+ args: [{ selector: 'wac-snackbar', encapsulation: ViewEncapsulation.None, animations: [
3541
+ trigger('state', [
3542
+ state('void', style({
3543
+ bottom: '-100px'
3544
+ })),
3545
+ state('inactive', style({
3546
+ bottom: '-100px'
3547
+ })),
3548
+ state('active', style({
3549
+ bottom: '0px'
3550
+ })),
3551
+ transition('void => active', animate(300)),
3552
+ transition('active => inactive', animate(300))
3553
+ ])
3554
+ ], template: "<div class=\"wac-snackbar\">\n <div [class]=\"'notification is-active ' + ((color) ? color : 'is-transparent')\"\n [@state]=\"visible ? 'active': 'inactive'\"\n >\n <div class=\"columns\">\n <div class=\"column notification--message\" [ngClass]=\"{'is-half': textButtonOk}\"\n [innerHTML]=\"message\">\n </div>\n <div class=\"column is-half\">\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"validate()\">{{textButtonOk}}\n </button>\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"refuse()\">{{textButtonKo}}\n </button>\n </div>\n </div>\n </div>\n</div>\n" }]
3555
+ }], propDecorators: { message: [{
3556
+ type: Input
3557
+ }], textButtonOk: [{
3558
+ type: Input
3559
+ }], textButtonKo: [{
3560
+ type: Input
3561
+ }], duration: [{
3562
+ type: Input
3563
+ }], color: [{
3564
+ type: Input
3565
+ }], buttonColor: [{
3566
+ type: Input
3567
+ }], visible: [{
3568
+ type: Input
3569
+ }], visibleChange: [{
3570
+ type: Output
3571
+ }], response: [{
3572
+ type: Output
3573
+ }] } });
3574
+
3575
+ class AlertPopupComponent {
3576
+ constructor() {
3577
+ /** Subject for notifying the user that the dialog has finished closing. */
3578
+ this.afterClosedPopup = new Subject();
3579
+ this.open = false;
3580
+ }
3581
+ ngOnInit() {
3582
+ setTimeout(() => {
3583
+ this.open = true;
3584
+ }, 50);
3585
+ if (this.config.duration > 0) {
3586
+ this.timer = setTimeout(() => this.dismiss(), this.config.duration);
3587
+ }
3588
+ }
3589
+ dismiss() {
3590
+ this.open = false;
3591
+ setTimeout(() => {
3592
+ this.afterClosedPopup.next(true);
3593
+ this.afterClosedPopup.complete();
3594
+ }, 200);
3595
+ }
3596
+ /**
3597
+ * Gets an observable that is notified when the dialog is finished closing.
3598
+ */
3599
+ afterClosed() {
3600
+ return this.afterClosedPopup.asObservable();
3601
+ }
3602
+ }
3603
+ AlertPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3604
+ AlertPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: AlertPopupComponent, selector: "wac-alert-popup", host: { classAttribute: "wac-alert-popup" }, ngImport: i0, template: "<div\n [class]=\"'alert ' + ((config.color) ? config.color : ' is-primary') + ((config.extraClasses) ? ' ' + config.extraClasses : '') + ((config.position) ? ' ' + config.position : '') + ((config.fullsize) ? ' fullsize' : '') + ((config.opacity) ? ' opacity-active' : '') + ((config.small) ? ' small' : '') + ((config.icon) ? ' with-icon' : '')\"\n [ngClass]=\"{'is-active': open}\"\n>\n <div class=\"alert--message\">\n <span class=\"icon\" *ngIf=\"config.icon\">\n <i [class]=\"config.icon\"></i>\n </span>\n <span (click)=\"dismiss()\" class=\"wac-alert-popup__close\"><i class=\"fas fa-times\"></i></span>\n <p *ngIf=\"config.title\" class=\"wac-alert-popup__title\" [innerHTML]=\"config.title\"></p>\n <p *ngIf=\"config.message\" class=\"wac-alert-popup__text\" [innerHTML]=\"config.message\"></p>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
3605
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupComponent, decorators: [{
3606
+ type: Component,
3607
+ args: [{ selector: 'wac-alert-popup', host: {
3608
+ class: 'wac-alert-popup'
3609
+ }, encapsulation: ViewEncapsulation.None, template: "<div\n [class]=\"'alert ' + ((config.color) ? config.color : ' is-primary') + ((config.extraClasses) ? ' ' + config.extraClasses : '') + ((config.position) ? ' ' + config.position : '') + ((config.fullsize) ? ' fullsize' : '') + ((config.opacity) ? ' opacity-active' : '') + ((config.small) ? ' small' : '') + ((config.icon) ? ' with-icon' : '')\"\n [ngClass]=\"{'is-active': open}\"\n>\n <div class=\"alert--message\">\n <span class=\"icon\" *ngIf=\"config.icon\">\n <i [class]=\"config.icon\"></i>\n </span>\n <span (click)=\"dismiss()\" class=\"wac-alert-popup__close\"><i class=\"fas fa-times\"></i></span>\n <p *ngIf=\"config.title\" class=\"wac-alert-popup__title\" [innerHTML]=\"config.title\"></p>\n <p *ngIf=\"config.message\" class=\"wac-alert-popup__text\" [innerHTML]=\"config.message\"></p>\n </div>\n</div>\n" }]
3610
+ }] });
3611
+
3612
+ class AlertPopupService {
3613
+ constructor(domService) {
3614
+ this.domService = domService;
3615
+ }
3616
+ open(config) {
3617
+ const componentRef = this.getComponentRef(config);
3618
+ return componentRef.instance;
3619
+ }
3620
+ getComponentRef(config) {
3621
+ const componentRef = this.domService.attachComponentPortal(AlertPopupComponent);
3622
+ config = Object.assign({
3623
+ position: 'is-top'
3624
+ }, config);
3625
+ componentRef.instance.config = config;
3626
+ componentRef.instance.afterClosed().subscribe(() => {
3627
+ componentRef.destroy();
3628
+ });
3629
+ return componentRef;
3630
+ }
3631
+ }
3632
+ AlertPopupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupService, deps: [{ token: DomService }], target: i0.ɵɵFactoryTarget.Injectable });
3633
+ AlertPopupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupService });
3634
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupService, decorators: [{
3635
+ type: Injectable
3636
+ }], ctorParameters: function () { return [{ type: DomService }]; } });
3637
+
3638
+ class AlertPopupModule {
3639
+ }
3640
+ AlertPopupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3641
+ AlertPopupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupModule, declarations: [AlertPopupComponent], imports: [CommonModule], exports: [AlertPopupComponent] });
3642
+ AlertPopupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupModule, providers: [AlertPopupService], imports: [CommonModule] });
3643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AlertPopupModule, decorators: [{
3644
+ type: NgModule,
3645
+ args: [{
3646
+ imports: [CommonModule],
3647
+ providers: [AlertPopupService],
3648
+ entryComponents: [AlertPopupComponent],
3649
+ declarations: [AlertPopupComponent],
3650
+ exports: [AlertPopupComponent]
3651
+ }]
3652
+ }] });
3653
+
3654
+ class SearchComponent {
3655
+ constructor() {
3656
+ this.alwaysOpen = false;
3657
+ this.disableSearchIn = false;
3658
+ this.emptyResult = '';
3659
+ this.search = '';
3660
+ this.openSelect = false;
3661
+ this.selectValue = new EventEmitter();
3662
+ this.searchKeyUp = new EventEmitter();
3663
+ this.searchFocusOut = new EventEmitter();
3664
+ }
3665
+ ngOnInit() {
3666
+ this.triggerOptions = this.options;
3667
+ }
3668
+ onClose() {
3669
+ this.openSelect = false;
3670
+ }
3671
+ setSearchValueToQuery(value) {
3672
+ this.search = value.target.value;
3673
+ if (this.disableSearchIn) {
3674
+ this.triggerOptions = this.options;
3675
+ }
3676
+ else {
3677
+ if (this.search.length > 0) {
3678
+ this.openSelect = true;
3679
+ this.triggerOptions = this.options.filter(element => element.label.toLowerCase().indexOf(this.search.toLowerCase()) !== -1);
3680
+ }
3681
+ else {
3682
+ this.triggerOptions = this.options;
3683
+ }
3684
+ }
3685
+ this.searchKeyUp.emit(this.search);
3686
+ }
3687
+ sendEventFocusOut() {
3688
+ this.searchFocusOut.emit(this.search);
3689
+ }
3690
+ closeSelect() {
3691
+ this.openSelect = false;
3692
+ }
3693
+ onSelectItem(index, value, label) {
3694
+ this.search = '';
3695
+ this.openSelect = false;
3696
+ if (this.disableSearchIn) {
3697
+ this.selectValue.emit(index);
3698
+ }
3699
+ else {
3700
+ const findInOption = this.options.findIndex(element => element.label === label && element.id === value);
3701
+ this.selectValue.emit(findInOption);
3702
+ }
3703
+ }
3704
+ resetAllVue() {
3705
+ this.search = '';
3706
+ this.closeSelect();
3707
+ }
3708
+ }
3709
+ SearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3710
+ SearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SearchComponent, selector: "wac-search", inputs: { placeholder: "placeholder", alwaysOpen: "alwaysOpen", label: "label", options: "options", disableSearchIn: "disableSearchIn", emptyResult: "emptyResult" }, outputs: { selectValue: "selectValue", searchKeyUp: "searchKeyUp", searchFocusOut: "searchFocusOut" }, ngImport: i0, template: "<div class=\"wac-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <div class=\"wac-search__wrapper\">\n <button><i class=\"fal fa-search\"></i></button>\n <input [value]=\"search\" type=\"text\" required [placeholder]=\"placeholder\" (focus)=\"openSelect = true;\" (focusout)=\"sendEventFocusOut()\" (keyup)=\"setSearchValueToQuery($event)\" />\n </div>\n <div class=\"wac-search__absolute\" *ngIf=\"triggerOptions\" [ngClass]=\"{'hidden': !openSelect}\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"triggerOptions.length > 0\">\n <div (click)=\"onClose()\" class=\"wac-select__content__item\" *ngFor=\"let item of triggerOptions; let index = index;\">\n <div [ngClass]=\"{ selected: item.checked }\" (click)=\"onSelectItem(index, item.id, item.label)\">\n {{ item.label }}\n </div>\n </div>\n </perfect-scrollbar>\n <div class=\"wac-select__content__empty\" *ngIf=\"triggerOptions.length === 0\">\n <span *ngIf=\"emptyResult\">{{emptyResult}}</span>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "component", type: i4.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }] });
3711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SearchComponent, decorators: [{
3712
+ type: Component,
3713
+ args: [{ selector: 'wac-search', template: "<div class=\"wac-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <div class=\"wac-search__wrapper\">\n <button><i class=\"fal fa-search\"></i></button>\n <input [value]=\"search\" type=\"text\" required [placeholder]=\"placeholder\" (focus)=\"openSelect = true;\" (focusout)=\"sendEventFocusOut()\" (keyup)=\"setSearchValueToQuery($event)\" />\n </div>\n <div class=\"wac-search__absolute\" *ngIf=\"triggerOptions\" [ngClass]=\"{'hidden': !openSelect}\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"triggerOptions.length > 0\">\n <div (click)=\"onClose()\" class=\"wac-select__content__item\" *ngFor=\"let item of triggerOptions; let index = index;\">\n <div [ngClass]=\"{ selected: item.checked }\" (click)=\"onSelectItem(index, item.id, item.label)\">\n {{ item.label }}\n </div>\n </div>\n </perfect-scrollbar>\n <div class=\"wac-select__content__empty\" *ngIf=\"triggerOptions.length === 0\">\n <span *ngIf=\"emptyResult\">{{emptyResult}}</span>\n </div>\n </div>\n</div>\n" }]
3714
+ }], ctorParameters: function () { return []; }, propDecorators: { placeholder: [{
3715
+ type: Input
3716
+ }], alwaysOpen: [{
3717
+ type: Input
3718
+ }], label: [{
3719
+ type: Input
3720
+ }], options: [{
3721
+ type: Input
3722
+ }], disableSearchIn: [{
3723
+ type: Input
3724
+ }], emptyResult: [{
3725
+ type: Input
3726
+ }], selectValue: [{
3727
+ type: Output
3728
+ }], searchKeyUp: [{
3729
+ type: Output
3730
+ }], searchFocusOut: [{
3731
+ type: Output
3732
+ }] } });
3733
+
3734
+ class AreAllOptionsSelectedPipe {
3735
+ transform(options) {
3736
+ return !options.some(option => !option.checked);
3737
+ }
3738
+ }
3739
+ AreAllOptionsSelectedPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AreAllOptionsSelectedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
3740
+ AreAllOptionsSelectedPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: AreAllOptionsSelectedPipe, name: "areAllOptionsSelected", pure: false });
3741
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: AreAllOptionsSelectedPipe, decorators: [{
3742
+ type: Pipe,
3743
+ args: [{
3744
+ name: 'areAllOptionsSelected',
3745
+ pure: false
3746
+ }]
3747
+ }] });
3748
+
3749
+ class SelectedListComponent {
3750
+ constructor() {
3751
+ this.options = [];
3752
+ this.enableSelectAll = true;
3753
+ this.selectedItemsIndex = new EventEmitter();
3754
+ this.selectedItemsAll = new EventEmitter();
3755
+ this.unSelectedItemsAll = new EventEmitter();
3756
+ this.selectedOptionIndex = [];
3757
+ }
3758
+ ngOnInit() {
3759
+ }
3760
+ onSelectAll() {
3761
+ this.selectedOptionIndex = this.options.map((option, index) => {
3762
+ option.checked = true;
3763
+ return index;
3764
+ });
3765
+ this.selectedItemsAll.emit(this.selectedOptionIndex);
3766
+ }
3767
+ onUnSelectAll() {
3768
+ this.selectedOptionIndex = this.options.map((option, index) => {
3769
+ option.checked = false;
3770
+ return index;
3771
+ });
3772
+ this.unSelectedItemsAll.emit(this.selectedOptionIndex);
3773
+ }
3774
+ onSelectItem(index) {
3775
+ this.options[index].checked = !this.options[index].checked;
3776
+ this.selectedItemsIndex.emit(index);
3777
+ }
3778
+ areAllOptionsChecked() {
3779
+ return !this.options.some(option => !option.checked);
3780
+ }
3781
+ }
3782
+ SelectedListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectedListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3783
+ SelectedListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SelectedListComponent, selector: "wac-selected-list", inputs: { options: "options", label: "label", textSelectAll: "textSelectAll", textUnSelectAll: "textUnSelectAll", enableSelectAll: "enableSelectAll" }, outputs: { selectedItemsIndex: "selectedItemsIndex", selectedItemsAll: "selectedItemsAll", unSelectedItemsAll: "unSelectedItemsAll" }, ngImport: i0, template: "<div class=\"selected-list\">\n <div class=\"selected-list__wrapper\">\n <div class=\"selected-list__wrapper__head\">\n <p *ngIf=\"label\" [innerHTML]=\"label\"></p>\n <ng-container *ngVar=\"(options | areAllOptionsSelected) as areAllOptionsSelected\">\n <ng-container *ngIf=\"textSelectAll && !areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [label]=\"textSelectAll\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"textUnSelectAll && areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [extraClasses]=\"'is-info'\"\n [label]=\"textUnSelectAll\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n </ng-container>\n\n </div>\n <div class=\"selected-list__wrapper__content\">\n <div class=\"selected-list__wrapper__content__item\" *ngFor=\"let item of options;let i = index;\" [ngClass]=\"{'active': item.checked}\" (click)=\"onSelectItem(i)\">\n <span [innerHTML]=\"item.label\"></span>\n <i class=\"fas fa-check\"></i>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: VarDirective, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: ButtonComponent, selector: "wac-button", inputs: ["extraClasses", "label", "icon", "iconNext", "widthAuto", "contentHorizontalPosition", "iconFontSize", "hasLoader", "disabled", "whiteSpaceNowrap", "opacity", "animation", "animationRight", "animationText", "confirmDelete", "confirmDeleteText", "confirmDeletePosition", "isLoading"], outputs: ["click", "isLoadingChange"] }, { kind: "pipe", type: AreAllOptionsSelectedPipe, name: "areAllOptionsSelected" }] });
3784
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectedListComponent, decorators: [{
3785
+ type: Component,
3786
+ args: [{ selector: 'wac-selected-list', template: "<div class=\"selected-list\">\n <div class=\"selected-list__wrapper\">\n <div class=\"selected-list__wrapper__head\">\n <p *ngIf=\"label\" [innerHTML]=\"label\"></p>\n <ng-container *ngVar=\"(options | areAllOptionsSelected) as areAllOptionsSelected\">\n <ng-container *ngIf=\"textSelectAll && !areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [label]=\"textSelectAll\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"textUnSelectAll && areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [extraClasses]=\"'is-info'\"\n [label]=\"textUnSelectAll\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n </ng-container>\n\n </div>\n <div class=\"selected-list__wrapper__content\">\n <div class=\"selected-list__wrapper__content__item\" *ngFor=\"let item of options;let i = index;\" [ngClass]=\"{'active': item.checked}\" (click)=\"onSelectItem(i)\">\n <span [innerHTML]=\"item.label\"></span>\n <i class=\"fas fa-check\"></i>\n </div>\n </div>\n </div>\n</div>\n" }]
3787
+ }], propDecorators: { options: [{
3788
+ type: Input
3789
+ }], label: [{
3790
+ type: Input
3791
+ }], textSelectAll: [{
3792
+ type: Input
3793
+ }], textUnSelectAll: [{
3794
+ type: Input
3795
+ }], enableSelectAll: [{
3796
+ type: Input
3797
+ }], selectedItemsIndex: [{
3798
+ type: Output
3799
+ }], selectedItemsAll: [{
3800
+ type: Output
3801
+ }], unSelectedItemsAll: [{
3802
+ type: Output
3803
+ }] } });
3804
+
3805
+ class TreeComponent {
3806
+ constructor() {
3807
+ this.treeDepth = 0;
3808
+ }
3809
+ ngOnInit() { }
3810
+ }
3811
+ TreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3812
+ TreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TreeComponent, selector: "wac-tree", inputs: { items: "items", treeDepth: "treeDepth", optionTemplate: "optionTemplate" }, ngImport: i0, template: "<div *ngFor=\"let item of items; index as i\" [ngClass]=\"['treeDepth-' + treeDepth]\">\n <ul>\n <li>\n\n <ng-template #defaultItem>\n {{ item?.treeLabel }}\n </ng-template>\n\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate || defaultItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: i }\"\n >\n </ng-container>\n\n <wac-tree [optionTemplate]=\"optionTemplate\" [items]=\"item.treeChildren\" *ngIf=\"item.treeChildren?.length\" [treeDepth]=\"treeDepth + 1\">\n <!-- Todo maybe pass child template -->\n\n </wac-tree>\n </li>\n </ul>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: TreeComponent, selector: "wac-tree", inputs: ["items", "treeDepth", "optionTemplate"] }] });
3813
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TreeComponent, decorators: [{
3814
+ type: Component,
3815
+ args: [{ selector: 'wac-tree', template: "<div *ngFor=\"let item of items; index as i\" [ngClass]=\"['treeDepth-' + treeDepth]\">\n <ul>\n <li>\n\n <ng-template #defaultItem>\n {{ item?.treeLabel }}\n </ng-template>\n\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate || defaultItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: i }\"\n >\n </ng-container>\n\n <wac-tree [optionTemplate]=\"optionTemplate\" [items]=\"item.treeChildren\" *ngIf=\"item.treeChildren?.length\" [treeDepth]=\"treeDepth + 1\">\n <!-- Todo maybe pass child template -->\n\n </wac-tree>\n </li>\n </ul>\n</div>" }]
3816
+ }], ctorParameters: function () { return []; }, propDecorators: { items: [{
3817
+ type: Input
3818
+ }], treeDepth: [{
3819
+ type: Input
3820
+ }], optionTemplate: [{
3821
+ type: Input,
3822
+ args: ["optionTemplate"]
3823
+ }] } });
3824
+
3825
+ class FormatObjectToRecursifTreePipe {
3826
+ constructor() {
3827
+ this.childrenProperties = [];
3828
+ }
3829
+ transform(objectList, childrenProperties) {
3830
+ this.childrenProperties = childrenProperties;
3831
+ const treeDepth = 0;
3832
+ objectList.forEach(object => this.recursiveFormatObjectToRecursifTree(object, treeDepth));
3833
+ return objectList;
3834
+ }
3835
+ recursiveFormatObjectToRecursifTree(object, treeDepth) {
3836
+ for (const childrenProperty of this.childrenProperties) {
3837
+ object.hasTreeChildren = true;
3838
+ if (!object.hasOwnProperty(childrenProperty)) {
3839
+ // No more chrildren
3840
+ object.hasTreeChildren = false;
3841
+ continue;
3842
+ }
3843
+ if (!Array.isArray(object[childrenProperty])) {
3844
+ throw `Property : "${childrenProperty}", is not an array. it could not be transform to a recursive list.`;
3845
+ }
3846
+ // Add treeChildren property filled with name children property
3847
+ object.treeChildren = object[childrenProperty];
3848
+ // call this function recursively until no children can be generated
3849
+ this.recursiveFormatObjectToRecursifTree(object.treeChildren, treeDepth++);
3850
+ break;
3851
+ }
3852
+ object.treeDepth = treeDepth;
3853
+ }
3854
+ }
3855
+ FormatObjectToRecursifTreePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToRecursifTreePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
3856
+ FormatObjectToRecursifTreePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToRecursifTreePipe, name: "formatObjectToRecursifTree" });
3857
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToRecursifTreePipe, decorators: [{
3858
+ type: Pipe,
3859
+ args: [{
3860
+ name: 'formatObjectToRecursifTree'
3861
+ }]
3862
+ }] });
3863
+
3864
+ class FormatObjectToSimpleTreePipe {
3865
+ constructor() {
3866
+ this.childrenProperties = [];
3867
+ this.labelProperties = [];
3868
+ }
3869
+ transform(objectList, childrenProperties, labelProperties) {
3870
+ this.childrenProperties = childrenProperties;
3871
+ this.labelProperties = labelProperties;
3872
+ const treeDepth = 0;
3873
+ objectList.forEach(object => this.recursiveFormatObjectToSimpleTree(object, treeDepth));
3874
+ return objectList;
3875
+ }
3876
+ recursiveFormatObjectToSimpleTree(object, treeDepth) {
3877
+ for (const property in object) {
3878
+ if (!Object.prototype.hasOwnProperty.call(object, property)) {
3879
+ continue;
3880
+ }
3881
+ if (this.labelProperties.includes(property)) {
3882
+ object.treeLabel = object[property];
3883
+ continue;
3884
+ }
3885
+ object.hasTreeChildren = true;
3886
+ if (!this.childrenProperties.includes(property)) {
3887
+ // No more chrildren
3888
+ object.hasTreeChildren = false;
3889
+ continue;
3890
+ }
3891
+ if (!Array.isArray(object[property])) {
3892
+ throw `Property : "${property}", is not an array. it could not be transform to a recursive list.`;
3893
+ }
3894
+ // Add treeChildren property filled with name children property
3895
+ object.treeChildren = object[property];
3896
+ // call this function recursively until no children can be generated
3897
+ this.recursiveFormatObjectToSimpleTree(object.treeChildren, treeDepth++);
3898
+ break;
3899
+ }
3900
+ }
3901
+ }
3902
+ FormatObjectToSimpleTreePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToSimpleTreePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
3903
+ FormatObjectToSimpleTreePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToSimpleTreePipe, name: "formatObjectToSimpleTree" });
3904
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: FormatObjectToSimpleTreePipe, decorators: [{
3905
+ type: Pipe,
3906
+ args: [{
3907
+ name: 'formatObjectToSimpleTree'
3908
+ }]
3909
+ }] });
3910
+
3911
+ const exportedPipes = [FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe];
3912
+ const pipes = [
3913
+ SelectFiltersPipe,
3914
+ AreAllOptionsSelectedPipe
3915
+ ];
3916
+ class SharedPipes {
3917
+ }
3918
+ SharedPipes.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedPipes, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3919
+ SharedPipes.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: SharedPipes, declarations: [FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe, SelectFiltersPipe,
3920
+ AreAllOptionsSelectedPipe], imports: [CommonModule, FormsModule], exports: [FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe, SelectFiltersPipe,
3921
+ AreAllOptionsSelectedPipe] });
3922
+ SharedPipes.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedPipes, imports: [CommonModule, FormsModule] });
3923
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedPipes, decorators: [{
3924
+ type: NgModule,
3925
+ args: [{
3926
+ imports: [CommonModule, FormsModule],
3927
+ declarations: [...exportedPipes, ...pipes],
3928
+ exports: [...exportedPipes, ...pipes]
3929
+ }]
3930
+ }] });
3931
+
3932
+ class TreeModule {
3933
+ }
3934
+ TreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3935
+ TreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: TreeModule, declarations: [TreeComponent], imports: [CommonModule,
3936
+ FormsModule,
3937
+ SharedPipes], exports: [TreeComponent] });
3938
+ TreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TreeModule, imports: [CommonModule,
3939
+ FormsModule,
3940
+ SharedPipes] });
3941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TreeModule, decorators: [{
3942
+ type: NgModule,
3943
+ args: [{
3944
+ imports: [
3945
+ CommonModule,
3946
+ FormsModule,
3947
+ SharedPipes
3948
+ ],
3949
+ exports: [TreeComponent],
3950
+ declarations: [TreeComponent],
3951
+ providers: [],
3952
+ }]
3953
+ }] });
3954
+
3955
+ const components = [
3956
+ TagComponent,
3957
+ TabComponent,
3958
+ ButtonComponent,
3959
+ InfoComponent,
3960
+ SettingsComponent,
3961
+ DeleteComponent,
3962
+ DropdownComponent,
3963
+ ImageComponent,
3964
+ BackComponent,
3965
+ SeparatorComponent,
3966
+ LogoComponent,
3967
+ RadioComponent,
3968
+ StateComponent,
3969
+ LabelComponent,
3970
+ CalendarComponent,
3971
+ WzEditInPlaceComponent,
3972
+ AlertComponent,
3973
+ HeaderPageComponent,
3974
+ SwitchComponent,
3975
+ LinkComponent,
3976
+ H1Component,
3977
+ H2Component,
3978
+ H3Component,
3979
+ H4Component,
3980
+ TextComponent,
3981
+ TextAreaComponent,
3982
+ UploadComponent,
3983
+ SelectInTextComponent,
3984
+ SelectComponent,
3985
+ MultipleSearchComponent,
3986
+ MultipleSearchPlusComponent,
3987
+ InputWithSelectComponent,
3988
+ PopinComponent,
3989
+ FreePopinComponent,
3990
+ BlockComponent,
3991
+ WrapperComponent,
3992
+ FiltersComponent,
3993
+ WrapperBlocsComponent,
3994
+ SnackbarComponent,
3995
+ SearchComponent,
3996
+ SelectedListComponent
3997
+ ];
3998
+ const exportsFromModule = [
3999
+ PaginationComponent,
4000
+ TableComponent,
4001
+ TableColumn,
4002
+ CheckBoxRow,
4003
+ TableColumnHeader,
4004
+ TableRow,
4005
+ InputSearchComponent,
4006
+ InputComponent,
4007
+ TooltipComponent,
4008
+ CheckboxComponent,
4009
+ LoaderComponent,
4010
+ ProgressBarComponent,
4011
+ TreeComponent
4012
+ ];
4013
+ class SharedComponentsModule {
4014
+ }
4015
+ SharedComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4016
+ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: SharedComponentsModule, declarations: [TagComponent,
4017
+ TabComponent,
4018
+ ButtonComponent,
4019
+ InfoComponent,
4020
+ SettingsComponent,
4021
+ DeleteComponent,
4022
+ DropdownComponent,
4023
+ ImageComponent,
4024
+ BackComponent,
4025
+ SeparatorComponent,
4026
+ LogoComponent,
4027
+ RadioComponent,
4028
+ StateComponent,
4029
+ LabelComponent,
4030
+ CalendarComponent,
4031
+ WzEditInPlaceComponent,
4032
+ AlertComponent,
4033
+ HeaderPageComponent,
4034
+ SwitchComponent,
4035
+ LinkComponent,
4036
+ H1Component,
4037
+ H2Component,
4038
+ H3Component,
4039
+ H4Component,
4040
+ TextComponent,
4041
+ TextAreaComponent,
4042
+ UploadComponent,
4043
+ SelectInTextComponent,
4044
+ SelectComponent,
4045
+ MultipleSearchComponent,
4046
+ MultipleSearchPlusComponent,
4047
+ InputWithSelectComponent,
4048
+ PopinComponent,
4049
+ FreePopinComponent,
4050
+ BlockComponent,
4051
+ WrapperComponent,
4052
+ FiltersComponent,
4053
+ WrapperBlocsComponent,
4054
+ SnackbarComponent,
4055
+ SearchComponent,
4056
+ SelectedListComponent], imports: [CommonModule,
4057
+ FormsModule,
4058
+ NwbAllModule, i1$3.TranslateModule, ReactiveFormsModule,
4059
+ SharedDirectives,
4060
+ SharedPipes,
4061
+ CdkTableModule,
4062
+ TagInputModule,
4063
+ PaginationModule,
4064
+ TableModule,
4065
+ InputSearchModule,
4066
+ TooltipModule,
4067
+ CheckboxModule,
4068
+ InputModule,
4069
+ LoaderModule,
4070
+ ProgressBarModule,
4071
+ PerfectScrollbarModule,
4072
+ AlertPopupModule,
4073
+ RouterModule,
4074
+ TreeModule], exports: [TagComponent,
4075
+ TabComponent,
4076
+ ButtonComponent,
4077
+ InfoComponent,
4078
+ SettingsComponent,
4079
+ DeleteComponent,
4080
+ DropdownComponent,
4081
+ ImageComponent,
4082
+ BackComponent,
4083
+ SeparatorComponent,
4084
+ LogoComponent,
4085
+ RadioComponent,
4086
+ StateComponent,
4087
+ LabelComponent,
4088
+ CalendarComponent,
4089
+ WzEditInPlaceComponent,
4090
+ AlertComponent,
4091
+ HeaderPageComponent,
4092
+ SwitchComponent,
4093
+ LinkComponent,
4094
+ H1Component,
4095
+ H2Component,
4096
+ H3Component,
4097
+ H4Component,
4098
+ TextComponent,
4099
+ TextAreaComponent,
4100
+ UploadComponent,
4101
+ SelectInTextComponent,
4102
+ SelectComponent,
4103
+ MultipleSearchComponent,
4104
+ MultipleSearchPlusComponent,
4105
+ InputWithSelectComponent,
4106
+ PopinComponent,
4107
+ FreePopinComponent,
4108
+ BlockComponent,
4109
+ WrapperComponent,
4110
+ FiltersComponent,
4111
+ WrapperBlocsComponent,
4112
+ SnackbarComponent,
4113
+ SearchComponent,
4114
+ SelectedListComponent, PaginationComponent,
4115
+ TableComponent,
4116
+ TableColumn,
4117
+ CheckBoxRow,
4118
+ TableColumnHeader,
4119
+ TableRow,
4120
+ InputSearchComponent,
4121
+ InputComponent,
4122
+ TooltipComponent,
4123
+ CheckboxComponent,
4124
+ LoaderComponent,
4125
+ ProgressBarComponent,
4126
+ TreeComponent] });
4127
+ SharedComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedComponentsModule, imports: [CommonModule,
4128
+ FormsModule,
4129
+ NwbAllModule,
4130
+ TranslateModule.forChild(),
4131
+ ReactiveFormsModule,
4132
+ SharedDirectives,
4133
+ SharedPipes,
4134
+ CdkTableModule,
4135
+ TagInputModule,
4136
+ PaginationModule,
4137
+ TableModule,
4138
+ InputSearchModule,
4139
+ TooltipModule,
4140
+ CheckboxModule,
4141
+ InputModule,
4142
+ LoaderModule,
4143
+ ProgressBarModule,
4144
+ PerfectScrollbarModule,
4145
+ AlertPopupModule,
4146
+ RouterModule,
4147
+ TreeModule] });
4148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SharedComponentsModule, decorators: [{
4149
+ type: NgModule,
4150
+ args: [{
4151
+ imports: [
4152
+ CommonModule,
4153
+ FormsModule,
4154
+ NwbAllModule,
4155
+ TranslateModule.forChild(),
4156
+ ReactiveFormsModule,
4157
+ SharedDirectives,
4158
+ SharedPipes,
4159
+ CdkTableModule,
4160
+ TagInputModule,
4161
+ PaginationModule,
4162
+ TableModule,
4163
+ InputSearchModule,
4164
+ TooltipModule,
4165
+ CheckboxModule,
4166
+ InputModule,
4167
+ LoaderModule,
4168
+ ProgressBarModule,
4169
+ PerfectScrollbarModule,
4170
+ AlertPopupModule,
4171
+ RouterModule,
4172
+ TreeModule
4173
+ ],
4174
+ declarations: components,
4175
+ exports: [...components, ...exportsFromModule]
4176
+ }]
4177
+ }] });
4178
+
4179
+ class WiziComponentsModule {
4180
+ }
4181
+ WiziComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WiziComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4182
+ WiziComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: WiziComponentsModule, imports: [CommonModule,
4183
+ SharedComponentsModule,
4184
+ SharedDirectives,
4185
+ SharedPipes,
4186
+ NwbAllModule], exports: [SharedComponentsModule, SharedDirectives, SharedPipes] });
4187
+ WiziComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WiziComponentsModule, imports: [CommonModule,
4188
+ SharedComponentsModule,
4189
+ SharedDirectives,
4190
+ SharedPipes,
4191
+ NwbAllModule, SharedComponentsModule, SharedDirectives, SharedPipes] });
4192
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: WiziComponentsModule, decorators: [{
4193
+ type: NgModule,
4194
+ args: [{
4195
+ imports: [
4196
+ CommonModule,
4197
+ SharedComponentsModule,
4198
+ SharedDirectives,
4199
+ SharedPipes,
4200
+ NwbAllModule
4201
+ ],
4202
+ exports: [SharedComponentsModule, SharedDirectives, SharedPipes]
4203
+ }]
4204
+ }] });
4205
+
4206
+ class TableFiltersGroup extends NwbFilterGroup {
4207
+ set(key, value) {
4208
+ super.set(key, value);
4209
+ }
4210
+ resetToFirstPage() {
4211
+ this.set("currentPage", 1);
4212
+ }
4213
+ }
4214
+
4215
+ /*
4216
+ * Public API Surface of angular-components
4217
+ */
4218
+
4219
+ /**
4220
+ * Generated bundle index. Do not edit.
4221
+ */
4222
+
4223
+ export { AbstractDebounceDirective, AlertComponent, AlertPopupComponent, AlertPopupModule, AlertPopupService, AreAllOptionsSelectedPipe, AutoHideDirective, BackComponent, BlockComponent, ButtonComponent, CalendarComponent, CheckBoxRow, CheckboxComponent, DebounceKeyupDirective, DeleteComponent, DropdownComponent, FiltersComponent, FiltersTableService, FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe, FreePopinComponent, H1Component, H2Component, H3Component, H4Component, HeaderPageComponent, HtmlContainer, ImageComponent, InfoComponent, InputComponent, InputSearchComponent, InputWithSelectComponent, KeypressEnterDirective, LabelComponent, LinkComponent, LoaderComponent, LogoComponent, MultipleSearchComponent, MultipleSearchPlusComponent, PaginationComponent, PopinComponent, ProgressBarComponent, RadioComponent, SearchComponent, SelectComponent, SelectFiltersPipe, SelectInTextComponent, SelectedListComponent, SeparatorComponent, SettingsComponent, SharedComponentsModule, SharedDirectives, SharedPipes, SnackbarComponent, StateComponent, SwitchComponent, TabComponent, TableColumn, TableColumnHeader, TableComponent, TableFiltersGroup, TableRow, TagComponent, TextAreaComponent, TextComponent, TooltipComponent, TreeComponent, TreeModule, UploadComponent, VarDirective, WiziComponentsModule, WrapperBlocsComponent, WrapperComponent, WzEditInPlaceComponent, ZindexToggleDirective };
4224
+ //# sourceMappingURL=wizishop-angular-components.mjs.map