@pepperi-addons/ngx-lib 0.5.0-ng15.3 → 0.5.0-ng16.2

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 (749) hide show
  1. package/address/address.component.d.ts +1 -1
  2. package/attachment/attachment.component.d.ts +1 -1
  3. package/bread-crumbs/bread-crumbs.component.d.ts +1 -1
  4. package/button/button.component.d.ts +1 -1
  5. package/carousel/carousel-item.directive.d.ts +1 -1
  6. package/carousel/carousel.component.d.ts +1 -1
  7. package/checkbox/checkbox.component.d.ts +1 -1
  8. package/chips/chips.component.d.ts +1 -1
  9. package/color/color.component.d.ts +1 -1
  10. package/core/clipboard/clipboard.directive.d.ts +1 -1
  11. package/core/common/directives/auto-width.directive.d.ts +1 -1
  12. package/core/common/directives/button-loader.directive.d.ts +1 -1
  13. package/core/common/directives/data-qa.directive.d.ts +1 -1
  14. package/core/common/directives/div-loader.directive.d.ts +1 -1
  15. package/core/common/directives/prevent-multi-click.directive.d.ts +1 -1
  16. package/core/common/directives/print.directive.d.ts +1 -1
  17. package/core/portal/attach.directive.d.ts +1 -1
  18. package/core/portal/target.directive.d.ts +1 -1
  19. package/date/date.component.d.ts +1 -1
  20. package/dialog/dialog.component.d.ts +1 -1
  21. package/draggable-items/draggable-item/draggable-item.component.d.ts +1 -1
  22. package/draggable-items/draggable-items.component.d.ts +1 -1
  23. package/esm2022/address/address.component.mjs +112 -0
  24. package/{esm2020 → esm2022}/address/address.module.mjs +23 -23
  25. package/{esm2020 → esm2022}/attachment/attachment.component.mjs +65 -61
  26. package/{esm2020 → esm2022}/attachment/attachment.module.mjs +21 -21
  27. package/esm2022/bread-crumbs/bread-crumbs.component.mjs +87 -0
  28. package/esm2022/bread-crumbs/bread-crumbs.model.mjs +10 -0
  29. package/esm2022/bread-crumbs/bread-crumbs.module.mjs +51 -0
  30. package/{esm2020 → esm2022}/button/button.component.mjs +76 -53
  31. package/esm2022/button/button.model.mjs +13 -0
  32. package/{esm2020 → esm2022}/button/button.module.mjs +19 -19
  33. package/esm2022/carousel/carousel-item.directive.mjs +34 -0
  34. package/esm2022/carousel/carousel.component.mjs +765 -0
  35. package/{esm2020 → esm2022}/carousel/carousel.module.mjs +5 -5
  36. package/esm2022/checkbox/checkbox.component.mjs +182 -0
  37. package/esm2022/checkbox/checkbox.module.mjs +64 -0
  38. package/esm2022/chips/chips.component.mjs +187 -0
  39. package/esm2022/chips/chips.module.mjs +82 -0
  40. package/{esm2020 → esm2022}/chips/chips.service.mjs +5 -5
  41. package/esm2022/color/color-picker.component.mjs +229 -0
  42. package/esm2022/color/color.component.mjs +93 -0
  43. package/esm2022/color/color.module.mjs +93 -0
  44. package/{esm2020 → esm2022}/core/clipboard/clipboard.directive.mjs +4 -4
  45. package/{esm2020 → esm2022}/core/clipboard/clipboard.service.mjs +4 -4
  46. package/esm2022/core/common/directives/auto-width.directive.mjs +79 -0
  47. package/esm2022/core/common/directives/base-destroyer.directive.mjs +23 -0
  48. package/esm2022/core/common/directives/button-blur.directive.mjs +25 -0
  49. package/esm2022/core/common/directives/button-loader.directive.mjs +117 -0
  50. package/esm2022/core/common/directives/data-qa.directive.mjs +26 -0
  51. package/esm2022/core/common/directives/div-loader.directive.mjs +67 -0
  52. package/esm2022/core/common/directives/menu-blur.directive.mjs +33 -0
  53. package/esm2022/core/common/directives/prevent-multi-click.directive.mjs +25 -0
  54. package/esm2022/core/common/directives/print.directive.mjs +176 -0
  55. package/esm2022/core/common/model/wapi.model.mjs +247 -0
  56. package/esm2022/core/common/pipes/common-pipes.mjs +180 -0
  57. package/esm2022/core/common/pipes/date-ago.pipe.mjs +47 -0
  58. package/esm2022/core/common/services/addon.service.mjs +234 -0
  59. package/esm2022/core/common/services/color.service.mjs +383 -0
  60. package/esm2022/core/common/services/cookie.service.mjs +156 -0
  61. package/esm2022/core/common/services/data-convertor.service.mjs +139 -0
  62. package/esm2022/core/common/services/file.service.mjs +252 -0
  63. package/{esm2020 → esm2022}/core/common/services/jwt-helper.service.mjs +4 -4
  64. package/esm2022/core/common/services/session.service.mjs +73 -0
  65. package/esm2022/core/common/services/translate.service.mjs +47 -0
  66. package/esm2022/core/common/services/utilities.service.mjs +302 -0
  67. package/esm2022/core/common/services/validator.service.mjs +273 -0
  68. package/esm2022/core/common/services/window-scrolling.service.mjs +38 -0
  69. package/esm2022/core/customization/customization.model.mjs +377 -0
  70. package/esm2022/core/customization/customization.service.mjs +802 -0
  71. package/{esm2020 → esm2022}/core/http/interceptors/error.interceptor.mjs +4 -4
  72. package/esm2022/core/http/interceptors/loader.interceptor.mjs +33 -0
  73. package/{esm2020 → esm2022}/core/http/interceptors/profiler.interceptor.mjs +4 -4
  74. package/esm2022/core/http/services/http.service.mjs +158 -0
  75. package/{esm2020 → esm2022}/core/http/services/loader.service.mjs +6 -6
  76. package/esm2022/core/layout/layout.service.mjs +171 -0
  77. package/esm2022/core/layout/rtl.directive.mjs +50 -0
  78. package/esm2022/core/portal/attach.directive.mjs +30 -0
  79. package/esm2022/core/portal/portal.service.mjs +37 -0
  80. package/esm2022/core/portal/target.directive.mjs +27 -0
  81. package/{esm2020 → esm2022}/core/scroll-to/scroll-to.service.mjs +4 -4
  82. package/esm2022/date/date.component.mjs +345 -0
  83. package/{esm2020 → esm2022}/date/date.model.mjs +7 -7
  84. package/esm2022/date/date.module.mjs +89 -0
  85. package/esm2022/dialog/default-dialog.component.mjs +39 -0
  86. package/esm2022/dialog/dialog.component.mjs +37 -0
  87. package/esm2022/dialog/dialog.model.mjs +41 -0
  88. package/esm2022/dialog/dialog.module.mjs +59 -0
  89. package/esm2022/dialog/dialog.service.mjs +106 -0
  90. package/esm2022/draggable-items/draggable-item/draggable-item.component.mjs +68 -0
  91. package/esm2022/draggable-items/draggable-items.component.mjs +95 -0
  92. package/esm2022/draggable-items/draggable-items.module.mjs +65 -0
  93. package/esm2022/field-title/field-title.component.mjs +46 -0
  94. package/esm2022/field-title/field-title.module.mjs +48 -0
  95. package/{esm2020 → esm2022}/files-uploader/files-uploader.component.mjs +36 -27
  96. package/esm2022/files-uploader/files-uploader.module.mjs +80 -0
  97. package/esm2022/form/field-generator.component.mjs +152 -0
  98. package/esm2022/form/form.component.mjs +1258 -0
  99. package/esm2022/form/form.module.mjs +180 -0
  100. package/esm2022/form/indicators.component.mjs +23 -0
  101. package/esm2022/form/internal-button.component.mjs +188 -0
  102. package/esm2022/form/internal-carusel.component.mjs +126 -0
  103. package/esm2022/form/internal-carusel.service.mjs +34 -0
  104. package/esm2022/form/internal-field-generator.component.mjs +146 -0
  105. package/esm2022/form/internal-form.component.mjs +1236 -0
  106. package/esm2022/form/internal-list.component.mjs +524 -0
  107. package/esm2022/form/internal-menu.component.mjs +62 -0
  108. package/esm2022/form/internal-page.component.mjs +380 -0
  109. package/esm2022/form/internal-page.service.mjs +125 -0
  110. package/esm2022/group-buttons/group-buttons.component.mjs +73 -0
  111. package/esm2022/group-buttons/group-buttons.module.mjs +60 -0
  112. package/esm2022/icon/icon-registry.service.mjs +24 -0
  113. package/esm2022/icon/icon.component.mjs +95 -0
  114. package/{esm2020 → esm2022}/icon/icon.module.mjs +5 -5
  115. package/esm2022/icon/icon.service.mjs +34 -0
  116. package/{esm2020 → esm2022}/image/image.component.mjs +45 -39
  117. package/esm2022/image/image.module.mjs +74 -0
  118. package/esm2022/image/image.service.mjs +53 -0
  119. package/esm2022/images-filmstrip/images-filmstrip.component.mjs +360 -0
  120. package/esm2022/images-filmstrip/images-filmstrip.module.mjs +84 -0
  121. package/esm2022/link/link.component.mjs +324 -0
  122. package/esm2022/link/link.module.mjs +81 -0
  123. package/{esm2020 → esm2022}/link/link.pipes.mjs +4 -4
  124. package/esm2022/list/list-actions.component.mjs +42 -0
  125. package/esm2022/list/list-carousel.component.mjs +110 -0
  126. package/esm2022/list/list-chooser.component.mjs +64 -0
  127. package/esm2022/list/list-pager.component.mjs +126 -0
  128. package/{esm2020 → esm2022}/list/list-sorting.component.mjs +15 -13
  129. package/esm2022/list/list-total.component.mjs +31 -0
  130. package/esm2022/list/list-views.component.mjs +86 -0
  131. package/esm2022/list/list.component.mjs +1394 -0
  132. package/{esm2020 → esm2022}/list/list.model.mjs +4 -1
  133. package/esm2022/list/list.module.mjs +145 -0
  134. package/esm2022/list/list.pipes.mjs +45 -0
  135. package/esm2022/list/virtual-scroller.mjs +1124 -0
  136. package/esm2022/menu/menu-item.component.mjs +111 -0
  137. package/esm2022/menu/menu.component.mjs +218 -0
  138. package/esm2022/menu/menu.model.mjs +23 -0
  139. package/esm2022/menu/menu.module.mjs +60 -0
  140. package/{esm2020 → esm2022}/ngx-lib.module.mjs +65 -65
  141. package/esm2022/page-layout/page-layout.component.mjs +41 -0
  142. package/{esm2020 → esm2022}/page-layout/page-layout.module.mjs +13 -13
  143. package/esm2022/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +48 -0
  144. package/esm2022/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +82 -0
  145. package/esm2022/profile-data-views-list/profile-data-views-list.component.mjs +131 -0
  146. package/esm2022/profile-data-views-list/profile-data-views-list.module.mjs +89 -0
  147. package/esm2022/quantity-selector/quantity-selector-validation.directive.mjs +53 -0
  148. package/{esm2020 → esm2022}/quantity-selector/quantity-selector.component.mjs +83 -73
  149. package/esm2022/quantity-selector/quantity-selector.module.mjs +83 -0
  150. package/{esm2020 → esm2022}/quantity-selector/quantity-selector.pipes.mjs +4 -4
  151. package/esm2022/query-builder/common/model/type-map.mjs +28 -0
  152. package/esm2022/query-builder/common/services/output-query.service.mjs +118 -0
  153. package/esm2022/query-builder/common/services/query-structure.service.mjs +263 -0
  154. package/esm2022/query-builder/common/services/type-convertor.service.mjs +42 -0
  155. package/esm2022/query-builder/query-builder-item/query-builder-item.component.mjs +134 -0
  156. package/esm2022/query-builder/query-builder-section/query-builder-section.component.mjs +76 -0
  157. package/esm2022/query-builder/query-builder.component.mjs +116 -0
  158. package/esm2022/query-builder/query-builder.module.mjs +71 -0
  159. package/{esm2020 → esm2022}/query-builder/query-builder.service.mjs +4 -4
  160. package/esm2022/remote-loader/addon-block-loader.component.mjs +115 -0
  161. package/esm2022/remote-loader/addon-block-loader.service.mjs +66 -0
  162. package/esm2022/remote-loader/remote-loader-element.component.mjs +179 -0
  163. package/esm2022/remote-loader/remote-loader.component.mjs +120 -0
  164. package/{esm2020 → esm2022}/remote-loader/remote-loader.module.mjs +26 -26
  165. package/esm2022/remote-loader/remote-loader.service.mjs +107 -0
  166. package/{esm2020 → esm2022}/rich-html-textarea/rich-html-textarea.component.mjs +38 -30
  167. package/esm2022/rich-html-textarea/rich-html-textarea.module.mjs +96 -0
  168. package/esm2022/search/search.component.mjs +322 -0
  169. package/esm2022/search/search.module.mjs +71 -0
  170. package/esm2022/select/select.component.mjs +341 -0
  171. package/esm2022/select/select.module.mjs +71 -0
  172. package/esm2022/select-panel/select-panel.component.mjs +161 -0
  173. package/{esm2020 → esm2022}/select-panel/select-panel.module.mjs +31 -31
  174. package/esm2022/separator/separator.component.mjs +65 -0
  175. package/{esm2020 → esm2022}/separator/separator.module.mjs +5 -5
  176. package/esm2022/side-bar/side-bar.component.mjs +141 -0
  177. package/esm2022/side-bar/side-bar.module.mjs +56 -0
  178. package/esm2022/signature/signature-dialog.component.mjs +82 -0
  179. package/{esm2020 → esm2022}/signature/signature.component.mjs +41 -31
  180. package/esm2022/signature/signature.module.mjs +92 -0
  181. package/esm2022/size-detector/size-detector.component.mjs +97 -0
  182. package/{esm2020 → esm2022}/size-detector/size-detector.module.mjs +13 -13
  183. package/esm2022/skeleton-loader/skeleton-loader.component.mjs +46 -0
  184. package/{esm2020 → esm2022}/skeleton-loader/skeleton-loader.module.mjs +7 -7
  185. package/esm2022/slider/slider.component.mjs +105 -0
  186. package/{esm2020 → esm2022}/slider/slider.module.mjs +17 -17
  187. package/esm2022/smart-filters/boolean-filter/boolean-filter.component.mjs +74 -0
  188. package/esm2022/smart-filters/common/filter-actions.component.mjs +28 -0
  189. package/esm2022/smart-filters/common/model/base-filter-component.mjs +307 -0
  190. package/esm2022/smart-filters/common/model/field.mjs +125 -0
  191. package/esm2022/smart-filters/common/model/operator.mjs +287 -0
  192. package/esm2022/smart-filters/date-filter/date-filter.component.mjs +181 -0
  193. package/esm2022/smart-filters/multi-select-filter/multi-select-filter.component.mjs +202 -0
  194. package/esm2022/smart-filters/number-filter/number-filter.component.mjs +133 -0
  195. package/esm2022/smart-filters/smart-filters.component.mjs +143 -0
  196. package/esm2022/smart-filters/smart-filters.module.mjs +159 -0
  197. package/esm2022/smart-filters/text-filter/text-filter.component.mjs +110 -0
  198. package/esm2022/snack-bar/default-snack-bar.component.mjs +31 -0
  199. package/esm2022/snack-bar/snack-bar.component.mjs +28 -0
  200. package/esm2022/snack-bar/snack-bar.model.mjs +9 -0
  201. package/esm2022/snack-bar/snack-bar.module.mjs +63 -0
  202. package/esm2022/snack-bar/snack-bar.service.mjs +62 -0
  203. package/{esm2020 → esm2022}/textarea/textarea.component.mjs +35 -27
  204. package/esm2022/textarea/textarea.module.mjs +83 -0
  205. package/esm2022/textbox/textbox-validation.directive.mjs +96 -0
  206. package/esm2022/textbox/textbox.component.mjs +646 -0
  207. package/esm2022/textbox/textbox.module.mjs +73 -0
  208. package/esm2022/textbox-icon/textbox-icon.component.mjs +50 -0
  209. package/esm2022/textbox-icon/textbox-icon.module.mjs +65 -0
  210. package/esm2022/top-bar/top-bar.component.mjs +127 -0
  211. package/esm2022/top-bar/top-bar.module.mjs +63 -0
  212. package/fesm2022/pepperi-addons-ngx-lib-address.mjs +173 -0
  213. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-address.mjs.map +1 -1
  214. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-attachment.mjs +84 -80
  215. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
  216. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-bread-crumbs.mjs +34 -28
  217. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +1 -1
  218. package/fesm2022/pepperi-addons-ngx-lib-button.mjs +227 -0
  219. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-button.mjs.map +1 -1
  220. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-carousel.mjs +76 -55
  221. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-carousel.mjs.map +1 -1
  222. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-checkbox.mjs +54 -48
  223. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
  224. package/fesm2022/pepperi-addons-ngx-lib-chips.mjs +308 -0
  225. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
  226. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-color.mjs +92 -84
  227. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-color.mjs.map +1 -1
  228. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-date.mjs +116 -104
  229. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-date.mjs.map +1 -1
  230. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-dialog.mjs +50 -36
  231. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
  232. package/fesm2022/pepperi-addons-ngx-lib-draggable-items.mjs +229 -0
  233. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
  234. package/fesm2022/pepperi-addons-ngx-lib-field-title.mjs +101 -0
  235. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
  236. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-files-uploader.mjs +66 -56
  237. package/fesm2022/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -0
  238. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-form.mjs +391 -310
  239. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-form.mjs.map +1 -1
  240. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-group-buttons.mjs +38 -35
  241. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
  242. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-icon.mjs +23 -18
  243. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
  244. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-image.mjs +77 -68
  245. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-image.mjs.map +1 -1
  246. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-images-filmstrip.mjs +83 -60
  247. package/fesm2022/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -0
  248. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-link.mjs +113 -103
  249. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-link.mjs.map +1 -1
  250. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-list.mjs +339 -273
  251. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-list.mjs.map +1 -1
  252. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-menu.mjs +89 -87
  253. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
  254. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-page-layout.mjs +23 -17
  255. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
  256. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-profile-data-views-list.mjs +72 -63
  257. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
  258. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-quantity-selector.mjs +125 -110
  259. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
  260. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-query-builder.mjs +93 -66
  261. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
  262. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-remote-loader.mjs +84 -64
  263. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
  264. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-rich-html-textarea.mjs +76 -67
  265. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
  266. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-search.mjs +85 -79
  267. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-search.mjs.map +1 -1
  268. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-select-panel.mjs +53 -49
  269. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
  270. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-select.mjs +74 -66
  271. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-select.mjs.map +1 -1
  272. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-separator.mjs +18 -16
  273. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-separator.mjs.map +1 -1
  274. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-side-bar.mjs +44 -38
  275. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
  276. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-signature.mjs +95 -81
  277. package/fesm2022/pepperi-addons-ngx-lib-signature.mjs.map +1 -0
  278. package/fesm2022/pepperi-addons-ngx-lib-size-detector.mjs +139 -0
  279. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
  280. package/fesm2022/pepperi-addons-ngx-lib-skeleton-loader.mjs +78 -0
  281. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
  282. package/fesm2022/pepperi-addons-ngx-lib-slider.mjs +154 -0
  283. package/fesm2022/pepperi-addons-ngx-lib-slider.mjs.map +1 -0
  284. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-smart-filters.mjs +186 -158
  285. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
  286. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-snack-bar.mjs +42 -34
  287. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -1
  288. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-textarea.mjs +67 -58
  289. package/{fesm2015 → fesm2022}/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
  290. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-textbox-icon.mjs +28 -25
  291. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
  292. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-textbox.mjs +156 -144
  293. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
  294. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-top-bar.mjs +48 -32
  295. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
  296. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib.mjs +661 -449
  297. package/{fesm2020 → fesm2022}/pepperi-addons-ngx-lib.mjs.map +1 -1
  298. package/field-title/field-title.component.d.ts +1 -1
  299. package/files-uploader/files-uploader.component.d.ts +1 -1
  300. package/form/field-generator.component.d.ts +1 -1
  301. package/form/form.component.d.ts +1 -1
  302. package/form/form.module.d.ts +2 -2
  303. package/form/indicators.component.d.ts +1 -1
  304. package/form/internal-button.component.d.ts +1 -1
  305. package/form/internal-carusel.component.d.ts +1 -1
  306. package/form/internal-field-generator.component.d.ts +1 -1
  307. package/form/internal-form.component.d.ts +1 -1
  308. package/form/internal-list.component.d.ts +1 -1
  309. package/form/internal-menu.component.d.ts +1 -1
  310. package/form/internal-page.component.d.ts +1 -1
  311. package/group-buttons/group-buttons.component.d.ts +1 -1
  312. package/icon/icon.component.d.ts +1 -1
  313. package/image/image.component.d.ts +1 -1
  314. package/images-filmstrip/images-filmstrip.component.d.ts +1 -1
  315. package/link/link.component.d.ts +1 -1
  316. package/list/list-actions.component.d.ts +1 -1
  317. package/list/list-carousel.component.d.ts +1 -1
  318. package/list/list-chooser.component.d.ts +1 -1
  319. package/list/list-pager.component.d.ts +1 -1
  320. package/list/list-sorting.component.d.ts +1 -1
  321. package/list/list-total.component.d.ts +1 -1
  322. package/list/list-views.component.d.ts +1 -1
  323. package/list/list.component.d.ts +1 -1
  324. package/list/virtual-scroller.d.ts +1 -1
  325. package/menu/menu-item.component.d.ts +1 -1
  326. package/menu/menu.component.d.ts +1 -1
  327. package/package.json +159 -249
  328. package/page-layout/page-layout.component.d.ts +1 -1
  329. package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +1 -1
  330. package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +1 -1
  331. package/profile-data-views-list/profile-data-views-list.component.d.ts +1 -1
  332. package/quantity-selector/quantity-selector-validation.directive.d.ts +1 -1
  333. package/quantity-selector/quantity-selector.component.d.ts +1 -1
  334. package/query-builder/query-builder-item/query-builder-item.component.d.ts +1 -1
  335. package/query-builder/query-builder-section/query-builder-section.component.d.ts +1 -1
  336. package/query-builder/query-builder.component.d.ts +1 -1
  337. package/remote-loader/addon-block-loader.component.d.ts +1 -1
  338. package/remote-loader/remote-loader-element.component.d.ts +1 -1
  339. package/remote-loader/remote-loader.component.d.ts +1 -1
  340. package/rich-html-textarea/rich-html-textarea.component.d.ts +1 -1
  341. package/search/search.component.d.ts +1 -1
  342. package/select/select.component.d.ts +1 -1
  343. package/select-panel/select-panel.component.d.ts +1 -1
  344. package/separator/separator.component.d.ts +1 -1
  345. package/side-bar/side-bar.component.d.ts +1 -1
  346. package/signature/signature-dialog.component.d.ts +2 -2
  347. package/signature/signature.component.d.ts +1 -1
  348. package/signature/signature.module.d.ts +2 -2
  349. package/size-detector/size-detector.component.d.ts +1 -1
  350. package/skeleton-loader/skeleton-loader.component.d.ts +1 -1
  351. package/slider/slider.component.d.ts +1 -1
  352. package/slider/slider.component.theme.scss +13 -6
  353. package/smart-filters/boolean-filter/boolean-filter.component.d.ts +1 -1
  354. package/smart-filters/common/filter-actions.component.d.ts +1 -1
  355. package/smart-filters/common/model/base-filter-component.d.ts +1 -1
  356. package/smart-filters/smart-filters.component.d.ts +1 -1
  357. package/snack-bar/snack-bar.component.d.ts +1 -1
  358. package/textarea/textarea.component.d.ts +1 -1
  359. package/textbox/textbox-validation.directive.d.ts +1 -1
  360. package/textbox/textbox.component.d.ts +1 -1
  361. package/textbox-icon/textbox-icon.component.d.ts +1 -1
  362. package/top-bar/top-bar.component.d.ts +1 -1
  363. package/esm2020/address/address.component.mjs +0 -109
  364. package/esm2020/bread-crumbs/bread-crumbs.component.mjs +0 -85
  365. package/esm2020/bread-crumbs/bread-crumbs.model.mjs +0 -7
  366. package/esm2020/bread-crumbs/bread-crumbs.module.mjs +0 -50
  367. package/esm2020/button/button.model.mjs +0 -6
  368. package/esm2020/carousel/carousel-item.directive.mjs +0 -33
  369. package/esm2020/carousel/carousel.component.mjs +0 -745
  370. package/esm2020/checkbox/checkbox.component.mjs +0 -177
  371. package/esm2020/checkbox/checkbox.module.mjs +0 -63
  372. package/esm2020/chips/chips.component.mjs +0 -185
  373. package/esm2020/chips/chips.module.mjs +0 -81
  374. package/esm2020/color/color-picker.component.mjs +0 -224
  375. package/esm2020/color/color.component.mjs +0 -90
  376. package/esm2020/color/color.module.mjs +0 -93
  377. package/esm2020/core/common/directives/auto-width.directive.mjs +0 -77
  378. package/esm2020/core/common/directives/base-destroyer.directive.mjs +0 -22
  379. package/esm2020/core/common/directives/button-blur.directive.mjs +0 -24
  380. package/esm2020/core/common/directives/button-loader.directive.mjs +0 -112
  381. package/esm2020/core/common/directives/data-qa.directive.mjs +0 -23
  382. package/esm2020/core/common/directives/div-loader.directive.mjs +0 -61
  383. package/esm2020/core/common/directives/menu-blur.directive.mjs +0 -32
  384. package/esm2020/core/common/directives/prevent-multi-click.directive.mjs +0 -27
  385. package/esm2020/core/common/directives/print.directive.mjs +0 -170
  386. package/esm2020/core/common/model/wapi.model.mjs +0 -157
  387. package/esm2020/core/common/pipes/common-pipes.mjs +0 -177
  388. package/esm2020/core/common/pipes/date-ago.pipe.mjs +0 -46
  389. package/esm2020/core/common/services/addon.service.mjs +0 -227
  390. package/esm2020/core/common/services/color.service.mjs +0 -385
  391. package/esm2020/core/common/services/cookie.service.mjs +0 -153
  392. package/esm2020/core/common/services/data-convertor.service.mjs +0 -122
  393. package/esm2020/core/common/services/file.service.mjs +0 -250
  394. package/esm2020/core/common/services/session.service.mjs +0 -72
  395. package/esm2020/core/common/services/translate.service.mjs +0 -46
  396. package/esm2020/core/common/services/utilities.service.mjs +0 -301
  397. package/esm2020/core/common/services/validator.service.mjs +0 -272
  398. package/esm2020/core/common/services/window-scrolling.service.mjs +0 -36
  399. package/esm2020/core/customization/customization.model.mjs +0 -338
  400. package/esm2020/core/customization/customization.service.mjs +0 -799
  401. package/esm2020/core/http/interceptors/loader.interceptor.mjs +0 -32
  402. package/esm2020/core/http/services/http.service.mjs +0 -155
  403. package/esm2020/core/layout/layout.service.mjs +0 -168
  404. package/esm2020/core/layout/rtl.directive.mjs +0 -44
  405. package/esm2020/core/portal/attach.directive.mjs +0 -27
  406. package/esm2020/core/portal/portal.service.mjs +0 -36
  407. package/esm2020/core/portal/target.directive.mjs +0 -24
  408. package/esm2020/date/date.component.mjs +0 -334
  409. package/esm2020/date/date.module.mjs +0 -88
  410. package/esm2020/dialog/default-dialog.component.mjs +0 -37
  411. package/esm2020/dialog/dialog.component.mjs +0 -36
  412. package/esm2020/dialog/dialog.model.mjs +0 -33
  413. package/esm2020/dialog/dialog.module.mjs +0 -59
  414. package/esm2020/dialog/dialog.service.mjs +0 -103
  415. package/esm2020/draggable-items/draggable-item/draggable-item.component.mjs +0 -67
  416. package/esm2020/draggable-items/draggable-items.component.mjs +0 -94
  417. package/esm2020/draggable-items/draggable-items.module.mjs +0 -64
  418. package/esm2020/field-title/field-title.component.mjs +0 -48
  419. package/esm2020/field-title/field-title.module.mjs +0 -47
  420. package/esm2020/files-uploader/files-uploader.module.mjs +0 -79
  421. package/esm2020/form/field-generator.component.mjs +0 -152
  422. package/esm2020/form/form.component.mjs +0 -1240
  423. package/esm2020/form/form.module.mjs +0 -179
  424. package/esm2020/form/indicators.component.mjs +0 -23
  425. package/esm2020/form/internal-button.component.mjs +0 -184
  426. package/esm2020/form/internal-carusel.component.mjs +0 -121
  427. package/esm2020/form/internal-carusel.service.mjs +0 -32
  428. package/esm2020/form/internal-field-generator.component.mjs +0 -146
  429. package/esm2020/form/internal-form.component.mjs +0 -1218
  430. package/esm2020/form/internal-list.component.mjs +0 -513
  431. package/esm2020/form/internal-menu.component.mjs +0 -64
  432. package/esm2020/form/internal-page.component.mjs +0 -361
  433. package/esm2020/form/internal-page.service.mjs +0 -120
  434. package/esm2020/group-buttons/group-buttons.component.mjs +0 -71
  435. package/esm2020/group-buttons/group-buttons.module.mjs +0 -59
  436. package/esm2020/icon/icon-registry.service.mjs +0 -26
  437. package/esm2020/icon/icon.component.mjs +0 -91
  438. package/esm2020/icon/icon.service.mjs +0 -31
  439. package/esm2020/image/image.module.mjs +0 -74
  440. package/esm2020/image/image.service.mjs +0 -50
  441. package/esm2020/images-filmstrip/images-filmstrip.component.mjs +0 -338
  442. package/esm2020/images-filmstrip/images-filmstrip.module.mjs +0 -83
  443. package/esm2020/link/link.component.mjs +0 -315
  444. package/esm2020/link/link.module.mjs +0 -80
  445. package/esm2020/list/list-actions.component.mjs +0 -44
  446. package/esm2020/list/list-carousel.component.mjs +0 -107
  447. package/esm2020/list/list-chooser.component.mjs +0 -64
  448. package/esm2020/list/list-pager.component.mjs +0 -120
  449. package/esm2020/list/list-total.component.mjs +0 -33
  450. package/esm2020/list/list-views.component.mjs +0 -85
  451. package/esm2020/list/list.component.mjs +0 -1382
  452. package/esm2020/list/list.module.mjs +0 -144
  453. package/esm2020/list/list.pipes.mjs +0 -47
  454. package/esm2020/list/virtual-scroller.mjs +0 -1080
  455. package/esm2020/menu/menu-item.component.mjs +0 -115
  456. package/esm2020/menu/menu.component.mjs +0 -216
  457. package/esm2020/menu/menu.model.mjs +0 -20
  458. package/esm2020/menu/menu.module.mjs +0 -59
  459. package/esm2020/page-layout/page-layout.component.mjs +0 -35
  460. package/esm2020/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +0 -45
  461. package/esm2020/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +0 -81
  462. package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +0 -127
  463. package/esm2020/profile-data-views-list/profile-data-views-list.module.mjs +0 -88
  464. package/esm2020/quantity-selector/quantity-selector-validation.directive.mjs +0 -49
  465. package/esm2020/quantity-selector/quantity-selector.module.mjs +0 -82
  466. package/esm2020/query-builder/common/model/type-map.mjs +0 -27
  467. package/esm2020/query-builder/common/services/output-query.service.mjs +0 -116
  468. package/esm2020/query-builder/common/services/query-structure.service.mjs +0 -258
  469. package/esm2020/query-builder/common/services/type-convertor.service.mjs +0 -42
  470. package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +0 -127
  471. package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +0 -71
  472. package/esm2020/query-builder/query-builder.component.mjs +0 -110
  473. package/esm2020/query-builder/query-builder.module.mjs +0 -70
  474. package/esm2020/remote-loader/addon-block-loader.component.mjs +0 -112
  475. package/esm2020/remote-loader/addon-block-loader.service.mjs +0 -65
  476. package/esm2020/remote-loader/remote-loader-element.component.mjs +0 -171
  477. package/esm2020/remote-loader/remote-loader.component.mjs +0 -115
  478. package/esm2020/remote-loader/remote-loader.service.mjs +0 -104
  479. package/esm2020/rich-html-textarea/rich-html-textarea.module.mjs +0 -95
  480. package/esm2020/search/search.component.mjs +0 -317
  481. package/esm2020/search/search.module.mjs +0 -70
  482. package/esm2020/select/select.component.mjs +0 -334
  483. package/esm2020/select/select.module.mjs +0 -70
  484. package/esm2020/select-panel/select-panel.component.mjs +0 -157
  485. package/esm2020/separator/separator.component.mjs +0 -63
  486. package/esm2020/side-bar/side-bar.component.mjs +0 -136
  487. package/esm2020/side-bar/side-bar.module.mjs +0 -55
  488. package/esm2020/signature/signature-dialog.component.mjs +0 -79
  489. package/esm2020/signature/signature.module.mjs +0 -91
  490. package/esm2020/size-detector/size-detector.component.mjs +0 -94
  491. package/esm2020/skeleton-loader/skeleton-loader.component.mjs +0 -44
  492. package/esm2020/slider/slider.component.mjs +0 -101
  493. package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +0 -75
  494. package/esm2020/smart-filters/common/filter-actions.component.mjs +0 -29
  495. package/esm2020/smart-filters/common/model/base-filter-component.mjs +0 -290
  496. package/esm2020/smart-filters/common/model/field.mjs +0 -117
  497. package/esm2020/smart-filters/common/model/operator.mjs +0 -280
  498. package/esm2020/smart-filters/date-filter/date-filter.component.mjs +0 -182
  499. package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +0 -200
  500. package/esm2020/smart-filters/number-filter/number-filter.component.mjs +0 -136
  501. package/esm2020/smart-filters/smart-filters.component.mjs +0 -141
  502. package/esm2020/smart-filters/smart-filters.module.mjs +0 -158
  503. package/esm2020/smart-filters/text-filter/text-filter.component.mjs +0 -113
  504. package/esm2020/snack-bar/default-snack-bar.component.mjs +0 -29
  505. package/esm2020/snack-bar/snack-bar.component.mjs +0 -26
  506. package/esm2020/snack-bar/snack-bar.model.mjs +0 -7
  507. package/esm2020/snack-bar/snack-bar.module.mjs +0 -63
  508. package/esm2020/snack-bar/snack-bar.service.mjs +0 -60
  509. package/esm2020/textarea/textarea.module.mjs +0 -82
  510. package/esm2020/textbox/textbox-validation.directive.mjs +0 -93
  511. package/esm2020/textbox/textbox.component.mjs +0 -638
  512. package/esm2020/textbox/textbox.module.mjs +0 -72
  513. package/esm2020/textbox-icon/textbox-icon.component.mjs +0 -48
  514. package/esm2020/textbox-icon/textbox-icon.module.mjs +0 -64
  515. package/esm2020/top-bar/top-bar.component.mjs +0 -112
  516. package/esm2020/top-bar/top-bar.module.mjs +0 -62
  517. package/fesm2015/pepperi-addons-ngx-lib-address.mjs +0 -170
  518. package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +0 -1
  519. package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +0 -306
  520. package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +0 -1
  521. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs +0 -147
  522. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +0 -1
  523. package/fesm2015/pepperi-addons-ngx-lib-button.mjs +0 -197
  524. package/fesm2015/pepperi-addons-ngx-lib-button.mjs.map +0 -1
  525. package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs +0 -804
  526. package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs.map +0 -1
  527. package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +0 -246
  528. package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +0 -1
  529. package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +0 -306
  530. package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +0 -1
  531. package/fesm2015/pepperi-addons-ngx-lib-color.mjs +0 -404
  532. package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +0 -1
  533. package/fesm2015/pepperi-addons-ngx-lib-date.mjs +0 -481
  534. package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +0 -1
  535. package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs +0 -263
  536. package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs.map +0 -1
  537. package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +0 -227
  538. package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +0 -1
  539. package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs +0 -102
  540. package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs.map +0 -1
  541. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs +0 -331
  542. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs.map +0 -1
  543. package/fesm2015/pepperi-addons-ngx-lib-form.mjs +0 -4232
  544. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs +0 -136
  545. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs.map +0 -1
  546. package/fesm2015/pepperi-addons-ngx-lib-icon.mjs +0 -741
  547. package/fesm2015/pepperi-addons-ngx-lib-image.mjs +0 -397
  548. package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +0 -1
  549. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +0 -426
  550. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +0 -1
  551. package/fesm2015/pepperi-addons-ngx-lib-link.mjs +0 -414
  552. package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +0 -1
  553. package/fesm2015/pepperi-addons-ngx-lib-list.mjs +0 -3131
  554. package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +0 -1
  555. package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +0 -403
  556. package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +0 -1
  557. package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +0 -337
  558. package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +0 -1
  559. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +0 -741
  560. package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +0 -1226
  561. package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +0 -1
  562. package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +0 -644
  563. package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +0 -1
  564. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +0 -363
  565. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +0 -1
  566. package/fesm2015/pepperi-addons-ngx-lib-search.mjs +0 -393
  567. package/fesm2015/pepperi-addons-ngx-lib-search.mjs.map +0 -1
  568. package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +0 -235
  569. package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +0 -1
  570. package/fesm2015/pepperi-addons-ngx-lib-select.mjs +0 -410
  571. package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +0 -1
  572. package/fesm2015/pepperi-addons-ngx-lib-separator.mjs +0 -89
  573. package/fesm2015/pepperi-addons-ngx-lib-separator.mjs.map +0 -1
  574. package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +0 -196
  575. package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +0 -1
  576. package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +0 -464
  577. package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +0 -1
  578. package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs +0 -136
  579. package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs.map +0 -1
  580. package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +0 -78
  581. package/fesm2015/pepperi-addons-ngx-lib-slider.mjs +0 -151
  582. package/fesm2015/pepperi-addons-ngx-lib-slider.mjs.map +0 -1
  583. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +0 -1731
  584. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +0 -1
  585. package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs +0 -183
  586. package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs.map +0 -1
  587. package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +0 -286
  588. package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs +0 -118
  589. package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs.map +0 -1
  590. package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +0 -806
  591. package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +0 -1
  592. package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs +0 -180
  593. package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs.map +0 -1
  594. package/fesm2015/pepperi-addons-ngx-lib.mjs +0 -4995
  595. package/fesm2015/pepperi-addons-ngx-lib.mjs.map +0 -1
  596. package/fesm2020/pepperi-addons-ngx-lib-address.mjs +0 -170
  597. package/fesm2020/pepperi-addons-ngx-lib-button.mjs +0 -197
  598. package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +0 -305
  599. package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +0 -226
  600. package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs +0 -102
  601. package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs.map +0 -1
  602. package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +0 -1
  603. package/fesm2020/pepperi-addons-ngx-lib-icon.mjs.map +0 -1
  604. package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +0 -1
  605. package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +0 -1
  606. package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +0 -77
  607. package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +0 -1
  608. package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +0 -1
  609. package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs +0 -136
  610. package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +0 -76
  611. package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +0 -1
  612. package/fesm2020/pepperi-addons-ngx-lib-slider.mjs +0 -150
  613. package/fesm2020/pepperi-addons-ngx-lib-slider.mjs.map +0 -1
  614. package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +0 -1
  615. /package/{esm2020 → esm2022}/address/pepperi-addons-ngx-lib-address.mjs +0 -0
  616. /package/{esm2020 → esm2022}/address/public-api.mjs +0 -0
  617. /package/{esm2020 → esm2022}/attachment/pepperi-addons-ngx-lib-attachment.mjs +0 -0
  618. /package/{esm2020 → esm2022}/attachment/public-api.mjs +0 -0
  619. /package/{esm2020 → esm2022}/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.mjs +0 -0
  620. /package/{esm2020 → esm2022}/bread-crumbs/public-api.mjs +0 -0
  621. /package/{esm2020 → esm2022}/button/pepperi-addons-ngx-lib-button.mjs +0 -0
  622. /package/{esm2020 → esm2022}/button/public-api.mjs +0 -0
  623. /package/{esm2020 → esm2022}/carousel/pepperi-addons-ngx-lib-carousel.mjs +0 -0
  624. /package/{esm2020 → esm2022}/carousel/public-api.mjs +0 -0
  625. /package/{esm2020 → esm2022}/checkbox/pepperi-addons-ngx-lib-checkbox.mjs +0 -0
  626. /package/{esm2020 → esm2022}/checkbox/public-api.mjs +0 -0
  627. /package/{esm2020 → esm2022}/chips/chips.model.mjs +0 -0
  628. /package/{esm2020 → esm2022}/chips/pepperi-addons-ngx-lib-chips.mjs +0 -0
  629. /package/{esm2020 → esm2022}/chips/public-api.mjs +0 -0
  630. /package/{esm2020 → esm2022}/color/color.model.mjs +0 -0
  631. /package/{esm2020 → esm2022}/color/pepperi-addons-ngx-lib-color.mjs +0 -0
  632. /package/{esm2020 → esm2022}/color/public-api.mjs +0 -0
  633. /package/{esm2020 → esm2022}/core/clipboard/index.mjs +0 -0
  634. /package/{esm2020 → esm2022}/core/clipboard/public-api.mjs +0 -0
  635. /package/{esm2020 → esm2022}/core/common/directives/index.mjs +0 -0
  636. /package/{esm2020 → esm2022}/core/common/directives/public-api.mjs +0 -0
  637. /package/{esm2020 → esm2022}/core/common/index.mjs +0 -0
  638. /package/{esm2020 → esm2022}/core/common/model/index.mjs +0 -0
  639. /package/{esm2020 → esm2022}/core/common/model/papi.model.mjs +0 -0
  640. /package/{esm2020 → esm2022}/core/common/model/public-api.mjs +0 -0
  641. /package/{esm2020 → esm2022}/core/common/model/utilities.model.mjs +0 -0
  642. /package/{esm2020 → esm2022}/core/common/pipes/index.mjs +0 -0
  643. /package/{esm2020 → esm2022}/core/common/pipes/public-api.mjs +0 -0
  644. /package/{esm2020 → esm2022}/core/common/public-api.mjs +0 -0
  645. /package/{esm2020 → esm2022}/core/common/services/index.mjs +0 -0
  646. /package/{esm2020 → esm2022}/core/common/services/public-api.mjs +0 -0
  647. /package/{esm2020 → esm2022}/core/customization/index.mjs +0 -0
  648. /package/{esm2020 → esm2022}/core/customization/public-api.mjs +0 -0
  649. /package/{esm2020 → esm2022}/core/http/index.mjs +0 -0
  650. /package/{esm2020 → esm2022}/core/http/interceptors/index.mjs +0 -0
  651. /package/{esm2020 → esm2022}/core/http/public-api.mjs +0 -0
  652. /package/{esm2020 → esm2022}/core/index.mjs +0 -0
  653. /package/{esm2020 → esm2022}/core/layout/index.mjs +0 -0
  654. /package/{esm2020 → esm2022}/core/layout/public-api.mjs +0 -0
  655. /package/{esm2020 → esm2022}/core/portal/index.mjs +0 -0
  656. /package/{esm2020 → esm2022}/core/portal/public-api.mjs +0 -0
  657. /package/{esm2020 → esm2022}/core/public-api.mjs +0 -0
  658. /package/{esm2020 → esm2022}/core/scroll-to/index.mjs +0 -0
  659. /package/{esm2020 → esm2022}/core/scroll-to/public-api.mjs +0 -0
  660. /package/{esm2020 → esm2022}/date/pepperi-addons-ngx-lib-date.mjs +0 -0
  661. /package/{esm2020 → esm2022}/date/public-api.mjs +0 -0
  662. /package/{esm2020 → esm2022}/dialog/pepperi-addons-ngx-lib-dialog.mjs +0 -0
  663. /package/{esm2020 → esm2022}/dialog/public-api.mjs +0 -0
  664. /package/{esm2020 → esm2022}/draggable-items/draggable-items.model.mjs +0 -0
  665. /package/{esm2020 → esm2022}/draggable-items/pepperi-addons-ngx-lib-draggable-items.mjs +0 -0
  666. /package/{esm2020 → esm2022}/draggable-items/public-api.mjs +0 -0
  667. /package/{esm2020 → esm2022}/field-title/pepperi-addons-ngx-lib-field-title.mjs +0 -0
  668. /package/{esm2020 → esm2022}/field-title/public-api.mjs +0 -0
  669. /package/{esm2020 → esm2022}/files-uploader/pepperi-addons-ngx-lib-files-uploader.mjs +0 -0
  670. /package/{esm2020 → esm2022}/files-uploader/public-api.mjs +0 -0
  671. /package/{esm2020 → esm2022}/form/form.model.mjs +0 -0
  672. /package/{esm2020 → esm2022}/form/pepperi-addons-ngx-lib-form.mjs +0 -0
  673. /package/{esm2020 → esm2022}/form/public-api.mjs +0 -0
  674. /package/{esm2020 → esm2022}/group-buttons/pepperi-addons-ngx-lib-group-buttons.mjs +0 -0
  675. /package/{esm2020 → esm2022}/group-buttons/public-api.mjs +0 -0
  676. /package/{esm2020 → esm2022}/icon/icon-generated-all.model.mjs +0 -0
  677. /package/{esm2020 → esm2022}/icon/icon-generated.model.mjs +0 -0
  678. /package/{esm2020 → esm2022}/icon/pepperi-addons-ngx-lib-icon.mjs +0 -0
  679. /package/{esm2020 → esm2022}/icon/public-api.mjs +0 -0
  680. /package/{esm2020 → esm2022}/image/pepperi-addons-ngx-lib-image.mjs +0 -0
  681. /package/{esm2020 → esm2022}/image/public-api.mjs +0 -0
  682. /package/{esm2020 → esm2022}/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.mjs +0 -0
  683. /package/{esm2020 → esm2022}/images-filmstrip/public-api.mjs +0 -0
  684. /package/{esm2020 → esm2022}/link/pepperi-addons-ngx-lib-link.mjs +0 -0
  685. /package/{esm2020 → esm2022}/link/public-api.mjs +0 -0
  686. /package/{esm2020 → esm2022}/list/pepperi-addons-ngx-lib-list.mjs +0 -0
  687. /package/{esm2020 → esm2022}/list/public-api.mjs +0 -0
  688. /package/{esm2020 → esm2022}/menu/pepperi-addons-ngx-lib-menu.mjs +0 -0
  689. /package/{esm2020 → esm2022}/menu/public-api.mjs +0 -0
  690. /package/{esm2020 → esm2022}/page-layout/pepperi-addons-ngx-lib-page-layout.mjs +0 -0
  691. /package/{esm2020 → esm2022}/page-layout/public-api.mjs +0 -0
  692. /package/{esm2020 → esm2022}/pepperi-addons-ngx-lib.mjs +0 -0
  693. /package/{esm2020 → esm2022}/profile-data-views-list/pepperi-addons-ngx-lib-profile-data-views-list.mjs +0 -0
  694. /package/{esm2020 → esm2022}/profile-data-views-list/profile-data-views-list.model.mjs +0 -0
  695. /package/{esm2020 → esm2022}/profile-data-views-list/public-api.mjs +0 -0
  696. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  697. /package/{esm2020 → esm2022}/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.mjs +0 -0
  698. /package/{esm2020 → esm2022}/quantity-selector/public-api.mjs +0 -0
  699. /package/{esm2020 → esm2022}/query-builder/common/model/field.mjs +0 -0
  700. /package/{esm2020 → esm2022}/query-builder/common/model/filter.mjs +0 -0
  701. /package/{esm2020 → esm2022}/query-builder/common/model/legacy.mjs +0 -0
  702. /package/{esm2020 → esm2022}/query-builder/common/model/operator-unit.mjs +0 -0
  703. /package/{esm2020 → esm2022}/query-builder/common/model/operator.mjs +0 -0
  704. /package/{esm2020 → esm2022}/query-builder/common/model/structure.mjs +0 -0
  705. /package/{esm2020 → esm2022}/query-builder/common/model/type.mjs +0 -0
  706. /package/{esm2020 → esm2022}/query-builder/pepperi-addons-ngx-lib-query-builder.mjs +0 -0
  707. /package/{esm2020 → esm2022}/query-builder/public-api.mjs +0 -0
  708. /package/{esm2020 → esm2022}/remote-loader/pepperi-addons-ngx-lib-remote-loader.mjs +0 -0
  709. /package/{esm2020 → esm2022}/remote-loader/public-api.mjs +0 -0
  710. /package/{esm2020 → esm2022}/remote-loader/remote-loader.model.mjs +0 -0
  711. /package/{esm2020 → esm2022}/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.mjs +0 -0
  712. /package/{esm2020 → esm2022}/rich-html-textarea/public-api.mjs +0 -0
  713. /package/{esm2020 → esm2022}/search/pepperi-addons-ngx-lib-search.mjs +0 -0
  714. /package/{esm2020 → esm2022}/search/public-api.mjs +0 -0
  715. /package/{esm2020 → esm2022}/search/search.model.mjs +0 -0
  716. /package/{esm2020 → esm2022}/select/pepperi-addons-ngx-lib-select.mjs +0 -0
  717. /package/{esm2020 → esm2022}/select/public-api.mjs +0 -0
  718. /package/{esm2020 → esm2022}/select-panel/pepperi-addons-ngx-lib-select-panel.mjs +0 -0
  719. /package/{esm2020 → esm2022}/select-panel/public-api.mjs +0 -0
  720. /package/{esm2020 → esm2022}/select-panel/select-panel.model.mjs +0 -0
  721. /package/{esm2020 → esm2022}/separator/pepperi-addons-ngx-lib-separator.mjs +0 -0
  722. /package/{esm2020 → esm2022}/separator/public-api.mjs +0 -0
  723. /package/{esm2020 → esm2022}/side-bar/pepperi-addons-ngx-lib-side-bar.mjs +0 -0
  724. /package/{esm2020 → esm2022}/side-bar/public-api.mjs +0 -0
  725. /package/{esm2020 → esm2022}/side-bar/side-bar.model.mjs +0 -0
  726. /package/{esm2020 → esm2022}/signature/pepperi-addons-ngx-lib-signature.mjs +0 -0
  727. /package/{esm2020 → esm2022}/signature/public-api.mjs +0 -0
  728. /package/{esm2020 → esm2022}/size-detector/pepperi-addons-ngx-lib-size-detector.mjs +0 -0
  729. /package/{esm2020 → esm2022}/size-detector/public-api.mjs +0 -0
  730. /package/{esm2020 → esm2022}/skeleton-loader/pepperi-addons-ngx-lib-skeleton-loader.mjs +0 -0
  731. /package/{esm2020 → esm2022}/skeleton-loader/public-api.mjs +0 -0
  732. /package/{esm2020 → esm2022}/slider/pepperi-addons-ngx-lib-slider.mjs +0 -0
  733. /package/{esm2020 → esm2022}/slider/public-api.mjs +0 -0
  734. /package/{esm2020 → esm2022}/smart-filters/common/model/creator.mjs +0 -0
  735. /package/{esm2020 → esm2022}/smart-filters/common/model/filter.mjs +0 -0
  736. /package/{esm2020 → esm2022}/smart-filters/common/model/type.mjs +0 -0
  737. /package/{esm2020 → esm2022}/smart-filters/pepperi-addons-ngx-lib-smart-filters.mjs +0 -0
  738. /package/{esm2020 → esm2022}/smart-filters/public-api.mjs +0 -0
  739. /package/{esm2020 → esm2022}/snack-bar/pepperi-addons-ngx-lib-snack-bar.mjs +0 -0
  740. /package/{esm2020 → esm2022}/snack-bar/public-api.mjs +0 -0
  741. /package/{esm2020 → esm2022}/textarea/pepperi-addons-ngx-lib-textarea.mjs +0 -0
  742. /package/{esm2020 → esm2022}/textarea/public-api.mjs +0 -0
  743. /package/{esm2020 → esm2022}/textbox/pepperi-addons-ngx-lib-textbox.mjs +0 -0
  744. /package/{esm2020 → esm2022}/textbox/public-api.mjs +0 -0
  745. /package/{esm2020 → esm2022}/textbox-icon/pepperi-addons-ngx-lib-textbox-icon.mjs +0 -0
  746. /package/{esm2020 → esm2022}/textbox-icon/public-api.mjs +0 -0
  747. /package/{esm2020 → esm2022}/top-bar/pepperi-addons-ngx-lib-top-bar.mjs +0 -0
  748. /package/{esm2020 → esm2022}/top-bar/public-api.mjs +0 -0
  749. /package/{esm2020 → esm2022}/top-bar/top-bar.model.mjs +0 -0
@@ -0,0 +1,111 @@
1
+ import { Component, Input, Output, EventEmitter, ViewChild, } from '@angular/core';
2
+ import { pepIconArrowRight } from '@pepperi-addons/ngx-lib/icon';
3
+ import { PepMenuItem, } from './menu.model';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@angular/material/menu";
7
+ import * as i3 from "@angular/material/icon";
8
+ import * as i4 from "@pepperi-addons/ngx-lib";
9
+ import * as i5 from "@pepperi-addons/ngx-lib/icon";
10
+ export class PepInternalMenuItem extends PepMenuItem {
11
+ selected = false;
12
+ }
13
+ export class PepMenuItemComponent {
14
+ type = 'action';
15
+ parent = null;
16
+ items = [];
17
+ _selectedItem = null;
18
+ set selectedItem(selectedItem) {
19
+ this.updateSelectedItem(selectedItem);
20
+ }
21
+ get selectedItem() {
22
+ return this._selectedItem;
23
+ }
24
+ xPosition = 'after';
25
+ subMenuIconName = pepIconArrowRight.name;
26
+ childMenu;
27
+ menuItemClick = new EventEmitter();
28
+ ngOnDestroy() {
29
+ // if (this.menuItemClick) {
30
+ // this.menuItemClick.unsubscribe();
31
+ // }
32
+ }
33
+ clearSelectedItem(selectedItem) {
34
+ if (this.items) {
35
+ this.items.forEach((item) => {
36
+ item.selected = selectedItem?.key === item.key;
37
+ if (item.children) {
38
+ item.children.forEach((child) => {
39
+ this.clearSelectedChildren(child, selectedItem);
40
+ });
41
+ }
42
+ });
43
+ }
44
+ }
45
+ clearSelectedChildren(item, selectedItem) {
46
+ item.selected = selectedItem?.key === item.key;
47
+ if (item.children) {
48
+ item.children.forEach((child) => {
49
+ this.clearSelectedChildren(child, selectedItem);
50
+ });
51
+ }
52
+ }
53
+ selectParentAndChildren(items, parentsKeys) {
54
+ if (parentsKeys.length > 0) {
55
+ const key = parentsKeys.pop();
56
+ const selectedParent = items.find((item) => item.key === key);
57
+ if (selectedParent) {
58
+ selectedParent.selected = true;
59
+ this.selectParentAndChildren(selectedParent.children, parentsKeys);
60
+ }
61
+ }
62
+ }
63
+ updateSelectedParent(parentItem, parentsKeys) {
64
+ parentsKeys.push(parentItem.key);
65
+ if (parentItem.parent) {
66
+ this.updateSelectedParent(parentItem.parent, parentsKeys);
67
+ }
68
+ else {
69
+ this.selectParentAndChildren(this.items, parentsKeys);
70
+ }
71
+ }
72
+ updateSelectedItem(selectedItem) {
73
+ this.clearSelectedItem(selectedItem);
74
+ this._selectedItem = selectedItem;
75
+ if (selectedItem && selectedItem.parent) {
76
+ this.updateSelectedParent(selectedItem.parent, []);
77
+ }
78
+ }
79
+ onChildClicked(click) {
80
+ // click.source.selected = true;
81
+ this.menuItemClick.emit(click);
82
+ }
83
+ onMenuItemClicked(item) {
84
+ // item.selected = true;
85
+ this.menuItemClick.emit({ source: item });
86
+ }
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PepMenuItemComponent, selector: "pep-menu-item", inputs: { type: "type", parent: "parent", items: "items", selectedItem: "selectedItem", xPosition: "xPosition", subMenuIconName: "subMenuIconName" }, outputs: { menuItemClick: "menuItemClick" }, viewQueries: [{ propertyName: "childMenu", first: true, predicate: ["childMenu"], descendants: true, static: true }], ngImport: i0, template: "<mat-menu #childMenu=\"matMenu\" xPosition=\"{{ xPosition }}\" class=\"pep-{{type}}-menu\">\n <ng-container *ngFor=\"let menuItem of items\">\n <ng-container *ngIf=\"!menuItem.hidden\">\n <ng-container *ngIf=\"menuItem.type === 'splitter'; then splitterBlock; else buttonBlock\"></ng-container>\n <ng-template #splitterBlock>\n <div mat-menu-item class=\"splitter\"></div>\n </ng-template>\n\n <ng-template #buttonBlock>\n <ng-container\n *ngIf=\"type !== 'select' && menuItem.children?.length > 0; then childrenBlock; else regularBlock\">\n </ng-container>\n <ng-template #childrenBlock>\n <button mat-menu-item (click)=\"onMenuItemClicked(menuItem)\" [matMenuTriggerFor]=\"menu.childMenu\"\n title=\"{{ menuItem.text }}\" pepRtlDirection [disabled]=\"menuItem.disabled\"\n [ngClass]=\"{ selected: type === 'action-select' && menuItem.selected, disabled: menuItem.disabled }\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {\n itemIconName: menuItem.iconName,\n itemIconPosition: menuItem.iconPosition,\n itemText: menuItem.text,\n itemType: menuItem.type,\n hasChildren: true\n }\"></ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"menuItem.children\" [parent]=\"menuItem\"\n (menuItemClick)=\"onChildClicked($event)\">\n </pep-menu-item>\n </ng-template>\n <ng-template #regularBlock>\n <button mat-menu-item (click)=\"onMenuItemClicked(menuItem)\" title=\"{{ menuItem.text }}\"\n pepRtlDirection [disabled]=\"menuItem.disabled\"\n [ngClass]=\"{ selected: (type === 'select' || type === 'action-select') && menuItem.selected, disabled: menuItem.disabled }\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {\n itemIconName: menuItem.iconName,\n itemIconPosition: menuItem.iconPosition,\n itemText: menuItem.text,\n itemType: menuItem.type,\n hasChildren: false\n }\"></ng-container>\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n</mat-menu>\n\n<ng-template #itemTemplate let-itemIconName=\"itemIconName\" let-itemIconPosition=\"itemIconPosition\" let-itemText=\"itemText\" let-itemType=\"itemType\"\n let-hasChildren=\"hasChildren\">\n <ng-container>\n <mat-icon *ngIf=\"itemIconName && itemIconPosition === 'before'\" class=\"pull-left flip\">\n <pep-icon name=\"{{itemIconName}}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"itemText\" class=\"pull-left flip title ellipsis\"\n [ngClass]=\"{ 'spacing-from-icon': itemIconName, 'spacing-from-submenu-trigger': hasChildren }\"\n [title]=\"itemText\">\n {{ itemText }}\n </span>\n <mat-icon *ngIf=\"itemIconName && itemIconPosition === 'after'\" class=\"pull-left flip\">\n <pep-icon name=\"{{itemIconName}}\"></pep-icon>\n </mat-icon>\n <mat-icon *ngIf=\"hasChildren\" class=\"pull-left flip submenu-trigger\"\n [ngClass]=\"{ 'rotate': xPosition === 'before' }\">\n <pep-icon name=\"{{ subMenuIconName }}\"></pep-icon>\n </mat-icon>\n </ng-container>\n</ng-template>", styles: [".pager-container{display:flex;justify-content:center;align-items:center;height:calc(2rem + calc(var(--pep-spacing-sm, .5rem) * 2));padding:var(--pep-spacing-sm, .5rem)}.pager-container .page-index{min-height:unset;margin-bottom:0}.pager-container .page-index ::ng-deep .mat-form-field-flex,.pager-container .page-index ::ng-deep .mdc-form-field-flex{padding:0 .5rem;min-height:2rem}.pager-container .page-index ::ng-deep .mat-form-field-flex .mat-input-element,.pager-container .page-index ::ng-deep .mat-form-field-flex .mat-mdc-input-element,.pager-container .page-index ::ng-deep .mdc-form-field-flex .mat-input-element,.pager-container .page-index ::ng-deep .mdc-form-field-flex .mat-mdc-input-element{min-width:1.25rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.PepRtlDirectionDirective, selector: "[pepRtlDirection]" }, { kind: "component", type: i5.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: PepMenuItemComponent, selector: "pep-menu-item", inputs: ["type", "parent", "items", "selectedItem", "xPosition", "subMenuIconName"], outputs: ["menuItemClick"] }] });
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuItemComponent, decorators: [{
91
+ type: Component,
92
+ args: [{ selector: 'pep-menu-item', template: "<mat-menu #childMenu=\"matMenu\" xPosition=\"{{ xPosition }}\" class=\"pep-{{type}}-menu\">\n <ng-container *ngFor=\"let menuItem of items\">\n <ng-container *ngIf=\"!menuItem.hidden\">\n <ng-container *ngIf=\"menuItem.type === 'splitter'; then splitterBlock; else buttonBlock\"></ng-container>\n <ng-template #splitterBlock>\n <div mat-menu-item class=\"splitter\"></div>\n </ng-template>\n\n <ng-template #buttonBlock>\n <ng-container\n *ngIf=\"type !== 'select' && menuItem.children?.length > 0; then childrenBlock; else regularBlock\">\n </ng-container>\n <ng-template #childrenBlock>\n <button mat-menu-item (click)=\"onMenuItemClicked(menuItem)\" [matMenuTriggerFor]=\"menu.childMenu\"\n title=\"{{ menuItem.text }}\" pepRtlDirection [disabled]=\"menuItem.disabled\"\n [ngClass]=\"{ selected: type === 'action-select' && menuItem.selected, disabled: menuItem.disabled }\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {\n itemIconName: menuItem.iconName,\n itemIconPosition: menuItem.iconPosition,\n itemText: menuItem.text,\n itemType: menuItem.type,\n hasChildren: true\n }\"></ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"menuItem.children\" [parent]=\"menuItem\"\n (menuItemClick)=\"onChildClicked($event)\">\n </pep-menu-item>\n </ng-template>\n <ng-template #regularBlock>\n <button mat-menu-item (click)=\"onMenuItemClicked(menuItem)\" title=\"{{ menuItem.text }}\"\n pepRtlDirection [disabled]=\"menuItem.disabled\"\n [ngClass]=\"{ selected: (type === 'select' || type === 'action-select') && menuItem.selected, disabled: menuItem.disabled }\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {\n itemIconName: menuItem.iconName,\n itemIconPosition: menuItem.iconPosition,\n itemText: menuItem.text,\n itemType: menuItem.type,\n hasChildren: false\n }\"></ng-container>\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n</mat-menu>\n\n<ng-template #itemTemplate let-itemIconName=\"itemIconName\" let-itemIconPosition=\"itemIconPosition\" let-itemText=\"itemText\" let-itemType=\"itemType\"\n let-hasChildren=\"hasChildren\">\n <ng-container>\n <mat-icon *ngIf=\"itemIconName && itemIconPosition === 'before'\" class=\"pull-left flip\">\n <pep-icon name=\"{{itemIconName}}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"itemText\" class=\"pull-left flip title ellipsis\"\n [ngClass]=\"{ 'spacing-from-icon': itemIconName, 'spacing-from-submenu-trigger': hasChildren }\"\n [title]=\"itemText\">\n {{ itemText }}\n </span>\n <mat-icon *ngIf=\"itemIconName && itemIconPosition === 'after'\" class=\"pull-left flip\">\n <pep-icon name=\"{{itemIconName}}\"></pep-icon>\n </mat-icon>\n <mat-icon *ngIf=\"hasChildren\" class=\"pull-left flip submenu-trigger\"\n [ngClass]=\"{ 'rotate': xPosition === 'before' }\">\n <pep-icon name=\"{{ subMenuIconName }}\"></pep-icon>\n </mat-icon>\n </ng-container>\n</ng-template>", styles: [".pager-container{display:flex;justify-content:center;align-items:center;height:calc(2rem + calc(var(--pep-spacing-sm, .5rem) * 2));padding:var(--pep-spacing-sm, .5rem)}.pager-container .page-index{min-height:unset;margin-bottom:0}.pager-container .page-index ::ng-deep .mat-form-field-flex,.pager-container .page-index ::ng-deep .mdc-form-field-flex{padding:0 .5rem;min-height:2rem}.pager-container .page-index ::ng-deep .mat-form-field-flex .mat-input-element,.pager-container .page-index ::ng-deep .mat-form-field-flex .mat-mdc-input-element,.pager-container .page-index ::ng-deep .mdc-form-field-flex .mat-input-element,.pager-container .page-index ::ng-deep .mdc-form-field-flex .mat-mdc-input-element{min-width:1.25rem}\n"] }]
93
+ }], propDecorators: { type: [{
94
+ type: Input
95
+ }], parent: [{
96
+ type: Input
97
+ }], items: [{
98
+ type: Input
99
+ }], selectedItem: [{
100
+ type: Input
101
+ }], xPosition: [{
102
+ type: Input
103
+ }], subMenuIconName: [{
104
+ type: Input
105
+ }], childMenu: [{
106
+ type: ViewChild,
107
+ args: ['childMenu', { static: true }]
108
+ }], menuItemClick: [{
109
+ type: Output
110
+ }] } });
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvbWVudS9tZW51LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9tZW51L21lbnUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUVaLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQ0gsV0FBVyxHQUlkLE1BQU0sY0FBYyxDQUFDOzs7Ozs7O0FBRXRCLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFXO0lBQ2hELFFBQVEsR0FBYSxLQUFLLENBQUM7Q0FDOUI7QUFPRCxNQUFNLE9BQU8sb0JBQW9CO0lBQ3BCLElBQUksR0FBZ0IsUUFBUSxDQUFDO0lBRTdCLE1BQU0sR0FBc0IsSUFBSSxDQUFDO0lBQ2pDLEtBQUssR0FBK0IsRUFBRSxDQUFDO0lBRXhDLGFBQWEsR0FBd0IsSUFBSSxDQUFDO0lBQ2xELElBQ0ksWUFBWSxDQUFDLFlBQWlDO1FBQzlDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFFUSxTQUFTLEdBQXVCLE9BQU8sQ0FBQztJQUN4QyxlQUFlLEdBQVcsaUJBQWlCLENBQUMsSUFBSSxDQUFDO0lBRVQsU0FBUyxDQUFNO0lBR2hFLGFBQWEsR0FBeUMsSUFBSSxZQUFZLEVBQTBCLENBQUM7SUFFakcsV0FBVztRQUNQLDRCQUE0QjtRQUM1Qix3Q0FBd0M7UUFDeEMsSUFBSTtJQUNSLENBQUM7SUFFTyxp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O2tCQUxoQyxTQUFTOytCQUNJLGVBQWU7OEJBS2hCLElBQUk7c0JBQVosS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUlGLFlBQVk7c0JBRGYsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRTJDLFNBQVM7c0JBQXpELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFHeEMsYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBPbkRlc3Ryb3ksXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHBlcEljb25BcnJvd1JpZ2h0IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvaWNvbic7XG5pbXBvcnQge1xuICAgIFBlcE1lbnVJdGVtLFxuICAgIElQZXBNZW51SXRlbUNsaWNrRXZlbnQsXG4gICAgUGVwTWVudVR5cGUsXG4gICAgUGVwTWVudUl0ZW1QYXJlbnQsXG59IGZyb20gJy4vbWVudS5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBQZXBJbnRlcm5hbE1lbnVJdGVtIGV4dGVuZHMgUGVwTWVudUl0ZW0ge1xuICAgIHNlbGVjdGVkPzogYm9vbGVhbiA9IGZhbHNlO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1tZW51LWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL21lbnUtaXRlbS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBNZW51SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgdHlwZTogUGVwTWVudVR5cGUgPSAnYWN0aW9uJztcblxuICAgIEBJbnB1dCgpIHBhcmVudDogUGVwTWVudUl0ZW1QYXJlbnQgPSBudWxsO1xuICAgIEBJbnB1dCgpIGl0ZW1zOiBBcnJheTxQZXBJbnRlcm5hbE1lbnVJdGVtPiA9IFtdO1xuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWRJdGVtOiBQZXBJbnRlcm5hbE1lbnVJdGVtID0gbnVsbDtcbiAgICBASW5wdXQoKVxuICAgIHNldCBzZWxlY3RlZEl0ZW0oc2VsZWN0ZWRJdGVtOiBQZXBJbnRlcm5hbE1lbnVJdGVtKSB7XG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRJdGVtKHNlbGVjdGVkSXRlbSk7XG4gICAgfVxuICAgIGdldCBzZWxlY3RlZEl0ZW0oKTogUGVwSW50ZXJuYWxNZW51SXRlbSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEl0ZW07XG4gICAgfVxuXG4gICAgQElucHV0KCkgeFBvc2l0aW9uOiAnYmVmb3JlJyB8ICdhZnRlcicgPSAnYWZ0ZXInO1xuICAgIEBJbnB1dCgpIHN1Yk1lbnVJY29uTmFtZTogc3RyaW5nID0gcGVwSWNvbkFycm93UmlnaHQubmFtZTtcblxuICAgIEBWaWV3Q2hpbGQoJ2NoaWxkTWVudScsIHsgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBjaGlsZE1lbnU6IGFueTtcblxuICAgIEBPdXRwdXQoKVxuICAgIG1lbnVJdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxJUGVwTWVudUl0ZW1DbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcE1lbnVJdGVtQ2xpY2tFdmVudD4oKTtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICAvLyBpZiAodGhpcy5tZW51SXRlbUNsaWNrKSB7XG4gICAgICAgIC8vICAgICB0aGlzLm1lbnVJdGVtQ2xpY2sudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJTZWxlY3RlZEl0ZW0oc2VsZWN0ZWRJdGVtOiBQZXBJbnRlcm5hbE1lbnVJdGVtKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLml0ZW1zKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtLnNlbGVjdGVkID0gc2VsZWN0ZWRJdGVtPy5rZXkgPT09IGl0ZW0ua2V5O1xuXG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhclNlbGVjdGVkQ2hpbGRyZW4oY2hpbGQsIHNlbGVjdGVkSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhclNlbGVjdGVkQ2hpbGRyZW4oXG4gICAgICAgIGl0ZW06IFBlcEludGVybmFsTWVudUl0ZW0sXG4gICAgICAgIHNlbGVjdGVkSXRlbTogUGVwSW50ZXJuYWxNZW51SXRlbVxuICAgICk6IHZvaWQge1xuICAgICAgICBpdGVtLnNlbGVjdGVkID0gc2VsZWN0ZWRJdGVtPy5rZXkgPT09IGl0ZW0ua2V5O1xuXG4gICAgICAgIGlmIChpdGVtLmNoaWxkcmVuKSB7XG4gICAgICAgICAgICBpdGVtLmNoaWxkcmVuLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhclNlbGVjdGVkQ2hpbGRyZW4oY2hpbGQsIHNlbGVjdGVkSXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0UGFyZW50QW5kQ2hpbGRyZW4oXG4gICAgICAgIGl0ZW1zOiBBcnJheTxQZXBJbnRlcm5hbE1lbnVJdGVtPixcbiAgICAgICAgcGFyZW50c0tleXM6IEFycmF5PHN0cmluZz5cbiAgICApIHtcbiAgICAgICAgaWYgKHBhcmVudHNLZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IHBhcmVudHNLZXlzLnBvcCgpO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRQYXJlbnQgPSBpdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLmtleSA9PT0ga2V5KTtcblxuICAgICAgICAgICAgaWYgKHNlbGVjdGVkUGFyZW50KSB7XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRQYXJlbnQuc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0UGFyZW50QW5kQ2hpbGRyZW4oXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkUGFyZW50LmNoaWxkcmVuLFxuICAgICAgICAgICAgICAgICAgICBwYXJlbnRzS2V5c1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVNlbGVjdGVkUGFyZW50KFxuICAgICAgICBwYXJlbnRJdGVtOiBQZXBNZW51SXRlbVBhcmVudCxcbiAgICAgICAgcGFyZW50c0tleXM6IEFycmF5PHN0cmluZz5cbiAgICApIHtcbiAgICAgICAgcGFyZW50c0tleXMucHVzaChwYXJlbnRJdGVtLmtleSk7XG5cbiAgICAgICAgaWYgKHBhcmVudEl0ZW0ucGFyZW50KSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUGFyZW50KHBhcmVudEl0ZW0ucGFyZW50LCBwYXJlbnRzS2V5cyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdFBhcmVudEFuZENoaWxkcmVuKHRoaXMuaXRlbXMsIHBhcmVudHNLZXlzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VsZWN0ZWRJdGVtKHNlbGVjdGVkSXRlbTogUGVwSW50ZXJuYWxNZW51SXRlbSkge1xuICAgICAgICB0aGlzLmNsZWFyU2VsZWN0ZWRJdGVtKHNlbGVjdGVkSXRlbSk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbSA9IHNlbGVjdGVkSXRlbTtcblxuICAgICAgICBpZiAoc2VsZWN0ZWRJdGVtICYmIHNlbGVjdGVkSXRlbS5wYXJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRQYXJlbnQoc2VsZWN0ZWRJdGVtLnBhcmVudCwgW10pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DaGlsZENsaWNrZWQoY2xpY2s6IElQZXBNZW51SXRlbUNsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gY2xpY2suc291cmNlLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tZW51SXRlbUNsaWNrLmVtaXQoY2xpY2spO1xuICAgIH1cblxuICAgIG9uTWVudUl0ZW1DbGlja2VkKGl0ZW06IFBlcE1lbnVJdGVtKTogdm9pZCB7XG4gICAgICAgIC8vIGl0ZW0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLm1lbnVJdGVtQ2xpY2suZW1pdCh7IHNvdXJjZTogaXRlbSB9KTtcbiAgICB9XG59XG4iLCI8bWF0LW1lbnUgI2NoaWxkTWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJ7eyB4UG9zaXRpb24gfX1cIiBjbGFzcz1cInBlcC17e3R5cGV9fS1tZW51XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudUl0ZW0gb2YgaXRlbXNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtZW51SXRlbS5oaWRkZW5cIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtZW51SXRlbS50eXBlID09PSAnc3BsaXR0ZXInOyB0aGVuIHNwbGl0dGVyQmxvY2s7IGVsc2UgYnV0dG9uQmxvY2tcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3BsaXR0ZXJCbG9jaz5cbiAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzcGxpdHRlclwiPjwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNidXR0b25CbG9jaz5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHlwZSAhPT0gJ3NlbGVjdCcgJiYgbWVudUl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCA+IDA7IHRoZW4gY2hpbGRyZW5CbG9jazsgZWxzZSByZWd1bGFyQmxvY2tcIj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NoaWxkcmVuQmxvY2s+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwib25NZW51SXRlbUNsaWNrZWQobWVudUl0ZW0pXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnUuY2hpbGRNZW51XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgbWVudUl0ZW0udGV4dCB9fVwiIHBlcFJ0bERpcmVjdGlvbiBbZGlzYWJsZWRdPVwibWVudUl0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBzZWxlY3RlZDogdHlwZSA9PT0gJ2FjdGlvbi1zZWxlY3QnICYmIG1lbnVJdGVtLnNlbGVjdGVkLCBkaXNhYmxlZDogbWVudUl0ZW0uZGlzYWJsZWQgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1JY29uTmFtZTogbWVudUl0ZW0uaWNvbk5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbUljb25Qb3NpdGlvbjogbWVudUl0ZW0uaWNvblBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1UZXh0OiBtZW51SXRlbS50ZXh0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1UeXBlOiBtZW51SXRlbS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8cGVwLW1lbnUtaXRlbSAjbWVudSBbdHlwZV09XCJ0eXBlXCIgW2l0ZW1zXT1cIm1lbnVJdGVtLmNoaWxkcmVuXCIgW3BhcmVudF09XCJtZW51SXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobWVudUl0ZW1DbGljayk9XCJvbkNoaWxkQ2xpY2tlZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvcGVwLW1lbnUtaXRlbT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcmVndWxhckJsb2NrPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uTWVudUl0ZW1DbGlja2VkKG1lbnVJdGVtKVwiIHRpdGxlPVwie3sgbWVudUl0ZW0udGV4dCB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBwZXBSdGxEaXJlY3Rpb24gW2Rpc2FibGVkXT1cIm1lbnVJdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgc2VsZWN0ZWQ6ICh0eXBlID09PSAnc2VsZWN0JyB8fCB0eXBlID09PSAnYWN0aW9uLXNlbGVjdCcpICYmIG1lbnVJdGVtLnNlbGVjdGVkLCBkaXNhYmxlZDogbWVudUl0ZW0uZGlzYWJsZWQgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1JY29uTmFtZTogbWVudUl0ZW0uaWNvbk5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbUljb25Qb3NpdGlvbjogbWVudUl0ZW0uaWNvblBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1UZXh0OiBtZW51SXRlbS50ZXh0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1UeXBlOiBtZW51SXRlbS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L21hdC1tZW51PlxuXG48bmctdGVtcGxhdGUgI2l0ZW1UZW1wbGF0ZSBsZXQtaXRlbUljb25OYW1lPVwiaXRlbUljb25OYW1lXCIgbGV0LWl0ZW1JY29uUG9zaXRpb249XCJpdGVtSWNvblBvc2l0aW9uXCIgbGV0LWl0ZW1UZXh0PVwiaXRlbVRleHRcIiBsZXQtaXRlbVR5cGU9XCJpdGVtVHlwZVwiXG4gICAgbGV0LWhhc0NoaWxkcmVuPVwiaGFzQ2hpbGRyZW5cIj5cbiAgICA8bmctY29udGFpbmVyPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtSWNvbk5hbWUgJiYgaXRlbUljb25Qb3NpdGlvbiA9PT0gJ2JlZm9yZSdcIiBjbGFzcz1cInB1bGwtbGVmdCBmbGlwXCI+XG4gICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cInt7aXRlbUljb25OYW1lfX1cIj48L3BlcC1pY29uPlxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW1UZXh0XCIgY2xhc3M9XCJwdWxsLWxlZnQgZmxpcCB0aXRsZSBlbGxpcHNpc1wiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdzcGFjaW5nLWZyb20taWNvbic6IGl0ZW1JY29uTmFtZSwgJ3NwYWNpbmctZnJvbS1zdWJtZW51LXRyaWdnZXInOiBoYXNDaGlsZHJlbiB9XCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJpdGVtVGV4dFwiPlxuICAgICAgICAgICAge3sgaXRlbVRleHQgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtSWNvbk5hbWUgJiYgaXRlbUljb25Qb3NpdGlvbiA9PT0gJ2FmdGVyJ1wiIGNsYXNzPVwicHVsbC1sZWZ0IGZsaXBcIj5cbiAgICAgICAgICAgIDxwZXAtaWNvbiBuYW1lPVwie3tpdGVtSWNvbk5hbWV9fVwiPjwvcGVwLWljb24+XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImhhc0NoaWxkcmVuXCIgY2xhc3M9XCJwdWxsLWxlZnQgZmxpcCBzdWJtZW51LXRyaWdnZXJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAncm90YXRlJzogeFBvc2l0aW9uID09PSAnYmVmb3JlJyB9XCI+XG4gICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cInt7IHN1Yk1lbnVJY29uTmFtZSB9fVwiPjwvcGVwLWljb24+XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -0,0 +1,218 @@
1
+ import { Component, Input, Output, EventEmitter, } from '@angular/core';
2
+ import { trigger, state, style, transition, animate, } from '@angular/animations';
3
+ import { PepScreenSizeType, } from '@pepperi-addons/ngx-lib';
4
+ import { pepIconSystemMenu } from '@pepperi-addons/ngx-lib/icon';
5
+ import { PepMenuItemParent, } from './menu.model';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@pepperi-addons/ngx-lib";
8
+ import * as i2 from "@angular/common";
9
+ import * as i3 from "@angular/cdk/bidi";
10
+ import * as i4 from "@angular/material/menu";
11
+ import * as i5 from "@angular/material/icon";
12
+ import * as i6 from "@pepperi-addons/ngx-lib/icon";
13
+ import * as i7 from "./menu-item.component";
14
+ export class PepMenuComponent {
15
+ layoutService;
16
+ text = '';
17
+ /**
18
+ * The icon name to show on the menu, look in (@link icon -> All icons), default icon `system_menu`
19
+ *
20
+ * @type {PepIconType} See {@link PepIconType}
21
+ * @memberof PepMenuComponent
22
+ */
23
+ iconName = pepIconSystemMenu.name || 'system_menu';
24
+ iconPosition = 'after';
25
+ type = 'action';
26
+ styleType = 'weak';
27
+ sizeType = 'md';
28
+ classNames = '';
29
+ xPosition = 'after';
30
+ hideOnEmptyItems = false;
31
+ _items = null;
32
+ set items(items) {
33
+ this.setItemsParent(items);
34
+ this._items = items;
35
+ }
36
+ get items() {
37
+ return this._items;
38
+ }
39
+ selectedItem = null;
40
+ disabled = false;
41
+ stateChange = new EventEmitter();
42
+ menuItemClick = new EventEmitter();
43
+ menuClick = new EventEmitter();
44
+ state = 'hidden';
45
+ PepScreenSizeType = PepScreenSizeType;
46
+ screenSize;
47
+ displayText = null;
48
+ constructor(layoutService) {
49
+ this.layoutService = layoutService;
50
+ this.layoutService.onResize$.subscribe((size) => {
51
+ this.screenSize = size;
52
+ });
53
+ }
54
+ setChildrenParent(item, parent) {
55
+ item.parent = parent;
56
+ if (item.children && item.children.length > 0) {
57
+ item.children.forEach((child) => {
58
+ this.setChildrenParent(child, new PepMenuItemParent(item));
59
+ });
60
+ }
61
+ }
62
+ setItemsParent(items) {
63
+ if (items) {
64
+ items.forEach((item) => {
65
+ item.parent = null;
66
+ if (item.children && item.children.length > 0) {
67
+ item.children.forEach((child) => {
68
+ this.setChildrenParent(child, new PepMenuItemParent(item));
69
+ });
70
+ }
71
+ });
72
+ }
73
+ }
74
+ updateText() {
75
+ if (this.type === 'select' || this.type === 'action-select') {
76
+ this.displayText = this.selectedItem
77
+ ? this.selectedItem.text
78
+ : this.text;
79
+ }
80
+ else {
81
+ this.displayText = this.text;
82
+ }
83
+ }
84
+ ngOnChanges(changes) {
85
+ if (this.hideOnEmptyItems) {
86
+ this.state =
87
+ !this.disabled &&
88
+ this.items &&
89
+ this.items.filter((item) => !item.disabled).length > 0
90
+ ? 'visible'
91
+ : 'hidden';
92
+ }
93
+ else {
94
+ this.state = 'visible';
95
+ }
96
+ if (this.type === 'select') {
97
+ if (this.selectedItem === null &&
98
+ this.items &&
99
+ this.items.length > 0) {
100
+ this.selectedItem = this.items[0];
101
+ }
102
+ }
103
+ this.updateText();
104
+ }
105
+ ngOnDestroy() {
106
+ // if (this.menuItemClick) {
107
+ // this.menuItemClick.unsubscribe();
108
+ // }
109
+ }
110
+ onMenuClicked(event) {
111
+ this.menuClick.emit();
112
+ }
113
+ // private manipulateData(menuItem: PepMenuItem) {
114
+ // menuItem.children = null;
115
+ // if (menuItem.parent) {
116
+ // menuItem.parent = new PepMenuItem(menuItem.parent);
117
+ // this.manipulateData(menuItem.parent);
118
+ // }
119
+ // }
120
+ onMenuItemClicked(click) {
121
+ this.selectedItem = click.source;
122
+ this.updateText();
123
+ // Manipulate click data because the data is dupplicate in parent.children
124
+ // const tmp = new PepMenuItem(click.source);
125
+ // this.manipulateData(tmp);
126
+ // click.source = tmp;
127
+ this.menuItemClick.emit(click);
128
+ }
129
+ animationDone() {
130
+ if (this.state === 'hidden') {
131
+ setTimeout(() => {
132
+ this.stateChange.emit({ state: this.state });
133
+ }, 500);
134
+ }
135
+ }
136
+ animationStart() {
137
+ if (this.state === 'visible') {
138
+ this.stateChange.emit({ state: this.state });
139
+ }
140
+ }
141
+ onMenuOpened() {
142
+ this.state = 'visible';
143
+ this.stateChange.emit({ state: this.state });
144
+ }
145
+ onMenuClosed() {
146
+ this.state = 'hidden';
147
+ this.stateChange.emit({ state: this.state });
148
+ }
149
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuComponent, deps: [{ token: i1.PepLayoutService }], target: i0.ɵɵFactoryTarget.Component });
150
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PepMenuComponent, selector: "pep-menu", inputs: { text: "text", iconName: "iconName", iconPosition: "iconPosition", type: "type", styleType: "styleType", sizeType: "sizeType", classNames: "classNames", xPosition: "xPosition", hideOnEmptyItems: "hideOnEmptyItems", items: "items", selectedItem: "selectedItem", disabled: "disabled" }, outputs: { stateChange: "stateChange", menuItemClick: "menuItemClick", menuClick: "menuClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"menu-container\" dir=\"{{ layoutService.isRtl() ? 'rtl' : 'ltr' }}\">\n\n <ng-container *ngIf=\"hideOnEmptyItems then animationTemplate else regularTemplate\">\n </ng-container>\n <ng-template #animationTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS }\"\n pepRtlDirection pepMenuBlur (click)=\"onMenuClicked($event)\" [@slideInOut]=\"state\"\n (@slideInOut.done)=\"animationDone()\" (@slideInOut.start)=\"animationStart()\"\n [matMenuTriggerFor]=\"menu.childMenu\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"items\" [selectedItem]=\"selectedItem\" [xPosition]=\"xPosition\"\n (menuItemClick)=\"onMenuItemClicked($event)\">\n </pep-menu-item>\n </ng-template>\n <ng-template #regularTemplate>\n <ng-container *ngIf=\"items then menuTemplate else buttonTemplate\"></ng-container>\n <ng-template #menuTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS, disabled: disabled }\"\n pepRtlDirection pepMenuBlur [matMenuTriggerFor]=\"menu.childMenu\" [disabled]=\"disabled\"\n (menuClick)=\"onMenuClicked($event)\" (menuOpened)=\"onMenuOpened()\" (menuClosed)=\"onMenuClosed()\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"items\" [selectedItem]=\"selectedItem\" [xPosition]=\"xPosition\"\n (menuItemClick)=\"onMenuItemClicked($event)\" ></pep-menu-item>\n </ng-template>\n <ng-template #buttonTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS, disabled: disabled }\"\n pepRtlDirection pepMenuBlur (menuClick)=\"onMenuClicked($event)\" [disabled]=\"disabled\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n </ng-template>\n </ng-template>\n</div>\n\n<ng-template #triggerTemplate>\n <mat-icon *ngIf=\"iconName && iconPosition === 'before'\">\n <pep-icon name=\"{{ iconName }}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"displayText && screenSize <= PepScreenSizeType.SM\" class=\"ellipsis\"\n [ngClass]=\"{ 'button-title-with-icon': iconName, 'icon-before': iconPosition === 'before' }\" [title]=\"displayText\">\n {{ displayText }}\n </span>\n <mat-icon *ngIf=\"iconName && iconPosition === 'after'\">\n <pep-icon name=\"{{ iconName }}\"></pep-icon>\n </mat-icon>\n</ng-template>", styles: [".menu-container .pep-button{display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i1.PepMenuBlurDirective, selector: "[pepMenuBlur]" }, { kind: "directive", type: i1.PepRtlDirectionDirective, selector: "[pepRtlDirection]" }, { kind: "component", type: i6.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i7.PepMenuItemComponent, selector: "pep-menu-item", inputs: ["type", "parent", "items", "selectedItem", "xPosition", "subMenuIconName"], outputs: ["menuItemClick"] }], animations: [
151
+ trigger('slideInOut', [
152
+ state('hidden', style({
153
+ width: '0px',
154
+ padding: '0',
155
+ margin: '0',
156
+ minWidth: '0px',
157
+ opacity: 0,
158
+ })),
159
+ state('visible', style({
160
+ width: 'inherit',
161
+ opacity: 1,
162
+ })),
163
+ transition('close => open', animate('500ms ease-in')),
164
+ transition('open => close', animate('500ms ease-out')),
165
+ ]),
166
+ ] });
167
+ }
168
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuComponent, decorators: [{
169
+ type: Component,
170
+ args: [{ selector: 'pep-menu', animations: [
171
+ trigger('slideInOut', [
172
+ state('hidden', style({
173
+ width: '0px',
174
+ padding: '0',
175
+ margin: '0',
176
+ minWidth: '0px',
177
+ opacity: 0,
178
+ })),
179
+ state('visible', style({
180
+ width: 'inherit',
181
+ opacity: 1,
182
+ })),
183
+ transition('close => open', animate('500ms ease-in')),
184
+ transition('open => close', animate('500ms ease-out')),
185
+ ]),
186
+ ], template: "<div class=\"menu-container\" dir=\"{{ layoutService.isRtl() ? 'rtl' : 'ltr' }}\">\n\n <ng-container *ngIf=\"hideOnEmptyItems then animationTemplate else regularTemplate\">\n </ng-container>\n <ng-template #animationTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS }\"\n pepRtlDirection pepMenuBlur (click)=\"onMenuClicked($event)\" [@slideInOut]=\"state\"\n (@slideInOut.done)=\"animationDone()\" (@slideInOut.start)=\"animationStart()\"\n [matMenuTriggerFor]=\"menu.childMenu\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"items\" [selectedItem]=\"selectedItem\" [xPosition]=\"xPosition\"\n (menuItemClick)=\"onMenuItemClicked($event)\">\n </pep-menu-item>\n </ng-template>\n <ng-template #regularTemplate>\n <ng-container *ngIf=\"items then menuTemplate else buttonTemplate\"></ng-container>\n <ng-template #menuTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS, disabled: disabled }\"\n pepRtlDirection pepMenuBlur [matMenuTriggerFor]=\"menu.childMenu\" [disabled]=\"disabled\"\n (menuClick)=\"onMenuClicked($event)\" (menuOpened)=\"onMenuOpened()\" (menuClosed)=\"onMenuClosed()\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n <pep-menu-item #menu [type]=\"type\" [items]=\"items\" [selectedItem]=\"selectedItem\" [xPosition]=\"xPosition\"\n (menuItemClick)=\"onMenuItemClicked($event)\" ></pep-menu-item>\n </ng-template>\n <ng-template #buttonTemplate>\n <button mat-button class=\"pep-button {{ sizeType }} {{ styleType }} {{ classNames }}\"\n [ngClass]=\"{ 'icon-button': !displayText || screenSize > PepScreenSizeType.SM, 'pep-button-limited-width': screenSize < PepScreenSizeType.XS, disabled: disabled }\"\n pepRtlDirection pepMenuBlur (menuClick)=\"onMenuClicked($event)\" [disabled]=\"disabled\">\n <ng-container *ngTemplateOutlet=\"triggerTemplate\">\n </ng-container>\n </button>\n </ng-template>\n </ng-template>\n</div>\n\n<ng-template #triggerTemplate>\n <mat-icon *ngIf=\"iconName && iconPosition === 'before'\">\n <pep-icon name=\"{{ iconName }}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"displayText && screenSize <= PepScreenSizeType.SM\" class=\"ellipsis\"\n [ngClass]=\"{ 'button-title-with-icon': iconName, 'icon-before': iconPosition === 'before' }\" [title]=\"displayText\">\n {{ displayText }}\n </span>\n <mat-icon *ngIf=\"iconName && iconPosition === 'after'\">\n <pep-icon name=\"{{ iconName }}\"></pep-icon>\n </mat-icon>\n</ng-template>", styles: [".menu-container .pep-button{display:flex;align-items:center;justify-content:center}\n"] }]
187
+ }], ctorParameters: function () { return [{ type: i1.PepLayoutService }]; }, propDecorators: { text: [{
188
+ type: Input
189
+ }], iconName: [{
190
+ type: Input
191
+ }], iconPosition: [{
192
+ type: Input
193
+ }], type: [{
194
+ type: Input
195
+ }], styleType: [{
196
+ type: Input
197
+ }], sizeType: [{
198
+ type: Input
199
+ }], classNames: [{
200
+ type: Input
201
+ }], xPosition: [{
202
+ type: Input
203
+ }], hideOnEmptyItems: [{
204
+ type: Input
205
+ }], items: [{
206
+ type: Input
207
+ }], selectedItem: [{
208
+ type: Input
209
+ }], disabled: [{
210
+ type: Input
211
+ }], stateChange: [{
212
+ type: Output
213
+ }], menuItemClick: [{
214
+ type: Output
215
+ }], menuClick: [{
216
+ type: Output
217
+ }] } });
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL21lbnUvbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL21lbnUvbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxHQUNWLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUlILGlCQUFpQixHQUNwQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBZSxNQUFNLDhCQUE4QixDQUFDO0FBQzlFLE9BQU8sRUFNSCxpQkFBaUIsR0FDcEIsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7OztBQThCdEIsTUFBTSxPQUFPLGdCQUFnQjtJQTJDTjtJQTFDVixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ25COzs7OztPQUtHO0lBQ00sUUFBUSxHQUFnQixpQkFBaUIsQ0FBQyxJQUFJLElBQUksYUFBYSxDQUFDO0lBQ2hFLFlBQVksR0FBdUIsT0FBTyxDQUFDO0lBQzNDLElBQUksR0FBZ0IsUUFBUSxDQUFDO0lBQzdCLFNBQVMsR0FBaUIsTUFBTSxDQUFDO0lBQ2pDLFFBQVEsR0FBZ0IsSUFBSSxDQUFDO0lBQzdCLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDaEIsU0FBUyxHQUF1QixPQUFPLENBQUM7SUFDeEMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBRTFCLE1BQU0sR0FBdUIsSUFBSSxDQUFDO0lBQzFDLElBQ0ksS0FBSyxDQUFDLEtBQXlCO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7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QUM7U0FDTDs7NEZBRVEsZ0JBQWdCO2tCQTVCNUIsU0FBUzsrQkFDSSxVQUFVLGNBR1I7d0JBQ1IsT0FBTyxDQUFDLFlBQVksRUFBRTs0QkFDbEIsS0FBSyxDQUNELFFBQVEsRUFDUixLQUFLLENBQUM7Z0NBQ0YsS0FBSyxFQUFFLEtBQUs7Z0NBQ1osT0FBTyxFQUFFLEdBQUc7Z0NBQ1osTUFBTSxFQUFFLEdBQUc7Z0NBQ1gsUUFBUSxFQUFFLEtBQUs7Z0NBQ2YsT0FBTyxFQUFFLENBQUM7NkJBQ2IsQ0FBQyxDQUNMOzRCQUNELEtBQUssQ0FDRCxTQUFTLEVBQ1QsS0FBSyxDQUFDO2dDQUNGLEtBQUssRUFBRSxTQUFTO2dDQUNoQixPQUFPLEVBQUUsQ0FBQzs2QkFDYixDQUFDLENBQ0w7NEJBQ0QsVUFBVSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7NEJBQ3JELFVBQVUsQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7eUJBQ3pELENBQUM7cUJBQ0w7dUdBR1EsSUFBSTtzQkFBWixLQUFLO2dCQU9HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBSUYsS0FBSztzQkFEUixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFHTixXQUFXO3NCQURWLE1BQU07Z0JBR1AsYUFBYTtzQkFEWixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICB0cmlnZ2VyLFxuICAgIHN0YXRlLFxuICAgIHN0eWxlLFxuICAgIHRyYW5zaXRpb24sXG4gICAgYW5pbWF0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIFBlcExheW91dFNlcnZpY2UsXG4gICAgUGVwU3R5bGVUeXBlLFxuICAgIFBlcFNpemVUeXBlLFxuICAgIFBlcFNjcmVlblNpemVUeXBlLFxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQgeyBwZXBJY29uU3lzdGVtTWVudSwgUGVwSWNvblR5cGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9pY29uJztcbmltcG9ydCB7XG4gICAgUGVwTWVudUl0ZW0sXG4gICAgSVBlcE1lbnVJdGVtQ2xpY2tFdmVudCxcbiAgICBJUGVwTWVudVN0YXRlQ2hhbmdlRXZlbnQsXG4gICAgUGVwTWVudVN0YXRlVHlwZSxcbiAgICBQZXBNZW51VHlwZSxcbiAgICBQZXBNZW51SXRlbVBhcmVudCxcbn0gZnJvbSAnLi9tZW51Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwZXAtbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ3NsaWRlSW5PdXQnLCBbXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnaGlkZGVuJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMHB4JyxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJzAnLFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46ICcwJyxcbiAgICAgICAgICAgICAgICAgICAgbWluV2lkdGg6ICcwcHgnLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ3Zpc2libGUnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2Nsb3NlID0+IG9wZW4nLCBhbmltYXRlKCc1MDBtcyBlYXNlLWluJykpLFxuICAgICAgICAgICAgdHJhbnNpdGlvbignb3BlbiA9PiBjbG9zZScsIGFuaW1hdGUoJzUwMG1zIGVhc2Utb3V0JykpLFxuICAgICAgICBdKSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIHRleHQgPSAnJztcbiAgICAvKipcbiAgICAgKiBUaGUgaWNvbiBuYW1lIHRvIHNob3cgb24gdGhlIG1lbnUsIGxvb2sgaW4gKEBsaW5rIGljb24gLT4gQWxsIGljb25zKSwgZGVmYXVsdCBpY29uIGBzeXN0ZW1fbWVudWBcbiAgICAgKlxuICAgICAqIEB0eXBlIHtQZXBJY29uVHlwZX0gU2VlIHtAbGluayBQZXBJY29uVHlwZX1cbiAgICAgKiBAbWVtYmVyb2YgUGVwTWVudUNvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpIGljb25OYW1lOiBQZXBJY29uVHlwZSA9IHBlcEljb25TeXN0ZW1NZW51Lm5hbWUgfHwgJ3N5c3RlbV9tZW51JztcbiAgICBASW5wdXQoKSBpY29uUG9zaXRpb246ICdiZWZvcmUnIHwgJ2FmdGVyJyA9ICdhZnRlcic7XG4gICAgQElucHV0KCkgdHlwZTogUGVwTWVudVR5cGUgPSAnYWN0aW9uJztcbiAgICBASW5wdXQoKSBzdHlsZVR5cGU6IFBlcFN0eWxlVHlwZSA9ICd3ZWFrJztcbiAgICBASW5wdXQoKSBzaXplVHlwZTogUGVwU2l6ZVR5cGUgPSAnbWQnO1xuICAgIEBJbnB1dCgpIGNsYXNzTmFtZXMgPSAnJztcbiAgICBASW5wdXQoKSB4UG9zaXRpb246ICdiZWZvcmUnIHwgJ2FmdGVyJyA9ICdhZnRlcic7XG4gICAgQElucHV0KCkgaGlkZU9uRW1wdHlJdGVtcyA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfaXRlbXM6IEFycmF5PFBlcE1lbnVJdGVtPiA9IG51bGw7XG4gICAgQElucHV0KClcbiAgICBzZXQgaXRlbXMoaXRlbXM6IEFycmF5PFBlcE1lbnVJdGVtPikge1xuICAgICAgICB0aGlzLnNldEl0ZW1zUGFyZW50KGl0ZW1zKTtcbiAgICAgICAgdGhpcy5faXRlbXMgPSBpdGVtcztcbiAgICB9XG4gICAgZ2V0IGl0ZW1zKCk6IEFycmF5PFBlcE1lbnVJdGVtPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtcztcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzZWxlY3RlZEl0ZW06IFBlcE1lbnVJdGVtID0gbnVsbDtcbiAgICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgc3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUGVwTWVudVN0YXRlQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUGVwTWVudVN0YXRlQ2hhbmdlRXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpXG4gICAgbWVudUl0ZW1DbGljazogRXZlbnRFbWl0dGVyPElQZXBNZW51SXRlbUNsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUGVwTWVudUl0ZW1DbGlja0V2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBtZW51Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIHN0YXRlOiBQZXBNZW51U3RhdGVUeXBlID0gJ2hpZGRlbic7XG5cbiAgICBQZXBTY3JlZW5TaXplVHlwZSA9IFBlcFNjcmVlblNpemVUeXBlO1xuICAgIHNjcmVlblNpemU6IFBlcFNjcmVlblNpemVUeXBlO1xuXG4gICAgZGlzcGxheVRleHQ6IHN0cmluZyA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbGF5b3V0U2VydmljZTogUGVwTGF5b3V0U2VydmljZSkge1xuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uub25SZXNpemUkLnN1YnNjcmliZSgoc2l6ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zY3JlZW5TaXplID0gc2l6ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDaGlsZHJlblBhcmVudChcbiAgICAgICAgaXRlbTogUGVwTWVudUl0ZW0sXG4gICAgICAgIHBhcmVudDogUGVwTWVudUl0ZW1QYXJlbnRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaXRlbS5wYXJlbnQgPSBwYXJlbnQ7XG5cbiAgICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpdGVtLmNoaWxkcmVuLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRDaGlsZHJlblBhcmVudChjaGlsZCwgbmV3IFBlcE1lbnVJdGVtUGFyZW50KGl0ZW0pKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRJdGVtc1BhcmVudChpdGVtczogQXJyYXk8UGVwTWVudUl0ZW0+KTogdm9pZCB7XG4gICAgICAgIGlmIChpdGVtcykge1xuICAgICAgICAgICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIGl0ZW0ucGFyZW50ID0gbnVsbDtcblxuICAgICAgICAgICAgICAgIGlmIChpdGVtLmNoaWxkcmVuICYmIGl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmNoaWxkcmVuLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldENoaWxkcmVuUGFyZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBQZXBNZW51SXRlbVBhcmVudChpdGVtKVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRleHQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdzZWxlY3QnIHx8IHRoaXMudHlwZSA9PT0gJ2FjdGlvbi1zZWxlY3QnKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlUZXh0ID0gdGhpcy5zZWxlY3RlZEl0ZW1cbiAgICAgICAgICAgICAgICA/IHRoaXMuc2VsZWN0ZWRJdGVtLnRleHRcbiAgICAgICAgICAgICAgICA6IHRoaXMudGV4dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheVRleHQgPSB0aGlzLnRleHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhpZGVPbkVtcHR5SXRlbXMpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGUgPVxuICAgICAgICAgICAgICAgICF0aGlzLmRpc2FibGVkICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGl0ZW0pID0+ICFpdGVtLmRpc2FibGVkKS5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgICAgID8gJ3Zpc2libGUnXG4gICAgICAgICAgICAgICAgICAgIDogJ2hpZGRlbic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnN0YXRlID0gJ3Zpc2libGUnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ3NlbGVjdCcpIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9PT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMgJiZcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5pdGVtc1swXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVGV4dCgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICAvLyBpZiAodGhpcy5tZW51SXRlbUNsaWNrKSB7XG4gICAgICAgIC8vICAgICB0aGlzLm1lbnVJdGVtQ2xpY2sudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIG9uTWVudUNsaWNrZWQoZXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tZW51Q2xpY2suZW1pdCgpO1xuICAgIH1cblxuICAgIC8vIHByaXZhdGUgbWFuaXB1bGF0ZURhdGEobWVudUl0ZW06IFBlcE1lbnVJdGVtKSB7XG4gICAgLy8gICAgIG1lbnVJdGVtLmNoaWxkcmVuID0gbnVsbDtcblxuICAgIC8vICAgICBpZiAobWVudUl0ZW0ucGFyZW50KSB7XG4gICAgLy8gICAgICAgICBtZW51SXRlbS5wYXJlbnQgPSBuZXcgUGVwTWVudUl0ZW0obWVudUl0ZW0ucGFyZW50KTtcbiAgICAvLyAgICAgICAgIHRoaXMubWFuaXB1bGF0ZURhdGEobWVudUl0ZW0ucGFyZW50KTtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cblxuICAgIG9uTWVudUl0ZW1DbGlja2VkKGNsaWNrOiBJUGVwTWVudUl0ZW1DbGlja0V2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gY2xpY2suc291cmNlO1xuICAgICAgICB0aGlzLnVwZGF0ZVRleHQoKTtcblxuICAgICAgICAvLyBNYW5pcHVsYXRlIGNsaWNrIGRhdGEgYmVjYXVzZSB0aGUgZGF0YSBpcyBkdXBwbGljYXRlIGluIHBhcmVudC5jaGlsZHJlblxuICAgICAgICAvLyBjb25zdCB0bXAgPSBuZXcgUGVwTWVudUl0ZW0oY2xpY2suc291cmNlKTtcbiAgICAgICAgLy8gdGhpcy5tYW5pcHVsYXRlRGF0YSh0bXApO1xuICAgICAgICAvLyBjbGljay5zb3VyY2UgPSB0bXA7XG5cbiAgICAgICAgdGhpcy5tZW51SXRlbUNsaWNrLmVtaXQoY2xpY2spO1xuICAgIH1cblxuICAgIGFuaW1hdGlvbkRvbmUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnN0YXRlID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHsgc3RhdGU6IHRoaXMuc3RhdGUgfSk7XG4gICAgICAgICAgICB9LCA1MDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYW5pbWF0aW9uU3RhcnQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnN0YXRlID09PSAndmlzaWJsZScpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh7IHN0YXRlOiB0aGlzLnN0YXRlIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25NZW51T3BlbmVkKCkge1xuICAgICAgICB0aGlzLnN0YXRlID0gJ3Zpc2libGUnO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlLmVtaXQoeyBzdGF0ZTogdGhpcy5zdGF0ZSB9KTtcbiAgICB9XG5cbiAgICBvbk1lbnVDbG9zZWQoKSB7XG4gICAgICAgIHRoaXMuc3RhdGUgPSAnaGlkZGVuJztcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHsgc3RhdGU6IHRoaXMuc3RhdGUgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1lbnUtY29udGFpbmVyXCIgZGlyPVwie3sgbGF5b3V0U2VydmljZS5pc1J0bCgpID8gJ3J0bCcgOiAnbHRyJyB9fVwiPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpZGVPbkVtcHR5SXRlbXMgdGhlbiBhbmltYXRpb25UZW1wbGF0ZSBlbHNlIHJlZ3VsYXJUZW1wbGF0ZVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjYW5pbWF0aW9uVGVtcGxhdGU+XG4gICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjbGFzcz1cInBlcC1idXR0b24ge3sgc2l6ZVR5cGUgfX0ge3sgc3R5bGVUeXBlIH19IHt7IGNsYXNzTmFtZXMgfX1cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaWNvbi1idXR0b24nOiAhZGlzcGxheVRleHQgfHwgc2NyZWVuU2l6ZSA+IFBlcFNjcmVlblNpemVUeXBlLlNNLCAncGVwLWJ1dHRvbi1saW1pdGVkLXdpZHRoJzogc2NyZWVuU2l6ZSA8IFBlcFNjcmVlblNpemVUeXBlLlhTICB9XCJcbiAgICAgICAgICAgIHBlcFJ0bERpcmVjdGlvbiBwZXBNZW51Qmx1ciAoY2xpY2spPVwib25NZW51Q2xpY2tlZCgkZXZlbnQpXCIgW0BzbGlkZUluT3V0XT1cInN0YXRlXCJcbiAgICAgICAgICAgIChAc2xpZGVJbk91dC5kb25lKT1cImFuaW1hdGlvbkRvbmUoKVwiIChAc2xpZGVJbk91dC5zdGFydCk9XCJhbmltYXRpb25TdGFydCgpXCJcbiAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51LmNoaWxkTWVudVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRyaWdnZXJUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8cGVwLW1lbnUtaXRlbSAjbWVudSBbdHlwZV09XCJ0eXBlXCIgW2l0ZW1zXT1cIml0ZW1zXCIgW3NlbGVjdGVkSXRlbV09XCJzZWxlY3RlZEl0ZW1cIiBbeFBvc2l0aW9uXT1cInhQb3NpdGlvblwiXG4gICAgICAgICAgICAobWVudUl0ZW1DbGljayk9XCJvbk1lbnVJdGVtQ2xpY2tlZCgkZXZlbnQpXCI+XG4gICAgICAgIDwvcGVwLW1lbnUtaXRlbT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjcmVndWxhclRlbXBsYXRlPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbXMgdGhlbiBtZW51VGVtcGxhdGUgZWxzZSBidXR0b25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI21lbnVUZW1wbGF0ZT5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjbGFzcz1cInBlcC1idXR0b24ge3sgc2l6ZVR5cGUgfX0ge3sgc3R5bGVUeXBlIH19IHt7IGNsYXNzTmFtZXMgfX1cIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2ljb24tYnV0dG9uJzogIWRpc3BsYXlUZXh0IHx8IHNjcmVlblNpemUgPiBQZXBTY3JlZW5TaXplVHlwZS5TTSwgJ3BlcC1idXR0b24tbGltaXRlZC13aWR0aCc6IHNjcmVlblNpemUgPCBQZXBTY3JlZW5TaXplVHlwZS5YUywgZGlzYWJsZWQ6IGRpc2FibGVkIH1cIlxuICAgICAgICAgICAgICAgIHBlcFJ0bERpcmVjdGlvbiBwZXBNZW51Qmx1ciBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudS5jaGlsZE1lbnVcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgIChtZW51Q2xpY2spPVwib25NZW51Q2xpY2tlZCgkZXZlbnQpXCIgKG1lbnVPcGVuZWQpPVwib25NZW51T3BlbmVkKClcIiAobWVudUNsb3NlZCk9XCJvbk1lbnVDbG9zZWQoKVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0cmlnZ2VyVGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPHBlcC1tZW51LWl0ZW0gI21lbnUgW3R5cGVdPVwidHlwZVwiIFtpdGVtc109XCJpdGVtc1wiIFtzZWxlY3RlZEl0ZW1dPVwic2VsZWN0ZWRJdGVtXCIgW3hQb3NpdGlvbl09XCJ4UG9zaXRpb25cIlxuICAgICAgICAgICAgICAgIChtZW51SXRlbUNsaWNrKT1cIm9uTWVudUl0ZW1DbGlja2VkKCRldmVudClcIiA+PC9wZXAtbWVudS1pdGVtPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2J1dHRvblRlbXBsYXRlPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwicGVwLWJ1dHRvbiB7eyBzaXplVHlwZSB9fSB7eyBzdHlsZVR5cGUgfX0ge3sgY2xhc3NOYW1lcyB9fVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaWNvbi1idXR0b24nOiAhZGlzcGxheVRleHQgfHwgc2NyZWVuU2l6ZSA+IFBlcFNjcmVlblNpemVUeXBlLlNNLCAncGVwLWJ1dHRvbi1saW1pdGVkLXdpZHRoJzogc2NyZWVuU2l6ZSA8IFBlcFNjcmVlblNpemVUeXBlLlhTLCBkaXNhYmxlZDogZGlzYWJsZWQgfVwiXG4gICAgICAgICAgICAgICAgcGVwUnRsRGlyZWN0aW9uIHBlcE1lbnVCbHVyIChtZW51Q2xpY2spPVwib25NZW51Q2xpY2tlZCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRyaWdnZXJUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RyaWdnZXJUZW1wbGF0ZT5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uTmFtZSAmJiBpY29uUG9zaXRpb24gPT09ICdiZWZvcmUnXCI+XG4gICAgICAgIDxwZXAtaWNvbiBuYW1lPVwie3sgaWNvbk5hbWUgfX1cIj48L3BlcC1pY29uPlxuICAgIDwvbWF0LWljb24+XG4gICAgPHNwYW4gKm5nSWY9XCJkaXNwbGF5VGV4dCAmJiBzY3JlZW5TaXplIDw9IFBlcFNjcmVlblNpemVUeXBlLlNNXCIgY2xhc3M9XCJlbGxpcHNpc1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2J1dHRvbi10aXRsZS13aXRoLWljb24nOiBpY29uTmFtZSwgJ2ljb24tYmVmb3JlJzogaWNvblBvc2l0aW9uID09PSAnYmVmb3JlJyB9XCIgW3RpdGxlXT1cImRpc3BsYXlUZXh0XCI+XG4gICAgICAgIHt7IGRpc3BsYXlUZXh0IH19XG4gICAgPC9zcGFuPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25OYW1lICAmJiBpY29uUG9zaXRpb24gPT09ICdhZnRlcidcIj5cbiAgICAgICAgPHBlcC1pY29uIG5hbWU9XCJ7eyBpY29uTmFtZSB9fVwiPjwvcGVwLWljb24+XG4gICAgPC9tYXQtaWNvbj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,23 @@
1
+ export class PepMenuItemParent {
2
+ key;
3
+ parent = null;
4
+ constructor(data) {
5
+ this.key = data.key;
6
+ this.parent = data.parent;
7
+ }
8
+ }
9
+ export class PepMenuItem {
10
+ key;
11
+ text;
12
+ disabled = false;
13
+ hidden = false;
14
+ iconName = null;
15
+ iconPosition = 'before';
16
+ type = 'regular';
17
+ children = null;
18
+ parent = null;
19
+ constructor(data) {
20
+ Object.assign(this, data);
21
+ }
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvbWVudS9tZW51Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsR0FBRyxDQUFTO0lBQ1osTUFBTSxHQUF1QixJQUFJLENBQUM7SUFFbEMsWUFBWSxJQUFpQjtRQUN6QixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzlCLENBQUM7Q0FDSjtBQUNELE1BQU0sT0FBTyxXQUFXO0lBQ3BCLEdBQUcsQ0FBUztJQUNaLElBQUksQ0FBVTtJQUNkLFFBQVEsR0FBYSxLQUFLLENBQUM7SUFDM0IsTUFBTSxHQUFhLEtBQUssQ0FBQztJQUN6QixRQUFRLEdBQVksSUFBSSxDQUFDO0lBQ3pCLFlBQVksR0FBd0IsUUFBUSxDQUFDO0lBQzdDLElBQUksR0FBcUIsU0FBUyxDQUFDO0lBQ25DLFFBQVEsR0FBd0IsSUFBSSxDQUFDO0lBQ3JDLE1BQU0sR0FBdUIsSUFBSSxDQUFDO0lBRWxDLFlBQVksSUFBMEI7UUFDbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgUGVwTWVudVR5cGUgPSAnYWN0aW9uJyB8ICdhY3Rpb24tc2VsZWN0JyB8ICdzZWxlY3QnO1xuXG5leHBvcnQgdHlwZSBQZXBNZW51SXRlbVR5cGUgPSAncmVndWxhcicgfCAnc3BsaXR0ZXInO1xuXG5leHBvcnQgdHlwZSBQZXBNZW51U3RhdGVUeXBlID0gJ3Zpc2libGUnIHwgJ2hpZGRlbic7XG5cbmV4cG9ydCBjbGFzcyBQZXBNZW51SXRlbVBhcmVudCB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgcGFyZW50PzogUGVwTWVudUl0ZW1QYXJlbnQgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogUGVwTWVudUl0ZW0pIHtcbiAgICAgICAgdGhpcy5rZXkgPSBkYXRhLmtleTtcbiAgICAgICAgdGhpcy5wYXJlbnQgPSBkYXRhLnBhcmVudDtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgUGVwTWVudUl0ZW0ge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHRleHQ/OiBzdHJpbmc7XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gICAgaGlkZGVuPzogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGljb25OYW1lPzogc3RyaW5nID0gbnVsbDtcbiAgICBpY29uUG9zaXRpb24/OiAnYmVmb3JlJyB8ICdhZnRlcicgPSAnYmVmb3JlJztcbiAgICB0eXBlPzogUGVwTWVudUl0ZW1UeXBlID0gJ3JlZ3VsYXInO1xuICAgIGNoaWxkcmVuPzogQXJyYXk8UGVwTWVudUl0ZW0+ID0gbnVsbDtcbiAgICBwYXJlbnQ/OiBQZXBNZW51SXRlbVBhcmVudCA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBQYXJ0aWFsPFBlcE1lbnVJdGVtPikge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGRhdGEpO1xuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGVwTWVudUl0ZW1DbGlja0V2ZW50IHtcbiAgICBzb3VyY2U6IFBlcE1lbnVJdGVtO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQZXBNZW51U3RhdGVDaGFuZ2VFdmVudCB7XG4gICAgc3RhdGU6IFBlcE1lbnVTdGF0ZVR5cGU7XG59XG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatCommonModule } from '@angular/material/core';
4
+ import { MatFormFieldModule } from '@angular/material/form-field';
5
+ import { MatMenuModule } from '@angular/material/menu';
6
+ import { MatIconModule } from '@angular/material/icon';
7
+ import { PepNgxLibModule } from '@pepperi-addons/ngx-lib';
8
+ import { PepIconModule, pepIconSystemMenu, pepIconArrowRight, } from '@pepperi-addons/ngx-lib/icon';
9
+ import { PepMenuComponent } from './menu.component';
10
+ import { PepMenuItemComponent } from './menu-item.component';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@pepperi-addons/ngx-lib/icon";
13
+ export class PepMenuModule {
14
+ pepIconRegistry;
15
+ constructor(pepIconRegistry) {
16
+ this.pepIconRegistry = pepIconRegistry;
17
+ this.pepIconRegistry.registerIcons([
18
+ pepIconSystemMenu,
19
+ pepIconArrowRight,
20
+ ]);
21
+ }
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuModule, deps: [{ token: i1.PepIconRegistry }], target: i0.ɵɵFactoryTarget.NgModule });
23
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PepMenuModule, declarations: [PepMenuComponent, PepMenuItemComponent], imports: [CommonModule,
24
+ // Material modules,
25
+ MatCommonModule,
26
+ MatFormFieldModule,
27
+ MatMenuModule,
28
+ MatIconModule,
29
+ // ngx-lib modules
30
+ PepNgxLibModule,
31
+ PepIconModule], exports: [PepMenuComponent] });
32
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuModule, imports: [CommonModule,
33
+ // Material modules,
34
+ MatCommonModule,
35
+ MatFormFieldModule,
36
+ MatMenuModule,
37
+ MatIconModule,
38
+ // ngx-lib modules
39
+ PepNgxLibModule,
40
+ PepIconModule] });
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PepMenuModule, decorators: [{
43
+ type: NgModule,
44
+ args: [{
45
+ imports: [
46
+ CommonModule,
47
+ // Material modules,
48
+ MatCommonModule,
49
+ MatFormFieldModule,
50
+ MatMenuModule,
51
+ MatIconModule,
52
+ // ngx-lib modules
53
+ PepNgxLibModule,
54
+ PepIconModule,
55
+ ],
56
+ exports: [PepMenuComponent],
57
+ declarations: [PepMenuComponent, PepMenuItemComponent],
58
+ }]
59
+ }], ctorParameters: function () { return [{ type: i1.PepIconRegistry }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL21lbnUvbWVudS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFDSCxhQUFhLEVBRWIsaUJBQWlCLEVBQ2pCLGlCQUFpQixHQUNwQixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFpQjdELE1BQU0sT0FBTyxhQUFhO0lBQ0Y7SUFBcEIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQy9CLGlCQUFpQjtZQUNqQixpQkFBaUI7U0FDcEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt3R0FOUSxhQUFhO3lHQUFiLGFBQWEsaUJBRlAsZ0JBQWdCLEVBQUUsb0JBQW9CLGFBWGpELFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsYUFBYSxhQUVQLGdCQUFnQjt5R0FHakIsYUFBYSxZQWJsQixZQUFZO1lBQ1osb0JBQW9CO1lBQ3BCLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGFBQWE7OzRGQUtSLGFBQWE7a0JBZnpCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixhQUFhO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDM0IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQUM7aUJBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IFBlcE5neExpYk1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7XG4gICAgUGVwSWNvbk1vZHVsZSxcbiAgICBQZXBJY29uUmVnaXN0cnksXG4gICAgcGVwSWNvblN5c3RlbU1lbnUsXG4gICAgcGVwSWNvbkFycm93UmlnaHQsXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ljb24nO1xuXG5pbXBvcnQgeyBQZXBNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXBNZW51SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbWVudS1pdGVtLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIC8vIE1hdGVyaWFsIG1vZHVsZXMsXG4gICAgICAgIE1hdENvbW1vbk1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICAvLyBuZ3gtbGliIG1vZHVsZXNcbiAgICAgICAgUGVwTmd4TGliTW9kdWxlLFxuICAgICAgICBQZXBJY29uTW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1BlcE1lbnVDb21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW1BlcE1lbnVDb21wb25lbnQsIFBlcE1lbnVJdGVtQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwTWVudU1vZHVsZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBwZXBJY29uUmVnaXN0cnk6IFBlcEljb25SZWdpc3RyeSkge1xuICAgICAgICB0aGlzLnBlcEljb25SZWdpc3RyeS5yZWdpc3Rlckljb25zKFtcbiAgICAgICAgICAgIHBlcEljb25TeXN0ZW1NZW51LFxuICAgICAgICAgICAgcGVwSWNvbkFycm93UmlnaHQsXG4gICAgICAgIF0pO1xuICAgIH1cbn1cbiJdfQ==