@wizishop/img-manager 0.2.104 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/esm2020/lib/animations/easeInOut/ease-in-out.animation.mjs +12 -0
  2. package/esm2020/lib/animations/insertRemove/insert-remove.animation.mjs +9 -0
  3. package/esm2020/lib/animations/listAnnimation/list.animation.mjs +16 -0
  4. package/esm2020/lib/components/canva-btn/canva-btn.component.mjs +67 -0
  5. package/esm2020/lib/components/images-view/images-actions-handler.mjs +151 -0
  6. package/esm2020/lib/components/images-view/images-view.component.mjs +474 -0
  7. package/esm2020/lib/components/images-view/mosaic-view/img-card/img-card.component.mjs +66 -0
  8. package/esm2020/lib/components/images-view/mosaic-view/mosaic-view.component.mjs +68 -0
  9. package/esm2020/lib/components/images-view/table-view/table-view.component.mjs +48 -0
  10. package/esm2020/lib/components/img-editor/cropper/cropper.component.mjs +307 -0
  11. package/esm2020/lib/components/img-editor/img-editor.component.mjs +109 -0
  12. package/esm2020/lib/components/img-editor/info-section/info-section.component.mjs +54 -0
  13. package/esm2020/lib/components/img-selection/img-selection.component.mjs +59 -0
  14. package/esm2020/lib/components/img-tabs/img-tabs.component.mjs +122 -0
  15. package/esm2020/lib/components/img-upload/img-upload.component.mjs +118 -0
  16. package/esm2020/lib/components/loader/loader.component.mjs +21 -0
  17. package/esm2020/lib/components/pexels-lib/pexels-lib.component.mjs +200 -0
  18. package/esm2020/lib/components/shared/alert/alert.component.mjs +27 -0
  19. package/esm2020/lib/components/shared/checkbox/checkbox.component.mjs +52 -0
  20. package/esm2020/lib/components/shared/dropdown/dropdown.component.mjs +21 -0
  21. package/esm2020/lib/components/shared/input-search/input-search.component.mjs +54 -0
  22. package/esm2020/lib/components/shared/pagination/page-selector/page-selector.component.mjs +49 -0
  23. package/esm2020/lib/components/shared/pagination/pagination.component.mjs +49 -0
  24. package/esm2020/lib/components/shared/select/call-to-action.model.mjs +2 -0
  25. package/esm2020/lib/components/shared/select/select-items.dto.mjs +2 -0
  26. package/esm2020/lib/components/shared/select/select.component.mjs +110 -0
  27. package/esm2020/lib/components/shared/table/table.component.mjs +116 -0
  28. package/esm2020/lib/components/upload-list/upload-list.component.mjs +79 -0
  29. package/esm2020/lib/directives/abstract-debounce/abstract-debounce.directive.mjs +37 -0
  30. package/esm2020/lib/directives/abstract-debounce/debounce-keyup.directive.mjs +24 -0
  31. package/esm2020/lib/directives/auto-hide.directive.mjs +48 -0
  32. package/esm2020/lib/directives/copy-to-clipboard.directive.mjs +37 -0
  33. package/esm2020/lib/directives/drag-drop.directive.mjs +57 -0
  34. package/esm2020/lib/directives/loading.directive.mjs +42 -0
  35. package/esm2020/lib/directives/table/checkBoxRow.directive.mjs +114 -0
  36. package/esm2020/lib/directives/table/column.directive.mjs +45 -0
  37. package/esm2020/lib/directives/table/columnHeader.directive.mjs +204 -0
  38. package/esm2020/lib/directives/table/raw.directive.mjs +31 -0
  39. package/esm2020/lib/directives/zindex-toggle.directive.mjs +42 -0
  40. package/esm2020/lib/dto/ImgManagerDisplayConfig.dto.mjs +2 -0
  41. package/esm2020/lib/dto/canva-create-design.dto.mjs +4 -0
  42. package/esm2020/lib/dto/canva.dto.mjs +4 -0
  43. package/esm2020/lib/dto/config/apis/api.dto.mjs +9 -0
  44. package/esm2020/lib/dto/config/external/external-config.dto.mjs +3 -0
  45. package/esm2020/lib/dto/config/image-cdn/image-cdn-config.dto.mjs +10 -0
  46. package/esm2020/lib/dto/export-dtos.api.mjs +11 -0
  47. package/esm2020/lib/dto/img-editor-config.dto.mjs +2 -0
  48. package/esm2020/lib/dto/img-manager.dto.mjs +2 -0
  49. package/esm2020/lib/dto/pexels-img.dto.mjs +2 -0
  50. package/esm2020/lib/dto/picture-name-update.dto.mjs +2 -0
  51. package/esm2020/lib/dto/stateDisplayed.dto.mjs +2 -0
  52. package/esm2020/lib/dto/tabDisplayed.dto.mjs +2 -0
  53. package/esm2020/lib/dto/wizi-block-media.dto.mjs +3 -0
  54. package/esm2020/lib/pipes/images/img-src.pipe.mjs +28 -0
  55. package/esm2020/lib/pipes/number-to-array.pipe.mjs +16 -0
  56. package/esm2020/lib/pipes/pagination/array-total-pages/array-pages.pipe.mjs +28 -0
  57. package/esm2020/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.mjs +53 -0
  58. package/esm2020/lib/pipes/pagination/text/custom-text.pipe.mjs +35 -0
  59. package/esm2020/lib/pipes/pagination/total-pages/is-last-page.pipe.mjs +25 -0
  60. package/esm2020/lib/pipes/select/select-filters.pipe.mjs +19 -0
  61. package/esm2020/lib/services/alert.service.mjs +53 -0
  62. package/esm2020/lib/services/canva.service.mjs +159 -0
  63. package/esm2020/lib/services/config/external-config.service.mjs +49 -0
  64. package/esm2020/lib/services/config/img-cdn.service.mjs +28 -0
  65. package/esm2020/lib/services/dom.service.mjs +36 -0
  66. package/{esm2015/lib/services/img-event.service.js → esm2020/lib/services/img-event.service.mjs} +11 -12
  67. package/esm2020/lib/services/img-manager.service.mjs +138 -0
  68. package/{esm2015/lib/services/img-selection.service.js → esm2020/lib/services/img-selection.service.mjs} +11 -12
  69. package/esm2020/lib/services/pexels.service.mjs +62 -0
  70. package/esm2020/lib/services/rename-picture.service.mjs +68 -0
  71. package/esm2020/lib/services/table/filters-table.service.mjs +63 -0
  72. package/{esm2015/lib/services/user-settings.service.js → esm2020/lib/services/user-settings.service.mjs} +11 -12
  73. package/esm2020/lib/wz-img-manager.component.mjs +186 -0
  74. package/esm2020/lib/wz-img-manager.module.mjs +193 -0
  75. package/esm2020/public-api.mjs +11 -0
  76. package/esm2020/wizishop-img-manager.mjs +5 -0
  77. package/fesm2015/wizishop-img-manager.mjs +4134 -0
  78. package/fesm2015/wizishop-img-manager.mjs.map +1 -0
  79. package/fesm2020/wizishop-img-manager.mjs +4140 -0
  80. package/fesm2020/wizishop-img-manager.mjs.map +1 -0
  81. package/index.d.ts +5 -0
  82. package/lib/components/canva-btn/canva-btn.component.d.ts +9 -6
  83. package/lib/components/images-view/images-actions-handler.d.ts +3 -0
  84. package/lib/components/images-view/images-view.component.d.ts +3 -0
  85. package/lib/components/images-view/mosaic-view/img-card/img-card.component.d.ts +3 -0
  86. package/lib/components/images-view/mosaic-view/mosaic-view.component.d.ts +3 -0
  87. package/lib/components/images-view/table-view/table-view.component.d.ts +3 -0
  88. package/lib/components/img-editor/cropper/cropper.component.d.ts +12 -5
  89. package/lib/components/img-editor/img-editor.component.d.ts +3 -0
  90. package/lib/components/img-editor/info-section/info-section.component.d.ts +3 -0
  91. package/lib/components/img-selection/img-selection.component.d.ts +3 -0
  92. package/lib/components/img-tabs/img-tabs.component.d.ts +3 -0
  93. package/lib/components/img-upload/img-upload.component.d.ts +4 -1
  94. package/lib/components/loader/loader.component.d.ts +3 -0
  95. package/lib/components/pexels-lib/pexels-lib.component.d.ts +3 -0
  96. package/lib/components/shared/alert/alert.component.d.ts +3 -0
  97. package/lib/components/shared/checkbox/checkbox.component.d.ts +3 -0
  98. package/lib/components/shared/dropdown/dropdown.component.d.ts +3 -0
  99. package/lib/components/shared/input-search/input-search.component.d.ts +3 -0
  100. package/lib/components/shared/pagination/page-selector/page-selector.component.d.ts +3 -0
  101. package/lib/components/shared/pagination/pagination.component.d.ts +3 -0
  102. package/lib/components/shared/select/select.component.d.ts +3 -0
  103. package/lib/components/shared/table/table.component.d.ts +3 -0
  104. package/lib/components/upload-list/upload-list.component.d.ts +3 -0
  105. package/lib/directives/abstract-debounce/abstract-debounce.directive.d.ts +3 -0
  106. package/lib/directives/abstract-debounce/debounce-keyup.directive.d.ts +3 -0
  107. package/lib/directives/auto-hide.directive.d.ts +3 -0
  108. package/lib/directives/copy-to-clipboard.directive.d.ts +3 -0
  109. package/lib/directives/drag-drop.directive.d.ts +3 -0
  110. package/lib/directives/loading.directive.d.ts +3 -0
  111. package/lib/directives/table/checkBoxRow.directive.d.ts +3 -0
  112. package/lib/directives/table/column.directive.d.ts +3 -0
  113. package/lib/directives/table/columnHeader.directive.d.ts +3 -0
  114. package/lib/directives/table/raw.directive.d.ts +3 -0
  115. package/lib/directives/zindex-toggle.directive.d.ts +3 -0
  116. package/lib/dto/pexels-img.dto.d.ts +1 -0
  117. package/lib/pipes/images/img-src.pipe.d.ts +3 -0
  118. package/lib/pipes/number-to-array.pipe.d.ts +3 -0
  119. package/lib/pipes/pagination/array-total-pages/array-pages.pipe.d.ts +3 -0
  120. package/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.d.ts +7 -1
  121. package/lib/pipes/pagination/text/custom-text.pipe.d.ts +3 -0
  122. package/lib/pipes/pagination/total-pages/is-last-page.pipe.d.ts +3 -0
  123. package/lib/pipes/select/select-filters.pipe.d.ts +3 -0
  124. package/lib/services/alert.service.d.ts +3 -0
  125. package/lib/services/canva.service.d.ts +3 -0
  126. package/lib/services/config/external-config.service.d.ts +3 -0
  127. package/lib/services/config/img-cdn.service.d.ts +3 -0
  128. package/lib/services/dom.service.d.ts +3 -0
  129. package/lib/services/img-event.service.d.ts +3 -0
  130. package/lib/services/img-manager.service.d.ts +5 -2
  131. package/lib/services/img-selection.service.d.ts +3 -0
  132. package/lib/services/pexels.service.d.ts +7 -4
  133. package/lib/services/rename-picture.service.d.ts +3 -0
  134. package/lib/services/table/filters-table.service.d.ts +3 -0
  135. package/lib/services/user-settings.service.d.ts +3 -0
  136. package/lib/wz-img-manager.component.d.ts +3 -0
  137. package/lib/wz-img-manager.module.d.ts +56 -0
  138. package/package.json +46 -26
  139. package/wizishop-img-manager-14.0.0.tgz +0 -0
  140. package/wz-img-manager.scss +2745 -3141
  141. package/bundles/wizishop-img-manager.umd.js +0 -5046
  142. package/bundles/wizishop-img-manager.umd.js.map +0 -1
  143. package/bundles/wizishop-img-manager.umd.min.js +0 -16
  144. package/bundles/wizishop-img-manager.umd.min.js.map +0 -1
  145. package/esm2015/lib/animations/easeInOut/ease-in-out.animation.js +0 -12
  146. package/esm2015/lib/animations/insertRemove/insert-remove.animation.js +0 -9
  147. package/esm2015/lib/animations/listAnnimation/list.animation.js +0 -16
  148. package/esm2015/lib/components/canva-btn/canva-btn.component.js +0 -70
  149. package/esm2015/lib/components/images-view/images-actions-handler.js +0 -180
  150. package/esm2015/lib/components/images-view/images-view.component.js +0 -492
  151. package/esm2015/lib/components/images-view/mosaic-view/img-card/img-card.component.js +0 -84
  152. package/esm2015/lib/components/images-view/mosaic-view/mosaic-view.component.js +0 -79
  153. package/esm2015/lib/components/images-view/table-view/table-view.component.js +0 -49
  154. package/esm2015/lib/components/img-editor/cropper/cropper.component.js +0 -280
  155. package/esm2015/lib/components/img-editor/img-editor.component.js +0 -112
  156. package/esm2015/lib/components/img-editor/info-section/info-section.component.js +0 -59
  157. package/esm2015/lib/components/img-selection/img-selection.component.js +0 -62
  158. package/esm2015/lib/components/img-tabs/img-tabs.component.js +0 -131
  159. package/esm2015/lib/components/img-upload/img-upload.component.js +0 -125
  160. package/esm2015/lib/components/loader/loader.component.js +0 -28
  161. package/esm2015/lib/components/pexels-lib/pexels-lib.component.js +0 -208
  162. package/esm2015/lib/components/shared/alert/alert.component.js +0 -37
  163. package/esm2015/lib/components/shared/checkbox/checkbox.component.js +0 -69
  164. package/esm2015/lib/components/shared/dropdown/dropdown.component.js +0 -26
  165. package/esm2015/lib/components/shared/input-search/input-search.component.js +0 -62
  166. package/esm2015/lib/components/shared/pagination/page-selector/page-selector.component.js +0 -55
  167. package/esm2015/lib/components/shared/pagination/pagination.component.js +0 -51
  168. package/esm2015/lib/components/shared/select/call-to-action.model.js +0 -1
  169. package/esm2015/lib/components/shared/select/select-items.dto.js +0 -1
  170. package/esm2015/lib/components/shared/select/select.component.js +0 -133
  171. package/esm2015/lib/components/shared/table/table.component.js +0 -133
  172. package/esm2015/lib/components/upload-list/upload-list.component.js +0 -87
  173. package/esm2015/lib/directives/abstract-debounce/abstract-debounce.directive.js +0 -40
  174. package/esm2015/lib/directives/abstract-debounce/debounce-keyup.directive.js +0 -26
  175. package/esm2015/lib/directives/auto-hide.directive.js +0 -55
  176. package/esm2015/lib/directives/copy-to-clipboard.directive.js +0 -40
  177. package/esm2015/lib/directives/drag-drop.directive.js +0 -68
  178. package/esm2015/lib/directives/loading.directive.js +0 -44
  179. package/esm2015/lib/directives/table/checkBoxRow.directive.js +0 -128
  180. package/esm2015/lib/directives/table/column.directive.js +0 -49
  181. package/esm2015/lib/directives/table/columnHeader.directive.js +0 -221
  182. package/esm2015/lib/directives/table/raw.directive.js +0 -33
  183. package/esm2015/lib/directives/zindex-toggle.directive.js +0 -49
  184. package/esm2015/lib/dto/ImgManagerDisplayConfig.dto.js +0 -1
  185. package/esm2015/lib/dto/canva-create-design.dto.js +0 -4
  186. package/esm2015/lib/dto/canva.dto.js +0 -4
  187. package/esm2015/lib/dto/config/apis/api.dto.js +0 -9
  188. package/esm2015/lib/dto/config/external/external-config.dto.js +0 -3
  189. package/esm2015/lib/dto/config/image-cdn/image-cdn-config.dto.js +0 -10
  190. package/esm2015/lib/dto/export-dtos.api.js +0 -5
  191. package/esm2015/lib/dto/img-editor-config.dto.js +0 -1
  192. package/esm2015/lib/dto/img-manager.dto.js +0 -1
  193. package/esm2015/lib/dto/pexels-img.dto.js +0 -1
  194. package/esm2015/lib/dto/picture-name-update.dto.js +0 -1
  195. package/esm2015/lib/dto/stateDisplayed.dto.js +0 -1
  196. package/esm2015/lib/dto/tabDisplayed.dto.js +0 -1
  197. package/esm2015/lib/dto/wizi-block-media.dto.js +0 -3
  198. package/esm2015/lib/pipes/images/img-src.pipe.js +0 -29
  199. package/esm2015/lib/pipes/number-to-array.pipe.js +0 -14
  200. package/esm2015/lib/pipes/pagination/array-total-pages/array-pages.pipe.js +0 -26
  201. package/esm2015/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.js +0 -51
  202. package/esm2015/lib/pipes/pagination/text/custom-text.pipe.js +0 -36
  203. package/esm2015/lib/pipes/pagination/total-pages/is-last-page.pipe.js +0 -23
  204. package/esm2015/lib/pipes/select/select-filters.pipe.js +0 -17
  205. package/esm2015/lib/services/alert.service.js +0 -59
  206. package/esm2015/lib/services/canva.service.js +0 -171
  207. package/esm2015/lib/services/config/external-config.service.js +0 -55
  208. package/esm2015/lib/services/config/img-cdn.service.js +0 -29
  209. package/esm2015/lib/services/dom.service.js +0 -36
  210. package/esm2015/lib/services/img-manager.service.js +0 -142
  211. package/esm2015/lib/services/pexels.service.js +0 -70
  212. package/esm2015/lib/services/rename-picture.service.js +0 -74
  213. package/esm2015/lib/services/table/filters-table.service.js +0 -67
  214. package/esm2015/lib/wz-img-manager.component.js +0 -212
  215. package/esm2015/lib/wz-img-manager.module.js +0 -132
  216. package/esm2015/public-api.js +0 -11
  217. package/esm2015/wizishop-img-manager.js +0 -57
  218. package/esm5/lib/animations/easeInOut/ease-in-out.animation.js +0 -12
  219. package/esm5/lib/animations/insertRemove/insert-remove.animation.js +0 -9
  220. package/esm5/lib/animations/listAnnimation/list.animation.js +0 -16
  221. package/esm5/lib/components/canva-btn/canva-btn.component.js +0 -72
  222. package/esm5/lib/components/images-view/images-actions-handler.js +0 -183
  223. package/esm5/lib/components/images-view/images-view.component.js +0 -535
  224. package/esm5/lib/components/images-view/mosaic-view/img-card/img-card.component.js +0 -87
  225. package/esm5/lib/components/images-view/mosaic-view/mosaic-view.component.js +0 -82
  226. package/esm5/lib/components/images-view/table-view/table-view.component.js +0 -52
  227. package/esm5/lib/components/img-editor/cropper/cropper.component.js +0 -285
  228. package/esm5/lib/components/img-editor/img-editor.component.js +0 -115
  229. package/esm5/lib/components/img-editor/info-section/info-section.component.js +0 -64
  230. package/esm5/lib/components/img-selection/img-selection.component.js +0 -64
  231. package/esm5/lib/components/img-tabs/img-tabs.component.js +0 -133
  232. package/esm5/lib/components/img-upload/img-upload.component.js +0 -138
  233. package/esm5/lib/components/loader/loader.component.js +0 -29
  234. package/esm5/lib/components/pexels-lib/pexels-lib.component.js +0 -216
  235. package/esm5/lib/components/shared/alert/alert.component.js +0 -38
  236. package/esm5/lib/components/shared/checkbox/checkbox.component.js +0 -71
  237. package/esm5/lib/components/shared/dropdown/dropdown.component.js +0 -27
  238. package/esm5/lib/components/shared/input-search/input-search.component.js +0 -68
  239. package/esm5/lib/components/shared/pagination/page-selector/page-selector.component.js +0 -64
  240. package/esm5/lib/components/shared/pagination/pagination.component.js +0 -56
  241. package/esm5/lib/components/shared/select/call-to-action.model.js +0 -1
  242. package/esm5/lib/components/shared/select/select-items.dto.js +0 -1
  243. package/esm5/lib/components/shared/select/select.component.js +0 -136
  244. package/esm5/lib/components/shared/table/table.component.js +0 -135
  245. package/esm5/lib/components/upload-list/upload-list.component.js +0 -103
  246. package/esm5/lib/directives/abstract-debounce/abstract-debounce.directive.js +0 -42
  247. package/esm5/lib/directives/abstract-debounce/debounce-keyup.directive.js +0 -28
  248. package/esm5/lib/directives/auto-hide.directive.js +0 -57
  249. package/esm5/lib/directives/copy-to-clipboard.directive.js +0 -42
  250. package/esm5/lib/directives/drag-drop.directive.js +0 -69
  251. package/esm5/lib/directives/loading.directive.js +0 -46
  252. package/esm5/lib/directives/table/checkBoxRow.directive.js +0 -137
  253. package/esm5/lib/directives/table/column.directive.js +0 -50
  254. package/esm5/lib/directives/table/columnHeader.directive.js +0 -229
  255. package/esm5/lib/directives/table/raw.directive.js +0 -34
  256. package/esm5/lib/directives/zindex-toggle.directive.js +0 -54
  257. package/esm5/lib/dto/ImgManagerDisplayConfig.dto.js +0 -1
  258. package/esm5/lib/dto/canva-create-design.dto.js +0 -8
  259. package/esm5/lib/dto/canva.dto.js +0 -8
  260. package/esm5/lib/dto/config/apis/api.dto.js +0 -11
  261. package/esm5/lib/dto/config/external/external-config.dto.js +0 -7
  262. package/esm5/lib/dto/config/image-cdn/image-cdn-config.dto.js +0 -12
  263. package/esm5/lib/dto/export-dtos.api.js +0 -5
  264. package/esm5/lib/dto/img-editor-config.dto.js +0 -1
  265. package/esm5/lib/dto/img-manager.dto.js +0 -1
  266. package/esm5/lib/dto/pexels-img.dto.js +0 -1
  267. package/esm5/lib/dto/picture-name-update.dto.js +0 -1
  268. package/esm5/lib/dto/stateDisplayed.dto.js +0 -1
  269. package/esm5/lib/dto/tabDisplayed.dto.js +0 -1
  270. package/esm5/lib/dto/wizi-block-media.dto.js +0 -7
  271. package/esm5/lib/pipes/images/img-src.pipe.js +0 -30
  272. package/esm5/lib/pipes/number-to-array.pipe.js +0 -17
  273. package/esm5/lib/pipes/pagination/array-total-pages/array-pages.pipe.js +0 -29
  274. package/esm5/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.js +0 -54
  275. package/esm5/lib/pipes/pagination/text/custom-text.pipe.js +0 -37
  276. package/esm5/lib/pipes/pagination/total-pages/is-last-page.pipe.js +0 -26
  277. package/esm5/lib/pipes/select/select-filters.pipe.js +0 -20
  278. package/esm5/lib/services/alert.service.js +0 -62
  279. package/esm5/lib/services/canva.service.js +0 -181
  280. package/esm5/lib/services/config/external-config.service.js +0 -56
  281. package/esm5/lib/services/config/img-cdn.service.js +0 -34
  282. package/esm5/lib/services/dom.service.js +0 -39
  283. package/esm5/lib/services/img-event.service.js +0 -46
  284. package/esm5/lib/services/img-manager.service.js +0 -143
  285. package/esm5/lib/services/img-selection.service.js +0 -143
  286. package/esm5/lib/services/pexels.service.js +0 -72
  287. package/esm5/lib/services/rename-picture.service.js +0 -88
  288. package/esm5/lib/services/table/filters-table.service.js +0 -68
  289. package/esm5/lib/services/user-settings.service.js +0 -30
  290. package/esm5/lib/wz-img-manager.component.js +0 -228
  291. package/esm5/lib/wz-img-manager.module.js +0 -131
  292. package/esm5/public-api.js +0 -11
  293. package/esm5/wizishop-img-manager.js +0 -57
  294. package/fesm2015/wizishop-img-manager.js +0 -4514
  295. package/fesm2015/wizishop-img-manager.js.map +0 -1
  296. package/fesm5/wizishop-img-manager.js +0 -4788
  297. package/fesm5/wizishop-img-manager.js.map +0 -1
  298. package/wizishop-img-manager-0.2.104.tgz +0 -0
  299. package/wizishop-img-manager.d.ts +0 -56
  300. package/wizishop-img-manager.metadata.json +0 -1
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWl0ZW1zLmR0by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvc2VsZWN0L3NlbGVjdC1pdGVtcy5kdG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0SXRlbSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHZhbHVlPzogYW55O1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgc2VsZWN0ZWQ/OiBib29sZWFuO1xuICAgIGhpZGU/OmJvb2xlYW47XG4gICAgaWQ6IG51bWJlcjtcbiAgfVxuIl19
@@ -0,0 +1,110 @@
1
+ import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { TranslateService } from '@ngx-translate/core';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@ngx-translate/core";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "@angular/forms";
8
+ import * as i4 from "ngx-perfect-scrollbar";
9
+ import * as i5 from "../../../directives/auto-hide.directive";
10
+ import * as i6 from "../../../directives/zindex-toggle.directive";
11
+ import * as i7 from "../../../pipes/select/select-filters.pipe";
12
+ export class SelectComponent {
13
+ constructor(translateService) {
14
+ this.translateService = translateService;
15
+ this.search = false;
16
+ this.type = 'default';
17
+ this.maxWidth = '100%';
18
+ this.disabled = false;
19
+ this.selectValue = new EventEmitter();
20
+ this.clickOnCallToAction = new EventEmitter();
21
+ this.openCategories = false;
22
+ this.searchValue = '';
23
+ this.indexItemSelected = -1;
24
+ // ControlValueAccessor methods
25
+ this.onChange = () => { };
26
+ this.onTouch = () => { };
27
+ }
28
+ ngOnInit() {
29
+ this.indexItemSelected = this.items.findIndex(item => item.selected);
30
+ }
31
+ onClose() {
32
+ this.openCategories = false;
33
+ }
34
+ customTB(item, index) {
35
+ return `${item.id}-${index}`;
36
+ }
37
+ onSelectItem(id) {
38
+ this.unselectAll();
39
+ this.setIndexItemSelected(id);
40
+ const itemSelected = this.getItemSelected();
41
+ itemSelected.selected = true;
42
+ this.selectValue.emit(this.indexItemSelected);
43
+ this.onChange(itemSelected);
44
+ }
45
+ onClickCallToAction() {
46
+ this.onClose();
47
+ this.clickOnCallToAction.emit(this.callToAction.value);
48
+ }
49
+ getItemSelected() {
50
+ return this.items[this.indexItemSelected];
51
+ }
52
+ showCategories() {
53
+ this.openCategories = true;
54
+ setTimeout(() => {
55
+ this.searchElement.nativeElement.focus();
56
+ }, 0);
57
+ }
58
+ unselectAll() {
59
+ this.items.forEach(item => item.selected = false);
60
+ }
61
+ setIndexItemSelected(id) {
62
+ this.indexItemSelected = this.items.findIndex(item => item.id === id);
63
+ }
64
+ writeValue(selectItem) {
65
+ if (!selectItem) {
66
+ return;
67
+ }
68
+ this.unselectAll();
69
+ selectItem.selected = true;
70
+ this.setIndexItemSelected(selectItem.id);
71
+ }
72
+ registerOnChange(fn) {
73
+ this.onChange = fn;
74
+ }
75
+ registerOnTouched(fn) {
76
+ this.onTouch = fn;
77
+ }
78
+ }
79
+ SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SelectComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
80
+ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: SelectComponent, selector: "wac-select", inputs: { items: "items", placeholder: "placeholder", label: "label", maxWidthItems: "maxWidthItems", search: "search", type: "type", callToAction: "callToAction", maxWidth: "maxWidth", disabled: "disabled" }, outputs: { 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) | translate\"></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\" />\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 <div [perfectScrollbar]=\"{ 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 *ngIf=\"!item.hide\" [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name | translate }}\n </div>\n </div>\n\n </div>\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: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.PerfectScrollbarDirective, selector: "[perfectScrollbar]", inputs: ["disabled", "perfectScrollbar"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }, { kind: "directive", type: i5.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: i6.ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.SelectFiltersPipe, name: "selectFilters" }] });
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SelectComponent, decorators: [{
82
+ type: Component,
83
+ 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) | translate\"></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\" />\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 <div [perfectScrollbar]=\"{ 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 *ngIf=\"!item.hide\" [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name | translate }}\n </div>\n </div>\n\n </div>\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>" }]
84
+ }], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { items: [{
85
+ type: Input
86
+ }], placeholder: [{
87
+ type: Input
88
+ }], label: [{
89
+ type: Input
90
+ }], maxWidthItems: [{
91
+ type: Input
92
+ }], search: [{
93
+ type: Input
94
+ }], type: [{
95
+ type: Input
96
+ }], callToAction: [{
97
+ type: Input
98
+ }], maxWidth: [{
99
+ type: Input
100
+ }], disabled: [{
101
+ type: Input
102
+ }], selectValue: [{
103
+ type: Output
104
+ }], clickOnCallToAction: [{
105
+ type: Output
106
+ }], searchElement: [{
107
+ type: ViewChild,
108
+ args: ['search']
109
+ }] } });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBU3pFLE1BQU0sT0FBTyxlQUFlO0lBc0MxQixZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXhCdEQsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLFNBQUksR0FBRyxTQUFTLENBQUM7UUFLUixhQUFRLEdBQUcsTUFBTSxDQUFDO1FBRzNCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFUCxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFekMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUl4RCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUVqQixzQkFBaUIsR0FBVyxDQUFDLENBQUMsQ0FBQztRQWlEL0IsK0JBQStCO1FBRS9CLGFBQVEsR0FBcUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3RELFlBQU8sR0FBUSxH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SztzQkFESixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdJLFdBQVc7c0JBQXBCLE1BQU07Z0JBRUcsbUJBQW1CO3NCQUE1QixNQUFNO2dCQUVjLGFBQWE7c0JBQWpDLFNBQVM7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3RJdGVtIH0gZnJvbSAnLi9zZWxlY3QtaXRlbXMuZHRvJztcbmltcG9ydCB7IENhbGxsVG9BY3Rpb24gfSBmcm9tICcuL2NhbGwtdG8tYWN0aW9uLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2FjLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCB1c2VFeGlzdGluZzogU2VsZWN0Q29tcG9uZW50LCBtdWx0aTogdHJ1ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQElucHV0KClcbiAgaXRlbXM6IFNlbGVjdEl0ZW1bXTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGxhYmVsOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgbWF4V2lkdGhJdGVtczogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNlYXJjaCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHR5cGUgPSAnZGVmYXVsdCc7XG5cbiAgQElucHV0KClcbiAgY2FsbFRvQWN0aW9uOiBDYWxsbFRvQWN0aW9uO1xuXG4gIEBJbnB1dCgpIG1heFdpZHRoID0gJzEwMCUnO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHNlbGVjdFZhbHVlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQE91dHB1dCgpIGNsaWNrT25DYWxsVG9BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAVmlld0NoaWxkKCdzZWFyY2gnKSBzZWFyY2hFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gIG9wZW5DYXRlZ29yaWVzID0gZmFsc2U7XG4gIHNlYXJjaFZhbHVlID0gJyc7XG5cbiAgaW5kZXhJdGVtU2VsZWN0ZWQ6IG51bWJlciA9IC0xO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluZGV4SXRlbVNlbGVjdGVkID0gdGhpcy5pdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLnNlbGVjdGVkKTtcbiAgfVxuXG4gIG9uQ2xvc2UoKSB7XG4gICAgdGhpcy5vcGVuQ2F0ZWdvcmllcyA9IGZhbHNlO1xuICB9XG5cbiAgY3VzdG9tVEIoaXRlbTogU2VsZWN0SXRlbSwgaW5kZXg6IG51bWJlcikge1xuICAgIHJldHVybiBgJHtpdGVtLmlkfS0ke2luZGV4fWA7XG4gIH1cblxuICBvblNlbGVjdEl0ZW0oaWQ6IG51bWJlcikge1xuICAgIHRoaXMudW5zZWxlY3RBbGwoKTtcbiAgICB0aGlzLnNldEluZGV4SXRlbVNlbGVjdGVkKGlkKTtcbiAgICBjb25zdCBpdGVtU2VsZWN0ZWQ6IFNlbGVjdEl0ZW0gPSB0aGlzLmdldEl0ZW1TZWxlY3RlZCgpO1xuICAgIGl0ZW1TZWxlY3RlZC5zZWxlY3RlZCA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RWYWx1ZS5lbWl0KHRoaXMuaW5kZXhJdGVtU2VsZWN0ZWQpO1xuICAgIHRoaXMub25DaGFuZ2UoaXRlbVNlbGVjdGVkKTtcbiAgfVxuXG4gIG9uQ2xpY2tDYWxsVG9BY3Rpb24oKSB7XG4gICAgdGhpcy5vbkNsb3NlKCk7XG4gICAgdGhpcy5jbGlja09uQ2FsbFRvQWN0aW9uLmVtaXQodGhpcy5jYWxsVG9BY3Rpb24udmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtU2VsZWN0ZWQoKTogU2VsZWN0SXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXNbdGhpcy5pbmRleEl0ZW1TZWxlY3RlZF07XG4gIH1cblxuICBzaG93Q2F0ZWdvcmllcygpIHtcbiAgICB0aGlzLm9wZW5DYXRlZ29yaWVzID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgLy8gdGhpcyB3aWxsIG1ha2UgdGhlIGV4ZWN1dGlvbiBhZnRlciB0aGUgYWJvdmUgYm9vbGVhbiBoYXMgY2hhbmdlZFxuICAgICAgdGhpcy5zZWFyY2hFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHByaXZhdGUgdW5zZWxlY3RBbGwoKSB7XG4gICAgdGhpcy5pdGVtcy5mb3JFYWNoKGl0ZW0gPT4gaXRlbS5zZWxlY3RlZCA9IGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5kZXhJdGVtU2VsZWN0ZWQoaWQ6IG51bWJlcikge1xuICAgIHRoaXMuaW5kZXhJdGVtU2VsZWN0ZWQgPSB0aGlzLml0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGlkKTtcbiAgfVxuXG4gIC8vIENvbnRyb2xWYWx1ZUFjY2Vzc29yIG1ldGhvZHNcblxuICBvbkNoYW5nZTogKHNlbGVjdEl0ZW06IFNlbGVjdEl0ZW0pID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge31cblxuICB3cml0ZVZhbHVlKHNlbGVjdEl0ZW06IGFueSl7XG4gICAgaWYgKCFzZWxlY3RJdGVtKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudW5zZWxlY3RBbGwoKTtcbiAgICBzZWxlY3RJdGVtLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLnNldEluZGV4SXRlbVNlbGVjdGVkKHNlbGVjdEl0ZW0uaWQpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KXtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSl7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cbn1cbiIsIjxwICpuZ0lmPVwibGFiZWxcIiBbaW5uZXJIVE1MXT1cImxhYmVsXCIgY2xhc3M9XCJ3YWMtc2VsZWN0X19sYWJlbFwiPjwvcD5cblxuPGRpdiBjbGFzcz1cIndhYy1zZWxlY3RcIiB3ekF1dG9IaWRlIChjbGlja091dHNpZGUpPVwib25DbG9zZSgpXCIgW25nU3R5bGVdPVwieyAnbWF4LXdpZHRoJzogbWF4V2lkdGggfVwiIFt6SW5kZXhUb2dnbGVdPVwib3BlbkNhdGVnb3JpZXNcIj5cblxuICA8ZGl2IGNsYXNzPVwid2FjLXNlbGVjdF9fY3VycmVudFwiIFtuZ0NsYXNzXT1cInsgJ3NlbGVjdC1kaXNhYmxlZCcgOiBkaXNhYmxlZCB9XCIgKGNsaWNrKT1cIiFkaXNhYmxlZCAmJiBvcGVuQ2F0ZWdvcmllcyA9ICFvcGVuQ2F0ZWdvcmllc1wiICpuZ0lmPVwiIXNlYXJjaFwiPlxuICAgIDxzcGFuICpuZ0lmPVwiaW5kZXhJdGVtU2VsZWN0ZWQgIT09IC0xXCIgY2xhc3M9XCJpY29uXCIgW2lubmVySFRNTF09XCJpdGVtc1tpbmRleEl0ZW1TZWxlY3RlZF0uaWNvblwiPjwvc3Bhbj5cbiAgICA8c3BhbiBbaW5uZXJIVE1MXT1cIihpbmRleEl0ZW1TZWxlY3RlZCAhPT0gLTEgPyBpdGVtc1tpbmRleEl0ZW1TZWxlY3RlZF0ubmFtZSA6IHBsYWNlaG9sZGVyKSB8IHRyYW5zbGF0ZVwiPjwvc3Bhbj48c3Bhbj48aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLWRvd25cIj48L2k+PC9zcGFuPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwid2FjLXNlbGVjdF9fY3VycmVudCB3YWMtc2VsZWN0X19jdXJyZW50LS13aXRoU2VhcmNoXCIgW25nQ2xhc3NdPVwieyAnc2VsZWN0LWRpc2FibGVkJyA6IGRpc2FibGVkLCAnb3Blbi1zZWFyY2gnOiBvcGVuQ2F0ZWdvcmllcyB9XCIgKm5nSWY9XCJzZWFyY2hcIj5cbiAgICA8ZGl2IGNsYXNzPVwid2FjLXNlbGVjdF9fY3VycmVudF9fc2VhcmNoXCIgKm5nSWY9XCJvcGVuQ2F0ZWdvcmllcyAmJiAhZGlzYWJsZWRcIj5cbiAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLXNlYXJjaFwiPjwvaT5cbiAgICAgIDxpbnB1dCAjc2VhcmNoIHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiIC8+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gKGNsaWNrKT1cIm9wZW5DYXRlZ29yaWVzID0gIW9wZW5DYXRlZ29yaWVzO1wiICpuZ0lmPVwiaXRlbXNbaW5kZXhJdGVtU2VsZWN0ZWRdPy5pY29uICYmICFvcGVuQ2F0ZWdvcmllc1wiIGNsYXNzPVwiaWNvblwiIFtpbm5lckhUTUxdPVwiaXRlbXNbaW5kZXhJdGVtU2VsZWN0ZWRdLmljb25cIj48L3NwYW4+XG4gICAgPHNwYW4gKGNsaWNrKT1cInNob3dDYXRlZ29yaWVzKClcIiBbaW5uZXJIVE1MXT1cIml0ZW1zW2luZGV4SXRlbVNlbGVjdGVkXT8ubmFtZSA/IGl0ZW1zW2luZGV4SXRlbVNlbGVjdGVkXS5uYW1lIDogcGxhY2Vob2xkZXJcIj48L3NwYW4+XG4gICAgPHNwYW4gKGNsaWNrKT1cIm9wZW5DYXRlZ29yaWVzID0gIW9wZW5DYXRlZ29yaWVzO1wiPjxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tZG93blwiPjwvaT48L3NwYW4+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJ3YWMtc2VsZWN0X19jb250ZW50XCIgKm5nSWY9XCIhZGlzYWJsZWRcIiBbbmdDbGFzc109XCJ7IGhpZGRlbjogIW9wZW5DYXRlZ29yaWVzLCBvcGVuOiB0eXBlID09PSAnb3BlbicgfVwiIFtuZ1N0eWxlXT1cInsgJ21heC13aWR0aCc6IG1heFdpZHRoSXRlbXMgfVwiPlxuICAgIDxkaXYgW3BlcmZlY3RTY3JvbGxiYXJdPVwieyBzdXBwcmVzc1Njcm9sbFg6IHRydWUgfVwiICpuZ0lmPVwiaXRlbXMubGVuZ3RoXCI+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJjYWxsVG9BY3Rpb25cIiBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRfX2N0YVwiPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJvbkNsaWNrQ2FsbFRvQWN0aW9uKClcIj5cbiAgICAgICAgICA8aSAqbmdJZj1cImNhbGxUb0FjdGlvbi5pY29uXCIgW2NsYXNzTGlzdF09XCJjYWxsVG9BY3Rpb24uaWNvblwiPjwvaT48c3Ryb25nICpuZ0lmPVwiY2FsbFRvQWN0aW9uLmJvbGRUZXh0XCI+e3sgY2FsbFRvQWN0aW9uLmJvbGRUZXh0IH19PC9zdHJvbmdcbiAgICAgICAgICA+PHNwYW4+e3sgY2FsbFRvQWN0aW9uPy5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zIHwgc2VsZWN0RmlsdGVyczogc2VhcmNoVmFsdWU7IGxldCBpbmRleCA9IGluZGV4O1wiXG4gICAgICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxuICAgICAgICBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRfX2l0ZW1cIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cIiFpdGVtLmhpZGVcIiBbbmdDbGFzc109XCJ7IHNlbGVjdGVkOiBpdGVtLnNlbGVjdGVkIH1cIiAoY2xpY2spPVwib25TZWxlY3RJdGVtKGl0ZW0uaWQpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb25cIiBbaW5uZXJIVE1MXT1cIml0ZW0uaWNvblwiICpuZ0lmPVwiaXRlbS5pY29uXCI+PC9zcGFuPnt7IGl0ZW0ubmFtZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCIhKGl0ZW1zIHwgc2VsZWN0RmlsdGVyczogc2VhcmNoVmFsdWUpPy5sZW5ndGhcIiBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRfX2VtcHR5XCI+XG4gICAgICA8c3Bhbj57eyd3YWMuZGF0YXRhYmxlLm5vcmVzdWx0JyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuPC9kaXY+Il19
@@ -0,0 +1,116 @@
1
+ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
2
+ import { v4 as uuid } from 'uuid';
3
+ import { FiltersTableService } from '../../../services/table/filters-table.service';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../services/table/filters-table.service";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "@angular/forms";
8
+ import * as i4 from "../../loader/loader.component";
9
+ import * as i5 from "../input-search/input-search.component";
10
+ import * as i6 from "../pagination/pagination.component";
11
+ import * as i7 from "../checkbox/checkbox.component";
12
+ export class TableComponent {
13
+ constructor(filtersTableService) {
14
+ this.filtersTableService = filtersTableService;
15
+ this.tableFiltersChange = new EventEmitter();
16
+ this.placeholder = '';
17
+ /// Input/Output of checkbox ///
18
+ /** Pass to true to display checkbox in the header table */
19
+ this.checkbox = false;
20
+ /** Emit new header checboxValue */
21
+ this.toggleAllCheckBox = new EventEmitter();
22
+ /// Input to disable section ///
23
+ /** Pass to true to hide search input */
24
+ this.disableSearch = false;
25
+ /** Pass to true to hide the pagniator */
26
+ this.disablePagniation = false;
27
+ /// Input for loader on table body ///
28
+ this.isLoading = false;
29
+ }
30
+ ngOnInit() {
31
+ this.headerCheckBoxId = uuid(); // Create checkbox unique id
32
+ /* Handle routing filters */
33
+ if (this.tableRoutingName) {
34
+ this._filterGroup = this.filtersTableService.getTableFilterGroup(this.tableRoutingName);
35
+ // Performe initial fetch data
36
+ this._filterGroup.valuesChange$.next([]);
37
+ this.setTablesFilters();
38
+ // Listen to filters changes with debounced time to limit multiple api calls
39
+ this.filterGroupChangeSub = this._filterGroup.valuesChange$.subscribe(filters => {
40
+ this.setTablesFilters();
41
+ });
42
+ }
43
+ }
44
+ onToggleAllCheckBox(event) {
45
+ this.toggleAllCheckBox.emit(event.target.checked);
46
+ }
47
+ searchChange(event) {
48
+ // Reset table filters
49
+ this.tableFilters.sort = undefined;
50
+ this.tableFilters.order = undefined;
51
+ this.tableFilters.currentPage = 1;
52
+ this.tableFiltersChange.emit(this.tableFilters);
53
+ // Reset routing filters
54
+ if (this._filterGroup) {
55
+ this._filterGroup.setValues({
56
+ searchValue: this.tableFilters.searchValue,
57
+ sort: undefined,
58
+ order: undefined,
59
+ currentPage: 1
60
+ });
61
+ }
62
+ }
63
+ pageChange() {
64
+ this.tableFiltersChange.emit(this.tableFilters);
65
+ if (this._filterGroup) {
66
+ this._filterGroup.setValues({
67
+ itemsPerPage: this.tableFilters.itemsPerPage,
68
+ currentPage: this.tableFilters.currentPage
69
+ });
70
+ }
71
+ }
72
+ /**
73
+ * Set tableFilters from routing data existing in the url
74
+ * */
75
+ setTablesFilters() {
76
+ this.tableFilters = {
77
+ sort: this._filterGroup.get('sort'),
78
+ order: this._filterGroup.get('order'),
79
+ searchValue: this._filterGroup.get('searchValue'),
80
+ itemsPerPage: this._filterGroup.get('itemsPerPage') ? parseInt(this._filterGroup.get('itemsPerPage')) : 0,
81
+ currentPage: this._filterGroup.get('currentPage') ? parseInt(this._filterGroup.get('currentPage')) : 0,
82
+ totalItems: this.tableFilters.totalItems
83
+ };
84
+ this.tableFiltersChange.emit(this.tableFilters);
85
+ }
86
+ ngDestroy() {
87
+ if (this.filterGroupChangeSub) {
88
+ this.filterGroupChangeSub.unsubscribe();
89
+ }
90
+ }
91
+ }
92
+ TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: TableComponent, deps: [{ token: i1.FiltersTableService }], target: i0.ɵɵFactoryTarget.Component });
93
+ TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: TableComponent, selector: "wz-table", inputs: { tableFilters: "tableFilters", tableRoutingName: "tableRoutingName", placeholder: "placeholder", checkbox: "checkbox", disableSearch: "disableSearch", disablePagniation: "disablePagniation", isLoading: "isLoading" }, outputs: { tableFiltersChange: "tableFiltersChange", toggleAllCheckBox: "toggleAllCheckBox" }, ngImport: i0, template: "<div class=\"wz-table\">\n <!-- Header section -->\n <div class=\"wz-table__head\" id=\"headerTable\">\n <div *ngIf=\"checkbox\" class=\"wz-table__head__cell wz-table__head__cell--checkbox\">\n <wz-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wz-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=\"wz-table__search\">\n <wz-input-search\n [(ngModel)]=\"tableFilters.searchValue\"\n (changeDebounced)=\"searchChange($event)\"\n [placeholder]=\"placeholder\"\n [smallPadding]=\"true\"\n ></wz-input-search>\n </div>\n\n <!-- Body section -->\n <div class=\"wz-table__body\">\n <!-- Loader on body -->\n <div class=\"wz-table__body__loader\" *ngIf=\"isLoading\">\n <wz-loader [small]=\"true\"></wz-loader>\n </div>\n <!-- Body contents are added with the tableRow directive -->\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\n </div>\n\n <!-- Pagination section -->\n <wz-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wz-pagination>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "component", type: i5.InputSearchComponent, selector: "wz-input-search", inputs: ["placeholder", "smallPadding", "id"], outputs: ["changeDebounced"] }, { kind: "component", type: i6.PaginationComponent, selector: "wz-pagination", inputs: ["pagination"], outputs: ["pageChange"] }, { kind: "component", type: i7.CheckboxComponent, selector: "wz-checkbox", inputs: ["label", "value", "type", "alone", "checked", "id", "name"] }], encapsulation: i0.ViewEncapsulation.None });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: TableComponent, decorators: [{
95
+ type: Component,
96
+ args: [{ selector: 'wz-table', encapsulation: ViewEncapsulation.None, template: "<div class=\"wz-table\">\n <!-- Header section -->\n <div class=\"wz-table__head\" id=\"headerTable\">\n <div *ngIf=\"checkbox\" class=\"wz-table__head__cell wz-table__head__cell--checkbox\">\n <wz-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wz-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=\"wz-table__search\">\n <wz-input-search\n [(ngModel)]=\"tableFilters.searchValue\"\n (changeDebounced)=\"searchChange($event)\"\n [placeholder]=\"placeholder\"\n [smallPadding]=\"true\"\n ></wz-input-search>\n </div>\n\n <!-- Body section -->\n <div class=\"wz-table__body\">\n <!-- Loader on body -->\n <div class=\"wz-table__body__loader\" *ngIf=\"isLoading\">\n <wz-loader [small]=\"true\"></wz-loader>\n </div>\n <!-- Body contents are added with the tableRow directive -->\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\n </div>\n\n <!-- Pagination section -->\n <wz-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wz-pagination>\n</div>\n" }]
97
+ }], ctorParameters: function () { return [{ type: i1.FiltersTableService }]; }, propDecorators: { tableFilters: [{
98
+ type: Input
99
+ }], tableFiltersChange: [{
100
+ type: Output
101
+ }], tableRoutingName: [{
102
+ type: Input
103
+ }], placeholder: [{
104
+ type: Input
105
+ }], checkbox: [{
106
+ type: Input
107
+ }], toggleAllCheckBox: [{
108
+ type: Output
109
+ }], disableSearch: [{
110
+ type: Input
111
+ }], disablePagniation: [{
112
+ type: Input
113
+ }], isLoading: [{
114
+ type: Input
115
+ }] } });
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC90YWJsZS90YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL3RhYmxlL3RhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEMsT0FBTyxFQUFnQixtQkFBbUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7Ozs7Ozs7QUFPbEcsTUFBTSxPQUFPLGNBQWM7SUFnQ3pCLFlBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBNUJsRCx1QkFBa0IsR0FBK0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdyRSxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUlsQyxnQ0FBZ0M7UUFFaEMsMkRBQTJEO1FBQ2xELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDMUIsbUNBQW1DO1FBQ3pCLHNCQUFpQixHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXhFLGdDQUFnQztRQUVoQyx3Q0FBd0M7UUFDL0Isa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDeEMseUNBQXlDO1FBQ2hDLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUU1QyxzQ0FBc0M7UUFDN0IsY0FBUyxHQUFHLEtBQUssQ0FBQztJQU1vQyxDQUFDO0lBRWhFLFFBQVE7UUFDTixJQUFJLENBQUMsZ0JB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QVU7U0FDekMsQ0FBQztRQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDN0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQzs7MkdBeEdVLGNBQWM7K0ZBQWQsY0FBYyxpWENYM0IsOHhDQWtDQTsyRkR2QmEsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxVQUFVLGlCQUVMLGlCQUFpQixDQUFDLElBQUk7MEdBSzVCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNO2dCQUVFLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQU9HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksaUJBQWlCO3NCQUExQixNQUFNO2dCQUtFLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgTndiRmlsdGVyR3JvdXAgfSBmcm9tICdAd2l6aXNob3Avbmctd2l6aS1idWxtYSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRhYmxlRmlsdGVycywgRmlsdGVyc1RhYmxlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RhYmxlL2ZpbHRlcnMtdGFibGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3d6LXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vLyBJbnB1dC9PdXRwdXQgb2YgdGFibGUgZmlsdGVycyAvLy9cblxuICBASW5wdXQoKSB0YWJsZUZpbHRlcnM6IFRhYmxlRmlsdGVycztcbiAgQE91dHB1dCgpIHRhYmxlRmlsdGVyc0NoYW5nZTogRXZlbnRFbWl0dGVyPFRhYmxlRmlsdGVycz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQElucHV0KCkgdGFibGVSb3V0aW5nTmFtZTogc3RyaW5nOyAvLyBOYW1lIG9mIHRoZSB0YWJsZVxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBfZmlsdGVyR3JvdXA6IE53YkZpbHRlckdyb3VwO1xuXG4gIC8vLyBJbnB1dC9PdXRwdXQgb2YgY2hlY2tib3ggLy8vXG5cbiAgLyoqIFBhc3MgdG8gdHJ1ZSB0byBkaXNwbGF5IGNoZWNrYm94IGluIHRoZSBoZWFkZXIgdGFibGUgKi9cbiAgQElucHV0KCkgY2hlY2tib3ggPSBmYWxzZTtcbiAgLyoqIEVtaXQgbmV3IGhlYWRlciBjaGVjYm94VmFsdWUgKi9cbiAgQE91dHB1dCgpIHRvZ2dsZUFsbENoZWNrQm94OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLy8vIElucHV0IHRvIGRpc2FibGUgc2VjdGlvbiAvLy9cblxuICAvKiogUGFzcyB0byB0cnVlIHRvIGhpZGUgc2VhcmNoIGlucHV0ICovXG4gIEBJbnB1dCgpIGRpc2FibGVTZWFyY2g6IGJvb2xlYW4gPSBmYWxzZTtcbiAgLyoqIFBhc3MgdG8gdHJ1ZSB0byBoaWRlIHRoZSBwYWduaWF0b3IgKi9cbiAgQElucHV0KCkgZGlzYWJsZVBhZ25pYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvLy8gSW5wdXQgZm9yIGxvYWRlciBvbiB0YWJsZSBib2R5IC8vL1xuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcblxuICAvLy8gUHJpdmF0ZSB2YXJpYWJsZXMgLy8vXG4gIGhlYWRlckNoZWNrQm94SWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBmaWx0ZXJHcm91cENoYW5nZVN1YjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmlsdGVyc1RhYmxlU2VydmljZTogRmlsdGVyc1RhYmxlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhlYWRlckNoZWNrQm94SWQgPSB1dWlkKCk7IC8vIENyZWF0ZSBjaGVja2JveCB1bmlxdWUgaWRcblxuICAgIC8qIEhhbmRsZSByb3V0aW5nIGZpbHRlcnMgKi9cbiAgICBpZiAodGhpcy50YWJsZVJvdXRpbmdOYW1lKSB7XG4gICAgICB0aGlzLl9maWx0ZXJHcm91cCA9IHRoaXMuZmlsdGVyc1RhYmxlU2VydmljZS5nZXRUYWJsZUZpbHRlckdyb3VwKHRoaXMudGFibGVSb3V0aW5nTmFtZSk7XG5cbiAgICAgIC8vIFBlcmZvcm1lIGluaXRpYWwgZmV0Y2ggZGF0YVxuICAgICAgdGhpcy5fZmlsdGVyR3JvdXAudmFsdWVzQ2hhbmdlJC5uZXh0KFtdKTtcblxuICAgICAgdGhpcy5zZXRUYWJsZXNGaWx0ZXJzKCk7XG5cbiAgICAgIC8vIExpc3RlbiB0byBmaWx0ZXJzIGNoYW5nZXMgd2l0aCBkZWJvdW5jZWQgdGltZSB0byBsaW1pdCBtdWx0aXBsZSBhcGkgY2FsbHNcbiAgICAgIHRoaXMuZmlsdGVyR3JvdXBDaGFuZ2VTdWIgPSB0aGlzLl9maWx0ZXJHcm91cC52YWx1ZXNDaGFuZ2UkLnN1YnNjcmliZShmaWx0ZXJzID0+IHtcbiAgICAgICAgdGhpcy5zZXRUYWJsZXNGaWx0ZXJzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvblRvZ2dsZUFsbENoZWNrQm94KGV2ZW50KSB7XG4gICAgdGhpcy50b2dnbGVBbGxDaGVja0JveC5lbWl0KGV2ZW50LnRhcmdldC5jaGVja2VkKTtcbiAgfVxuXG4gIHNlYXJjaENoYW5nZShldmVudDogc3RyaW5nKSB7XG4gICAgLy8gUmVzZXQgdGFibGUgZmlsdGVyc1xuICAgIHRoaXMudGFibGVGaWx0ZXJzLnNvcnQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy50YWJsZUZpbHRlcnMub3JkZXIgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy50YWJsZUZpbHRlcnMuY3VycmVudFBhZ2UgPSAxO1xuICAgIHRoaXMudGFibGVGaWx0ZXJzQ2hhbmdlLmVtaXQodGhpcy50YWJsZUZpbHRlcnMpO1xuXG4gICAgLy8gUmVzZXQgcm91dGluZyBmaWx0ZXJzXG4gICAgaWYgKHRoaXMuX2ZpbHRlckdyb3VwKSB7XG4gICAgICB0aGlzLl9maWx0ZXJHcm91cC5zZXRWYWx1ZXMoe1xuICAgICAgICBzZWFyY2hWYWx1ZTogdGhpcy50YWJsZUZpbHRlcnMuc2VhcmNoVmFsdWUsXG4gICAgICAgIHNvcnQ6IHVuZGVmaW5lZCxcbiAgICAgICAgb3JkZXI6IHVuZGVmaW5lZCxcbiAgICAgICAgY3VycmVudFBhZ2U6IDFcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHBhZ2VDaGFuZ2UoKSB7XG4gICAgdGhpcy50YWJsZUZpbHRlcnNDaGFuZ2UuZW1pdCh0aGlzLnRhYmxlRmlsdGVycyk7XG4gICAgaWYgKHRoaXMuX2ZpbHRlckdyb3VwKSB7XG4gICAgICB0aGlzLl9maWx0ZXJHcm91cC5zZXRWYWx1ZXMoe1xuICAgICAgICBpdGVtc1BlclBhZ2U6IHRoaXMudGFibGVGaWx0ZXJzLml0ZW1zUGVyUGFnZSxcbiAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMudGFibGVGaWx0ZXJzLmN1cnJlbnRQYWdlXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIFNldCB0YWJsZUZpbHRlcnMgZnJvbSByb3V0aW5nIGRhdGEgZXhpc3RpbmcgaW4gdGhlIHVybFxuICAgKiAqL1xuICBwcml2YXRlIHNldFRhYmxlc0ZpbHRlcnMoKSB7XG4gICAgdGhpcy50YWJsZUZpbHRlcnMgPSB7XG4gICAgICBzb3J0OiB0aGlzLl9maWx0ZXJHcm91cC5nZXQoJ3NvcnQnKSxcbiAgICAgIG9yZGVyOiB0aGlzLl9maWx0ZXJHcm91cC5nZXQoJ29yZGVyJyksXG4gICAgICBzZWFyY2hWYWx1ZTogdGhpcy5fZmlsdGVyR3JvdXAuZ2V0KCdzZWFyY2hWYWx1ZScpLFxuICAgICAgaXRlbXNQZXJQYWdlOiB0aGlzLl9maWx0ZXJHcm91cC5nZXQoJ2l0ZW1zUGVyUGFnZScpID8gcGFyc2VJbnQodGhpcy5fZmlsdGVyR3JvdXAuZ2V0KCdpdGVtc1BlclBhZ2UnKSkgOiAwLFxuICAgICAgY3VycmVudFBhZ2U6IHRoaXMuX2ZpbHRlckdyb3VwLmdldCgnY3VycmVudFBhZ2UnKSA/IHBhcnNlSW50KHRoaXMuX2ZpbHRlckdyb3VwLmdldCgnY3VycmVudFBhZ2UnKSkgOiAwLFxuICAgICAgdG90YWxJdGVtczogdGhpcy50YWJsZUZpbHRlcnMudG90YWxJdGVtc1xuICAgIH07XG4gICAgdGhpcy50YWJsZUZpbHRlcnNDaGFuZ2UuZW1pdCh0aGlzLnRhYmxlRmlsdGVycyk7XG4gIH1cblxuICBuZ0Rlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuZmlsdGVyR3JvdXBDaGFuZ2VTdWIpIHtcbiAgICAgIHRoaXMuZmlsdGVyR3JvdXBDaGFuZ2VTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3ei10YWJsZVwiPlxuICA8IS0tIEhlYWRlciBzZWN0aW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwid3otdGFibGVfX2hlYWRcIiBpZD1cImhlYWRlclRhYmxlXCI+XG4gICAgPGRpdiAqbmdJZj1cImNoZWNrYm94XCIgY2xhc3M9XCJ3ei10YWJsZV9faGVhZF9fY2VsbCB3ei10YWJsZV9faGVhZF9fY2VsbC0tY2hlY2tib3hcIj5cbiAgICAgIDx3ei1jaGVja2JveCBbaWRdPVwiaGVhZGVyQ2hlY2tCb3hJZFwiIChjaGFuZ2UpPVwib25Ub2dnbGVBbGxDaGVja0JveCgkZXZlbnQpXCIgW2Fsb25lXT1cInRydWVcIj48L3d6LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBIZWFkZXIgY29udGVudHMgYXJlIGFkZGVkIHdpdGggdGhlIGhlYWRlckNlbGwgZGlyZWN0aXZlIC0tPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltoZWFkZXJDZWxsXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG5cbiAgPCEtLSBTZWFyY2ggc2VjdGlvbiAtLT5cbiAgPGRpdiAqbmdJZj1cIiFkaXNhYmxlU2VhcmNoXCIgY2xhc3M9XCJ3ei10YWJsZV9fc2VhcmNoXCI+XG4gICAgPHd6LWlucHV0LXNlYXJjaFxuICAgICAgWyhuZ01vZGVsKV09XCJ0YWJsZUZpbHRlcnMuc2VhcmNoVmFsdWVcIlxuICAgICAgKGNoYW5nZURlYm91bmNlZCk9XCJzZWFyY2hDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW3NtYWxsUGFkZGluZ109XCJ0cnVlXCJcbiAgICA+PC93ei1pbnB1dC1zZWFyY2g+XG4gIDwvZGl2PlxuXG4gIDwhLS0gQm9keSBzZWN0aW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwid3otdGFibGVfX2JvZHlcIj5cbiAgICA8IS0tIExvYWRlciBvbiBib2R5IC0tPlxuICAgIDxkaXYgY2xhc3M9XCJ3ei10YWJsZV9fYm9keV9fbG9hZGVyXCIgKm5nSWY9XCJpc0xvYWRpbmdcIj5cbiAgICAgIDx3ei1sb2FkZXIgW3NtYWxsXT1cInRydWVcIj48L3d6LWxvYWRlcj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIEJvZHkgY29udGVudHMgYXJlIGFkZGVkIHdpdGggdGhlIHRhYmxlUm93IGRpcmVjdGl2ZSAtLT5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdGFibGVSb3ddXCIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8IS0tIFBhZ2luYXRpb24gc2VjdGlvbiAtLT5cbiAgPHd6LXBhZ2luYXRpb24gKm5nSWY9XCIhZGlzYWJsZVBhZ25pYXRpb25cIiBbcGFnaW5hdGlvbl09XCJ0YWJsZUZpbHRlcnNcIiAocGFnZUNoYW5nZSk9XCJwYWdlQ2hhbmdlKClcIj48L3d6LXBhZ2luYXRpb24+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,79 @@
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import { ImgSelectionService } from '../../services/img-selection.service';
3
+ import { easeInOut } from '../../animations/easeInOut/ease-in-out.animation';
4
+ import { RenamePictureService } from '../../services/rename-picture.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services/img-selection.service";
7
+ import * as i2 from "../../services/rename-picture.service";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "ngx-perfect-scrollbar";
10
+ import * as i5 from "../images-view/mosaic-view/img-card/img-card.component";
11
+ import * as i6 from "@ngx-translate/core";
12
+ export class UploadListComponent {
13
+ constructor(imgSelectionService, renamePictureService) {
14
+ this.imgSelectionService = imgSelectionService;
15
+ this.renamePictureService = renamePictureService;
16
+ this.picturesList = [];
17
+ this.multipleImgMode = false;
18
+ this.switchDisplayWindow = new EventEmitter();
19
+ }
20
+ ngOnInit() {
21
+ this.setEvents();
22
+ }
23
+ onImgUploaded(img) {
24
+ img.forEach(picture => this.picturesList.push(picture));
25
+ this.renamePictureService.setPicturesList(this.picturesList);
26
+ }
27
+ onToggleSelectImg(index) {
28
+ if (this.stateDisplayed === 'window') {
29
+ return;
30
+ }
31
+ if (!this.picturesList[index].selected) {
32
+ this.imgSelectionService.addImgSelected(this.picturesList[index]);
33
+ this.picturesList[index].selected = true;
34
+ }
35
+ else {
36
+ this.imgSelectionService.removeImgSelectedById(this.picturesList[index].id_file);
37
+ this.picturesList[index].selected = false;
38
+ }
39
+ }
40
+ switchDisplayWindowCard() {
41
+ this.switchDisplayWindow.emit(true);
42
+ }
43
+ onRenamePicture(pictureRenamed) {
44
+ this.renamePictureService.onRenamePicture(pictureRenamed);
45
+ }
46
+ setEvents() {
47
+ this.imgSelectionChange = this.imgSelectionService.getImgSelectionChange().subscribe(imgSelection => {
48
+ const idFileList = [];
49
+ imgSelection.map(img => idFileList.push(img.id_file));
50
+ for (const picture of this.picturesList) {
51
+ if (idFileList.indexOf(picture.id_file) === -1) {
52
+ picture.selected = false;
53
+ }
54
+ }
55
+ });
56
+ }
57
+ ngOnDestroy() {
58
+ this.imgSelectionChange.unsubscribe();
59
+ }
60
+ }
61
+ UploadListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UploadListComponent, deps: [{ token: i1.ImgSelectionService }, { token: i2.RenamePictureService }], target: i0.ɵɵFactoryTarget.Component });
62
+ UploadListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: UploadListComponent, selector: "upload-list", inputs: { stateDisplayed: "stateDisplayed", tabDisplayed: "tabDisplayed", multipleImgMode: "multipleImgMode" }, outputs: { switchDisplayWindow: "switchDisplayWindow" }, ngImport: i0, template: "<div class=\"upload-list\" [ngClass]=\"{'smallDisplay': stateDisplayed === 'small'}\" [@easeInOut]=\"'in'\">\n\n <perfect-scrollbar\n #scrollable\n [config]=\"{ suppressScrollX: true }\"\n class=\"upload-list__scroll\"\n [ngClass]=\"{\n 'upload-list__scroll--smallDisplay': stateDisplayed === 'small',\n 'upload-list__scroll--window': stateDisplayed === 'window'}\"\n >\n <div class=\"upload-list__box\">\n <div class=\"upload-list__box__container\">\n <div>\n <p class=\"mainColor\">\n {{ picturesList? picturesList.length : '' }}\n <ng-container *ngIf=\"picturesList && picturesList.length > 1\">{{ 'ImgManager.UploadList.imgSuccessImport' | translate }}</ng-container>\n <ng-container *ngIf=\"picturesList && picturesList.length === 1\">{{ 'ImgManager.UploadList.imgSuccessImportOne' | translate }}</ng-container>\n </p>\n <div class=\"dropdown is-hoverable\">\n <div class=\"dropdown-trigger\">\n <i\n aria-haspopup=\"true\" aria-controls=\"dropdown-menuInfoSeo\"\n class=\"fas fa-info-circle\">\n </i>\n </div>\n <div class=\"dropdown-menu dropDownShadow\" id=\"dropdown-menuInfoSeo\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.rezise' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.webp' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.cdn' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.lazyloading' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"upload-list__box__cards\">\n <div class=\"upload-list__box__cards__card\" *ngFor=\"let picture of picturesList; let index = index;\">\n <img-card\n [picture]=\"picture\"\n [stateDisplayed]=\"stateDisplayed\"\n (toggleImgSelected)=\"onToggleSelectImg(index)\"\n (switchDisplayWindow)=\"switchDisplayWindowCard()\"\n (pictureNameChange)=\"onRenamePicture($event)\"\n ></img-card>\n <div class=\"upload-list__box__cards__card__btnBox\">\n <button class=\"button success upload-list__box__cards__card__btnBox__btn\"><i class=\"fal fa-check\"></i></button>\n </div>\n </div>\n </div>\n </div>\n </perfect-scrollbar>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: i5.ImgCardComponent, selector: "img-card", inputs: ["tabDisplayed", "fullSize", "picture", "index"], outputs: ["toggleImgSelected", "switchDisplayWindow"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], animations: [
63
+ easeInOut
64
+ ] });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UploadListComponent, decorators: [{
66
+ type: Component,
67
+ args: [{ selector: 'upload-list', animations: [
68
+ easeInOut
69
+ ], template: "<div class=\"upload-list\" [ngClass]=\"{'smallDisplay': stateDisplayed === 'small'}\" [@easeInOut]=\"'in'\">\n\n <perfect-scrollbar\n #scrollable\n [config]=\"{ suppressScrollX: true }\"\n class=\"upload-list__scroll\"\n [ngClass]=\"{\n 'upload-list__scroll--smallDisplay': stateDisplayed === 'small',\n 'upload-list__scroll--window': stateDisplayed === 'window'}\"\n >\n <div class=\"upload-list__box\">\n <div class=\"upload-list__box__container\">\n <div>\n <p class=\"mainColor\">\n {{ picturesList? picturesList.length : '' }}\n <ng-container *ngIf=\"picturesList && picturesList.length > 1\">{{ 'ImgManager.UploadList.imgSuccessImport' | translate }}</ng-container>\n <ng-container *ngIf=\"picturesList && picturesList.length === 1\">{{ 'ImgManager.UploadList.imgSuccessImportOne' | translate }}</ng-container>\n </p>\n <div class=\"dropdown is-hoverable\">\n <div class=\"dropdown-trigger\">\n <i\n aria-haspopup=\"true\" aria-controls=\"dropdown-menuInfoSeo\"\n class=\"fas fa-info-circle\">\n </i>\n </div>\n <div class=\"dropdown-menu dropDownShadow\" id=\"dropdown-menuInfoSeo\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.rezise' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.webp' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.cdn' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n <div class=\"dropdown-item\">\n <p>{{ 'ImgManager.UploadList.seo.lazyloading' | translate }}</p>\n <p><i class=\"fal fa-check\"></i> 100%</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"upload-list__box__cards\">\n <div class=\"upload-list__box__cards__card\" *ngFor=\"let picture of picturesList; let index = index;\">\n <img-card\n [picture]=\"picture\"\n [stateDisplayed]=\"stateDisplayed\"\n (toggleImgSelected)=\"onToggleSelectImg(index)\"\n (switchDisplayWindow)=\"switchDisplayWindowCard()\"\n (pictureNameChange)=\"onRenamePicture($event)\"\n ></img-card>\n <div class=\"upload-list__box__cards__card__btnBox\">\n <button class=\"button success upload-list__box__cards__card__btnBox__btn\"><i class=\"fal fa-check\"></i></button>\n </div>\n </div>\n </div>\n </div>\n </perfect-scrollbar>\n</div>\n" }]
70
+ }], ctorParameters: function () { return [{ type: i1.ImgSelectionService }, { type: i2.RenamePictureService }]; }, propDecorators: { stateDisplayed: [{
71
+ type: Input
72
+ }], tabDisplayed: [{
73
+ type: Input
74
+ }], multipleImgMode: [{
75
+ type: Input
76
+ }], switchDisplayWindow: [{
77
+ type: Output
78
+ }] } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3VwbG9hZC1saXN0L3VwbG9hZC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy91cGxvYWQtbGlzdC91cGxvYWQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUU3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7QUFTN0UsTUFBTSxPQUFPLG1CQUFtQjtJQVk5QixZQUNVLG1CQUF3QyxFQUN4QyxvQkFBMEM7UUFEMUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBWnBELGlCQUFZLEdBQW9CLEVBQUUsQ0FBQztRQU0xQixvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUUxQyx3QkFBbUIsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUs1RCxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQW9CO1FBQ2hDLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQzlCLENBQUM7UUFDSixJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssUUFBUSxFQUFFO1lBQ3BDLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUN0QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDMUM7YUFBTTtZQUNMLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pGLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUMzQztJQUNILENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsZUFBZSxDQUFDLGNBQWlDO1FBQy9DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHFCQUFxQixFQUFFLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ2xHLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztZQUN0QixZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUN0RCxLQUFLLE1BQU0sT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3ZDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7b0JBQzlDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2lCQUMxQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDOztnSEE5RFUsbUJBQW1CO29HQUFuQixtQkFBbUIsNE5DZmhDLHNsSEFrRUEseThCRHZEYztRQUNWLFNBQVM7S0FDVjsyRkFFVSxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0UsYUFBYSxjQUVYO3dCQUNWLFNBQVM7cUJBQ1Y7NklBUVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRU4sbUJBQW1CO3NCQURsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEltZ1BpY3R1cmVEVE8gfSBmcm9tICcuLi8uLi9kdG8vaW1nLW1hbmFnZXIuZHRvJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW1nU2VsZWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ltZy1zZWxlY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBlYXNlSW5PdXQgfSBmcm9tICcuLi8uLi9hbmltYXRpb25zL2Vhc2VJbk91dC9lYXNlLWluLW91dC5hbmltYXRpb24nO1xuaW1wb3J0IHsgUGljdHVyZU5hbWVVcGRhdGUsIHN0YXRlRGlzcGxheWVkLCB0YWJEaXNwbGF5ZWQgfSBmcm9tICcuLi8uLi9kdG8vZXhwb3J0LWR0b3MuYXBpJztcbmltcG9ydCB7IFJlbmFtZVBpY3R1cmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVuYW1lLXBpY3R1cmUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VwbG9hZC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIGVhc2VJbk91dFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFVwbG9hZExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHBpY3R1cmVzTGlzdDogSW1nUGljdHVyZURUT1tdID0gW107XG4gIGltZ1NlbGVjdGlvbkNoYW5nZTogU3Vic2NyaXB0aW9uO1xuICBzZWxlY3RJbWdFdmVudDogU3Vic2NyaXB0aW9uO1xuXG4gIEBJbnB1dCgpIHN0YXRlRGlzcGxheWVkOiBzdGF0ZURpc3BsYXllZDtcbiAgQElucHV0KCkgdGFiRGlzcGxheWVkOiB0YWJEaXNwbGF5ZWQ7XG4gIEBJbnB1dCgpIG11bHRpcGxlSW1nTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KClcbiAgc3dpdGNoRGlzcGxheVdpbmRvdzogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaW1nU2VsZWN0aW9uU2VydmljZTogSW1nU2VsZWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlbmFtZVBpY3R1cmVTZXJ2aWNlOiBSZW5hbWVQaWN0dXJlU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0RXZlbnRzKCk7XG4gIH1cblxuICBvbkltZ1VwbG9hZGVkKGltZzogSW1nUGljdHVyZURUT1tdKSB7XG4gICAgaW1nLmZvckVhY2gocGljdHVyZSA9PlxuICAgICAgdGhpcy5waWN0dXJlc0xpc3QucHVzaChwaWN0dXJlKVxuICAgICAgKTtcbiAgICB0aGlzLnJlbmFtZVBpY3R1cmVTZXJ2aWNlLnNldFBpY3R1cmVzTGlzdCh0aGlzLnBpY3R1cmVzTGlzdCk7XG4gIH1cblxuICBvblRvZ2dsZVNlbGVjdEltZyhpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuc3RhdGVEaXNwbGF5ZWQgPT09ICd3aW5kb3cnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghdGhpcy5waWN0dXJlc0xpc3RbaW5kZXhdLnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLmltZ1NlbGVjdGlvblNlcnZpY2UuYWRkSW1nU2VsZWN0ZWQodGhpcy5waWN0dXJlc0xpc3RbaW5kZXhdKTtcbiAgICAgIHRoaXMucGljdHVyZXNMaXN0W2luZGV4XS5zZWxlY3RlZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW1nU2VsZWN0aW9uU2VydmljZS5yZW1vdmVJbWdTZWxlY3RlZEJ5SWQodGhpcy5waWN0dXJlc0xpc3RbaW5kZXhdLmlkX2ZpbGUpO1xuICAgICAgdGhpcy5waWN0dXJlc0xpc3RbaW5kZXhdLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgc3dpdGNoRGlzcGxheVdpbmRvd0NhcmQoKSB7XG4gICAgdGhpcy5zd2l0Y2hEaXNwbGF5V2luZG93LmVtaXQodHJ1ZSk7XG4gIH1cblxuICBvblJlbmFtZVBpY3R1cmUocGljdHVyZVJlbmFtZWQ6IFBpY3R1cmVOYW1lVXBkYXRlKSB7XG4gICAgdGhpcy5yZW5hbWVQaWN0dXJlU2VydmljZS5vblJlbmFtZVBpY3R1cmUocGljdHVyZVJlbmFtZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRFdmVudHMoKSB7XG4gICAgdGhpcy5pbWdTZWxlY3Rpb25DaGFuZ2UgPSB0aGlzLmltZ1NlbGVjdGlvblNlcnZpY2UuZ2V0SW1nU2VsZWN0aW9uQ2hhbmdlKCkuc3Vic2NyaWJlKGltZ1NlbGVjdGlvbiA9PntcbiAgICAgIGNvbnN0IGlkRmlsZUxpc3QgPSBbXTtcbiAgICAgIGltZ1NlbGVjdGlvbi5tYXAoaW1nID0+IGlkRmlsZUxpc3QucHVzaChpbWcuaWRfZmlsZSkpO1xuICAgICAgZm9yIChjb25zdCBwaWN0dXJlIG9mIHRoaXMucGljdHVyZXNMaXN0KSB7XG4gICAgICAgIGlmIChpZEZpbGVMaXN0LmluZGV4T2YocGljdHVyZS5pZF9maWxlKSA9PT0gLTEpIHtcbiAgICAgICAgICBwaWN0dXJlLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmltZ1NlbGVjdGlvbkNoYW5nZS51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidXBsb2FkLWxpc3RcIiBbbmdDbGFzc109XCJ7J3NtYWxsRGlzcGxheSc6IHN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnfVwiIFtAZWFzZUluT3V0XT1cIidpbidcIj5cblxuICAgIDxwZXJmZWN0LXNjcm9sbGJhclxuICAgICAgICAjc2Nyb2xsYWJsZVxuICAgICAgICBbY29uZmlnXT1cInsgc3VwcHJlc3NTY3JvbGxYOiB0cnVlIH1cIlxuICAgICAgICBjbGFzcz1cInVwbG9hZC1saXN0X19zY3JvbGxcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAndXBsb2FkLWxpc3RfX3Njcm9sbC0tc21hbGxEaXNwbGF5Jzogc3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCcsXG4gICAgICAgICAgICAndXBsb2FkLWxpc3RfX3Njcm9sbC0td2luZG93Jzogc3RhdGVEaXNwbGF5ZWQgPT09ICd3aW5kb3cnfVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWxpc3RfX2JveFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC1saXN0X19ib3hfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibWFpbkNvbG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBwaWN0dXJlc0xpc3Q/IHBpY3R1cmVzTGlzdC5sZW5ndGggOiAnJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBpY3R1cmVzTGlzdCAmJiBwaWN0dXJlc0xpc3QubGVuZ3RoID4gMVwiPnt7ICdJbWdNYW5hZ2VyLlVwbG9hZExpc3QuaW1nU3VjY2Vzc0ltcG9ydCcgfCB0cmFuc2xhdGUgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwaWN0dXJlc0xpc3QgJiYgcGljdHVyZXNMaXN0Lmxlbmd0aCA9PT0gMVwiPnt7ICdJbWdNYW5hZ2VyLlVwbG9hZExpc3QuaW1nU3VjY2Vzc0ltcG9ydE9uZScgfCB0cmFuc2xhdGUgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24gaXMtaG92ZXJhYmxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tdHJpZ2dlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCIgYXJpYS1jb250cm9scz1cImRyb3Bkb3duLW1lbnVJbmZvU2VvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmYXMgZmEtaW5mby1jaXJjbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51IGRyb3BEb3duU2hhZG93XCIgaWQ9XCJkcm9wZG93bi1tZW51SW5mb1Nlb1wiIHJvbGU9XCJtZW51XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7ICdJbWdNYW5hZ2VyLlVwbG9hZExpc3Quc2VvLnJlemlzZScgfCB0cmFuc2xhdGUgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aSBjbGFzcz1cImZhbCBmYS1jaGVja1wiPjwvaT4gMTAwJTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5VcGxvYWRMaXN0LnNlby53ZWJwJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGkgY2xhc3M9XCJmYWwgZmEtY2hlY2tcIj48L2k+IDEwMCU8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgJ0ltZ01hbmFnZXIuVXBsb2FkTGlzdC5zZW8uY2RuJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGkgY2xhc3M9XCJmYWwgZmEtY2hlY2tcIj48L2k+IDEwMCU8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgJ0ltZ01hbmFnZXIuVXBsb2FkTGlzdC5zZW8ubGF6eWxvYWRpbmcnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aSBjbGFzcz1cImZhbCBmYS1jaGVja1wiPjwvaT4gMTAwJTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC1saXN0X19ib3hfX2NhcmRzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC1saXN0X19ib3hfX2NhcmRzX19jYXJkXCIgKm5nRm9yPVwibGV0IHBpY3R1cmUgb2YgcGljdHVyZXNMaXN0OyBsZXQgaW5kZXggPSBpbmRleDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZy1jYXJkXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGljdHVyZV09XCJwaWN0dXJlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0ZURpc3BsYXllZF09XCJzdGF0ZURpc3BsYXllZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAodG9nZ2xlSW1nU2VsZWN0ZWQpPVwib25Ub2dnbGVTZWxlY3RJbWcoaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzd2l0Y2hEaXNwbGF5V2luZG93KT1cInN3aXRjaERpc3BsYXlXaW5kb3dDYXJkKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHBpY3R1cmVOYW1lQ2hhbmdlKT1cIm9uUmVuYW1lUGljdHVyZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvaW1nLWNhcmQ+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtbGlzdF9fYm94X19jYXJkc19fY2FyZF9fYnRuQm94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIHN1Y2Nlc3MgdXBsb2FkLWxpc3RfX2JveF9fY2FyZHNfX2NhcmRfX2J0bkJveF9fYnRuXCI+PGkgY2xhc3M9XCJmYWwgZmEtY2hlY2tcIj48L2k+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvcGVyZmVjdC1zY3JvbGxiYXI+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Directive, Input, Output, EventEmitter } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { takeUntil, debounceTime, distinctUntilChanged, tap } from 'rxjs/operators';
4
+ import * as i0 from "@angular/core";
5
+ export class AbstractDebounceDirective {
6
+ constructor() {
7
+ this.debounceTime = 500;
8
+ this.onEventChange = new EventEmitter();
9
+ this.emitEvent$ = new Subject();
10
+ this.subscription$ = new Subject();
11
+ }
12
+ ngOnInit() {
13
+ this.emitEvent$
14
+ .pipe(takeUntil(this.subscription$), debounceTime(this.debounceTime), distinctUntilChanged(), tap(value => this.emitChange(value)))
15
+ .subscribe();
16
+ }
17
+ emitChange(value) {
18
+ this.onEventChange.emit(value);
19
+ }
20
+ ngOnDestroy() {
21
+ this.subscription$.next();
22
+ this.subscription$.complete();
23
+ }
24
+ }
25
+ AbstractDebounceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AbstractDebounceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
26
+ AbstractDebounceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: AbstractDebounceDirective, selector: "AbstractDebounceDirective", inputs: { debounceTime: "debounceTime" }, outputs: { onEventChange: "onEventChange" }, ngImport: i0 });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AbstractDebounceDirective, decorators: [{
28
+ type: Directive,
29
+ args: [{
30
+ selector: 'AbstractDebounceDirective'
31
+ }]
32
+ }], ctorParameters: function () { return []; }, propDecorators: { debounceTime: [{
33
+ type: Input
34
+ }], onEventChange: [{
35
+ type: Output
36
+ }] } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZGVib3VuY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9kaXJlY3RpdmVzL2Fic3RyYWN0LWRlYm91bmNlL2Fic3RyYWN0LWRlYm91bmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBS3BGLE1BQU0sT0FBTyx5QkFBeUI7SUFVcEM7UUFDRSxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUMzQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVO2FBQ1osSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQy9CLG9CQUFvQixFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDckM7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQVU7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDaEMsQ0FBQzs7c0hBbkNVLHlCQUF5QjswR0FBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBSHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtpQkFDdEM7MEVBR1EsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxhQUFhO3NCQURuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsLCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ0Fic3RyYWN0RGVib3VuY2VEaXJlY3RpdmUnXG59KVxuZXhwb3J0IGNsYXNzIEFic3RyYWN0RGVib3VuY2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGVib3VuY2VUaW1lOiBudW1iZXI7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvbkV2ZW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PjtcblxuICBwcm90ZWN0ZWQgZW1pdEV2ZW50JDogU3ViamVjdDxhbnk+O1xuICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uJDogU3ViamVjdDx2b2lkPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRlYm91bmNlVGltZSA9IDUwMDtcbiAgICB0aGlzLm9uRXZlbnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICB0aGlzLmVtaXRFdmVudCQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24kID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZW1pdEV2ZW50JFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLnN1YnNjcmlwdGlvbiQpLFxuICAgICAgICBkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0YXAodmFsdWUgPT4gdGhpcy5lbWl0Q2hhbmdlKHZhbHVlKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBlbWl0Q2hhbmdlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uRXZlbnRDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiQubmV4dCgpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { Directive, HostListener } from '@angular/core';
2
+ import { AbstractDebounceDirective } from './abstract-debounce.directive';
3
+ import * as i0 from "@angular/core";
4
+ export class DebounceKeyupDirective extends AbstractDebounceDirective {
5
+ constructor() {
6
+ super();
7
+ }
8
+ onKeyUp(event) {
9
+ event.preventDefault();
10
+ this.emitEvent$.next(event);
11
+ }
12
+ }
13
+ DebounceKeyupDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DebounceKeyupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
14
+ DebounceKeyupDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: DebounceKeyupDirective, selector: "input[debounceKeyUp]", host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DebounceKeyupDirective, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: 'input[debounceKeyUp]'
19
+ }]
20
+ }], ctorParameters: function () { return []; }, propDecorators: { onKeyUp: [{
21
+ type: HostListener,
22
+ args: ['keyup', ['$event']]
23
+ }] } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVib3VuY2Uta2V5dXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9kaXJlY3RpdmVzL2Fic3RyYWN0LWRlYm91bmNlL2RlYm91bmNlLWtleXVwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFJMUUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHlCQUF5QjtJQUNuRTtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUdNLE9BQU8sQ0FBQyxLQUFVO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDOzttSEFUVSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzBFQU9RLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3REZWJvdW5jZURpcmVjdGl2ZSB9IGZyb20gJy4vYWJzdHJhY3QtZGVib3VuY2UuZGlyZWN0aXZlJztcbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W2RlYm91bmNlS2V5VXBdJ1xufSlcbmV4cG9ydCBjbGFzcyBEZWJvdW5jZUtleXVwRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3REZWJvdW5jZURpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleVVwKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuZW1pdEV2ZW50JC5uZXh0KGV2ZW50KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,48 @@
1
+ import { Directive, ElementRef, Input, Output, EventEmitter } from '@angular/core';
2
+ import { DomService } from '../services/dom.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../services/dom.service";
5
+ export class AutoHideDirective {
6
+ constructor(_elementRef, domService) {
7
+ this._elementRef = _elementRef;
8
+ this.domService = domService;
9
+ this.forceOn = null;
10
+ this.clickOutside = new EventEmitter();
11
+ }
12
+ ngAfterViewInit() {
13
+ this.domService.documentEvent().subscribe((targetElement) => {
14
+ const clickedInside = this._elementRef.nativeElement.contains(targetElement);
15
+ const classNameFromElement = targetElement.getAttribute('class');
16
+ if (!clickedInside && (classNameFromElement === null || !classNameFromElement.includes(this.triggerElement))) {
17
+ this.clickOutside.emit(null);
18
+ }
19
+ if (this.forceOn != null && classNameFromElement !== null) {
20
+ let needToClose = true;
21
+ this.forceOn.forEach(v => {
22
+ if (!classNameFromElement.includes(v)) {
23
+ needToClose = false;
24
+ }
25
+ });
26
+ if (needToClose) {
27
+ this.clickOutside.emit(null);
28
+ }
29
+ }
30
+ });
31
+ }
32
+ }
33
+ AutoHideDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AutoHideDirective, deps: [{ token: i0.ElementRef }, { token: i1.DomService }], target: i0.ɵɵFactoryTarget.Directive });
34
+ AutoHideDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: { triggerElement: "triggerElement", forceOn: "forceOn" }, outputs: { clickOutside: "clickOutside" }, ngImport: i0 });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AutoHideDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ selector: '[wzAutoHide]'
39
+ }]
40
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DomService }]; }, propDecorators: { triggerElement: [{
41
+ type: Input
42
+ }], forceOn: [{
43
+ type: Input
44
+ }], clickOutside: [{
45
+ type: Output,
46
+ args: ['clickOutside']
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1oaWRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvZGlyZWN0aXZlcy9hdXRvLWhpZGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUtyRCxNQUFNLE9BQU8saUJBQWlCO0lBSTVCLFlBQW9CLFdBQXVCLEVBQVUsVUFBc0I7UUFBdkQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBRmxFLFlBQU8sR0FBa0IsSUFBSSxDQUFDO1FBSWYsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUZDLENBQUM7SUFJL0UsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsYUFBc0IsRUFBRSxFQUFFO1lBQ25FLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM3RSxNQUFNLG9CQUFvQixHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFakUsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRTtnQkFDNUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDOUI7WUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLG9CQUFvQixLQUFLLElBQUksRUFBRTtnQkFDekQsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDO2dCQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDdkIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDckMsV0FBVyxHQUFHLEtBQUssQ0FBQztxQkFDckI7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxXQUFXLEVBQUU7b0JBQ2YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzlCO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQTdCVSxpQkFBaUI7a0dBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO2lCQUN6QjswSEFFVSxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFJa0IsWUFBWTtzQkFBbkMsTUFBTTt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kb20uc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t3ekF1dG9IaWRlXSdcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0hpZGVEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgdHJpZ2dlckVsZW1lbnQ6IHN0cmluZztcbiAgQElucHV0KCkgZm9yY2VPbjogQXJyYXk8c3RyaW5nPiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBkb21TZXJ2aWNlOiBEb21TZXJ2aWNlKSB7fVxuXG4gIEBPdXRwdXQoJ2NsaWNrT3V0c2lkZScpIGNsaWNrT3V0c2lkZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZG9tU2VydmljZS5kb2N1bWVudEV2ZW50KCkuc3Vic2NyaWJlKCh0YXJnZXRFbGVtZW50OiBFbGVtZW50KSA9PiB7XG4gICAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xuICAgICAgY29uc3QgY2xhc3NOYW1lRnJvbUVsZW1lbnQgPSB0YXJnZXRFbGVtZW50LmdldEF0dHJpYnV0ZSgnY2xhc3MnKTtcblxuICAgICAgaWYgKCFjbGlja2VkSW5zaWRlICYmIChjbGFzc05hbWVGcm9tRWxlbWVudCA9PT0gbnVsbCB8fCAhY2xhc3NOYW1lRnJvbUVsZW1lbnQuaW5jbHVkZXModGhpcy50cmlnZ2VyRWxlbWVudCkpKSB7XG4gICAgICAgIHRoaXMuY2xpY2tPdXRzaWRlLmVtaXQobnVsbCk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmZvcmNlT24gIT0gbnVsbCAmJiBjbGFzc05hbWVGcm9tRWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgICBsZXQgbmVlZFRvQ2xvc2UgPSB0cnVlO1xuICAgICAgICB0aGlzLmZvcmNlT24uZm9yRWFjaCh2ID0+IHtcbiAgICAgICAgICBpZiAoIWNsYXNzTmFtZUZyb21FbGVtZW50LmluY2x1ZGVzKHYpKSB7XG4gICAgICAgICAgICBuZWVkVG9DbG9zZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChuZWVkVG9DbG9zZSkge1xuICAgICAgICAgIHRoaXMuY2xpY2tPdXRzaWRlLmVtaXQobnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,37 @@
1
+ import { Directive, Input, Output, EventEmitter, HostListener } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class CopyClipboardDirective {
4
+ constructor() {
5
+ this.copied = new EventEmitter();
6
+ }
7
+ onClick(event) {
8
+ event.preventDefault();
9
+ if (!this.payload)
10
+ return;
11
+ let listener = (e) => {
12
+ let clipboard = e.clipboardData || window["clipboardData"];
13
+ clipboard.setData("text", this.payload.toString());
14
+ e.preventDefault();
15
+ this.copied.emit(this.payload);
16
+ };
17
+ document.addEventListener("copy", listener, false);
18
+ document.execCommand("copy");
19
+ document.removeEventListener("copy", listener, false);
20
+ }
21
+ }
22
+ CopyClipboardDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CopyClipboardDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
23
+ CopyClipboardDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: CopyClipboardDirective, selector: "[copy-clipboard]", inputs: { payload: ["copy-clipboard", "payload"] }, outputs: { copied: "copied" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CopyClipboardDirective, decorators: [{
25
+ type: Directive,
26
+ args: [{ selector: '[copy-clipboard]' }]
27
+ }], propDecorators: { payload: [{
28
+ type: Input,
29
+ args: ["copy-clipboard"]
30
+ }], copied: [{
31
+ type: Output,
32
+ args: ["copied"]
33
+ }], onClick: [{
34
+ type: HostListener,
35
+ args: ["click", ["$event"]]
36
+ }] } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS10by1jbGlwYm9hcmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9kaXJlY3RpdmVzL2NvcHktdG8tY2xpcGJvYXJkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHckYsTUFBTSxPQUFPLHNCQUFzQjtJQURuQztRQU9TLFdBQU0sR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQXFCbEU7SUFsQlEsT0FBTyxDQUFDLEtBQWlCO1FBRTlCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFDZixPQUFPO1FBRVQsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFpQixFQUFFLEVBQUU7WUFDbkMsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDM0QsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ25ELENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUVuQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDO1FBRUYsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDbEQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixRQUFRLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4RCxDQUFDOzttSEExQlUsc0JBQXNCO3VHQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRTs4QkFJbEMsT0FBTztzQkFEYixLQUFLO3VCQUFDLGdCQUFnQjtnQkFJaEIsTUFBTTtzQkFEWixNQUFNO3VCQUFDLFFBQVE7Z0JBSVQsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbY29weS1jbGlwYm9hcmRdJyB9KVxuZXhwb3J0IGNsYXNzIENvcHlDbGlwYm9hcmREaXJlY3RpdmUge1xuXG4gIEBJbnB1dChcImNvcHktY2xpcGJvYXJkXCIpXG4gIHB1YmxpYyBwYXlsb2FkOiBzdHJpbmc7XG5cbiAgQE91dHB1dChcImNvcGllZFwiKVxuICBwdWJsaWMgY29waWVkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiLCBbXCIkZXZlbnRcIl0pXG4gIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG5cbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICghdGhpcy5wYXlsb2FkKVxuICAgICAgcmV0dXJuO1xuXG4gICAgbGV0IGxpc3RlbmVyID0gKGU6IENsaXBib2FyZEV2ZW50KSA9PiB7XG4gICAgICBsZXQgY2xpcGJvYXJkID0gZS5jbGlwYm9hcmREYXRhIHx8IHdpbmRvd1tcImNsaXBib2FyZERhdGFcIl07XG4gICAgICBjbGlwYm9hcmQuc2V0RGF0YShcInRleHRcIiwgdGhpcy5wYXlsb2FkLnRvU3RyaW5nKCkpO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICB0aGlzLmNvcGllZC5lbWl0KHRoaXMucGF5bG9hZCk7XG4gICAgfTtcblxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjb3B5XCIsIGxpc3RlbmVyLCBmYWxzZSlcbiAgICBkb2N1bWVudC5leGVjQ29tbWFuZChcImNvcHlcIik7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNvcHlcIiwgbGlzdGVuZXIsIGZhbHNlKTtcbiAgfVxufSJdfQ==