@pepperi-addons/ngx-lib 0.3.15-beta.12 → 0.3.15-beta.15

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 (687) hide show
  1. package/address/address.component.d.ts +27 -27
  2. package/address/address.module.d.ts +2 -2
  3. package/address/pepperi-addons-ngx-lib-address.d.ts +4 -4
  4. package/address/public-api.d.ts +2 -2
  5. package/attachment/attachment.component.d.ts +82 -82
  6. package/attachment/attachment.module.d.ts +2 -2
  7. package/attachment/pepperi-addons-ngx-lib-attachment.d.ts +4 -4
  8. package/attachment/public-api.d.ts +2 -2
  9. package/bread-crumbs/bread-crumbs.component.d.ts +23 -23
  10. package/bread-crumbs/bread-crumbs.model.d.ts +11 -11
  11. package/bread-crumbs/bread-crumbs.module.d.ts +5 -5
  12. package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.d.ts +4 -4
  13. package/bread-crumbs/public-api.d.ts +3 -3
  14. package/bundles/pepperi-addons-ngx-lib-address.umd.js +124 -124
  15. package/bundles/pepperi-addons-ngx-lib-attachment.umd.js +247 -247
  16. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +121 -121
  17. package/bundles/pepperi-addons-ngx-lib-button.umd.js +158 -158
  18. package/bundles/pepperi-addons-ngx-lib-carousel.umd.js +788 -788
  19. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js +192 -192
  20. package/bundles/pepperi-addons-ngx-lib-color.umd.js +299 -299
  21. package/bundles/pepperi-addons-ngx-lib-date.umd.js +667 -667
  22. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +183 -183
  23. package/bundles/pepperi-addons-ngx-lib-draggable-items.umd.js +151 -151
  24. package/bundles/pepperi-addons-ngx-lib-field-title.umd.js +57 -57
  25. package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js +260 -260
  26. package/bundles/pepperi-addons-ngx-lib-form.umd.js +3249 -3249
  27. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js +87 -87
  28. package/bundles/pepperi-addons-ngx-lib-icon.umd.js +681 -681
  29. package/bundles/pepperi-addons-ngx-lib-image.umd.js +322 -322
  30. package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js +422 -422
  31. package/bundles/pepperi-addons-ngx-lib-link.umd.js +387 -387
  32. package/bundles/pepperi-addons-ngx-lib-list.umd.js +3191 -3191
  33. package/bundles/pepperi-addons-ngx-lib-menu.umd.js +646 -646
  34. package/bundles/pepperi-addons-ngx-lib-page-layout.umd.js +60 -60
  35. package/bundles/pepperi-addons-ngx-lib-profile-data-views-list.umd.js +543 -543
  36. package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js +923 -923
  37. package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js +1074 -1074
  38. package/bundles/pepperi-addons-ngx-lib-remote-loader.umd.js +653 -643
  39. package/bundles/pepperi-addons-ngx-lib-remote-loader.umd.js.map +1 -1
  40. package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js +275 -275
  41. package/bundles/pepperi-addons-ngx-lib-search.umd.js +326 -326
  42. package/bundles/pepperi-addons-ngx-lib-select.umd.js +575 -575
  43. package/bundles/pepperi-addons-ngx-lib-separator.umd.js +79 -79
  44. package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js +163 -163
  45. package/bundles/pepperi-addons-ngx-lib-signature.umd.js +286 -286
  46. package/bundles/pepperi-addons-ngx-lib-size-detector.umd.js +113 -113
  47. package/bundles/pepperi-addons-ngx-lib-slider.umd.js +124 -124
  48. package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js +1780 -1780
  49. package/bundles/pepperi-addons-ngx-lib-snack-bar.umd.js +148 -148
  50. package/bundles/pepperi-addons-ngx-lib-textarea.umd.js +211 -211
  51. package/bundles/pepperi-addons-ngx-lib-textbox-icon.umd.js +80 -80
  52. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js +530 -530
  53. package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js +129 -129
  54. package/bundles/pepperi-addons-ngx-lib.umd.js +4773 -4773
  55. package/button/button.component.d.ts +99 -99
  56. package/button/button.model.d.ts +14 -14
  57. package/button/button.module.d.ts +2 -2
  58. package/button/pepperi-addons-ngx-lib-button.d.ts +4 -4
  59. package/button/public-api.d.ts +3 -3
  60. package/carousel/carousel-item.directive.d.ts +9 -9
  61. package/carousel/carousel.component.d.ts +145 -145
  62. package/carousel/carousel.module.d.ts +2 -2
  63. package/carousel/pepperi-addons-ngx-lib-carousel.d.ts +4 -4
  64. package/carousel/public-api.d.ts +3 -3
  65. package/checkbox/checkbox.component.d.ts +47 -47
  66. package/checkbox/checkbox.module.d.ts +5 -5
  67. package/checkbox/pepperi-addons-ngx-lib-checkbox.d.ts +4 -4
  68. package/checkbox/public-api.d.ts +2 -2
  69. package/color/color-picker.component.d.ts +53 -53
  70. package/color/color.component.d.ts +26 -26
  71. package/color/color.model.d.ts +1 -1
  72. package/color/color.module.d.ts +5 -5
  73. package/color/pepperi-addons-ngx-lib-color.d.ts +5 -5
  74. package/color/public-api.d.ts +3 -3
  75. package/core/clipboard/clipboard.directive.d.ts +2 -2
  76. package/core/clipboard/clipboard.service.d.ts +2 -2
  77. package/core/clipboard/index.d.ts +1 -1
  78. package/core/clipboard/public-api.d.ts +2 -2
  79. package/core/common/directives/auto-width.directive.d.ts +16 -16
  80. package/core/common/directives/button-blur.directive.d.ts +6 -6
  81. package/core/common/directives/button-loader.directive.d.ts +23 -23
  82. package/core/common/directives/data-qa.directive.d.ts +8 -8
  83. package/core/common/directives/index.d.ts +1 -1
  84. package/core/common/directives/menu-blur.directive.d.ts +7 -7
  85. package/core/common/directives/prevent-multi-click.directive.d.ts +4 -4
  86. package/core/common/directives/print.directive.d.ts +72 -72
  87. package/core/common/directives/public-api.d.ts +7 -7
  88. package/core/common/index.d.ts +1 -1
  89. package/core/common/model/index.d.ts +1 -1
  90. package/core/common/model/papi.model.d.ts +2 -2
  91. package/core/common/model/public-api.d.ts +3 -3
  92. package/core/common/model/utilities.model.d.ts +5 -5
  93. package/core/common/model/wapi.model.d.ts +200 -200
  94. package/core/common/pipes/common-pipes.d.ts +36 -36
  95. package/core/common/pipes/index.d.ts +1 -1
  96. package/core/common/pipes/public-api.d.ts +1 -1
  97. package/core/common/public-api.d.ts +4 -4
  98. package/core/common/services/addon.service.d.ts +38 -38
  99. package/core/common/services/color.service.d.ts +48 -48
  100. package/core/common/services/cookie.service.d.ts +50 -50
  101. package/core/common/services/data-convertor.service.d.ts +41 -41
  102. package/core/common/services/file.service.d.ts +24 -24
  103. package/core/common/services/index.d.ts +1 -1
  104. package/core/common/services/jwt-helper.service.d.ts +10 -10
  105. package/core/common/services/public-api.d.ts +11 -11
  106. package/core/common/services/session.service.d.ts +15 -15
  107. package/core/common/services/translate.service.d.ts +9 -9
  108. package/core/common/services/utilities.service.d.ts +17 -17
  109. package/core/common/services/validator.service.d.ts +28 -28
  110. package/core/common/services/window-scrolling.service.d.ts +7 -7
  111. package/core/customization/customization.model.d.ts +264 -264
  112. package/core/customization/customization.service.d.ts +156 -156
  113. package/core/customization/index.d.ts +1 -1
  114. package/core/customization/public-api.d.ts +2 -2
  115. package/core/http/index.d.ts +1 -1
  116. package/core/http/interceptors/error.interceptor.d.ts +5 -5
  117. package/core/http/interceptors/index.d.ts +11 -11
  118. package/core/http/interceptors/loader.interceptor.d.ts +8 -8
  119. package/core/http/interceptors/profiler.interceptor.d.ts +5 -5
  120. package/core/http/public-api.d.ts +2 -2
  121. package/core/http/services/http.service.d.ts +25 -25
  122. package/core/http/services/loader.service.d.ts +10 -10
  123. package/core/index.d.ts +1 -1
  124. package/core/layout/index.d.ts +1 -1
  125. package/core/layout/layout.service.d.ts +33 -33
  126. package/core/layout/public-api.d.ts +2 -2
  127. package/core/layout/rtl.directive.d.ts +16 -16
  128. package/core/portal/attach.directive.d.ts +10 -10
  129. package/core/portal/index.d.ts +1 -1
  130. package/core/portal/portal.service.d.ts +9 -9
  131. package/core/portal/public-api.d.ts +3 -3
  132. package/core/portal/target.directive.d.ts +9 -9
  133. package/core/public-api.d.ts +7 -7
  134. package/core/scroll-to/index.d.ts +1 -1
  135. package/core/scroll-to/public-api.d.ts +1 -1
  136. package/core/scroll-to/scroll-to.service.d.ts +8 -8
  137. package/date/date.component.d.ts +66 -66
  138. package/date/date.model.d.ts +26 -26
  139. package/date/date.module.d.ts +5 -5
  140. package/date/pepperi-addons-ngx-lib-date.d.ts +5 -5
  141. package/date/public-api.d.ts +2 -2
  142. package/dialog/default-dialog.component.d.ts +9 -9
  143. package/dialog/dialog.component.d.ts +10 -10
  144. package/dialog/dialog.model.d.ts +27 -27
  145. package/dialog/dialog.module.d.ts +5 -5
  146. package/dialog/dialog.service.d.ts +24 -24
  147. package/dialog/pepperi-addons-ngx-lib-dialog.d.ts +5 -5
  148. package/dialog/public-api.d.ts +4 -4
  149. package/draggable-items/draggable-item/draggable-item.component.d.ts +8 -8
  150. package/draggable-items/draggable-items.component.d.ts +33 -33
  151. package/draggable-items/draggable-items.model.d.ts +7 -7
  152. package/draggable-items/draggable-items.module.d.ts +5 -5
  153. package/draggable-items/pepperi-addons-ngx-lib-draggable-items.d.ts +4 -4
  154. package/draggable-items/public-api.d.ts +4 -4
  155. package/esm2015/address/address.component.js +96 -96
  156. package/esm2015/address/address.module.js +30 -30
  157. package/esm2015/address/pepperi-addons-ngx-lib-address.js +4 -4
  158. package/esm2015/address/public-api.js +5 -5
  159. package/esm2015/attachment/attachment.component.js +208 -208
  160. package/esm2015/attachment/attachment.module.js +28 -28
  161. package/esm2015/attachment/pepperi-addons-ngx-lib-attachment.js +4 -4
  162. package/esm2015/attachment/public-api.js +5 -5
  163. package/esm2015/bread-crumbs/bread-crumbs.component.js +78 -78
  164. package/esm2015/bread-crumbs/bread-crumbs.model.js +6 -6
  165. package/esm2015/bread-crumbs/bread-crumbs.module.js +34 -34
  166. package/esm2015/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.js +4 -4
  167. package/esm2015/bread-crumbs/public-api.js +6 -6
  168. package/esm2015/button/button.component.js +127 -127
  169. package/esm2015/button/button.model.js +5 -5
  170. package/esm2015/button/button.module.js +26 -26
  171. package/esm2015/button/pepperi-addons-ngx-lib-button.js +4 -4
  172. package/esm2015/button/public-api.js +6 -6
  173. package/esm2015/carousel/carousel-item.directive.js +26 -26
  174. package/esm2015/carousel/carousel.component.js +699 -699
  175. package/esm2015/carousel/carousel.module.js +11 -11
  176. package/esm2015/carousel/pepperi-addons-ngx-lib-carousel.js +4 -4
  177. package/esm2015/carousel/public-api.js +7 -7
  178. package/esm2015/checkbox/checkbox.component.js +151 -151
  179. package/esm2015/checkbox/checkbox.module.js +39 -39
  180. package/esm2015/checkbox/pepperi-addons-ngx-lib-checkbox.js +4 -4
  181. package/esm2015/checkbox/public-api.js +5 -5
  182. package/esm2015/color/color-picker.component.js +197 -197
  183. package/esm2015/color/color.component.js +74 -74
  184. package/esm2015/color/color.model.js +1 -1
  185. package/esm2015/color/color.module.js +57 -57
  186. package/esm2015/color/pepperi-addons-ngx-lib-color.js +5 -5
  187. package/esm2015/color/public-api.js +6 -6
  188. package/esm2015/core/clipboard/clipboard.directive.js +19 -19
  189. package/esm2015/core/clipboard/clipboard.service.js +11 -11
  190. package/esm2015/core/clipboard/index.js +4 -4
  191. package/esm2015/core/clipboard/public-api.js +5 -5
  192. package/esm2015/core/common/directives/auto-width.directive.js +77 -77
  193. package/esm2015/core/common/directives/button-blur.directive.js +22 -22
  194. package/esm2015/core/common/directives/button-loader.directive.js +102 -102
  195. package/esm2015/core/common/directives/data-qa.directive.js +22 -22
  196. package/esm2015/core/common/directives/index.js +4 -4
  197. package/esm2015/core/common/directives/menu-blur.directive.js +28 -28
  198. package/esm2015/core/common/directives/prevent-multi-click.directive.js +21 -21
  199. package/esm2015/core/common/directives/print.directive.js +134 -134
  200. package/esm2015/core/common/directives/public-api.js +11 -11
  201. package/esm2015/core/common/index.js +4 -4
  202. package/esm2015/core/common/model/index.js +4 -4
  203. package/esm2015/core/common/model/papi.model.js +2 -2
  204. package/esm2015/core/common/model/public-api.js +6 -6
  205. package/esm2015/core/common/model/utilities.model.js +56 -56
  206. package/esm2015/core/common/model/wapi.model.js +155 -155
  207. package/esm2015/core/common/pipes/common-pipes.js +141 -141
  208. package/esm2015/core/common/pipes/index.js +4 -4
  209. package/esm2015/core/common/pipes/public-api.js +4 -4
  210. package/esm2015/core/common/public-api.js +7 -7
  211. package/esm2015/core/common/services/addon.service.js +160 -160
  212. package/esm2015/core/common/services/color.service.js +356 -356
  213. package/esm2015/core/common/services/cookie.service.js +147 -147
  214. package/esm2015/core/common/services/data-convertor.service.js +117 -117
  215. package/esm2015/core/common/services/file.service.js +211 -211
  216. package/esm2015/core/common/services/index.js +4 -4
  217. package/esm2015/core/common/services/jwt-helper.service.js +103 -103
  218. package/esm2015/core/common/services/public-api.js +14 -14
  219. package/esm2015/core/common/services/session.service.js +72 -72
  220. package/esm2015/core/common/services/translate.service.js +47 -47
  221. package/esm2015/core/common/services/utilities.service.js +125 -125
  222. package/esm2015/core/common/services/validator.service.js +272 -272
  223. package/esm2015/core/common/services/window-scrolling.service.js +30 -30
  224. package/esm2015/core/customization/customization.model.js +289 -289
  225. package/esm2015/core/customization/customization.service.js +777 -777
  226. package/esm2015/core/customization/index.js +4 -4
  227. package/esm2015/core/customization/public-api.js +5 -5
  228. package/esm2015/core/http/index.js +4 -4
  229. package/esm2015/core/http/interceptors/error.interceptor.js +23 -23
  230. package/esm2015/core/http/interceptors/index.js +23 -23
  231. package/esm2015/core/http/interceptors/loader.interceptor.js +32 -32
  232. package/esm2015/core/http/interceptors/profiler.interceptor.js +28 -28
  233. package/esm2015/core/http/public-api.js +5 -5
  234. package/esm2015/core/http/services/http.service.js +160 -160
  235. package/esm2015/core/http/services/loader.service.js +48 -48
  236. package/esm2015/core/index.js +4 -4
  237. package/esm2015/core/layout/index.js +4 -4
  238. package/esm2015/core/layout/layout.service.js +168 -168
  239. package/esm2015/core/layout/public-api.js +5 -5
  240. package/esm2015/core/layout/rtl.directive.js +46 -46
  241. package/esm2015/core/portal/attach.directive.js +26 -26
  242. package/esm2015/core/portal/index.js +4 -4
  243. package/esm2015/core/portal/portal.service.js +34 -34
  244. package/esm2015/core/portal/public-api.js +6 -6
  245. package/esm2015/core/portal/target.directive.js +23 -23
  246. package/esm2015/core/public-api.js +10 -10
  247. package/esm2015/core/scroll-to/index.js +4 -4
  248. package/esm2015/core/scroll-to/public-api.js +5 -5
  249. package/esm2015/core/scroll-to/scroll-to.service.js +81 -81
  250. package/esm2015/date/date.component.js +251 -251
  251. package/esm2015/date/date.model.js +44 -44
  252. package/esm2015/date/date.module.js +50 -50
  253. package/esm2015/date/pepperi-addons-ngx-lib-date.js +5 -5
  254. package/esm2015/date/public-api.js +5 -5
  255. package/esm2015/dialog/default-dialog.component.js +31 -31
  256. package/esm2015/dialog/dialog.component.js +27 -27
  257. package/esm2015/dialog/dialog.model.js +21 -21
  258. package/esm2015/dialog/dialog.module.js +39 -39
  259. package/esm2015/dialog/dialog.service.js +76 -76
  260. package/esm2015/dialog/pepperi-addons-ngx-lib-dialog.js +5 -5
  261. package/esm2015/dialog/public-api.js +7 -7
  262. package/esm2015/draggable-items/draggable-item/draggable-item.component.js +24 -24
  263. package/esm2015/draggable-items/draggable-items.component.js +91 -91
  264. package/esm2015/draggable-items/draggable-items.model.js +1 -1
  265. package/esm2015/draggable-items/draggable-items.module.js +42 -42
  266. package/esm2015/draggable-items/pepperi-addons-ngx-lib-draggable-items.js +4 -4
  267. package/esm2015/draggable-items/public-api.js +7 -7
  268. package/esm2015/field-title/field-title.component.js +31 -31
  269. package/esm2015/field-title/field-title.module.js +31 -31
  270. package/esm2015/field-title/pepperi-addons-ngx-lib-field-title.js +4 -4
  271. package/esm2015/field-title/public-api.js +5 -5
  272. package/esm2015/files-uploader/files-uploader.component.js +220 -220
  273. package/esm2015/files-uploader/files-uploader.module.js +49 -49
  274. package/esm2015/files-uploader/pepperi-addons-ngx-lib-files-uploader.js +4 -4
  275. package/esm2015/files-uploader/public-api.js +5 -5
  276. package/esm2015/form/field-generator.component.js +121 -121
  277. package/esm2015/form/form.component.js +1196 -1196
  278. package/esm2015/form/form.model.js +1 -1
  279. package/esm2015/form/form.module.js +107 -107
  280. package/esm2015/form/indicators.component.js +20 -20
  281. package/esm2015/form/internal-button.component.js +165 -165
  282. package/esm2015/form/internal-carusel.component.js +115 -115
  283. package/esm2015/form/internal-carusel.service.js +31 -31
  284. package/esm2015/form/internal-list.component.js +494 -494
  285. package/esm2015/form/internal-menu.component.js +54 -54
  286. package/esm2015/form/internal-page.component.js +350 -350
  287. package/esm2015/form/internal-page.service.js +120 -120
  288. package/esm2015/form/pepperi-addons-ngx-lib-form.js +13 -13
  289. package/esm2015/form/public-api.js +6 -6
  290. package/esm2015/group-buttons/group-buttons.component.js +57 -57
  291. package/esm2015/group-buttons/group-buttons.module.js +37 -37
  292. package/esm2015/group-buttons/pepperi-addons-ngx-lib-group-buttons.js +4 -4
  293. package/esm2015/group-buttons/public-api.js +5 -5
  294. package/esm2015/icon/icon-generated-all.model.js +100 -100
  295. package/esm2015/icon/icon-generated.model.js +389 -389
  296. package/esm2015/icon/icon-registry.service.js +22 -22
  297. package/esm2015/icon/icon.component.js +124 -124
  298. package/esm2015/icon/icon.module.js +14 -14
  299. package/esm2015/icon/icon.service.js +31 -31
  300. package/esm2015/icon/pepperi-addons-ngx-lib-icon.js +4 -4
  301. package/esm2015/icon/public-api.js +10 -10
  302. package/esm2015/image/image.component.js +228 -228
  303. package/esm2015/image/image.module.js +48 -48
  304. package/esm2015/image/image.service.js +54 -54
  305. package/esm2015/image/pepperi-addons-ngx-lib-image.js +4 -4
  306. package/esm2015/image/public-api.js +6 -6
  307. package/esm2015/images-filmstrip/images-filmstrip.component.js +372 -372
  308. package/esm2015/images-filmstrip/images-filmstrip.module.js +70 -70
  309. package/esm2015/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.js +4 -4
  310. package/esm2015/images-filmstrip/public-api.js +5 -5
  311. package/esm2015/link/link.component.js +315 -315
  312. package/esm2015/link/link.module.js +50 -50
  313. package/esm2015/link/link.pipes.js +12 -12
  314. package/esm2015/link/pepperi-addons-ngx-lib-link.js +5 -5
  315. package/esm2015/link/public-api.js +5 -5
  316. package/esm2015/list/list-actions.component.js +35 -35
  317. package/esm2015/list/list-carousel.component.js +94 -94
  318. package/esm2015/list/list-chooser.component.js +57 -57
  319. package/esm2015/list/list-pager.component.js +112 -112
  320. package/esm2015/list/list-sorting.component.js +54 -54
  321. package/esm2015/list/list-total.component.js +23 -23
  322. package/esm2015/list/list-views.component.js +71 -71
  323. package/esm2015/list/list.component.js +1127 -1127
  324. package/esm2015/list/list.model.js +3 -3
  325. package/esm2015/list/list.module.js +87 -87
  326. package/esm2015/list/list.pipes.js +39 -39
  327. package/esm2015/list/pepperi-addons-ngx-lib-list.js +6 -6
  328. package/esm2015/list/public-api.js +14 -14
  329. package/esm2015/list/virtual-scroller.js +1018 -1018
  330. package/esm2015/menu/menu-item.component.js +102 -102
  331. package/esm2015/menu/menu.component.js +173 -173
  332. package/esm2015/menu/menu.model.js +18 -18
  333. package/esm2015/menu/menu.module.js +39 -39
  334. package/esm2015/menu/pepperi-addons-ngx-lib-menu.js +5 -5
  335. package/esm2015/menu/public-api.js +6 -6
  336. package/esm2015/ngx-lib.module.js +76 -76
  337. package/esm2015/page-layout/page-layout.component.js +41 -41
  338. package/esm2015/page-layout/page-layout.module.js +20 -20
  339. package/esm2015/page-layout/pepperi-addons-ngx-lib-page-layout.js +4 -4
  340. package/esm2015/page-layout/public-api.js +5 -5
  341. package/esm2015/pepperi-addons-ngx-lib.js +8 -8
  342. package/esm2015/profile-data-views-list/pepperi-addons-ngx-lib-profile-data-views-list.js +4 -4
  343. package/esm2015/profile-data-views-list/profile-data-view/profile-data-view.component.js +38 -38
  344. package/esm2015/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.js +59 -59
  345. package/esm2015/profile-data-views-list/profile-data-views-list.component.js +86 -86
  346. package/esm2015/profile-data-views-list/profile-data-views-list.model.js +1 -1
  347. package/esm2015/profile-data-views-list/profile-data-views-list.module.js +56 -56
  348. package/esm2015/profile-data-views-list/public-api.js +8 -8
  349. package/esm2015/public-api.js +5 -5
  350. package/esm2015/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.js +6 -6
  351. package/esm2015/quantity-selector/public-api.js +5 -5
  352. package/esm2015/quantity-selector/quantity-selector-validation.directive.js +43 -43
  353. package/esm2015/quantity-selector/quantity-selector.component.js +465 -465
  354. package/esm2015/quantity-selector/quantity-selector.module.js +52 -52
  355. package/esm2015/quantity-selector/quantity-selector.pipes.js +18 -18
  356. package/esm2015/query-builder/common/model/field.js +1 -1
  357. package/esm2015/query-builder/common/model/filter.js +1 -1
  358. package/esm2015/query-builder/common/model/legacy.js +1 -1
  359. package/esm2015/query-builder/common/model/operator-unit.js +41 -41
  360. package/esm2015/query-builder/common/model/operator.js +206 -206
  361. package/esm2015/query-builder/common/model/structure.js +1 -1
  362. package/esm2015/query-builder/common/model/type-map.js +26 -26
  363. package/esm2015/query-builder/common/model/type.js +5 -5
  364. package/esm2015/query-builder/common/services/output-query.service.js +110 -110
  365. package/esm2015/query-builder/common/services/query-structure.service.js +198 -198
  366. package/esm2015/query-builder/common/services/type-convertor.service.js +39 -39
  367. package/esm2015/query-builder/pepperi-addons-ngx-lib-query-builder.js +9 -9
  368. package/esm2015/query-builder/public-api.js +8 -8
  369. package/esm2015/query-builder/query-builder-item/query-builder-item.component.js +115 -115
  370. package/esm2015/query-builder/query-builder-section/query-builder-section.component.js +63 -63
  371. package/esm2015/query-builder/query-builder.component.js +103 -103
  372. package/esm2015/query-builder/query-builder.module.js +34 -34
  373. package/esm2015/query-builder/query-builder.service.js +100 -100
  374. package/esm2015/remote-loader/addon-block-loader.component.js +69 -62
  375. package/esm2015/remote-loader/pepperi-addons-ngx-lib-remote-loader.js +4 -4
  376. package/esm2015/remote-loader/public-api.js +8 -8
  377. package/esm2015/remote-loader/remote-loader.component.js +116 -118
  378. package/esm2015/remote-loader/remote-loader.model.js +1 -1
  379. package/esm2015/remote-loader/remote-loader.module.js +35 -35
  380. package/esm2015/remote-loader/remote-loader.service.js +112 -107
  381. package/esm2015/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.js +4 -4
  382. package/esm2015/rich-html-textarea/public-api.js +5 -5
  383. package/esm2015/rich-html-textarea/rich-html-textarea.component.js +219 -219
  384. package/esm2015/rich-html-textarea/rich-html-textarea.module.js +56 -56
  385. package/esm2015/search/pepperi-addons-ngx-lib-search.js +4 -4
  386. package/esm2015/search/public-api.js +6 -6
  387. package/esm2015/search/search.component.js +273 -273
  388. package/esm2015/search/search.model.js +1 -1
  389. package/esm2015/search/search.module.js +44 -44
  390. package/esm2015/select/pepperi-addons-ngx-lib-select.js +4 -4
  391. package/esm2015/select/public-api.js +5 -5
  392. package/esm2015/select/select.component.js +211 -211
  393. package/esm2015/select/select.module.js +42 -42
  394. package/esm2015/separator/pepperi-addons-ngx-lib-separator.js +4 -4
  395. package/esm2015/separator/public-api.js +5 -5
  396. package/esm2015/separator/separator.component.js +62 -62
  397. package/esm2015/separator/separator.module.js +12 -12
  398. package/esm2015/side-bar/pepperi-addons-ngx-lib-side-bar.js +4 -4
  399. package/esm2015/side-bar/public-api.js +6 -6
  400. package/esm2015/side-bar/side-bar.component.js +130 -130
  401. package/esm2015/side-bar/side-bar.model.js +1 -1
  402. package/esm2015/side-bar/side-bar.module.js +33 -33
  403. package/esm2015/signature/pepperi-addons-ngx-lib-signature.js +4 -4
  404. package/esm2015/signature/public-api.js +5 -5
  405. package/esm2015/signature/signature.component.js +233 -233
  406. package/esm2015/signature/signature.module.js +54 -54
  407. package/esm2015/size-detector/pepperi-addons-ngx-lib-size-detector.js +4 -4
  408. package/esm2015/size-detector/public-api.js +5 -5
  409. package/esm2015/size-detector/size-detector.component.js +88 -88
  410. package/esm2015/size-detector/size-detector.module.js +21 -21
  411. package/esm2015/slider/pepperi-addons-ngx-lib-slider.js +4 -4
  412. package/esm2015/slider/public-api.js +5 -5
  413. package/esm2015/slider/slider.component.js +95 -95
  414. package/esm2015/slider/slider.module.js +24 -24
  415. package/esm2015/smart-filters/boolean-filter/boolean-filter.component.js +41 -41
  416. package/esm2015/smart-filters/common/filter-actions.component.js +25 -25
  417. package/esm2015/smart-filters/common/model/base-filter-component.js +259 -259
  418. package/esm2015/smart-filters/common/model/creator.js +75 -75
  419. package/esm2015/smart-filters/common/model/field.js +116 -116
  420. package/esm2015/smart-filters/common/model/filter.js +1 -1
  421. package/esm2015/smart-filters/common/model/operator.js +215 -215
  422. package/esm2015/smart-filters/common/model/type.js +1 -1
  423. package/esm2015/smart-filters/date-filter/date-filter.component.js +143 -143
  424. package/esm2015/smart-filters/multi-select-filter/multi-select-filter.component.js +152 -152
  425. package/esm2015/smart-filters/number-filter/number-filter.component.js +102 -102
  426. package/esm2015/smart-filters/pepperi-addons-ngx-lib-smart-filters.js +4 -4
  427. package/esm2015/smart-filters/public-api.js +18 -18
  428. package/esm2015/smart-filters/smart-filters.component.js +129 -129
  429. package/esm2015/smart-filters/smart-filters.module.js +90 -90
  430. package/esm2015/smart-filters/text-filter/text-filter.component.js +78 -78
  431. package/esm2015/snack-bar/default-snack-bar.component.js +27 -27
  432. package/esm2015/snack-bar/pepperi-addons-ngx-lib-snack-bar.js +5 -5
  433. package/esm2015/snack-bar/public-api.js +7 -7
  434. package/esm2015/snack-bar/snack-bar.component.js +25 -25
  435. package/esm2015/snack-bar/snack-bar.model.js +6 -6
  436. package/esm2015/snack-bar/snack-bar.module.js +41 -41
  437. package/esm2015/snack-bar/snack-bar.service.js +62 -62
  438. package/esm2015/textarea/pepperi-addons-ngx-lib-textarea.js +4 -4
  439. package/esm2015/textarea/public-api.js +5 -5
  440. package/esm2015/textarea/textarea.component.js +160 -160
  441. package/esm2015/textarea/textarea.module.js +50 -50
  442. package/esm2015/textbox/pepperi-addons-ngx-lib-textbox.js +5 -5
  443. package/esm2015/textbox/public-api.js +5 -5
  444. package/esm2015/textbox/textbox-validation.directive.js +85 -85
  445. package/esm2015/textbox/textbox.component.js +388 -388
  446. package/esm2015/textbox/textbox.module.js +44 -44
  447. package/esm2015/textbox-icon/pepperi-addons-ngx-lib-textbox-icon.js +4 -4
  448. package/esm2015/textbox-icon/public-api.js +5 -5
  449. package/esm2015/textbox-icon/textbox-icon.component.js +40 -40
  450. package/esm2015/textbox-icon/textbox-icon.module.js +46 -46
  451. package/esm2015/top-bar/pepperi-addons-ngx-lib-top-bar.js +4 -4
  452. package/esm2015/top-bar/public-api.js +6 -6
  453. package/esm2015/top-bar/top-bar.component.js +98 -98
  454. package/esm2015/top-bar/top-bar.model.js +1 -1
  455. package/esm2015/top-bar/top-bar.module.js +40 -40
  456. package/fesm2015/pepperi-addons-ngx-lib-address.js +116 -116
  457. package/fesm2015/pepperi-addons-ngx-lib-attachment.js +227 -227
  458. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +109 -109
  459. package/fesm2015/pepperi-addons-ngx-lib-button.js +149 -149
  460. package/fesm2015/pepperi-addons-ngx-lib-carousel.js +731 -731
  461. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js +178 -178
  462. package/fesm2015/pepperi-addons-ngx-lib-color.js +295 -295
  463. package/fesm2015/pepperi-addons-ngx-lib-date.js +320 -320
  464. package/fesm2015/pepperi-addons-ngx-lib-dialog.js +169 -169
  465. package/fesm2015/pepperi-addons-ngx-lib-draggable-items.js +143 -143
  466. package/fesm2015/pepperi-addons-ngx-lib-field-title.js +55 -55
  467. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js +252 -252
  468. package/fesm2015/pepperi-addons-ngx-lib-form.js +2693 -2693
  469. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js +84 -84
  470. package/fesm2015/pepperi-addons-ngx-lib-icon.js +662 -662
  471. package/fesm2015/pepperi-addons-ngx-lib-image.js +306 -306
  472. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js +409 -409
  473. package/fesm2015/pepperi-addons-ngx-lib-link.js +357 -357
  474. package/fesm2015/pepperi-addons-ngx-lib-list.js +2661 -2661
  475. package/fesm2015/pepperi-addons-ngx-lib-menu.js +314 -314
  476. package/fesm2015/pepperi-addons-ngx-lib-page-layout.js +55 -55
  477. package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.js +219 -219
  478. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js +554 -554
  479. package/fesm2015/pepperi-addons-ngx-lib-query-builder.js +989 -989
  480. package/fesm2015/pepperi-addons-ngx-lib-remote-loader.js +304 -294
  481. package/fesm2015/pepperi-addons-ngx-lib-remote-loader.js.map +1 -1
  482. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js +256 -256
  483. package/fesm2015/pepperi-addons-ngx-lib-search.js +301 -301
  484. package/fesm2015/pepperi-addons-ngx-lib-select.js +241 -241
  485. package/fesm2015/pepperi-addons-ngx-lib-separator.js +71 -71
  486. package/fesm2015/pepperi-addons-ngx-lib-side-bar.js +154 -154
  487. package/fesm2015/pepperi-addons-ngx-lib-signature.js +270 -270
  488. package/fesm2015/pepperi-addons-ngx-lib-size-detector.js +103 -103
  489. package/fesm2015/pepperi-addons-ngx-lib-slider.js +112 -112
  490. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js +1351 -1351
  491. package/fesm2015/pepperi-addons-ngx-lib-snack-bar.js +137 -137
  492. package/fesm2015/pepperi-addons-ngx-lib-textarea.js +194 -194
  493. package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.js +78 -78
  494. package/fesm2015/pepperi-addons-ngx-lib-textbox.js +498 -498
  495. package/fesm2015/pepperi-addons-ngx-lib-top-bar.js +125 -125
  496. package/fesm2015/pepperi-addons-ngx-lib.js +4133 -4133
  497. package/field-title/field-title.component.d.ts +11 -11
  498. package/field-title/field-title.module.d.ts +5 -5
  499. package/field-title/pepperi-addons-ngx-lib-field-title.d.ts +4 -4
  500. package/field-title/public-api.d.ts +2 -2
  501. package/files-uploader/files-uploader.component.d.ts +53 -53
  502. package/files-uploader/files-uploader.module.d.ts +5 -5
  503. package/files-uploader/pepperi-addons-ngx-lib-files-uploader.d.ts +4 -4
  504. package/files-uploader/public-api.d.ts +2 -2
  505. package/form/field-generator.component.d.ts +36 -36
  506. package/form/form.component.d.ts +90 -90
  507. package/form/form.model.d.ts +20 -20
  508. package/form/form.module.d.ts +5 -5
  509. package/form/indicators.component.d.ts +7 -7
  510. package/form/internal-button.component.d.ts +39 -39
  511. package/form/internal-carusel.component.d.ts +38 -38
  512. package/form/internal-carusel.service.d.ts +7 -7
  513. package/form/internal-list.component.d.ts +92 -92
  514. package/form/internal-menu.component.d.ts +16 -16
  515. package/form/internal-page.component.d.ts +72 -72
  516. package/form/internal-page.service.d.ts +19 -19
  517. package/form/pepperi-addons-ngx-lib-form.d.ts +13 -13
  518. package/form/public-api.d.ts +3 -3
  519. package/group-buttons/group-buttons.component.d.ts +20 -20
  520. package/group-buttons/group-buttons.module.d.ts +5 -5
  521. package/group-buttons/pepperi-addons-ngx-lib-group-buttons.d.ts +4 -4
  522. package/group-buttons/public-api.d.ts +2 -2
  523. package/icon/icon-generated-all.model.d.ts +99 -99
  524. package/icon/icon-generated.model.d.ts +394 -394
  525. package/icon/icon-registry.service.d.ts +6 -6
  526. package/icon/icon.component.d.ts +46 -46
  527. package/icon/icon.module.d.ts +2 -2
  528. package/icon/icon.service.d.ts +10 -10
  529. package/icon/pepperi-addons-ngx-lib-icon.d.ts +4 -4
  530. package/icon/public-api.d.ts +6 -6
  531. package/image/image.component.d.ts +63 -63
  532. package/image/image.module.d.ts +5 -5
  533. package/image/image.service.d.ts +11 -11
  534. package/image/pepperi-addons-ngx-lib-image.d.ts +4 -4
  535. package/image/public-api.d.ts +3 -3
  536. package/images-filmstrip/images-filmstrip.component.d.ts +84 -84
  537. package/images-filmstrip/images-filmstrip.module.d.ts +5 -5
  538. package/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.d.ts +4 -4
  539. package/images-filmstrip/public-api.d.ts +2 -2
  540. package/link/link.component.d.ts +131 -131
  541. package/link/link.module.d.ts +5 -5
  542. package/link/link.pipes.d.ts +4 -4
  543. package/link/pepperi-addons-ngx-lib-link.d.ts +5 -5
  544. package/link/public-api.d.ts +2 -2
  545. package/list/list-actions.component.d.ts +14 -14
  546. package/list/list-carousel.component.d.ts +36 -36
  547. package/list/list-chooser.component.d.ts +25 -25
  548. package/list/list-pager.component.d.ts +35 -35
  549. package/list/list-sorting.component.d.ts +26 -26
  550. package/list/list-total.component.d.ts +7 -7
  551. package/list/list-views.component.d.ts +31 -31
  552. package/list/list.component.d.ts +161 -161
  553. package/list/list.model.d.ts +31 -31
  554. package/list/list.module.d.ts +5 -5
  555. package/list/list.pipes.d.ts +11 -11
  556. package/list/pepperi-addons-ngx-lib-list.d.ts +6 -6
  557. package/list/public-api.d.ts +10 -10
  558. package/list/virtual-scroller.d.ts +176 -176
  559. package/menu/menu-item.component.d.ts +25 -25
  560. package/menu/menu.component.d.ts +43 -43
  561. package/menu/menu.model.d.ts +25 -25
  562. package/menu/menu.module.d.ts +5 -5
  563. package/menu/pepperi-addons-ngx-lib-menu.d.ts +5 -5
  564. package/menu/public-api.d.ts +3 -3
  565. package/ngx-lib.module.d.ts +2 -2
  566. package/package.json +1 -1
  567. package/page-layout/page-layout.component.d.ts +16 -16
  568. package/page-layout/page-layout.module.d.ts +2 -2
  569. package/page-layout/pepperi-addons-ngx-lib-page-layout.d.ts +4 -4
  570. package/page-layout/public-api.d.ts +2 -2
  571. package/pepperi-addons-ngx-lib.d.ts +8 -8
  572. package/profile-data-views-list/pepperi-addons-ngx-lib-profile-data-views-list.d.ts +4 -4
  573. package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +15 -15
  574. package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +21 -21
  575. package/profile-data-views-list/profile-data-views-list.component.d.ts +32 -32
  576. package/profile-data-views-list/profile-data-views-list.model.d.ts +18 -18
  577. package/profile-data-views-list/profile-data-views-list.module.d.ts +5 -5
  578. package/profile-data-views-list/public-api.d.ts +5 -5
  579. package/public-api.d.ts +2 -2
  580. package/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.d.ts +6 -6
  581. package/quantity-selector/public-api.d.ts +2 -2
  582. package/quantity-selector/quantity-selector-validation.directive.d.ts +13 -13
  583. package/quantity-selector/quantity-selector.component.d.ts +98 -98
  584. package/quantity-selector/quantity-selector.module.d.ts +5 -5
  585. package/quantity-selector/quantity-selector.pipes.d.ts +4 -4
  586. package/query-builder/common/model/field.d.ts +8 -8
  587. package/query-builder/common/model/filter.d.ts +6 -6
  588. package/query-builder/common/model/legacy.d.ts +29 -29
  589. package/query-builder/common/model/operator-unit.d.ts +13 -13
  590. package/query-builder/common/model/operator.d.ts +21 -21
  591. package/query-builder/common/model/structure.d.ts +4 -4
  592. package/query-builder/common/model/type-map.d.ts +12 -12
  593. package/query-builder/common/model/type.d.ts +4 -4
  594. package/query-builder/common/services/output-query.service.d.ts +44 -44
  595. package/query-builder/common/services/query-structure.service.d.ts +75 -75
  596. package/query-builder/common/services/type-convertor.service.d.ts +10 -10
  597. package/query-builder/pepperi-addons-ngx-lib-query-builder.d.ts +9 -9
  598. package/query-builder/public-api.d.ts +5 -5
  599. package/query-builder/query-builder-item/query-builder-item.component.d.ts +37 -37
  600. package/query-builder/query-builder-section/query-builder-section.component.d.ts +27 -27
  601. package/query-builder/query-builder.component.d.ts +35 -35
  602. package/query-builder/query-builder.module.d.ts +2 -2
  603. package/query-builder/query-builder.service.d.ts +27 -27
  604. package/remote-loader/addon-block-loader.component.d.ts +25 -24
  605. package/remote-loader/pepperi-addons-ngx-lib-remote-loader.d.ts +4 -4
  606. package/remote-loader/pepperi-addons-ngx-lib-remote-loader.metadata.json +1 -1
  607. package/remote-loader/public-api.d.ts +5 -5
  608. package/remote-loader/remote-loader.component.d.ts +24 -24
  609. package/remote-loader/remote-loader.model.d.ts +34 -34
  610. package/remote-loader/remote-loader.module.d.ts +2 -2
  611. package/remote-loader/remote-loader.service.d.ts +23 -23
  612. package/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.d.ts +4 -4
  613. package/rich-html-textarea/public-api.d.ts +2 -2
  614. package/rich-html-textarea/rich-html-textarea.component.d.ts +75 -75
  615. package/rich-html-textarea/rich-html-textarea.module.d.ts +5 -5
  616. package/search/pepperi-addons-ngx-lib-search.d.ts +4 -4
  617. package/search/public-api.d.ts +3 -3
  618. package/search/search.component.d.ts +61 -61
  619. package/search/search.model.d.ts +14 -14
  620. package/search/search.module.d.ts +5 -5
  621. package/select/pepperi-addons-ngx-lib-select.d.ts +4 -4
  622. package/select/public-api.d.ts +2 -2
  623. package/select/select.component.d.ts +50 -50
  624. package/select/select.module.d.ts +5 -5
  625. package/separator/pepperi-addons-ngx-lib-separator.d.ts +4 -4
  626. package/separator/public-api.d.ts +2 -2
  627. package/separator/separator.component.d.ts +19 -19
  628. package/separator/separator.module.d.ts +2 -2
  629. package/side-bar/pepperi-addons-ngx-lib-side-bar.d.ts +4 -4
  630. package/side-bar/public-api.d.ts +3 -3
  631. package/side-bar/side-bar.component.d.ts +38 -38
  632. package/side-bar/side-bar.model.d.ts +4 -4
  633. package/side-bar/side-bar.module.d.ts +5 -5
  634. package/signature/pepperi-addons-ngx-lib-signature.d.ts +4 -4
  635. package/signature/public-api.d.ts +2 -2
  636. package/signature/signature.component.d.ts +65 -65
  637. package/signature/signature.module.d.ts +5 -5
  638. package/size-detector/pepperi-addons-ngx-lib-size-detector.d.ts +4 -4
  639. package/size-detector/public-api.d.ts +2 -2
  640. package/size-detector/size-detector.component.d.ts +26 -26
  641. package/size-detector/size-detector.module.d.ts +2 -2
  642. package/slider/pepperi-addons-ngx-lib-slider.d.ts +4 -4
  643. package/slider/public-api.d.ts +2 -2
  644. package/slider/slider.component.d.ts +36 -36
  645. package/slider/slider.module.d.ts +2 -2
  646. package/smart-filters/boolean-filter/boolean-filter.component.d.ts +12 -12
  647. package/smart-filters/common/filter-actions.component.d.ts +9 -9
  648. package/smart-filters/common/model/base-filter-component.d.ts +67 -67
  649. package/smart-filters/common/model/creator.d.ts +6 -6
  650. package/smart-filters/common/model/field.d.ts +69 -69
  651. package/smart-filters/common/model/filter.d.ts +11 -11
  652. package/smart-filters/common/model/operator.d.ts +38 -38
  653. package/smart-filters/common/model/type.d.ts +4 -4
  654. package/smart-filters/date-filter/date-filter.component.d.ts +41 -41
  655. package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +39 -39
  656. package/smart-filters/number-filter/number-filter.component.d.ts +38 -38
  657. package/smart-filters/pepperi-addons-ngx-lib-smart-filters.d.ts +4 -4
  658. package/smart-filters/public-api.d.ts +14 -14
  659. package/smart-filters/smart-filters.component.d.ts +32 -32
  660. package/smart-filters/smart-filters.module.d.ts +5 -5
  661. package/smart-filters/text-filter/text-filter.component.d.ts +17 -17
  662. package/snack-bar/default-snack-bar.component.d.ts +10 -10
  663. package/snack-bar/pepperi-addons-ngx-lib-snack-bar.d.ts +5 -5
  664. package/snack-bar/public-api.d.ts +4 -4
  665. package/snack-bar/snack-bar.component.d.ts +9 -9
  666. package/snack-bar/snack-bar.model.d.ts +8 -8
  667. package/snack-bar/snack-bar.module.d.ts +5 -5
  668. package/snack-bar/snack-bar.service.d.ts +21 -21
  669. package/textarea/pepperi-addons-ngx-lib-textarea.d.ts +4 -4
  670. package/textarea/pepperi-addons-ngx-lib-textarea.metadata.json +1 -1
  671. package/textarea/public-api.d.ts +2 -2
  672. package/textarea/textarea.component.d.ts +51 -51
  673. package/textarea/textarea.module.d.ts +5 -5
  674. package/textbox/pepperi-addons-ngx-lib-textbox.d.ts +5 -5
  675. package/textbox/public-api.d.ts +2 -2
  676. package/textbox/textbox-validation.directive.d.ts +18 -18
  677. package/textbox/textbox.component.d.ts +134 -134
  678. package/textbox/textbox.module.d.ts +5 -5
  679. package/textbox-icon/pepperi-addons-ngx-lib-textbox-icon.d.ts +4 -4
  680. package/textbox-icon/public-api.d.ts +2 -2
  681. package/textbox-icon/textbox-icon.component.d.ts +10 -10
  682. package/textbox-icon/textbox-icon.module.d.ts +5 -5
  683. package/top-bar/pepperi-addons-ngx-lib-top-bar.d.ts +4 -4
  684. package/top-bar/public-api.d.ts +3 -3
  685. package/top-bar/top-bar.component.d.ts +36 -36
  686. package/top-bar/top-bar.model.d.ts +4 -4
  687. package/top-bar/top-bar.module.d.ts +5 -5
@@ -9,1021 +9,1021 @@ import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
9
9
  import { PepGroupButtonsModule } from '@pepperi-addons/ngx-lib/group-buttons';
10
10
  import { BehaviorSubject } from 'rxjs';
11
11
 
12
- const Equals = {
13
- legacy: 'IsEqual',
14
- smartFilter: PepSmartFilterOperators.Equals,
15
- type: ['boolean', 'int', 'text']
16
- };
17
- const NotEqual = {
18
- legacy: 'IsNotEqual',
19
- smartFilter: PepSmartFilterOperators.NotEqual,
20
- type: null
21
- };
22
- const LessThan = {
23
- legacy: '<',
24
- smartFilter: PepSmartFilterOperators.LessThan,
25
- type: null
26
- };
27
- const GreaterThan = {
28
- legacy: '>',
29
- smartFilter: PepSmartFilterOperators.GreaterThan,
30
- type: null
31
- };
32
- /*
33
- const GreaterThanOrEquals: IPepQueryBuilderOperator = {
34
- legacy: {
35
- operator: '>=',
36
- type: 'Integer'
37
- },
38
- smartFilter: {
39
- item: PepSmartFilterOperators.GreaterThanOrEquals,
40
- type: 'int'
41
- }
42
- };
43
-
44
- const LessThanOrEquals: IPepQueryBuilderOperator = {
45
- legacy: {
46
- operator: '<=',
47
- type: 'Integer'
48
- },
49
- smartFilter: {
50
- item: PepSmartFilterOperators.LessThanOrEquals,
51
- type: 'int',
52
- type: 'Integer'
53
- }
54
- }; */
55
- const NumberRange = {
56
- legacy: 'Between',
57
- smartFilter: PepSmartFilterOperators.NumberRange,
58
- type: ['int']
59
- };
60
- const Contains = {
61
- legacy: 'Contains',
62
- smartFilter: PepSmartFilterOperators.Contains,
63
- type: null
64
- };
65
- /*
66
- const BeginsWith: IPepQueryBuilderOperator = {
67
- legacy: {
68
- operator: 'BeginsWith',
69
- type: 'String'
70
- },
71
- smartFilter: {
72
- item: PepSmartFilterOperators.BeginsWith,
73
- type: 'text'
74
- }
75
- };
76
-
77
- const EndsWith: IPepQueryBuilderOperator = {
78
- legacy: {
79
- operator: 'EndsWith',
80
- type: 'String'
81
- },
82
- smartFilter: {
83
- item: PepSmartFilterOperators.EndsWith,
84
- type: 'text'
85
- }
86
- };
87
-
88
- const Before: IPepQueryBuilderOperator = {
89
- legacy: {
90
- operator: 'Before',
91
- type: 'Date'
92
- },
93
- smartFilter: {
94
- item: PepSmartFilterOperators.Before,
95
- type: 'date'
96
- }
97
- };
98
-
99
- const After: IPepQueryBuilderOperator = {
100
- legacy: {
101
- operator: 'After',
102
- type: 'Date'
103
- },
104
- smartFilter: {
105
- item: PepSmartFilterOperators.After,
106
- type: 'date'
107
- }
108
- }; */
109
- const InTheLast = {
110
- legacy: 'InTheLast',
111
- smartFilter: PepSmartFilterOperators.InTheLast,
112
- type: null
113
- };
114
- const NotInTheLast = {
115
- legacy: 'NotInTheLast',
116
- smartFilter: PepSmartFilterOperators.NotInTheLast,
117
- type: null
118
- };
119
- const Today = {
120
- legacy: 'Today',
121
- smartFilter: PepSmartFilterOperators.Today,
122
- type: null
123
- };
124
- const ThisWeek = {
125
- legacy: 'ThisWeek',
126
- smartFilter: PepSmartFilterOperators.ThisWeek,
127
- type: null
128
- };
129
- const ThisMonth = {
130
- legacy: 'ThisMonth',
131
- smartFilter: PepSmartFilterOperators.ThisMonth,
132
- type: null
133
- };
134
- const DateRange = {
135
- legacy: 'Between',
136
- smartFilter: PepSmartFilterOperators.DateRange,
137
- type: ['date-time']
138
- };
139
- const DueIn = {
140
- legacy: 'DueIn',
141
- smartFilter: PepSmartFilterOperators.DueIn,
142
- type: null
143
- };
144
- const NotDueIn = {
145
- legacy: 'NotDueIn',
146
- smartFilter: PepSmartFilterOperators.NotDueIn,
147
- type: null
148
- };
149
- const On = {
150
- legacy: 'On',
151
- smartFilter: PepSmartFilterOperators.On,
152
- type: null
153
- };
154
- const IsEmpty = {
155
- legacy: 'IsEmpty',
156
- smartFilter: PepSmartFilterOperators.IsEmpty,
157
- type: null
158
- };
159
- const IsNotEmpty = {
160
- legacy: 'IsNotEmpty',
161
- smartFilter: PepSmartFilterOperators.IsNotEmpty,
162
- type: null
163
- };
164
- const In = {
165
- legacy: 'IsEqual',
166
- smartFilter: PepSmartFilterOperators.In,
167
- type: ['multi-select']
168
- };
169
- const PepQueryBuilderOperators = [
170
- Equals,
171
- NotEqual,
172
- LessThan,
173
- // LessThanOrEquals,
174
- GreaterThan,
175
- // GreaterThanOrEquals,
176
- NumberRange,
177
- Contains,
178
- // BeginsWith,
179
- // EndsWith,
180
- // After,
181
- // Before,
182
- InTheLast,
183
- NotInTheLast,
184
- Today,
185
- ThisWeek,
186
- ThisMonth,
187
- DateRange,
188
- DueIn,
189
- NotDueIn,
190
- On,
191
- IsEmpty,
192
- IsNotEmpty,
193
- In
194
- ];
195
- /**
196
- * gets a smart filter operator item
197
- * @param operator legacy operator
198
- * @param type smart filter's type
199
- * @returns smart filter operator item
200
- */
201
- function getSmartFilterOperator(operator, type) {
202
- const smartFilterOperator = PepQueryBuilderOperators.find(item => item.legacy === operator &&
203
- (item.type === null || item.type.includes(type)));
204
- return smartFilterOperator ? smartFilterOperator.smartFilter : null;
205
- }
206
- /**
207
- * gets a legacy operator value
208
- * @param operator smart filter operator item
209
- * @param type smart filter's type
210
- * @returns legacy operator value
211
- */
212
- function getLegacyOperator(operator, type) {
213
- const legacyOperator = PepQueryBuilderOperators.find(item => item.smartFilter === operator &&
214
- (item.type === null || item.type.includes(type)));
215
- return legacyOperator ? legacyOperator.legacy : null;
12
+ const Equals = {
13
+ legacy: 'IsEqual',
14
+ smartFilter: PepSmartFilterOperators.Equals,
15
+ type: ['boolean', 'int', 'text']
16
+ };
17
+ const NotEqual = {
18
+ legacy: 'IsNotEqual',
19
+ smartFilter: PepSmartFilterOperators.NotEqual,
20
+ type: null
21
+ };
22
+ const LessThan = {
23
+ legacy: '<',
24
+ smartFilter: PepSmartFilterOperators.LessThan,
25
+ type: null
26
+ };
27
+ const GreaterThan = {
28
+ legacy: '>',
29
+ smartFilter: PepSmartFilterOperators.GreaterThan,
30
+ type: null
31
+ };
32
+ /*
33
+ const GreaterThanOrEquals: IPepQueryBuilderOperator = {
34
+ legacy: {
35
+ operator: '>=',
36
+ type: 'Integer'
37
+ },
38
+ smartFilter: {
39
+ item: PepSmartFilterOperators.GreaterThanOrEquals,
40
+ type: 'int'
41
+ }
42
+ };
43
+
44
+ const LessThanOrEquals: IPepQueryBuilderOperator = {
45
+ legacy: {
46
+ operator: '<=',
47
+ type: 'Integer'
48
+ },
49
+ smartFilter: {
50
+ item: PepSmartFilterOperators.LessThanOrEquals,
51
+ type: 'int',
52
+ type: 'Integer'
53
+ }
54
+ }; */
55
+ const NumberRange = {
56
+ legacy: 'Between',
57
+ smartFilter: PepSmartFilterOperators.NumberRange,
58
+ type: ['int']
59
+ };
60
+ const Contains = {
61
+ legacy: 'Contains',
62
+ smartFilter: PepSmartFilterOperators.Contains,
63
+ type: null
64
+ };
65
+ /*
66
+ const BeginsWith: IPepQueryBuilderOperator = {
67
+ legacy: {
68
+ operator: 'BeginsWith',
69
+ type: 'String'
70
+ },
71
+ smartFilter: {
72
+ item: PepSmartFilterOperators.BeginsWith,
73
+ type: 'text'
74
+ }
75
+ };
76
+
77
+ const EndsWith: IPepQueryBuilderOperator = {
78
+ legacy: {
79
+ operator: 'EndsWith',
80
+ type: 'String'
81
+ },
82
+ smartFilter: {
83
+ item: PepSmartFilterOperators.EndsWith,
84
+ type: 'text'
85
+ }
86
+ };
87
+
88
+ const Before: IPepQueryBuilderOperator = {
89
+ legacy: {
90
+ operator: 'Before',
91
+ type: 'Date'
92
+ },
93
+ smartFilter: {
94
+ item: PepSmartFilterOperators.Before,
95
+ type: 'date'
96
+ }
97
+ };
98
+
99
+ const After: IPepQueryBuilderOperator = {
100
+ legacy: {
101
+ operator: 'After',
102
+ type: 'Date'
103
+ },
104
+ smartFilter: {
105
+ item: PepSmartFilterOperators.After,
106
+ type: 'date'
107
+ }
108
+ }; */
109
+ const InTheLast = {
110
+ legacy: 'InTheLast',
111
+ smartFilter: PepSmartFilterOperators.InTheLast,
112
+ type: null
113
+ };
114
+ const NotInTheLast = {
115
+ legacy: 'NotInTheLast',
116
+ smartFilter: PepSmartFilterOperators.NotInTheLast,
117
+ type: null
118
+ };
119
+ const Today = {
120
+ legacy: 'Today',
121
+ smartFilter: PepSmartFilterOperators.Today,
122
+ type: null
123
+ };
124
+ const ThisWeek = {
125
+ legacy: 'ThisWeek',
126
+ smartFilter: PepSmartFilterOperators.ThisWeek,
127
+ type: null
128
+ };
129
+ const ThisMonth = {
130
+ legacy: 'ThisMonth',
131
+ smartFilter: PepSmartFilterOperators.ThisMonth,
132
+ type: null
133
+ };
134
+ const DateRange = {
135
+ legacy: 'Between',
136
+ smartFilter: PepSmartFilterOperators.DateRange,
137
+ type: ['date-time']
138
+ };
139
+ const DueIn = {
140
+ legacy: 'DueIn',
141
+ smartFilter: PepSmartFilterOperators.DueIn,
142
+ type: null
143
+ };
144
+ const NotDueIn = {
145
+ legacy: 'NotDueIn',
146
+ smartFilter: PepSmartFilterOperators.NotDueIn,
147
+ type: null
148
+ };
149
+ const On = {
150
+ legacy: 'On',
151
+ smartFilter: PepSmartFilterOperators.On,
152
+ type: null
153
+ };
154
+ const IsEmpty = {
155
+ legacy: 'IsEmpty',
156
+ smartFilter: PepSmartFilterOperators.IsEmpty,
157
+ type: null
158
+ };
159
+ const IsNotEmpty = {
160
+ legacy: 'IsNotEmpty',
161
+ smartFilter: PepSmartFilterOperators.IsNotEmpty,
162
+ type: null
163
+ };
164
+ const In = {
165
+ legacy: 'IsEqual',
166
+ smartFilter: PepSmartFilterOperators.In,
167
+ type: ['multi-select']
168
+ };
169
+ const PepQueryBuilderOperators = [
170
+ Equals,
171
+ NotEqual,
172
+ LessThan,
173
+ // LessThanOrEquals,
174
+ GreaterThan,
175
+ // GreaterThanOrEquals,
176
+ NumberRange,
177
+ Contains,
178
+ // BeginsWith,
179
+ // EndsWith,
180
+ // After,
181
+ // Before,
182
+ InTheLast,
183
+ NotInTheLast,
184
+ Today,
185
+ ThisWeek,
186
+ ThisMonth,
187
+ DateRange,
188
+ DueIn,
189
+ NotDueIn,
190
+ On,
191
+ IsEmpty,
192
+ IsNotEmpty,
193
+ In
194
+ ];
195
+ /**
196
+ * gets a smart filter operator item
197
+ * @param operator legacy operator
198
+ * @param type smart filter's type
199
+ * @returns smart filter operator item
200
+ */
201
+ function getSmartFilterOperator(operator, type) {
202
+ const smartFilterOperator = PepQueryBuilderOperators.find(item => item.legacy === operator &&
203
+ (item.type === null || item.type.includes(type)));
204
+ return smartFilterOperator ? smartFilterOperator.smartFilter : null;
205
+ }
206
+ /**
207
+ * gets a legacy operator value
208
+ * @param operator smart filter operator item
209
+ * @param type smart filter's type
210
+ * @returns legacy operator value
211
+ */
212
+ function getLegacyOperator(operator, type) {
213
+ const legacyOperator = PepQueryBuilderOperators.find(item => item.smartFilter === operator &&
214
+ (item.type === null || item.type.includes(type)));
215
+ return legacyOperator ? legacyOperator.legacy : null;
216
216
  }
217
217
 
218
- class PepQueryBuilderTypeMap {
219
- constructor() {
220
- this.loadTypes();
221
- }
222
- loadTypes() {
223
- this.map = new Map();
224
- this.map.set('Bool', 'boolean');
225
- this.map.set('JsonBool', 'boolean');
226
- this.map.set('Integer', 'int');
227
- this.map.set('Double', 'int');
228
- this.map.set('String', 'text');
229
- this.map.set('Guid', 'text');
230
- this.map.set('Date', 'date');
231
- this.map.set('DateTime', 'date-time');
232
- this.map.set('MultipleStringValues', 'multi-select');
233
- }
234
- /**
235
- * Converts legacy field type to smart builder type
236
- * @param type legacy type
237
- * @returns smart builder field type
238
- */
239
- getSmartBuilderType(key) {
240
- const item = this.map.get(key);
241
- return item ? item : null;
242
- }
218
+ class PepQueryBuilderTypeMap {
219
+ constructor() {
220
+ this.loadTypes();
221
+ }
222
+ loadTypes() {
223
+ this.map = new Map();
224
+ this.map.set('Bool', 'boolean');
225
+ this.map.set('JsonBool', 'boolean');
226
+ this.map.set('Integer', 'int');
227
+ this.map.set('Double', 'int');
228
+ this.map.set('String', 'text');
229
+ this.map.set('Guid', 'text');
230
+ this.map.set('Date', 'date');
231
+ this.map.set('DateTime', 'date-time');
232
+ this.map.set('MultipleStringValues', 'multi-select');
233
+ }
234
+ /**
235
+ * Converts legacy field type to smart builder type
236
+ * @param type legacy type
237
+ * @returns smart builder field type
238
+ */
239
+ getSmartBuilderType(key) {
240
+ const item = this.map.get(key);
241
+ return item ? item : null;
242
+ }
243
243
  }
244
244
 
245
- const Days = {
246
- legacy: 'Days',
247
- smartFilter: PepSmartFilterOperatorUnits.Days
248
- };
249
- const Weeks = {
250
- legacy: 'Weeks',
251
- smartFilter: PepSmartFilterOperatorUnits.Weeks
252
- };
253
- const Months = {
254
- legacy: 'Months',
255
- smartFilter: PepSmartFilterOperatorUnits.Months
256
- };
257
- const Years = {
258
- legacy: 'Years',
259
- smartFilter: PepSmartFilterOperatorUnits.Years
260
- };
261
- const PepQueryBuilderOperationUnit = [
262
- Days,
263
- Weeks,
264
- Months,
265
- Years,
266
- ];
267
- /**
268
- * gets a smart filter operation unit item
269
- * @param operationUnit legacy operation unit
270
- * @returns smart filter operation unit item
271
- */
272
- function getSmartBuilderOperationUnit(operationUnit) {
273
- const smartFilterOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.legacy === operationUnit);
274
- return smartFilterOperationUnit ? smartFilterOperationUnit.smartFilter : null;
275
- }
276
- /**
277
- * gets a legacy operation unit value
278
- * @param operationUnit smart filter operation unit item
279
- * @returns legacy operation unit value
280
- */
281
- function getLegacyOperationUnit(operationUnit) {
282
- const legacyOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.smartFilter === operationUnit);
283
- return legacyOperationUnit ? legacyOperationUnit.legacy : null;
245
+ const Days = {
246
+ legacy: 'Days',
247
+ smartFilter: PepSmartFilterOperatorUnits.Days
248
+ };
249
+ const Weeks = {
250
+ legacy: 'Weeks',
251
+ smartFilter: PepSmartFilterOperatorUnits.Weeks
252
+ };
253
+ const Months = {
254
+ legacy: 'Months',
255
+ smartFilter: PepSmartFilterOperatorUnits.Months
256
+ };
257
+ const Years = {
258
+ legacy: 'Years',
259
+ smartFilter: PepSmartFilterOperatorUnits.Years
260
+ };
261
+ const PepQueryBuilderOperationUnit = [
262
+ Days,
263
+ Weeks,
264
+ Months,
265
+ Years,
266
+ ];
267
+ /**
268
+ * gets a smart filter operation unit item
269
+ * @param operationUnit legacy operation unit
270
+ * @returns smart filter operation unit item
271
+ */
272
+ function getSmartBuilderOperationUnit(operationUnit) {
273
+ const smartFilterOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.legacy === operationUnit);
274
+ return smartFilterOperationUnit ? smartFilterOperationUnit.smartFilter : null;
275
+ }
276
+ /**
277
+ * gets a legacy operation unit value
278
+ * @param operationUnit smart filter operation unit item
279
+ * @returns legacy operation unit value
280
+ */
281
+ function getLegacyOperationUnit(operationUnit) {
282
+ const legacyOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.smartFilter === operationUnit);
283
+ return legacyOperationUnit ? legacyOperationUnit.legacy : null;
284
284
  }
285
285
 
286
- class PepQueryBuilderService {
287
- constructor() {
288
- //
289
- }
290
- /**
291
- * creates a smart filter object
292
- * @param current filter legacy element
293
- * @param field filter's selected field
294
- * @returns smart filter object
295
- */
296
- getFilter(current, field) {
297
- const operator = getSmartFilterOperator(current.Operation, field.type);
298
- if (operator) {
299
- const filterValues = this.getFilterValues(current, operator, field);
300
- return createSmartFilter(current.ApiName, operator, filterValues.first, filterValues.second, filterValues.operationUnit);
301
- }
302
- else {
303
- return null;
304
- }
305
- }
306
- /**
307
- * converts legacy fields to smart filter fields
308
- * @param fields legacy fields array
309
- * @returns smart filter fields array
310
- */
311
- convertToSmartFilterFields(fields) {
312
- if ((fields === null || fields === void 0 ? void 0 : fields.length) > 0) {
313
- const typeMapper = new PepQueryBuilderTypeMap();
314
- return fields.map((field) => {
315
- var _a;
316
- return {
317
- smart: createSmartFilterField({
318
- id: field.FieldID,
319
- name: field.Title,
320
- options: (_a = field.OptionalValues) === null || _a === void 0 ? void 0 : _a.map(option => {
321
- return {
322
- key: option.Key,
323
- value: option.Value
324
- };
325
- })
326
- }, typeMapper.getSmartBuilderType(field.FieldType)),
327
- query: {
328
- fieldType: field.FieldType
329
- }
330
- };
331
- });
332
- }
333
- else {
334
- return [];
335
- }
336
- }
337
- /**
338
- * gets smart filter's values data
339
- * @param current filter legacy element
340
- * @param operator smart filter operator
341
- * @param field filter's selected field
342
- * @returns object contains the filter values data
343
- */
344
- getFilterValues(current, operator, field) {
345
- var _a, _b, _c, _d, _e;
346
- const data = {
347
- first: null,
348
- second: null,
349
- operationUnit: null
350
- };
351
- if (operator === PepSmartFilterOperators.In) { //multi select
352
- //filter keys don't exist on field options
353
- data.first = ((_a = current === null || current === void 0 ? void 0 : current.Values) === null || _a === void 0 ? void 0 : _a.length) > 0 ? current.Values.filter(item => {
354
- return field.options.find(option => option.key === item);
355
- }) : null;
356
- }
357
- else if (operator === PepSmartFilterOperators.InTheLast ||
358
- operator === PepSmartFilterOperators.NotInTheLast ||
359
- operator === PepSmartFilterOperators.DueIn ||
360
- operator === PepSmartFilterOperators.NotDueIn) { //operation unit
361
- data.first = ((_b = current === null || current === void 0 ? void 0 : current.Values) === null || _b === void 0 ? void 0 : _b.length) > 0 ? current.Values[0] : null;
362
- if (((_c = current === null || current === void 0 ? void 0 : current.Values) === null || _c === void 0 ? void 0 : _c.length) === 2) {
363
- data.operationUnit = getSmartBuilderOperationUnit(current.Values[1]);
364
- }
365
- }
366
- else {
367
- data.first = ((_d = current === null || current === void 0 ? void 0 : current.Values) === null || _d === void 0 ? void 0 : _d.length) > 0 ? current.Values[0] : null;
368
- data.second = ((_e = current === null || current === void 0 ? void 0 : current.Values) === null || _e === void 0 ? void 0 : _e.length) === 2 ? current.Values[1] : null;
369
- }
370
- return data;
371
- }
372
- }
373
- PepQueryBuilderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepQueryBuilderService_Factory() { return new PepQueryBuilderService(); }, token: PepQueryBuilderService, providedIn: "root" });
374
- PepQueryBuilderService.decorators = [
375
- { type: Injectable, args: [{
376
- providedIn: 'root'
377
- },] }
378
- ];
286
+ class PepQueryBuilderService {
287
+ constructor() {
288
+ //
289
+ }
290
+ /**
291
+ * creates a smart filter object
292
+ * @param current filter legacy element
293
+ * @param field filter's selected field
294
+ * @returns smart filter object
295
+ */
296
+ getFilter(current, field) {
297
+ const operator = getSmartFilterOperator(current.Operation, field.type);
298
+ if (operator) {
299
+ const filterValues = this.getFilterValues(current, operator, field);
300
+ return createSmartFilter(current.ApiName, operator, filterValues.first, filterValues.second, filterValues.operationUnit);
301
+ }
302
+ else {
303
+ return null;
304
+ }
305
+ }
306
+ /**
307
+ * converts legacy fields to smart filter fields
308
+ * @param fields legacy fields array
309
+ * @returns smart filter fields array
310
+ */
311
+ convertToSmartFilterFields(fields) {
312
+ if ((fields === null || fields === void 0 ? void 0 : fields.length) > 0) {
313
+ const typeMapper = new PepQueryBuilderTypeMap();
314
+ return fields.map((field) => {
315
+ var _a;
316
+ return {
317
+ smart: createSmartFilterField({
318
+ id: field.FieldID,
319
+ name: field.Title,
320
+ options: (_a = field.OptionalValues) === null || _a === void 0 ? void 0 : _a.map(option => {
321
+ return {
322
+ key: option.Key,
323
+ value: option.Value
324
+ };
325
+ })
326
+ }, typeMapper.getSmartBuilderType(field.FieldType)),
327
+ query: {
328
+ fieldType: field.FieldType
329
+ }
330
+ };
331
+ });
332
+ }
333
+ else {
334
+ return [];
335
+ }
336
+ }
337
+ /**
338
+ * gets smart filter's values data
339
+ * @param current filter legacy element
340
+ * @param operator smart filter operator
341
+ * @param field filter's selected field
342
+ * @returns object contains the filter values data
343
+ */
344
+ getFilterValues(current, operator, field) {
345
+ var _a, _b, _c, _d, _e;
346
+ const data = {
347
+ first: null,
348
+ second: null,
349
+ operationUnit: null
350
+ };
351
+ if (operator === PepSmartFilterOperators.In) { //multi select
352
+ //filter keys don't exist on field options
353
+ data.first = ((_a = current === null || current === void 0 ? void 0 : current.Values) === null || _a === void 0 ? void 0 : _a.length) > 0 ? current.Values.filter(item => {
354
+ return field.options.find(option => option.key === item);
355
+ }) : null;
356
+ }
357
+ else if (operator === PepSmartFilterOperators.InTheLast ||
358
+ operator === PepSmartFilterOperators.NotInTheLast ||
359
+ operator === PepSmartFilterOperators.DueIn ||
360
+ operator === PepSmartFilterOperators.NotDueIn) { //operation unit
361
+ data.first = ((_b = current === null || current === void 0 ? void 0 : current.Values) === null || _b === void 0 ? void 0 : _b.length) > 0 ? current.Values[0] : null;
362
+ if (((_c = current === null || current === void 0 ? void 0 : current.Values) === null || _c === void 0 ? void 0 : _c.length) === 2) {
363
+ data.operationUnit = getSmartBuilderOperationUnit(current.Values[1]);
364
+ }
365
+ }
366
+ else {
367
+ data.first = ((_d = current === null || current === void 0 ? void 0 : current.Values) === null || _d === void 0 ? void 0 : _d.length) > 0 ? current.Values[0] : null;
368
+ data.second = ((_e = current === null || current === void 0 ? void 0 : current.Values) === null || _e === void 0 ? void 0 : _e.length) === 2 ? current.Values[1] : null;
369
+ }
370
+ return data;
371
+ }
372
+ }
373
+ PepQueryBuilderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepQueryBuilderService_Factory() { return new PepQueryBuilderService(); }, token: PepQueryBuilderService, providedIn: "root" });
374
+ PepQueryBuilderService.decorators = [
375
+ { type: Injectable, args: [{
376
+ providedIn: 'root'
377
+ },] }
378
+ ];
379
379
  PepQueryBuilderService.ctorParameters = () => [];
380
380
 
381
- class PepOutputQueryService {
382
- constructor() {
383
- //
384
- }
385
- /**
386
- * generates a legacy query structure
387
- * @param filters UI smart filters structure
388
- * @returns legacy query
389
- */
390
- generateQuery(filters) {
391
- this.initParams();
392
- return this.sectionWalk(filters);
393
- }
394
- /**
395
- * init params
396
- */
397
- initParams() {
398
- this._complexIdCounter = 1;
399
- this._expressionIdCounter = 1;
400
- }
401
- /**
402
- * a recursive function dynamically builds legacy query structure
403
- * @param current UI object represents either a section or filter component
404
- * @returns section query data
405
- */
406
- sectionWalk(current) {
407
- let section = null;
408
- Object.keys(current).forEach(key => {
409
- if (key.includes('item')) {
410
- section = this.addToSection(section, {
411
- ExpressionId: (this._expressionIdCounter++).toString(),
412
- ApiName: current[key].smart.fieldId,
413
- FieldType: current[key].query.fieldType,
414
- Operation: getLegacyOperator(current[key].smart.operator, current[key].smart.fieldType),
415
- Values: this.getItemValues(current[key].smart)
416
- }, current.operator);
417
- }
418
- else if (key.includes('section')) {
419
- const childSection = this.sectionWalk(current[key]);
420
- if (childSection) {
421
- section = this.addToSection(section, childSection, current.operator);
422
- }
423
- }
424
- });
425
- return section;
426
- }
427
- /**
428
- * adds a legacy filter object to the current query structure
429
- * @param section section query data
430
- * @param item filter item
431
- * @param operator query operator
432
- * @returns
433
- */
434
- addToSection(section, item, operator) {
435
- return section ? this.createSection(section, item, operator) : item;
436
- }
437
- /**
438
- * creates a legacy complex object
439
- * @param left LeftNode object
440
- * @param right RightNode object
441
- * @param operator query operator
442
- * @returns legacy complex object
443
- */
444
- createSection(left, right, operator) {
445
- return {
446
- ComplexId: (this._complexIdCounter++).toString(),
447
- LeftNode: left,
448
- RightNode: right,
449
- Operation: operator
450
- };
451
- }
452
- /**
453
- * gets legacy filter values object
454
- * @param current UI filter object's values
455
- * @returns an array represents legacy values
456
- */
457
- getItemValues(current) {
458
- var _a;
459
- let values = [];
460
- if ((_a = current === null || current === void 0 ? void 0 : current.values) === null || _a === void 0 ? void 0 : _a.first) {
461
- if (current.operator === PepSmartFilterOperators.In) { //multi select
462
- values = current.values.first;
463
- }
464
- else if (current.operator === PepSmartFilterOperators.InTheLast ||
465
- current.operator === PepSmartFilterOperators.NotInTheLast ||
466
- current.operator === PepSmartFilterOperators.DueIn ||
467
- current.operator === PepSmartFilterOperators.NotDueIn) { //operation unit
468
- values.push(current.values.first);
469
- if (current.operatorUnit) {
470
- values.push(getLegacyOperationUnit(current.operatorUnit));
471
- }
472
- }
473
- else {
474
- values.push(current.values.first);
475
- if (current.values.second) {
476
- values.push(current.values.second);
477
- }
478
- }
479
- }
480
- return values;
481
- }
482
- }
483
- PepOutputQueryService.decorators = [
484
- { type: Injectable }
485
- ];
381
+ class PepOutputQueryService {
382
+ constructor() {
383
+ //
384
+ }
385
+ /**
386
+ * generates a legacy query structure
387
+ * @param filters UI smart filters structure
388
+ * @returns legacy query
389
+ */
390
+ generateQuery(filters) {
391
+ this.initParams();
392
+ return this.sectionWalk(filters);
393
+ }
394
+ /**
395
+ * init params
396
+ */
397
+ initParams() {
398
+ this._complexIdCounter = 1;
399
+ this._expressionIdCounter = 1;
400
+ }
401
+ /**
402
+ * a recursive function dynamically builds legacy query structure
403
+ * @param current UI object represents either a section or filter component
404
+ * @returns section query data
405
+ */
406
+ sectionWalk(current) {
407
+ let section = null;
408
+ Object.keys(current).forEach(key => {
409
+ if (key.includes('item')) {
410
+ section = this.addToSection(section, {
411
+ ExpressionId: (this._expressionIdCounter++).toString(),
412
+ ApiName: current[key].smart.fieldId,
413
+ FieldType: current[key].query.fieldType,
414
+ Operation: getLegacyOperator(current[key].smart.operator, current[key].smart.fieldType),
415
+ Values: this.getItemValues(current[key].smart)
416
+ }, current.operator);
417
+ }
418
+ else if (key.includes('section')) {
419
+ const childSection = this.sectionWalk(current[key]);
420
+ if (childSection) {
421
+ section = this.addToSection(section, childSection, current.operator);
422
+ }
423
+ }
424
+ });
425
+ return section;
426
+ }
427
+ /**
428
+ * adds a legacy filter object to the current query structure
429
+ * @param section section query data
430
+ * @param item filter item
431
+ * @param operator query operator
432
+ * @returns
433
+ */
434
+ addToSection(section, item, operator) {
435
+ return section ? this.createSection(section, item, operator) : item;
436
+ }
437
+ /**
438
+ * creates a legacy complex object
439
+ * @param left LeftNode object
440
+ * @param right RightNode object
441
+ * @param operator query operator
442
+ * @returns legacy complex object
443
+ */
444
+ createSection(left, right, operator) {
445
+ return {
446
+ ComplexId: (this._complexIdCounter++).toString(),
447
+ LeftNode: left,
448
+ RightNode: right,
449
+ Operation: operator
450
+ };
451
+ }
452
+ /**
453
+ * gets legacy filter values object
454
+ * @param current UI filter object's values
455
+ * @returns an array represents legacy values
456
+ */
457
+ getItemValues(current) {
458
+ var _a;
459
+ let values = [];
460
+ if ((_a = current === null || current === void 0 ? void 0 : current.values) === null || _a === void 0 ? void 0 : _a.first) {
461
+ if (current.operator === PepSmartFilterOperators.In) { //multi select
462
+ values = current.values.first;
463
+ }
464
+ else if (current.operator === PepSmartFilterOperators.InTheLast ||
465
+ current.operator === PepSmartFilterOperators.NotInTheLast ||
466
+ current.operator === PepSmartFilterOperators.DueIn ||
467
+ current.operator === PepSmartFilterOperators.NotDueIn) { //operation unit
468
+ values.push(current.values.first);
469
+ if (current.operatorUnit) {
470
+ values.push(getLegacyOperationUnit(current.operatorUnit));
471
+ }
472
+ }
473
+ else {
474
+ values.push(current.values.first);
475
+ if (current.values.second) {
476
+ values.push(current.values.second);
477
+ }
478
+ }
479
+ }
480
+ return values;
481
+ }
482
+ }
483
+ PepOutputQueryService.decorators = [
484
+ { type: Injectable }
485
+ ];
486
486
  PepOutputQueryService.ctorParameters = () => [];
487
487
 
488
- class PepTypeConvertorService {
489
- constructor() {
490
- this._operators = [];
491
- this._booleans = [];
492
- this.initOperators();
493
- this.initBooleans();
494
- }
495
- get operators() {
496
- return this._operators;
497
- }
498
- get booleans() {
499
- return this._booleans;
500
- }
501
- initOperators() {
502
- this._operators.push({
503
- key: 'AND',
504
- value: 'And'
505
- });
506
- this._operators.push({
507
- key: 'OR',
508
- value: 'Or'
509
- });
510
- }
511
- initBooleans() {
512
- this._booleans.push({
513
- key: 'True',
514
- value: 'True'
515
- });
516
- this._booleans.push({
517
- key: 'False',
518
- value: 'False'
519
- });
520
- }
521
- }
522
- PepTypeConvertorService.decorators = [
523
- { type: Injectable }
524
- ];
488
+ class PepTypeConvertorService {
489
+ constructor() {
490
+ this._operators = [];
491
+ this._booleans = [];
492
+ this.initOperators();
493
+ this.initBooleans();
494
+ }
495
+ get operators() {
496
+ return this._operators;
497
+ }
498
+ get booleans() {
499
+ return this._booleans;
500
+ }
501
+ initOperators() {
502
+ this._operators.push({
503
+ key: 'AND',
504
+ value: 'And'
505
+ });
506
+ this._operators.push({
507
+ key: 'OR',
508
+ value: 'Or'
509
+ });
510
+ }
511
+ initBooleans() {
512
+ this._booleans.push({
513
+ key: 'True',
514
+ value: 'True'
515
+ });
516
+ this._booleans.push({
517
+ key: 'False',
518
+ value: 'False'
519
+ });
520
+ }
521
+ }
522
+ PepTypeConvertorService.decorators = [
523
+ { type: Injectable }
524
+ ];
525
525
  PepTypeConvertorService.ctorParameters = () => [];
526
526
 
527
- class PepQueryBuilderSectionComponent {
528
- constructor(_typeConvertorService) {
529
- this._typeConvertorService = _typeConvertorService;
530
- this.hasFields = true;
531
- this.createSection = new EventEmitter();
532
- this.createItem = new EventEmitter();
533
- this.remove = new EventEmitter();
534
- this.operatorChange = new EventEmitter();
535
- }
536
- ngOnInit() {
537
- this.initOperators();
538
- }
539
- get f() {
540
- return this.form.controls;
541
- }
542
- initOperators() {
543
- this.toggleButtons = this._typeConvertorService.operators.map((operator) => {
544
- return {
545
- key: operator.key,
546
- value: operator.value,
547
- callback: (event) => this.onOperatorChanged(event)
548
- };
549
- });
550
- }
551
- onOperatorChanged(event) {
552
- var _a;
553
- if ((_a = event === null || event === void 0 ? void 0 : event.source) === null || _a === void 0 ? void 0 : _a.key) {
554
- this.f.operator.setValue(event.source.key);
555
- this.operatorChange.emit();
556
- }
557
- }
558
- onAddRuleClicked() {
559
- this.createItem.emit();
560
- }
561
- onAddRuleSetClicked() {
562
- this.createSection.emit();
563
- }
564
- onDeleteSectionClicked() {
565
- this.remove.emit();
566
- }
567
- }
568
- PepQueryBuilderSectionComponent.decorators = [
569
- { type: Component, args: [{
570
- selector: 'pep-query-builder-section',
571
- template: "<div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <div class=\"query-section-container\" fxLayout=\"column\" fxLayoutGap=\".5rem\">\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between\">\n <pep-group-buttons [buttons]=\"toggleButtons\" [selectedButtonKey]=\"f.operator?.value || ''\" styleType=\"weak\"\n sizeType=\"sm\" [viewType]=\"'toggle'\" [buttonsDisabled]=\"!hasFields\">\n </pep-group-buttons>\n <div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <pep-button value=\"Add Filter\" styleType=\"weak\" styleStateType=\"system\" sizeType=\"sm\" classNames=\"\"\n [disabled]=\"!hasFields\" iconName=\"number_plus\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onAddRuleClicked()\"></pep-button>\n <ng-container *ngIf=\"depth.current < depth.max-1\">\n <pep-button value=\"Add Filter Group\" styleType=\"weak\" styleStateType=\"system\" sizeType=\"sm\"\n classNames=\"\" [disabled]=\"!hasFields\" iconName=\"number_plus\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onAddRuleSetClicked()\"></pep-button>\n </ng-container>\n </div>\n </div>\n <ng-container #sectionContainer></ng-container>\n </div>\n <pep-button *ngIf=\"depth.current > 0\" styleType=\"weak\" styleStateType=\"system_bin\" sizeType=\"md\" classNames=\"\"\n [disabled]=\"false\" iconName=\"system_bin\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onDeleteSectionClicked()\">\n </pep-button>\n</div>",
572
- styles: [".query-section-container{border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;width:100%}", ".query-section-container{box-shadow:0 .25rem .5rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-sm-offset,0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid rgba(26,26,26,.24);border:1px solid hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.24)}"]
573
- },] }
574
- ];
575
- PepQueryBuilderSectionComponent.ctorParameters = () => [
576
- { type: PepTypeConvertorService }
577
- ];
578
- PepQueryBuilderSectionComponent.propDecorators = {
579
- form: [{ type: Input }],
580
- depth: [{ type: Input }],
581
- hasFields: [{ type: Input }],
582
- createSection: [{ type: Output }],
583
- createItem: [{ type: Output }],
584
- remove: [{ type: Output }],
585
- operatorChange: [{ type: Output }],
586
- sectionContainer: [{ type: ViewChild, args: ['sectionContainer', { read: ViewContainerRef, static: true },] }]
527
+ class PepQueryBuilderSectionComponent {
528
+ constructor(_typeConvertorService) {
529
+ this._typeConvertorService = _typeConvertorService;
530
+ this.hasFields = true;
531
+ this.createSection = new EventEmitter();
532
+ this.createItem = new EventEmitter();
533
+ this.remove = new EventEmitter();
534
+ this.operatorChange = new EventEmitter();
535
+ }
536
+ ngOnInit() {
537
+ this.initOperators();
538
+ }
539
+ get f() {
540
+ return this.form.controls;
541
+ }
542
+ initOperators() {
543
+ this.toggleButtons = this._typeConvertorService.operators.map((operator) => {
544
+ return {
545
+ key: operator.key,
546
+ value: operator.value,
547
+ callback: (event) => this.onOperatorChanged(event)
548
+ };
549
+ });
550
+ }
551
+ onOperatorChanged(event) {
552
+ var _a;
553
+ if ((_a = event === null || event === void 0 ? void 0 : event.source) === null || _a === void 0 ? void 0 : _a.key) {
554
+ this.f.operator.setValue(event.source.key);
555
+ this.operatorChange.emit();
556
+ }
557
+ }
558
+ onAddRuleClicked() {
559
+ this.createItem.emit();
560
+ }
561
+ onAddRuleSetClicked() {
562
+ this.createSection.emit();
563
+ }
564
+ onDeleteSectionClicked() {
565
+ this.remove.emit();
566
+ }
567
+ }
568
+ PepQueryBuilderSectionComponent.decorators = [
569
+ { type: Component, args: [{
570
+ selector: 'pep-query-builder-section',
571
+ template: "<div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <div class=\"query-section-container\" fxLayout=\"column\" fxLayoutGap=\".5rem\">\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between\">\n <pep-group-buttons [buttons]=\"toggleButtons\" [selectedButtonKey]=\"f.operator?.value || ''\" styleType=\"weak\"\n sizeType=\"sm\" [viewType]=\"'toggle'\" [buttonsDisabled]=\"!hasFields\">\n </pep-group-buttons>\n <div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <pep-button value=\"Add Filter\" styleType=\"weak\" styleStateType=\"system\" sizeType=\"sm\" classNames=\"\"\n [disabled]=\"!hasFields\" iconName=\"number_plus\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onAddRuleClicked()\"></pep-button>\n <ng-container *ngIf=\"depth.current < depth.max-1\">\n <pep-button value=\"Add Filter Group\" styleType=\"weak\" styleStateType=\"system\" sizeType=\"sm\"\n classNames=\"\" [disabled]=\"!hasFields\" iconName=\"number_plus\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onAddRuleSetClicked()\"></pep-button>\n </ng-container>\n </div>\n </div>\n <ng-container #sectionContainer></ng-container>\n </div>\n <pep-button *ngIf=\"depth.current > 0\" styleType=\"weak\" styleStateType=\"system_bin\" sizeType=\"md\" classNames=\"\"\n [disabled]=\"false\" iconName=\"system_bin\" iconPosition=\"end\" [visible]=\"true\"\n (buttonClick)=\"onDeleteSectionClicked()\">\n </pep-button>\n</div>",
572
+ styles: [".query-section-container{border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;width:100%}", ".query-section-container{box-shadow:0 .25rem .5rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-sm-offset,0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid rgba(26,26,26,.24);border:1px solid hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.24)}"]
573
+ },] }
574
+ ];
575
+ PepQueryBuilderSectionComponent.ctorParameters = () => [
576
+ { type: PepTypeConvertorService }
577
+ ];
578
+ PepQueryBuilderSectionComponent.propDecorators = {
579
+ form: [{ type: Input }],
580
+ depth: [{ type: Input }],
581
+ hasFields: [{ type: Input }],
582
+ createSection: [{ type: Output }],
583
+ createItem: [{ type: Output }],
584
+ remove: [{ type: Output }],
585
+ operatorChange: [{ type: Output }],
586
+ sectionContainer: [{ type: ViewChild, args: ['sectionContainer', { read: ViewContainerRef, static: true },] }]
587
587
  };
588
588
 
589
- class PepQueryBuilderItemComponent {
590
- constructor(_fb, typeConvertorService) {
591
- this._fb = _fb;
592
- this.typeConvertorService = typeConvertorService;
593
- this._fields = [];
594
- this._options = [];
595
- this._selectedField = null;
596
- this.filterChange = new EventEmitter();
597
- this.remove = new EventEmitter();
598
- this.setupForm();
599
- }
600
- set fields(list) {
601
- if ((list === null || list === void 0 ? void 0 : list.length) > 0) {
602
- this._fields = list;
603
- this._options = list.map(field => {
604
- return {
605
- key: field.smart.id,
606
- value: field.smart.name
607
- };
608
- });
609
- }
610
- }
611
- set selected(value) {
612
- if (value) {
613
- this._selectedField = value.smart;
614
- this.queryForm.fieldType.setValue(value.query.fieldType);
615
- }
616
- }
617
- set filter(value) {
618
- if (value) {
619
- this._filter = value;
620
- }
621
- }
622
- set parentForm(value) {
623
- if (value) {
624
- this._parentForm = value;
625
- this.addToParentForm();
626
- }
627
- }
628
- ngOnInit() {
629
- //
630
- }
631
- get f() {
632
- return this.form.controls;
633
- }
634
- get queryForm() {
635
- return this.f.query.controls;
636
- }
637
- setupForm() {
638
- this.form = this._fb.group({
639
- smart: this._fb.group({
640
- fieldId: this._fb.control(null),
641
- fieldType: this._fb.control(null),
642
- operator: this._fb.control(null),
643
- operatorUnit: this._fb.control(null),
644
- values: this._fb.group({
645
- first: this._fb.control(null),
646
- second: this._fb.control(null)
647
- })
648
- }),
649
- query: this._fb.group({
650
- fieldType: this._fb.control(null)
651
- })
652
- });
653
- }
654
- addToParentForm() {
655
- this._parentForm.setControl(this.formKey, this.form);
656
- }
657
- onFieldChanged(key) {
658
- const item = this._fields.find(field => field.smart.id === key);
659
- this.setupForm();
660
- this.queryForm.fieldType.setValue(item.query.fieldType);
661
- this.addToParentForm();
662
- /**
663
- * hack due to angular's change detection bug -
664
- * ERROR Error: There is no FormControl instance attached to form control element with name: [formControlName]
665
- */
666
- this._selectedField = null;
667
- setTimeout(() => {
668
- this._selectedField = item ? item.smart : null;
669
- }, 0);
670
- this._filter = null;
671
- }
672
- onFilterChanged() {
673
- if (this.form.valid) {
674
- this.filterChange.emit();
675
- }
676
- }
677
- onDeleteItemClicked() {
678
- this.remove.emit();
679
- }
680
- }
681
- PepQueryBuilderItemComponent.decorators = [
682
- { type: Component, args: [{
683
- selector: 'pep-query-builder-item',
684
- template: "<div fxLayout=\"column\" fxLayoutGap=\".5rem\">\n <div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <pep-select fxFlex=\"25%\" [value]=\"_selectedField?.id\" xAlignment=\"left\" [options]=\"_options\"\n [renderTitle]=\"false\" (valueChange)=\"onFieldChanged($event)\"></pep-select>\n <ng-container *ngIf=\"_selectedField?.componentType\">\n <ng-container [ngSwitch]=\"_selectedField.componentType\">\n <ng-container *ngSwitchCase=\"'text'\">\n <pep-text-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-text-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'boolean'\">\n <pep-boolean-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [options]=\"typeConvertorService.booleans\" [renderTitle]=\"false\"\n (filterChange)=\"onFilterChanged()\">\n </pep-boolean-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'date'\">\n <pep-date-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-date-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'multi-select'\">\n <pep-multi-select-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-multi-select-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'number'\">\n <pep-number-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-number-filter>\n </ng-container>\n </ng-container>\n </ng-container>\n <pep-button styleType=\"weak\" styleStateType=\"system_bin\" sizeType=\"md\" classNames=\"\" [disabled]=\"false\"\n iconName=\"system_bin\" iconPosition=\"end\" [visible]=\"true\" (buttonClick)=\"onDeleteItemClicked()\">\n </pep-button>\n </div>\n</div>",
685
- styles: ["::ng-deep .pep-field-no-spacing{min-height:0!important;margin-bottom:0!important}"]
686
- },] }
687
- ];
688
- PepQueryBuilderItemComponent.ctorParameters = () => [
689
- { type: FormBuilder },
690
- { type: PepTypeConvertorService }
691
- ];
692
- PepQueryBuilderItemComponent.propDecorators = {
693
- formKey: [{ type: Input }],
694
- fields: [{ type: Input }],
695
- selected: [{ type: Input }],
696
- filter: [{ type: Input }],
697
- parentForm: [{ type: Input }],
698
- filterChange: [{ type: Output }],
699
- remove: [{ type: Output }]
589
+ class PepQueryBuilderItemComponent {
590
+ constructor(_fb, typeConvertorService) {
591
+ this._fb = _fb;
592
+ this.typeConvertorService = typeConvertorService;
593
+ this._fields = [];
594
+ this._options = [];
595
+ this._selectedField = null;
596
+ this.filterChange = new EventEmitter();
597
+ this.remove = new EventEmitter();
598
+ this.setupForm();
599
+ }
600
+ set fields(list) {
601
+ if ((list === null || list === void 0 ? void 0 : list.length) > 0) {
602
+ this._fields = list;
603
+ this._options = list.map(field => {
604
+ return {
605
+ key: field.smart.id,
606
+ value: field.smart.name
607
+ };
608
+ });
609
+ }
610
+ }
611
+ set selected(value) {
612
+ if (value) {
613
+ this._selectedField = value.smart;
614
+ this.queryForm.fieldType.setValue(value.query.fieldType);
615
+ }
616
+ }
617
+ set filter(value) {
618
+ if (value) {
619
+ this._filter = value;
620
+ }
621
+ }
622
+ set parentForm(value) {
623
+ if (value) {
624
+ this._parentForm = value;
625
+ this.addToParentForm();
626
+ }
627
+ }
628
+ ngOnInit() {
629
+ //
630
+ }
631
+ get f() {
632
+ return this.form.controls;
633
+ }
634
+ get queryForm() {
635
+ return this.f.query.controls;
636
+ }
637
+ setupForm() {
638
+ this.form = this._fb.group({
639
+ smart: this._fb.group({
640
+ fieldId: this._fb.control(null),
641
+ fieldType: this._fb.control(null),
642
+ operator: this._fb.control(null),
643
+ operatorUnit: this._fb.control(null),
644
+ values: this._fb.group({
645
+ first: this._fb.control(null),
646
+ second: this._fb.control(null)
647
+ })
648
+ }),
649
+ query: this._fb.group({
650
+ fieldType: this._fb.control(null)
651
+ })
652
+ });
653
+ }
654
+ addToParentForm() {
655
+ this._parentForm.setControl(this.formKey, this.form);
656
+ }
657
+ onFieldChanged(key) {
658
+ const item = this._fields.find(field => field.smart.id === key);
659
+ this.setupForm();
660
+ this.queryForm.fieldType.setValue(item.query.fieldType);
661
+ this.addToParentForm();
662
+ /**
663
+ * hack due to angular's change detection bug -
664
+ * ERROR Error: There is no FormControl instance attached to form control element with name: [formControlName]
665
+ */
666
+ this._selectedField = null;
667
+ setTimeout(() => {
668
+ this._selectedField = item ? item.smart : null;
669
+ }, 0);
670
+ this._filter = null;
671
+ }
672
+ onFilterChanged() {
673
+ if (this.form.valid) {
674
+ this.filterChange.emit();
675
+ }
676
+ }
677
+ onDeleteItemClicked() {
678
+ this.remove.emit();
679
+ }
680
+ }
681
+ PepQueryBuilderItemComponent.decorators = [
682
+ { type: Component, args: [{
683
+ selector: 'pep-query-builder-item',
684
+ template: "<div fxLayout=\"column\" fxLayoutGap=\".5rem\">\n <div fxLayout=\"row\" fxLayoutGap=\".5rem\">\n <pep-select fxFlex=\"25%\" [value]=\"_selectedField?.id\" xAlignment=\"left\" [options]=\"_options\"\n [renderTitle]=\"false\" (valueChange)=\"onFieldChanged($event)\"></pep-select>\n <ng-container *ngIf=\"_selectedField?.componentType\">\n <ng-container [ngSwitch]=\"_selectedField.componentType\">\n <ng-container *ngSwitchCase=\"'text'\">\n <pep-text-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-text-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'boolean'\">\n <pep-boolean-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [options]=\"typeConvertorService.booleans\" [renderTitle]=\"false\"\n (filterChange)=\"onFilterChanged()\">\n </pep-boolean-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'date'\">\n <pep-date-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-date-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'multi-select'\">\n <pep-multi-select-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-multi-select-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'number'\">\n <pep-number-filter fxFlex=\"auto\" [showActionButtons]=\"false\" [field]=\"_selectedField\"\n [filter]=\"_filter\" [parentForm]=\"f.smart\" [emitOnChange]=\"true\" [inline]=\"true\"\n [renderTitle]=\"false\" (filterChange)=\"onFilterChanged()\">\n </pep-number-filter>\n </ng-container>\n </ng-container>\n </ng-container>\n <pep-button styleType=\"weak\" styleStateType=\"system_bin\" sizeType=\"md\" classNames=\"\" [disabled]=\"false\"\n iconName=\"system_bin\" iconPosition=\"end\" [visible]=\"true\" (buttonClick)=\"onDeleteItemClicked()\">\n </pep-button>\n </div>\n</div>",
685
+ styles: ["::ng-deep .pep-field-no-spacing{min-height:0!important;margin-bottom:0!important}"]
686
+ },] }
687
+ ];
688
+ PepQueryBuilderItemComponent.ctorParameters = () => [
689
+ { type: FormBuilder },
690
+ { type: PepTypeConvertorService }
691
+ ];
692
+ PepQueryBuilderItemComponent.propDecorators = {
693
+ formKey: [{ type: Input }],
694
+ fields: [{ type: Input }],
695
+ selected: [{ type: Input }],
696
+ filter: [{ type: Input }],
697
+ parentForm: [{ type: Input }],
698
+ filterChange: [{ type: Output }],
699
+ remove: [{ type: Output }]
700
700
  };
701
701
 
702
- var PepOperatorTypes;
703
- (function (PepOperatorTypes) {
704
- PepOperatorTypes["And"] = "AND";
705
- PepOperatorTypes["Or"] = "OR";
702
+ var PepOperatorTypes;
703
+ (function (PepOperatorTypes) {
704
+ PepOperatorTypes["And"] = "AND";
705
+ PepOperatorTypes["Or"] = "OR";
706
706
  })(PepOperatorTypes || (PepOperatorTypes = {}));
707
707
 
708
- const MAX_STRUCTURE_DEPTH = 3;
709
- class PepQueryStructureService {
710
- constructor(_fb, _resolver, _outputQueryService, _queryBuilderService) {
711
- this._fb = _fb;
712
- this._resolver = _resolver;
713
- this._outputQueryService = _outputQueryService;
714
- this._queryBuilderService = _queryBuilderService;
715
- this._outputQuery$ = new BehaviorSubject(null);
716
- this._maxStructureDepth = MAX_STRUCTURE_DEPTH;
717
- this.outputQuery$ = this._outputQuery$.asObservable();
718
- }
719
- set maxDepth(value) {
720
- this._maxStructureDepth = value;
721
- }
722
- get maxDepth() {
723
- return this._maxStructureDepth;
724
- }
725
- set fields(list) {
726
- this._smartFilterFields = this._queryBuilderService.convertToSmartFilterFields(list);
727
- }
728
- get hasFields() {
729
- var _a;
730
- return ((_a = this._smartFilterFields) === null || _a === void 0 ? void 0 : _a.length) > 0;
731
- }
732
- set form(value) {
733
- this._form = value;
734
- }
735
- get form() {
736
- return this._form;
737
- }
738
- /**
739
- * builds a dynamic UI query structure
740
- * might has a different structure than the query's due to parent-child elements merge
741
- * @param query legacy query
742
- * @param containerRef reference to root element
743
- */
744
- buildQueryStructure(query, containerRef) {
745
- //update root operator
746
- if (this.hasProperty(query, 'ComplexId') &&
747
- (query === null || query === void 0 ? void 0 : query.Operation) &&
748
- query.Operation !== this._form.get('operator').value) {
749
- this._form.get('operator').setValue(query.Operation);
750
- }
751
- this.flatten(this._form.get('operator').value, query, containerRef, this._form, 0);
752
- }
753
- /**
754
- * checks if the object contains property
755
- * @param obj object
756
- * @param prop property name
757
- * @returns true if contains, false otherwise
758
- */
759
- hasProperty(obj, prop) {
760
- return Object.prototype.hasOwnProperty.call(obj, prop);
761
- }
762
- /**
763
- * a recursive function dynamically builds UI filters structure
764
- * @param parentOperator parent legacy complex operator
765
- * @param current child legacy object (either another complex or expression type)
766
- * @param containerRef parent element
767
- * @param parentForm parent form
768
- */
769
- flatten(parentOperator, current, containerRef, parentForm, depth) {
770
- if (this.hasProperty(current, 'ComplexId')) {
771
- const section = current;
772
- if (parentOperator === current.Operation) {
773
- this.flatten(current.Operation, section.LeftNode, containerRef, parentForm, depth);
774
- this.flatten(current.Operation, section.RightNode, containerRef, parentForm, depth);
775
- }
776
- else {
777
- const result = this.createSection(section.Operation, containerRef, parentForm, depth);
778
- this.flatten(section.Operation, section.LeftNode, result.containerRef, result.parentForm, depth + 1);
779
- this.flatten(section.Operation, section.RightNode, result.containerRef, result.parentForm, depth + 1);
780
- }
781
- }
782
- else if (this.hasProperty(current, 'ExpressionId')) {
783
- this.createItem(current, containerRef, parentForm);
784
- }
785
- }
786
- /**
787
- * creates a container object of two or more child filter items
788
- * @param operator AND/OR operator
789
- * @param containerRef parent element
790
- * @param parentForm parent form
791
- * @param depth
792
- * @returns an object containing the current element and current form
793
- */
794
- createSection(operator, containerRef, parentForm, depth) {
795
- const factory = this._resolver.resolveComponentFactory(PepQueryBuilderSectionComponent);
796
- const componentRef = containerRef.createComponent(factory);
797
- const sectionGroup = this._fb.group({
798
- operator: this._fb.control(operator)
799
- });
800
- let counter = 1;
801
- Object.keys(parentForm.controls).forEach(item => { if (item.includes('section')) {
802
- counter++;
803
- } });
804
- const formKey = `section${counter}`;
805
- parentForm.addControl(formKey, sectionGroup);
806
- componentRef.instance.form = sectionGroup;
807
- componentRef.instance.depth = {
808
- current: depth,
809
- max: this._maxStructureDepth
810
- };
811
- componentRef.instance.createSection.subscribe(() => {
812
- const section = this.createSection(PepOperatorTypes.And, componentRef.instance.sectionContainer, sectionGroup, depth + 1);
813
- this.createItem(null, section.containerRef, section.parentForm);
814
- });
815
- componentRef.instance.createItem.subscribe(() => {
816
- this.createItem(null, componentRef.instance.sectionContainer, sectionGroup);
817
- });
818
- componentRef.instance.remove.subscribe(() => {
819
- parentForm.removeControl(formKey);
820
- componentRef.destroy();
821
- this.createOutputQuery();
822
- });
823
- componentRef.instance.operatorChange.subscribe(() => {
824
- this.createOutputQuery();
825
- });
826
- return {
827
- containerRef: componentRef.instance.sectionContainer,
828
- parentForm: sectionGroup
829
- };
830
- }
831
- /**
832
- * creates a component represents filter item (leaf element - has no childs)
833
- * @param current filter legacy element
834
- * @param containerRef parent element
835
- * @param parentForm parent form
836
- */
837
- createItem(current, containerRef, parentForm) {
838
- const factory = this._resolver.resolveComponentFactory(PepQueryBuilderItemComponent);
839
- const componentRef = containerRef.createComponent(factory);
840
- let counter = 1;
841
- Object.keys(parentForm.controls).forEach(item => { if (item.includes('item')) {
842
- counter++;
843
- } });
844
- const formKey = `item${counter}`;
845
- componentRef.instance.formKey = formKey;
846
- componentRef.instance.fields = this._smartFilterFields;
847
- const selectedField = this.getSelectedField(current);
848
- if (selectedField) {
849
- componentRef.instance.selected = selectedField;
850
- if (current) {
851
- componentRef.instance.filter = this._queryBuilderService.getFilter(current, selectedField.smart);
852
- }
853
- }
854
- componentRef.instance.parentForm = parentForm;
855
- componentRef.instance.filterChange.subscribe(() => {
856
- this.createOutputQuery();
857
- });
858
- componentRef.instance.remove.subscribe(() => {
859
- parentForm.removeControl(formKey);
860
- componentRef.destroy();
861
- this.createOutputQuery();
862
- });
863
- }
864
- /**
865
- * get smart filter field
866
- * @param current filter legacy element
867
- * @returns smart filter field, if not found returns the first field
868
- */
869
- getSelectedField(current) {
870
- var _a, _b;
871
- if (current) {
872
- const item = this._smartFilterFields.find(field => field.smart.id === current.ApiName);
873
- return item ? item : ((_a = this._smartFilterFields) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this._smartFilterFields[0] : null;
874
- }
875
- else {
876
- return ((_b = this._smartFilterFields) === null || _b === void 0 ? void 0 : _b.length) > 0 ? this._smartFilterFields[0] : null;
877
- }
878
- }
879
- /**
880
- * creates a legacy output query
881
- */
882
- createOutputQuery() {
883
- if (this._form.valid) {
884
- const query = this._outputQueryService.generateQuery(this._form.value);
885
- this._outputQuery$.next(query);
886
- }
887
- }
888
- }
889
- PepQueryStructureService.decorators = [
890
- { type: Injectable }
891
- ];
892
- PepQueryStructureService.ctorParameters = () => [
893
- { type: FormBuilder },
894
- { type: ComponentFactoryResolver },
895
- { type: PepOutputQueryService },
896
- { type: PepQueryBuilderService }
708
+ const MAX_STRUCTURE_DEPTH = 3;
709
+ class PepQueryStructureService {
710
+ constructor(_fb, _resolver, _outputQueryService, _queryBuilderService) {
711
+ this._fb = _fb;
712
+ this._resolver = _resolver;
713
+ this._outputQueryService = _outputQueryService;
714
+ this._queryBuilderService = _queryBuilderService;
715
+ this._outputQuery$ = new BehaviorSubject(null);
716
+ this._maxStructureDepth = MAX_STRUCTURE_DEPTH;
717
+ this.outputQuery$ = this._outputQuery$.asObservable();
718
+ }
719
+ set maxDepth(value) {
720
+ this._maxStructureDepth = value;
721
+ }
722
+ get maxDepth() {
723
+ return this._maxStructureDepth;
724
+ }
725
+ set fields(list) {
726
+ this._smartFilterFields = this._queryBuilderService.convertToSmartFilterFields(list);
727
+ }
728
+ get hasFields() {
729
+ var _a;
730
+ return ((_a = this._smartFilterFields) === null || _a === void 0 ? void 0 : _a.length) > 0;
731
+ }
732
+ set form(value) {
733
+ this._form = value;
734
+ }
735
+ get form() {
736
+ return this._form;
737
+ }
738
+ /**
739
+ * builds a dynamic UI query structure
740
+ * might has a different structure than the query's due to parent-child elements merge
741
+ * @param query legacy query
742
+ * @param containerRef reference to root element
743
+ */
744
+ buildQueryStructure(query, containerRef) {
745
+ //update root operator
746
+ if (this.hasProperty(query, 'ComplexId') &&
747
+ (query === null || query === void 0 ? void 0 : query.Operation) &&
748
+ query.Operation !== this._form.get('operator').value) {
749
+ this._form.get('operator').setValue(query.Operation);
750
+ }
751
+ this.flatten(this._form.get('operator').value, query, containerRef, this._form, 0);
752
+ }
753
+ /**
754
+ * checks if the object contains property
755
+ * @param obj object
756
+ * @param prop property name
757
+ * @returns true if contains, false otherwise
758
+ */
759
+ hasProperty(obj, prop) {
760
+ return Object.prototype.hasOwnProperty.call(obj, prop);
761
+ }
762
+ /**
763
+ * a recursive function dynamically builds UI filters structure
764
+ * @param parentOperator parent legacy complex operator
765
+ * @param current child legacy object (either another complex or expression type)
766
+ * @param containerRef parent element
767
+ * @param parentForm parent form
768
+ */
769
+ flatten(parentOperator, current, containerRef, parentForm, depth) {
770
+ if (this.hasProperty(current, 'ComplexId')) {
771
+ const section = current;
772
+ if (parentOperator === current.Operation) {
773
+ this.flatten(current.Operation, section.LeftNode, containerRef, parentForm, depth);
774
+ this.flatten(current.Operation, section.RightNode, containerRef, parentForm, depth);
775
+ }
776
+ else {
777
+ const result = this.createSection(section.Operation, containerRef, parentForm, depth);
778
+ this.flatten(section.Operation, section.LeftNode, result.containerRef, result.parentForm, depth + 1);
779
+ this.flatten(section.Operation, section.RightNode, result.containerRef, result.parentForm, depth + 1);
780
+ }
781
+ }
782
+ else if (this.hasProperty(current, 'ExpressionId')) {
783
+ this.createItem(current, containerRef, parentForm);
784
+ }
785
+ }
786
+ /**
787
+ * creates a container object of two or more child filter items
788
+ * @param operator AND/OR operator
789
+ * @param containerRef parent element
790
+ * @param parentForm parent form
791
+ * @param depth
792
+ * @returns an object containing the current element and current form
793
+ */
794
+ createSection(operator, containerRef, parentForm, depth) {
795
+ const factory = this._resolver.resolveComponentFactory(PepQueryBuilderSectionComponent);
796
+ const componentRef = containerRef.createComponent(factory);
797
+ const sectionGroup = this._fb.group({
798
+ operator: this._fb.control(operator)
799
+ });
800
+ let counter = 1;
801
+ Object.keys(parentForm.controls).forEach(item => { if (item.includes('section')) {
802
+ counter++;
803
+ } });
804
+ const formKey = `section${counter}`;
805
+ parentForm.addControl(formKey, sectionGroup);
806
+ componentRef.instance.form = sectionGroup;
807
+ componentRef.instance.depth = {
808
+ current: depth,
809
+ max: this._maxStructureDepth
810
+ };
811
+ componentRef.instance.createSection.subscribe(() => {
812
+ const section = this.createSection(PepOperatorTypes.And, componentRef.instance.sectionContainer, sectionGroup, depth + 1);
813
+ this.createItem(null, section.containerRef, section.parentForm);
814
+ });
815
+ componentRef.instance.createItem.subscribe(() => {
816
+ this.createItem(null, componentRef.instance.sectionContainer, sectionGroup);
817
+ });
818
+ componentRef.instance.remove.subscribe(() => {
819
+ parentForm.removeControl(formKey);
820
+ componentRef.destroy();
821
+ this.createOutputQuery();
822
+ });
823
+ componentRef.instance.operatorChange.subscribe(() => {
824
+ this.createOutputQuery();
825
+ });
826
+ return {
827
+ containerRef: componentRef.instance.sectionContainer,
828
+ parentForm: sectionGroup
829
+ };
830
+ }
831
+ /**
832
+ * creates a component represents filter item (leaf element - has no childs)
833
+ * @param current filter legacy element
834
+ * @param containerRef parent element
835
+ * @param parentForm parent form
836
+ */
837
+ createItem(current, containerRef, parentForm) {
838
+ const factory = this._resolver.resolveComponentFactory(PepQueryBuilderItemComponent);
839
+ const componentRef = containerRef.createComponent(factory);
840
+ let counter = 1;
841
+ Object.keys(parentForm.controls).forEach(item => { if (item.includes('item')) {
842
+ counter++;
843
+ } });
844
+ const formKey = `item${counter}`;
845
+ componentRef.instance.formKey = formKey;
846
+ componentRef.instance.fields = this._smartFilterFields;
847
+ const selectedField = this.getSelectedField(current);
848
+ if (selectedField) {
849
+ componentRef.instance.selected = selectedField;
850
+ if (current) {
851
+ componentRef.instance.filter = this._queryBuilderService.getFilter(current, selectedField.smart);
852
+ }
853
+ }
854
+ componentRef.instance.parentForm = parentForm;
855
+ componentRef.instance.filterChange.subscribe(() => {
856
+ this.createOutputQuery();
857
+ });
858
+ componentRef.instance.remove.subscribe(() => {
859
+ parentForm.removeControl(formKey);
860
+ componentRef.destroy();
861
+ this.createOutputQuery();
862
+ });
863
+ }
864
+ /**
865
+ * get smart filter field
866
+ * @param current filter legacy element
867
+ * @returns smart filter field, if not found returns the first field
868
+ */
869
+ getSelectedField(current) {
870
+ var _a, _b;
871
+ if (current) {
872
+ const item = this._smartFilterFields.find(field => field.smart.id === current.ApiName);
873
+ return item ? item : ((_a = this._smartFilterFields) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this._smartFilterFields[0] : null;
874
+ }
875
+ else {
876
+ return ((_b = this._smartFilterFields) === null || _b === void 0 ? void 0 : _b.length) > 0 ? this._smartFilterFields[0] : null;
877
+ }
878
+ }
879
+ /**
880
+ * creates a legacy output query
881
+ */
882
+ createOutputQuery() {
883
+ if (this._form.valid) {
884
+ const query = this._outputQueryService.generateQuery(this._form.value);
885
+ this._outputQuery$.next(query);
886
+ }
887
+ }
888
+ }
889
+ PepQueryStructureService.decorators = [
890
+ { type: Injectable }
891
+ ];
892
+ PepQueryStructureService.ctorParameters = () => [
893
+ { type: FormBuilder },
894
+ { type: ComponentFactoryResolver },
895
+ { type: PepOutputQueryService },
896
+ { type: PepQueryBuilderService }
897
897
  ];
898
898
 
899
- class PepQueryBuilderComponent {
900
- constructor(_fb, queryStructureService) {
901
- this._fb = _fb;
902
- this.queryStructureService = queryStructureService;
903
- this._query = null;
904
- this.queryChange = new EventEmitter();
905
- this.formValidationChange = new EventEmitter();
906
- this._lastFormValidStatus = true;
907
- this.hasFields = false;
908
- this.setupForm();
909
- this.initDepth();
910
- this._formSubscription$ = this.queryStructureService.form.valueChanges.subscribe((val) => {
911
- if (this.queryStructureService.form.valid !== this._lastFormValidStatus) {
912
- this._lastFormValidStatus = this.queryStructureService.form.valid;
913
- this.formValidationChange.emit(this._lastFormValidStatus);
914
- }
915
- });
916
- this._outputQuerySubscription$ = this.queryStructureService.outputQuery$.subscribe((outputQuery) => {
917
- this.queryChange.emit(outputQuery);
918
- });
919
- }
920
- set query(object) {
921
- this._query = object;
922
- this.loadQuery();
923
- }
924
- set fields(list) {
925
- this.queryStructureService.fields = list;
926
- this.hasFields = this.queryStructureService.hasFields;
927
- this.loadQuery();
928
- }
929
- set maxDepth(value) {
930
- this.queryStructureService.maxDepth = value;
931
- }
932
- ngOnInit() {
933
- //
934
- }
935
- setupForm() {
936
- this.queryStructureService.form = this._fb.group({
937
- operator: this._fb.control(PepOperatorTypes.And)
938
- });
939
- }
940
- initDepth() {
941
- this.depth = {
942
- current: 0,
943
- max: this.queryStructureService.maxDepth
944
- };
945
- }
946
- /**
947
- * builds UI query structure as soon as both the fields and query loads
948
- */
949
- loadQuery() {
950
- var _a;
951
- if (this._query &&
952
- this.queryStructureService.hasFields &&
953
- ((_a = this.root) === null || _a === void 0 ? void 0 : _a.sectionContainer)) {
954
- this.queryStructureService.buildQueryStructure(this._query, this.root.sectionContainer);
955
- }
956
- }
957
- onCreateSection() {
958
- const section = this.queryStructureService.createSection(PepOperatorTypes.And, this.root.sectionContainer, this.queryStructureService.form, 1);
959
- this.queryStructureService.createItem(null, section.containerRef, section.parentForm);
960
- }
961
- onCreateItem() {
962
- this.queryStructureService.createItem(null, this.root.sectionContainer, this.queryStructureService.form);
963
- }
964
- onOperatorChange() {
965
- this.queryStructureService.createOutputQuery();
966
- }
967
- ngOnDestroy() {
968
- if (this._formSubscription$) {
969
- this._formSubscription$.unsubscribe();
970
- }
971
- if (this._outputQuerySubscription$) {
972
- this._outputQuerySubscription$.unsubscribe();
973
- }
974
- }
975
- }
976
- PepQueryBuilderComponent.decorators = [
977
- { type: Component, args: [{
978
- selector: 'pep-query-builder',
979
- template: "<pep-query-builder-section #rootContainer [form]=\"queryStructureService.form\" [depth]=\"depth\" [hasFields]=\"hasFields\"\n (createSection)=\"onCreateSection()\" (createItem)=\"onCreateItem()\" (operatorChange)=\"onOperatorChange()\">\n</pep-query-builder-section>",
980
- providers: [PepQueryStructureService, PepTypeConvertorService, PepOutputQueryService],
981
- styles: [""]
982
- },] }
983
- ];
984
- PepQueryBuilderComponent.ctorParameters = () => [
985
- { type: FormBuilder },
986
- { type: PepQueryStructureService }
987
- ];
988
- PepQueryBuilderComponent.propDecorators = {
989
- query: [{ type: Input }],
990
- fields: [{ type: Input }],
991
- maxDepth: [{ type: Input }],
992
- queryChange: [{ type: Output }],
993
- formValidationChange: [{ type: Output }],
994
- root: [{ type: ViewChild, args: ['rootContainer', { static: true },] }]
899
+ class PepQueryBuilderComponent {
900
+ constructor(_fb, queryStructureService) {
901
+ this._fb = _fb;
902
+ this.queryStructureService = queryStructureService;
903
+ this._query = null;
904
+ this.queryChange = new EventEmitter();
905
+ this.formValidationChange = new EventEmitter();
906
+ this._lastFormValidStatus = true;
907
+ this.hasFields = false;
908
+ this.setupForm();
909
+ this.initDepth();
910
+ this._formSubscription$ = this.queryStructureService.form.valueChanges.subscribe((val) => {
911
+ if (this.queryStructureService.form.valid !== this._lastFormValidStatus) {
912
+ this._lastFormValidStatus = this.queryStructureService.form.valid;
913
+ this.formValidationChange.emit(this._lastFormValidStatus);
914
+ }
915
+ });
916
+ this._outputQuerySubscription$ = this.queryStructureService.outputQuery$.subscribe((outputQuery) => {
917
+ this.queryChange.emit(outputQuery);
918
+ });
919
+ }
920
+ set query(object) {
921
+ this._query = object;
922
+ this.loadQuery();
923
+ }
924
+ set fields(list) {
925
+ this.queryStructureService.fields = list;
926
+ this.hasFields = this.queryStructureService.hasFields;
927
+ this.loadQuery();
928
+ }
929
+ set maxDepth(value) {
930
+ this.queryStructureService.maxDepth = value;
931
+ }
932
+ ngOnInit() {
933
+ //
934
+ }
935
+ setupForm() {
936
+ this.queryStructureService.form = this._fb.group({
937
+ operator: this._fb.control(PepOperatorTypes.And)
938
+ });
939
+ }
940
+ initDepth() {
941
+ this.depth = {
942
+ current: 0,
943
+ max: this.queryStructureService.maxDepth
944
+ };
945
+ }
946
+ /**
947
+ * builds UI query structure as soon as both the fields and query loads
948
+ */
949
+ loadQuery() {
950
+ var _a;
951
+ if (this._query &&
952
+ this.queryStructureService.hasFields &&
953
+ ((_a = this.root) === null || _a === void 0 ? void 0 : _a.sectionContainer)) {
954
+ this.queryStructureService.buildQueryStructure(this._query, this.root.sectionContainer);
955
+ }
956
+ }
957
+ onCreateSection() {
958
+ const section = this.queryStructureService.createSection(PepOperatorTypes.And, this.root.sectionContainer, this.queryStructureService.form, 1);
959
+ this.queryStructureService.createItem(null, section.containerRef, section.parentForm);
960
+ }
961
+ onCreateItem() {
962
+ this.queryStructureService.createItem(null, this.root.sectionContainer, this.queryStructureService.form);
963
+ }
964
+ onOperatorChange() {
965
+ this.queryStructureService.createOutputQuery();
966
+ }
967
+ ngOnDestroy() {
968
+ if (this._formSubscription$) {
969
+ this._formSubscription$.unsubscribe();
970
+ }
971
+ if (this._outputQuerySubscription$) {
972
+ this._outputQuerySubscription$.unsubscribe();
973
+ }
974
+ }
975
+ }
976
+ PepQueryBuilderComponent.decorators = [
977
+ { type: Component, args: [{
978
+ selector: 'pep-query-builder',
979
+ template: "<pep-query-builder-section #rootContainer [form]=\"queryStructureService.form\" [depth]=\"depth\" [hasFields]=\"hasFields\"\n (createSection)=\"onCreateSection()\" (createItem)=\"onCreateItem()\" (operatorChange)=\"onOperatorChange()\">\n</pep-query-builder-section>",
980
+ providers: [PepQueryStructureService, PepTypeConvertorService, PepOutputQueryService],
981
+ styles: [""]
982
+ },] }
983
+ ];
984
+ PepQueryBuilderComponent.ctorParameters = () => [
985
+ { type: FormBuilder },
986
+ { type: PepQueryStructureService }
987
+ ];
988
+ PepQueryBuilderComponent.propDecorators = {
989
+ query: [{ type: Input }],
990
+ fields: [{ type: Input }],
991
+ maxDepth: [{ type: Input }],
992
+ queryChange: [{ type: Output }],
993
+ formValidationChange: [{ type: Output }],
994
+ root: [{ type: ViewChild, args: ['rootContainer', { static: true },] }]
995
995
  };
996
996
 
997
- class PepQueryBuilderModule {
998
- }
999
- PepQueryBuilderModule.decorators = [
1000
- { type: NgModule, args: [{
1001
- imports: [
1002
- CommonModule,
1003
- ReactiveFormsModule,
1004
- FlexLayoutModule,
1005
- PepSelectModule,
1006
- PepButtonModule,
1007
- PepGroupButtonsModule,
1008
- PepSmartFiltersModule
1009
- ],
1010
- exports: [
1011
- PepQueryBuilderComponent
1012
- ],
1013
- declarations: [
1014
- PepQueryBuilderComponent,
1015
- PepQueryBuilderSectionComponent,
1016
- PepQueryBuilderItemComponent
1017
- ]
1018
- },] }
997
+ class PepQueryBuilderModule {
998
+ }
999
+ PepQueryBuilderModule.decorators = [
1000
+ { type: NgModule, args: [{
1001
+ imports: [
1002
+ CommonModule,
1003
+ ReactiveFormsModule,
1004
+ FlexLayoutModule,
1005
+ PepSelectModule,
1006
+ PepButtonModule,
1007
+ PepGroupButtonsModule,
1008
+ PepSmartFiltersModule
1009
+ ],
1010
+ exports: [
1011
+ PepQueryBuilderComponent
1012
+ ],
1013
+ declarations: [
1014
+ PepQueryBuilderComponent,
1015
+ PepQueryBuilderSectionComponent,
1016
+ PepQueryBuilderItemComponent
1017
+ ]
1018
+ },] }
1019
1019
  ];
1020
1020
 
1021
- /*
1022
- * Public API Surface of ngx-lib/query-builder
1021
+ /*
1022
+ * Public API Surface of ngx-lib/query-builder
1023
1023
  */
1024
1024
 
1025
- /**
1026
- * Generated bundle index. Do not edit.
1025
+ /**
1026
+ * Generated bundle index. Do not edit.
1027
1027
  */
1028
1028
 
1029
1029
  export { PepQueryBuilderComponent, PepQueryBuilderModule, PepQueryBuilderService, PepQueryStructureService as ɵa, PepOutputQueryService as ɵb, PepTypeConvertorService as ɵc, PepQueryBuilderSectionComponent as ɵd, PepQueryBuilderItemComponent as ɵe };