@pepperi-addons/ngx-lib 0.2.60 → 0.2.61-beta.1

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 (306) hide show
  1. package/address/address.component.theme.scss +4 -7
  2. package/address/pepperi-addons-ngx-lib-address.metadata.json +1 -1
  3. package/attachment/attachment.component.d.ts +1 -0
  4. package/attachment/attachment.component.theme.scss +3 -2
  5. package/attachment/pepperi-addons-ngx-lib-attachment.metadata.json +1 -1
  6. package/bread-crumbs/bread-crumbs.component.theme.scss +7 -7
  7. package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.metadata.json +1 -1
  8. package/bundles/pepperi-addons-ngx-lib-address.umd.js +1 -1
  9. package/bundles/pepperi-addons-ngx-lib-address.umd.js.map +1 -1
  10. package/bundles/pepperi-addons-ngx-lib-attachment.umd.js +7 -2
  11. package/bundles/pepperi-addons-ngx-lib-attachment.umd.js.map +1 -1
  12. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +1 -1
  13. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js.map +1 -1
  14. package/bundles/pepperi-addons-ngx-lib-button.umd.js +1 -1
  15. package/bundles/pepperi-addons-ngx-lib-button.umd.js.map +1 -1
  16. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js +4 -1
  17. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js.map +1 -1
  18. package/bundles/pepperi-addons-ngx-lib-color.umd.js +8 -3
  19. package/bundles/pepperi-addons-ngx-lib-color.umd.js.map +1 -1
  20. package/bundles/pepperi-addons-ngx-lib-date.umd.js +5 -3
  21. package/bundles/pepperi-addons-ngx-lib-date.umd.js.map +1 -1
  22. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +1 -1
  23. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js.map +1 -1
  24. package/bundles/pepperi-addons-ngx-lib-field-title.umd.js +1 -1
  25. package/bundles/pepperi-addons-ngx-lib-field-title.umd.js.map +1 -1
  26. package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js +1 -1
  27. package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js.map +1 -1
  28. package/bundles/pepperi-addons-ngx-lib-form.umd.js +19 -16
  29. package/bundles/pepperi-addons-ngx-lib-form.umd.js.map +1 -1
  30. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js +1 -1
  31. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js.map +1 -1
  32. package/bundles/pepperi-addons-ngx-lib-image.umd.js +7 -2
  33. package/bundles/pepperi-addons-ngx-lib-image.umd.js.map +1 -1
  34. package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js +7 -2
  35. package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js.map +1 -1
  36. package/bundles/pepperi-addons-ngx-lib-list.umd.js +1 -1
  37. package/bundles/pepperi-addons-ngx-lib-list.umd.js.map +1 -1
  38. package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js +7 -2
  39. package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js.map +1 -1
  40. package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js +1104 -0
  41. package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js.map +1 -0
  42. package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js +7 -2
  43. package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js.map +1 -1
  44. package/bundles/pepperi-addons-ngx-lib-select.umd.js +7 -2
  45. package/bundles/pepperi-addons-ngx-lib-select.umd.js.map +1 -1
  46. package/bundles/pepperi-addons-ngx-lib-separator.umd.js +9 -1
  47. package/bundles/pepperi-addons-ngx-lib-separator.umd.js.map +1 -1
  48. package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js +1 -1
  49. package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js.map +1 -1
  50. package/bundles/pepperi-addons-ngx-lib-signature.umd.js +7 -2
  51. package/bundles/pepperi-addons-ngx-lib-signature.umd.js.map +1 -1
  52. package/bundles/pepperi-addons-ngx-lib-slider.umd.js +1 -1
  53. package/bundles/pepperi-addons-ngx-lib-slider.umd.js.map +1 -1
  54. package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js +306 -39
  55. package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js.map +1 -1
  56. package/bundles/pepperi-addons-ngx-lib-textarea.umd.js +7 -2
  57. package/bundles/pepperi-addons-ngx-lib-textarea.umd.js.map +1 -1
  58. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js +5 -3
  59. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js.map +1 -1
  60. package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js +1 -1
  61. package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js.map +1 -1
  62. package/bundles/pepperi-addons-ngx-lib.umd.js +38 -36
  63. package/bundles/pepperi-addons-ngx-lib.umd.js.map +1 -1
  64. package/button/button.component.theme.scss +0 -2
  65. package/button/pepperi-addons-ngx-lib-button.metadata.json +1 -1
  66. package/checkbox/checkbox.component.theme.scss +0 -2
  67. package/checkbox/pepperi-addons-ngx-lib-checkbox.metadata.json +1 -1
  68. package/color/color-picker.component.theme.scss +123 -128
  69. package/color/color.component.d.ts +1 -0
  70. package/color/color.component.theme.scss +0 -7
  71. package/color/pepperi-addons-ngx-lib-color.metadata.json +1 -1
  72. package/core/common/services/addon.service.d.ts +1 -2
  73. package/core/common/services/file.service.d.ts +4 -4
  74. package/core/customization/customization.service.d.ts +1 -0
  75. package/date/date.component.theme.scss +163 -169
  76. package/date/pepperi-addons-ngx-lib-date.metadata.json +1 -1
  77. package/dialog/dialog.component.theme.scss +4 -4
  78. package/dialog/pepperi-addons-ngx-lib-dialog.metadata.json +1 -1
  79. package/esm2015/address/address.component.js +2 -2
  80. package/esm2015/attachment/attachment.component.js +8 -3
  81. package/esm2015/bread-crumbs/bread-crumbs.component.js +2 -2
  82. package/esm2015/button/button.component.js +2 -2
  83. package/esm2015/checkbox/checkbox.component.js +5 -2
  84. package/esm2015/color/color-picker.component.js +2 -2
  85. package/esm2015/color/color.component.js +8 -3
  86. package/esm2015/core/common/services/addon.service.js +4 -19
  87. package/esm2015/core/common/services/file.service.js +9 -9
  88. package/esm2015/core/common/services/utilities.service.js +25 -4
  89. package/esm2015/core/customization/customization.service.js +4 -2
  90. package/esm2015/date/date.component.js +6 -4
  91. package/esm2015/dialog/dialog.component.js +2 -2
  92. package/esm2015/field-title/field-title.component.js +2 -2
  93. package/esm2015/files-uploader/files-uploader.component.js +2 -2
  94. package/esm2015/form/indicators.component.js +2 -2
  95. package/esm2015/form/internal-button.component.js +20 -17
  96. package/esm2015/group-buttons/group-buttons.component.js +2 -2
  97. package/esm2015/image/image.component.js +8 -3
  98. package/esm2015/images-filmstrip/images-filmstrip.component.js +8 -3
  99. package/esm2015/list/list-total.component.js +2 -2
  100. package/esm2015/quantity-selector/quantity-selector.component.js +8 -3
  101. package/esm2015/query-builder/common/model/field.js +2 -0
  102. package/esm2015/query-builder/common/model/filter.js +2 -0
  103. package/esm2015/query-builder/common/model/legacy.js +2 -0
  104. package/esm2015/query-builder/common/model/operator-unit.js +42 -0
  105. package/esm2015/query-builder/common/model/operator.js +207 -0
  106. package/esm2015/query-builder/common/model/structure.js +2 -0
  107. package/esm2015/query-builder/common/model/type-map.js +27 -0
  108. package/esm2015/query-builder/common/model/type.js +6 -0
  109. package/esm2015/query-builder/common/services/output-query.service.js +111 -0
  110. package/esm2015/query-builder/common/services/type-convertor.service.js +40 -0
  111. package/esm2015/query-builder/pepperi-addons-ngx-lib-query-builder.js +9 -0
  112. package/esm2015/query-builder/public-api.js +8 -0
  113. package/esm2015/query-builder/query-builder-item/query-builder-item.component.js +116 -0
  114. package/esm2015/query-builder/query-builder-section/query-builder-section.component.js +64 -0
  115. package/esm2015/query-builder/query-builder.component.js +104 -0
  116. package/esm2015/query-builder/query-builder.module.js +35 -0
  117. package/esm2015/query-builder/query-builder.service.js +282 -0
  118. package/esm2015/rich-html-textarea/rich-html-textarea.component.js +8 -3
  119. package/esm2015/select/select.component.js +8 -3
  120. package/esm2015/separator/separator.component.js +10 -2
  121. package/esm2015/side-bar/side-bar.component.js +2 -2
  122. package/esm2015/signature/signature.component.js +8 -3
  123. package/esm2015/slider/slider.component.js +2 -2
  124. package/esm2015/smart-filters/boolean-filter/boolean-filter.component.js +23 -3
  125. package/esm2015/smart-filters/common/model/base-filter-component.js +35 -8
  126. package/esm2015/smart-filters/common/model/creator.js +8 -2
  127. package/esm2015/smart-filters/common/model/field.js +12 -1
  128. package/esm2015/smart-filters/common/model/operator.js +8 -8
  129. package/esm2015/smart-filters/common/model/type.js +1 -1
  130. package/esm2015/smart-filters/date-filter/date-filter.component.js +45 -2
  131. package/esm2015/smart-filters/multi-select-filter/multi-select-filter.component.js +53 -14
  132. package/esm2015/smart-filters/number-filter/number-filter.component.js +27 -2
  133. package/esm2015/smart-filters/public-api.js +2 -1
  134. package/esm2015/smart-filters/smart-filters.component.js +2 -2
  135. package/esm2015/smart-filters/smart-filters.module.js +16 -3
  136. package/esm2015/smart-filters/text-filter/text-filter.component.js +79 -0
  137. package/esm2015/textarea/textarea.component.js +8 -3
  138. package/esm2015/textbox/textbox.component.js +6 -4
  139. package/esm2015/top-bar/top-bar.component.js +2 -2
  140. package/fesm2015/pepperi-addons-ngx-lib-address.js +1 -1
  141. package/fesm2015/pepperi-addons-ngx-lib-address.js.map +1 -1
  142. package/fesm2015/pepperi-addons-ngx-lib-attachment.js +7 -2
  143. package/fesm2015/pepperi-addons-ngx-lib-attachment.js.map +1 -1
  144. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +1 -1
  145. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js.map +1 -1
  146. package/fesm2015/pepperi-addons-ngx-lib-button.js +1 -1
  147. package/fesm2015/pepperi-addons-ngx-lib-button.js.map +1 -1
  148. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js +4 -1
  149. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js.map +1 -1
  150. package/fesm2015/pepperi-addons-ngx-lib-color.js +8 -3
  151. package/fesm2015/pepperi-addons-ngx-lib-color.js.map +1 -1
  152. package/fesm2015/pepperi-addons-ngx-lib-date.js +5 -3
  153. package/fesm2015/pepperi-addons-ngx-lib-date.js.map +1 -1
  154. package/fesm2015/pepperi-addons-ngx-lib-dialog.js +1 -1
  155. package/fesm2015/pepperi-addons-ngx-lib-dialog.js.map +1 -1
  156. package/fesm2015/pepperi-addons-ngx-lib-field-title.js +1 -1
  157. package/fesm2015/pepperi-addons-ngx-lib-field-title.js.map +1 -1
  158. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js +1 -1
  159. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js.map +1 -1
  160. package/fesm2015/pepperi-addons-ngx-lib-form.js +19 -16
  161. package/fesm2015/pepperi-addons-ngx-lib-form.js.map +1 -1
  162. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js +1 -1
  163. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js.map +1 -1
  164. package/fesm2015/pepperi-addons-ngx-lib-image.js +7 -2
  165. package/fesm2015/pepperi-addons-ngx-lib-image.js.map +1 -1
  166. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js +7 -2
  167. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js.map +1 -1
  168. package/fesm2015/pepperi-addons-ngx-lib-list.js +1 -1
  169. package/fesm2015/pepperi-addons-ngx-lib-list.js.map +1 -1
  170. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js +7 -2
  171. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js.map +1 -1
  172. package/fesm2015/pepperi-addons-ngx-lib-query-builder.js +1014 -0
  173. package/fesm2015/pepperi-addons-ngx-lib-query-builder.js.map +1 -0
  174. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js +7 -2
  175. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js.map +1 -1
  176. package/fesm2015/pepperi-addons-ngx-lib-select.js +7 -2
  177. package/fesm2015/pepperi-addons-ngx-lib-select.js.map +1 -1
  178. package/fesm2015/pepperi-addons-ngx-lib-separator.js +9 -1
  179. package/fesm2015/pepperi-addons-ngx-lib-separator.js.map +1 -1
  180. package/fesm2015/pepperi-addons-ngx-lib-side-bar.js +1 -1
  181. package/fesm2015/pepperi-addons-ngx-lib-side-bar.js.map +1 -1
  182. package/fesm2015/pepperi-addons-ngx-lib-signature.js +7 -2
  183. package/fesm2015/pepperi-addons-ngx-lib-signature.js.map +1 -1
  184. package/fesm2015/pepperi-addons-ngx-lib-slider.js +1 -1
  185. package/fesm2015/pepperi-addons-ngx-lib-slider.js.map +1 -1
  186. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js +293 -36
  187. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js.map +1 -1
  188. package/fesm2015/pepperi-addons-ngx-lib-textarea.js +7 -2
  189. package/fesm2015/pepperi-addons-ngx-lib-textarea.js.map +1 -1
  190. package/fesm2015/pepperi-addons-ngx-lib-textbox.js +5 -3
  191. package/fesm2015/pepperi-addons-ngx-lib-textbox.js.map +1 -1
  192. package/fesm2015/pepperi-addons-ngx-lib-top-bar.js +1 -1
  193. package/fesm2015/pepperi-addons-ngx-lib-top-bar.js.map +1 -1
  194. package/fesm2015/pepperi-addons-ngx-lib.js +38 -30
  195. package/fesm2015/pepperi-addons-ngx-lib.js.map +1 -1
  196. package/field-title/field-title.component.theme.scss +0 -2
  197. package/field-title/pepperi-addons-ngx-lib-field-title.metadata.json +1 -1
  198. package/files-uploader/files-uploader.component.theme.scss +3 -2
  199. package/files-uploader/pepperi-addons-ngx-lib-files-uploader.metadata.json +1 -1
  200. package/form/indicators.component.theme.scss +5 -5
  201. package/form/internal-button.component.d.ts +0 -1
  202. package/form/pepperi-addons-ngx-lib-form.metadata.json +1 -1
  203. package/group-buttons/group-buttons.component.theme.scss +11 -11
  204. package/group-buttons/pepperi-addons-ngx-lib-group-buttons.metadata.json +1 -1
  205. package/image/image.component.d.ts +1 -0
  206. package/image/image.component.theme.scss +25 -27
  207. package/image/pepperi-addons-ngx-lib-image.metadata.json +1 -1
  208. package/images-filmstrip/images-filmstrip.component.d.ts +1 -0
  209. package/images-filmstrip/images-filmstrip.component.theme.scss +27 -26
  210. package/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.metadata.json +1 -1
  211. package/list/list-total.component.theme.scss +6 -6
  212. package/list/pepperi-addons-ngx-lib-list.metadata.json +1 -1
  213. package/package.json +5 -5
  214. package/page-layout/page-layout.component.theme.scss +6 -6
  215. package/pepperi-addons-ngx-lib.metadata.json +1 -1
  216. package/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.metadata.json +1 -1
  217. package/quantity-selector/quantity-selector.component.d.ts +1 -0
  218. package/quantity-selector/quantity-selector.component.theme.scss +23 -21
  219. package/query-builder/common/model/field.d.ts +8 -0
  220. package/query-builder/common/model/filter.d.ts +6 -0
  221. package/query-builder/common/model/legacy.d.ts +29 -0
  222. package/query-builder/common/model/operator-unit.d.ts +13 -0
  223. package/query-builder/common/model/operator.d.ts +21 -0
  224. package/query-builder/common/model/structure.d.ts +4 -0
  225. package/query-builder/common/model/type-map.d.ts +12 -0
  226. package/query-builder/common/model/type.d.ts +4 -0
  227. package/query-builder/common/services/output-query.service.d.ts +44 -0
  228. package/query-builder/common/services/type-convertor.service.d.ts +10 -0
  229. package/query-builder/package.json +14 -0
  230. package/query-builder/pepperi-addons-ngx-lib-query-builder.d.ts +8 -0
  231. package/query-builder/pepperi-addons-ngx-lib-query-builder.metadata.json +1 -0
  232. package/query-builder/public-api.d.ts +4 -0
  233. package/query-builder/query-builder-item/query-builder-item.component.d.ts +37 -0
  234. package/query-builder/query-builder-section/query-builder-section.component.d.ts +27 -0
  235. package/query-builder/query-builder-section/query-builder-section.component.theme.scss +7 -0
  236. package/query-builder/query-builder.component.d.ts +35 -0
  237. package/query-builder/query-builder.module.d.ts +2 -0
  238. package/query-builder/query-builder.service.d.ts +94 -0
  239. package/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.metadata.json +1 -1
  240. package/rich-html-textarea/rich-html-textarea.component.d.ts +1 -0
  241. package/rich-html-textarea/rich-html-textarea.component.theme.scss +77 -70
  242. package/select/pepperi-addons-ngx-lib-select.metadata.json +1 -1
  243. package/select/select.component.d.ts +1 -0
  244. package/select/select.component.theme.scss +98 -2
  245. package/separator/pepperi-addons-ngx-lib-separator.metadata.json +1 -1
  246. package/separator/separator.component.theme.scss +1 -1
  247. package/side-bar/pepperi-addons-ngx-lib-side-bar.metadata.json +1 -1
  248. package/side-bar/side-bar.component.theme.scss +17 -16
  249. package/signature/pepperi-addons-ngx-lib-signature.metadata.json +1 -1
  250. package/signature/signature.component.d.ts +1 -0
  251. package/signature/signature.component.theme.scss +5 -21
  252. package/slider/pepperi-addons-ngx-lib-slider.metadata.json +1 -1
  253. package/slider/slider.component.theme.scss +55 -53
  254. package/smart-filters/boolean-filter/boolean-filter.component.d.ts +6 -1
  255. package/smart-filters/common/model/base-filter-component.d.ts +7 -0
  256. package/smart-filters/common/model/field.d.ts +4 -0
  257. package/smart-filters/common/model/operator.d.ts +1 -0
  258. package/smart-filters/common/model/type.d.ts +2 -2
  259. package/smart-filters/date-filter/date-filter.component.d.ts +8 -1
  260. package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +6 -0
  261. package/smart-filters/number-filter/number-filter.component.d.ts +5 -0
  262. package/smart-filters/pepperi-addons-ngx-lib-smart-filters.metadata.json +1 -1
  263. package/smart-filters/public-api.d.ts +1 -0
  264. package/smart-filters/smart-filters.component.theme.scss +6 -7
  265. package/smart-filters/text-filter/text-filter.component.d.ts +17 -0
  266. package/src/assets/i18n/en.ngx-lib.json +2 -1
  267. package/src/core/style/abstracts/breakpoints.scss +4 -2
  268. package/src/core/style/abstracts/functions.scss +233 -216
  269. package/src/core/style/abstracts/mixins.scss +191 -188
  270. package/src/core/style/base/base.scss +125 -124
  271. package/src/core/style/base/grids.scss +1 -1
  272. package/src/core/style/base/typography.scss +66 -62
  273. package/src/core/style/components/button.scss +57 -60
  274. package/src/core/style/components/checkbox.scss +41 -38
  275. package/src/core/style/components/datetime.scss +182 -22
  276. package/src/core/style/components/file.scss +28 -18
  277. package/src/core/style/components/general.scss +180 -278
  278. package/src/core/style/components/input.scss +21 -24
  279. package/src/core/style/components/quantity-selector.scss +15 -12
  280. package/src/core/style/components/radio-button.scss +22 -38
  281. package/src/core/style/components/select.scss +184 -182
  282. package/src/core/style/components/signature.scss +14 -12
  283. package/src/core/style/components/splitter.scss +58 -55
  284. package/src/core/style/components/textarea.scss +8 -9
  285. package/textarea/pepperi-addons-ngx-lib-textarea.metadata.json +1 -1
  286. package/textarea/textarea.component.d.ts +1 -0
  287. package/textarea/textarea.component.theme.scss +3 -2
  288. package/textbox/pepperi-addons-ngx-lib-textbox.metadata.json +1 -1
  289. package/textbox/textbox.component.theme.scss +1 -1
  290. package/theming.scss +50 -144
  291. package/top-bar/pepperi-addons-ngx-lib-top-bar.metadata.json +1 -1
  292. package/top-bar/top-bar.component.theme.scss +7 -7
  293. package/form/form.component.theme.scss +0 -2
  294. package/form/internal-button.component.theme.scss +0 -2
  295. package/form/internal-menu.component.theme.scss +0 -3
  296. package/list/list-actions.component.theme.scss +0 -3
  297. package/list/list-carousel.component.theme.scss +0 -9
  298. package/list/list-chooser.component.theme.scss +0 -3
  299. package/list/list-pager.component.theme.scss +0 -3
  300. package/list/list-sorting.component.theme.scss +0 -3
  301. package/list/list-views.component.theme.scss +0 -3
  302. package/list/list.component.theme.scss +0 -5
  303. package/list/list_old.component.theme.scss +0 -5
  304. package/menu/menu.component.theme.scss +0 -2
  305. package/search/search.component.theme.scss +0 -3
  306. package/textbox-icon/textbox-icon.component.theme.scss +0 -3
@@ -45,7 +45,7 @@
45
45
  { type: core.Component, args: [{
46
46
  selector: 'pep-group-buttons',
47
47
  template: "<div class=\"group-buttons-container\" pepRtlDirection>\n <ng-container *ngIf=\"viewType === 'regular'\">\n <button *ngFor=\"let button of buttons\" [pepDataQa]=\"button?.value\"\n class=\"pep-button pep-spacing-element pull-left flip first-button {{ sizeType }} {{ styleType }}\"\n [disabled]=\"buttonsDisabled || button.disabled\" mat-button (click)=\"onButtonClicked($event, button)\">\n <span [title]=\"button?.value\">{{ button?.value }}</span>\n </button>\n </ng-container>\n\n <div *ngIf=\"viewType === 'dropdown'\" class=\"dropdown-buttons pep-spacing-element\"\n [ngClass]=\"{dropup: screenSize >= PepScreenSizeType.MD}\">\n <button [pepDataQa]=\"buttons[0]?.value\"\n class=\"pep-button pull-left flip first-button {{ sizeType }} {{ styleType }}\"\n (click)=\"onButtonClicked($event, buttons[0])\" [disabled]=\"buttonsDisabled || buttons[0].disabled\"\n mat-button>\n <span class=\"ellipsis\" [title]=\"buttons[0]?.value\">{{ buttons[0]?.value }}</span>\n </button>\n <button class=\"pep-button icon-button pull-right flip last-button {{ sizeType }} {{ styleType }}\"\n [matMenuTriggerFor]=\"actionsMenu\" [disabled]=\"buttonsDisabled\" pepMenuBlur mat-button>\n <mat-icon>\n <pep-icon name=\"{{ screenSize < PepScreenSizeType.MD ? 'arrow_down' : 'arrow_up' }}\">\n </pep-icon>\n </mat-icon>\n </button>\n\n <mat-menu #actionsMenu=\"matMenu\" xPosition=\"before\">\n <ng-container *ngFor=\"let button of buttons; let i = index; first as isFirst\">\n <button *ngIf=\"!isFirst\" mat-menu-item [pepDataQa]=\"button?.value\"\n (click)=\"onButtonClicked($event, button)\">\n <span [title]=\"button?.value\">{{ button?.value }}</span>\n </button>\n </ng-container>\n </mat-menu>\n </div>\n\n <div *ngIf=\"viewType === 'split'\" class=\"split-buttons\">\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\n 'first-button': isFirst, \n 'middle-button': !isFirst && !isLast, \n 'last-button': isLast, \n 'icon-button': button?.iconName && !button?.value}\" (click)=\"onButtonClicked($event, button)\">\n\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\n </button>\n </div>\n\n <div *ngIf=\"viewType === 'toggle'\" class=\"toggle-buttons\" [ngClass]=\"{ 'stretch': stretch }\">\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\n 'first-button': isFirst && !isLast, \n 'middle-button': !isFirst && !isLast, \n 'last-button': isLast && !isFirst,\n 'icon-button': button?.iconName && !button?.value,\n 'is-selected': button?.key !== '' && button?.key === selectedButtonKey}\"\n (click)=\"onButtonClicked($event, button)\">\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\n </button>\n </div>\n</div>\n\n<ng-template #contentTemplate let-button=\"button\">\n <mat-icon *ngIf=\"button.iconName && (!button.iconPosition || button.iconPosition === 'start')\"\n [ngClass]=\"{ 'pull-left flip': button.value }\">\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"button.value\" class=\"ellipsis pull-left flip\"\n [ngClass]=\"{ 'button-title-with-icon': button.iconName, 'icon-before': button.iconPosition === 'start' }\"\n [title]=\"button.value\">\n {{button.value}}\n </span>\n <mat-icon *ngIf=\"button.iconName && button.iconPosition === 'end'\" [ngClass]=\"{ 'pull-left flip': button.value }\">\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\n </mat-icon>\n</ng-template>",
48
- styles: [".group-buttons-container{display:flex;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:1px;margin-inline-end:1px}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .dropdown-buttons .first-button:after,.group-buttons-container .split-buttons .first-button,.group-buttons-container .split-buttons .first-button:after,.group-buttons-container .toggle-buttons .first-button,.group-buttons-container .toggle-buttons .first-button:after{border-radius:.25rem 0 0 .25rem;border-radius:var(--pep-border-radius-md,.25rem) 0 0 var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .last-button,.group-buttons-container .dropdown-buttons .last-button:after,.group-buttons-container .split-buttons .last-button,.group-buttons-container .split-buttons .last-button:after,.group-buttons-container .toggle-buttons .last-button,.group-buttons-container .toggle-buttons .last-button:after{border-radius:0 .25rem .25rem 0;border-radius:0 var(--pep-border-radius-md,.25rem) var(--pep-border-radius-md,.25rem) 0}.group-buttons-container .dropdown-buttons .pep-button,.group-buttons-container .dropdown-buttons .pepperi-button,.group-buttons-container .split-buttons .pep-button,.group-buttons-container .split-buttons .pepperi-button,.group-buttons-container .toggle-buttons .pep-button,.group-buttons-container .toggle-buttons .pepperi-button{margin-top:0!important}.group-buttons-container .dropdown-buttons .pep-button.cdk-focused,.group-buttons-container .dropdown-buttons .pepperi-button.cdk-focused,.group-buttons-container .split-buttons .pep-button.cdk-focused,.group-buttons-container .split-buttons .pepperi-button.cdk-focused,.group-buttons-container .toggle-buttons .pep-button.cdk-focused,.group-buttons-container .toggle-buttons .pepperi-button.cdk-focused{z-index:2}@media (max-width:599px){.group-buttons-container .dropdown-buttons.dropup .first-button,.group-buttons-container .split-buttons.dropup .first-button,.group-buttons-container .toggle-buttons.dropup .first-button{max-width:200px;padding:0 .25rem}.group-buttons-container .dropdown-buttons.dropup .last-button,.group-buttons-container .split-buttons.dropup .last-button,.group-buttons-container .toggle-buttons.dropup .last-button{padding:0}}.group-buttons-container .split-buttons,.group-buttons-container .toggle-buttons{display:grid;grid-auto-flow:column}.group-buttons-container .split-buttons.stretch,.group-buttons-container .toggle-buttons.stretch{width:100%}.group-buttons-container .split-buttons .pep-button,.group-buttons-container .toggle-buttons .pep-button{max-width:unset}.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:-1px;margin-inline-end:-1px}.group-buttons-container .split-buttons .middle-button,.group-buttons-container .toggle-buttons .middle-button{border-radius:0;-webkit-margin-end:-1px;margin-inline-end:-1px}"]
48
+ styles: [".group-buttons-container{display:flex;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:1px;margin-inline-end:1px}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .dropdown-buttons .first-button:after,.group-buttons-container .split-buttons .first-button,.group-buttons-container .split-buttons .first-button:after,.group-buttons-container .toggle-buttons .first-button,.group-buttons-container .toggle-buttons .first-button:after{border-radius:.25rem 0 0 .25rem;border-radius:var(--pep-border-radius-md,.25rem) 0 0 var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .last-button,.group-buttons-container .dropdown-buttons .last-button:after,.group-buttons-container .split-buttons .last-button,.group-buttons-container .split-buttons .last-button:after,.group-buttons-container .toggle-buttons .last-button,.group-buttons-container .toggle-buttons .last-button:after{border-radius:0 .25rem .25rem 0;border-radius:0 var(--pep-border-radius-md,.25rem) var(--pep-border-radius-md,.25rem) 0}.group-buttons-container .dropdown-buttons .pep-button,.group-buttons-container .dropdown-buttons .pepperi-button,.group-buttons-container .split-buttons .pep-button,.group-buttons-container .split-buttons .pepperi-button,.group-buttons-container .toggle-buttons .pep-button,.group-buttons-container .toggle-buttons .pepperi-button{margin-top:0!important}.group-buttons-container .dropdown-buttons .pep-button.cdk-focused,.group-buttons-container .dropdown-buttons .pepperi-button.cdk-focused,.group-buttons-container .split-buttons .pep-button.cdk-focused,.group-buttons-container .split-buttons .pepperi-button.cdk-focused,.group-buttons-container .toggle-buttons .pep-button.cdk-focused,.group-buttons-container .toggle-buttons .pepperi-button.cdk-focused{z-index:2}@media (max-width:599px){.group-buttons-container .dropdown-buttons.dropup .first-button,.group-buttons-container .split-buttons.dropup .first-button,.group-buttons-container .toggle-buttons.dropup .first-button{max-width:200px;padding:0 .25rem}.group-buttons-container .dropdown-buttons.dropup .last-button,.group-buttons-container .split-buttons.dropup .last-button,.group-buttons-container .toggle-buttons.dropup .last-button{padding:0}}.group-buttons-container .split-buttons,.group-buttons-container .toggle-buttons{display:grid;grid-auto-flow:column}.group-buttons-container .split-buttons.stretch,.group-buttons-container .toggle-buttons.stretch{width:100%}.group-buttons-container .split-buttons .pep-button,.group-buttons-container .toggle-buttons .pep-button{max-width:unset}.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:-1px;margin-inline-end:-1px}.group-buttons-container .split-buttons .middle-button,.group-buttons-container .toggle-buttons .middle-button{border-radius:0;-webkit-margin-end:-1px;margin-inline-end:-1px}", ".group-buttons-container .toggle-buttons .is-selected.weak{background:#fafafa;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),98%);box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid hsl(0,0%,calc(10% + 30%));border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),calc(var(--pep-color-regular-l, 10%) + 30%))}.group-buttons-container .toggle-buttons .is-selected.weak:hover{background:#fafafa;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),98%);box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16);border:1px solid hsl(0,0%,calc(10% + 20%));border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),calc(var(--pep-color-regular-l, 10%) + 20%))}.group-buttons-container .toggle-buttons .is-selected.weak:focus{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16);box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.group-buttons-container .toggle-buttons .is-selected.weak:active,.group-buttons-container .toggle-buttons .is-selected.weak:focus{background:#e0e0e0;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),88%);border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),var(--pep-color-regular-l,10%))}.group-buttons-container .toggle-buttons .is-selected.weak:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.32);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.32)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled){box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:#e0e0e0!important;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),88%)!important;box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.04)!important;box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.04)!important;border:1px solid rgba(26,26,26,.08);border:1px solid hsla(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),var(--pep-color-regular-l,10%),.08)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled):after{border:unset}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled) .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled) .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.regular{background:rgba(26,26,26,.12);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.12)}.group-buttons-container .toggle-buttons .is-selected.regular:hover{background:rgba(26,26,26,.16);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.16)}.group-buttons-container .toggle-buttons .is-selected.regular:focus{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);position:relative;box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.group-buttons-container .toggle-buttons .is-selected.regular:focus:not(.keep-background-on-focus){background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}.group-buttons-container .toggle-buttons .is-selected.regular:focus:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%))}.group-buttons-container .toggle-buttons .is-selected.regular:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);position:relative}.group-buttons-container .toggle-buttons .is-selected.regular:active:not(.keep-background-on-focus){background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}.group-buttons-container .toggle-buttons .is-selected.regular:active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%))}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled){box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:rgba(26,26,26,.04)!important;background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.04)!important}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled):after{border:unset}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled) .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled) .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}"]
49
49
  },] }
50
50
  ];
51
51
  PepGroupButtonsComponent.ctorParameters = function () { return [
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-lib-group-buttons.umd.js","sources":["../../../projects/ngx-lib/group-buttons/group-buttons.component.ts","../../../projects/ngx-lib/group-buttons/group-buttons.module.ts","../../../projects/ngx-lib/group-buttons/public-api.ts","../../../projects/ngx-lib/group-buttons/pepperi-addons-ngx-lib-group-buttons.ts"],"sourcesContent":["import {\n Component,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport {\n PepLayoutService, PepScreenSizeType, PepStyleType, PepSizeType\n} from '@pepperi-addons/ngx-lib';\nimport {\n PepButton,\n IPepButtonClickEvent,\n} from '@pepperi-addons/ngx-lib/button';\n\nexport type PepGroupButtonsViewType = 'regular' | 'dropdown' | 'split' | 'toggle';\n@Component({\n selector: 'pep-group-buttons',\n templateUrl: './group-buttons.component.html',\n styleUrls: ['./group-buttons.component.scss'],\n})\nexport class PepGroupButtonsComponent implements OnDestroy {\n PepScreenSizeType = PepScreenSizeType;\n screenSize: PepScreenSizeType;\n\n @Input() viewType: PepGroupButtonsViewType = 'regular';\n @Input() styleType: PepStyleType = 'weak';\n @Input() sizeType: PepSizeType = 'md';\n @Input() buttons: Array<PepButton> = [];\n @Input() buttonsDisabled = false;\n @Input() selectedButtonKey = '';\n @Input() stretch = false;\n\n @Output()\n buttonClick: EventEmitter<IPepButtonClickEvent> = new EventEmitter<IPepButtonClickEvent>();\n\n\n constructor(public layoutService: PepLayoutService) {\n this.layoutService.onResize$.subscribe((size) => {\n this.screenSize = size;\n });\n }\n\n ngOnDestroy(): void {\n // if (this.buttonClick) {\n // this.buttonClick.unsubscribe();\n // }\n }\n\n onButtonClicked(event: Event, button: PepButton): void {\n this.selectedButtonKey = button?.key;\n\n const buttonClick = {\n source: button,\n event,\n };\n\n if (button?.callback) {\n button.callback(buttonClick);\n } else {\n this.buttonClick.emit(buttonClick);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconArrowUp,\n pepIconArrowDown,\n} from '@pepperi-addons/ngx-lib/icon';\n\nimport { PepGroupButtonsComponent } from './group-buttons.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules\n MatCommonModule,\n MatFormFieldModule,\n MatButtonModule,\n MatMenuModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n ],\n exports: [PepGroupButtonsComponent],\n declarations: [PepGroupButtonsComponent],\n})\nexport class PepGroupButtonsModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconArrowUp, pepIconArrowDown]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/group-buttons\n */\nexport * from './group-buttons.module';\nexport * from './group-buttons.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepScreenSizeType","EventEmitter","Component","PepLayoutService","Input","Output","pepIconArrowUp","pepIconArrowDown","NgModule","CommonModule","MatCommonModule","MatFormFieldModule","MatButtonModule","MatMenuModule","MatIconModule","PepNgxLibModule","PepIconModule","PepIconRegistry"],"mappings":";;;;;;;QAqCI,kCAAmB,aAA+B;YAAlD,iBAIC;YAJkB,kBAAa,GAAb,aAAa,CAAkB;YAflD,sBAAiB,GAAGA,wBAAiB,CAAC;YAG7B,aAAQ,GAA4B,SAAS,CAAC;YAC9C,cAAS,GAAiB,MAAM,CAAC;YACjC,aAAQ,GAAgB,IAAI,CAAC;YAC7B,YAAO,GAAqB,EAAE,CAAC;YAC/B,oBAAe,GAAG,KAAK,CAAC;YACxB,sBAAiB,GAAG,EAAE,CAAC;YACvB,YAAO,GAAG,KAAK,CAAC;YAGzB,gBAAW,GAAuC,IAAIC,iBAAY,EAAwB,CAAC;YAIvF,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,UAAC,IAAI;gBACxC,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;aAC1B,CAAC,CAAC;SACN;QAED,8CAAW,GAAX;;;;SAIC;QAED,kDAAe,GAAf,UAAgB,KAAY,EAAE,MAAiB;YAC3C,IAAI,CAAC,iBAAiB,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC;YAErC,IAAM,WAAW,GAAG;gBAChB,MAAM,EAAE,MAAM;gBACd,KAAK,OAAA;aACR,CAAC;YAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE;gBAClB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;aAChC;iBAAM;gBACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aACtC;SACJ;;;;gBA9CJC,cAAS,SAAC;oBACP,QAAQ,EAAE,mBAAmB;oBAC7B,i+IAA6C;;iBAEhD;;;gBAZGC,uBAAgB;;;2BAiBfC,UAAK;4BACLA,UAAK;2BACLA,UAAK;0BACLA,UAAK;kCACLA,UAAK;oCACLA,UAAK;0BACLA,UAAK;8BAELC,WAAM;;;;QCGP,+BAAoB,eAAgC;YAAhC,oBAAe,GAAf,eAAe,CAAiB;YAChD,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAACC,mBAAc,EAAEC,qBAAgB,CAAC,CAAC,CAAC;SAC1E;;;;gBAnBJC,aAAQ,SAAC;oBACN,OAAO,EAAE;wBACLC,mBAAY;;wBAEZC,sBAAe;wBACfC,4BAAkB;wBAClBC,sBAAe;wBACfC,kBAAa;wBACbC,oBAAa;;wBAEbC,sBAAe;wBACfC,kBAAa;qBAChB;oBACD,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,YAAY,EAAE,CAAC,wBAAwB,CAAC;iBAC3C;;;gBAtBGC,oBAAe;;;ICZnB;;;;ICAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"pepperi-addons-ngx-lib-group-buttons.umd.js","sources":["../../../projects/ngx-lib/group-buttons/group-buttons.component.ts","../../../projects/ngx-lib/group-buttons/group-buttons.module.ts","../../../projects/ngx-lib/group-buttons/public-api.ts","../../../projects/ngx-lib/group-buttons/pepperi-addons-ngx-lib-group-buttons.ts"],"sourcesContent":["import {\n Component,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport {\n PepLayoutService, PepScreenSizeType, PepStyleType, PepSizeType\n} from '@pepperi-addons/ngx-lib';\nimport {\n PepButton,\n IPepButtonClickEvent,\n} from '@pepperi-addons/ngx-lib/button';\n\nexport type PepGroupButtonsViewType = 'regular' | 'dropdown' | 'split' | 'toggle';\n@Component({\n selector: 'pep-group-buttons',\n templateUrl: './group-buttons.component.html',\n styleUrls: ['./group-buttons.component.scss', './group-buttons.component.theme.scss'],\n})\nexport class PepGroupButtonsComponent implements OnDestroy {\n PepScreenSizeType = PepScreenSizeType;\n screenSize: PepScreenSizeType;\n\n @Input() viewType: PepGroupButtonsViewType = 'regular';\n @Input() styleType: PepStyleType = 'weak';\n @Input() sizeType: PepSizeType = 'md';\n @Input() buttons: Array<PepButton> = [];\n @Input() buttonsDisabled = false;\n @Input() selectedButtonKey = '';\n @Input() stretch = false;\n\n @Output()\n buttonClick: EventEmitter<IPepButtonClickEvent> = new EventEmitter<IPepButtonClickEvent>();\n\n\n constructor(public layoutService: PepLayoutService) {\n this.layoutService.onResize$.subscribe((size) => {\n this.screenSize = size;\n });\n }\n\n ngOnDestroy(): void {\n // if (this.buttonClick) {\n // this.buttonClick.unsubscribe();\n // }\n }\n\n onButtonClicked(event: Event, button: PepButton): void {\n this.selectedButtonKey = button?.key;\n\n const buttonClick = {\n source: button,\n event,\n };\n\n if (button?.callback) {\n button.callback(buttonClick);\n } else {\n this.buttonClick.emit(buttonClick);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconArrowUp,\n pepIconArrowDown,\n} from '@pepperi-addons/ngx-lib/icon';\n\nimport { PepGroupButtonsComponent } from './group-buttons.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules\n MatCommonModule,\n MatFormFieldModule,\n MatButtonModule,\n MatMenuModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n ],\n exports: [PepGroupButtonsComponent],\n declarations: [PepGroupButtonsComponent],\n})\nexport class PepGroupButtonsModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconArrowUp, pepIconArrowDown]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/group-buttons\n */\nexport * from './group-buttons.module';\nexport * from './group-buttons.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepScreenSizeType","EventEmitter","Component","PepLayoutService","Input","Output","pepIconArrowUp","pepIconArrowDown","NgModule","CommonModule","MatCommonModule","MatFormFieldModule","MatButtonModule","MatMenuModule","MatIconModule","PepNgxLibModule","PepIconModule","PepIconRegistry"],"mappings":";;;;;;;QAqCI,kCAAmB,aAA+B;YAAlD,iBAIC;YAJkB,kBAAa,GAAb,aAAa,CAAkB;YAflD,sBAAiB,GAAGA,wBAAiB,CAAC;YAG7B,aAAQ,GAA4B,SAAS,CAAC;YAC9C,cAAS,GAAiB,MAAM,CAAC;YACjC,aAAQ,GAAgB,IAAI,CAAC;YAC7B,YAAO,GAAqB,EAAE,CAAC;YAC/B,oBAAe,GAAG,KAAK,CAAC;YACxB,sBAAiB,GAAG,EAAE,CAAC;YACvB,YAAO,GAAG,KAAK,CAAC;YAGzB,gBAAW,GAAuC,IAAIC,iBAAY,EAAwB,CAAC;YAIvF,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,UAAC,IAAI;gBACxC,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;aAC1B,CAAC,CAAC;SACN;QAED,8CAAW,GAAX;;;;SAIC;QAED,kDAAe,GAAf,UAAgB,KAAY,EAAE,MAAiB;YAC3C,IAAI,CAAC,iBAAiB,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,CAAC;YAErC,IAAM,WAAW,GAAG;gBAChB,MAAM,EAAE,MAAM;gBACd,KAAK,OAAA;aACR,CAAC;YAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE;gBAClB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;aAChC;iBAAM;gBACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aACtC;SACJ;;;;gBA9CJC,cAAS,SAAC;oBACP,QAAQ,EAAE,mBAAmB;oBAC7B,i+IAA6C;;iBAEhD;;;gBAZGC,uBAAgB;;;2BAiBfC,UAAK;4BACLA,UAAK;2BACLA,UAAK;0BACLA,UAAK;kCACLA,UAAK;oCACLA,UAAK;0BACLA,UAAK;8BAELC,WAAM;;;;QCGP,+BAAoB,eAAgC;YAAhC,oBAAe,GAAf,eAAe,CAAiB;YAChD,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAACC,mBAAc,EAAEC,qBAAgB,CAAC,CAAC,CAAC;SAC1E;;;;gBAnBJC,aAAQ,SAAC;oBACN,OAAO,EAAE;wBACLC,mBAAY;;wBAEZC,sBAAe;wBACfC,4BAAkB;wBAClBC,sBAAe;wBACfC,kBAAa;wBACbC,oBAAa;;wBAEbC,sBAAe;wBACfC,kBAAa;qBAChB;oBACD,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,YAAY,EAAE,CAAC,wBAAwB,CAAC;iBAC3C;;;gBAtBGC,oBAAe;;;ICZnB;;;;ICAA;;;;;;;;;;;;;"}
@@ -105,6 +105,7 @@
105
105
  this.form = null;
106
106
  this.uid = '';
107
107
  this.showTitle = true;
108
+ this.renderTitle = true;
108
109
  this._layoutType = 'form';
109
110
  this.isActive = false;
110
111
  this.sizeLimitMB = 5;
@@ -159,6 +160,9 @@
159
160
  this.setFieldHeight();
160
161
  this.setDefaultForm();
161
162
  this.renderer.addClass(this.element.nativeElement, i2.PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
163
+ if (!this.renderTitle) {
164
+ this.renderer.addClass(this.element.nativeElement, i2.PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
165
+ }
162
166
  }
163
167
  };
164
168
  PepImageComponent.prototype.setFieldHeight = function () {
@@ -265,9 +269,9 @@
265
269
  PepImageComponent.decorators = [
266
270
  { type: i0.Component, args: [{
267
271
  selector: 'pep-image',
268
- template: "<ng-container [formGroup]=\"form\">\n <ng-container>\n <ng-template #readonlyTemplate>\n <div class=\"img-wrapper\" [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center'\n }\">\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <pep-field-title [label]=\"label\" [mandatory]=\"mandatory\" [disabled]=\"disabled\" [xAlignment]=\"xAlignment\"\n [showTitle]=\"showTitle\">\n </pep-field-title>\n <ng-container *ngIf=\"disabled || readonly; then disabledTemplate; else editableTemplate\"></ng-container>\n <ng-template #disabledTemplate>\n <div class=\"pep-file body-sm\" [style.height]=\"fieldHeight\" [ngClass]=\"{'one-row': rowSpan == 1}\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n </div>\n </ng-template>\n <ng-template #editableTemplate>\n <div class=\"pep-file-container image-container\" [ngClass]=\"{ 'one-row': rowSpan == 1}\">\n <pep-files-uploader [id]=\"key\" [key]=\"key\" [fieldHeight]=\"fieldHeight\" [layoutType]=\"layoutType\"\n [standAlone]=\"standAlone\" [src]=\"srcLarge || src\" [label]=\"label\" [mandatory]=\"mandatory\"\n [disabled]=\"disabled\" [xAlignment]=\"xAlignment\" [rowSpan]=\"rowSpan\" [controlType]=\"controlType\"\n [form]=\"form\" [acceptedExtensions]=\"acceptImagesType\" (fileChange)=\"onFileChanged($event)\"\n (elementClick)=\"onFileClicked($event)\" [sizeLimitMB]=\"sizeLimitMB\">\n </pep-files-uploader>\n </div>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n <!-- <div class=\"img-wrapper\"\n [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center'\n }\">\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" />\n </div> -->\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n <!-- <div class=\"img-wrapper\" [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center'\n }\">\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file pep-report-img\"\n [ngClass]=\"['text-align-' + xAlignment]\" [alt]=\"label\" [src]=\"src\" (click)=\"itemImageClick($event)\"\n (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\n </div> -->\n </ng-container>\n </ng-container>\n\n <!-- Menu -->\n <ng-container *ngIf=\"menuField\">\n <button [id]=\"key\" (click)=\"onMenuClick($event)\" class=\"floating-field pep-button icon-button weak invert\"\n [ngClass]=\"{\n bottom: menuField?.Layout?.YAlignment == '2',\n top: menuField?.Layout?.YAlignment == '1',\n left: menuField?.Layout?.XAlignment == '1',\n right: menuField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon>\n <pep-icon name=\"system_menu\"></pep-icon>\n </mat-icon>\n </button>\n </ng-container>\n\n <!-- Campaign -->\n <ng-container *ngIf=\"hasCampaignField && hasCampaignField?.FormattedValue\">\n <span [id]=\"key\" class=\"campaign floating-field\" title=\"{{ hasCampaignField?.FormattedValue }}\" [ngClass]=\"{\n bottom: hasCampaignField?.Layout?.YAlignment == '2',\n top: hasCampaignField?.Layout?.YAlignment == '1',\n left: hasCampaignField?.Layout?.XAlignment == '1',\n right: hasCampaignField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon class=\"has-active-campaign\">\n <pep-icon name=\"system_bolt\"></pep-icon>\n </mat-icon>\n </span>\n </ng-container>\n\n <!-- Indicators -->\n <ng-container *ngIf=\"indicatorsField && indicatorsField?.FormattedValue != ''\">\n <span [id]=\"key\" class=\"indicators-container floating-field\" [ngClass]=\"{\n bottom: indicatorsField?.Layout?.YAlignment == '2',\n top: indicatorsField?.Layout?.YAlignment == '1',\n left: indicatorsField?.Layout?.XAlignment == '1',\n right: indicatorsField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon>\n <ng-container *ngFor=\"let value of indicatorsField?.FormattedValue?.split(';')\">\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\" [fill]=\"value\"></pep-icon>\n </ng-container>\n <ng-container *ngIf=\"indicatorsField?.FormattedValue?.split(';').length < 4\">\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\"></pep-icon>\n </ng-container>\n </mat-icon>\n </span>\n </ng-container>\n</ng-container>",
272
+ template: "<ng-container [formGroup]=\"form\">\n <ng-container>\n <ng-template #readonlyTemplate>\n <div class=\"img-wrapper\" [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center'\n }\">\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [mandatory]=\"mandatory\" [disabled]=\"disabled\"\n [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\n </pep-field-title>\n <ng-container *ngIf=\"disabled || readonly; then disabledTemplate; else editableTemplate\"></ng-container>\n <ng-template #disabledTemplate>\n <div class=\"pep-file body-sm\" [style.height]=\"fieldHeight\" [ngClass]=\"{'one-row': rowSpan == 1}\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n </div>\n </ng-template>\n <ng-template #editableTemplate>\n <div class=\"pep-file-container image-container\" [ngClass]=\"{ 'one-row': rowSpan == 1}\">\n <pep-files-uploader [id]=\"key\" [key]=\"key\" [fieldHeight]=\"fieldHeight\" [layoutType]=\"layoutType\"\n [standAlone]=\"standAlone\" [src]=\"srcLarge || src\" [label]=\"label\" [mandatory]=\"mandatory\"\n [disabled]=\"disabled\" [xAlignment]=\"xAlignment\" [rowSpan]=\"rowSpan\" [controlType]=\"controlType\"\n [form]=\"form\" [acceptedExtensions]=\"acceptImagesType\" (fileChange)=\"onFileChanged($event)\"\n (elementClick)=\"onFileClicked($event)\" [sizeLimitMB]=\"sizeLimitMB\">\n </pep-files-uploader>\n </div>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Menu -->\n <ng-container *ngIf=\"menuField\">\n <button [id]=\"key\" (click)=\"onMenuClick($event)\" class=\"floating-field pep-button icon-button weak invert\"\n [ngClass]=\"{\n bottom: menuField?.Layout?.YAlignment == '2',\n top: menuField?.Layout?.YAlignment == '1',\n left: menuField?.Layout?.XAlignment == '1',\n right: menuField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon>\n <pep-icon name=\"system_menu\"></pep-icon>\n </mat-icon>\n </button>\n </ng-container>\n\n <!-- Campaign -->\n <ng-container *ngIf=\"hasCampaignField && hasCampaignField?.FormattedValue\">\n <span [id]=\"key\" class=\"campaign floating-field\" title=\"{{ hasCampaignField?.FormattedValue }}\" [ngClass]=\"{\n bottom: hasCampaignField?.Layout?.YAlignment == '2',\n top: hasCampaignField?.Layout?.YAlignment == '1',\n left: hasCampaignField?.Layout?.XAlignment == '1',\n right: hasCampaignField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon class=\"has-active-campaign\">\n <pep-icon name=\"system_bolt\"></pep-icon>\n </mat-icon>\n </span>\n </ng-container>\n\n <!-- Indicators -->\n <ng-container *ngIf=\"indicatorsField && indicatorsField?.FormattedValue != ''\">\n <span [id]=\"key\" class=\"indicators-container floating-field\" [ngClass]=\"{\n bottom: indicatorsField?.Layout?.YAlignment == '2',\n top: indicatorsField?.Layout?.YAlignment == '1',\n left: indicatorsField?.Layout?.XAlignment == '1',\n right: indicatorsField?.Layout?.XAlignment == '2'\n }\">\n <mat-icon>\n <ng-container *ngFor=\"let value of indicatorsField?.FormattedValue?.split(';')\">\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\" [fill]=\"value\"></pep-icon>\n </ng-container>\n <ng-container *ngIf=\"indicatorsField?.FormattedValue?.split(';').length < 4\">\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\"></pep-icon>\n </ng-container>\n </mat-icon>\n </span>\n </ng-container>\n</ng-container>",
269
273
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
270
- styles: [":host{width:100%;height:inherit;display:grid}:host>*{align-self:center}.img-wrapper{display:flex;align-items:center;height:100%;max-width:100%}.img-wrapper.left-alignment{justify-content:flex-start}.img-wrapper.center-alignment{justify-content:center}.img-wrapper.right-alignment{justify-content:flex-end}.img-wrapper img{max-width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pep-file-container,.pepperi-file-container{height:100%}.pep-file-container .img-wrapper,.pepperi-file-container .img-wrapper{height:calc(100% - 1.5rem)}.pep-file-container img,.pepperi-file-container img{cursor:pointer}.indicators-container{padding:0!important}.indicators-container mat-icon{height:100%;width:100%;padding:.4rem}.indicators-container mat-icon pep-icon{height:.75rem!important;width:.75rem!important;margin:.05rem}.floating-field{width:2.5rem;height:2.5rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;cursor:pointer;position:absolute!important}.top{top:0}.bottom{bottom:0}.left{left:0}.right{right:0}"]
274
+ styles: [":host{width:100%;height:inherit;display:grid}:host>*{align-self:center}.img-wrapper{display:flex;align-items:center;height:100%;max-width:100%}.img-wrapper.left-alignment{justify-content:flex-start}.img-wrapper.center-alignment{justify-content:center}.img-wrapper.right-alignment{justify-content:flex-end}.img-wrapper img{max-width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pep-file-container,.pepperi-file-container{height:100%}.pep-file-container .img-wrapper,.pepperi-file-container .img-wrapper{height:calc(100% - 1.5rem)}.pep-file-container img,.pepperi-file-container img{cursor:pointer}.indicators-container{padding:0!important}.indicators-container mat-icon{height:100%;width:100%;padding:.4rem}.indicators-container mat-icon pep-icon{height:.75rem!important;width:.75rem!important;margin:.05rem}.floating-field{width:2.5rem;height:2.5rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;cursor:pointer;position:absolute!important}.top{top:0}.bottom{bottom:0}.left{left:0}.right{right:0}", ".indicators-container .circle{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid hsl(0,0%,calc(10% + 20%));border:1px solid hsl(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),calc(var(--pep-color-system-primary-l, 10%) + 20%))}.floating-field.has-active-campaign .svg-icon{fill:#e60000;fill:hsl(var(--pep-color-system-caution-h,360),var(--pep-color-system-caution-s,100%),var(--pep-color-system-caution-l,45%))}.floating-field.indicators-container{background:hsla(0,0%,100%,.5);background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.5)}.floating-field.indicators-container:hover{cursor:inherit}.image-container .mat-form-field-disabled .mat-form-field-flex{background:transparent!important}"]
271
275
  },] }
272
276
  ];
273
277
  PepImageComponent.ctorParameters = function () { return [
@@ -296,6 +300,7 @@
296
300
  form: [{ type: i0.Input }],
297
301
  uid: [{ type: i0.Input }],
298
302
  showTitle: [{ type: i0.Input }],
303
+ renderTitle: [{ type: i0.Input }],
299
304
  layoutType: [{ type: i0.Input }],
300
305
  isActive: [{ type: i0.Input }],
301
306
  sizeLimitMB: [{ type: i0.Input }],
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-lib-image.umd.js","sources":["../../../projects/ngx-lib/image/image.service.ts","../../../projects/ngx-lib/image/image.component.ts","../../../projects/ngx-lib/image/image.module.ts","../../../projects/ngx-lib/image/public-api.ts","../../../projects/ngx-lib/image/pepperi-addons-ngx-lib-image.ts"],"sourcesContent":["import { Injectable, TemplateRef } from '@angular/core';\r\nimport {\r\n PepFileService,\r\n PepCustomizationService,\r\n IPepOption,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { PepImagesFilmstripComponent } from '@pepperi-addons/ngx-lib/images-filmstrip';\r\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepImageService {\r\n constructor(\r\n private dialogService: PepDialogService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n ) { }\r\n\r\n openImageDialog(imageSrc: string, options: IPepOption[], title = ''): void {\r\n const arr = [imageSrc].concat(\r\n (options || []).map((opt) => opt.value)\r\n );\r\n const imagesValue = arr.join(';');\r\n\r\n // Show image in modal.\r\n const config = this.dialogService.getDialogConfig({}, 'inline');\r\n config.maxWidth = '75vw';\r\n config.height = '95vh';\r\n\r\n this.dialogService.openDialog(\r\n PepImagesFilmstripComponent,\r\n {\r\n currIndex: 0,\r\n key: new Date().getDate(),\r\n value: imagesValue,\r\n label: title,\r\n uid: '',\r\n showThumbnails: arr.length > 1,\r\n },\r\n config\r\n );\r\n }\r\n\r\n openFromURI(event: IPepFileChangeEvent) {\r\n if (event) {\r\n const fileStrArr = event.fileStr.split(';');\r\n if (fileStrArr.length === 2) {\r\n const win = window.open('', '_blank');\r\n const contentType = fileStrArr[0].split(':')[1];\r\n const base64 = fileStrArr[1].split(',')[1];\r\n const blob = this.fileService.convertFromb64toBlob(\r\n base64,\r\n contentType\r\n );\r\n const url = URL.createObjectURL(blob);\r\n win.location.href = url;\r\n }\r\n }\r\n }\r\n}\r\n","import {\n Component,\n OnInit,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n ElementRef,\n OnDestroy,\n Renderer2,\n Optional,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepFileService,\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n IPepFieldClickEvent,\n IPepOption,\n PepImageField,\n} from '@pepperi-addons/ngx-lib';\n\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\nimport { PepImageService } from './image.service';\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\n\n@Component({\n selector: 'pep-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepImageComponent implements OnChanges, OnInit, OnDestroy {\n public static MENU_CLICKED = '[MenuClicked]';\n\n @Input() key = '';\n @Input() srcLarge = '';\n @Input() src = '';\n @Input() options: IPepOption[] = [];\n @Input() label = '';\n // @Input() type = 'image';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n private _rowSpan = 1;\n @Input()\n set rowSpan(value) {\n this._rowSpan = value;\n this.setFieldHeight();\n }\n get rowSpan(): number {\n return this._rowSpan;\n }\n\n @Input() indicatorsField: any = null;\n @Input() menuField: any = null;\n @Input() hasCampaignField: any = null;\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'image';\n\n @Input() form: FormGroup = null;\n @Input() uid = '';\n @Input() showTitle = true;\n\n private _layoutType: PepLayoutType = 'form';\n @Input()\n set layoutType(value: PepLayoutType) {\n this._layoutType = value;\n this.setFieldHeight();\n }\n get layoutType(): PepLayoutType {\n return this._layoutType;\n }\n\n @Input() isActive = false;\n @Input() sizeLimitMB = 5;\n @Input() acceptImagesType = 'bmp,jpg,jpeg,png,gif'; // \"image/bmp, image/jpg, image/jpeg, image/png, image/tif, image/tiff\";\n\n @Output()\n fileChange: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\n\n fieldHeight = '';\n standAlone = false;\n dataURI = null;\n\n constructor(\n private imageService: PepImageService,\n private customizationService: PepCustomizationService,\n private fileService: PepFileService,\n private renderer: Renderer2,\n private element: ElementRef,\n private translate: TranslateService\n ) { }\n\n ngOnInit(): void {\n if (this.form === null) {\n this.standAlone = true;\n this.setFieldHeight();\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n }\n }\n\n private setFieldHeight(): void {\n this.fieldHeight = this.customizationService.calculateFieldHeight(\n this.layoutType,\n this.rowSpan,\n this.standAlone\n );\n }\n\n private setDefaultForm(): void {\n const pepField = new PepImageField({\n key: this.key,\n value: this.src,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnChanges(changes: any): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n\n if (changes.src?.currentValue?.length > 0) {\n // Empty dataURI if there is change in the src.\n this.dataURI = null;\n }\n }\n\n ngOnDestroy(): void {\n //\n }\n\n errorHandler(event: any): void {\n event.target.src = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n event.target.title = this.translate.instant('IMAGE.NO_IMAGE');\n }\n\n onImageLoad(event: any): void {\n event.target.style.visibility = 'visible';\n event.target.title =\n event.target.title.length === 0\n ? this.translate.instant('IMAGE.CLICK_TO_ENLARGE')\n : event.target.title;\n }\n\n onMenuClick(event: any): void {\n this.elementClick.emit({\n key: this.key,\n value: PepImageComponent.MENU_CLICKED,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n }\n\n onFileChanged(fileData: IPepFileChangeEvent): void {\n this.dataURI = fileData;\n this.src = this.srcLarge =\n this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\n\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n this.dataURI ? this.dataURI.fileExt : ''\n );\n // this.valueChange.emit({\n // key: this.key,\n // value,\n // });\n\n this.fileChange.emit(fileData);\n // this.fileChange.emit(value.length > 0 ? JSON.parse(value) : value);\n }\n\n objectIdIsNotEmpty(): boolean {\n return this.uid?.length > 0 && this.uid !== '0';\n }\n\n onFileClicked(event: IPepFieldClickEvent): void {\n let hasParentImage = true;\n if (\n // this.objectIdIsNotEmpty() &&\n this.src &&\n this.src.indexOf('no-image') > -1\n ) {\n hasParentImage = false;\n }\n\n this.elementClick.emit(event);\n }\n\n itemImageClick(event: any): void {\n let hasParentImage = true;\n const elemTarget = event.target || event.srcElement;\n const nextElement = elemTarget.nextElementSibling || null;\n const imageSRC = elemTarget.src || null;\n const nextElementSRC =\n nextElement && nextElement.src ? nextElement.src : null;\n\n if (\n (imageSRC && imageSRC.indexOf('no-image') > -1) ||\n (nextElementSRC && nextElementSRC.src.indexOf('no-image') > -1)\n ) {\n hasParentImage = false;\n }\n\n // this.openImageModal(hasParentImage);\n // if (this.dataURI) {\n // this.imageService.openFromURI(this.dataURI);\n // } else {\n // this.imageService.openImageDialog(this.srcLarge || this.src, this.options, this.label);\n // }\n\n this.elementClick.emit({\n key: this.key,\n controlType: this.controlType,\n eventWhich: event.which,\n otherData: {\n imageSrc: this.srcLarge || this.src,\n options: this.options,\n title: this.label\n }\n });\n }\n\n // openImageModal(hasParentImage: boolean): void {\n // if (this.dataURI) {\n // const fileStrArr = this.dataURI.fileStr.split(';');\n // if (fileStrArr.length === 2) {\n // const win = window.open('', '_blank');\n // const contentType = fileStrArr[0].split(':')[1];\n // const base64 = fileStrArr[1].split(',')[1];\n // const blob = this.fileService.convertFromb64toBlob(\n // base64,\n // contentType\n // );\n // const url = URL.createObjectURL(blob);\n // win.location.href = url;\n // }\n // } else {\n // const arr = [this.srcLarge || this.src].concat(\n // (this.options || []).map((opt) => opt.value)\n // );\n // const imagesValue = arr.join(';');\n\n // // Show image in modal.\n // const config = this.dialogService.getDialogConfig({}, 'inline');\n // config.maxWidth = '75vw';\n // config.height = '95vh';\n\n // this.dialogService.openDialog(\n // PepImagesFilmstripComponent,\n // {\n // currIndex: 0,\n // key: this.key,\n // value: imagesValue,\n // label: this.label,\n // uid: this.uid,\n // showThumbnails: arr.length > 1,\n // },\n // config\n // );\n // }\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport { PepFilesUploaderModule } from '@pepperi-addons/ngx-lib/files-uploader';\nimport {\n PepImagesFilmstripModule,\n PepImagesFilmstripComponent,\n} from '@pepperi-addons/ngx-lib/images-filmstrip';\n\nimport { PepImageComponent } from './image.component';\nimport { PepImageService } from './image.service';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepImagesFilmstripModule,\n PepFilesUploaderModule,\n ],\n exports: [PepImageComponent],\n declarations: [PepImageComponent],\n entryComponents: [PepImagesFilmstripComponent],\n providers: [PepImageService]\n})\nexport class PepImageModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/image\n */\nexport * from './image.module';\nexport * from './image.component';\nexport * from './image.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepImagesFilmstripComponent","Injectable","PepDialogService","PepCustomizationService","PepFileService","DEFAULT_HORIZONTAL_ALIGNMENT","EventEmitter","PepImageField","pepIconNoImage2","Component","ChangeDetectionStrategy","Renderer2","ElementRef","TranslateService","Input","Output","pepIconSystemMenu","pepIconSystemBolt","pepIconIndicatorDotPlaceholder","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatIconModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepImagesFilmstripModule","PepFilesUploaderModule","PepIconRegistry"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAcI,yBACY,aAA+B,EAC/B,oBAA6C,EAC7C,WAA2B;YAF3B,kBAAa,GAAb,aAAa,CAAkB;YAC/B,yBAAoB,GAApB,oBAAoB,CAAyB;YAC7C,gBAAW,GAAX,WAAW,CAAgB;SAClC;QAEL,yCAAe,GAAf,UAAgB,QAAgB,EAAE,OAAqB,EAAE,KAAU;YAAV,sBAAA,EAAA,UAAU;YAC/D,IAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CACzB,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,KAAK,GAAA,CAAC,CAC1C,CAAC;YACF,IAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;YAGlC,IAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAChE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;YACzB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YAEvB,IAAI,CAAC,aAAa,CAAC,UAAU,CACzBA,2CAA2B,EAC3B;gBACI,SAAS,EAAE,CAAC;gBACZ,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;gBACzB,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,KAAK;gBACZ,GAAG,EAAE,EAAE;gBACP,cAAc,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC;aACjC,EACD,MAAM,CACT,CAAC;SACL;QAED,qCAAW,GAAX,UAAY,KAA0B;YAClC,IAAI,KAAK,EAAE;gBACP,IAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;oBACzB,IAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACtC,IAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChD,IAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3C,IAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAC9C,MAAM,EACN,WAAW,CACd,CAAC;oBACF,IAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;iBAC3B;aACJ;SACJ;;;;;gBAlDJC,aAAU,SAAC;oBACR,UAAU,EAAE,MAAM;iBACrB;;;gBANQC,mBAAgB;gBAHrBC,0BAAuB;gBADvBC,iBAAc;;;;QCiHd,2BACY,YAA6B,EAC7B,oBAA6C,EAC7C,WAA2B,EAC3B,QAAmB,EACnB,OAAmB,EACnB,SAA2B;YAL3B,iBAAY,GAAZ,YAAY,CAAiB;YAC7B,yBAAoB,GAApB,oBAAoB,CAAyB;YAC7C,gBAAW,GAAX,WAAW,CAAgB;YAC3B,aAAQ,GAAR,QAAQ,CAAW;YACnB,YAAO,GAAP,OAAO,CAAY;YACnB,cAAS,GAAT,SAAS,CAAkB;YAjF9B,QAAG,GAAG,EAAE,CAAC;YACT,aAAQ,GAAG,EAAE,CAAC;YACd,QAAG,GAAG,EAAE,CAAC;YACT,YAAO,GAAiB,EAAE,CAAC;YAC3B,UAAK,GAAG,EAAE,CAAC;;YAEX,cAAS,GAAG,KAAK,CAAC;YAClB,aAAQ,GAAG,KAAK,CAAC;YACjB,aAAQ,GAAG,KAAK,CAAC;YACjB,eAAU,GAA2BC,+BAA4B,CAAC;YAEnE,aAAQ,GAAG,CAAC,CAAC;YAUZ,oBAAe,GAAQ,IAAI,CAAC;YAC5B,cAAS,GAAQ,IAAI,CAAC;YACtB,qBAAgB,GAAQ,IAAI,CAAC;YAE9B,aAAQ,GAAG,IAAI,CAAC;YAoBxB,gBAAW,GAAG,OAAO,CAAC;YAEb,SAAI,GAAc,IAAI,CAAC;YACvB,QAAG,GAAG,EAAE,CAAC;YACT,cAAS,GAAG,IAAI,CAAC;YAElB,gBAAW,GAAkB,MAAM,CAAC;YAUnC,aAAQ,GAAG,KAAK,CAAC;YACjB,gBAAW,GAAG,CAAC,CAAC;YAChB,qBAAgB,GAAG,sBAAsB,CAAC;YAGnD,eAAU,GAAsB,IAAIC,eAAY,EAAO,CAAC;YAGxD,iBAAY,GAAsC,IAAIA,eAAY,EAAuB,CAAC;YAE1F,gBAAW,GAAG,EAAE,CAAC;YACjB,eAAU,GAAG,KAAK,CAAC;YACnB,YAAO,GAAG,IAAI,CAAC;SASV;QAtEL,sBACI,sCAAO;iBAIX;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;aACxB;iBAPD,UACY,KAAK;gBACb,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,cAAc,EAAE,CAAC;aACzB;;;WAAA;QAUD,sBACI,sCAAO;iBAcX;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;aACxB;iBAjBD,UACY,OAAgB;gBACxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;gBACxB,IAAI,OAAO,EAAE;oBACT,IAAI,CAAC,QAAQ,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,gBAAgB,CACnB,CAAC;iBACL;qBAAM;oBACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,gBAAgB,CACnB,CAAC;iBACL;aACJ;;;WAAA;QAYD,sBACI,yCAAU;iBAId;gBACI,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;iBAPD,UACe,KAAoB;gBAC/B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBACzB,IAAI,CAAC,cAAc,EAAE,CAAC;aACzB;;;WAAA;QA4BD,oCAAQ,GAAR;YACI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;gBACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,EAAE,CAAC;gBAEtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1BH,0BAAuB,CAAC,4BAA4B,CACvD,CAAC;aACL;SACJ;QAEO,0CAAc,GAAd;YACJ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAC7D,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,CAClB,CAAC;SACL;QAEO,0CAAc,GAAd;YACJ,IAAM,QAAQ,GAAG,IAAII,gBAAa,CAAC;gBAC/B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,KAAK,EAAE,IAAI,CAAC,GAAG;gBACf,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;SACvE;QAED,uCAAW,GAAX,UAAY,OAAY;;YACpB,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjB,IAAI,CAAC,cAAc,EAAE,CAAC;aACzB;YAED,IAAI,CAAA,MAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,YAAY,0CAAE,MAAM,IAAG,CAAC,EAAE;;gBAEvC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aACvB;SACJ;QAED,uCAAW,GAAX;;SAEC;QAED,wCAAY,GAAZ,UAAa,KAAU;YACnB,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAChDC,oBAAe,CAAC,IAAI,CACvB,CAAC;YACF,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACjE;QAED,uCAAW,GAAX,UAAY,KAAU;YAClB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;YAC1C,KAAK,CAAC,MAAM,CAAC,KAAK;gBACd,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;sBACzB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,wBAAwB,CAAC;sBAChD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;SAChC;QAED,uCAAW,GAAX,UAAY,KAAU;YAClB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,KAAK,EAAE,iBAAiB,CAAC,YAAY;gBACrC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE,KAAK,CAAC,KAAK;aAC1B,CAAC,CAAC;SACN;QAED,yCAAa,GAAb,UAAc,QAA6B;YACvC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;YACxB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ;gBACpB,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;YAEhE,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAC1C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAC3C,CAAC;;;;;YAMF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;SAElC;QAED,8CAAkB,GAAlB;;YACI,OAAO,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,MAAM,IAAG,CAAC,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;SACnD;QAED,yCAAa,GAAb,UAAc,KAA0B;YACpC,IAAI,cAAc,GAAG,IAAI,CAAC;YAC1B;;YAEI,IAAI,CAAC,GAAG;gBACR,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EACnC;gBACE,cAAc,GAAG,KAAK,CAAC;aAC1B;YAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjC;QAED,0CAAc,GAAd,UAAe,KAAU;YACrB,IAAI,cAAc,GAAG,IAAI,CAAC;YAC1B,IAAM,UAAU,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC;YACpD,IAAM,WAAW,GAAG,UAAU,CAAC,kBAAkB,IAAI,IAAI,CAAC;YAC1D,IAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC;YACxC,IAAM,cAAc,GAChB,WAAW,IAAI,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC;YAE5D,IACI,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;iBAC7C,cAAc,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EACjE;gBACE,cAAc,GAAG,KAAK,CAAC;aAC1B;;;;;;;YASD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE,KAAK,CAAC,KAAK;gBACvB,SAAS,EAAE;oBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG;oBACnC,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;iBACpB;aACJ,CAAC,CAAC;SACN;;;IAjOa,8BAAY,GAAG,eAAe,CAAC;;gBAPhDC,YAAS,SAAC;oBACP,QAAQ,EAAE,WAAW;oBACrB,+9LAAqC;oBAErC,eAAe,EAAEC,0BAAuB,CAAC,MAAM;;iBAClD;;;gBARQ,eAAe;gBATpBP,0BAAuB;gBAFvBC,iBAAc;gBANdO,YAAS;gBAFTC,aAAU;gBAMLC,qBAAgB;;;sBAyBpBC,QAAK;2BACLA,QAAK;sBACLA,QAAK;0BACLA,QAAK;wBACLA,QAAK;4BAELA,QAAK;2BACLA,QAAK;2BACLA,QAAK;6BACLA,QAAK;0BAGLA,QAAK;kCASLA,QAAK;4BACLA,QAAK;mCACLA,QAAK;0BAGLA,QAAK;uBAqBLA,QAAK;sBACLA,QAAK;4BACLA,QAAK;6BAGLA,QAAK;2BASLA,QAAK;8BACLA,QAAK;mCACLA,QAAK;6BAELC,SAAM;+BAGNA,SAAM;;;;QC7DP,wBAAoB,eAAgC;YAAhC,oBAAe,GAAf,eAAe,CAAiB;YAChD,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;gBAC/BC,sBAAiB;gBACjBC,sBAAiB;gBACjBC,mCAA8B;aACjC,CAAC,CAAC;SACN;;;;gBA3BJC,WAAQ,SAAC;oBACN,OAAO,EAAE;wBACLC,mBAAY;wBACZC,yBAAmB;;wBAEnBC,sBAAe;wBACfC,4BAAkB;wBAClBC,oBAAa;;wBAEbC,kBAAe;wBACfC,kBAAa;wBACbC,8BAAmB;wBACnBC,wCAAwB;wBACxBC,oCAAsB;qBACzB;oBACD,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,eAAe,EAAE,CAAC7B,2CAA2B,CAAC;oBAC9C,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC/B;;;gBAlCG8B,oBAAe;;;ICXnB;;;;ICAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"pepperi-addons-ngx-lib-image.umd.js","sources":["../../../projects/ngx-lib/image/image.service.ts","../../../projects/ngx-lib/image/image.component.ts","../../../projects/ngx-lib/image/image.module.ts","../../../projects/ngx-lib/image/public-api.ts","../../../projects/ngx-lib/image/pepperi-addons-ngx-lib-image.ts"],"sourcesContent":["import { Injectable, TemplateRef } from '@angular/core';\r\nimport {\r\n PepFileService,\r\n PepCustomizationService,\r\n IPepOption,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { PepImagesFilmstripComponent } from '@pepperi-addons/ngx-lib/images-filmstrip';\r\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepImageService {\r\n constructor(\r\n private dialogService: PepDialogService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n ) { }\r\n\r\n openImageDialog(imageSrc: string, options: IPepOption[], title = ''): void {\r\n const arr = [imageSrc].concat(\r\n (options || []).map((opt) => opt.value)\r\n );\r\n const imagesValue = arr.join(';');\r\n\r\n // Show image in modal.\r\n const config = this.dialogService.getDialogConfig({}, 'inline');\r\n config.maxWidth = '75vw';\r\n config.height = '95vh';\r\n\r\n this.dialogService.openDialog(\r\n PepImagesFilmstripComponent,\r\n {\r\n currIndex: 0,\r\n key: new Date().getDate(),\r\n value: imagesValue,\r\n label: title,\r\n uid: '',\r\n showThumbnails: arr.length > 1,\r\n },\r\n config\r\n );\r\n }\r\n\r\n openFromURI(event: IPepFileChangeEvent) {\r\n if (event) {\r\n const fileStrArr = event.fileStr.split(';');\r\n if (fileStrArr.length === 2) {\r\n const win = window.open('', '_blank');\r\n const contentType = fileStrArr[0].split(':')[1];\r\n const base64 = fileStrArr[1].split(',')[1];\r\n const blob = this.fileService.convertFromb64toBlob(\r\n base64,\r\n contentType\r\n );\r\n const url = URL.createObjectURL(blob);\r\n win.location.href = url;\r\n }\r\n }\r\n }\r\n}\r\n","import {\n Component,\n OnInit,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n ElementRef,\n OnDestroy,\n Renderer2,\n Optional,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepFileService,\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n IPepFieldClickEvent,\n IPepOption,\n PepImageField,\n} from '@pepperi-addons/ngx-lib';\n\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\nimport { PepImageService } from './image.service';\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\n\n@Component({\n selector: 'pep-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss', './image.component.theme.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepImageComponent implements OnChanges, OnInit, OnDestroy {\n public static MENU_CLICKED = '[MenuClicked]';\n\n @Input() key = '';\n @Input() srcLarge = '';\n @Input() src = '';\n @Input() options: IPepOption[] = [];\n @Input() label = '';\n // @Input() type = 'image';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n private _rowSpan = 1;\n @Input()\n set rowSpan(value) {\n this._rowSpan = value;\n this.setFieldHeight();\n }\n get rowSpan(): number {\n return this._rowSpan;\n }\n\n @Input() indicatorsField: any = null;\n @Input() menuField: any = null;\n @Input() hasCampaignField: any = null;\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'image';\n\n @Input() form: FormGroup = null;\n @Input() uid = '';\n @Input() showTitle = true;\n @Input() renderTitle = true;\n\n private _layoutType: PepLayoutType = 'form';\n @Input()\n set layoutType(value: PepLayoutType) {\n this._layoutType = value;\n this.setFieldHeight();\n }\n get layoutType(): PepLayoutType {\n return this._layoutType;\n }\n\n @Input() isActive = false;\n @Input() sizeLimitMB = 5;\n @Input() acceptImagesType = 'bmp,jpg,jpeg,png,gif'; // \"image/bmp, image/jpg, image/jpeg, image/png, image/tif, image/tiff\";\n\n @Output()\n fileChange: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\n\n fieldHeight = '';\n standAlone = false;\n dataURI = null;\n\n constructor(\n private imageService: PepImageService,\n private customizationService: PepCustomizationService,\n private fileService: PepFileService,\n private renderer: Renderer2,\n private element: ElementRef,\n private translate: TranslateService\n ) { }\n\n ngOnInit(): void {\n if (this.form === null) {\n this.standAlone = true;\n this.setFieldHeight();\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n\n if (!this.renderTitle) {\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\n );\n }\n }\n }\n\n private setFieldHeight(): void {\n this.fieldHeight = this.customizationService.calculateFieldHeight(\n this.layoutType,\n this.rowSpan,\n this.standAlone\n );\n }\n\n private setDefaultForm(): void {\n const pepField = new PepImageField({\n key: this.key,\n value: this.src,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnChanges(changes: any): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n\n if (changes.src?.currentValue?.length > 0) {\n // Empty dataURI if there is change in the src.\n this.dataURI = null;\n }\n }\n\n ngOnDestroy(): void {\n //\n }\n\n errorHandler(event: any): void {\n event.target.src = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n event.target.title = this.translate.instant('IMAGE.NO_IMAGE');\n }\n\n onImageLoad(event: any): void {\n event.target.style.visibility = 'visible';\n event.target.title =\n event.target.title.length === 0\n ? this.translate.instant('IMAGE.CLICK_TO_ENLARGE')\n : event.target.title;\n }\n\n onMenuClick(event: any): void {\n this.elementClick.emit({\n key: this.key,\n value: PepImageComponent.MENU_CLICKED,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n }\n\n onFileChanged(fileData: IPepFileChangeEvent): void {\n this.dataURI = fileData;\n this.src = this.srcLarge =\n this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\n\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n this.dataURI ? this.dataURI.fileExt : ''\n );\n // this.valueChange.emit({\n // key: this.key,\n // value,\n // });\n\n this.fileChange.emit(fileData);\n // this.fileChange.emit(value.length > 0 ? JSON.parse(value) : value);\n }\n\n objectIdIsNotEmpty(): boolean {\n return this.uid?.length > 0 && this.uid !== '0';\n }\n\n onFileClicked(event: IPepFieldClickEvent): void {\n let hasParentImage = true;\n if (\n // this.objectIdIsNotEmpty() &&\n this.src &&\n this.src.indexOf('no-image') > -1\n ) {\n hasParentImage = false;\n }\n\n this.elementClick.emit(event);\n }\n\n itemImageClick(event: any): void {\n let hasParentImage = true;\n const elemTarget = event.target || event.srcElement;\n const nextElement = elemTarget.nextElementSibling || null;\n const imageSRC = elemTarget.src || null;\n const nextElementSRC =\n nextElement && nextElement.src ? nextElement.src : null;\n\n if (\n (imageSRC && imageSRC.indexOf('no-image') > -1) ||\n (nextElementSRC && nextElementSRC.src.indexOf('no-image') > -1)\n ) {\n hasParentImage = false;\n }\n\n // this.openImageModal(hasParentImage);\n // if (this.dataURI) {\n // this.imageService.openFromURI(this.dataURI);\n // } else {\n // this.imageService.openImageDialog(this.srcLarge || this.src, this.options, this.label);\n // }\n\n this.elementClick.emit({\n key: this.key,\n controlType: this.controlType,\n eventWhich: event.which,\n otherData: {\n imageSrc: this.srcLarge || this.src,\n options: this.options,\n title: this.label\n }\n });\n }\n\n // openImageModal(hasParentImage: boolean): void {\n // if (this.dataURI) {\n // const fileStrArr = this.dataURI.fileStr.split(';');\n // if (fileStrArr.length === 2) {\n // const win = window.open('', '_blank');\n // const contentType = fileStrArr[0].split(':')[1];\n // const base64 = fileStrArr[1].split(',')[1];\n // const blob = this.fileService.convertFromb64toBlob(\n // base64,\n // contentType\n // );\n // const url = URL.createObjectURL(blob);\n // win.location.href = url;\n // }\n // } else {\n // const arr = [this.srcLarge || this.src].concat(\n // (this.options || []).map((opt) => opt.value)\n // );\n // const imagesValue = arr.join(';');\n\n // // Show image in modal.\n // const config = this.dialogService.getDialogConfig({}, 'inline');\n // config.maxWidth = '75vw';\n // config.height = '95vh';\n\n // this.dialogService.openDialog(\n // PepImagesFilmstripComponent,\n // {\n // currIndex: 0,\n // key: this.key,\n // value: imagesValue,\n // label: this.label,\n // uid: this.uid,\n // showThumbnails: arr.length > 1,\n // },\n // config\n // );\n // }\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport { PepFilesUploaderModule } from '@pepperi-addons/ngx-lib/files-uploader';\nimport {\n PepImagesFilmstripModule,\n PepImagesFilmstripComponent,\n} from '@pepperi-addons/ngx-lib/images-filmstrip';\n\nimport { PepImageComponent } from './image.component';\nimport { PepImageService } from './image.service';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepImagesFilmstripModule,\n PepFilesUploaderModule,\n ],\n exports: [PepImageComponent],\n declarations: [PepImageComponent],\n entryComponents: [PepImagesFilmstripComponent],\n providers: [PepImageService]\n})\nexport class PepImageModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/image\n */\nexport * from './image.module';\nexport * from './image.component';\nexport * from './image.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepImagesFilmstripComponent","Injectable","PepDialogService","PepCustomizationService","PepFileService","DEFAULT_HORIZONTAL_ALIGNMENT","EventEmitter","PepImageField","pepIconNoImage2","Component","ChangeDetectionStrategy","Renderer2","ElementRef","TranslateService","Input","Output","pepIconSystemMenu","pepIconSystemBolt","pepIconIndicatorDotPlaceholder","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatIconModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepImagesFilmstripModule","PepFilesUploaderModule","PepIconRegistry"],"mappings":"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"}
@@ -63,6 +63,7 @@
63
63
  this.form = null;
64
64
  this.uid = '0';
65
65
  this.showTitle = false;
66
+ this.renderTitle = true;
66
67
  this._layoutType = 'form';
67
68
  this.currIndex = 0;
68
69
  this.showThumbnails = false;
@@ -150,6 +151,9 @@
150
151
  this.setFieldHeight();
151
152
  this.setDefaultForm();
152
153
  this.renderer.addClass(this.element.nativeElement, ngxLib.PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
154
+ if (!this.renderTitle) {
155
+ this.renderer.addClass(this.element.nativeElement, ngxLib.PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
156
+ }
153
157
  }
154
158
  }
155
159
  if (this.items === null) {
@@ -290,7 +294,7 @@
290
294
  PepImagesFilmstripComponent.decorators = [
291
295
  { type: core.Component, args: [{
292
296
  selector: 'pep-images-filmstrip',
293
- template: "<ng-container *ngIf=\"inDialog; then galleryDialogTemplate; else regularTemplate\"></ng-container>\n<ng-template #regularTemplate>\n <ng-container [formGroup]=\"form\">\n <div class=\"images-filmstrip-container\">\n <pep-field-title [label]=\"label\" [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\n </pep-field-title>\n <div #galleryCont class=\"img-wrapper\" [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\"\n [style.height]=\"fieldHeight\">\n <gallery id=\"{{key}}-{{uid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #galleryDialogTemplate>\n <div class=\"gallery-dialog\">\n <pep-dialog [title]=\"label\" [showFooter]=\"false\">\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\n <gallery id=\"{{key}}-{{uid}}-dlgGallery\" [imageSize]=\"'contain'\" (indexChange)=\"indexChange($event)\"\n (error)=\"onError($event)\">\n </gallery>\n </div>\n </pep-dialog>\n </div>\n</ng-template>\n\n<!-- Add custom template to image items -->\n<ng-template #itemTemplate let-index=\"index\" let-type=\"type\" let-data=\"data\" let-currIndex=\"currIndex\">\n <ng-container *ngIf=\"index === currIndex\">\n <ngx-imageviewer [src]=\"data.src\">\n </ngx-imageviewer>\n </ng-container>\n</ng-template>",
297
+ template: "<ng-container *ngIf=\"inDialog; then galleryDialogTemplate; else regularTemplate\"></ng-container>\n<ng-template #regularTemplate>\n <ng-container [formGroup]=\"form\">\n <div class=\"images-filmstrip-container\">\n <pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\n </pep-field-title>\n <div #galleryCont class=\"img-wrapper\" [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\"\n [style.height]=\"fieldHeight\">\n <gallery id=\"{{key}}-{{uid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #galleryDialogTemplate>\n <div class=\"gallery-dialog\">\n <pep-dialog [title]=\"label\" [showFooter]=\"false\">\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\n <gallery id=\"{{key}}-{{uid}}-dlgGallery\" [imageSize]=\"'contain'\" (indexChange)=\"indexChange($event)\"\n (error)=\"onError($event)\">\n </gallery>\n </div>\n </pep-dialog>\n </div>\n</ng-template>\n\n<!-- Add custom template to image items -->\n<ng-template #itemTemplate let-index=\"index\" let-type=\"type\" let-data=\"data\" let-currIndex=\"currIndex\">\n <ng-container *ngIf=\"index === currIndex\">\n <ngx-imageviewer [src]=\"data.src\">\n </ngx-imageviewer>\n </ng-container>\n</ng-template>",
294
298
  // animations: [slideInAnimation],
295
299
  providers: [
296
300
  {
@@ -300,7 +304,7 @@
300
304
  deps: [core$1.TranslateService],
301
305
  },
302
306
  ],
303
- styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container,.images-filmstrip-container .img-wrapper,gallery{height:100%}gallery{direction:ltr;min-height:100%}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}.gallery-dialog-content ::ng-deep gallery-item .g-item-template ngx-imageviewer canvas{max-width:100%!important;max-height:100%!important}::ng-deep gallery-thumbs{margin:0 1rem 0 .5rem;margin:0 var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);margin:.5rem 0;margin:var(--pep-spacing-sm,.5rem) 0}::ng-deep gallery-thumbs gallery-thumb .g-image-item{background-size:cover!important}::ng-deep gallery-item gallery-image .g-image-item{border-radius:.5rem;border-radius:var(--pep-border-radius-lg,.5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep gallery-dots.pep-button,::ng-deep gallery-dots.pepperi-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep .g-nav-next,::ng-deep .g-nav-prev{width:2rem!important;height:2rem!important;padding:.25rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep .g-nav-next .mat-icon,::ng-deep .g-nav-prev .mat-icon{display:inline-block!important}::ng-deep .g-nav-prev{transform:translateY(-50%) perspective(1px) scaleX(-1)!important}.vertical-gallery ::ng-deep gallery-thumbs{margin:1rem 0 .5rem;margin:var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 .5rem;margin:0 var(--pep-spacing-sm,.5rem)}"]
307
+ styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container,.images-filmstrip-container .img-wrapper,gallery{height:100%}gallery{direction:ltr;min-height:100%}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}.gallery-dialog-content ::ng-deep gallery-item .g-item-template ngx-imageviewer canvas{max-width:100%!important;max-height:100%!important}::ng-deep gallery-thumbs{margin:0 1rem 0 .5rem;margin:0 var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);margin:.5rem 0;margin:var(--pep-spacing-sm,.5rem) 0}::ng-deep gallery-thumbs gallery-thumb .g-image-item{background-size:cover!important}::ng-deep gallery-item gallery-image .g-image-item{border-radius:.5rem;border-radius:var(--pep-border-radius-lg,.5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep gallery-dots.pep-button,::ng-deep gallery-dots.pepperi-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep .g-nav-next,::ng-deep .g-nav-prev{width:2rem!important;height:2rem!important;padding:.25rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep .g-nav-next .mat-icon,::ng-deep .g-nav-prev .mat-icon{display:inline-block!important}::ng-deep .g-nav-prev{transform:translateY(-50%) perspective(1px) scaleX(-1)!important}.vertical-gallery ::ng-deep gallery-thumbs{margin:1rem 0 .5rem;margin:var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 .5rem;margin:0 var(--pep-spacing-sm,.5rem)}", "gallery{background-color:transparent}gallery-thumb{box-shadow:0 .25rem .5rem 0 rgba(26,26,26,.32);box-shadow:var(--pep-shadow-sm-offset,0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.32)}.g-nav-next,.g-nav-next:hover,.g-nav-prev,.g-nav-prev:hover{background:hsla(0,0%,100%,.5);background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.5)}.g-nav-next:hover,.g-nav-prev:hover{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);cursor:pointer}.g-nav-next:focus,.g-nav-prev:focus{box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.g-nav-next:active,.g-nav-next:focus,.g-nav-prev:active,.g-nav-prev:focus{background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}.g-nav-next:active,.g-nav-prev:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16)}.g-nav-next:disabled,.g-nav-prev:disabled{box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:hsla(0,0%,100%,.08)!important;background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.08)!important}.g-nav-next:disabled:after,.g-nav-prev:disabled:after{border:unset}.g-nav-next:disabled .svg-icon,.g-nav-prev:disabled .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.g-nav-next:disabled .svg-icon.stroke,.g-nav-prev:disabled .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}gallery-dots{background:rgba(26,26,26,.12);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.12)}"]
304
308
  },] }
305
309
  ];
306
310
  PepImagesFilmstripComponent.ctorParameters = function () { return [
@@ -324,6 +328,7 @@
324
328
  form: [{ type: core.Input }],
325
329
  uid: [{ type: core.Input }],
326
330
  showTitle: [{ type: core.Input }],
331
+ renderTitle: [{ type: core.Input }],
327
332
  layoutType: [{ type: core.Input }],
328
333
  currIndex: [{ type: core.Input }],
329
334
  showThumbnails: [{ type: core.Input }],
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-lib-images-filmstrip.umd.js","sources":["../../../projects/ngx-lib/images-filmstrip/images-filmstrip.component.ts","../../../projects/ngx-lib/images-filmstrip/images-filmstrip.module.ts","../../../projects/ngx-lib/images-filmstrip/public-api.ts","../../../projects/ngx-lib/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.ts"],"sourcesContent":["import {\n Component,\n ViewChild,\n OnInit,\n OnDestroy,\n AfterViewInit,\n ElementRef,\n Input,\n TemplateRef,\n Renderer2,\n ChangeDetectorRef,\n Inject,\n Optional,\n ViewContainerRef,\n OnChanges,\n} from '@angular/core';\nimport {\n trigger,\n state,\n style,\n transition,\n animate,\n} from '@angular/animations';\nimport { FormGroup } from '@angular/forms';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n Gallery,\n GalleryConfig,\n LoadingStrategy,\n SlidingDirection,\n ThumbnailsPosition,\n GalleryItem,\n ImageItem,\n GalleryRef,\n} from 'ng-gallery';\nimport {\n PepCustomizationService,\n PepLayoutType,\n PepLayoutService,\n PepFileService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n PepImagesField,\n} from '@pepperi-addons/ngx-lib';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { pepIconArrowRightAlt } from '@pepperi-addons/ngx-lib/icon';\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\n\nimport 'hammerjs';\n\ninterface IPepImagesFilmstripDialogData {\n currIndex: number;\n key: string;\n value: string;\n label: string;\n uid: string;\n showThumbnails: boolean;\n}\n\n// export const slideInAnimation = trigger('slideAnimation', [\n// state('in', style({ transform: 'translateY(0)', opacity: 1 })),\n// transition(':enter', [\n// style({ transform: 'translateY(-100%)', opacity: 0 }),\n// animate(400)\n// ]),\n// transition(':leave', [\n// animate(400, style({ transform: 'translateY(-100%)', opacity: 0 }))\n// ])\n// ]);\n\nimport {\n IMAGEVIEWER_CONFIG,\n ImageViewerConfig,\n createButtonConfig,\n} from '@hallysonh/ngx-imageviewer';\n\nexport function createViewerConfig(\n translate: TranslateService\n): ImageViewerConfig {\n return {\n // width: 850,\n // height: 150,\n bgStyle: '#FFF', // component background style\n // scaleStep: 0.1, // zoom scale step (using the zoom in/out buttons)\n // rotateStepper: false, // touch rotate should rotate only 90 to 90 degrees\n loadingMessage: translate.instant('MESSAGES.INFO_LOADING_FILE'), // 'Loading...',\n // buttonStyle: {\n // iconFontFamily: 'Material Icons', // font used to render the button icons\n // alpha: 0.5, // buttons' transparence value\n // hoverAlpha: 0.7, // buttons' transparence value when mouse is over\n // bgStyle: '#000000', // buttons' background style\n // iconStyle: '#ffffff', // buttons' icon colors\n // borderStyle: '#000000', // buttons' border style\n // borderWidth: 0, // buttons' border width (0 == disabled)\n // },\n // tooltips: {\n // enabled: true, // enable or disable tooltips for buttons\n // bgStyle: '#000000', // tooltip background style\n // bgAlpha: 0.5, // tooltip background transparence\n // textStyle: '#ffffff', // tooltip's text style\n // textAlpha: 0.9, // tooltip's text transparence\n // padding: 15, // tooltip padding\n // radius: 20, // tooltip border radius\n // },\n // shorter button configuration style\n nextPageButton: createButtonConfig(\n 'navigate_next',\n 'Next page',\n 0,\n false\n ),\n beforePageButton: createButtonConfig(\n 'navigate_before',\n 'Previous page',\n 1,\n false\n ),\n zoomOutButton: createButtonConfig('zoom_out', 'Zoom out', 0, false),\n zoomInButton: createButtonConfig('zoom_in', 'Zoom in', 1, false),\n rotateLeftButton: createButtonConfig(\n 'rotate_left',\n 'Rotate left',\n 2,\n false\n ),\n rotateRightButton: createButtonConfig(\n 'rotate_right',\n 'Rotate right',\n 3,\n false\n ),\n resetButton: createButtonConfig('autorenew', 'Reset', 4, false),\n };\n}\n\n@Component({\n selector: 'pep-images-filmstrip',\n templateUrl: './images-filmstrip.component.html',\n styleUrls: ['./images-filmstrip.component.scss'],\n // animations: [slideInAnimation],\n providers: [\n {\n provide: IMAGEVIEWER_CONFIG,\n // useValue: IMAGEVIEWER_CONFIG_DEFAULT,\n useFactory: createViewerConfig,\n deps: [TranslateService],\n },\n ],\n})\nexport class PepImagesFilmstripComponent\n implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n // @ViewChild('ngxViewerImage') ngxViewerImage: any; // TODO: Check if we need to use this??\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n private _rowSpan = 1;\n @Input()\n set rowSpan(value) {\n this._rowSpan = value;\n this.setFieldHeight();\n }\n get rowSpan(): number {\n return this._rowSpan;\n }\n\n controlType = 'images';\n\n @Input() form: FormGroup = null;\n @Input() uid = '0';\n @Input() showTitle = false;\n\n private _layoutType: PepLayoutType = 'form';\n @Input()\n set layoutType(value: PepLayoutType) {\n this._layoutType = value;\n this.setFieldHeight();\n }\n get layoutType(): PepLayoutType {\n return this._layoutType;\n }\n\n @Input() currIndex = 0;\n @Input() showThumbnails = false;\n\n @ViewChild('galleryCont') galleryCont: ElementRef;\n @ViewChild('galleryDialogTemplate', { read: TemplateRef })\n galleryDialogTemplate: TemplateRef<any>;\n @ViewChild('galleryDialogCont') galleryDialogCont: ElementRef;\n\n config: GalleryConfig;\n items: GalleryItem[] = null;\n inDialog = false;\n\n mandatory = false;\n readonly = false;\n disabled = false;\n fieldHeight = '';\n standAlone = false;\n\n galleryWidth = 0;\n galleryHeight;\n isVertical = false;\n galleryRef: GalleryRef;\n dialogGalleryRef: GalleryRef;\n\n constructor(\n private customizationService: PepCustomizationService,\n private dialogService: PepDialogService,\n private layoutService: PepLayoutService,\n private fileService: PepFileService,\n private gallery: Gallery,\n private renderer: Renderer2,\n private element: ElementRef,\n private cd: ChangeDetectorRef,\n @Optional()\n private dialogRef: MatDialogRef<PepImagesFilmstripComponent>,\n @Optional()\n @Inject(MAT_DIALOG_DATA)\n private data: IPepImagesFilmstripDialogData\n ) {\n // If data exist copy all data properties into this.\n if (dialogRef && data) {\n this.inDialog = true;\n\n Object.keys(data).forEach((key) => {\n if (key in this) {\n this[key] = data[key];\n }\n });\n }\n\n this.config = {\n // nav: false, // Show navigation buttons\n navIcon: pepIconArrowRightAlt.data,\n // loop: true,\n // zoomOut: 0,\n // dots: false,\n // dotsPosition: 'bottom',\n // counterPosition: 'top',\n // thumb: true,\n counter: false, // Show counter\n gestures: true, // Use touch events (requires hammer.js)\n // autoPlay: false,\n // thumbWidth: 120,\n // thumbHeight: 90,\n imageSize: 'contain',\n // panSensitivity: 25,\n // disableThumb: false,\n // playerInterval: 3000,\n // thumbMode: ThumbnailsMode.Free,\n // thumbPosition: ThumbnailsPosition.Bottom,\n loadingStrategy: LoadingStrategy.Default,\n // slidingDirection: SlidingDirection.Horizontal,\n };\n }\n\n private setFieldHeight(): void {\n this.fieldHeight = this.customizationService.calculateFieldHeight(\n this.layoutType,\n this.rowSpan,\n this.standAlone\n );\n }\n\n private setDefaultForm(): void {\n const pepField = new PepImagesField({\n key: this.key,\n value: this.value,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnInit(): void {\n if (!this.inDialog) {\n if (this.form === null) {\n this.standAlone = true;\n this.setFieldHeight();\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n }\n }\n\n if (this.items === null) {\n const imgArr = this.value ? this.value.split(';') : [];\n // add No image image when there is no images\n if (imgArr.length === 0) {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n imgArr.push(noImageSrc);\n }\n\n this.items = imgArr.map(\n (img) => new ImageItem({ src: img, thumb: img })\n );\n }\n\n this.config.dots = this.config.nav = this.items.length > 1;\n this.config.thumb =\n (this.key === 'ItemFilmstripImages' || this.showThumbnails) &&\n this.items.length > 1\n ? true\n : false;\n this.currIndex =\n this.key === 'ItemFilmstripImages' &&\n this.currIndex === 0 &&\n this.items.length > 1\n ? Math.floor(this.items.length / 2) - 1\n : this.currIndex;\n }\n\n ngAfterViewInit(): void {\n if (this.inDialog) {\n this.afterDialogOpened();\n } else {\n this.galleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-gallery`\n );\n this.initGalleryStyle(this.galleryCont, this.galleryRef);\n }\n }\n\n ngOnChanges(): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n }\n\n ngOnDestroy(): void {\n if (this.galleryRef) {\n this.galleryRef.destroy();\n }\n if (this.dialogGalleryRef) {\n this.dialogGalleryRef.destroy();\n }\n // if (this.myPinch) { this.myPinch.destroy(); }\n }\n\n initGalleryStyle(galleryContainer, galleryRef): void {\n setTimeout(() => {\n // Set thumbnails position and sliding direction\n this.setThumbnailDimension(galleryContainer);\n galleryRef.setConfig(this.config);\n }, 0);\n\n const currentIndex = this.currIndex;\n if (currentIndex > 0) {\n setTimeout(() => {\n galleryRef.load(this.items);\n galleryRef.set(currentIndex);\n }, 0);\n // galleryRef.set(currentIndex);\n } else {\n galleryRef.load(this.items);\n }\n }\n\n onError(e): void {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n const noimg = new ImageItem({ src: noImageSrc, thumb: noImageSrc });\n this.items.splice(e.itemIndex, 1, noimg);\n }\n\n enlargeImage(event: any): void {\n const config = this.dialogService.getDialogConfig({}, 'inline');\n config.maxWidth = '75vw';\n config.height = '95vh';\n\n const dialogRef = this.dialogService.openDialog(\n this.galleryDialogTemplate,\n {\n currIndex: this.currIndex,\n },\n config\n );\n\n dialogRef.afterOpened().subscribe(() => {\n this.afterDialogOpened();\n });\n\n // Update currentIndex in galleryRef\n // dialogRef.afterClosed().subscribe(value => {\n // this.galleryRef.set(this.currIndex);\n // });\n }\n\n afterDialogOpened(): void {\n this.dialogGalleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-dlgGallery`\n );\n this.initGalleryStyle(this.galleryDialogCont, this.dialogGalleryRef);\n }\n\n setThumbnailDimension(galleryContainer): void {\n this.galleryWidth = galleryContainer.nativeElement.clientWidth;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32; // TODO - TALK WITH TOMER\n this.galleryHeight = this.inDialog\n ? galleryContainer.nativeElement.clientHeight - 32\n : galleryContainer.nativeElement.clientHeight;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32;\n this.cd.detectChanges();\n\n this.isVertical = this.galleryWidth < this.galleryHeight;\n this.cd.detectChanges();\n if (this.isVertical) {\n let width =\n (this.galleryWidth - (this.items.length - 1) * 16) /\n this.items.length;\n width = Math.min(Math.max(width, 24), 96);\n\n this.config.thumbHeight = width;\n this.config.thumbWidth = width + 16;\n } else {\n let height =\n (this.galleryHeight - (this.items.length - 1) * 16) /\n this.items.length;\n height = Math.min(Math.max(height, 24), 96);\n\n this.config.thumbHeight = height + 16;\n this.config.thumbWidth = height;\n }\n\n this.config.thumbPosition = this.isVertical\n ? ThumbnailsPosition.Bottom\n : this.layoutService.isRtl()\n ? ThumbnailsPosition.Right\n : ThumbnailsPosition.Left;\n this.config.slidingDirection =\n this.key !== 'ItemFilmstripImages'\n ? SlidingDirection.Horizontal\n : this.isVertical\n ? SlidingDirection.Horizontal\n : SlidingDirection.Vertical;\n\n this.config.imageSize = 'contain';\n }\n\n indexChange(item: any): void {\n this.currIndex = item.currIndex;\n // if (this.ngxViewerImage && this.ngxViewerImage.scale) {\n // this.ngxViewerImage.scale = 1;\n // this.updateStyle();\n // }\n }\n\n // scrollFunction(e: any): boolean {\n // e.deltaY > 0 ? this.zoomOut() : this.zoomIn();\n // return false;\n // }\n\n // zoomIn(): void {\n // if (this.ngxViewerImage.scale < 2) {\n // this.ngxViewerImage.scale *= (1 + this.ngxViewerImage.config.zoomFactor);\n // } else {\n // this.ngxViewerImage.scale = 2;\n // }\n // this.updateStyle();\n // }\n\n // zoomOut(): void {\n // if (this.ngxViewerImage.scale > this.ngxViewerImage.config.zoomFactor) {\n // this.ngxViewerImage.scale /= (1 + this.ngxViewerImage.config.zoomFactor);\n // }\n // this.updateStyle();\n // }\n\n // private updateStyle(): void {\n // this.ngxViewerImage.style.transform = `translate(${this.ngxViewerImage.translateX}px,\n // ${this.ngxViewerImage.translateY}px) rotate(${this.ngxViewerImage.rotation}deg) scale(${this.ngxViewerImage.scale})`;\n\n // this.cd.detectChanges();\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\n\nimport { GalleryModule } from 'ng-gallery';\nimport { ImageViewerModule } from '@hallysonh/ngx-imageviewer';\n\nimport { PepImagesFilmstripComponent } from './images-filmstrip.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatDialogModule,\n MatIconModule,\n // External modules\n GalleryModule,\n ImageViewerModule,\n // ImageViewerModule.forRoot({\n // btnClass: 'default', // The CSS class(es) that will apply to the buttons\n // zoomFactor: 0.1, // The amount that the scale will be increased by\n // containerBackgroundColor: 'transparent', // The color to use for the background. This can provided in hex, or rgb(a).\n // wheelZoom: true, // If true, the mouse wheel can be used to zoom in\n // allowFullscreen: false, // If true, the fullscreen button will be shown, allowing the user to entr fullscreen mode\n // btnIcons: {\n // // The icon classes that will apply to the buttons. By default, font-awesome is used.\n // zoomIn: 'fa fa-plus',\n // zoomOut: 'fa fa-minus',\n // rotateClockwise: 'fa fa-repeat',\n // rotateCounterClockwise: 'fa fa-undo',\n // next: 'fa fa-arrow-right',\n // prev: 'fa fa-arrow-left',\n // fullscreen: 'fa fa-arrows-alt'\n // }\n // }),\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepDialogModule,\n ],\n exports: [PepImagesFilmstripComponent],\n declarations: [PepImagesFilmstripComponent],\n})\nexport class PepImagesFilmstripModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/images-filmstrip\n */\nexport * from './images-filmstrip.module';\nexport * from './images-filmstrip.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["createButtonConfig","DEFAULT_HORIZONTAL_ALIGNMENT","pepIconArrowRightAlt","LoadingStrategy","PepImagesField","PepCustomizationService","pepIconNoImage2","ImageItem","ThumbnailsPosition","SlidingDirection","Component","IMAGEVIEWER_CONFIG","TranslateService","PepDialogService","PepLayoutService","PepFileService","Gallery","Renderer2","ElementRef","ChangeDetectorRef","MatDialogRef","Optional","Inject","MAT_DIALOG_DATA","Input","ViewChild","TemplateRef","pepIconSystemEdit","pepIconSystemClose","pepIconArrowLeftAlt","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatDialogModule","MatIconModule","GalleryModule","ImageViewerModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepDialogModule","PepIconRegistry"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-lib-images-filmstrip.umd.js","sources":["../../../projects/ngx-lib/images-filmstrip/images-filmstrip.component.ts","../../../projects/ngx-lib/images-filmstrip/images-filmstrip.module.ts","../../../projects/ngx-lib/images-filmstrip/public-api.ts","../../../projects/ngx-lib/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.ts"],"sourcesContent":["import {\n Component,\n ViewChild,\n OnInit,\n OnDestroy,\n AfterViewInit,\n ElementRef,\n Input,\n TemplateRef,\n Renderer2,\n ChangeDetectorRef,\n Inject,\n Optional,\n ViewContainerRef,\n OnChanges,\n} from '@angular/core';\nimport {\n trigger,\n state,\n style,\n transition,\n animate,\n} from '@angular/animations';\nimport { FormGroup } from '@angular/forms';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n Gallery,\n GalleryConfig,\n LoadingStrategy,\n SlidingDirection,\n ThumbnailsPosition,\n GalleryItem,\n ImageItem,\n GalleryRef,\n} from 'ng-gallery';\nimport {\n PepCustomizationService,\n PepLayoutType,\n PepLayoutService,\n PepFileService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n PepImagesField,\n} from '@pepperi-addons/ngx-lib';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { pepIconArrowRightAlt } from '@pepperi-addons/ngx-lib/icon';\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\n\nimport 'hammerjs';\n\ninterface IPepImagesFilmstripDialogData {\n currIndex: number;\n key: string;\n value: string;\n label: string;\n uid: string;\n showThumbnails: boolean;\n}\n\n// export const slideInAnimation = trigger('slideAnimation', [\n// state('in', style({ transform: 'translateY(0)', opacity: 1 })),\n// transition(':enter', [\n// style({ transform: 'translateY(-100%)', opacity: 0 }),\n// animate(400)\n// ]),\n// transition(':leave', [\n// animate(400, style({ transform: 'translateY(-100%)', opacity: 0 }))\n// ])\n// ]);\n\nimport {\n IMAGEVIEWER_CONFIG,\n ImageViewerConfig,\n createButtonConfig,\n} from '@hallysonh/ngx-imageviewer';\n\nexport function createViewerConfig(\n translate: TranslateService\n): ImageViewerConfig {\n return {\n // width: 850,\n // height: 150,\n bgStyle: '#FFF', // component background style\n // scaleStep: 0.1, // zoom scale step (using the zoom in/out buttons)\n // rotateStepper: false, // touch rotate should rotate only 90 to 90 degrees\n loadingMessage: translate.instant('MESSAGES.INFO_LOADING_FILE'), // 'Loading...',\n // buttonStyle: {\n // iconFontFamily: 'Material Icons', // font used to render the button icons\n // alpha: 0.5, // buttons' transparence value\n // hoverAlpha: 0.7, // buttons' transparence value when mouse is over\n // bgStyle: '#000000', // buttons' background style\n // iconStyle: '#ffffff', // buttons' icon colors\n // borderStyle: '#000000', // buttons' border style\n // borderWidth: 0, // buttons' border width (0 == disabled)\n // },\n // tooltips: {\n // enabled: true, // enable or disable tooltips for buttons\n // bgStyle: '#000000', // tooltip background style\n // bgAlpha: 0.5, // tooltip background transparence\n // textStyle: '#ffffff', // tooltip's text style\n // textAlpha: 0.9, // tooltip's text transparence\n // padding: 15, // tooltip padding\n // radius: 20, // tooltip border radius\n // },\n // shorter button configuration style\n nextPageButton: createButtonConfig(\n 'navigate_next',\n 'Next page',\n 0,\n false\n ),\n beforePageButton: createButtonConfig(\n 'navigate_before',\n 'Previous page',\n 1,\n false\n ),\n zoomOutButton: createButtonConfig('zoom_out', 'Zoom out', 0, false),\n zoomInButton: createButtonConfig('zoom_in', 'Zoom in', 1, false),\n rotateLeftButton: createButtonConfig(\n 'rotate_left',\n 'Rotate left',\n 2,\n false\n ),\n rotateRightButton: createButtonConfig(\n 'rotate_right',\n 'Rotate right',\n 3,\n false\n ),\n resetButton: createButtonConfig('autorenew', 'Reset', 4, false),\n };\n}\n\n@Component({\n selector: 'pep-images-filmstrip',\n templateUrl: './images-filmstrip.component.html',\n styleUrls: ['./images-filmstrip.component.scss', './images-filmstrip.component.theme.scss'],\n // animations: [slideInAnimation],\n providers: [\n {\n provide: IMAGEVIEWER_CONFIG,\n // useValue: IMAGEVIEWER_CONFIG_DEFAULT,\n useFactory: createViewerConfig,\n deps: [TranslateService],\n },\n ],\n})\nexport class PepImagesFilmstripComponent\n implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n // @ViewChild('ngxViewerImage') ngxViewerImage: any; // TODO: Check if we need to use this??\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n private _rowSpan = 1;\n @Input()\n set rowSpan(value) {\n this._rowSpan = value;\n this.setFieldHeight();\n }\n get rowSpan(): number {\n return this._rowSpan;\n }\n\n controlType = 'images';\n\n @Input() form: FormGroup = null;\n @Input() uid = '0';\n @Input() showTitle = false;\n @Input() renderTitle = true;\n\n private _layoutType: PepLayoutType = 'form';\n @Input()\n set layoutType(value: PepLayoutType) {\n this._layoutType = value;\n this.setFieldHeight();\n }\n get layoutType(): PepLayoutType {\n return this._layoutType;\n }\n\n @Input() currIndex = 0;\n @Input() showThumbnails = false;\n\n @ViewChild('galleryCont') galleryCont: ElementRef;\n @ViewChild('galleryDialogTemplate', { read: TemplateRef })\n galleryDialogTemplate: TemplateRef<any>;\n @ViewChild('galleryDialogCont') galleryDialogCont: ElementRef;\n\n config: GalleryConfig;\n items: GalleryItem[] = null;\n inDialog = false;\n\n mandatory = false;\n readonly = false;\n disabled = false;\n fieldHeight = '';\n standAlone = false;\n\n galleryWidth = 0;\n galleryHeight;\n isVertical = false;\n galleryRef: GalleryRef;\n dialogGalleryRef: GalleryRef;\n\n constructor(\n private customizationService: PepCustomizationService,\n private dialogService: PepDialogService,\n private layoutService: PepLayoutService,\n private fileService: PepFileService,\n private gallery: Gallery,\n private renderer: Renderer2,\n private element: ElementRef,\n private cd: ChangeDetectorRef,\n @Optional()\n private dialogRef: MatDialogRef<PepImagesFilmstripComponent>,\n @Optional()\n @Inject(MAT_DIALOG_DATA)\n private data: IPepImagesFilmstripDialogData\n ) {\n // If data exist copy all data properties into this.\n if (dialogRef && data) {\n this.inDialog = true;\n\n Object.keys(data).forEach((key) => {\n if (key in this) {\n this[key] = data[key];\n }\n });\n }\n\n this.config = {\n // nav: false, // Show navigation buttons\n navIcon: pepIconArrowRightAlt.data,\n // loop: true,\n // zoomOut: 0,\n // dots: false,\n // dotsPosition: 'bottom',\n // counterPosition: 'top',\n // thumb: true,\n counter: false, // Show counter\n gestures: true, // Use touch events (requires hammer.js)\n // autoPlay: false,\n // thumbWidth: 120,\n // thumbHeight: 90,\n imageSize: 'contain',\n // panSensitivity: 25,\n // disableThumb: false,\n // playerInterval: 3000,\n // thumbMode: ThumbnailsMode.Free,\n // thumbPosition: ThumbnailsPosition.Bottom,\n loadingStrategy: LoadingStrategy.Default,\n // slidingDirection: SlidingDirection.Horizontal,\n };\n }\n\n private setFieldHeight(): void {\n this.fieldHeight = this.customizationService.calculateFieldHeight(\n this.layoutType,\n this.rowSpan,\n this.standAlone\n );\n }\n\n private setDefaultForm(): void {\n const pepField = new PepImagesField({\n key: this.key,\n value: this.value,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnInit(): void {\n if (!this.inDialog) {\n if (this.form === null) {\n this.standAlone = true;\n this.setFieldHeight();\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n\n if (!this.renderTitle) {\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\n );\n }\n }\n }\n\n if (this.items === null) {\n const imgArr = this.value ? this.value.split(';') : [];\n // add No image image when there is no images\n if (imgArr.length === 0) {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n imgArr.push(noImageSrc);\n }\n\n this.items = imgArr.map(\n (img) => new ImageItem({ src: img, thumb: img })\n );\n }\n\n this.config.dots = this.config.nav = this.items.length > 1;\n this.config.thumb =\n (this.key === 'ItemFilmstripImages' || this.showThumbnails) &&\n this.items.length > 1\n ? true\n : false;\n this.currIndex =\n this.key === 'ItemFilmstripImages' &&\n this.currIndex === 0 &&\n this.items.length > 1\n ? Math.floor(this.items.length / 2) - 1\n : this.currIndex;\n }\n\n ngAfterViewInit(): void {\n if (this.inDialog) {\n this.afterDialogOpened();\n } else {\n this.galleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-gallery`\n );\n this.initGalleryStyle(this.galleryCont, this.galleryRef);\n }\n }\n\n ngOnChanges(): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n }\n\n ngOnDestroy(): void {\n if (this.galleryRef) {\n this.galleryRef.destroy();\n }\n if (this.dialogGalleryRef) {\n this.dialogGalleryRef.destroy();\n }\n // if (this.myPinch) { this.myPinch.destroy(); }\n }\n\n initGalleryStyle(galleryContainer, galleryRef): void {\n setTimeout(() => {\n // Set thumbnails position and sliding direction\n this.setThumbnailDimension(galleryContainer);\n galleryRef.setConfig(this.config);\n }, 0);\n\n const currentIndex = this.currIndex;\n if (currentIndex > 0) {\n setTimeout(() => {\n galleryRef.load(this.items);\n galleryRef.set(currentIndex);\n }, 0);\n // galleryRef.set(currentIndex);\n } else {\n galleryRef.load(this.items);\n }\n }\n\n onError(e): void {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n const noimg = new ImageItem({ src: noImageSrc, thumb: noImageSrc });\n this.items.splice(e.itemIndex, 1, noimg);\n }\n\n enlargeImage(event: any): void {\n const config = this.dialogService.getDialogConfig({}, 'inline');\n config.maxWidth = '75vw';\n config.height = '95vh';\n\n const dialogRef = this.dialogService.openDialog(\n this.galleryDialogTemplate,\n {\n currIndex: this.currIndex,\n },\n config\n );\n\n dialogRef.afterOpened().subscribe(() => {\n this.afterDialogOpened();\n });\n\n // Update currentIndex in galleryRef\n // dialogRef.afterClosed().subscribe(value => {\n // this.galleryRef.set(this.currIndex);\n // });\n }\n\n afterDialogOpened(): void {\n this.dialogGalleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-dlgGallery`\n );\n this.initGalleryStyle(this.galleryDialogCont, this.dialogGalleryRef);\n }\n\n setThumbnailDimension(galleryContainer): void {\n this.galleryWidth = galleryContainer.nativeElement.clientWidth;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32; // TODO - TALK WITH TOMER\n this.galleryHeight = this.inDialog\n ? galleryContainer.nativeElement.clientHeight - 32\n : galleryContainer.nativeElement.clientHeight;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32;\n this.cd.detectChanges();\n\n this.isVertical = this.galleryWidth < this.galleryHeight;\n this.cd.detectChanges();\n if (this.isVertical) {\n let width =\n (this.galleryWidth - (this.items.length - 1) * 16) /\n this.items.length;\n width = Math.min(Math.max(width, 24), 96);\n\n this.config.thumbHeight = width;\n this.config.thumbWidth = width + 16;\n } else {\n let height =\n (this.galleryHeight - (this.items.length - 1) * 16) /\n this.items.length;\n height = Math.min(Math.max(height, 24), 96);\n\n this.config.thumbHeight = height + 16;\n this.config.thumbWidth = height;\n }\n\n this.config.thumbPosition = this.isVertical\n ? ThumbnailsPosition.Bottom\n : this.layoutService.isRtl()\n ? ThumbnailsPosition.Right\n : ThumbnailsPosition.Left;\n this.config.slidingDirection =\n this.key !== 'ItemFilmstripImages'\n ? SlidingDirection.Horizontal\n : this.isVertical\n ? SlidingDirection.Horizontal\n : SlidingDirection.Vertical;\n\n this.config.imageSize = 'contain';\n }\n\n indexChange(item: any): void {\n this.currIndex = item.currIndex;\n // if (this.ngxViewerImage && this.ngxViewerImage.scale) {\n // this.ngxViewerImage.scale = 1;\n // this.updateStyle();\n // }\n }\n\n // scrollFunction(e: any): boolean {\n // e.deltaY > 0 ? this.zoomOut() : this.zoomIn();\n // return false;\n // }\n\n // zoomIn(): void {\n // if (this.ngxViewerImage.scale < 2) {\n // this.ngxViewerImage.scale *= (1 + this.ngxViewerImage.config.zoomFactor);\n // } else {\n // this.ngxViewerImage.scale = 2;\n // }\n // this.updateStyle();\n // }\n\n // zoomOut(): void {\n // if (this.ngxViewerImage.scale > this.ngxViewerImage.config.zoomFactor) {\n // this.ngxViewerImage.scale /= (1 + this.ngxViewerImage.config.zoomFactor);\n // }\n // this.updateStyle();\n // }\n\n // private updateStyle(): void {\n // this.ngxViewerImage.style.transform = `translate(${this.ngxViewerImage.translateX}px,\n // ${this.ngxViewerImage.translateY}px) rotate(${this.ngxViewerImage.rotation}deg) scale(${this.ngxViewerImage.scale})`;\n\n // this.cd.detectChanges();\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\n\nimport { GalleryModule } from 'ng-gallery';\nimport { ImageViewerModule } from '@hallysonh/ngx-imageviewer';\n\nimport { PepImagesFilmstripComponent } from './images-filmstrip.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatDialogModule,\n MatIconModule,\n // External modules\n GalleryModule,\n ImageViewerModule,\n // ImageViewerModule.forRoot({\n // btnClass: 'default', // The CSS class(es) that will apply to the buttons\n // zoomFactor: 0.1, // The amount that the scale will be increased by\n // containerBackgroundColor: 'transparent', // The color to use for the background. This can provided in hex, or rgb(a).\n // wheelZoom: true, // If true, the mouse wheel can be used to zoom in\n // allowFullscreen: false, // If true, the fullscreen button will be shown, allowing the user to entr fullscreen mode\n // btnIcons: {\n // // The icon classes that will apply to the buttons. By default, font-awesome is used.\n // zoomIn: 'fa fa-plus',\n // zoomOut: 'fa fa-minus',\n // rotateClockwise: 'fa fa-repeat',\n // rotateCounterClockwise: 'fa fa-undo',\n // next: 'fa fa-arrow-right',\n // prev: 'fa fa-arrow-left',\n // fullscreen: 'fa fa-arrows-alt'\n // }\n // }),\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepDialogModule,\n ],\n exports: [PepImagesFilmstripComponent],\n declarations: [PepImagesFilmstripComponent],\n})\nexport class PepImagesFilmstripModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/images-filmstrip\n */\nexport * from './images-filmstrip.module';\nexport * from './images-filmstrip.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["createButtonConfig","DEFAULT_HORIZONTAL_ALIGNMENT","pepIconArrowRightAlt","LoadingStrategy","PepImagesField","PepCustomizationService","pepIconNoImage2","ImageItem","ThumbnailsPosition","SlidingDirection","Component","IMAGEVIEWER_CONFIG","TranslateService","PepDialogService","PepLayoutService","PepFileService","Gallery","Renderer2","ElementRef","ChangeDetectorRef","MatDialogRef","Optional","Inject","MAT_DIALOG_DATA","Input","ViewChild","TemplateRef","pepIconSystemEdit","pepIconSystemClose","pepIconArrowLeftAlt","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatDialogModule","MatIconModule","GalleryModule","ImageViewerModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepDialogModule","PepIconRegistry"],"mappings":"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"}
@@ -3034,7 +3034,7 @@
3034
3034
  { type: core.Component, args: [{
3035
3035
  selector: 'pep-list-total',
3036
3036
  template: "<div class=\"total-items-container\">\n <ng-container *ngIf=\"isMapView; then mapTemplate; else notMapTemplate\"></ng-container>\n\n <ng-template #notMapTemplate>\n <ng-container *ngIf=\"totalRows >= 0\">\n <div class=\"body-{{sizeType}} total-items\"\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT' : 'LIST.TOTAL_RESULTS') | translate: { totalRows: totalRows }\">\n </div>\n </ng-container>\n <ng-container *ngIf=\"totalAmount > 0\"> {{ 'LIST.TOTAL_OF' | translate }} {{ totalAmount }} </ng-container>\n </ng-template>\n\n <ng-template #mapTemplate>\n <ng-container *ngIf=\"totalAmount >= 0\">\n </ng-container>\n <ng-container *ngIf=\"totalRows >= 0\">\n <div class=\"body-{{sizeType}} total-items\"\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT_OUT_OF_RESULT' : 'LIST.TOTAL_RESULTS_OUT_OF') | translate: { xRows: totalAmount, totalRows: totalRows }\">\n </div>\n </ng-container>\n </ng-template>\n</div>",
3037
- styles: [".total-items-container{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;align-items:center}"]
3037
+ styles: [".total-items-container{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;align-items:center}", ".total-items{color:rgba(26,26,26,.7);color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.7)}.total-items .number{color:#1a1a1a;color:hsl(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%))}"]
3038
3038
  },] },
3039
3039
  { type: core.Injectable }
3040
3040
  ];